You are on page 1of 5

UNIVERSIDAD DEL BÍO BÍO

c FACULTAD DE INGENIERÍA 25, Noviembre 2008 1

FILTRADO DE IMAGENES
Sergio Chandia Neira, Roberto Lagos Correa, Carlos Medina Del Rio
Daniel Rivera Guajardo y Felipe Silva Burgos
Profesora Marı́a Nathalie Risso

Abstract—El filtrado de imagen o procesamiento de II. Objetivos


señales, consiste en la modificación de una matriz origi-
nal, representando una imagen mediante procedimientos - Analizar y describir la composición de una imagen.
matemáticos, esta transformación se puede realizar por - Definir filtrado de imágenes.
la técnica espacial la cual modifica pı́xeles o por filtraje - Explicar los diferentes tipos de filtros utilizados.
frecuencial que opera en base al dominio de la frecuencias,
estos dos métodos son construidos en base de diferentes - Investigar el tolboox MATLAB de proceso de
filtros, con el fin de suavizar, modificar o resaltar imágenes. imágenes.
El procedimiento matemático para el filtrado es complejo, - Explicar diferentes tipos de aplicaciones del filtrado de
por esto destacan software como MATLAB que contiene
diferentes aplicaciones de filtrado mediante sus toolboox
imagen.
- Ejemplos en MATLAB.

III. Desarrollo
Abstract—The filtering or image signal processing, is a
modification of an original matrix, which represents an im- A. Conceptos sobre imágenes digitales
age using mathematical procedures. This transformation
can be done by the technical space, which amends pixels,
Las imágenes digitales son fotos electrónicas que están
or by filtering frequency, which operates on the basis of the compuestas por pequeños elementos llamados pı́xeles, que
frequency domain. These two methods are built based on son la porción más pequeña de una imagen. Estas imágenes
different filters, in order to soften, modify or highlight the son visualizadas por una herramienta llamada histograma,
objects of the images. The mathematical procedure for fil-
tering is complex, and by this reason we used softwares, as que con una simple mirada puede proporcionar una idea
MATLAB, that contain different applications from filtrate muy aproximada de la distribución de niveles de gris, el
through his toolboox. contraste que presenta la imagen y alguna pista del método
más adecuado para manipularla de forma digital. Una fo-
tografı́a la podemos representar de dos tipos, como una
I. Introducción imagen de escala de grises o de color RGB (existen otros
modos, pero no son muy utilizadas como el CMYK). La
caracterı́stica principal de la escala de grises es la de repre-
E L filtrado de imagen o procesamiento de señales es una
técnica que consiste en modificar matemáticamente la
señal original a través de diferentes aplicaciones de fil-
sentar nuestra figura como una matriz de dos dimensiones,
cuyos valores varı́an en un rango de 0 a 255, representando
tros. El procesamiento de señales se realiza con el fin desde el color negro (0) hasta el blanco (255). El modo
de obtener una imagen capaz de entregar datos, facili- RGB (Red, Green, Blue), a diferencia del anterior, esta
tando cualquier análisis especı́fico, según la aplicación que representado por una matriz tridimensional. Esta repre-
se requiera. El filtrado de imagen es una técnica uti- sentación es más compleja de trabajar, ya que posee tres
lizada en diferentes áreas como la medicina, facilitando escalas de colores, la roja, verde y azul, y por lo tanto,
el análisis de diagnostico de quemaduras, reproducción de cada pı́xel toma tres valores y tres representaciones de his-
bacterias cancerı́genas, también aporta en el área de la in- tograma distintas.
genierı́a, en datos de resistencia de materiales, calidad de
soldadura, realizar aplicaciones en el área de la fı́sica, estu- B. Concepto de filtrado de imagen
dios geográficos, destacando en el área policial abarcando El filtrado de imagen consiste en aplicar una serie de op-
la búsquedas fisonómicas, analiza datos dactilares, entre eraciones algorı́tmicas que representan un filtro en partic-
otros. ular. Estos filtros son aplicados a los pı́xel que construyen
Con el propósito de conocer en qué consiste y cómo se la imagen digital. El objetivo fundamental de este proceso
aplica el procesamiento de imagen, el desarrollo del tema es modificar nuestra imagen original a nuestros requerim-
explica mediante tópicos, la composición de una imagen, ientos, los cuales pueden ser para eliminar ruidos, poder
los fundamentos del procesamiento de señales o filtrado mejorar su calidad gráfica, resaltar información, modificar
y los diferentes filtros que utiliza, finalizando con aplica- su escala de colores o conseguir efectos especiales.
ciones en el toolbox de procesamiento digital de imagen Dependiendo de la aplicación o tratamiento que se le
en MATLAB, desarrollando un ejemplo orientado al área quiera realizar a la imagen, tenemos diferentes técnicas
gráfica. de mejoramiento o filtrado. Como la imagen se procesa
con el fin de adecuarla para una aplicación especı́fica o un
procesamiento posterior, cada filtrado es particular y esto
conlleva a la decisión de cual técnica se utilizará. El proce-
samiento de imagen se divide en dos campos, uno de los
2 UNIVERSIDAD DEL BÍO BÍO
c FACULTAD DE INGENIERÍA 25, Noviembre 2008

