X-ICP论文阅读

X-ICP: Localizability-Aware LiDAR Registration for Robust Localization in Extreme Environments

摘要

现代机器人系统需要在具有挑战性的环境中运行,这就要求在具有挑战性的条件下进行可靠的定位。基于激光雷达的定位方法,如迭代最近点(ICP)算法,在几何信息匮乏的环境中可能会受到影响,这些环境已知会降低配准性能,并将优化推向弱约束方向的发散

为了克服这个问题,本工作提出了 1)一个鲁棒的多类别(非)可定位性检测模块,以及 2)一个基于可定位性约束ICP优化模块,并以统一的方式将两者耦合在一起。所提出的可定位性检测是通过利用扫描和地图之间的对应关系来分析针对优化主方向的对准强度来实现的,作为LiDAR定位分析的一部分。

Read More

速度坐标系转换

速度坐标系转换

问题描述

在做滤波器的时候,通常会遇到这样一个问题,轮速计通常安装在车辆后轴轮毂上,得到的速度通常标记为后轴中心的速度。然而IMU并不一定安装在车辆后轴中心,此时如果需要使用轮速做观测,则需要进行速度坐标系转换,即把轮速转化为IMU的速度观测。

转换关系

假设已知后轴中心与IMU的外参关系:

Read More

IKFOM代码解析

Kalman Filters on Differentiable Manifolds

IkFoM在Fast-LIO2中的应用

Fast-LIO2中,主要使用了IkFoM作为状态,其中,在use-ikfom.hpp声明了关于各种状态、数据的宏定义

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <IKFoM_toolkit/esekfom/esekfom.hpp>

typedef MTK::vect<3, double> vect3;
typedef MTK::SO3<double> SO3;
typedef MTK::S2<double, 98090, 10000, 1> S2;
typedef MTK::vect<1, double> vect1;
typedef MTK::vect<2, double> vect2;

MTK_BUILD_MANIFOLD(state_ikfom,
((vect3, pos))
((SO3, rot))
((SO3, offset_R_L_I))
((vect3, offset_T_L_I))
((vect3, vel))
((vect3, bg))
((vect3, ba))
((S2, grav))
);

MTK_BUILD_MANIFOLD(input_ikfom,
((vect3, acc))
((vect3, gyro))
);

MTK_BUILD_MANIFOLD(process_noise_ikfom,
((vect3, ng))
((vect3, na))
((vect3, nbg))
((vect3, nba))
);

...

Read More

Robust Odometry and Mapping for Multi-LiDAR Systems with Online Extrinsic Calibration

摘要

组合多个LIDARS使机器人能够最大化其对环境的感知意识,并获得足够的测量。本文提出了一种实现鲁棒和同步的外参标定,里程计和多个LIDAR的建图系统。

我们的方法从测量预处理开始,从原始测量中提取边缘和平面特征,在运动和外参初始化过程之后,基于滑动窗口的多激光雷达里程计将板载运行,以估计具有在线标定和收敛性检测的位姿。

Read More