| Contents | Index |
Note The syntax wiener2(I,[m n],[mblock nblock],noise) has been removed. Use the wiener2(I,[m n],noise) syntax instead. |
J = wiener2(I,[m n],noise)
[J,noise] = wiener2(I,[m n])
wiener2 lowpass-filters a grayscale image that has been degraded by constant power additive noise. wiener2 uses a pixelwise adaptive Wiener method based on statistics estimated from a local neighborhood of each pixel.
J = wiener2(I,[m n],noise) filters the image I using pixelwise adaptive Wiener filtering, using neighborhoods of size m-by-n to estimate the local image mean and standard deviation. If you omit the [m n] argument, m and n default to 3. The additive noise (Gaussian white noise) power is assumed to be noise.
[J,noise] = wiener2(I,[m n]) also estimates the additive noise power before doing the filtering. wiener2 returns this estimate in noise.
The input image I is a two-dimensional image of class uint8, uint16, int16, single, or double. The output image J is of the same size and class as I.
For an example, see Removing Noise By Adaptive Filtering.
wiener2 estimates the local mean and variance around each pixel.
![]()
and
![]()
where
is the N-by-M local
neighborhood of each pixel in the image A. wiener2 then
creates a pixelwise Wiener filter using these estimates,
![]()
where ν2 is the noise variance. If the noise variance is not given, wiener2 uses the average of all the local estimated variances.
Lim, Jae S., Two-Dimensional Signal and Image Processing, Englewood Cliffs, NJ, Prentice Hall, 1990, p. 548, equations 9.44 -- 9.46.

Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.
| © 1984-2012- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |