---
name: "cmtk-warp"
section: "1"
platform: "linux"
package: "cmtk"
version: "3.3.1p2+dfsg-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/cmtk-warp"
---

# cmtk-warp(1)

B-spline nonrigid registration

## NAME

warp - B-spline nonrigid registration

## SYNOPSIS

**warp** ReferenceImage FloatingImage InitialXform

## DESCRIPTION

This program performs nonrigid image registration using multi-resolution optimization of voxel-based image similarity measures and a multi-resolution B-spline transformation model.

## 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).

### Transformation import/export

- **--initial** *\<transformation-path\>*

  Initialize transformation from given path **\[Default: NONE\]**

- **--write-itk-xform** *\<transformation-path\>*

  Output path for final transformation in ITK format **\[Default: NONE\]**

- **--write-reformatted** *\<image-path\>*

  Write reformatted floating image. **\[Default: NONE\]**

### Transformation parameters

- **--grid-spacing** *\<double\>*, **-g** *\<double\>*

  Control point grid spacing **\[Default: 15\]**

- **--exact-spacing**

  Use exact control point spacing; do not modify spacing to fit reference image bounding box

- **--refine** *\<integer\>*

  Number of refinements (control point grid resolution levels) **\[Default: 0\]**

- **--delay-refine**

  Delay control point grid refinement; first switch to next higher image resolution

- **--ignore-edge** *\<integer\>*

  Ignore n control point layers along each image face **\[Default: 0\]**

- **--restrict** *\<string\>*

  Restrict deformation to coordinate dimension(s) \[one or more of 'x','y','z'\] **\[Default: NONE\]**

- **--no-adaptive-fix**

  Disable adaptive fixing of control points; optimize all deformation parameters

- **--adaptive-fix-thresh** *\<float\>*

  Threshold factor for entropy criterion to fix local control points **\[Default: 0.5\]**

- **--accurate**

  Accurate computation mode: may give slightly better results after substantially longer computation **\[This is the default\]**

- **--fast**

  Fast computation mode: may give slightly worse results than accurate mode, but saves substantial CPU time

- **--switch**, **-S**

  Switch reference and floating image

### Regularization parameters

- **--jacobian-weight** *\<float\>*

  Weight for Jacobian-based local volume preservation constraint **\[Default: 0\]**

- **--energy-weight** *\<float\>*

  Weight for grid bending energy constraint **\[Default: 0\]**

- **--rigidity-weight** *\<float\>*

  Weight for local rigidity constraint **\[Default: 0\]**

- **--ic-weight** *\<float\>*

  Weight for inverse consistency constraint **\[Default: 0\]**

- **--relax** *\<float\>*

  Weight relaxation factor for alternating under-constrained iterations **\[Default: -1\]**

- **--relax-to-unfold**

  Before each resolution level, regularize negative-Jacobian areas of the deformation to unfold them.

### Optimization parameters

- **--exploration** *\<double\>*, **-e** *\<double\>*

  Search space exploration (initial step size) **\[Default: -1\]**

- **--accuracy** *\<double\>*, **-a** *\<double\>*

  Search accuracy (initial step size) **\[Default: -1\]**

- **--stepfactor** *\<double\>*, **-f** *\<double\>*

  Factor for search step size reduction. Must be \> 0.0 and \< 1.0 \[default: 0.5\] **\[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\]**

- **--no-maxnorm**

  Use Euclid norm for gradient normalication in optimization, rather than maximum norm

### 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 for final registration stage.

### Image data

- **--registration-metric**

  Registration metric for motion estimation by image-to-image registration. Supported values: "nmi", "mi", "cr", "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

  - **--msd**

    Mean Squared Difference metric

  - **--ncc**

    Normalized Cross Correlation metric

- **--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

- **--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\]**

### 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

- **--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\]**

### Output parameters

- **--outlist** *\<string\>*, **-o** *\<string\>*

  Output path for final transformation **\[Default: NONE\]**

- **--protocol** *\<string\>*, **-p** *\<string\>*

  Optimization protocol output file name **\[Default: NONE\]**

- **--time** *\<string\>*, **-t** *\<string\>*

  Computation time statistics output file name **\[Default: NONE\]**

- **--output-intermediate**

  Write transformation for each level \[default: only write final transformation\]

### 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.
