Provided by: mia-tools_2.0.13-1_amd64 

NAME
mia-3dmotioncompica-nonrigid - Non-linear registration of a series of 3D images.
SYNOPSIS
mia-3dmotioncompica-nonrigid -i <in-file> -o <out-file> [options]
DESCRIPTION
mia-3dmotioncompica-nonrigid This program implements a 3D version of the motion compensation algorithm
described in Wollny G, Kellman P, Santos A, Ledesma-Carbayo M-J, "Automatic Motion Compensation of Free
Breathing acquired Myocardial Perfusion Data by using Independent Component Analysis", Medical Image
Analysis, 2012, DOI:10.1016/j.media.2012.02.004.
OPTIONS
File-IO
-i --in-file=(required)
input images of consecutively numbered filed (nameXXXX.ext) For supported file types see
PLUGINS:3dimage/io
-o --out-file=(required)
output image name (as C format string including a %04d in order to define the file
numbering) For supported file types see PLUGINS:3dimage/io
--save-refs=
save reference images, the given string is used as file name base, the number pattern
follows the input images, and the output format is always 'vista'
--save-regs=
save intermediate registered images, the given string is used as file name base, the number
pattern follows the input images, and the output format is always 'vista'
--save-coeffs=
save mixing matrix to a text file
--save-features=
save feature images as PNG
Help & Info
-V --verbose=warning
verbosity of output, print messages of given level and higher priorities. Supported
priorities starting at lowest level are:
info ‐ Low level messages
warning ‐ Warnings
error ‐ Report errors
fail ‐ Report test failures
message ‐ Normal messages
fatal ‐ Report only fatal errors
--copyright
print copyright information
-h --help
print this help
-? --usage
print a short help
--version
print the version number and exit
ICA
-C --components=0
ICA components 0 = automatic estimation
--no-normalize
don't normalized ICs
--no-meanstrip
don't strip the mean from the mixing curves
-k --skip=0
skip images at the beginning of the series e.g. because as they are of other modalities
-m --max-ica-iter=400
maximum number of iterations in ICA
Processing
--threads=-1
Maxiumum number of threads to use for processing,This number should be lower or equal to
the number of logical processor cores in the machine. (-1: automatic estimation).
Registration
-O --optimizer=gsl:opt=gd,step=0.1
Optimizer used for minimization The string value will be used to construct a plug-in. For
supported plugins see PLUGINS:minimizer/singlecost
-a --start-c-rate=32
start coefficinet rate in spines, gets divided by --c-rate-divider with every pass
--c-rate-divider=4
cofficient rate divider for each pass
-d --start-divcurl=20
start divcurl weight, gets divided by --divcurl-divider with every pass
--divcurl-divider=4
divcurl weight scaling with each new pass
-w --imagecost=image:weight=1,cost=ssd,
image cost The string value will be used to construct a plug-in. For supported plugins see
PLUGINS:3dimage/fullcost
-l --mg-levels=3
multi-resolution levels
-P --passes=3
registration passes
PLUGINS: 3dimage/fullcost
divcurl divcurl penalty cost function, supported parameters are:
curl = 1 (float)
penalty weight on curl. in [0, 3.40282e+38]
div = 1 (float)
penalty weight on divergence. in [0, 3.40282e+38]
weight = 1 (float)
weight of cost function. in [-1e+10, 1e+10]
image Generalized image similarity cost function that also handles multi-resolution processing. The
actual similarity measure is given es extra parameter., supported parameters are:
cost = ssd (string)
Cost function kernel.
debug = 0 (bool)
Save intermediate resuts for debugging.
ref = ref.@ (io)
Reference image. For supported file types see PLUGINS:3dimage/io
src = src.@ (io)
Study image. For supported file types see PLUGINS:3dimage/io
weight = 1 (float)
weight of cost function. in [-1e+10, 1e+10]
taggedssd Evaluates the Sum of Squared Differences similarity measure by using three tagged image pairs.
The cost function value is evaluated based on all image pairs, but the gradient is composed by
composing its component based on the tag direction., supported parameters are:
refx = (required, io)
Reference image X-tag. For supported file types see PLUGINS:3dimage/io
refy = (required, io)
Reference image Y-tag. For supported file types see PLUGINS:3dimage/io
refz = (required, io)
Reference image Z-tag. For supported file types see PLUGINS:3dimage/io
srcx = (required, io)
Study image X-tag. For supported file types see PLUGINS:3dimage/io
srcy = (required, io)
Study image Y-tag. For supported file types see PLUGINS:3dimage/io
srcz = (required, io)
Study image Z-tag. For supported file types see PLUGINS:3dimage/io
weight = 1 (float)
weight of cost function. in [-1e+10, 1e+10]
PLUGINS: 3dimage/io
analyze Analyze 7.5 image
Recognized file extensions: .HDR, .hdr
Supported element types:
unsigned 8 bit, signed 16 bit, signed 32 bit, floating point 32 bit, floating point 64
bit
datapool Virtual IO to and from the internal data pool
Recognized file extensions: .@
dicom Dicom image series as 3D
Recognized file extensions: .DCM, .dcm
Supported element types:
unsigned 16 bit
inria INRIA image
Recognized file extensions: .INR, .inr
Supported element types:
signed 8 bit, unsigned 8 bit, signed 16 bit, unsigned 16 bit, signed 32 bit, unsigned 32
bit, floating point 32 bit, floating point 64 bit
mhd MetaIO 3D image IO using the VTK implementation (experimental).
Recognized file extensions: .MHA, .MHD, .mha, .mhd
Supported element types:
signed 8 bit, unsigned 8 bit, signed 16 bit, unsigned 16 bit, signed 32 bit, unsigned 32
bit, floating point 32 bit, floating point 64 bit
vff VFF Sun raster format
Recognized file extensions: .VFF, .vff
Supported element types:
unsigned 8 bit, signed 16 bit
vista Vista 3D
Recognized file extensions: .V, .VISTA, .v, .vista
Supported element types:
binary data, signed 8 bit, unsigned 8 bit, signed 16 bit, unsigned 16 bit, signed 32 bit,
unsigned 32 bit, floating point 32 bit, floating point 64 bit
vti 3D image VTK-XML in- and output (experimental).
Recognized file extensions: .VTI, .vti
Supported element types:
signed 8 bit, unsigned 8 bit, signed 16 bit, unsigned 16 bit, signed 32 bit, unsigned 32
bit, floating point 32 bit, floating point 64 bit
vtk 3D VTK image legacy in- and output (experimental).
Recognized file extensions: .VTK, .VTKIMAGE, .vtk, .vtkimage
Supported element types:
signed 8 bit, unsigned 8 bit, signed 16 bit, unsigned 16 bit, signed 32 bit, unsigned 32
bit, floating point 32 bit, floating point 64 bit
PLUGINS: minimizer/singlecost
gdsq Gradient descent with quadratic step estimation, supported parameters are:
ftolr = 0 (double)
Stop if the relative change of the criterion is below.. in [0, INF]
gtola = 0 (double)
Stop if the inf-norm of the gradient is below this value.. in [0, INF]
maxiter = 100 (uint)
Stopping criterion: the maximum number of iterations. in [1, 2147483647]
scale = 2 (double)
Fallback fixed step size scaling. in [1, INF]
step = 0.1 (double)
Initial step size. in [0, INF]
xtola = 0 (double)
Stop if the inf-norm of x-update is below this value.. in [0, INF]
gsl optimizer plugin based on the multimin optimizers ofthe GNU Scientific Library (GSL)
https://www.gnu.org/software/gsl/, supported parameters are:
eps = 0.01 (double)
gradient based optimizers: stop when |grad| < eps, simplex: stop when simplex size <
eps.. in [1e-10, 10]
iter = 100 (int)
maximum number of iterations. in [1, 2147483647]
opt = gd (dict)
Specific optimizer to be used.. Supported values are:
bfgs ‐ Broyden-Fletcher-Goldfarb-Shann
bfgs2 ‐ Broyden-Fletcher-Goldfarb-Shann (most efficient version)
cg-fr ‐ Flecher-Reeves conjugate gradient algorithm
gd ‐ Gradient descent.
simplex ‐ Simplex algorithm of Nelder and Mead
cg-pr ‐ Polak-Ribiere conjugate gradient algorithm
step = 0.001 (double)
initial step size. in [0, 10]
tol = 0.1 (double)
some tolerance parameter. in [0.001, 10]
nlopt Minimizer algorithms using the NLOPT library, for a description of the optimizers please see
'http://ab-initio.mit.edu/wiki/index.php/NLopt_Algorithms', supported parameters are:
ftola = 0 (double)
Stopping criterion: the absolute change of the objective value is below this value. in
[0, INF]
ftolr = 0 (double)
Stopping criterion: the relative change of the objective value is below this value. in
[0, INF]
higher = inf (double)
Higher boundary (equal for all parameters). in [INF, INF]
local-opt = none (dict)
local minimization algorithm that may be required for the main minimization algorithm..
Supported values are:
gn-orig-direct-l ‐ Dividing Rectangles (original implementation, locally biased)
gn-direct-l-noscal ‐ Dividing Rectangles (unscaled, locally biased)
gn-isres ‐ Improved Stochastic Ranking Evolution Strategy
ld-tnewton ‐ Truncated Newton
gn-direct-l-rand ‐ Dividing Rectangles (locally biased, randomized)
ln-newuoa ‐ Derivative-free Unconstrained Optimization by Iteratively Constructed
Quadratic Approximation
gn-direct-l-rand-noscale ‐ Dividing Rectangles (unscaled, locally biased, randomized)
gn-orig-direct ‐ Dividing Rectangles (original implementation)
ld-tnewton-precond ‐ Preconditioned Truncated Newton
ld-tnewton-restart ‐ Truncated Newton with steepest-descent restarting
gn-direct ‐ Dividing Rectangles
ln-neldermead ‐ Nelder-Mead simplex algorithm
ln-cobyla ‐ Constrained Optimization BY Linear Approximation
gn-crs2-lm ‐ Controlled Random Search with Local Mutation
ld-var2 ‐ Shifted Limited-Memory Variable-Metric, Rank 2
ld-var1 ‐ Shifted Limited-Memory Variable-Metric, Rank 1
ld-mma ‐ Method of Moving Asymptotes
ld-lbfgs-nocedal ‐ None
ld-lbfgs ‐ Low-storage BFGS
gn-direct-l ‐ Dividing Rectangles (locally biased)
none ‐ don't specify algorithm
ln-bobyqa ‐ Derivative-free Bound-constrained Optimization
ln-sbplx ‐ Subplex variant of Nelder-Mead
ln-newuoa-bound ‐ Derivative-free Bound-constrained Optimization by Iteratively
Constructed Quadratic Approximation
ln-praxis ‐ Gradient-free Local Optimization via the Principal-Axis Method
gn-direct-noscal ‐ Dividing Rectangles (unscaled)
ld-tnewton-precond-restart ‐ Preconditioned Truncated Newton with steepest-descent
restarting
lower = -inf (double)
Lower boundary (equal for all parameters). in [INF, INF]
maxiter = 100 (int)
Stopping criterion: the maximum number of iterations. in [1, 2147483647]
opt = ld-lbfgs (dict)
main minimization algorithm. Supported values are:
gn-orig-direct-l ‐ Dividing Rectangles (original implementation, locally biased)
g-mlsl-lds ‐ Multi-Level Single-Linkage (low-discrepancy-sequence, require local
gradient based optimization and bounds)
gn-direct-l-noscal ‐ Dividing Rectangles (unscaled, locally biased)
gn-isres ‐ Improved Stochastic Ranking Evolution Strategy
ld-tnewton ‐ Truncated Newton
gn-direct-l-rand ‐ Dividing Rectangles (locally biased, randomized)
ln-newuoa ‐ Derivative-free Unconstrained Optimization by Iteratively Constructed
Quadratic Approximation
gn-direct-l-rand-noscale ‐ Dividing Rectangles (unscaled, locally biased, randomized)
gn-orig-direct ‐ Dividing Rectangles (original implementation)
ld-tnewton-precond ‐ Preconditioned Truncated Newton
ld-tnewton-restart ‐ Truncated Newton with steepest-descent restarting
gn-direct ‐ Dividing Rectangles
auglag-eq ‐ Augmented Lagrangian algorithm with equality constraints only
ln-neldermead ‐ Nelder-Mead simplex algorithm
ln-cobyla ‐ Constrained Optimization BY Linear Approximation
gn-crs2-lm ‐ Controlled Random Search with Local Mutation
ld-var2 ‐ Shifted Limited-Memory Variable-Metric, Rank 2
ld-var1 ‐ Shifted Limited-Memory Variable-Metric, Rank 1
ld-mma ‐ Method of Moving Asymptotes
ld-lbfgs-nocedal ‐ None
g-mlsl ‐ Multi-Level Single-Linkage (require local optimization and bounds)
ld-lbfgs ‐ Low-storage BFGS
gn-direct-l ‐ Dividing Rectangles (locally biased)
ln-bobyqa ‐ Derivative-free Bound-constrained Optimization
ln-sbplx ‐ Subplex variant of Nelder-Mead
ln-newuoa-bound ‐ Derivative-free Bound-constrained Optimization by Iteratively
Constructed Quadratic Approximation
auglag ‐ Augmented Lagrangian algorithm
ln-praxis ‐ Gradient-free Local Optimization via the Principal-Axis Method
gn-direct-noscal ‐ Dividing Rectangles (unscaled)
ld-tnewton-precond-restart ‐ Preconditioned Truncated Newton with steepest-descent
restarting
ld-slsqp ‐ Sequential Least-Squares Quadratic Programming
step = 0 (double)
Initial step size for gradient free methods. in [0, INF]
stop = -inf (double)
Stopping criterion: function value falls below this value. in [INF, INF]
xtola = 0 (double)
Stopping criterion: the absolute change of all x-values is below this value. in [0,
INF]
xtolr = 0 (double)
Stopping criterion: the relative change of all x-values is below this value. in [0,
INF]
EXAMPLE
Register the perfusion series given in images imagesXXXX.v by using 4-class ICA estimation. Skip two
images at the beginning, use at most 4 registration threads, a nlopt based optimizer and otherwiese use
the default parameters. Store the result in registeredXXXX.v
mia-3dmotioncompica-nonrigid -i images0000.v -o registered%04d.v -k 2 -C 4 -t 4 -O
nlopt:opt=ld-var1,xtola=0.001,ftolr=0.001,maxiter=300
AUTHOR(s)
Gert Wollny
COPYRIGHT
This software is Copyright (c) 1999‐2013 Leipzig, Germany and Madrid, Spain. It comes with ABSOLUTELY
NO WARRANTY and you may redistribute it under the terms of the GNU GENERAL PUBLIC LICENSE Version 3
(or later). For more information run the program with the option '--copyright'.
2.0.10 25 January 2014 mia-3dmotioncompica-nonrigid(1)