我有n帧360x180全景图像。我想根据两个连续图像之间的比较来确定相机的旋转。对于这个项目,可以安全地假设图像中可见的所有特征都处于无穷远状态。
我是(今天)对OpenCV的新人,肯定需要做更多的阅读。我有一个应用程序,可以使用SIFT或SURF找到KeyPoints,但不确定如何从这里继续。
由于
答案 0 :(得分:4)
要查找图像之间的旋转,您需要知道两者的方向,因此姿势。要计算相机姿势,您需要从关键点匹配中找到单应性转换。
想象一下,你知道第一帧和位置的方向,因为你是任意决定的。您拥有SIFT提取的关键点。从这里开始您的下一步:
1 - 从下一帧中提取关键点。
2 - 查找两个关键点的匹配项。
3 - 使用RANSAC查找下一步匹配的最佳内点/异常值集
4 - 对该套使用DLT(Direct Lienar Transform),这将使用4个匹配来查找图像之间的单应性。
5 - 一旦你有单应性,你就可以提取姿势和旋转。
除pose from homography以外的所有步骤都有openCV函数。