Red de conocimiento informático - Conocimiento sistemático - Filtrar código fuente de matlab

Filtrar código fuente de matlab

clc borrar todo;

Leer imagen original

Formato largo

Blur=imread('fig525(b).BMP');

Gráfico de rama (1, 2, 1); imshow (borroso); título ("imagen original");

Función de filtro Wiener de diseño propio

k = 0,0025

p>

[m,n]=tamaño(borroso);

Espectro=cero(m,n);

h=cero(m,n);

p>

Para u=1: m

Para v=1: n

h(u, v)=exp(-k*( (u-m/2)^ 2 (v-n/2)^2)^(5/6));

espectro(u, v)=h(u, v)^2;

Fin

Fin

f=double(fuzzy);

f 1 = desplazamiento FFT(FFT 2(f));

HW=H ./(espectro 0.001);

restore1=HW. * f 1;

restaurado = real(IFFT 2(IFFT shift(restore 1)));

Gráfico de rama (1, 2, 2); ); title ('Filtrado Wiener con función incorporada');

Llamar a la función de filtro Wiener proporcionada por matlab

Figura;

HW 1 = real (IFFT 2(IFFT shift(H))); Ingrese el espacio vacío.

resultado 1 = deconvwnr(blur,hw1,0.001);

resultado 2 = IFFT shift(resultado 1); Intercambio de 4 cuadrantes.

Gráfico de rama (1, 2, 1); imshow (resultado 2, []); Título ('Llamada a la función de filtro Wiener');