高翔【自动驾驶与机器人中的SLAM技术】学习笔记(十三)图优化SLAM的本质

一、直白解释slam与图优化的结合

我从b站上学习理解的这个概念。

视频的大概位置是1个小时以后,在第75min到80min之间。图优化SLAM是怎么一回事。

slam本身是有运动方程 的,也就是运动状态递推 方程,也就是预测过程 。通过t1时刻,可以递推预测t2时刻的传感器位置。

重点来了:

我通过这个预测的t2时刻的位置,可以预测出,在t1时刻所建地图中特征在t2时刻的位置。

t1时刻的位置有了,观测的特征有了。对t2时刻的位置预测 可以通过运动方程递推出来。那么我就可以基于对t2时刻位姿的估计,基于这个视角,估测出此时在t1时刻时地图中那些特征点,在t2时刻时,在地图中的位置。

对t2时刻特征位置的估计有了,对t2时刻特征位置的观测有了,两者之间的差异,就是我们需要最小二乘优化的。
slam不是分为定位建图两部分嘛,我通过t2时刻定位的预测(视角,位姿),可以推断出,t2时刻可能建立的地图的样子(或者说,t1时刻的特征点,在预测t2时刻位置之后,这些特征点,在t2时刻观察时这些特征点应该在的位置)。

这个预测的地图,在理论上------如果预测准确的话,应该跟t2时刻观测的地图是一样的。

吐过位姿预测观察的地图跟实际观测的地图应该是一样的,如果不一样,这个误差就需要优化了。

这就是slam跟图优化结合的点位

二、对比案例辅助理解

回顾我们之前的图优化案例:我们有一个非线性的待拟合曲线。

基于预测的a,b,c,计算出预测的结果 ,再跟实际的观测数据 yi对比,计算误差

然后通过雅可比更新待估计的参数。使模型参数得到优化更新。

类比:

对数据的预测 有了,对数据的观测也有了。两者之间的差异最小化,就是位姿更新误差最小化。

三、图优化优势

只要把残差构建定义出来,

然后把观测数据丢给优化器就不用管了。

ceres如上,g2o如下

把待优化参数交给点,把观测数据交给边。

相关推荐
_Kayo_43 分钟前
VUE2 学习笔记11 脚手架
vue.js·笔记·学习
CCC_bi1 小时前
电磁兼容五:仿真技术
学习·制造
溯源0061 小时前
Docker学习相关视频笔记(一)
笔记·学习·docker
LGGGGGQ1 小时前
嵌入式学习-(李宏毅)机器学习(3)-day30
学习
rannn_1111 小时前
【MySQL学习|黑马笔记|Day1】数据库概述,SQL|通用语法、SQL分类、DDL
数据库·后端·学习·mysql
zgc12453671 小时前
Linux学习--C语言(指针3)
c语言·开发语言·学习
遇见尚硅谷11 小时前
C语言:*p++与p++有何区别
c语言·开发语言·笔记·学习·算法
艾莉丝努力练剑11 小时前
【数据结构与算法】数据结构初阶:详解排序(二)——交换排序中的快速排序
c语言·开发语言·数据结构·学习·算法·链表·排序算法
jz_ddk12 小时前
[HarmonyOS] 鸿蒙LiteOS-A内核深度解析 —— 面向 IoT 与智能终端的“小而强大”内核
物联网·学习·华为·harmonyos
试着12 小时前
零基础学习性能测试第五章:Tomcat的性能分析与调优-Tomcat原理,核心配置项,性能瓶颈分析,调优
学习·零基础·tomcat·性能测试