[ros-users] A better face tracker using GFTT and TLD?

Patrick Goebel patrick at pirobot.org
Fri May 27 21:52:44 UTC 2011

Hello ROS fans,

I've been working on a ROS package to augment the OpenCV Haar face
detector by using the initial detection window to extract Good Features
To Track, then turning off the detector and tracking the features using
CalcOpticalFlowPyrLK.  This seems to work surprisingly well and is much
faster than simply reapplying the Haar detector on every frame.  I have
few questions:

* Has anyone already done this (in a ROS-friendly way) so I don't
continue to reinvent the wheel?  I have looked at the face_detector
package at http://www.ros.org/wiki/face_detector which appears to
improve the initial face detection using depth information but does not
appear to do feature extraction and tracking.

* Has anyone been working on the TLD tracking algorithm (a.k.a
"Predator") which would allow the tracked features to be learned better
and better on each frame?  (See
http://info.ee.surrey.ac.uk/Personal/Z.Kalal/tld.html).  Zdenek Kalal
released the first version of his TLD algorithm as Matlab source but I'm
wondering if someone has already made progress on a C++ or even a Python
port.  (So far I haven't noticed any progress on the TLD forum itself...).

* It seems the only part I need to add to what I've already done is the
learning part which I understand uses random forests to build an
evolving classifier from the features extracted from the patch being
tracked.  So while I brush up on decision tree classifiers, do any
existing ROS projects already use these so I could see some sample code?

BTW, while I have framed this in terms of face detection, it actually
works on any arbitrarily chosen textured patch of a video stream.



More information about the ros-users mailing list