orbslam2-基础理论(二)

本文介绍了ORB-SLAM2中使用单应矩阵H进行相机初始位置估计的方法,特别是适用于平面和小视差的场景。单应矩阵由物理变换和平面的相机内参矩阵组成,通过它可以恢复旋转R和平移t。同时,文章还讨论了如何计算地图点,并指出三角法求深度可能存在误差,通常作为初始值使用。
摘要由CSDN通过智能技术生成

这篇将要讲orbslam2相机初始位置估计的另一种方法:单应矩阵H(使用场景:平面,视差小)和map point的求法


(一):单应矩阵

在计算机视觉中,平面的单应性被定义为一个平面到另外一个平面的投影映射。因此一个二维平面上的点映射到摄像机成像仪上的映射就是平面单应性的例子。如果点Q到成像仪上的点q的映射使用齐次坐标,这种映射可以用矩阵相乘的方式表示。若有一下定义:

Q=[X Y Z  1]T

q=[x y  1]T

则可以将单应性简单的表示为:

q=sHQ

这里引入参数s,它是任意尺度的比例(目的是使得单应性定义到该尺度比例)。通常根据习惯放在H的外面


H有两部分组成:用于定位观察的物体平面的物理变换和使用摄像机内参数矩阵的投影。


物理变换部分是与观测到的图像平面相关的部分旋转R和部分平移t的影响之和,表示如下

W=[R t]


这里R为3*3大小的矩阵,t表示一个一个3维的列矢量。

摄像机内参数矩阵用M表示,那么我们重写单应性如下:

q=sWMQ  where W是相机内参矩阵

我们知道单应性研究的是一个平面上到另外一个平面的映射,那么上述公式中的~Q,就可以简化为平面坐标中的~Q',即我们使Z=0。即物体平面上的点我们用x,y表示,相机平面上的点,我们也是用二维点表示。我们去掉了Z方向的坐标,那么相对于旋转矩阵R,R可以分解为R=[r1 r2 r3],那么r3也就不要了。

其中H为:

H=sM[r1 r2 t]

是一个3×3大小的矩阵.

 故最终的单应性矩阵可表示如下:

q=sHQ

我们可以从H矩阵中恢复R,T。但是同样存在尺度问题(指T),所以只有在初始位置估计的时候才用到E或H。以后一般都用opencv的PNP求解也就是3D-2D的映射。



(二)我们除了要求相机的pose以外,还要求map point。下面来讲解map point的求法。


这里写图片描述
   对于三维空间中的一点 P ,我们假设第一个摄像机坐标系 C1 就是世界坐标系,P在世界坐标系下的表示为 P=(x,y,z,1)T ,这时,摄像机坐标系 C1 的外参数矩阵 M1 为单位矩阵。
这里写图片描述
P 和光心的连线交第一个图像平面于点 p1 ,注意这里的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值