OpenCV logo recognition

I was asked to recognize the logo on the image using opencv. The lecturer told me that I did not need to make a logo definition, but only logo recognition. I am using opencv in C ++. Can I find out the easiest way to do this?

Ps: new to computer vision.

+2
c ++ opencv computer-vision image-recognition
source share
2 answers

It pretty much depends on your images.

  • If your logo occupies 90% of the image, you do not need detection, as you are probably good at color histograms.
  • If the logo is small compared to the image, you should β€œfind” the logo to focus your comparison on this, not background clutter.
  • Can there be several logos on one image?
  • Is the logo always fully visible?
  • Is the logo tough? Or can it be deformed? (think, for example, of a logo on a shirt or a small bottle).

Assuming you have one complete hard logo, it’s easiest to try matching the template .

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

Other more robust approaches will require creating constellations of key points on your control logo and matching those constellations in the target image. See here and here for an example.

Last but not least, enjoy Google!

+6
source share

I agree with @Miki, you need to do pattern matching, I recommend that you use the sum of the square differences and use only a rigid transformation, you can find a lot of information. The latter is one of the best books that I blush, easy to understand, and it performs the bulk of the equations step by step.

0
source share

All Articles