campos es el frecuencial, que consiste en modificar la serie salida será muy pequeña. Mencionaremos algunas de las
de fourier de la figura, y el segundo método es el dominio máscaras más comunes utilizadas en el filtrado de imagen.
espacial, que se basa en la manipulación de los pı́xeles
pasando la imagen por una series de filtros de diferentes
caracterı́sticas capaces de suavizar, agregar o eliminar rui-
dos, resaltar detalles o reducir contrastes.

C. Filtraje Espacial
Una de las aplicaciones más utilizadas en el tratamiento
de señales es la aplicación de filtrado espacial, que se uti-
liza para resaltar o atenuar detalles para facilitar un proce-
samiento posterior. También podemos decir que el filtrado
espacial es centralizado, ya que modifica cada pı́xel de
acuerdo a los valores que lo rodean. Los filtros espaciales Podemos notar que estas máscaras se caracterizan
los podemos dividir en tres categoras: debido a que los coeficientes de la matriz al sumarse dan
como resultado cero. Como mencionábamos anterior-
C.1 Filtros pasa bajo mente, donde existan pequeñas variaciones de niveles de
Este filtro se caracteriza por atenuar ruidos (ruidos gaus- gris la salida será cercana a cero. También es necesario
siano), también borra los detalles más finos y suaviza las destacar que existen otros tipos de filtros, dependiendo de
imágenes. En este caso se asemeja el nivel de gris de la aplicación que se quiera realizar, los que comentaremos
cada pı́xel al de los vecinos, ası́ los pı́xeles claros u os- a continuación a grandes rasgos:
curos pueden hacerse más grises dependiendo de los valores
vecinos del pı́xel. Cuando queremos filtrar una imagen,
tenemos que tener en consideración que existen diferentes Filtro Sharpen: Este tipo de filtro esta relacionado di-
tipos de máscaras de los filtros pasa bajos, mientras más rectamente con el filtro pasa altos, debido a que
grande sea la máscara, mayor es el efecto de suavizado mejora la nitidez, detalles borrosos y bordes que le son
y mayor el tiempo de trabajo requerido. A continuación caracterı́sticos. Respecto a las máscaras que utiliza,
mencionaremos dos tipos de máscaras de tamaño 3x3, las son parecidas a las mencionadas en el filtro anterior.
que se diferencian por tener coeficientes distintos, lo que Filtro de media: Este tipo de filtro esta vinculado al
hará que una máscara tenga un efecto de difuminado (pro- filtro pasa bajos, ya que su caracterı́stica es la de
ducirá un borrado parcial en la imagen) mayor que la otra. cambiar o reemplazar el pı́xel analizado por la media
del punto y sus valores vecinos, logrando efectos de
suavizado en la imagen. Este tipo de filtro no mod-
ifica los pı́xeles de las imágenes cuando son iguales,
sino que alisa los contornos, haciendo que los objetos
aparezcan menos definidos.
Filtro mediana: Este tipo de filtro se utiliza cuando se
desea una reducción del ruido en vez de difuminar la
imagen a procesar. Este tipo de filtro es utilizado para
eliminar un tipo de ruido impulsivo, que se caracteriza
por la aparición de pı́xeles con valores arbitrarios, los
cuales contrastan con los valores de los pı́xeles vecinos.
Habitualmente el tamaño de la máscara depende de la
cantidad de suavizado que queramos aplicar a una imagen. C.3 Filtros pasa banda
La visualización del resultado es el único medio de saber
si hemos elegido el tamaño adecuado. El principal prob- Este filtro corresponde matemáticamente a la multipli-
lema en la utilización de este filtro para eliminar ruido, es cación de un filtro pasa bajos con un filtro pasa altos, obte-
que hace que los bordes se vean de manera más borrosa, niendo como resultado un filtrado intermedio de los dos
siendo estos los que contienen información de la nitidez de filtros anteriores.
la imagen.
D. Filtrado en frecuencia
C.2 Filtros pasa altos El filtrado de imagen en el dominio de la frecuencia con-
Su principal función es destacar partes más especı́ficas siste en modificar la imagen original en base a la multipli-
de una imagen, como los bordes, entre otros. Para poder cación del espectro en el dominio de la frecuencia. Esto
implementar este filtro es necesario que la máscara con- conlleva a que las variaciones que se realizan no se hacen
tenga valores negativos en el contorno y positivos en el en base a una convolución como en el filtraje espacial, sino
centro. Esto quiere decir que si la máscara esta traba- por una multiplicación de sus factores, generando grandes
jando en zonas donde la imagen tenga pı́xles similares, la ventajas por su facilidad en la aplicación de cálculos. Esta
: FILTRADO DE IMAGENES 3

