Está en la página 1de 10

Gua

Facultad: Ingeniera. Escuela: Biomdica

TRATAMIENTO DEL RUIDO


Objetivo General

Asignatura: Imgenes Mdicas

Que el estudiante sea capaz de caracterizar los principales tipos de ruido que pueden estar presentes en una imagen. Que el estudiante sea capaz de aplicar, segn sea el caso, las tcnicas de reduccin de ruido ms oportunas

Recomendaciones Al finalizar la prctica, el laboratorio se debe dejar en la misma condicin en que se encontr.

Equipo Computadora Personal con Windows y MatLab

Introduccin Terica Las imgenes se adquieren por mtodos foto electrnicos o fotoqumicos. Los dispositivos sensores tienden a degradar la calidad de las imgenes al introducir ruido, deformaciones geomtricas y/o borrosas debido al movimiento o desenfoque de la cmara. Una de las preocupaciones primarias del procesamiento digital de imgenes es aumentar la calidad de la imagen y moderar la degradacin introducida por los sensores y dispositivos de adquisicin. Las tcnicas de restauracin de imgenes estn interesadas primariamente por reconstruir o recobrar una imagen que ha sido degradada Una discusin ms detallada sobre el tratamiento de ruido en imgenes digitales se encuentra en la tesis Diseo y construccin de un sistema de captacin y procesamiento de imgenes digitales. de Welmer Toms Cruz Sosa, Nstor J.

Gua

Maccagno, Luis A. Marn Villanueva. pag. 78-97. Adems se puede encontrar informacin til en la bibliografa dada al final de esta gua.

Procedimiento

1. Encienda la computadora y corra el programa MATLAB. 2. Digite en la ventana de comandos: >> nrfiltdemo 3. A continuacin aparecer la siguiente ventana la cual permite la exploracin de la reduccin de ruido en imgenes utilizando para ello tecnicas de filtrado lineales y no lineales aplicada a diferentes tipos de ruido. La imagen a la izquierda de la ventana es la imagen original. Puede utilizar el men que se encuentra bajo ella para seleccionar otra imagen. La imagen al centro es la imagen original con el ruido elegido sumado. Con el men Image Noise Type, sepuede elegir entre tres tipos de ruidos (Salt&Pepper, Gaussian, Speckle). Con el campo que se encuentra bajo este menu, se pueden variar las caractersticas del ruido seleccionado. Para aplicar el ruido seleccionado basta con dar un click en Add Noise. La imagen a la derecha muestra el resultado de la aplicacin de un filtro de remocin de ruido a la imagen del centro. Use los menes debajo de esta tercera imagen para seleccionar el filtro de reduccin del ruido y el tamao de los vecinos. Para aplicar el filtro basta con dar un click sobre Apply Filter.

Gua

4. Escriba la siguiente funcin que aade ruido impulsivo a una imagen bidimensional:
function b=ruidoimp(a,p,imin,imax) % Aade ruido impulsivo a una imagen % b=ruidoimp(a,p,imin,imax) % b: imagen de salida con ruido % a: imagen de entrada % p: probabilidad del ruido % imin: valor del impulso mnimo % imax: valor del impulso mximo % [m,n]=size(a); a=double(a); np=ceil(p*m*n); turno=0; b=a; for inp=1:np

Gua

k=ceil(m*rand); l=ceil(n*rand); if turno==0 turno=1; b(k,l)=imax; else turno=0; b(k,l)=imin; end end b=uint8(b); 5. En la ventana de comandos digite lo siguiente:

a=imread('flowers.tif'); a=rgb2gray(a); b=ruidoimp(a,0.1,20,256); figure imshow(a); figure imshow(b); 6. Compare ambas imagenes. 7. Cambie los parmetros de la funcin ruidoimp y evalue el efecto que ello causa en la imagen. 8. Ahora utilizaremos diferentes funciones que se encuentran en el Image Processing Toolbox para aadir ruido a una imagen determinada. c=imnoise(a,salt & pepper,0.02); %Ruido sal y pimienta d=imnoise(a,speckle,0.05); %Ruido multiplicativo e=imnoise(a,gaussian,0,0.02); %Ruido blanco Gaussiano 9. Estas imgenes sern utilizadas en la siguiente parte.

Gua

