VIP Bias Correction

This process estimates a multiplicative bias field modeled by cubic B-splines. To compute splines coefficients, it tries to minimize an energy with 4 terms:

  1. the entropy in the corrected MRI ;
  2. the entropy in the white matter in the corrected MRI ;
  3. the spatial regularity of the bias field ;
  4. the mean intensity difference between the original and corrected images.

Description

The bias field is modeled by cubic B-splines. This means that it is parameterized by a few values regularely spaced in the image referential and is computed in any point by cubic interpolation (Figure 1).

Figure 1. Regularly spaced coefficients (left) and interpolated bias field (right). (Illustration from Wikipedia)

The four terms of the energy function are modulated by four coefficients (Figure 2):

Figure 2. Coefficients modulating the minimized energy.

Troubleshooting

When failing, this step can cause havoc in the rest of the pipeline. A common issue is to find unusually high or low bias values in one part of the image when white matter points are badly selected. This would cause the apparition of outlier values in the bias-corrected image which would hamper the skull-stripping step (the k-means algorithm is particularly sensitive to outliers). If this problem arises, don't hesitate to give a bigger value to the energy regulating terms, coeff_rigidity and, especially, coeff_power_regul. Values as high as 100 can be used.

References

The princeps article was published by Mangin (2000), tough without the white matter entropy term.

Parameters

input_mri: P:MRI Raw ( input )
Raw (uncorrected) MRI
input_commissure: Commissure coordinates ( optional, input )
Commissure points. If provided, they are used to mask voxels too far below the brain (jaw, neck...), so that they don't impact the bias field estimation.
specie: OpenChoice ( optional, input )
Some parameters are automatically set at an appropriate value if the specie is provided.
contrast: OpenChoice ( optional, input )
The contrast (T1 or T2) must be provided. Indeed, white matter points are selected as points of high curvature, but we will select positive or negative curvature depending on the contrast.
grid_resolution_mm: Float ( optional, input )
Spacing between field coefficients in mm.
n_grid_pyramid: Integer ( optional, input )
Number of pyramid levels used for bias estimation.
coeff_entropy: Float ( optional, input )
Coefficient modulating the entropy term (Ke).
coeff_wm_entropy: Float ( optional, input )
Coefficient modulating the white matter entropy term (Kc).
coeff_rigidity: Float ( optional, input )
Coefficient modulating the field rigidity term (Kr).
coeff_power_regul: Float ( optional, input )
Coefficient modulating the field power term (i.e., it keeps the field centered around 1) (Ko).
mask_bottom_n_slices: OpenChoice ( optional, input )
Mask bottom slices in the MRI
mask_under_ACPC: Float ( optional, input )
Mask voxels located more the n vocels under the AC-PC line.
mask_edges: Choice ( optional, input )
Mask voxels of high gradient to discard partial volume
mask_variance_pct: Integer ( optional, input )
A first mask is computed from voxels of low variance (in terms of percentage of the maximum variance)
write_mode: Choice ( optional, input )
Preselection of written images :
write_nobias: Choice ( optional, input )
write_field: Choice ( optional, input )
write_hfiltered: Choice ( optional, input )
write_white_ridges: Choice ( optional, input )
write_variance: Choice ( optional, input )
write_edges: Choice ( optional, input )
write_mean_curvature: Choice ( optional, input )
output_mri_nobias: P:MRI VIP Bias Corrected ( output )
output_field: P:MRI VIP Bias Field ( output )
output_hfiltered: P:MRI Filtered For Histo ( optional, output )
output_white_ridges: P:MRI White Matter Ridges ( optional, output )
output_variance: P:MRI Variance ( optional, output )
output_edges: P:MRI Edges ( optional, output )
output_mean_curvature: P:MRI Mean Curvature ( optional, output )
fix_random_seed: Boolean ( optional, input )
dumb: Boolean ( optional, input )
debug: Boolean ( optional, input )

Technical information

Toolbox : Primatologist

