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.