Search code examples
machine-learningimage-recognition

Recognize Logo in a full image


First, you need to know that I'm a beginner in this subject. Initially, I'm an Embedded System Developpers but I never worked with image recognition.

Let me expose my main goal:

  • I would like to create my own database of Logos and be able to recognize them in a larger image. Typical application would be, for example, to make a database of pepsi logos and coca-cola logos and when I take a photo of a bottle of Soda, it tells me if it one of them or an another.

So, here is my problem:

  • I first wanted to use the Auto ML Kit of Google. I gave him my databases so it could train itself on it. My first attempt was to take photos of bottle entirely and then compare. It was ok but not too efficient. I then tried to give him only logos but after training, it couldnt recognize anything in the whole image of a bottle.

I think I didn't give enough images in the first case. But I'd prefer to use the second case (by giving only logo) so that the machine would search something similar in the image.

Finally, my questions:

  • If you've worked with ML Kit from Google, were you able to train a model by giving images that should be recognized in a larger image? If yes, do you have any hints to give me?
  • Do you know reliable software that could help me to perform tests of this kind? I thought about Azure Machine Learning Studio from Microsoft (since I develop on Visual Studio).

In a first time, I'd like to code as few as I can just for testing. Maybe later I could try to code my own Machine Learning System but I think it's a big challenge. I also thought that I would need to split my image in smaller image and then send each of this images into the Machine but it would be time consuming and I need a fast reaction (like < 2 seconds).

Thanks in advance for your answer. I don't need complete answer with full tutorial (Stack Overflow is not intended for that anyway ^^) but just some advices would already be good.

Have a good day!


Solution

  • Azure’s Custom Vision is great for this: https://www.customvision.ai

    Let’s say you want to detect a pepsi logo. Upload 70 images of products with the logo on them. Use Custom Vision to draw a box around the logo for each photo. Click “train”, and you get a tensorflow model with code.

    Look up any tutorial for it, it’s pretty incredible and really easy to use.