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