técnica destaca por dar la posibilidad de seleccionar la di- formación podemos modificar este valor del pı́xel para
rección de filtrado y los intervalos de frecuencia que se procesar la imagen y mejorar algúno dañado.
desean eliminar, siendo más fácil de analizar y ver qué fil- Escala de grises: En Matlab la escala de grises se rep-
tros deseamos utilizar. Para el filtraje en el dominio de resenta por una matriz bidimensional de mxn, donde
la frecuencia tomamos una imagen, la definimos en base n representa el número de pı́xeles de ancho y el m el
a su amplitud y frecuencia para las direcciones de la im- número de pı́xeles de largo. A cada valor de la imagen
agen. Estas dimensiones son conocidas en el dominio de se le asigna un valor que va desde 0 (negro) hasta 255
la frecuencia. Las transformaciones se realizan mediante (blanco).
la transformada de Fourier, y una vez realizado este cam- Escala RGB: Es una imagen que se compone en tres
bio multiplicamos el espectro de la imagen con la máscaras planos, uno para cada color, que representa al rojo,
de filtrado. Después de estos cambios, la transformamos verde y azul, denominada nxmxp, donde n y m
al espectro del dominio espacial. Las máscaras de filtrado mantienen la mismas caracterı́sticas que la escala de
están compuestos de filtros de diferentes caracterásticas. grises y p representa al plano p.
Existen diversos tipos de filtros, pero todos están construi-
dos en base a diferentes combinaciones de filtros pasa bajo, F. Aplicción
pasa altos, pasa banda y pasa banda limitada. Como ya hemos visto anteriormente, el filtrado de im-
agen tiene un gran campo de aplicaciones (medicina, as-
D.1 Filtro pasa bajo tronomı́a, geologı́a, investigación dactilar, visión artificial,
Mirado a partir de su análisis frecuencial, este filtro esta entre otras), por lo cual hicimos un ejemplo centrado en el
encargado de dejar pasar sólo las bajas frecuencias, aten- área de la fotografı́a. Para este ejemplo utilizamos el soft-
uando las frecuencias altas. Al analizar lo comentado an- ware MATLAB, ya que nos permite una implementación
teriormente, y si tomamos en cuenta que se le denomina de manera rápida y sencilla.
como altas frecuencias a los ruidos, relieves y bordes den-
G. Ejemplo
tro de una imagen, el filtro pasa bajo es el encargado de
eliminar estas transiciones bruscas, por lo tanto el trabajo La publicidad es un área donde se utiliza habitualmente
de este filtro es suavizar la imagen. el procesamiento de imágenes para crear, modificar y mejo-
rar diseños que posteriormente son campañas de algún pro-
D.2 Filtro pasa altos ducto.
Una de las técnicas utilizadas en publicidad es la “rojo
Este filtro funciona de forma inversa a la de un pasa
sobre grises” que consiste en modificar una imagen original
bajo, dejando pasar las altas frecuencias, eliminando las
para obtener un diseño o fotografı́as en escala de grises y
imágenes borrosas y destacando los relieves y transiciones
resaltar los colores rojos. Para poder efectuar la técnica de
bruscas.
rojo sobre grises es necesario crear un código o algoritmo
matemático capaz de modificar la imagen a nuestra apli-
E. Filtrado de imagen con Matlab
cación.
Matlab contiene diferentes herramientas enfocadas al fil- Este ejemplo se desarrollara en MATLAB:
trado de imagen, facilitando la manipulación de la misma 1. Para modificar una imagen en MATLAB es nece-
y sus procesos matemáticos. Dentro de sus aplicaciones sario guardarla en la carpeta WORK que se encuentra
contiene un toolbox especializado en filtrado de fotografı́as ubicada en los archivos de MATLAB guardado en el
digitales, haciendo más fácil las operaciones matemáticas. disco del PC.
Este toolbox simplifica el trabajo de mejora y retocado 2. Desde el ambiente de MATLAB (se crean los
de imágenes, desarrolla análisis y estadı́stica, operaciones códigos) se puede cargar la imagen guardada medi-
morfológicas, geométricas de color y transformación de di- ante la variable “im” que corresponde a la imagen en
mensiones. Para trabajar con el toolbox de procesamiento RGB.
de imagen, se debe utilizar la siguiente secuencia: im=imread(’rojo.JPG’);
Cargar imagen: Para cargar cualquier imagen en Mat- figure(1);
lab es necesario guardar el archivo que la con- subplot(2,3,1);
tenga en la carpeta work de Matlab. El lla- imshow(im);
mado se realiza desde el entorno asignándole una
variable para poder realizar modificaciones, ejemplo
[imag=imread(foto.JPG)]. Los archivos pueden estar
en diferentes formatos como JPG, PNG, BMP, GIF,
etc.
Acceso a pı́xel: Si deseamos ver el valor numérico de un
pı́xel en Matlab, debemos cargar la variable asignada
llamando a las filas y columnas, ejemplo imag(m,n),
donde m es el largo y n es el ancho de la matriz de la
imagen. Esto es de gran ayuda, ya que con esta in-
4 UNIVERSIDAD DEL BÍO BÍO
c FACULTAD DE INGENIERÍA 25, Noviembre 2008

