Red de conocimientos turísticos - Información de alquiler - Traducción de procesamiento de imágenes

Traducción de procesamiento de imágenes

Para una imagen determinada (moon.tif) o una imagen en escala de grises autoseleccionada:

1): el ruido gaussiano y el ruido de sal y pimienta se agregan a la imagen respectivamente.

2): Realice un filtrado espacial en el área central (100*100) de la imagen ruidosa para eliminar el ruido tanto como sea posible.

3): Filtra el área central (100*100) de la imagen ruidosa en el dominio de la frecuencia para eliminar el ruido tanto como sea posible.

Descripción técnica:

Agregue ruido gaussiano y ruido de sal y pimienta a la imagen; procese la imagen que contiene ruido gaussiano y ruido de sal y pimienta para que la imagen procesada sea más clara que la imagen original. .

Las técnicas a aplicar incluyen:

a gtAgregar ruido a la imagen

b gtSeleccionar el área central

c gtAgregar ruido a la imagen Seleccione el área para eliminar ruido.

d gt regenera la imagen.

E gt Fórmula gaussiana: utilice exp(-(u ^ 2 v ^ 2)/(2 *(d0 ^ 2)) al construir un filtro de paso bajo gaussiano.

Discusión de resultados:

Los siguientes son los resultados de las pruebas de diferentes filtros para diferentes procesamientos de ruido.

Consulte los siguientes resultados de las pruebas para su discusión:

A(011 ) se utiliza fspecial('Gaussian') suaviza el efecto del filtrado espacial, pero el efecto no es el mejor porque minimiza el ruido y desenfoca la imagen;

A(012) es el resultado del dominio de frecuencia. El filtrado es un filtro de paso bajo gaussiano, por lo que habrá líneas negras, que generalmente se procesan.

A (021) es el efecto de usar el filtro mediano espacial medfilt2 2 (), que tiene buena calidad. efecto de reducción de ruido, la imagen es clara.

A(022) es el resultado del filtrado en el dominio de la frecuencia, que es lo mismo que A(012). el efecto es promedio.

Resultados de la prueba:

El diagrama esquemático del procesamiento del ruido gaussiano y del ruido entrecortado es el siguiente:

Como se muestra en la imagen. figura:

Imagen (A00): imagen original

p>

Imagen (A01): adición de ruido gaussiano

Imagen (A011): Centro 100*100 espacial filtrado de la imagen (A01)

Gráfico (A012): El gráfico de filtro de dominio de frecuencia (A01) centrado en 100*100 es como se muestra en la figura:

Imagen (. A00): Imagen original

Imagen (A02): Ruido de sal y pimienta

Gráfico (A021): 100*100 en el centro Filtrar el gráfico (A02) en el dominio espacial.

Figura (A022): Filtrar el gráfico (A02) en el dominio de frecuencia en el centro de

(A00) (A02)<. p>(A021) (A022)

Apéndice:

Código fuente 1: Procesamiento de ruido gaussiano

f = im read(' moon. . TIF ') ;

J=imnoise(f,'Gaussian',0.05,0.05);Agregar ruido gaussiano

Filtrado espacial

r =[219 319 319 219] ;

c =[129 129 229 229];

BW=roipoly(J, c, r);

h=fspecial( 'Gaussiano', [5 5]);

A011=roifilt2(J, h, BW);

Figura, imshow(a 011);

Filtrado de dominio de frecuencia

f1=imcrop(fn, [129 219 99 100]);

Recorta una imagen de ventana con un tamaño de 100*100.

F2 =[255 255];

Crear nueva imagen

F2 = uint 8(F2);

f2=padarray( f2, [50 49], 255);

Expande la nueva imagen a una imagen en negro de 100*100.

f2=padarray(f2,[218 129],0);

Agrega blanco alrededor de la nueva imagen para que tenga el mismo tamaño que la imagen de la luna.

fn = fn-F2;

Obtén una imagen de luna negra en el área central de 100*100.

PQ = tamaño acolchado(tamaño(f 1));

[u, v] = dftuv(PQ(1), PQ(2)); >d0 = 0.2 * PQ(2);

hh=exp(-(u.^2 v.^2)/(2*(d0^2)));

Construir filtro de paso bajo gaussiano

h1=dftfilt(f1, hh);

A012=padarray(h1, [218 129], 0);

Amplíe h1 al tamaño de la imagen de la luna.

a 012 = uint 8(a 012) fn;

Se obtiene la imagen lunar procesada del área central de 100*100.

Figura, im show(a 012);

Código fuente 2: procesamiento del ruido de sal y pimienta

f = im read(' moon . TIF '

fn=imnoise(f,'salt & pepper',0.05);

Agregar ruido de sal y pimienta

Filtrado espacial

f1=imcrop(fn,[129 219 99 100]);

Recorta la imagen de la ventana con un tamaño de 100*100.

F2 =[255 255];

Crear nueva imagen

F2 = uint 8(F2);

f2=padarray( f2, [50 49], 255);

Expande la nueva imagen a una imagen en negro de 100*100.

f2=padarray(f2,[218 129],0);

Agrega blanco alrededor de la nueva imagen para que tenga el mismo tamaño que la imagen de la luna.

fn = fn-F2;

Obtén una imagen de luna negra en el área central de 100*100.

h=medfilt2(f1,'metric');

Procesamiento mediano de f1.

A021=padarray(h, [218 129], 0);

Ampliar h al tamaño de la imagen de la luna.

a 021 = a 021 fn;

Se obtiene la imagen lunar procesada del área central de 100*100.

Figura, im show(a 021);

Filtrado de dominio de frecuencia

f1=imcrop(fn, [129 219 99 100]); >

Recorta la imagen de la ventana con un tamaño de 100*100.

F2 =[255 255];

Crear nueva imagen

F2 = uint 8(F2);

f2=padarray( f2, [50 49], 255);

Expande la nueva imagen a una imagen en negro de 100*100.

f2=padarray(f2,[218 129],0);

Agrega blanco alrededor de la nueva imagen para que tenga el mismo tamaño que la imagen de la luna.

fn = fn-F2;

Obtén una imagen de luna negra en el área central de 100*100.

PQ = tamaño acolchado(tamaño(f 1));

[u, v] = dftuv(PQ(1), PQ(2)); >d0 = 0.1 * PQ(2);

hh=exp(-(u.^2 v.^2)/(2*(d0^2))); Construir un paso bajo gaussiano. filter

h1=dftfilt(f1, hh);

A022=padarray(h1, [218 129], 0

Expandir h1 a la luna; tamaño de la imagen.

A022 = uint 8(A022) fn;

Se obtiene la imagen lunar procesada del área central de 100*100.

Imagen, estoy mostrando(A022);