Modules:RicianNoiseFilter

From Slicer Wiki
Revision as of 20:13, 20 May 2010 by Sgouttard (talk | contribs)
Jump to: navigation, search
Home < Modules:RicianNoiseFilter

Module Name

Rician Noise Removal in Diffusion Tensor MRI (DWI and tensors)

Tensor smoothing and noise removal effect

General Information

Module Type & Category

Type: CLI

Category: Filtering DWI and tensors


Authors, Collaborators & Contact

  • Saurav Basu: University of Utah
  • Tom Fletcher, University of Utah
  • Ross Whitaker, University of Utah
  • Sylvain Gouttard, University of Utah
  • Contact: Tom Fletcher

Module Description

Rician noise introduces a bias into MRI measurements that can have a significant impact on the shapes and orientations of tensors in diffusion tensor magnetic resonance images. This is less of a problem in structural MRI, because this bias is signal dependent and it does not seriously impair tissue identification or clinical diagnoses. However, diffusion imaging is used extensively for quantitative evaluations, and the tensors used in those evaluations are biased in ways that depend on orientation and signal levels. This module implements the algorithm developed by Basu, et al. for filtering diffusion tensor magnetic resonance images. The method is a maximum a posteriori estimation technique that operates directly on the diffusion weighted images and accounts for the biases introduced by Rician noise. We account for Rician noise through a data likelihood term that is combined with a spatial smoothing prior. Also included in the module are several other approaches from the literature, including methods that filter diffusion weighted imagery and those that operate directly on the diffusion tensors. These methods are compared in [Basu, et al. 2006], where it is shown that the Rician filter gives the best overall results.

Usage

DWI filtering

Usage


dwiFilter <arguments> Arguments: 1. Input File Name 2. Output File Name 3. NumIterations 4. Conductance 5. TimeStep 6. Filter Type : (Simple Aniso-0,Chi Squared-1,Rician-2,Gaussian-3) 7. Sigma for bias correction 8. Lamda (Rician Correction Term) 9. Lamda (Gaussian Correction Term)

Argument Description:

<Input File Name> Name of the DWI file to be filtered. For example <noisyDWI_10.nhdr> is a noisy DWI file provided in the data directory. It was generated by adding synthetic Rician noise with a sigma=10 to a cleanDWI.nhdr

<Output File Name> Name of the filtered DWI file. For example <filteredDWI.nhdr>

<NumIterations> Number of iterations you want to run the filter for.

<Conductance> The value of the conductance term in anisotropic diffusion filtering (Ex: 1.0) Note: Large Conductance will oversmooth the image It is important to tune the conductance to obtain best results.

<Filter Type> Can Take 3 values: 0 means perform simple anisotropic diffusion

  • - 1 means perform Chi-Squared smoothing (square the image and perform anisotropic diffusion and then subtract the variance of the noise, and take square root. (The square of a Rice distribution is a Chi Squared distribution with known bias equal to the variance of the noise) (Refer:Max likelihood Est. of Rician Ditribution Parameters. Sijbers et. al)
  • - 2 means Perform Rician bias correction filtering.(Refer: Rician Noise Removal in DT-MRI.)
  • - 3 is same as 2 except use a Gaussian Attachment Term .

<Sigma> Estimate of noise in the data. This can be done by squaring the airvoxels in the real data. The sum of square of all the intensities in the air region should equal 2*variance of the noise in the data. (Sijbers et. al)

<lamda1, lamda2> The weights for the Rician and Gaussian attachment terms.

EXAMPLE


dwiFilter ../data/noisyDWI_10.nhdr filteredDWI.nhdr 1 1.0 0.0625 2 10 100 0

Filters the noisyDWI_10.nhdr for 1 iteration with a conductance of 1.0 timeStep 0.0625 using Rician filtering with a Rician attachement term weight of 100. The estimate of noise in the input image is a sigma of 10 The filtered image is filteredDWI.nhdr.

Tensor filtering

Usage


tensorDiffuse <Arguments> 1. FilterType:(0-Euclidean, 1-Log Space,2-Riemannian) 2. numIterations:Iterations For Anisotropic Diffusion 3. timeStep:timeStep Used in Anisotropic Diffusion 4. conductance:Conductance used for Anisotropic Diffusion 5. Input (filename of input data) 6. Output (filename of output data)

Arguments 2,3,4 have the same meaning as described for dwiFilter (see above).

Argument 1 describes the filter type

  • - 0: Euclidean Space filtering (tensors are treated as 6-d vectors)
  • - 1: Log Space filtering (Fast and Simple Calculus on Tensors in the Log-Euclidean Framework. In J. Duncan and G. Gerig, editors, Proceedings of the 8th Int. Conf. on Medical Image Computing and Computer-Assisted Intervention - MICCAI 2005, Part I, volume 3749 of LNCS, Palm Springs, CA, USA, October 26-29, pages 115-122, 2005. Springer Verlag)
  • - 2. Riemannian Space Filtering(A Riemannian Framework for the Processing of Tensor-Valued Images. In Ole Fogh Olsen, Luc Florak, and Arjan Kuijper, editors, Deep Structure, Singularities, and Computer Vision (DSSCV), number 3753 of LNCS, pages 112-123, June 2005. Springer Verlag.)

Currently, the Riemannian filter adjustment for negative eigen-values is hard-coded in the source file.

Argument 5 is the name of the noisyTensor input. Argument 6 is the name of the output tensor file

EXAMPLE


tensorFilter 2 1 0.0625 1.0 noisyTensor_10.nhdr FilteredTensor.nhrd


Quick Tour of Features and Use

List all the panels in your interface, their features, what they mean, and how to use them. For instance:

  • Input panels:
Rician noise removal module in Slicer3
Tensor smoothing module in Slicer3

Development

Known bugs

Follow this link to the Slicer3 bug tracker:

http://na-mic.org/Mantis/main_page.php

Usability issues

Follow this link to the Slicer3 bug tracker. Please select the usability issue category when browsing or contributing:

http://na-mic.org/Mantis/main_page.php

Source code & documentation

The code is available on NITRC:

http://www.nitrc.org/projects/dtiricianrem


Acknowledgement

This work is part of the National Alliance for Medical Image Computing (NAMIC), funded by the National Institutes of Health through the NIH Roadmap for Medical Research, Grant U54 EB005149. Information on the National Centers for Biomedical Computing can be obtained from http://nihroadmap.nih.gov/ bioinformatics. Funding for this work has also been provided by Center for Integrative Biomedical Computing, NIH NCRR Project 2-P41-RR12553-07. We thank Weili Lin and Guido Gerig from the University of North Carolina for providing us with the DW-MRI data. Glyph visualizations created with Teem (http://teem.sf.net).


References

Basu S, Fletcher T, Whitaker R. Rician Noise Removal in Diffusion Tensor MRI. Med Image Comput Comput Assist Interv Int Conf Med Image Comput Comput Assist Interv. 2006;9(Pt 1):117-25.