monoSLAM

单目相机的优点(和双目相机相比):双目相机测得的深度距离收到基线长度的限制,单目相机就可以解决这个问题。

参考博客:http://blog.csdn.net/heyijia0327/article/details/50758944  (一定要看,解决了所有疑惑,包括尺度问题,5点法,8点法的由来)

视觉里程计、SFM、运动估计

本质矩阵:essential matrix

基础矩阵:Fundamental matrix

参考文献:http://www.cnblogs.com/gemstone/archive/2011/12/20/2294805.html

http://blog.csdn.net/xiao4399/article/details/48037287

http://sparklinglee.blog.163.com/blog/static/23009012920145183315488/

https://wenku.baidu.com/view/5b963c00ba1aa8114431d94a.html

https://en.wikipedia.org/wiki/Essential_matrix


注意:最后恢复的旋转矩阵是可以确定的,但是恢复的平移矩阵则不一定是正确的,但是和真正的平移矩阵相差一个scale factor

同理,恢复的三维点也相差一个scale factor。下面是摘自其他作者的原话。

(1)The scale issue is normal in Mono camera, because for mono camera (or said sfm), the reconstruction matrix can only be back to scale level.


(2)Visual odometry (also called structure from motion) is the problem of recovering the motion of a camera from the visual input alone.
This can be done by using single cameras(perspective or omnidirectional), stereo cameras,or multi-camera systems.
The advantage of using more than one camera is that both the motion and the 3D structure can be computed directly in the absolute scale when the distance between the cameras is known. 
—— 《Absolute Scale in Structure from Motion from a Single Vehicle Mounted Camera by Exploiting Nonholonomic Constraints》


(3)It is well known that the shape and motion geometry in SfM problems such as this are subject to arbitrary scaling and that this scale factor cannot be recovered. 
(The imaging geometry $\beta$ and the rotation are recoverable and not subject to this scaling). 
—— http://www1.cs.columbia.edu/~jebara/htmlpapers/SFM/node26.html


1、相机坐标系、图像坐标系、像素坐标系



相机坐标系:OsXsYsZs

图像坐标系:O1x1y1

像素坐标系:与图像坐标系的方向相同;不同的是:

x方向的单位尺度为像素点的宽度,y方向的单位尺度为像素点的宽度。


2、相机内参矩阵和外参矩阵

内参矩阵:

外参矩阵:包括旋转矩阵和平移矩阵


3、摄像机矩阵


4、本质矩阵


注:这里的Pr、Pl代表在两个相机坐标系下的三维坐标

下面过程将外极线方程中的三维坐标化为成像平面的齐次坐标:


注意:pr、pl代表三维点p在左右两个图像坐标系下的齐次坐标。S代表平移向量T的斜对称矩阵(skew symmetric matrix)

 

5、基础矩阵

本质矩阵指明了在图像坐标系下左右成像平面对应点的关系。

但是我们在使用时使用的是像素坐标系(比如在特征检测和匹配都是用像素坐标系),基础矩阵则指明了在像素坐标系下左右成像平面对应点的关系。


6、本质矩阵和基础矩阵的关系


7、本质矩阵的性质:

(1)本质矩阵仅仅由旋转矩阵和平移矩阵确定,与相机的参数无关。

(2)外极线方程:


(3)极线与本质矩阵和像素点的对应关系:

(4)极点与本质矩阵的关系:

(5)本质矩阵的秩和行列式

rank(E) = 2

det(E) = 0

 

8、基础矩阵性质:

同本质矩阵一样。


9、求解基础矩阵、本质矩阵

本质矩阵5个自由度,可已从两个层面理解:

(1)旋转矩阵3个、平移矩阵2个(因为平移矩阵乘以一个系数不影响外极线方程的成立)

(2)体现在数学公式上可以增加如下4个约束,将E的自由度控制在5个:

(1)det(E)=0

(2)||E|| = 1(即E乘以一个系数,外极线方程依然成立,可以通过||E||=1限制系数)

(3)E的一个奇异值为0

(4)E的另外两个奇异值相等

基础矩阵的自由度7个:

(1)det(F) = 0

(2)||F|| = 1(即F乘以一个系数,外极线方程依然成立,可以通过||F||=1限制系数)

八点法:

