Escolar Documentos
Profissional Documentos
Cultura Documentos
(ISBN 970‐32‐2673‐6)
ALGORITMOS EN MATLAB PARA EL PROCESAMIENTO DE IMÁGENES POR FILTROS
REALZANTES
José Luis Ramos Quirarte1, Norma Ramírez Hernández2
1
Departamento de Electrónica, 2Departamento de Ciencias Computacionales,
CUCEI‐Universidad de Guadalajara, Jalisco, México
Resumen
Este trabajo presenta algunos resultados obtenidos en procesamiento espacial de
imágenes. Los algoritmos consisten en el diseño de máscaras. Las máscaras impares son
más simples ya que son más apropiadas para el manejo simétrico y poseen un pixel
central que usualmente es el modificado en cada iteración. Sin embargo, para el
procesado de los bordes de las imágenes es muy conveniente el manejo de máscaras de
fila o de columna incluyendo máscaras de dimensiones pares con modificación de uno o
varios pixeles de manera simultánea. Los algoritmos han sido desarrollados en MatLab ya
que esta plataforma es muy popular, tiene herramientas muy útiles para el procesamiento
de imágenes, es muy fácil el manejo de menús y de GUI´s. Las transformaciones incluyen
el filtrado pasa altas, el filtrado Hihg‐Boost, filtros diferenciales basados en el gradiente
bidimensional, con operadores Prewitt y Sobel y ecualización de histogramas en el
entorno.
Palabras Clave
Procesamiento de imágenes, Máscaras espaciales para procesamiento, filtrado espacial de
imágenes, filtros diferenciales, operadores Prewitt, operadores Sobel, ecualización de
histogramas en entornos.
I. Introducción
Una técnica para realizar procesamiento de imágenes, es el procesamiento espacial
empleando el diseño de máscaras que recorren la imagen original modificándola a
través de un operador , expresamente diseñado para el objetivo deseado: difuminación,
eliminación de ruido, realce de detalles, etc. Obteniendo una imagen procesada,
expresada en la siguiente ecuación,
(1)
Para una máscara [1‐3] o entorno de , y considerando a los niveles de gris de los
pixeles de la imagen original bajo la máscara como:
,la respuesta de una máscara lineal es
(2)
(ISBN 970‐32‐2673‐6)
(ISBN 970‐32‐2673‐6)
INICIO
Imagen procesada
Inicialización de variables.
Tamaño de la máscara
Determinación del centro de la máscara
y de los límites del recorrido de la máscara
sobre la imagen
SI
SI
Fig. 1. Diagrama de flujo simplificado del algoritmo para cálculo completo de máscara.
a).‐ Manejo de imagen y algoritmo b) Selección del tratamiento a la
imagen
Fig. 2. Menús para el filtrado por máscaras.
A través del menú de “Filtrado Pasa Altas de Imágenes con Máscaras”, se puede elegir la
opción de adquisición de imagen, se activa un submenú que permite leer una imagen .tiff
indexada, color RGB o en escala de grises, o bien escoger imágenes .jpg en color RGB o en
escala de grises. El submenú tiene la opción de escalar la imagen pues para propósitos de
desarrollo de algoritmos y transformaciones de procesamiento, muchas imágenes resultan
muy grandes que resulta muy ventajoso el poder reducirlas y concluir más rápido el
proceso. Para propósitos de investigación, resulta conveniente el poder agregar ruido a las
imágenes por lo que otra opción permite hacerlo con distintos tipos de ruido (Gaussiano,
(ISBN 970‐32‐2673‐6)
de Poisson, multiplicativo, etc.). Ya que las diferentes técnicas de procesamiento descritas
en este trabajo, son aplicadas a imágenes en niveles de intensidad, una opción del
submenú lo permite, finalmente, la imagen puede ser almacenada con diferentes
formatos. Las otras opciones del menú permiten la utilización de alguno de los dos
algoritmos implementados para el manejo mecánico de las máscaras.
Con el segundo menú “ Filtrado Pas Altas por Máscaras Complementarias”, se accede a la
técnica deseada para el procesamiento de la imagen. Las técnicas desarrolladas incluyen:
filtrado pasa altas básico, filtrado pasa altas mejorado, filtrado diferencial con operadores
Prewitt y Sobel y ecualización de histogramas en cada región de la máscara.
A. Filtrado Espacial Pasa Altas Básico
En el domino espacial, un filtro de realce (pasa altas), se puede conseguir simplemente
restándole a la imagen original la imagen obtenida al ser procesada con un filtro pasa
bajas. O bien, se requiere diseñar una máscara que contenga coeficientes positivos en el
centro y negativos en la periferia. Una máscara de que cumple con esas
características y además de que la suma de sus coeficientes es cero para mantener una
respuesta lineal, se muestra en la Fig. 3, para las regiones de la imagen donde el nivel es
casi constante, la transformación producirá valores muy cercanos a cero. Por otra parte ya
que se producen regiones con valores negativos y en otras regiones valores muy grandes,
el resultado en estos casos requiere un cambio de escala y corrimiento para mantener a la
imagen resultante en el intervalo de 0 a 255 en niveles de intensidad. En la Fig. 3, se
presenta una imagen que es filtrada por la máscara diseñada y la resultante de dicho
filtrado. Además de la imagen de Saturno se aprecia la existencia de una serie de estrellas
casi invisibles en la imagen original.
‐ ‐ ‐1 ‐ ‐
1 1 1 1
‐ ‐ ‐2 ‐ ‐
1 2 2 1
a).‐ Imagen original c).‐ Imagen procesada
‐ ‐ 32 ‐ ‐
1 2 2 1
‐ ‐ ‐2 ‐ ‐
1 2 2 1
‐ ‐ ‐1 ‐ ‐
1 1 1 1
b).‐ Máscara aplicada
Fig. 3. Filtrado Paso Altas Básico: a) imagen original, b) máscara diseñada de , c)
Imagen procesada que muestran realce.
(ISBN 970‐32‐2673‐6)
B. Filtrado Espacial High‐Boost
Con la finalidad de mejorar los resultados obtenidos con el filtrado pasa altas básico[1,7],
se introduce un factor de amplificación a la imagen original, , que además de
realzar detalles, agregue parte de la imagen original, reincorporando parte de las
frecuencias bajas perdidas. Para su implementación se puede proceder de varias maneras:
Una muy simple, sería aplicar la misma máscara diseñada para el pasa altas básico como el
de la Fig. 2, pero modificando el coeficiente central a
. Otro método es como se describe:
(3)
(4)
(5)
En la Fig. 4, se muestran los resultados de aplicar el filtrado High‐Boost a la imagen
original de la Fig.3, con máscaras de y y de y
a) b)
Fig. 4. Filtrado Paso Altas High‐Boost: a) máscara de , b) máscara de .
C. Filtrado Diferencial
El proceso de diferenciación sobre una imagen, le da mayor nitidez. Porlo que podemos
emplear el gradiente bidimensional para la imagen original, , en el punto
como:
(6)
Donde su módulo es representado por
(7)
Para máscaras con entorno de , una aproximación de (7) es:
(8)
C.I.‐ Filtrado Diferencial con Operadores de Prewitt
Como puede observarse de la Ec. (8), su implementación requiere del procesado a través
de dos máscaras. Los operadores de Prewitt, consiguen la diferenciación en la dirección ,
para procesamiento con máscaras de , usando coeficientes: menos unos, ceros, y
unos para el primero, segundo, y tercer renglón; y para la primera, segunda y tercer
(ISBN 970‐32‐2673‐6)
columna, respectivamente. En la Fig. 5, se muestran resultados de realizar este
procesamiento con máscaras de , y
a) b)
Fig. 5. Filtrado Diferencial con Operadores de Prewittt: a) máscara de , b) máscara de
.
C.II.‐ Filtrado Diferencial con Operadores de Sobel
Otra alternativa de aproximar la Ec. (8) es a través de los operadores de Sobel. Estos
operadores a diferencia de los de Prewitt, utilizan coeficientes que no se restringen a
ceros, menos unos y unos, por lo que permiten derivaciones ponderadas. En la Fig. 6, se
presentan algunos resultados de este procesamiento para máscaras de ,y de .
D. Procesamiento por Ecualización de Histogramas por Máscaras
El histograma es una característica muy relevante en las imágenes, ya que nos indica el
número de pixeles en una imagen que poseen determinado nivel de intensidad. Por lo que
al observar el histograma, sabemos si la imagen es obscura cuando el histograma está
cargado hacia los niveles bajos de intensidad, lo opuesto nos indica una imagen muy
brillante.
a) b)
Fig. 6. Filtrado Diferencial con Operadores de Sobel: a) máscara de , b) máscara de
.
Si está contenido en una franja angosta, se trata de una imagen de bajo contraste y si está
distribuida a lo largo de todos los niveles de intensidad, entonces es una imagen de alto
contraste. Así pues implementar técnicas para ecualizar el histograma de una imagen,
(ISBN 970‐32‐2673‐6)
permite mejorar su contraste. Cuando se aplica ecualización global, se obtiene
generalmente un difuminado no deseado por lo que utilizar máscaras para ecualizar
regionalmente, presenta ventajas considerables. En la Fig. 7, se presentan los resultados
de una ecualización global y de ecualización por máscaras, en este caso, intencionalmente
las máscaras no fueron traslapadas para visualizar su efecto local. Por supuesto haciendo
un recorrido pixel a pixel de la imagen, produce resultados muy efectivos.
a) b)
Fig. 6. Ecualización de Histogramas: a) global, b) máscaras sin traslape de .
IV. Resultados y Conclusiones
En este trabajo se presentan algunos resultados obtenidos para el procesamiento de
imágenes utilizando filtros realzantes basados en algoritmos que definen entornos o
máscaras sobre la imagen original para modificar los valores originales seleccionando los
coeficientes de la máscara para obtener filtrado pasa altas, usando los operadores de
Prewitt o de Sobel o bien aplicando el concepto de ecualización de histogramas por
regiones. Los algoritmos fueron implementados en MatLab que ya rutinas de filtrado, pero
basado en el dominio de la frecuencia, siendo esta aportación, otra opción conveniente
para procesamiento en la mejora de una imagen.
Conforme se trabaja más y más en el procesamiento de imágenes, nuevas herramientas se
desarrollan por lo que profundizar en más técnicas de procesamiento, nos permitirán
tener una visión más completa de esta área que encuentra nuevas y nuevas aplicaciones.
Consideramos que un camino para explorar es la combinación de técnicas utilizadas en el
dominio espacial y en el dominio de la frecuencia.
REFERENCIAS
[1] R.C González, R.E.Woods “Tratamiento digital de imágenes” Ed. Addison‐Wesley, 1996.
[2] Norma Ramírez Hernández, “Procesamiento de Imágenes Médicas”, Tesis de Maestría
en Ciencias en Ingeniería Electrónica, CUCEI, U. de G. Diciembre de 2006.
(ISBN 970‐32‐2673‐6)
[3] J. D. Martinez, J. M. Benlloch, J. Cerdá, Ch. W. Lerche, N. Pavón, and A. Sebastiá “High‐
Speed Data Acquisition and Digital Signal Processing System for PET Imaging
Techniques Applied to Mammography”, IEEE transactions on nuclear science, vol.
51, no. 3, June 2004, pp. 407‐412.
[4] Liyang Wei, Yongyi Yang, Robert M. Nishikawa, Miles N. Wernick, and Alexandra
Edwardsm, ”Relevance Vector Machine for Automatic Detection of Clustered
Microcalcifications”, IEEE transactions on medical imaging, vol. 24, no. 10, October
2005.
[5] Robert A. Brown*, Hongmei Zhu, and J. Ross Mitchell , “Correspondence Distributed
Vector Processing of a New Local MultiScale Fourier Transform for Medical Imaging
Applications” IEEE Transactions on medical imaging, vol. 24, no. 5, may 2005.
[6] Segyeong Joo, Yoon Seok Yang, Woo Kyung Moon, and Hee Chan Kim*, Member, IEEE,
“Computer‐Aided Diagnosis of Solid Breast Nodules: Use of an Artificial Neural
Network Based on Multiple Sonographic Features”, IEEE transactions on medical
imaging, vol. 23, no. 10, october 2004, pp. 1292‐1300.
[7] Fu, K.S, González, R.C. y Lee C.S.G. ”Robotics control, sensing, vision and intelligence”,
McGraw‐Hill, New York 1987.
(ISBN 970‐32‐2673‐6)