Detecting many instances of one pattern in a still image.

asked 2015-06-05 13:46:06 -0500

msg256 gravatar image

Hello all,

I am very new to OpenCV and I would like to explore the possibility of using it for a robotics project. I just don't know where to start. What I need is something that takes in a pattern (of a metal piece) and then finds the x,y, and theta of each of the instances of the of that pattern in the image. There can be anywhere between 0 and 100 instances of the object in the image. In the past I have tried using OpenCV with blobs and doing a lot of math in the background to try and find the convex hull and then use that to find the angle. but that proved really unreliable. Is there any pattern matching that is angle invariant (scale invariant is not necessary) and where I can easily change the train image? I have found a lot of info about using SIFT and SURF but i can't find any confirmation of them being able to do more than one object at a time. Are there any tutorials, examples or source code that focus on multiple object detection?

The background is really low noise and lighting and color are always constant.


edit retag flag offensive close merge delete



An example image would definitely help. Have you tried a simple templateMatching?

FooBar gravatar imageFooBar ( 2015-06-05 16:35:21 -0500 )edit

Template matching, texture filtering, cascade classifier detection, keypoint matchers, Bag Of Words approach, ... all possible solutions but it is quite hard for us without samples. Please add some images of what you trying to achieve.

StevenPuttemans gravatar imageStevenPuttemans ( 2015-06-07 04:21:34 -0500 )edit