PARTE II. Tecnicas de reduccin de ruido en el dominio del espacio. Implementacin directa de filtros digitales FIR de dos dimensiones.
10. Los filtros digitales de dos dimensiones con respuesta al impulso finita real (FIR) son sistemas bidimensionales lineales de fase invariante. El filtro de promedio de movimiento es el ms simple de los filtros digitales FIR bidimensionles pasa-bajas. Es muy efectivo en remover ruido blanco aditivo Gaussiano. Sin embargo, tiende a hacer borrosos los bordes y los detalles de la imagen (por ejemplo lneas) y degrada la calidad de la imagen. La implementacin del filtro de promedio de movimiento puede realizarse usando el siguiente archivo: function b=movav(a,mw,nw) % % Implementa el filtro de promedio de movimiento % % b=movav(a,mw,nw) % % b: imagen de salida filtrada % a: imagen de entrada % mw: ancho de la ventana % nw: alto de la ventana % h=ones(nw,mw)/(mw*nw); b=uint8(filter2(h,a,'valid')); 11. El filtro promedio de movimiento es la convolucin de una mscara con la imagen, si la mscara es de 33n quedara de la siguiente forma:

Gua

12. Tambin pueden usarse las siguientes mscaras:

13. Use las mscaras anteriores para filtrar las imagenes c,d y e. h1=[1,1,1;1,2,1;1,1,1]/10; f=uint8(filter2(h1,c,'valid')); g=uint8(filter2(h1,d,'valid')); h=uint8(filter2(h1,e,'valid')); figure (4) imshow(f) figure (5) imshow(g) figure (6) imshow(h) 14. Para cual tipo de ruido funciona mejor la mscara? ______________________________________________________________ ___________________________________________________ 15. Qu observa sobre los detalles de la imagen filtrada? ______________________________________________________________ ______________________________________________________________ ______________________________________________________________ 16. Repita los pasos anteriores para la siguiente mscara: h1=[1,2,1;2,4,2;1,2,1]/16;

Filtro de mediana
17. El ruido en las imgenes digitales comnmente aparece en altas frecuencias del espectro de la imagen. Por lo tanto, un filtro digital pasa bajos puede utilizarse para remover el ruido. Sin embargo, los filtros lineales pasa bajos tienden a manchar los detalles de imagen (p. ej. lneas, esquinas), que tambin tienen su potencia en las altas frecuencias. Se han propuesto filtros no lineales basa bajos que remueven el ruido efectivamente y preservan los bordes y detalles de la imagen. Uno de estos filtros es el filtro de mediana.

Gua

18. Pruebe el filtro de mediana para eliminar el ruido impulsivo de la imagen b: h=medfilt2(b,[3,3]); figure (7); imshow (b); figure (8); imshow (h); 19. Que sucede a medida se aumenta el tamao del filtro por ejmplo a 55?___________________________________________________________ ________________________________________

Filtro de mediana multietapa.


20. En el anlisis terico de los filtro de mediana, especialmente el determinstico, se asumen varias cosas, por ejemplo que la imagen consiste de vecinos y bordes constantes. En realidad la imagen tiene detalles finos, p. ej. lneas y esquinas pronunciadas, las cuales son muy valiosas para la visin humana. Estos detalles se destruyen por medianas que tienen ventanas relativamente grandes (mayores que 55). Es el proceso de ordenamiento el que destruye la informacin estructural y espacial de la vecindad. Por ello, se han hecho varios esfuerzos para tomar en cuanta la informacin estructural. Tal modificacin de la mediana lleva a los filtros de mediana multietapas. Los filtros de mediana multietapas conservan los detalles en las direcciones horizontal, vertical y diagonal, porque usan subfiltros que son sensibles a estas direcciones. A continuacin se presenta el programa que realiza el filtro de mediana multietapas. function b=muletmed(a,nw,mw) % % b=muletmed(a,mw,nw) % % a: imagen de entrada. % b: imagen de salida. % a=double(a); b=nlfilter(a,[5,5],median(x(3,1:3)),median(x(1:3,3)),median(x(3,3:5)),median (x(3:5,3)),x(3,3)])); b=uint8(b); Filtros digitales basados en estadstica de ordenamiento. 21. El filtro de mediana y sus modificaciones son casos especiales de una gran clase de filtros que estn basados en la estadstica de ordenamiento. Tales filtros se basan es estimadores-L o son extensiones del filtro de mediana. Se

Gua

