Unbiased Non-Local Means for MRI denoising

This software implements the method described in the following reference:

Antonio Tristán-Vega, Verónica García-Pérez, Santiago Aja-Fernández, Carl-Fredrik Westin, "Efficient and robust nonlocal means denoising of MR data based on salient features matching," Computer Methods and Programs in Biomedicine, Volume 105, Issue 2, February 2012, Pages 131-144.

This is a fast and robust implementation of the popular Nonlocal Means for MRI-Rician denoising. It works by computing the non-local weights based on distances in a features space comprising the local mean value and gradients of the image.

It can reach an acceleration factor of 20x over the original implementation, with an improved performance for medium-low SNR images (in the figure, (1) is the original Non-local Means and (2) is generated with this software).

We use a bias correction step for Rician noise based on the well-known Conventional Approach.

C++/ITK version, can be compiled as either a standalone or a Slicer plugin: [C++/ITK]

An equivalent (but slower) Maltlab code: [Matlab]