Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

deconvreg

Imagen Deblur utilizando filtro regularizado

Descripción

ejemplo

J = deconvreg(I,psf) desconvolves la imagen usando el algoritmo de filtro regularizado, devolviendo la imagen desborrosa.IJ La suposición es que la imagen fue creada Convolving una imagen verdadera con una función de propagación de puntos (PSF), y posiblemente añadiendo ruido.Ipsf El algoritmo es un óptimo restringido en el sentido de menor error cuadrado entre las imágenes estimadas y verdaderas bajo el requisito de preservar la suavidad de la imagen.

J = deconvreg(I,psf,np) Especifica la potencia de ruido aditivo,.np

J = deconvreg(I,psf,np,lrange) especifica el rango, donde se realiza la búsqueda de la solución óptima.lrange El algoritmo encuentra un multiplicador de Lagrange óptimo dentro del rango.lagralrange

J = deconvreg(I,psf,np,lrange,regop) restringe la deconvolución mediante el operador de regularización.regop El operador de regularización predeterminado es el operador Laplacian, para conservar la suavidad de la imagen.

[J,lagra] = deconvreg(___) genera el valor del multiplicador de Lagrange, además de la imagen restaurada,.lagraJ

Ejemplos

contraer todo

Cree una imagen de muestra.

I = checkerboard(8);

Crear PSF y utilizarlo para crear una versión borrosa y ruidosa de la imagen de entrada.

PSF = fspecial('gaussian',7,10); V = .01; BlurredNoisy = imnoise(imfilter(I,PSF),'gaussian',0,V); NOISEPOWER = V*prod(size(I));

Deblur la imagen.

[J LAGRA] = deconvreg(BlurredNoisy,PSF,NOISEPOWER);

Visualice las distintas versiones de la imagen.

subplot(221); imshow(BlurredNoisy); title('A = Blurred and Noisy'); subplot(222); imshow(J); title('[J LAGRA] = deconvreg(A,PSF,NP)'); subplot(223); imshow(deconvreg(BlurredNoisy,PSF,[],LAGRA/10)); title('deconvreg(A,PSF,[],0.1*LAGRA)'); subplot(224); imshow(deconvreg(BlurredNoisy,PSF,[],LAGRA*10)); title('deconvreg(A,PSF,[],10*LAGRA)');

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

PSF, especificado como una matriz numérica.

Tipos de datos: double

Potencia de ruido, especificada como un escalar numérico.

Tipos de datos: double

Rango de búsqueda, especificado como un escalar numérico o un vector numérico de 2 elementos. Si es un escalar, el algoritmo asume que es igual a; se omite el valor.lrangelagralrangenp

Tipos de datos: double

Operador de regularización, especificado como una matriz numérica. Las dimensiones de la matriz no deben exceder las dimensiones de la imagen,.regopI Las cotas no singleton deben corresponder a las dimensiones no singleton de.psf

Tipos de datos: double

Argumentos de salida

contraer todo

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

Multiplicador de Lagrange, devuelto como un escalar numérico.

Sugerencias

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

Introducido antes de R2006a