Main Content

deconvwnr

Imagen de Blur usando el filtro Wiener

Descripción

ejemplo

J = deconvwnr(I,psf,nsr) devolves image using the Wiener filter algorithm, devolviendo la imagen desenfocada . es la función de propagación de puntos (PSF) con la que se conectó. es la relación de potencia de ruido a señal del ruido aditivo.IJpsfInsr El algoritmo es óptimo en un sentido de error cuadrado menos medio entre las imágenes estimadas y las verdaderas.

J = deconvwnr(I,psf,ncorr,icorr) devolves image , donde está la función de autocorrelación del ruido y es la función de autocorrelación de la imagen original.Incorricorr

J = deconvwnr(I,psf) devolves image using the Wiener filter algorithm with no estimated noise.I En ausencia de ruido, un filtro Wiener es equivalente a un filtro inverso ideal.

Ejemplos

contraer todo

Lea la imagen en el espacio de trabajo y muéstrala.

I = im2double(imread('cameraman.tif')); imshow(I); title('Original Image (courtesy of MIT)');

Simular un desenfoque de movimiento.

LEN = 21; THETA = 11; PSF = fspecial('motion', LEN, THETA); blurred = imfilter(I, PSF, 'conv', 'circular'); figure, imshow(blurred)

Simular ruido aditivo.

noise_mean = 0; noise_var = 0.0001; blurred_noisy = imnoise(blurred, 'gaussian', ...                         noise_mean, noise_var); figure, imshow(blurred_noisy) title('Simulate Blur and Noise')

Intente la restauración sin hacer ruido.

estimated_nsr = 0; wnr2 = deconvwnr(blurred_noisy, PSF, estimated_nsr); figure, imshow(wnr2) title('Restoration of Blurred, Noisy Image Using NSR = 0')

Intente la restauración utilizando una mejor estimación de la relación ruido-señal-potencia.

estimated_nsr = noise_var / var(I(:)); wnr3 = deconvwnr(blurred_noisy, PSF, estimated_nsr); figure, imshow(wnr3) title('Restoration of Blurred, Noisy Image Using Estimated NSR');

Argumentos de entrada

contraer todo

Imagen borrosa, especificada como una matriz numérica de cualquier dimensión.

Tipos de datos: single | double | int16 | uint8 | uint16

Función de dispersión de puntos, especificada como una matriz numérica.

Tipos de datos: double

Relación ruido-señal, especificada como una matriz escalar o numérica no negativa del mismo tamaño que la imagen, .I Si es una matriz, representa el dominio espectral.nsr Especificar para el equivale a crear un filtro inverso ideal.0nsr

Tipos de datos: double

Función de autocorrelación del ruido, especificada como una matriz numérica de cualquier tamaño o dimensión, sin exceder la imagen original.

  • Si la dimensionalidad coincide con la dimensionalidad de la imagen, los valores corresponden a la autocorrelación dentro de cada dimensión.ncorrI

  • Si es un vector y también es un vector, los valores en representan la función de autocorrelación en la primera dimensión.ncorrpsfncorr

  • Si es un vector y es una matriz, la función de autocorrelación 1-D se extrapola mediante simetría a todas las dimensiones que no son singleton de .ncorrpsfpsf

  • Si es un escalar, el valor representa la potencia del ruido de la imagen.ncorr

Tipos de datos: double

Función de autocorrelación de la imagen, especificada como una matriz numérica de cualquier tamaño o dimensión, sin exceder la imagen original.

  • Si la dimensionalidad coincide con la dimensionalidad de la imagen, los valores corresponden a la autocorrelación dentro de cada dimensión.icorrI

  • Si es un vector y también es un vector, los valores en representan la función de autocorrelación en la primera dimensión.icorrpsficorr

  • Si es un vector y es una matriz, la función de autocorrelación 1-D se extrapola mediante simetría a todas las dimensiones que no son singleton de .icorrpsfpsf

  • Si es un escalar, el valor representa la potencia del ruido de la imagen.icorr

Tipos de datos: double

Argumentos de salida

contraer todo

Imagen descolorada, devuelta como una matriz numérica. tiene el mismo tipo de datos que .JI

Sugerencias

  • La imagen de salida podría exhibir el timbre introducido por la transformación discreta de Fourier utilizada en el algoritmo.J Para reducir el timbre, utilice antes de llamar a .I = edgetaper(I,psf)deconvwnr

Referencias

[1] Gonzalez, R. C., and R. E. Woods. Digital Image Processing. Addison-Wesley Publishing Company, Inc., 1992.

Introducido antes de R2006a