HUMIM Tracker C++ API

The HUMIM project provides a C++ framework for developing Bayesian trackers for human pose estimation. The code is designed to be flexible in the sense that it is easy to replace likelihoods and priors. An overview of the design is given in the technical report [ PDF ].

To compile the software you will need to following support libraries

With these the software should compile out of the box using CMake.

When compiled, you will have the following executables

To run a program you need a configuration file that sets parameters, data paths, output paths, etc. The name of this file should be given as first input to all programs. The tracking programs also support an optional second argument --playback that replays previous tracking data rather than perform the tracking again. An example configuration file can be seen here

observation_type          point_cloud
state_type                projection_state
data_template             Movies3D/triangles/hands2_060410/image_%.3d.points
left_image_template       Movies3D/triangles/hands2_060410/image_2_%.3d.png
background_image          Movies3D/triangles/hands2_060410/Background_2.png
intrinsic_matrix          838.08544922 838.90100098 496.17398071 392.37945557
data_start_idx            1
output_directory          output
num_particles             150
initial_pose              data/hands2_060410_1.pose
pred_noise                0.15
external_view             data/hands2_060410.view
bone_appearance           data/soren_thin_appearance_milimeters.txt
skeleton_xsf              data/soren_milimeters.xsf
measure_threshold         2
measure_variance          0.1
measure_downsampling      10
mocap_filename            Movies3D/triangles/hands2_060410/hands2_060410.mocap 

In general you should not expect this code to be something you just run and get a result. It is designed for development of new tracking techniques and not for developing applications of tracking. So some hacking is to be expected to get you what you want.