基本,基本和同构矩阵之间的区别

Kar*_*gan 30 opencv transform homography perspectivecamera projective-geometry

我有两张图片来自不同的位置.第二个摄像头位于右侧,相对于第一个摄像头向上和向后.所以我认为两个视图之间存在透视变换而不仅仅是仿射变换,因为摄像机处于相对不同的深度(我是对的吗?)我在两个图像之间有一些对应的点.我想使用这些对应点来确定每个像素从第1个到第2个图像的变换.

我对函数findFundamentalMatfindHomography感到困惑.... 两者都返回3x3矩阵,两者有什么区别?

是否有任何条件/使用它们的先决条件(何时使用它们)?

哪一个用于将点从第一图像转换为第二图像?在函数返回的3x3矩阵中,它们是否包括两个图像帧之间的旋转和平移?

维基百科,我们发现基本矩阵是相应图像点之间的关系.在苏答案在这里,它是说本质矩阵E被需要得到相应的点...但我没有照相机内部矩阵计算è.....我只是有两个图像.

我该如何确定相应的点?等待建议..谢谢

car*_*ito 13

在没有对世界场景几何进行任何额外假设的情况下,您无法确认两个视图之间存在投影转换.仅当场景是平面时才这样.关于该主题的一个很好的参考是Hartley和Zisserman撰写的计算机视觉中多视图几何.

如果世界场景不是平面的,那么绝对不应该使用findHomography函数.您可以使用findFundamentalMat函数,它将为您提供基本矩阵F的估计.此矩阵描述两个视图之间的极线几何.您可以使用F来校正图像,以便应用立体算法来确定密集的对应图.

我假设你使用"透视变换"这个词来表示"投射变换".据我所知,透视变换是图像映射的世界,而不是图像到图像的映射.


Giu*_*ano 9

只有两种情况,两个视图之间的变换是投影变换(即单应性):场景是平面的,或者两个视图是由围绕其中心旋转的摄像机生成的.


小智 8

基本矩阵具有x'Fu = 0 与x在一个图像中的关系 ,而u在另一个iff x和u是相同3d点的投影.此外 l = Fu 定义了一条线(lx'= 0),其中u的相应点必须打开,因此它可以用于限制搜索空间的对应关系.

Homography将平面的一个投影上的点映射到平面的另一个投影. x =胡