SciPy

scipy.signal.wiener

scipy.signal.wiener(im, mysize=None, noise=None)[source]

Perform a Wiener filter on an N-dimensional array.

Apply a Wiener filter to the N-dimensional array im.

Parameters:
im : ndarray

An N-dimensional array.

mysize : int or array_like, optional

A scalar or an N-length list giving the size of the Wiener filter window in each dimension. Elements of mysize should be odd. If mysize is a scalar, then this scalar is used as the size in each dimension.

noise : float, optional

The noise-power to use. If None, then noise is estimated as the average of the local variance of the input.

Returns:
out : ndarray

Wiener filtered result with the same shape as im.