模板匹配?对象识别和功能匹配或解决方案是什么?

时间:2014-08-18 18:48:39

标签: opencv image-processing object-recognition template-matching

问题:我有一张物体的照片(制作的部件如下图所示),使用我的Andoird手机相机我想验证相机预览中的物体是否与模板匹配或不。 (换句话说,它是否与模板相同)

  • 我可以让用户移动相机,以便在相机预览中将相似的模板视图作为模板,但是会有不同的噪音水平和/或照明,可能会有不同的背景。

问题:您建议我使用什么来解决此问题?我在考虑Canny边缘提取,然后将相机框架与模板中的canny边缘提取相匹配?这是一个好主意吗?如果是,请告诉我如何实施?任何资源?样品? (我可以进行Canny边缘提取,但无法找到进行匹配的方法)

如果不是一个好主意那么你推荐什么?

我尝试过的事情:

  1. 功能提取和匹配:我使用OpenCV的几个不同的提取器和匹配器实现,我的应用程序正在工作并绘制检测到的特征点和匹配等。但是作为图像处理的初学者我无法理解结果,也怎么知道什么是匹配。任何想法,帮助,良好的资源?
  2. 模板匹配:我使用的是OpenCV模板匹配,但性能非常糟糕,我认为这不是解决方案。
  3. sample template photo

2 个答案:

答案 0 :(得分:2)

我在测试图像上尝试用手机进行物体识别,结果是积极的。

使用的探测器:ORB(二进制探测器)。

使用的描述符:ORB。

匹配技术:强力匹配。

图像尺寸640x480。

我能够检测到大约500个特征点(关键点的数量足够多,但是当你有更多具有相似外观对象的图像时,它可能会产生错误匹配。你需要优化匹配以避免错误匹配)。 enter image description here

两种不同尺度的物体识别结果。 enter image description here enter image description here

关于您在理解对象识别方面遇到困难。究竟是什么让你不明白(特定主题)。 我建议你通过这两本书

  1. 由Adrian Kaehler,Gary Bradski学习OpenCV
  2. OpenCV 2计算机视觉应用程序设计手册,作者:RobertLaganière(第8章及第9章)。
  3. 干杯!

答案 1 :(得分:0)

据我所知,精确边缘检测可能不是最佳解决方案。根据我对测试图像的一些基本预处理后找到它的筛选功能并将其与模板的筛选功能进行比较。筛选真正多才多艺也应该在这里工作。

你也可以尝试opensurf功能,他们比筛选快,但我没有机会与他们一起工作,以便能够评论其准确性