多传感器融合框架-ESKF

该博客介绍了基于ROS的数据预处理节点和滤波器节点,用于同步和融合IMU与GNSS数据。数据预处理涉及时间戳同步和点云畸变补偿,而滤波器节点使用了时间同步数据进行初始化和滤波预测、观测修正。实验结果显示,该方法能达到约0.3m的绝对轨迹误差,但实时性和稳定性仍有待提升。提供了数据集和框架的下载链接。
摘要由CSDN通过智能技术生成

架构

基本同图优化框架差不多

内容简述

请添加图片描述

数据预处理节点

  1. 订阅imu原始数据,gnss原始数据,完成数据时间戳同步、点云畸变补偿
  2. 发布如下消息
    • 畸变补偿后的点云/synced_cloud
    • gnss里程计/synced_gnss,注意这里的里程计包含了Twist数据(imu速度和角速度)
    • 同步后的自定义ros消息/synced_pos_vel:PosVel数据(gnss/imu的位置和速度信息)
    • 同步后的imu数据/synced_imu

滤波器节点

  1. 订阅imu原始数据以及数据预处理节点发布的所有话题消息

  2. 使用时间戳同步好的数据进行初始化,使用scan context进行初始化

  3. 然后就是滤波预测和观测修正

    • 当imu原始数据达到,此时并没有观测,则值进行预测,主要更新协方差矩阵
    • 当前端里程计有观测数据时,对滤波器进行观测修正并重置状态

结果

整体误差如下:

请添加图片描述

APE w.r.t. full transformation (unit-less)
(not aligned)

       max	1.136680
      mean	0.258573
    median	0.224092
       min	0.017928
      rmse	0.306049
       sse	166.163466
       std	0.163726

可以达到0.3m左右的绝对轨迹误差,效果没有图优化好。

缺点

  1. ESKF误差状态的运动方程离散化其实是存在闭式解的,可以参考Quaternion kinematics for the error-state Kalman filter附录B
  2. 实时性的效果并不好,如果高频播放数据集,很容易直接跑飞,有待优化

数据集:

链接: https://pan.baidu.com/s/1oaMtP6jz0My5NEaE-X-83w 密码: vb02
–来自百度网盘超级会员V4的分享
框架:
链接: https://pan.baidu.com/s/1azX1lTFPF0RzLQJDnZxgBA 密码: eshb
–来自百度网盘超级会员V4的分享

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值