用八点法求解本质矩阵E的过程可以参考:https://en.wikipedia.org/wiki/Eight-point_algorithm  (the basic algorithm 部分)

注意:为什么很多文献说最少用8个点?

这里只考虑E和F的第二个约束,即E和F乘以一个系数,外极线方程依然成立;在求出来之后要做后续处理(近似),使得E和F满足其他的约束条件。

 

10、本质矩阵求旋转矩阵R和平移矩阵t

参考:《从本质矩阵恢复运动的方法简单证明》——郁钱

对本质矩阵E做SVD分解,再根据下面的定理即可得到结果。

这里S表示平移向量T的斜对成矩阵(skew symmetric matrix)。

综合定理1.2和推论1.3,可以得出:由本质矩阵即可恢复出2个旋转矩阵和带有一个尺度因子的平移矩阵(如果加上限制条件||T||=1,那么平移矩阵会产生两个)。


如何从四个R,T的组合中恢找出真正的那个R,T组合?

把所有特征点的深度计算出来,看深度值是不是都大于0,深度都大于0的那组R,T就是正确的。

 

11、求解场景点的三维坐标

参考:http://blog.csdn.net/heyijia0327/article/details/50774104 

参考:http://sparklinglee.blog.163.com/blog/static/23009012920145183315488/

注意:如果求出旋转矩阵R和平移矩阵t,并且知道两个图像坐标系中对应点的坐标(x1,y1)和(x2,y2);那么可以根据下面的公式求出对应像点的三维点的坐标。



12、确定scale的方法

The absolute scale can then be determined from direct measurements(e.g., measuring the size of an element in the scene),motion constraints,or from the integration with other sensors.

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: MonoSLAM使用的特征是二维图像中的特征点,例如角点,边缘等。它利用这些特征点来跟踪相机的运动,从而实现在单个摄像头中的SLAM(同时定位和地图构建)。这些特征点可以通过介绍的几何方法从图像中提取出来,并且可以使用不同的技术(例如SIFT,SURF等)进行描述和匹配。MonoSLAM还可以使用惯性测量单元(IMU)等其他传感器提供的信息来提高其效果。 ### 回答2: MonoSLAM使用的主要特征是视觉特征。具体来说,它使用摄像头所拍摄到的图像作为输入数据,并通过提取关键点、描述符或其他视觉特征来表示场景中的物体或特定位置。 一种常用的视觉特征是角点特征,它是图像中明显的边缘或角点,这些特征具有对光线变化敏感的性质。MonoSLAM可以通过跟踪这些角点特征的位置来估计相机的位姿和场景的结构。 除了角点特征,MonoSLAM还可以使用其他类型的图像特征,如线段、边缘、纹理等。这些特征可以通过不同的特征提取算法来获取,并在MonoSLAM中用于相机位姿估计和地图重建。 需要注意的是,MonoSLAM依赖于低纬度的特征表示,因为高维特征可能会导致计算复杂度的增加和估计不稳定。所以在实践中常用的特征是二维的特征点,如角点特征。 总之,MonoSLAM使用的特征是从图像中提取的视觉特征,如角点特征,以及其他类型的特征,用于相机位姿估计和场景重建。 ### 回答3: MonoSLAM使用的特征主要是视觉特征。具体来说,它利用摄像机所捕捉到的图像中的关键点或角点来进行特征提取和跟踪。这些特征点是图像中具有显著性的点,例如图像边缘、纹理变化、角点等。 在MonoSLAM中,特征点的选择通常基于它们的稳定性和可区分性。稳定性表示特征点在图像中的位置相对于摄像机运动的不敏感性,而可区分性表示特征点能够与其他点区分开来。常用的特征点提取算法包括Harris角点检测、SIFT、SURF等。 在SLAM过程中,MonoSLAM会根据每帧图像中的特征点与之前的特征点进行匹配,以确定相机的运动和地图的更新。通过特征点的跟踪和匹配,MonoSLAM能够实时地估计相机的位姿,并建立起稠密的三维地图。 值得注意的是,除了视觉特征,MonoSLAM也可以使用其它传感器提供的信息作为辅助特征。例如,它可以使用惯性测量单元(IMU)提供的加速度计和陀螺仪数据来辅助相机位姿的估计和地图的建立。通过将多个传感器的信息融合,MonoSLAM能够提高定位和地图建立的精度和鲁棒性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值