Track people coordinates in room using webcamera
Hello,
I'm investigating following task:
- I have a "wall" built from set of TV displays
- These displays show content for users
Idea is to put webcam near wall, and for each person provide pair of coordinates: x (across wall) & z (distance from wall), and if possible y (height). Using this coordinates show content (move content with person).
Also I need to track events when new person appears/disappears from region. I do not need to recognize them properly (say "this is Tom, this is Jack"), but I need to distinquish them when they are in view of camera (some kind of ID).
Is it possible to solve it with OpenCV?
It will be possible to build a proof of concept with OpenCV, but it all depends where your application will be used if you will need more advanced people detectors in the real application. HOG and SVM can get you pretty far for upfront pedestrian detection and works pretty good also. You can indeed give each detection an ID coupled to a tracker to know if a new user is entering the field of view!
If your setup works indoors, what you need is user segmentation using 3d sensor (like microsoft kinect). Check this vid of an example (first one i found on youtube, I've seen algorithms working better)
https://www.youtube.com/watch?v=EGsac...
I say indoors because these kind of sensors do not work well under direct sunlight due to heavy infrared light exposure
If you really have to use a webcam, then I'd go for Steven's approach.
Thanks Steven & Pedro
Do I need GPU/OpenCL/CUDA for HOG & SVM? Or I can start development & tests on CPU?
CPU is perfectly fine. I know documentation on HOG is poor on the CPU side, but all the GPU functions have their CPU counterpart. It is a big gap in the documentation that needs to be solved.