5

我有 n 帧 360x180 全景图像。我想根据两个连续图像之间的比较来确定相机的旋转。对于这个项目,可以安全地假设图像中可见的所有特征都在无穷大。

我是 OpenCV 的新手(今天),肯定需要做更多的阅读。我有一个应用程序可以使用 SIFT 或 SURF 找到关键点,但我不确定如何从这里继续。

谢谢

4

1 回答 1

4

要找到图像之间的旋转,您需要知道两者的方向,因此需要知道姿势。要计算相机位姿,您需要从关键点匹配中找到单应变换。

想象一下,您知道第一帧的方向和位置,因为您可以任意决定它。您有 SIFT 提取的关键点。从这里你有接下来的步骤:

1-从下一帧中提取关键点。

2-在两帧上查找关键点的匹配。

3-使用 RANSAC 为下一步找到匹配的最佳内点/异常值集

4-对该集合使用 DLT(直接 Lienar 变换),这将使用 4 个匹配项来查找图像之间的单应性。

5-一旦你有了单应性,你就可以提取姿势和旋转。

除了来自单应性的姿势之外,您对所有步骤都有 openCV 函数。

于 2012-07-26T07:30:37.623 回答