
This directory contains some implementations of alignment by maximization
of mutual information.  


The current programs are:

reg-iccv
	this one is 2d-2d affine and follows the iccv paper closely (entropy only)
	this uses the "two sample" style.

	the rest use the "single sample" style.	

reg-2d
	this one is 2d-2d affine, (entropy only)

reg-3d	
	this one is 3d-3d rigid, (entropy only)

reg-3d-i
	this one is 3d-3d rigid, mutual info

------
2D-3D stuff:
	
these programs can use either "pn-list" style models, rendered in
software, or triangle models, rendered by OPEN GL.  

The image source can either be a video camera, (if supported in
the configuration) or a static image.  

when using pn-list models, model albedo information may
optionally be used, via the "albedo hack"


mi-2d-3d.h, .c
	this implements an evaluator for 2d-3d mutual information
	that is based on histograms.  It also can estimate the 
	derivative of MI wrt pose parameters, using the 
	"differentiated histogram" hack.  Can also handle
	albedo, using the "albedo hack"

	see mi-2d-3d.h for an explanation of the
	operating parameters.

reg-2d-3d-hi
	 2d to 3d surface model, rigid, differential histogram based, mutual info

probe-2d-3d-hi	
	this does graphical plotting of the MI objective function and its
	components around a specified nominal pose.  

		
--
These are considered obsolete:

reg-2d-3d-i
	2d image to 3d surface model, rigid, mutual info

reg-2d-3d-h
	an initial 2d to 3d surface model, rigid, differential histogram based, (entropy only)


--------------
Sample invocations:

reg-iccv
reg-2d initial-2d
reg-3d initial-3d
reg-3d-i initial-3d-i
reg-2d-3d-i initial-2d-3d-i
reg-2d-3d-i initial-ron
reg-2d-3d-hi initial-ron-hi
