Non-local means
Non-local means is an algorithm in image processing for image denoising. Unlike "local mean" filters, which take the mean value of a group of pixels surrounding a target pixel to smooth the image, non-local means filtering takes a mean of all pixels in the image, weighted by how similar these pixels are to the target pixel. This results in much greater post-filtering clarity, and less loss of detail in the image compared with local mean algorithms.[1]
If compared with other well-known denoising techniques, non-local means adds "method noise" (i.e. error in the denoising process) which looks more like white noise, which is desirable because it is typically less disturbing in the denoised product.[2] Recently non-local means has been extended to other image processing applications such as deinterlacing[3] and view interpolation.[4]
Definition
Suppose is the area of an image, and and are two points within the image. Then, the algorithm is:[5]
where is the filtered value of the image at point , is the unfiltered value of the image at point , is the weighting function, and the integral is evaluated over .
is a normalizing factor, given by:
Common weighting functions
The purpose of the weighting function, , is to determine how closely related the image at the point is to the image at the point . It can take many forms.
Gaussian
The Gaussian weighting function sets up a normal distribution with a mean, and a variable standard deviation:[6]
where is the filtering parameter (i.e., standard deviation) and is the local mean value of the image point values surrounding .
Discrete algorithm
For an image, , with discrete pixels, a discrete algorithm is required.
where is given by:
Then, for a Gaussian weighting function,
where is given by:
where and is a square region of pixels surrounding and is the number of pixels in the region .
See also
References
- ↑ Buades, Antoni (20–25 June 2005). "A non-local algorithm for image denoising". Computer Vision and Pattern Recognition, 2005. 2: 60–65. doi:10.1109/CVPR.2005.38.
- ↑ Buades, Antoni. "On image denoising methods" (PDF). 123 Seminars Only.
- ↑ Dehghannasiri, R.; Shirani, S. (2012). "A novel de-interlacing method based on locally-adaptive Nonlocal-means".
- ↑ Dehghannasiri, R.; Shirani, S. (2013). "A view interpolation method without explicit disparity estimation".
- ↑ Buades, Antoni. "Non-Local Means Denoising". Image Processing On Line.
- ↑ Buades, Antoni. "On image denoising methods (page 10)" (PDF). 123 Seminars Only.