
SLAM的全称是Simultaneous Localization and Mapping,直译作同时定位与建模。你不妨直接想象:机器人走进房间一圈,还原出了整个房间内部的模型。
用黑箱思维看,SLAM的输入是传感器读数和噪声,输出是机器人坐标和路标的坐标。说白了就是根据读数r去估计x和y,x是自己的坐标,y是建模对象的坐标。视觉SLAM以相机为主要传感器。
因为要让计算机解决问题,所以我们要思考以上问题的数学表述。我们知道机器人是在运动的,过程中获得一个个连续的帧,那运动如何描述呢?一个比较好的方式是采用欧式变换的矩阵,它具有连续性质,故算个李群。这样机器人运动只需要表示成坐标矩阵乘一个欧式变换矩阵就可以啦。
既然是在运动过程中实现建模,导数信息就变得尤为重要,所以我们希望能把矩阵的导数尽可能方便的表达和算出来,于是就引入了李代数,在一定范围内,它和李群一一对应。欧式变换矩阵的李代数是一个六维的列向量。那么,机器人运动就又变成了坐标矩阵乘一个六维列向量。
(导数涉及无穷小量的加法,但是欧式变换构成的李群只定义了乘法,所以才需要对应到李代数上去。)

------------未完待续,会继续填坑-----------