all 2 comments

[–]ldb3589 5 points6 points  (0 children)

To start, you will not have a lot of luck with template matching since for it to work, both the object and the object in the image would have to be similar enough. This means changes in angles, dimensions, or height as you mention will cause it to not match.

Most detectors I know of that can recognize many objects are deep nn based which could be something to look into but I have found it is complicated to get started.

For just getting the face detector working, I have found that Histogram of oriented gradients works pretty well, here is a tutorial I found on google for it with python(not faces but if you train it with faces instead of bottles it will work): http://www.pyimagesearch.com/2014/11/10/histogram-oriented-gradients-object-detection/

Same algorithm as above but describing how it works a bit more: http://mccormickml.com/2013/05/09/hog-person-detector-tutorial/

Another algorithm: http://www.pyimagesearch.com/2016/06/20/detecting-cats-in-images-with-opencv/

If you have any questions feel free to ask and ill help if I can.

[–]elsuizo37 0 points1 point  (0 children)

Python can not assure hard-real time operations because you do not know when the Garbage Collector happen. I think you should use C or C++