opencv在另一个图像上查找图像坐标

Posted

技术标签:

【中文标题】opencv在另一个图像上查找图像坐标【英文标题】:opencv finding image cordinates on another image 【发布时间】:2012-01-15 00:41:59 【问题描述】:

如何在包含图像“A”的图像“B”上找到图像“A”的坐标。

我写了这个程序,它只检查像素值,有人知道有没有库工具可以做到这一点。

【问题讨论】:

【参考方案1】:

正如 Throwback1986 所建议的,您可能希望使用 matchTemplate。 Here 是我的答案之一,展示了如何从虚拟航天器中检测太阳。 Here 是来自 OpenCV 的关于使用 matchTemplate 的较新教程。现在,使用matchTemplate 方法有一些注意事项。如果图像“A”可以在图像“B”中处于任意姿势(例如,缩放、旋转、透视等的变化),那么matchTemplate 不会很好地工作。如果发生这种情况,您将需要使用 Adrian Popovici 建议的特征检测路线。

【讨论】:

谢谢,我会检查链接和教程。我很感谢你的帮助。你的回答对我最有帮助,因为我接受你的回答。感谢您花时间回答我的问题。【参考方案2】:

您应该查看此链接中的最后 3 个教程: http://opencv.itseez.com/doc/tutorials/features2d/table_of_content_features2d/table_of_content_features2d.html

我不认为检查像素是一个好方法。

【讨论】:

谢谢你我会检查教程,谢谢你花时间回答我的问题。【参考方案3】:

您可能会考虑类似tutorial 中描述的模板匹配。

更暴力的方法是在图像 B 上“滑动”图像 A 以寻找最小差异点。 (请注意,这假设图像 A 是图像 B 的某个相当小的子集。)您可以使用 cvNorm 函数来计算 L1 norm,这相当于计算平方差和 (SSD)。使用 CV_L1 选项。 Here是描述SSD在图像关联中的应用的链接。

【讨论】:

谢谢你我会检查链接,你的回答帮助了我。我很感谢你的帮助。感谢您花时间回答我的问题。

以上是关于opencv在另一个图像上查找图像坐标的主要内容,如果未能解决你的问题,请参考以下文章

在OpenCV打开的图像上,已知图像上的某点坐标,如何获取该点像素值

openCV进阶之二:自动校准扫描图像生成鸟瞰图

Opencv/c++ - 在线程中录制实时视频,在另一个线程中处理图像?

在Opencv中校准后查找点世界坐标

OpenCV(C ++) - 根据已知的3D对象和摄像机位置计算图像的2D坐标

OpenCV3图像操作