You are on page 1of 9

 

 
 

(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)
 

Donde  los    son  los  coeficientes  de 


ponderación de la máscara elegidos de acuerdo con la acción deseada para el operador  . 
 
II. Descripción de Algoritmos 
Consisten  en  el  diseño  de  máscaras  de  cualquier  tamaño  deseado  las  cuales  al  ser 
manipuladas  sobre  la  imagen  a  procesar,  generen  el  efecto  deseado.  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 apropiado 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.  Se  implementaron  dos  algoritmos  el  primero,  que 
traslada de la imagen todos los valores a la máscara en cada desplazamiento y el segundo, 
que conserva los valores de las   columnas en cada iteración, copiando solamente los 
valores de la columna nueva. En la Fig. 1, se muestra el diagrama de flujo simplificado para 
el segundo algoritmo. 
 
III. Procesamiento por Filtros Realzantes 
El  filtrado  espacial[1,4‐6],  emplea  filtros  lineales  o  no  lineales,  los  filtros  realzantes  se 
diseñan  con  la  finalidad  de  remarcar  los  detalles  finos  de  una  imagen  o  intensificar 
detalles que han sido difuminados o se encuentran borrosos. El procesamiento por filtros 
realzantes aquí desarrollado, incluyen los filtros pasa altos, pasa altas modificado, filtros 
diferenciales y ecualización de histogramas. En la Fig. 2, se muestra un par de menús para 
elegir el procesamiento deseado. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

(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   

Se incrementa una  Completo  el  SI


 
fila recorrido X? 
Se avanza una 
columna

Completo  el  Aplicación del operador de 


recorrido Y?  procesamiento a la imagen

SI
SI

Máscara  Máscara  Copiar máscara   Actualizar última 


completa X?  inicial?  columna

Se incrementa una  Máscara  SI Copiar pixel de la imagen en  Crece la máscara una 


fila la máscara  completa Y?  la máscara columna  

 
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)

You might also like