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

Patrick Goebel patrick at pirobot.org
Tue Jun 7 01:38:18 UTC 2011

In case anyone is trying out the pi_face_tracker package, I just fixed 
two bugs in the trunk (now revision 443--just do an "svn update" in the 
pi_vision directory).  The first bug caused the add_features() function 
not to add any features(!)  And the second bug caused the ROI publisher 
to publish occasional RegionOfInterest messages that were outside the 
camera frame.

In the meantime, here is a short video combining a TurtleBot with 
Dynamixel servos and the pi_face_tracker package under highly variable 
lighting conditions to demonstrate the robustness of OpenCVs Good 
Features to Track and the LK optical flow tracker.


(Youtube seems rather slow to load videos as I write this...)


On 05/27/2011 02:52 PM, Patrick Goebel wrote:
> 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.
> Thanks!
> patrick
> http://www.pirobot.org
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users

More information about the ros-users mailing list