因子图优化将定位问题建模为概率图模型上的最大后验估计,其理论基础为图模型与非线性最小二乘优化,通过iSAM2(增量平滑与建图)实现高效的增量式求解。
算法原理:构建因子图,其中变量节点包括各时刻的位姿SE_k、速度v_k及IMU偏置B_k。因子边编码各类传感器约束:IMU预积分因子连接相邻时刻的位姿、速度与偏置,实现紧耦合的惯性约束;轮式里程计因子提供帧间相对位姿约束;激光匹配因子可分层设计(局部匹配对滑动窗口地图、全局匹配对先验地图),分别提供帧间平滑约束与全局绝对约束;先验因子固定初始状态以消除系统自由度。求解时,每加入新的变量与因子,iSAM2仅对贝叶斯树中受影响的局部区域进行重线性化与更新,避免全局批处理的计算开销。
算法流程图见图1。其中imu参数估计、多传感器时间同步、激光点云畸变矫正均是从传感器层面来提高最终的融合定位精度。
因子图节点与约束见图2。不同传感器测量对应一个因子节点,机器人状态对应变量节点,iSAM2 实现增量式优化求解。
变量节点:SE₁ → SE₂ → SE₃ → ... → SEₖ ← 位姿序列
v₁→ v₂→ v₃ → ... → vₖ ← 速度序列
B₁ → B₂ → B₃ → ... → Bₖ ← IMU 偏置序列(包含加速度计ba与陀螺仪bg)
因子边:
● IMU 预积分因子 —— 连接 SEk-1, vk-1, SEk, vk, Bk-1, Bk
● 轮式里程计因子 —— 连接 SEk-1, SEk
● 激光 PL-ICP 因子 —— 连接 SEk(与局部地图的约束)
● 全局点云匹配因子 —— 连接 SEk(与先验地图的约束)
● 先验因子 —— 固定初始状态