User level : 0

Identifier : primate_BiasCorrection

File name : brainvisa/toolboxes/primatologist/processes/blocks/primate_BiasCorrection.py

Supported file formats :

input_mri :
gz compressed NIFTI-1 image, Aperio svs, BMP image, DICOM image, Directory, ECAT i image, ECAT v image, FDF image, FreesurferMGH, FreesurferMGZ, GIF image, GIS image, Hamamatsu ndpi, Hamamatsu vms, Hamamatsu vmu, JPEG image, Leica scn, MINC image, NIFTI-1 image, PBM image, PGM image, PNG image, PPM image, SPM image, Sakura svslide, TIFF image, TIFF image, TIFF(.tif) image, TIFF(.tif) image, VIDA image, Ventana bif, XBM image, XPM image, Zeiss czi, gz compressed MINC image, gz compressed NIFTI-1 image
input_commissure :
Commissure coordinates, Commissure coordinates
output_mri_nobias :
gz compressed NIFTI-1 image, BMP image, DICOM image, Directory, ECAT i image, ECAT v image, FDF image, GIF image, GIS image, JPEG image, MINC image, NIFTI-1 image, PBM image, PGM image, PNG image, PPM image, SPM image, TIFF image, TIFF(.tif) image, VIDA image, XBM image, XPM image, gz compressed MINC image, gz compressed NIFTI-1 image
output_field :
gz compressed NIFTI-1 image, BMP image, DICOM image, Directory, ECAT i image, ECAT v image, FDF image, GIF image, GIS image, JPEG image, MINC image, NIFTI-1 image, PBM image, PGM image, PNG image, PPM image, SPM image, TIFF image, TIFF(.tif) image, VIDA image, XBM image, XPM image, gz compressed MINC image, gz compressed NIFTI-1 image
output_hfiltered :
gz compressed NIFTI-1 image, BMP image, DICOM image, Directory, ECAT i image, ECAT v image, FDF image, GIF image, GIS image, JPEG image, MINC image, NIFTI-1 image, PBM image, PGM image, PNG image, PPM image, SPM image, TIFF image, TIFF(.tif) image, VIDA image, XBM image, XPM image, gz compressed MINC image, gz compressed NIFTI-1 image
output_white_ridges :
gz compressed NIFTI-1 image, BMP image, DICOM image, Directory, ECAT i image, ECAT v image, FDF image, GIF image, GIS image, JPEG image, MINC image, NIFTI-1 image, PBM image, PGM image, PNG image, PPM image, SPM image, TIFF image, TIFF(.tif) image, VIDA image, XBM image, XPM image, gz compressed MINC image, gz compressed NIFTI-1 image
output_variance :
gz compressed NIFTI-1 image, BMP image, DICOM image, Directory, ECAT i image, ECAT v image, FDF image, GIF image, GIS image, JPEG image, MINC image, NIFTI-1 image, PBM image, PGM image, PNG image, PPM image, SPM image, TIFF image, TIFF(.tif) image, VIDA image, XBM image, XPM image, gz compressed MINC image, gz compressed NIFTI-1 image
output_edges :
gz compressed NIFTI-1 image, BMP image, DICOM image, Directory, ECAT i image, ECAT v image, FDF image, GIF image, GIS image, JPEG image, MINC image, NIFTI-1 image, PBM image, PGM image, PNG image, PPM image, SPM image, TIFF image, TIFF(.tif) image, VIDA image, XBM image, XPM image, gz compressed MINC image, gz compressed NIFTI-1 image
output_mean_curvature :
gz compressed NIFTI-1 image, BMP image, DICOM image, Directory, ECAT i image, ECAT v image, FDF image, GIF image, GIS image, JPEG image, MINC image, NIFTI-1 image, PBM image, PGM image, PNG image, PPM image, SPM image, TIFF image, TIFF(.tif) image, VIDA image, XBM image, XPM image, gz compressed MINC image, gz compressed NIFTI-1 image