OpenCV logo recognition

前端 未结 2 1928
Happy的楠姐
Happy的楠姐 2020-12-04 00:50

I was asked to recognize logo in an image using opencv. The lecturer told me that I don\'t have to do logo detection but logo recognition only. I am using opencv in c++. Can

2条回答
  •  轻奢々
    轻奢々 (楼主)
    2020-12-04 01:15

    It largely depends on your kind of images.

    • If your logo occupies say 90% of the image, you don't need detection, since you are probably good with color histograms.
    • If the logo is small compared to the image, you should "find" the logo, in order to focus your comparison on that and not on the background clutter.
    • There could be multiple logos on the same image?
    • The logo is always fully visible?
    • The logo is rigid? Or could be deformed? (think for example of a logo on a shirt or a small bottle)

    Assuming that you have a single complete rigid logo to find, the simplest thing to try is template matching.

    A more accurate approach is to match descriptors. You can also see a related topic on SO here

    Other more robust approaches would require to build constellations of keypoints on your reference logo, and match those constellations on the target image. See here and here for an example.

    Last, but not least, have fun on Google!

提交回复
热议问题