-1:前言:
看到篇对DSO零空间介绍的文章,记录一下防迷路,致敬大神!!!!
0.原文地址:
https://blog.csdn.net/wubaobao1993/article/details/105106301/
1.slam中的零空间:
通常举例子最常用的就是尺度,也就是当地图的规模扩大一个倍数的时候,整个SLAM的优化问题是不变的,也就是我们所说的不客观。进而这里明确一个点:SLAM中的零空间其实是整个优化问题的零空间,而不是说是优化中某个节点的零空间。就是说整个优化问题存在不客观的维度,这个不客观的维度会通过优化问题进而影响到某个节点的优化,导致那个节点出现问题,常见的比如说纯视觉SLAM在转弯的时候,尺度会突然变化。
2.DSO中的零空间作用:
零空间的正交化去避免零空间对最终的增量产生的影响。
其中红色的箭头表示增量方程中求解出来的增量,黑色的虚线表示零空间在这个节点上可能产生的漂移,而蓝色的箭头表示最终我们正交化之后的增量结果,当正交化之后,相机最终的位置会到蓝色三角显示的位置。沿着虚线滑动的所有三角(漂移)都是满足优化方程的解,当零空间引起增量值变化时,整个优化问题的输出是不变的!,但是只有蓝色三角才是最优的值。零空间的目的就是消除虚线上的漂移找到最佳位置(蓝三角)。
零空间之所以能够肆意变化而不被优化察觉,就是因为零空间产生的影响与优化的梯度方向是正交的,就像一个平面上的点有可能是三维空间中的一条线一样,这条线长度再怎么变化,对于这个面而言始终是一个点。