Ask Your Question

Haar cascade classifier: types of object detection possible

asked 2015-02-16 03:50:13 -0600

pulp_fiction gravatar image

I am a complete beginner to Computer Vision and object detection. I wanted to do a project on object detection and after going through Internet for a whole day, I found about OpenCV object detection API which is Haar Cascade classifier and many detailed walkthroughs to create your own trained classfier.

Now, at the end of the day, I want to ask the following:
When, you say "Object detection using Haar Cascade Classfier", do you mean that, it can be used to detect for example, all the cats of the world(of a single variety) or all the bananas of the world. I mean, can it detect a class of species or you are allowed to choose one object like your personal pen and that pen only and take 1000 pics of that pen in different orientations and finally train the classifier using these and be able to tell that its the pen.

In context to above, does IMAGENET challenge involves detecting "A class of any chosen object like Car" which will include all kinds of car that you have got?

edit retag flag offensive close merge delete


I have 2 more questions, See Steven's comments

pulp_fiction gravatar imagepulp_fiction ( 2015-02-16 04:16:16 -0600 )edit

Seriously,I want this site to be included at StackExchange!

pulp_fiction gravatar imagepulp_fiction ( 2015-02-16 04:19:15 -0600 )edit

1 answer

Sort by ยป oldest newest most voted

answered 2015-02-16 03:57:43 -0600

Welcome to the world of OpenCV and object detection using cascade classifiers!

Some insights

  • List item
  • Start by completely ignoring the haartraining interface. We know there are TONS of tutorials using it out there, but it is outdated! Rather use the updated C++ interface called traincascade.
  • Yes it focusses on a complete class of objects, but it all depends on how you define that class based on its training samples. If you supply only pictures of 1 cat species, then it will only detect and generalize well over new samples of that species. But if you succeed in supplying a lot of different cat species, then yes, it will be able to detect and generalize over them all looking for more general cat like properties.
  • Keep in mind that a cascade classifier is NOT rotation invariant. So stick with samples to a single rotation, then rotate your image for detecting on multi rotations. It is multiscale however.
  • Yes imageNet contains large databases of classes like cars!
edit flag offensive delete link more


One more thing, is the traincascade algorithm better than those used in IMAGENET challenges.Better means, does it lie in somewhat top choices for object detection algorithms?

pulp_fiction gravatar imagepulp_fiction ( 2015-02-16 04:02:14 -0600 )edit

And to train 2 different variants of a say pen, do I need different 2 different databases or rather one database with images of both the pens(numerous images) will do? Pardon my naiveness, you know its kinda like my first day in this field

pulp_fiction gravatar imagepulp_fiction ( 2015-02-16 04:04:22 -0600 )edit

No, cascade classifiers are far from the state of the art in object detection algorithms, but it has a good support, it is stable and implemented in packages as OpenCV. More recent techniques are ACF or Deep Learning techniques. But those are very complex!

You would need multiple pen images in 1 database, train a pen model and if you then want to differentiate between the two apply a classification/recognition step after the detection phase!

StevenPuttemans gravatar imageStevenPuttemans ( 2015-02-16 04:27:55 -0600 )edit

Question Tools

1 follower


Asked: 2015-02-16 03:50:13 -0600

Seen: 2,573 times

Last updated: Feb 16 '15