【发布时间】:2014-06-23 23:34:56
【问题描述】:
我想找到一种算法,给定两张 2D 图像,其中一张图像是另一张图像的“偏移”,以计算最佳偏移。移位是没有旋转的简单平移。
动机是我有一系列图像,它们是大地图的一部分,我想将它们组合起来。想象一下,去谷歌地图,截图,稍微移动一下地图,然后再拍一张,等等。
现在我有一个简单的算法。我拍摄了第二张图片,并尝试在两个维度上从 -9 到 +9 的所有小变化。然后我使用一些模板匹配算法,如 OpenCV 的 matchTemplate(),并选择最好的一个。这样效率低,不支持大平移,也不支持亚像素平移。
我在 OpenCV 中找不到任何东西可以做到这一点 - 我希望至少会有上述简单算法的一些并行版本,但我找不到。任何指针将不胜感激。
【问题讨论】:
-
听起来图像不一定是完全相互移动的副本——如果是,您可以使用像 Baker-Bird 算法这样的 2D 模式匹配算法寻找完全匹配。其他人可能已经基于此算法开发了近似形式的匹配。
标签: algorithm opencv image-processing computer-vision