[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.

http://youtu.be/KHJL09BTnlY

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

--patrick

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