3. Transformar la imagen RGB en escala de grises 5. Teniendo la imagen visualizada en la banda de in-
gris=rgb2gray(im); terés, buscamos determinar las zonas rojas predom-
subplot(2,3,2); inantes en la imagen. Para este caso utilizamos un
imshow(gris); filtro de mediana para obtener homogeneidad entre
los puntos vecinos.
imR2=(imR-imG-imB);
masc=(imR2¿20);
imR2=imR2.*masc;
subplot(2,3,4);
imR2=medfilt2(imR2);
imshow(imR2,gray);

4. Luego tenemos que tener en consideración que efecto


vamos a producir en la imagen. En este caso nuestra
banda de interés es la banda roja. Teniendo esto en
consideración descomponemos la imagen original en
las tres bandas (RGB).
imR2=(imR-imG-imB);
masc=(imR2¿20);
6. Como en la imagen hay zonas donde hay colores
imR2=imR2.*masc;
fuertes aparte del rojo, debemos aislar la zona de in-
subplot(2,3,4);
terés respecto a los demás colores.
imR2=medfilt2(imR2);
imR2=medfilt2(imR2);
imshow(imR2,gray);
imshow(imR2,gray);
imR2=imR2/255;
imR3=imadjust(imR2,[],[],1.8);

7 En este ı́tem utilizamos un comando “ginput”, que


