longer95479@home:~$

Equivalence between Kalman Filter and Factor graph


本文将因子图优化和卡尔曼滤波联系起来:卡尔曼滤波等价于因子图优化在线性系统下只优化最新状态。 我们最根本的目标,是在给定测量值 $z$,找出使得联合概率密度函数 $p(x, z)$ 最大的 $x$。而 $p(x, z)$ 可以进行分解,以便我们写出具体的形式: \[p(x,z) = p(z|x)p(x)\] 假如我们考虑两个状态 $x_1, x_2$,以及一个测量 $z$(对 $x_2$ 的测量),则联合概率密度函数可以写为: \[p(x_2,...



AirSLAM Code Reading


代码实现 首先看一下 airslam 代码的整体思路。 对于视觉惯性里程计,其核心是三个并行的线程: ->(处理msg)->(前端)->(后端)-> 使用 生产者-消费者 的框架实现数据的有向流动。例如 map_builder.AddInput(data) 往里加数据,然后另外开一个线程消耗数据,提取特征,最后再开一个线程进行特征追踪匹配和后端优化。 参数的初始化 对于参数的配置,airslam 在 read_config.h 内定义了许多结构体,其中有三个最顶层的结构体,对应 airslam 的三大模块的参数,分别是: VisualOdometryConfigs MapRefinementConfigs...



Extrinsic Online Calibration on AirSLAM


AirSLAM 在公开数据集上的效果很不错,但在笔者自己录制的数据集(螺旋快速运动)上效果很差,具体如下: AirSLAM 使用 imu 和相机,定位漂移很大 而相同的外参在 vins-fusion 上的效果却还不错。 AirSLAM 仅使用双目,漂移小,较为正常 根据第一条和第三条信息,可以推断出是 imu 和相机之间的协调出了问题,可能的原因是: 时间基准不同:公开数据集的 imu 与 图像帧有硬件同步且参考同一个时间基准,而自己录制的数据集未作同步且不是同一个时间基准,而 vins-fusion 在运行过程中在线校准...



Total views. cowboys. Hits