| -*- Mode: Fundamental;  -*-
| File: README
| Author: Sandy Wells (sw@ai.mit.edu)
| Copyright (C) MIT Artificial Intelligence Laboratory, 1995, 1996
| Please don't distribute the code without asking me.
|*---------------------------------------------------------------------
|* FUNCTION:
|*
|* This body of code has been built from the ground up to implement
|* alignment by maximization of mutual information in c++.  The
|* first applications have been 3D medical volume registration.  
|*
|* HISTORY:
|**  Feb 10, 1997 (sw) : reorganized code somewhat:
|**        split out modeling stuff from im-disp
|**        cleaned up 2-3d MI reg code
|**        this version did the "MURI demo", somewhat real time
|**        six DOF car tracking	
|**  Oct  2 21:52 1996 (sw): revision 2.3:
|**                          Fixed usage checking bug in programs
|**                          that use "getopt".
|**                          Fixed some usage printing.
|**	                     Changed names of converters that convert
|**                          from signa and genesis volumes.
|**                          (used to be "ge-to-vf-xx", now "signa-to.." 
|**                           and genesis-to..")
|**                          Fixed constant bug in definition of Gaussian
|**  Apr  5 10:31 1996 (sw): started reorganization for "version 2.0"
|* Created: Fri Jun  9 11:44:53 1995 (sw)
|*---------------------------------------------------------------------

This file summarizes the "mvis" code.

The contents are:

Configuration
	this file controls aspects of conditional
	compilation that are platform and site dependent.
	It is included in all makefiles.
	

Configuration.*
	These are sample Configuration files from several
	installations.  When I install the system, I
	make Configuration a symbolic link to one of the
	specific configuration files.	

Subdirectories:

etc/
	collects random little things of general utility.

include/ 
	has symbolic links to all of the significant
	include files

vec-mat/
	basic facilites for matrices, vectors,
	rotations, poses, and the like.

	nr/
		snippets of the Numerical Recipes in C code

im-disp/
	facilities for the representation and IO
	of images and volumes
	and some basic display oriented facilities

mod-3d/
	This has facilities related to the manipulation
	and rendering of 3D models, including software
	and OPEN-GL rendering capabilities

video/
	This implements an image stream abstraction that may
	originate in a video camera, or in a static image.

reg/
	some implementations of alignment by maximization
	of mutual information.  

bin/
	binaries in machine specific subdirectories

data/
	some test data (symbolic links?)

--------------

Code subdirectories have README files.  Some of those
have sample invocations at the bottom of the file.

The code requires g++ and gnu make to build.  It 
currently (Jun  4, 1996) compiles on some version
solaris (BWH), sunos (MIT), iris4d (MIT), linux (sw at home),
and hpux (sw@erlangen)

The makefiles currently support the targets "vision", which
has computer vision related registration stuff, "medical" which
has medical volume registration facilities, and "test" which
is code testing scaffolding.  The target "install" puts the
binaries and libraries in a subdirectory of bin/ .

The makefiles also support a target called "depend" that 
uses the compiler to automatically generate a list of file
dependencies.  If new files are added, or if there are
site-change related makefile failures, it will be necessary
to run make depend.

You will probably want to set your PATH envirionmant variable
to contain the apropriate subdirectory of bin/
You will also probably need to point LD_LIBRARY_PATH there
as well, as some needed dynamic libraries will be installed
there.

