Skip to content

LimHaeryong/eskf-gnss-imu-localization

Repository files navigation

ESKF BASED GNSS-IMU LOCALIZATION

This repository contains GNSS-IMU Localization based on Error-State Kalman Filter.

The implementation of ESKF is based on Quaternion kinematics for the error-state Kalman filter.

OpenGL is used to visualize GNSS/Filtered Position in realtime and 3D space.

Installation

Dependencies

  • Ubuntu 20.04
  • ROS2(foxy)
  • Eigen3
  • GeographicLib
  • yaml-cpp
  • OpenGL
  • nmea_msgs(ROS package)
  • nmea_navsat_driver(ROS package)

Install EU Long-term Dataset with Multiple Sensors for Autonomous Driving

EU Long-term Dataset with Multiple Sensors for Autonomous Driving

Convert rosbag1 to rosbag2

rosbags-convert utbm_robocar_dataset_20190131_noimage.bag

Clone the repository

cd /your/workspace/src
git clone https://github.com/LimHaeryong/eskf-gnss-imu-localization.git

Modify rosbag path

  • modify launch/eskf_gnss_imu_localization.launch.py
    play_rosbag = ExecuteProcess(
        cmd=['ros2', 'bag', 'play', 'change/to/your/rosbag/path']
    )

Colcon Build

cd /your/workspace
colcon build
source ./install/local_setup.bash

How to run

ros2 launch eskf_gnss_imu_localization eskf_gnss_imu_localization.launch.py 

Result

  • GNSS position(Red)
  • Filtered position(Green)

About

GNSS-IMU Localization based on Error-State Kalman Filter

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages