alignpettomri
- Note: This program is no longer part of the
AIR distribution (last distributed in AIR 3.03).
-
-
- This program uses the minimization algorithm distributed with
AIR 1.0 with only minor modifications to allow it to coexist with
AIR 3.0. This program still requires pixel sizes to be isotropic.
The program alignlinear implements
a better minimization procedure and greater flexibility and should
be used preferentially.
Purpose:
PET to MRI registration using a rigid
body model
Generates a .air file that can be
used to reslice the specified PET data set to match the specified MRI
data set.
May also be suitable for other types
of intrasubject, intermodality registration
Usage:
alignpettomri standard-mri
reslice-pet
air-out [options]
- options:
- where the following definitions apply:
- standard-mri
- the name of the MRI file (.img or .hdr suffix optional)
- reslice-pet
- the name of the edited PET file (.img or .hdr suffix
optional)
- air-out
- the exact name of the output file (cannot contain '.img' or
'.hdr' and will not be modified by the program).
- threshold-mri
- defines a minimum voxel value for the MRI file. Voxels in
the MRI below this value are excluded from analysis. This value
should be a non-negative integer less than the maximum possible
voxel value and should be lower than the MRI gray matter and
white matter voxel values.
- initialization-file
- the name of an ASCII file containing initialization
parameters. These parameters can be used to control the
starting position for automated registration, a feature that is
useful if the initial misregistration is extreme (e.g.,
>45°ree; of rotational misregistration) or if the default
registration leads to an obviously incorrect result. The format
for the initialization file is discussed under
file types. Initialization files
are created most easily using the program
manualreslice.
- initial-sampling
- controls how densely data is sampled during the first
iterative cycle of the algorithm. Large values generally speed
up the registration process because gross misregistration can
be detected with fairly superficial sampling of the data.
However, choosing an excessively large value can be
counterproductive if the algorithm falls into an infinite loop
or is led far from the true value by nonrepresentative
sampling.
Avoid multiples of two when choosing sampling
parameters. If any of your matrix dimensions are
divisible by two, the sampling will become spatially biased
until the sampling density reaches one, at which point the
algorithm will have to iteratively overcome the earlier bias at
the maximal sampling density. If your matrix dimensions are
divisible by three, you will have a similar problem with
sampling densities that are multiples of three.
- final-sampling
- controls how densely data is sampled during the final
iterative cycle of the algorithm. If your data is oversampled,
the time spent sampling very densely may not provide any
significant improvement in accuracy. In such cases, you may
want to choose a final_sampling that is greater than one.
Iterations will cease if the new sampling density is less than
the final_sampling density specified here.
- sampling-decrement-ratio
- determines the number of intermediate iterative cycles of
the algorithm. The current sampling is divided by this ratio
with each cycle to determine the new sampling.
- convergence-threshold
- controls how small the absolute values of all the first
derivatives must be in order to meet the convergence criteria.
Setting this value too large will result in convergence while
the images are still misregistered; setting it too small will
lead to a failure to converge.
- repeated-iterations
- controls the maximum number of iterations permitted in each
cycle. This feature is incorporated to avoid infinite loops, a
situation that arises most commonly when the data is being
sampled very superficially. If this number is made too low, it
will lead to inaccurate results and/or slow down the overall
performance of the algorithm by preventing you from making use
information that could have been derived more quickly at the
prematurely aborted more superficial sampling. Values less than
100 should generally be avoided for 6 parameter fits. Failure
to converge within the specified number of iterations at the
densest sampling will result in a failed registration--no
registration parameters will be saved if this occurs.
Error messages: (alphabetical)
See also: Generic error messages
- alignment will be constrained to inplane because of z
dimension degeneracy
- File standard_pet apparently has only one plane
of data (according to header)
- Use scanheader to verify that
this is the case
- If header is incorrect, you will need to generate a new
header for standard_pet with the correct z_dim using
makeaheader.
- All second derivatives were negative, cannot minimize
Will try next sample density
- Negative second derivatives lead to maxima, not minima
- If registration resumes at next sample density and the
results look fine, don't worry about it
- If the results are bad, check your image orientation.
Consider using an initialization
file.
- If sampling density cannot be increased, the algorithm will
fail; no .air file will be generated.
- Attempt to save .air file air_out
failed
- Check to see if disk is full
- Check that you have write permission in the directory
- error reading initialization file
initialization_file
- memory inadequate...
- The program was unable to allocate enough RAM to perform
the alignment.
- Try again when the machine isn't busy with other RAM
intensive tasks
- Get access to more RAM
- Pixel anisotropy exceeds ... in ... file: ...
- The program being used requires the voxel x and y sizes to
be identical.
- See programs reorient and
zoomer for possible ways to
circumvent this problem (an appropriate
initialization file may also
need to be created to perform automated registration).
- Sample density is already maximal, giving up
- See "All second derivatives were negative..." above.
- threshold threshold_mri is not in range of
possible pixel values
- Choose a value less than255 if you are using 8 bits/pixel
on a SPARCstation
- unable to allocate memory ...
- see "memory inadequate..." above
- unable to open initialization file filename
- See if file filename exists in directory
- See if you have read permission for file filename
- WARNING: File air_out will be overwritten by
the output of this program
- Type control-C immediately to abort
program if you don't want to overwrite this file
- WARNING: MRI file __ only contains __% zeros Recommend
verifying that file %s has been edited to remove scalp, skull, and
meninges
- Registration will fail if MRI has not been edited.
See also:
Footnotes:
- Other types of intrasubject
intermodality registration
- In theory, this program may prove useful for any
cross-modality registration problem provided that one of the
modalities (MRI in this case) can be adequately segmented into
tissue types based on voxel intensities (editing may be required
to remove tissues that prevent such segmentation). The file which
can be segmented on the basis of voxel intensities should replace
the MRI file (not the PET file) when using
alignmritopet or
alignpettomri. The second
modality (PET in this case) does not need to be segmentable on the
basis of voxel intensity and should not be edited. Although in
some sense a single modality, alignmritopet and alignpettomri are
more likely to succeed than
alignpettopet when trying to
align two MRI's obtained using different pulse sequences. This may
also be the case for registering PET images using different
tracers that result in markedly different tissue distributions.
Modified: October 26, 1997
© 1995-97 Roger P. Woods,
M.D.(rwoods@ucla.edu)