在另一张图像上使用OpenCV查找图像坐标

8

如何在包含图像"A"的图像"B"中找到图像"A"的坐标。

我编写了一个仅检查像素值的程序,有没有人知道是否有任何库工具可以做到这一点。

3个回答

6

正如Throwback1986所建议的,您可能想使用matchTemplate这里是我的一个答案,展示了如何从虚拟航天器中检测太阳。这里是OpenCV关于使用matchTemplate的最新教程。现在,对于使用matchTemplate方法有一些注意事项。如果图像"A"在图像"B"中可以处于任意姿态(例如,缩放、旋转、透视等),那么matchTemplate的效果就不会很好。如果情况确实如此,您将需要按照Adrian Popovici的建议使用特征检测方法。


1
谢谢,我会查看链接和教程。非常感谢您的帮助。您的答案对我来说非常有帮助,因此我接受了您的答案。感谢您花时间回答我的问题。 - haykart

5

谢谢您,我会查看教程的。感谢您抽出时间来回答我的问题。 - haykart

0

你可以考虑使用模板匹配,就像这个tutorial中所描述的那样。

一种更加暴力的方法是将图像A逐步“滑动”到图像B上,寻找最小差异点。(请注意,这假设图像A是图像B的某个相对较小的子集。)您可以使用cvNorm函数计算L1范数,它等同于计算平方差和(SSD)。使用CV_L1选项。这里是一个链接,描述了在图像相关性中应用SSD的应用。


谢谢,我会检查链接,你的回答帮了我很多。感谢你的帮助,我非常感激。谢谢你花时间回答我的问题。 - haykart

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接