• Stars
    star
    219
  • Rank 181,133 (Top 4 %)
  • Language
    C++
  • License
    Other
  • Created almost 5 years ago
  • Updated 5 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

kalmal filter localization

Kalman Filter Localization

CI
Kalman Filter Localization is a ros2 package of Kalman Filter Based Localization in 3D using GNSS/IMU/Odometry(Visual Odometry/Lidar Odometry).

node

ekf_localization_node

  • input
    /initial_pose (geometry_msgs/PoseStamed)
    /gnss_pose (geometry_msgs/PoseStamed)
    /imu (sensor_msgs/Imu)
    /odom (nav_msgs/Odometry)
    /tf(/base_link(robot frame) → /imu_link(imu frame))
  • output
    /curent_pose (geometry_msgs/PoseStamped)

params

Name Type Default value Description
pub_period int 10 publish period[ms]
var_gnss_xy double 0.1 variance of a gnss receiver about position xy[m^2]
var_gnss_z double 0.15 variance of a gnss receiver about position z[m^2]
var_odom_xyz double 0.1 variance of an odometry[m^2]
var_imu_w double 0.01 variance of an angular velocity sensor[(deg/sec)^2]
var_imu_acc double 0.01 variance of an accelerometer[(m/sec^2)^2]
use_gnss bool true whether gnss is used or not
use_odom bool false whether odom(lo/vo) is used or not

demo

rosbag demo data(ROS1)

rviz2 -d src/kalman_filter_localization/config/ekfl_demo.rviz
ros2 launch kalman_filter_localization ekf.launch.py
ros2 topic pub ekf_localization/initial_pose geometry_msgs/PoseStamped '{header: {stamp: {sec: 1532228824, nanosec: 55000000}, frame_id: "map"}, pose: {position: {x: 0, y: 0, z: 10}, orientation: {z: 1, w: 0}}}' --once
ros2 bag play -s rosbag_v2 test.bag

demo
blue:initial pose, red:gnss pose, green: fusion pose

More Repositories

1

lidarslam_ros2

ROS 2 package of 3D lidar slam using ndt/gicp registration and pose-optimization
C++
506
star
2

li_slam_ros2

ROS 2 package of tightly-coupled lidar inertial ndt/gicp slam
C++
292
star
3

lidar_localization_ros2

3D LIDAR Localization using NDT/GICP and pointcloud map in ROS 2 (Not SLAM)
C++
244
star
4

lidar_localizer

lidar localizer in Autoware AI
C++
172
star
5

rust_robotics

Rust implementation of PythonRobotics such as EKF, DWA, Pure Pursuit, LQR.
Rust
133
star
6

PoseOptimizationSLAM3D

Python sample code of 3D pose optimization SLAM
Python
72
star
7

NormalDistributionTransform2D

Python sample code of 2D NDT Scan Matching
Python
28
star
8

littleslam_ros2

A ROS2 Wrapper for LittleSLAM, which is a 2D-LiDAR SLAM for educational use
C++
27
star
9

ensemble_kalman_filter

Python sample code of robot localization with ensemble kalman filter and landmarks
Python
25
star
10

laser_deskew

ros1 package for 2d laser deskew using tf.
C++
20
star
11

imu_estimator

attitude estimator with gyro bias correction
C++
16
star
12

lidar_undistortion

A header-only program of 3d rotary lidar undistortion using 9-axis imu
C++
16
star
13

gaussian_particle_filter

Python sample of Gaussian Particle Filter localization
Python
13
star
14

transfrom_velocity

C++ program for performing 3D and 2D velocity transformations using Lie algebra.
C++
9
star
15

particle_filtering_model_predictive_control

Particle filtering model predictive control simulation.
Python
6
star
16

pygnss

pygnss is a gnss analysis library
Python
5
star
17

quaternion-based_kalman_filter

Python
4
star
18

q-method

estimator to minimize Wahba's loss function for satellite attitude
Python
3
star