1

我现在正在尝试分析两个图像之间的透视变换/单应矩阵,这些图像以不同的视角/拍摄角度捕获相同的对象(例如,一个矩形)。可以使用getPerspectiveTransformOpenCV 2.3.1 中的函数导出透视变换。我想找到相应的旋转和平移矩阵。

的输出getPerspectiveTransform是一个 3x3 矩阵,我可以直接使用它来将源图像变形为目标图像。但我的问题是如何根据获得的 3x3 矩阵找到旋转和平移矩阵?

我正在研究decomposeProjectionMatrix相应的旋转和平移矩阵的功能。但输入必须是 3x4 投影矩阵。如何将透视变换(即 3x3 矩阵)与 3x4 投影矩阵联系起来?我在正确的轨道上吗?

非常感谢。

4

1 回答 1

0

单应矩阵中包含的信息(从 getPerspectiveTransform 返回)不足以提取旋转/平移。缺少的列是正确找到角度的关键。

好消息是,在某些场景下,您可以使用 solvePnP() 函数从两组点中提取所需的参数。

此外,这个问题与您所要求的相同。它应该有帮助

使用 OpenCV 分析相机运动

于 2012-08-16T07:27:38.790 回答