.TH mia\-3dfluid\-syn\-registration 1 "v2.4.7" "USER COMMANDS" .SH NAME mia\-3dfluid\-syn\-registration \- Non\-linear registration of 3D images by using a diffeomorphic SyN registration .SH SYNOPSIS .B mia\-3dfluid\-syn\-registration \-i \-r \-o \-O [options] .SH DESCRIPTION .B mia\-3dfluid\-syn\-registration This program implements the registration of two gray scale 3D images. The transformation applied is a symmeric diffeomorpic fluid dynamic registration. To work most efficiently, this program makes a few assumptions about the imput data, i.e. the image must be of the same size, have the same voxel spacing, and any intensity range normalization or equalization should also be done before calling this program. .SH OPTIONS .SS Help & Info .RS .IP "\-V \-\-verbose=warning" verbosity of output, print messages of given level and higher priorities. Supported priorities starting at lowest level are: .RS 10 .I trace \(hy Function call trace .RE .RS 10 .I debug \(hy Debug output .RE .RS 10 .I info \(hy Low level messages .RE .RS 10 .I message \(hy Normal messages .RE .RS 10 .I warning \(hy Warnings .RE .RS 10 .I fail \(hy Report test failures .RE .RS 10 .I error \(hy Report errors .RE .RS 10 .I fatal \(hy Report only fatal errors .RE .IP " \-\-copyright" print copyright information .IP "\-h \-\-help" print this help .IP "\-? \-\-usage" print a short help .IP " \-\-version" print the version number and exit .RE .SS IO .RS .IP "\-i \-\-in-image=(input, required); io" test image For supported file types see PLUGINS:3dimage/io .IP "\-r \-\-ref-image=(input, required); io" reference image For supported file types see PLUGINS:3dimage/io .IP "\-o \-\-transform=(required, output); io" output transformation For supported file types see PLUGINS:3dtransform/io .IP "\-O \-\-inverse-transform=(required, output); io" inverse output transformation For supported file types see PLUGINS:3dtransform/io .RE .SS Processing .RS .IP " \-\-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). .RE .SS Registration .RS .IP "\-l \-\-mg-levels=3" Number of multi\-resolution levels to run the registration on. Not that some registration parameters can be given as a coma seperated list to indicate per level values. In these cases if the number of given values is smaller than the number of multi\-resolution levels (this parameter), the the last given value is used for all subsequest multi\-resolution levels. .IP "\-S \-\-step=0.25; float in (0, 0.5]" Initial step size for all levels .IP "\-c \-\-cost=ssd" Image similarity function to be minimized For supported plugins see PLUGINS:3dimage/cost .IP "\-R \-\-regularizer=sor:kernel=fluid,maxiter=50" Regularization for the force to transformation update For supported plugins see PLUGINS:3dvf/regularizer .IP "\-T \-\-conv-test-interval=; vuint in [4, 40]" Convergence test interations intervall: In order to measure convergence the cost function value is averaged over this amount of iterations, and the decline rate is evaluated based on the linare regression of the cost function values in this intervall. This parameter can be given as a coma\-seperated list with values corresponding to the multi\-resolution levels, see option \-\-mg\-levels for more information. .IP "\-D \-\-stop-decline-rate=; vdouble in [0, inf)" Stopping criterium for registration based on the cost decline rate. If the rate below this value, the iteration is stopped. This parameter can be given as a coma\-seperated list with values corresponding to the multi\-resolution levels, see option \-\-mg\-levels for more information. .IP "\-C \-\-stop-cost=" Stopping criterium for registration based on the cost value. If the cost drops below this value, the iteration is stopped. This parameter can be given as a coma\-seperated list with values corresponding to the multi\-resolution levels, see option \-\-mg\-levels for more information. .IP "\-I \-\-iter=; vuint in [4, inf)" Naximum number if iterations done on each multi\-resolution level. This parameter can be given as a coma\-seperated list with values corresponding to the multi\-resolution levels, see option \-\-mg\-levels for more information. .RE .SH PLUGINS: 1d/splinekernel .TP 10 .B bspline B-spline kernel creation , supported parameters are: .P .RS 14 .I d = 3; int in [0, 5] .RS 2 Spline degree. .RE .RE .TP 10 .B omoms OMoms-spline kernel creation, supported parameters are: .P .RS 14 .I d = 3; int in [3, 3] .RS 2 Spline degree. .RE .RE .SH PLUGINS: 3dimage/cost .TP 10 .B lncc local normalized cross correlation with masking support., supported parameters are: .P .RS 14 .I w = 5; uint in [1, 256] .RS 2 half width of the window used for evaluating the localized cross correlation. .RE .RE .TP 10 .B mi Spline parzen based mutual information., supported parameters are: .P .RS 14 .I cut = 0; float in [0, 40] .RS 2 Percentage of pixels to cut at high and low intensities to remove outliers. .RE .RE .RS 14 .I mbins = 64; uint in [1, 256] .RS 2 Number of histogram bins used for the moving image. .RE .RE .RS 14 .I mkernel = [bspline:d=3]; factory .RS 2 Spline kernel for moving image parzen hinstogram. For supported plug-ins see PLUGINS:1d/splinekernel .RE .RE .RS 14 .I rbins = 64; uint in [1, 256] .RS 2 Number of histogram bins used for the reference image. .RE .RE .RS 14 .I rkernel = [bspline:d=0]; factory .RS 2 Spline kernel for reference image parzen hinstogram. For supported plug-ins see PLUGINS:1d/splinekernel .RE .RE .TP 10 .B ncc normalized cross correlation. .P .RS 14 (no parameters) .RE .TP 10 .B ngf This function evaluates the image similarity based on normalized gradient fields. Given normalized gradient fields $ _S$ of the src image and $ _R$ of the ref image various evaluators are implemented., supported parameters are: .P .RS 14 .I eval = ds; dict .RS 2 plugin subtype (sq, ds,dot,cross). Supported values are: .RS 4 .I ds \(hy square of scaled difference .RE .RS 4 .I dot \(hy scalar product kernel .RE .RS 4 .I cross \(hy cross product kernel .RE .RE .RE .TP 10 .B ssd 3D image cost: sum of squared differences, supported parameters are: .P .RS 14 .I autothresh = 0; float in [0, 1000] .RS 2 Use automatic masking of the moving image by only takeing intensity values into accound that are larger than the given threshold. .RE .RE .RS 14 .I norm = 0; bool .RS 2 Set whether the metric should be normalized by the number of image pixels. .RE .RE .TP 10 .B ssd-automask 3D image cost: sum of squared differences, with automasking based on given thresholds, supported parameters are: .P .RS 14 .I rthresh = 0; double .RS 2 Threshold intensity value for reference image. .RE .RE .RS 14 .I sthresh = 0; double .RS 2 Threshold intensity value for source image. .RE .RE .SH PLUGINS: 3dimage/io .TP 10 .B analyze Analyze 7.5 image .P .RS 14 Recognized file extensions: .HDR, .hdr .RE .RS 14 Supported element types: .RS 2 unsigned 8 bit, signed 16 bit, signed 32 bit, floating point 32 bit, floating point 64 bit .RE .RE .TP 10 .B datapool Virtual IO to and from the internal data pool .P .RS 14 Recognized file extensions: .@ .RE .TP 10 .B dicom Dicom image series as 3D .P .RS 14 Recognized file extensions: .DCM, .dcm .RE .RS 14 Supported element types: .RS 2 signed 16 bit, unsigned 16 bit .RE .RE .TP 10 .B hdf5 HDF5 3D image IO .P .RS 14 Recognized file extensions: .H5, .h5 .RE .RS 14 Supported element types: .RS 2 binary data, signed 8 bit, unsigned 8 bit, signed 16 bit, unsigned 16 bit, signed 32 bit, unsigned 32 bit, signed 64 bit, unsigned 64 bit, floating point 32 bit, floating point 64 bit .RE .RE .TP 10 .B inria INRIA image .P .RS 14 Recognized file extensions: .INR, .inr .RE .RS 14 Supported element types: .RS 2 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 .RE .RE .TP 10 .B mhd MetaIO 3D image IO using the VTK implementation (experimental). .P .RS 14 Recognized file extensions: .MHA, .MHD, .mha, .mhd .RE .RS 14 Supported element types: .RS 2 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 .RE .RE .TP 10 .B nifti NIFTI-1 3D image IO. The orientation is transformed in the same way like it is done with 'dicomtonifti --no-reorder' from the vtk-dicom package. .P .RS 14 Recognized file extensions: .NII, .nii .RE .RS 14 Supported element types: .RS 2 signed 8 bit, unsigned 8 bit, signed 16 bit, unsigned 16 bit, signed 32 bit, unsigned 32 bit, signed 64 bit, unsigned 64 bit, floating point 32 bit, floating point 64 bit .RE .RE .TP 10 .B vff VFF Sun raster format .P .RS 14 Recognized file extensions: .VFF, .vff .RE .RS 14 Supported element types: .RS 2 unsigned 8 bit, signed 16 bit .RE .RE .TP 10 .B vista Vista 3D .P .RS 14 Recognized file extensions: .-, .V, .VISTA, .v, .vista .RE .RS 14 Supported element types: .RS 2 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 .RE .RE .TP 10 .B vti 3D image VTK-XML in- and output (experimental). .P .RS 14 Recognized file extensions: .VTI, .vti .RE .RS 14 Supported element types: .RS 2 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 .RE .RE .TP 10 .B vtk 3D VTK image legacy in- and output (experimental). .P .RS 14 Recognized file extensions: .VTK, .VTKIMAGE, .vtk, .vtkimage .RE .RS 14 Supported element types: .RS 2 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 .RE .RE .SH PLUGINS: 3dtransform/io .TP 10 .B bbs Binary (non-portable) serialized IO of 3D transformations .P .RS 14 Recognized file extensions: .bbs .RE .TP 10 .B datapool Virtual IO to and from the internal data pool .P .RS 14 Recognized file extensions: .@ .RE .TP 10 .B vista Vista storage of 3D transformations .P .RS 14 Recognized file extensions: .v, .v3dt .RE .TP 10 .B xml XML serialized IO of 3D transformations .P .RS 14 Recognized file extensions: .x3dt .RE .SH PLUGINS: 3dvf/regularizer .TP 10 .B sor This plugin implements successive (over-)relaxation as a solver to regularize the vector field., supported parameters are: .P .RS 14 .I abs_f = 0.01; float in [0, inf) .RS 2 breaking condition: absolute residuum. .RE .RE .RS 14 .I kernel = fluid; factory .RS 2 solver kernel to be used. For supported plug-ins see PLUGINS:3dvf/regularizerkernel .RE .RE .RS 14 .I maxiter = 100; uint in [0, inf) .RS 2 maximum number of iterations. .RE .RE .RS 14 .I rel_f = 1e\-05; float in (0, 1) .RS 2 breaking condition: relative residuum. .RE .RE .SH PLUGINS: 3dvf/regularizerkernel .TP 10 .B fluid Evaluation kernel for the fluid-dynamics solver, either using successive (over-)relaxation, or a Gauss-Southwell relaxation. This implementation is generic and doesn't implement any architecture specific optimizations., supported parameters are: .P .RS 14 .I lambda = 1; float in [0, 10000] .RS 2 bulk viscosity (compressibility). .RE .RE .RS 14 .I mu = 1; float in (0, 10000] .RS 2 dynamic viscosity (shear). .RE .RE .RS 14 .I relax = 1; float in [0.1, 2] .RS 2 Relaxation parameter for the solver. .RE .RE .SH EXAMPLE Register image test.v to image ref.v saving the transformation to transform.v and the inverse transform to inverse\-transform.v. Use three multiresolution levels, ssd as image cost function. .HP mia\-3dfluid\-syn\-registration \-i test.v \-r ref.v \-t transform.v \-T inverse\-transform.v \-l 3 ssd .SH AUTHOR(s) Gert Wollny .SH COPYRIGHT This software is Copyright (c) 1999\(hy2015 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'.