SLAM中的非线性优-3D图优化之绝对位姿SE3约束四元数形式(十九)

本节开始展示四元数用以推导绝对位姿雅克比,这也将是绝对位姿理论部分的最后一节,理论后必接实战篇,让我们进入四元数推导的世界吧

完整版实现了在6.1 补充里的公式

完整版代码https://gitee.com/zl_vslam/slam_optimizer/blob/master/multi_sensor_slam/src/imu_factor_gtsam/run_gins_pre_integ_ch4.cc

注意这里的小旋转四元数可以参考《Quaternion Kinematics for Error-State Kalman Filter》式(193)的定义,表示符号略有差异

6. 代码实战证明

如图所示,可以看到雅克比为一个6x6的矩阵,其中右下角的3x3为单位矩阵,左上角为右雅克比的逆,之前多个章节都有过右雅克比矩阵的逆,再小角度残差作用下,近似为单位阵,因此上述推导中近似的单位矩阵是完全正确的,也从侧面说明了雅克比矩阵推导的正确性

6.1 补充

待使用的公式

证明,两个四元素的雅克比如下

代码已经过验证

复制代码
gtsam::Vector GPSPoseFactor::evaluateError(const gtsam::Pose3 &pose,
                                           boost::optional<gtsam::Matrix &> Jacobian) const
{
    gtsam::Pose3 delta_pose = measurement_.inverse()*pose;
    gtsam::Vector6 error = delta_pose.Logmap(delta_pose, Jacobian);
    
    if(Jacobian) {
        gtsam::Matrix6 jac;
        jac << gtsam::I_3x3, gtsam::Z_3x3, gtsam::Z_3x3, gtsam::I_3x3; // right
        *Jacobian = jac;
    }
    return error;
}

完整版实现https://gitee.com/zl_vslam/slam_optimizer/blob/master/multi_sensor_slam/src/imu_factor_gtsam/gps_factor.cc

7. 右雅可比矩阵

8. 右雅可比的逆

9. 小角度近似推导

9.1 小角度假设

9.2 对右雅克比矩阵的展开

9.3 对右雅克比矩阵的逆进行小角度展开

9.4 零阶近似

10. 近似误差分析

10.1 一阶近似的误差

10.2 零阶近似(单位矩阵)的误差

10.3 误差量级估计

11. 在优化问题中的影响

高斯-牛顿法中的更新公式:

12. 结论公式

相关推荐
后端小肥肠4 小时前
公众号漫画卷疯了?我用漫画工厂Skill,3天带群友入池,小白也能抄作业
人工智能·aigc·agent
扑兔AI4 小时前
扑兔AI基于公开数据的B2B客源筛选与意向评分系统设计
人工智能·生活
数智化精益手记局4 小时前
什么是设备维护管理?设备维护管理包含哪些内容?
大数据·网络·人工智能·安全·信息可视化
飞Link5 小时前
iOS 27 开启“AI 开放时代”:Siri 驱动可更换背后的技术范式迁移
人工智能·ios
AllData公司负责人5 小时前
通过Postgresql同步到Doris,全视角演示AllData数据中台核心功能效果,涵盖:数据入湖仓,数据同步,数据处理,数据服务,BI可视化驾驶舱
java·大数据·数据库·数据仓库·人工智能·python·postgresql
飞Link5 小时前
GPT-5.5 Instant 震撼发布:Realtime-2 API 如何重新定义多模态交互?
人工智能·gpt·microsoft·交互·语音识别
飞Link5 小时前
具身智能港亮相深圳:从“大脑”到“身体”,开启人形机器人产业新纪元
人工智能·机器人
IT谢彪5 小时前
记录Dify 安装与使用过程
人工智能
飞Link5 小时前
AI 与能源的双向奔赴:深度解读 2026《双向赋能》行动方案
人工智能·能源
Hello.Reader5 小时前
算法基础(十)——分治思想把大问题拆成小问题
java·开发语言·算法