disean para lograr varios criterios, p. ej. preservacin de los bordes, robustez, adaptacin a la estadstica del ruido o preservacin de los detalles de la imagen. Un filtro de mximo puede remover efectivamente impulsos negativos (lunares negros) en la imagen, mientras que el filtro de mnimo puede remover los impulsos positivos (lunares blancos). Ambos fallan en remover el ruido impulsivo mezclado, porque los filtros de mximo y mnimo tienden a mejorar los impulsos negativos y positivos respectivamente. Sin embargo, la cascada de los filtros mx y mn puede remover el ruido impulsivo mezclado efectivamente. Aunque su rendimiento es generalmente inferior que el filtro de mediana. Los filtros de mximo y mnimo tienen buenas propiedades de preservacin de bordes. Su desventaja es que tiende a intensificar las regiones brillantes y oscuras. 22. Construya un filtro de mximo para eliminar el ruido impulsivo de la imagen g function b=run_max(a,nw,mw) % % b=run_max(a,mw,nw) % % a: imagen de entrada. % b: imagen de salida. % mw: ancho de la ventana. % nw: alto de la ventana. % a=double(a); b=ordfilt2(a,nw*mw,ones(nw,mw)); b=uint8(b); 23. Pruebe el programa con la siguiente imagen: g=ruidoimp(a,0.1,3,20); e=run_max(g,3,3);

Filtros estadsticos de ordenamiento adaptativo


24. Los filtros descritos antes estn por lo comn optimizados para un tipo de ruido especfico y algunos para un tipo de seal especfico. Sin embargo, esto no es por lo general el caso en muchas aplicaciones de filtrado no lineal, especialmente en el procesamiento de imgenes. Las imgenes pueden modelarse como un proceso estocstico bidimensional, cuya estadstica vara en las diferentes regiones de la imagen. Las imgenes son procesos no estacionarios. Por lo tanto las estadsticas del ruido, es decir la desviacin estndar del ruido y la funcin de densidad de probabilidad del ruido, varan

Gua

de aplicacin en aplicacin. Algunas veces, las caractersticas del ruido varan en la misma aplicacin de una imagen a la siguiente. Tales casos son ruido del canal en la transmisin de imgenes y ruido atmosfrico en las imgenes por satlite. En estos ambientes, los filtros no adaptativos no funcionan bien, porque sus caractersticas dependen de las caractersticas del ruido y la seal, las cuales son desconocidas. Por ello, los filtros adaptativos son la solucin natural en tales casos. Cree un programa para realizar un filtro adaptativo de menor error cuadrado medio. function b=loc_adap(a,sn,nw,mw) % % rutina para el filtrado adaptativo 2-d % % b=loc_adap(a,sn,nw,mw) % % a: imagen de entrada. % b: imagen de salida. % sn: varianza del ruido. % mw: ancho de la ventana. % nw: alto de la ventana. % a = double(a); s = filter2(ones(nw,mw)/(nw*mw),a,'same'); sx = nlfilter(a,[nw mw],'std2(x(:))'); snx = sn.*ones(size(a))./sx; snx = (snx>1)+snx.*(snx<=1); ime = round( (ones(size(a))-snx) .* a+snx.*s) .*(s~=0)+a.*(s==0); b = uint8(ime); 25. Pruebe el filtro adaptativo MMSE (minimal Mean Square Error) con la imagenes c,d y e. e=loc_adap(c,20,3,3); figure imshow(e) Filtros en el dominio de la frecuencia 26. Utilice el filtro de Wiener incorporado en la caja de herramientas de procesamiento ruido %presenta el valor del ruido [f,ruido]=wiener2(d,[3,3]);%determina la potencia del ruido aditivo. figure imshow(f)

Gua

Anlisis de resultados 1. Presente sus observaciones y conclusiones. 2. Escriba las caractersticas que observ en los tres tipos de ruido vistos en la prctica. 3. Que tipo de filtro recomienda usar para eliminar cada tipo de ruido y por qu? 4. Por qu las imgenes filtradas son ms pequeas que las originales? 5. Cmo se evita, en la mayora de los algoritmos vistos, la prdida de los bordes y propiedades de las imgenes? 6. Qu sucede con el filtro de mximo cuando la imagen tiene ruido sal y pimienta mezclado? Compruebe su explicacin al aplicar el filtro a la imagen b.

Investigacin complementaria

1. Qu es el ruido granular de pelcula y cual es el filtro adecuado para eliminarlo? 2. Investigue acerca del filtro Wiener. 3. Presente un resumen acerca del filtro de mnimo error cuadrado medio. 4. Investigue sobre los filtros homorfos

Bibliografa

Digital Image Processing Algorithms. Ioannis Pitas. Diseo y construccin de un sistema de captacin y procesamiento de imgenes digitales. Tsis: Welmer Toms Cruz Sosa, Nsto J. Maccagno, Luis A. Marn Villanueva. Anlisis Numrico y visualizacin Grfica con MATLAB. Shoichiro Nakamura. The MathWorks Inc. Manual del usuario de MATLAB.

También podría gustarte