registrationx(1)

NAME
registrationx - 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

LICENSE
http://www.fsf.org/licensing/licenses/gpl.html

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.