视觉SLAM笔记--第5篇: 基础矩阵F和单应矩阵H的推导过程,区别分析
基础矩阵F和单应矩阵H的推导过程,区别分析
参考博客
参考博客:https://blog.****.net/try_again_later/article/details/88655563
1. 基础矩阵F
1.1 Essential Matrix
已知:坐标系o, ,世界坐标点P在o下相机坐标x,在下相机坐标。
求解:坐标系o到的旋转矩阵R,和平移矩阵t。
坐标系的刚体变换:
根据共平面:
说明:由于共平面,且外积的方向同时垂直于,即垂直于平面,又向量在平面内,因此成立。
结合上面两个公式,可以得到:
转换之后得到:
取 得到:
其中为P在两个相机坐标系下的坐标。
- t ^ R 为3*3的矩阵,奇异值为 的形式, 为本质矩阵的内在性质。
- 性质:理论上综合旋转、平移共有6个*度,因尺度等价,E有5个*度。
- 求解:一般使用8点法,通过SVD分解,恢复出R,t 。
1.2 Fundamental Matrix
利用前面的公式,将相机坐标转换为像素坐标,E便可以转换为F,需要知道两个相机的内参.
- 基本矩阵F和E只差了一个相机内参 ,可以直接带入求解。
- 基础矩阵F表明一个图像点 到另一图像上对极线L上的映射。
1.3 两者区别
本质矩阵则是基本矩阵的一种特殊情况,是在归一化图像坐标下的基本矩阵,可以理解为本质矩阵对应的坐标位于相机坐标系,基础矩阵对应的坐标位于图像平面坐标系。
2. 单应矩阵H
求解公式:
由公式可知,当坐标系到固定平面的深度远大于平移矩阵时,相机为纯旋转,即相机在纯旋转后仍然可以通过单应矩阵H分解出
- 单应矩阵的定义与、平面参数相关,单应矩阵为3*3的矩阵,*度为8,求解的思路和相似。
- 单应矩阵表明两个点之间变换H,
- 求解:可用一组不共线的4个匹配点来计算矩阵H。
3. 基础与单应矩阵区别
- 单应矩阵适用于特征点在同一平面上的运动估计场景, 而基础矩阵则适用于空间中的特征点运动估计,两者适用的场景不相同,但是两者都是表示两帧图像像素点的相对运动映射关系。
- 单应矩阵在纯旋转情况下仍然适用,但是在纯旋转情况下,由基础矩阵恢复分解得到的有很大的误差。