| 只使用IMU进行积分的结果 | 使用ESKF融合IMU和GPS |
|---|---|
| <img src="https://yellow-cdn.veclightyear.com/835a84d5/23a961d2-6957-4803-ae0a-7b77e46e717b.png" alt="0" style="zoom: 33%;" /> | <img src="https://yellow-cdn.veclightyear.com/835a84d5/5a73de8a-afe2-4366-b15f-c27125ff744a.png" alt="0" style="zoom: 33%;" /> |
| <img src="https://yellow-cdn.veclightyear.com/835a84d5/d2b2d087-aa51-4efd-adbb-2643a11d9f48.png" alt="0" style="zoom: 33%;" /> | <img src="https://yellow-cdn.veclightyear.com/835a84d5/1149247e-9fb8-4363-b46c-c76651e649c6.png" alt="0" style="zoom: 33%;" /> |
实现方法请参考我的博客《【附源码+代码注释】误差状态卡尔曼滤波(error-state Kalman Filter)实现GPS+IMU融合,EKF ErrorStateKalmanFilter GPS+IMU》
Eigen
sudo apt-get install libeigen3-dev
Yaml
sudo apt-get install libyaml-cpp-dev
Glog
sudo apt-get install libgoogle-glog-dev
cd eskf-gps-imu-fusion mkdir build cd build cmake .. make
cd eskf-gps-imu-fusion ./build/gps_imu_fusion ./config/config.yaml ./data
执行完./gps_imu_fusion会生成轨迹文件
cd eskf-gps-imu-fusion/data python display_path.py
推荐使用工具: evo
cd eskf-gps-imu-fusion/data evo_traj tum fused.txt gt.txt gps_measurement.txt -p
如果需要接入其他数据,您需要将您的数据格式进行整理,以符合本算法的需求,参考data/raw_data文件夹中的数据格式,并且至少要在accel-0.csv、gps-0.csv、gps_time.csv、gyro-0.csv、time.csv文件中填入你的IMU和GPS数据。
提示: