OpenCV标识识别

时间:2015-07-12 16:16:00

标签: c++ opencv computer-vision image-recognition

我被要求使用opencv识别图像中的徽标。讲师告诉我,我不需要进行徽标检测,只能识别徽标。我在c ++中使用opencv。我能知道最简单的方法吗?

Ps:计算机视觉中的新手。

2 个答案:

答案 0 :(得分:6)

这在很大程度上取决于你的图像类型。

  • 如果您的徽标占据图像的90%,则不需要检测,因为您可能对颜色直方图很好。
  • 如果徽标与图片相比较小,您应该"找到"徽标,以便将您的比较集中在那而不是背景杂乱。
  • 同一张图片上可能有多个徽标?
  • 徽标总是完全可见?
  • 徽标是刚性的?或者可能会变形? (想想衬衫或小瓶子上的标志)

假设您要找到一个完整的刚性徽标,最简单的方法是template matching

更准确的方法是match descriptors。 您还可以在SO here

上查看相关主题

其他更强大的方法需要在您的参考徽标上建立关键点星座,并在目标图像上匹配这些星座。有关示例,请参阅herehere

最后,但并非最不重要的是,在Google上玩得开心!

答案 1 :(得分:0)

我同意@Miki,你需要做模板匹配,我的推荐是使用方差的和,只使用刚性变换,你可以找到很多信息here。最后一本是最好的书之一,我很容易理解,并且它逐步掌握了方程式的主要部分。