Fast Non-Local Means 1D, 2D Color and 3D

版本 1.4.0.0 (29.4 KB) 作者: Dirk-Jan Kroon
NL-means image and signal denoising filter based on similarity between pixel patches
13.3K 次下载
更新时间 2010/9/7

查看许可证

This function NLMF performs Non-Local Means noise filtering of 1D signal, 2D grey/color or 3D image data. The function is partly c-coded for cpu efficient filtering. Suitable for almost every image data type such as MRI, CT and normal photos.

Warning !, Image filtering removes noise, but important (medical) details can also be lost, (see discussion in comments).

Principle NL-Mean filter:
A local pixel region (patch) around a pixel is compared to patches of pixels in the neighbourhood (or in the whole image). The centerpixels of the patches are averaged depending on the quadratic pixel distance between the patches.

Function:
J = NLMF( I, Options);
inputs,
I : 1D signal, 2D grey/color or 3D image data, of type Single or Double in range [0..1]
Options : Struct with options, such as filtering strength
outputs,
J : The NL-means filtered image or image volume

Function(2):
J = NLMF2Dtree(I, Options);
Same as NLMF but will search for the best matches in the whole 2D images using a kd-tree (is still extremely slow)

Literature:
- Non local filter proposed for A. Buades, B. Coll and J.M. Morel "A non-local algorithm for image denoising"
- Basic Matlab implementation of Jose Vicente Manjon-Herrera

引用格式

Dirk-Jan Kroon (2024). Fast Non-Local Means 1D, 2D Color and 3D (https://www.mathworks.com/matlabcentral/fileexchange/27395-fast-non-local-means-1d-2d-color-and-3d), MATLAB Central File Exchange. 检索时间: .

MATLAB 版本兼容性
创建方式 R2010a
兼容任何版本
平台兼容性
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
版本 已发布 发行说明
1.4.0.0

Added KN-tree based search

1.3.0.0

Added 1D filtering

1.2.0.0

added warning

1.0.0.0