registrationx(1) Rigid and affine registration

SYNOPSIS

registrationx ReferenceImage FloatingImage

DESCRIPTION

This program performs rigid and affine image registration using multi-resolution optimization of voxel-based image similarity measures.

OPTIONS

Global Toolkit Options (these are shared by all CMTK tools)

--help
Write list of basic command line options to standard output.
--help-all
Write complete list of basic and advanced command line options to standard output.
--wiki
Write list of command line options to standard output in MediaWiki markup.
--man
Write man page source in 'nroff' markup to standard output.
--xml
Write command line syntax specification in XML markup (for Slicer integration).
--version
Write toolkit version to standard output.
--echo
Write the current command line to standard output.
--verbose-level <integer>
Set verbosity level.
--verbose, -v
Increment verbosity level by 1 (deprecated; supported for backward compatibility).
--threads <integer>
Set maximum number of parallel threads (for POSIX threads and OpenMP).

Automation Options

--auto-multi-levels <integer>
Automatic optimization and resolution parameter generation for <n> levels [Default: 0]

Optimization settings

--max-stepsize <double>
Maximum optimizer step size, which determines search space exploration. [Default: 8]
--min-stepsize <double>
Minimum optimizer step size, which determines precision. [Default: 0.1]
--stepfactor <double>
Factor for search step size reduction. Must be > 0.0 and < 1.0 [Default: 0.5]
--delta-f-threshold <double>
Optional threshold to terminate optimization (level) if relative change of target function drops below this value. [Default: 0]

Image resolution parameters

--sampling <double>, -s <double>
Image sampling (finest resampled image resolution) [Default: 1]
--coarsest <double>
Upper limit for image sampling in multiresolution hierarchy [Default: -1]
--omit-original-data
Do not use original data in full resolution, omit final stage in multiresolution hierarchy, thus reducing computation time.

Transformation parameters

--dofs <integer>[,<integer>,...]
Add number of degrees of freedom. This can be 3 (translation), 6 (rigid: translation and rotation), 7 (rigid plus global scale), 9 (rigid plus anisotropic scales), 12 (rigid plus scales plus shears), 3003 (translation plus shear), 3033 (translation, shear, and scale) or 3303 (rigid plus shears, but no scale). This option can be repeated, in which case DOFs are used for successive optimization runs in the order that they appear.
--dofs-final <integer>[,<integer>,...]
Add number of degrees of freedom for final level only [can be repeated]
--symmetric
Use symmetric registration functional to simultaneously estimate forward and inverse transformation. This increases ragistration time substantially but produces a result that is invariant under exchange of fixed and moving image. It may also be more robust and/or more accurate than forward-only registration.
--restrict-in-plane
Restrict the affine transformation to be in-plane for planes perpendicular to a given coordinate axis. Supported values: "xy", "xz", "yz", "none", where the default is "none", or use one of the following:
--xy
Transformation restricted to in-plane for 'xy' plane (perpendicular to z coordinate axis).
--xz
Transformation restricted to in-plane for 'xz' plane (perpendicular to y coordinate axis).
--yz
Transformation restricted to in-plane for 'yz' plane (perpendicular to x coordinate axis).
--none
Full 3D affine transformation is computed. [This is the default]
--init
Select initializer for the affine trasnformation. Supported values: "none", "fov", "com", "pax", "physical", where the default is "fov", or use one of the following:
--none
Use input transformation, or identity transformation if none was provided.
--fov
Align centers of field of view (or crop regions) using a translation. [This is the default]
--com
Align centers of mass using a translation.
--pax
Align images by rotation using principal axes and translation using centers of mass.
--physical
Align images by rotation using direction vectors stored in input images and translation using image origins.
--initial <transformation-path>
Initialize transformation from given path [Default: NONE]
--initial-is-inverse
Invert initial transformation before initializing registration

Image data

--registration-metric
Registration metric for motion estimation by image-to-image registration. Supported values: "nmi", "mi", "cr", "rms", "msd", "ncc", where the default is "nmi", or use one of the following:
--nmi
Normalized Mutual Information metric [This is the default]
--mi
Standard Mutual Information metric
--cr
Correlation Ratio metric
--rms
Root of Mean Squaresa metric (this is the square root of MSD)
--msd
Mean Squared Difference metric
--ncc
Normalized Cross Correlation metric

