I am going to write a mobile application that recognizes images within a closed target group. I guess the group contains 20 to 50 comic-like images like this.

The application reacts if any of those targets are captured by the camera of the device. That's it.

There are some constraints, though.

  • It should recognize rotated targets.
  • It should recognize those with the different perspectives and levels of light.
  • If it can handle with obstruction like fingers, I'll be happy with that. (optional)
  • It should be easy to train. (optional)
  • I'd prefer inaccurate but fast solutions. (no more than 3 seconds, maybe?)

I don't have sufficient time for the task and am kind of new to image-processing, so starting with OpenCV is time-consuming, apparently.

I'm looking forward to your suggestions.

Plus, the solutions do not have to be free.


In terms of our budget, I may have to ask my non-tech boss who doesn't likely know the common price. Just give me suggestions / offers regardless of the price then he's going to pick one.

  • 2
    Training a Haar classifier for OpenCV is not actually that hard. E.g. see youtube.com/watch?v=WEzm7L5zoZE . . . the time-consuming part of the problem is sourcing enough sample images to complete the training. Sep 17, 2014 at 11:31
  • @NeilSlater, Nice video. So training itself seems to be straightforward with OpenCV. Amazing! I'll give it a try. Thank you a bunch.
    – Attacktive
    Sep 18, 2014 at 1:56

1 Answer 1


[Disclaimer: i work for Moodstocks]

You should have a look at the Moodstocks SDK. It fits most of your requirements:

  • it's robust to lightning and perspective changes,
  • it tolerates partial occlusion, for example by fingers,
  • it require no training at all: you just upload (index) an image to make it instantly recognizable,
  • it's extremely fast: the image matching is done locally, so on a modern smartphone you'll get a result in far less than 300ms.

The only issue is with the robustness to rotation: the Moodstocks SDK only supports small rotation (~30°). That being said, given the fact that you have a limited number of images, this can be easily solved in a rather brute-force fashion by indexing several instances of each image under different rotations!

Hope this helps!

  • Thank you for your suggestion, Renon. I'm having fun with the trial, it's super easy and is really capable of partially occluded ones as you stated. Great work!
    – Attacktive
    Sep 19, 2014 at 2:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.