node.js 网站开发,移动端网站建设,wordpress挂件,php网站功能在SLAM中前端和后端是被经常提到的一个概念。但是对于前端和后端的理解有着不同的看法#xff0c;我的理解是#xff1a; 前端#xff1a;前端负责处理传感器数据#xff0c;特征提取#xff0c;进行状态估计和地图构建的初步步骤。 后端#xff1a;后端接受不同时刻的里…在SLAM中前端和后端是被经常提到的一个概念。但是对于前端和后端的理解有着不同的看法我的理解是 前端前端负责处理传感器数据特征提取进行状态估计和地图构建的初步步骤。 后端后端接受不同时刻的里程计信息以及回环检测信息对它们进行优化得到全局一致的轨迹和地图。 也就是说前端一般是为了得到当前帧的一个粗糙的位姿估计而后端则是一个规模更大多帧之间的约束、回环、IMU等其他约束的优化系统。
以LOAM系列为例
特征提取、匹配、scan-to-map中利用高斯牛顿求解ICP问题进行状态估计这些都属于前端部分回环检测、因子图优化部分则属于后端。
以Fast-LIO系列为例
在基于滤波的SLAM算法中使用迭代卡尔曼滤波Iterative Kalman Filtering来求解当前帧状态量的步骤通常属于SLAM系统的前端部分。
如果我们把后端看做是一个全局优化或者多个时刻的里程计优化的话那么因为Fast-LIO系列没有回环则认为没有后端只有前端。
以ORB-SLAM系列为例
ORB-SLAM2主要有3大线程分别是跟踪线程局部建图线程以及回环检测线程。跟踪线程仅优化当前帧位姿属于前端视觉里程计部分局部建图线程会一起优化当前帧及其共视关键帧的位姿和地图点属于后端优化部分回环检测线程会优化全局位姿也属于后端优化部分。