The pf_object_detector node implements the tree-structured HOG object model from http://people.cs.uchicago.edu/~pff/latent/.

The current code mostly is http://people.cs.uchicago.edu/~pff/latent/voc-release3.tgz with minor parts from v2 added (issues with blas).

The code is packaged as a node, see doxygen for the use details.

Important issues:

  1. Parameter and topic remapping doesn't work properly
  2. Models should be downloaded separately: get http://people.cs.uchicago.edu/~pff/latent/voc-release3.tgz and move models from there to the package root.

  3. Compilation doesn't work on rosmake. Go to src, run octave and type compile.
  4. Some demos require imread (octave-forge image package. The version of 1.0.8 seems fine, but the latest doesn't contain imread. It is moving to core octave, but isn't there yet).

How to run

  1. Compile mex files
  2. Get models (see above)
  3. Run pf_detect.launch (optionally set do_display=1 in the launch file)
  4. Replay a bag file
  5. Run stereo_proc (to generate /stereo/left/image).
  6. listen to /objects_2d_str

How to run fast

Change interval to 1 and/or scale to 0.5/0.25 in the pf_detect.launch.

It'll be fast, but much worse.

Detection formats

The node listens to images and produces detections in 2 forms:

people.PositionMeasurement (using x,y dimensions only), variance is reported as 1/4 width and height respectively. The header is copied from the image message.

plaintext string - Pascal VOC format (object name, x,y,w,h,confidence). (use rostopic echo to see the output).

Wiki: vision/object_detection/pf_object_detector (last edited 2009-08-14 20:53:15 by localhost)