MLPnP为啥使用切空间残差
在 ORB‑SLAM3 中MLPnPMaximum Likelihood PnP选用切空间残差而不是方向向量叉乘残差根本原因是切空间残差对应于测量噪声的真实概率模型能给出最大似然意义上的最优估计而叉乘残差只是几何上的一种代数误差不具备统计最优性。下面从模型假设、残差形式和统计解释三个层面说明。这相当于直接度量观测方向在切平面内的位置偏移。2. 最大似然估计自然导出切空间残差3. 为什么 ORB‑SLAM3 特意选择切空间残差ORB‑SLAM3 需要在跟踪丢失或重定位时从一组可能包含较多外点的 3D‑2D 匹配中快速计算出精度足够高的初始位姿。此时精度MLPnP 基于切空间残差并合理加权在相同内点下能得到比 EPnP代数方法和简单叉乘最小化更准的位姿利于后续 BA 的收敛。鲁棒性ORB‑SLAM3 的实现中会结合鲁棒核函数如 Huber和 RANSAC但优化内核仍基于最大似然模型。准确的噪声模型使得内点判别的阈值可以按概率意义设定进一步提升鲁棒性。协方差传播的一致性切空间残差配合对应信息矩阵能无缝对接后续局部优化或全局优化的概率框架。相对地叉乘残差虽计算更简单但只是一个“几何一致”的误差代数无法正确反映不同深度、不同视角下测量信心的差异在 SLAM 这种需要反复优化、尺度多变的长程场景下优势远不如最大似然形式。简短总结MLPnP 使用切空间残差是因为把观测方向向量的误差建模为切平面内的高斯分布是对真实像素噪声传播的正确近似由此得到最大似然估计叉乘残差丢失了这种误差的协方差结构既不是统计最优也无法合理加权深度不同的点。ORB‑SLAM3 基于这一原理在重定位与初始位姿估计中获得了更好的精度与鲁棒性。