Floating Image Interpolation Options

--interpolation
Interpolation method for floating image sampling: Supported values: "nearest-neighbor", "linear", "cubic", "cosine-sinc", "partial-volume", "automatic", where the default is "automatic", or use one of the following:
--nearest-neighbor
Nearest neighbor interpolation (for intensity and label data)
--linear
Trilinear interpolation
--cubic
Tricubic interpolation
--cosine-sinc
Cosine-windowed sinc interpolation (most accurate but slowest)
--partial-volume
Partial volume interpolation (for label data)
--automatic
Select interpolation automatically based on data type: linear for grey-level data, nearest neighbor for label data. [This is the default]
--match-histograms
Match floating image histogram to reference image histogram.
--force-outside-value <double>
Force values outside field of view to this value rather than drop incomplete pixel pairs [Default: disabled]

Reference Image Preprocessing

--class-ref <string>
Data class: grey (default) or label [Default: NONE]
--pad-ref <double>
Padding value [Default: disabled]
--thresh-min-ref <double>
Minimum value truncation threshold [Default: disabled]
--thresh-max-ref <double>
Maximum value truncation threshold [Default: disabled]
--prune-histogram-ref <integer>
Number of bins for histogram-based pruning [Default: disabled]
--histogram-equalization-ref
Apply histogram equalization
--median-filter-radius-ref <integer>
Apply median filter with given radius [Default: 0]
--sobel-filter-ref
Apply Sobel edge detection filter
--crop-index-ref <string>
Cropping region in pixel index coordinates [parsed as %d,%d,%d,%d,%d,%d for i0,j0,k0,i1,j1,k1] [Default: NONE]
--crop-world-ref <string>
Cropping region in world coordinates [parsed as %f,%f,%f,%f,%f,%f for x0,y0,z0,x1,y1,z1] [Default: NONE]
--crop-thresh-ref <double>
Automatic cropping based on threshold [Default: disabled]

Floating Image Preprocessing

--class-flt <string>
Data class: grey (default) or label [Default: NONE]
--pad-flt <double>
Padding value [Default: disabled]
--thresh-min-flt <double>
Minimum value truncation threshold [Default: disabled]
--thresh-max-flt <double>
Maximum value truncation threshold [Default: disabled]
--prune-histogram-flt <integer>
Number of bins for histogram-based pruning [Default: disabled]
--histogram-equalization-flt
Apply histogram equalization
--median-filter-radius-flt <integer>
Apply median filter with given radius [Default: 0]
--sobel-filter-flt
Apply Sobel edge detection filter
--crop-index-flt <string>
Cropping region in pixel index coordinates [parsed as %d,%d,%d,%d,%d,%d for i0,j0,k0,i1,j1,k1] [Default: NONE]
--crop-world-flt <string>
Cropping region in world coordinates [parsed as %f,%f,%f,%f,%f,%f for x0,y0,z0,x1,y1,z1] [Default: NONE]
--crop-thresh-flt <double>
Automatic cropping based on threshold [Default: disabled]

Output parameters

--output <string>, -o <string>
Output path for final transformation [Default: NONE]
--write-matrix <string>
Output path for final transformation in matrix format [Default: NONE]
--write-parameters <string>
Output path for final transformation in plain parameter list format [Default: NONE]
--write-protocol <string>
Optimization protocol output file name [Default: NONE]
--write-time <string>
Computation time statistics output file name [Default: NONE]

Import Results into Slicer

--write-itk <transformation-path>
Output path for final transformation in ITK format [Default: NONE]
--write-reformatted <image-path>
Write reformatted floating image. [Default: NONE]

Image/Transformation Database

--db <string>
Path to image/transformation database that should be updated with the new registration and/or reformatted image. [Default: NONE]

AUTHORS

Torsten Rohlfing, with contributions from Michael P. Hasak, Greg Jefferis, Calvin R. Maurer, Daniel B. Russakoff, and Yaroslav Halchenko

BUGS

Report bugs at http://nitrc.org/projects/cmtk/

ACKNOWLEDGMENTS

CMTK is developed with support from the NIAAA under Grant AA021697, National Consortium on Alcohol and Neurodevelopment in Adolescence (N-CANDA): Data Integration Component. From April 2009 through September 2011, CMTK development and maintenance was supported by the NIBIB under Grant EB008381.