film(1) Fix interleaved motion using inverse interpolation


film InputImage OutputImage


This tool splits an interleaved input image into the pass images, co-registers them, and reconstructs a motion-corrected image


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

Write list of basic command line options to standard output.
Write complete list of basic and advanced command line options to standard output.
Write list of command line options to standard output in MediaWiki markup.
Write man page source in 'nroff' markup to standard output.
Write command line syntax specification in XML markup (for Slicer integration).
Write toolkit version to standard output.
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).

Input Options

--padding-value <double>
Set padding value for input image. Pixels with this value will be ignored. [Default: disabled]

Interleaving Options

Define interleave axis: this is the through-slice direction of the acquisition. Supported values: "guess-from-input", "axial", "sagittal", "coronal", "interleave-x", "interleave-y", "interleave-z", where the default is "guess-from-input", or use one of the following:
Guess from input image [This is the default]
--axial, -a
Interleaved axial images
--sagittal, -s
Interleaved sagittal images
--coronal, -c
Interleaved coronal images
--interleave-x, -x
Interleaved along x axis
--interleave-y, -y
Interleaved along y axis
--interleave-z, -z
Interleaved along z axis
--passes <integer>, -p <integer>
Number of interleaved passes [Default: 2]
--pass-weight <string>, -W <string>
Set contribution weight for a pass in the form 'pass:weight'

Motion Correction / Registration Options

--reference-image <image-path>, -R <image-path>
Use a separate high-resolution reference image for registration [Default: NONE]
Registration metric for motion estimation by image-to-image registration. Supported values: "nmi", "mi", "cr", "msd", "cc", where the default is "msd", or use one of the following:
Use Normalized Mutual Information for pass-to-refereence registration
Use standard Mutual Information for pass-to-refereence registration
Use Correlation Ratio for pass-to-refereence registration
Use Mean Squared Differences for pass-to-refereence registration [This is the default]
Use Cross-Correlation for pass-to-refereence registration
--import-xforms-path <path>
Path of file from which to import transformations between passes. [Default: NONE]
--export-xforms-path <path>
Path of file to which to export transformations between passes. [Default: NONE]

Initial Volume Injection Options

--injection-kernel-sigma <double>, -S <double>
Standard deviation of Gaussian kernel for volume injection in multiples of pixel size in each direction. [Default: 0.5]
--injection-kernel-radius <double>, -r <double>
Truncation radius factor of injection kernel. The kernel is truncated at sigma*radius, where sigma is the kernel standard deviation. [Default: 2]

Inverse Interpolation Options

Kernel for the inverse interpolation reconstruction Supported values: "cubic", "linear", "hamming-sinc", "cosine-sinc", where the default is "cubic", or use one of the following:
--cubic, -C
Tricubic interpolation [This is the default]
--linear, -L
Trilinear interpolation (faster but less accurate)
--hamming-sinc, -H
Hamming-windowed sinc interpolation
--cosine-sinc, -O
Cosine-windowed sinc interpolation (most accurate but slowest)
--fourth-order-error, -f
Use fourth-order (rather than second-order) error for optimization.
--num-iterations <integer>, -n <integer>
Maximum number of inverse interpolation iterations [Default: 20]

Reconstruction Regularization Options

--l-norm-weight <double>
Set constraint weight for Tikhonov-type L-Norm regularization (0 disables constraint) [Default: 0]
--no-truncation, -T
Turn off regional intensity truncatrion

Output Options

--write-injected-image <image-path>
Write initial volume injection image to path [Default: NONE]
--write-images-as-float, -F
Write output images as floating point [default: same as input]


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


Report bugs at


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.