【ipaper】 An Overview to Visual Odometry and Visual SLAM: Applications to Mobile Robotics 第五部分
Localization
Stereo Vision Versus Monocular Vision
Stereo Visual Odometry
在双目视觉中,在单个时间步长(single time-step
)中通过三角测量重建3D信息,同时观察在空间上被已知基线距离分开的左右图像的特征。在Stereo VO
中,通过观察两个连续帧(in both right and left images
)中的特征来估计运动。以下步骤概述了使用3D to 2D
运动估计的stereo VO
的常用过程:
- 1、在时间 I 中,提取并匹配
right frame
FR(I) 和left frame
FL(I) ,在3D中通过三角测量重构点(reconstruct points
)。 - 2、将这些功能与下一帧 FR(I + 1) 和 FL(I + 1) 中的相应功能相匹配。
- 3、
Estimate the transformation
这个转换(transformation
)给出了一个相机的图像(左或者右边)所观察到的特征与将该转换应用到了当前帧之后,前一帧重建的3D点之间的最小平方差(SSD
)(见公式二):
- 4、使用
RANSAC
优化,仅基于内部点重新计算转换。 (参见“Refining the Transformation Using ICP
”部分) - 5、将获得的变换与先前估计的全局变换连接起来。
- 6、在每一个迭代时间内,重复以上步骤。
Monocular Visual Odometry
对于通过三角测量在3D中重建特征点,需要在连续帧(时间分离帧)中观察它们。在monocular VO
中,需要在至少三个不同的帧中观察特征点(观察第一帧中的特征,重新观察并在第二帧中三角形化为三维点,然后计算第三帧中的变换)。monocular VO
的一个主要问题是尺度模糊问题。与双目视觉系统不同,双目视觉系统可以得到最开始的两个帧的变换(旋转和平移)而单目视觉中前两个连续帧之间的变换并不能完全得到(比例未知),通常情况下将它设置为一个预定值。因此,重建的3D点以及对应的变换都是相对于前两帧之间的初始预定义比例的。除非有关于3D结构或初始变换的附加信息可用,否则无法获得全局尺度。[89]讲到,可以使用其他的传感器(Imu,车轮编码器,GPS)收集那些所需要的信息。monocular VO
和 stereo VO
的流程基本相似,但是monocular VO
的特征点的三角测量发生在不同的时间(连续帧)
使用3D到2D运动估计的monocular VO
的可能的过程在以下步骤中描述:
- 1、在
time step
I 中提取第一帧 FI 的特征,并且指定描述符。 - 2、提取下一帧 FI+1 的特征,并且指定描述符。
- 4、匹配两个连续帧之间的特征,使用5点算法(
5-point algorithm
)[86]估计前两帧之间的变换(使用预定义比例),并使用此变换对相应点进行三角测量(3D点将达到假设的比例)。 - 4、提取 接下来的 FI+2 帧的特征,将它与先前帧中提取的特征进行匹配。
- 5、使用
RANSAC
优化匹配并估计转换,该转换给出当前帧 FI + 2 中观察到的特征与应用之后从前两帧重建的重新投影3D点之间的最小平方差之和(SSD)(见方程2)。这个过程称为透视N点(PnP)算法[74]。 - 6、使用估计的变换将
FI + 1
和FI + 2
之间的匹配到的特征对三角化为3D点。 - 7、设置 I = I + 1 ,每次迭代从步骤4开始重复。
Visual Odometry Based on Optical Flow Methods
光流计算用作局部图像运动的替代测量
(surrogate measurement
)。通过分析图像平面中的运动对象的投影时空模式来计算光流,并且其在像素处的值指定该像素在连续图像中移动了多少。
光流测量物体和观察者之间的相对运动[47],并且可用于估计移动机器人或相机相对于其环境的运动。
光流的计算基于强度一致性(Intensity Coherence assumption
)的假设,该假设表明投影在两个连续图像上的点的图像亮度是(最严格的假设)常数或(最弱假设)几乎恒定[7]。这种假设产生了众所周知的光流约束:
其中 Vx 和 Vy 是 x 和 y 光流分量。已经提出了许多使用运动约束方程来解决光流问题的算法(参见[115]以获得当前方法的列表)。
计算出每个像素的2D位移 (u,v) 后,可以完全恢复3D摄像机运动。Irani等人.[60]描述了用于纠正相机的6DOF运动参数的等式,其包括三个平移 (Tx,Ty,Tz) 和三个旋转分量 (Ωx,Ωy,Ωz)。他们的方法基于以下方程式:
其中 fc 是相机的焦距,(x,y) 是3D点 (X,Y,Z) 的图像坐标。
假设深度Z是已知的,则存在六个未知数,并且至少需要三个点来完全约束变换。但是在许多情况下会添加额外的限制,例如在平面上移动,这样会减少 DOF 和所需要的最少点数。
参考文献
[7].Bab-Hadiashar, A., Suter, D.: Robust optic flow computation. Int. J. Comput. Vis. 29(1), 59–77 (1998)
[47].Gibson, J.: The Senses Considered as Perceptual Systems. Houghton Mifflin Co, Boston (1966)
[74].Lepetit, V., Moreno-Noguer, F., Fua, P.: EPNP: an accurate O(n) solution to the PnP problem. Int. J. Comput. Vis. 81(2), 155–166 (2009)
[86].Nister, D.: An efficient solution to the five-point relative pose problem. In: Proceedings of 2003 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, vol. 2, Part II, p. 195
[89].Nützi, G., Weiss, S., Scaramuzza, D., Siegwart, R.: Fusion of IMU and vision for absolute scale estimation in monocular slam. J. Intell. Robot. Syst. 61(1), 287–299 (2011)
[115].Xu, L., Jia, J., Matsushita, Y.: Motion detail preserving optical flow estimation. IEEE Trans. Pattern Anal. Mach. Intell. 34(9), 1744–1757 (2012)
[60]Irani, M., Rousso, B., Peleg, S.: Recovery of ego-motion using region alignment. IEEE Trans. Pattern Anal. Mach. Intell. 19(3), 268–272 (1997)
不足之处,敬请斧正; 若你觉得文章还不错,请关注微信公众号“SLAM 技术交流”继续支持我们,笔芯:D。
相关推荐
【ipaper】 Visual Odometry 和Visual SLAM概述: 第四部分
【ipaper】 Visual Odometry 和Visual SLAM概述: 第三部分
【ipaper】 Visual Odometry 和Visual SLAM概述: 第二部分
【ipaper】 Visual Odometry 和Visual SLAM概述: 第一部分
如前面几篇,Localization 已经讲完了,下一篇开始讲 Mapping,敬请期待吧 :D.