计算一对图像之间的几何变换

时间:2016-03-11 11:15:44

标签: c++ opencv transformation

我有两张带有小变换的照片,因为第二张照片后来被1 second捕获了。

现在我正在尝试计算第二张图片的转换,使用第一张图片作为参考。首先,我计算了边缘图像。但是我现在怎么比较呢?

1 个答案:

答案 0 :(得分:0)

这称为图像注册,对齐或剪切问题。它是计算机视觉领域的一个广泛研究领域。如果OpenCV 3可用,您可以直接使用准备好的功能来注册两个图像http://docs.opencv.org/3.0-beta/modules/reg/doc/registration.html

如果没有OpenCV 3,你应该自己制作。这不是一件容易的事。由于您的图像非常接近,因此您可以按照以下抽象步骤进行操作:

  1. 使用GFTT检测第一张图片中的兴趣点。
  2. 使用KLT在另一张图片中找到相应的对。
  3. 在匹配的巴黎上使用RANSAC申请cv::findHomography
  4. 使用生成的单应性,您可以将其中一个包装到另一个。
  5. P.S。如果您需要更高的准确性或更好的性能,您应该尝试深入研究一些学术论文并找到最新技术,并尝试使用基于GPU的技术来实现它。