nos permite seleccionar con el mouse la zona que man-
tendremos el color original.
[x y]=ginput(1);
y=round(y);x=round(x);
: FILTRADO DE IMAGENES 5

8 Luego conociendo la zona utilizamos una mascara IV. Conclusión


binaria con valor “1” para el rojo y “0” para los demás El filtrado de imagen o procesamiento de señales
colores. es una herramienta de gran utilidad para diferentes
masc=0*imR3; áreas, capaz de analizar y diagnosticar datos mediante
’[’ fil,col ’]’=size(masc) procedimientos matemáticos, consistente en asignarle
T=1000; una matriz de valores a una imagen, y pasarla por
filaini=y-T; diferentes filtros que poseen diversas caracterı́sticas.
filafin=y+T; Estos filtros son en realidad una máscara de valores,
coluini=x-T; que al multiplicarlos con la matriz original, logran
colufin=x+T; modificaciones como la eliminación de ruido, resalte
if(filaini¡1) de relieves, colores y modificación de la escala de
filaini=1; color, según la aplicación que se necesite. Estas
end; transformaciones se pueden realizar a través de dos
if(coluini¡1) métodos, mediante técnicas de pı́xeles, que realizando
coluini=1; cálculos de promedios de la región cercana a un
end; pı́xel, seleccionando y modificándolo por la media
if(filafin¿fil) calculada, o mediante el método frecuencial, que
filafin=fil; utiliza la transformada de fourier para variar el
end; espectro. Este último método es bastante simple,
if(colufin¿col) porque en realidad su función es multiplicar una
colufin=col; máscara por la imagen original, para obtener nuestra
end; salida deseada. Sin duda los cálculos son complejos,
masc(filaini:filafin,coluini:colufin)= lo cual hace indispensable la implementación de
=masc(filaini:filafin,coluini:colufin)+1; programas capaces de procesar imagen, como es el
imR4=(double(imR3¿0.01)).*masc; ejemplo de MATLAB, que contiene en su librerı́a un
subplot(2,3,6); toolboox especializado en procesamiento de seales.
imshow(imR4,[]);

Bibliografı́a
C. PINILLA, A. ALCALÁ Y F.J Filtrado de Imagen
en el dominio de la frecuencia. Revista de telede-
tección, (septiembre 1997), departamento de inge-
nierı́a cartográfica, geodésica y fotogrametrı́a. uni-
versidad de jaén.
Si bien este código es muy utilizado nuestra particu- E. CUEVAS JIMÉNEZ Y D. ZALDIVAR NAVARRO
laridad que hemos agregado en el programa y con el Visión por Computador utilizando MatLAB Y el
fin de mejorar hemos agregado ciclos de iteraciones Toolbox de Procesamiento Digital de Imágenes,
para que nuestro marco de modificacin abarque todo Técnicas de procesado de imagen Filtrado Espacial: La
la imagen y no solo un sector. convolución
9 Después de ejecutar los pasos anteriores obtenemos http://www.des.udc.es/~adriana/TercerCiclo/Curso
nuestra imagen modificada mostrando la imagen en Imagen/curso/web/Filtrado Espacial.html
escala de grises y resaltando solo la imagen con color Procesamiento de Imágenes con Matrices
rojo. Procesamiento de mapas de bits a través de op-
eraciones con matrices.
http://www.scribd.com/doc/2437215/Procesamiento-
de-Imagenes-con-Matrices

You might also like