Está en la página 1de 61

Conceptos Básicos del Procesamiento Digital de

Imágenes Usando OrquideaJAI


CALCULADORA DIGITAL DE IMÁGENES

Diego Luis Aristizábal Ramírez


M.Sc. en Física

Carlos Alberto Ramírez Martínez


M.Sc. en Física

Escuela de Física
Universidad Nacional de Colombia
Sede Medellín
2006

1
1
OrquideaJAI
CALCULADORA DIGITAL
DE IMÁGENES

El software sobre procesamiento digital de imágenes DIP (Digital Image Processing) que
comúnmente se encuentra en el mercado, está orientado a procesos muy definidos, debido a que
están dirigidos a usuarios que no requieren un amplio conocimiento del tema. Esto trae como
desventaja que no permite buena flexibilidad de maniobra para usuarios más avanzados, ni la
enseñanza adecuada sobre el tema.
OrquideaJAI (Orquidea Java Advanced Images) es una calculadora, que permite realizar
procesamiento digital de imágenes vía el formato de una calculadora usual, de tal forma que el
éxito del resultado dependa del conocimiento y la habilidad que posea el usuario sobre el DIP

1.1 Especificaciones de OrquideaJAI


Esta calculadora permite:
• Realizar operaciones aritméticas, booleanas y morfológicas.
• Realizar transformaciones geométricas afines.
• Realizar transformaciones en el dominio espacial y en el dominio de la frecuencia.
• Construir filtros personales.
• Construir señales 2D (imágenes) tales como: sinusoidales, redes de muestreo, redes
circulares, agujeros y máscaras, que servirán para hacer estudios de modulación y filtraje
entre otros.
• Ubicar las imágenes en celdas (12 disponibles) para facilitarle al usuario su manipulación.
• Leer y grabar imágenes con los principales formatos de compresión digitales: .gif, .jpg,
.jpeg, .bmp, .tiff y png,
• Realizar binarizaciones, histogramas, conversión de imágenes de color a imágenes en
grises.

2
1.2 Requerimientos

1.2.1 Hardware mínimo:


• Pentium 4 de 512 Megas de ram.
• 1.3 Ghz de velocidad del procesador.
• Pantalla a color de buena resolución.
• 1 Giga de disco duro.
• Unidad de CD.

Nota: Realmente OrquideaJAI se ejecuta adecuadamente en un computador con especificaciones


menores a las anteriores, sin embrago puede hacerse lento.

1.2.2 Software
Como OrquideaJAI fue implementada con el lenguaje de programación Java de la Sun
Microsystems y las librerías de imágenes JAI (Java Advanced Images), es necesario para que se
pueda ejecutar instalar el siguiente software y en ese orden:
• Máquina virtual de java (jre-1_5_0 o superior).
• Las librerías de JAI (jai-1_1_2 o superior).
ambos se proporcionan con OrquideaJAI.
En una carpeta (por ejemplo denominada orquidea, o el nombre que se desee) se debe ubicar el
archivo Orquidea.jar (el archivo ejecutable). Se recomienda además crear una subcarpeta
denominada imagenes, donde se aconseja depositar las imágenes con que se trabajará. Esto último
permitirá un acceso más rápido a éstas.

1.3 Manejo básico de OrquideaJAI.

1.3.1 Primer plano


Cuando se ejecuta OrquideaJAI (haciendo doble clic en el
archivo Orquidea.jar), aparece el primer plano del software
(ventana principal) tal y como se ilustra en la Figura 1.1. Se
observan 12 celdas donde se podrán ubicar las imágenes a
trabajar y el resultado de las operaciones. En la barra de menús
Figura 1.1 se encuentra el icono que activa la calculadora, la cual se podrá

usar cuando se disponga al menos de una imagen para trabajar.

3
1.3.2 Segundo plano
Ubicando el cursor en una celda y haciendo clic izquierdo sobre el ratón aparece un popmenú como
se ilustra en la Figura 1.2.a. En este se puede observar que solo está activada el item Leer
imagen. Haciendo clic en él se abre una Ventana/Diálogo que da la posibilidad de importar una
imagen que tenga alguno de los formatos soportados por este software, tal y como se ilustra en la
Figura 1.2.b. Al escoger la imagen se depositará en el panel sobre el cual se abrió el popmenú, tal y
como se ilustra en la Figura 1.2.c (imagen depositada en el panel 6).

Figura 1.2.a Figura 1.2.b Figura 1.2.c

Puede observarse que el panel dispone de ascensores (uno lateral y otro inferior) para poder
desplazar la imagen, en el caso de que ésta sea de mayor tamaño que él.
Si se ubica el cursor sobre un panel que posea imagen y se hace clic izquierdo sobre el ratón
aparece el popmenú pero con ítems que permiten realizar acciones sobre la imagen tales como:
Grabar, Copiar, Pegar, Borrar, Imprimir, Histograma RGB, Ver la imagen completa,
Convertir en niveles de gris, Negativo, Binarizar y Variar el histograma. Se sugiere al
lector que se familiarice con el uso de este popmenú antes de continuar la lección. Más adelante se
dará la explicación de lo que es un histograma y la binarización de una imagen.

1.3.3 Tercer Plano


Haciendo clic en el icono de la calculadora que se encuentra en la esquina superior izquierda de la
barra de herramientas, se despliega una Ventana/Diálogo-Response (es decir, una ventana que no
deja seguir trabajando sino se toma la decisión de aceptar o cancelar), la cual despliega la
calculadora, que es la PROTAGONISTA de este software; ver Figura 1.3.

4
En ella aparecen diferentes paneles, cada uno de los cuales
despliega un tablero de botones necesarios para realizar las
operaciones o transformaciones en cada modo de la
calculadora: Morfología, Booleana, Aritmética,
Geometría, Transformadas, Filtros, Generar. Estos
modos de operar se irán desarrollando a medida que se
Figura 1.3: Calculadora
avance en este tutorial.

5
2
PROPIEDADES BÁSICAS
DE LA IMAGEN DIGITAL

2.1 ¿Qué es una imagen?


Una imagen se representa por una función en
dos dimensiones f ( x ,y ) , cuyo valor

corresponde a la intensidad de luz en cada punto


del espacio de las coordenadas ( x , y ) . En el

caso de una imagen monocromática, al valor de


Figura 2.1 f ( x , y ) se le denominará nivel de gris en el
punto de coordenadas ( x , y ) . Una imagen puede ser considerada como una señal bidimensional;

en la Figura 2.1 se ilustra una imagen monocromática y su “topografía”, donde la altitud es


proporcional al nivel de gris, f ( x , y ) .

2.2 ¿Qué es una Imagen digital?


Si el dominio (valores de ( x , y ) ) y el rango (valores de f ( x , y ) ) son continuos, la imagen es

continua o análoga; si el dominio y el rango son discretos, la imagen es digital.


Para convertir una imagen de tonos continuos en formato digital, la imagen análoga es dividida en
valores de brillos individuales a través de dos procesos denominados muestreo (sampling) y
cuantización (quantization), tal como se ilustra en la Figura 2.2.
La representación digital de una imagen se presenta en
la Figura 2.2.a (hasta por cierto, con muy baja
resolución espacial). La cuantización se realizó a 256
niveles de gris (0 a 255), distribuidos en un arreglo
bidimensional semejante al ilustrado en la Figura 2.2.b.
Estos niveles pueden ser representados en la pantalla de
Imagen Digital Píxeles y cuantización
un computador utilizando un, sistema de numeración
Figura 2.2.a Figura 2.2.b
binario, con 8 bits ( 2 = 256 ).
8

6
2.3 Un poco más sobre Muestreo y Cuantización
La conversión de las coordenadas a un dominio discreto está asociada al concepto de muestreo
(píxeles) y la conversión de la amplitud a un rango discreto está asociada al concepto de
cuantización (niveles de gris). Los dos procesos son necesarios para guardar en la memoria del
computador la función de imagen f ( x , y ) .

Desde un punto de vista práctico, una imagen se puede considerar


como un conjunto de celdas (llamadas píxeles) que se organizan
en posiciones que se hacen corresponder con un arreglo matricial
bidimensional MxN, tal como muestra la Figura 2.3. En general, M
y N son potencias de 2.
El muestreo es la conversión que sufren las dos dimensiones de la
señal analógica (imagen continua), y la que genera la noción de
píxel. La cuantización es la conversión que sufre la amplitud de la
Figura 2.3 señal análoga en niveles de gris, que corresponde al valor que
toman los elementos matriciales o píxeles ( i , j ) . Si se tienen 256 niveles de gris (de 0 a 255), el 0
representa que el píxel está en su mínima intensidad (negro) y el 255 que el píxel está en su
máxima intensidad (blanco).
Las dos principales causas de pérdida de información cuando se captura una imagen digital, son la
naturaleza discreta de los píxeles y el rango limitado de los valores de intensidad luminosa que se
puede tener en cada píxel. De ahí surge el concepto de resolución de una imagen; una parte
asociado al número de píxeles y otra parte a los niveles de gris.
La resolución espacial de una imagen digital está relacionada con el muestreo y que depende
de:
1. La densidad espacial de los puntos (x,y) de la imagen (densidad de píxeles).
El número de píxeles contenidos en una imagen digital y la distancia entre cada píxel (conocido
como período de muestreo) está en función de la apreciación de los sensores del dispositivo
de captura de la imagen.
2. La resolución óptica del dispositivo de captura de la imagen.

7
El efecto en las imágenes
digitales de cómo el muestreo
varía la resolución espacial se
ilustra en la Figura 2.4. A
medida que la resolución
espacial va decreciendo, se va
128 X 128 píxeles 64 X 64 píxeles 32 X 32 píxeles
incrementando el tamaño del
Figura 2.4
píxel y los detalles de la
imagen se van perdiendo (la imagen se “píxela”).

El efecto de la cuantización viene dado


por la imposibilidad de tener un rango
infinito de valores para la intensidad o
brillo de los píxeles. Después de que la
imagen de un objeto ha sido capturada, a
1 Bit 3 Bits 5 Bits
cada píxel se le asigna una intensidad, que
será un número entero. La apreciación de
este valor es directamente proporcional al
número de bits1 que utiliza el dispositivo
con que se captura la imagen para
6 Bits 8 Bits
representar los enteros. Si emplea 2 bits la
Fig. 2.5 Efecto de la cuantización
imagen se representa con 4 niveles de gris
( 22 = 4 ).Si se utilizan 3, 4, 5, 6, 7, 8, 9 y 10 bits, el número de niveles de gris será 8, 16, 32, 64,
128, 256, 512 y 1024 respectivamente.
En la Figura 2.5 se ilustra una imagen de una escena digitalizada empleando 1, 3, 5, 6 y 8 bits. En
de aplicaciones es suficiente con 8 bits (256 niveles de gris).

2.4 Rango dinámico

1
bit es la contracción para binary digit, y corresponde a la unidad más pequeña en información utilizando la notación
matemática binaria (Sistema Binario), donde las cantidades se representan con 0 y 1. Un byte corresponde a un conjunto

de 8 bits y con el se pueden representar valores enteros entre 0 y 255 ( 2


8
= 256 ). Un kilobyte (Kb) corresponde a
1024 bytes y un megabyte (Mb) corresponde a 1024 Kb.

8
Rango Dinámico Esos negros, blancos, y niveles de gris combinados
Bits Niveles de gris
(decibles, dB)
constituyen la imagen en niveles de gris (o rango de
1 2 6
2 4 12 brillo). Un alto número de niveles de gris corresponderá
3 8 18
4 16 24 a una imagen que se representará digitalmente con un
5 32 30
mayo número de bits y de la misma forma tendrá la
6 64 36
7 128 42 capacidad de representar imágenes con mayor rango
8 256 48
9 512 54 dinámico (Tabla 2.1). El rango dinámico (DB en
10 1.024 60
11 2.048 66
decibeles, db) se define matemáticamente como:
12 4.096 72
13 8.192 78
14 16.384 84
DB = 10 log
(Amplitd Máxima )2
16
18
65.536
262.144
96
108 (Amplitd Mínima )2
20 1.048.576 120
Tabla 2.1
En un sistema digital se considera la amplitud máxima
n
como 2 , siendo n el número de bits, y como amplitud mínima 2 (es decir, 1) , correspondiente a
0

0 bit. Por ejemplo un digitalizador de 12 bits puede desplegar 4096 niveles de gris y corresponderá
a un sensor con un rango dinámico de 72 dB. Si el sistema de conversión es de 8 bits posee un
rango dinámico de aproximadamente 48 dB. El estándar de los sistemas de conversión digital es de
16 bits, es decir, tiene un rango dinámico máximo de 96 dB (valor teórico que en la práctica se ve
disminuido por factores de ruido electrónico).

2.5 Histograma
Una vez definidas las resoluciones, puede hablarse del histograma de una imagen. Un histograma
informa sobre el número de píxeles que hay para cada nivel de gris. Normalizado a la unidad,
puede entenderse como la probabilidad de que un valor de gris determinado aparezca en la
imagen.
El histograma de una imagen es una herramienta visual de gran aceptación y utilidad para el
estudio de imágenes digitales. Una simple mirada sobe él, puede proporcionar una idea muy
aproximada de la distribución de niveles de gris, el contraste que presenta la imagen y alguna pista
del método más adecuado para manipularla.
El histograma de una imagen digital con L niveles de gris en el rango [0, L-1] es una función
discreta de la forma:

nk
h(rk ) =
n

9
donde rk es el k-ésimo nivel de gris, n k es el número de píxeles en la imagen con ese nivel de

gris, n es el número total de píxeles de la imagen, k = 0, 1, 2, ..., L-1 .


Las intensidades o niveles de gris están representadas a lo largo del eje X y el número de
ocurrencias para cada intensidad se representan en el eje Y. Debe remarcarse que la frecuencia de
aparición de cada nivel de gris en el histograma, se muestra siempre en forma relativa debido al
hecho que el valor absoluto puede variar bastante en función del tamaño de la imagen, así como
también puede variar el máximo valor a representar.
La forma del histograma proporciona informaciones importantes como la intensidad media y la
dispersión de los valores de nivel de gris, siendo esta última, la medida de contraste de la
imagen. Cuanto mayor es la dispersión a lo largo del eje de los niveles de gris, mayor es el
contraste de la imagen y es entonces cuando el sistema visual humano consigue una mejor
respuesta en su apreciación de la imagen.
Para hacer histogramas con
el software OrquideaJAI,
basta con importar la imagen
haciendo clic en el item Leer
Figura 2.6.a Figura 2.6.c
imagen del popmenú de un
panel y luego empleando de
nuevo el popmenú se hace
clic en el item Histograma
RGB. Empleando este
Figura 2.6.b Figura 2.6.d
software se realizaron los
histogramas de las imágenes de la Figura 2.6 (éstos están ubicados a la derecha de la respectiva
imagen). En el histograma de la imagen 2.6.a, se puede observar como la probabilidad de los
niveles de gris cercanos al negro es muy elevada con respecto al resto, lo que permite deducir que
el histograma corresponde una imagen oscura y con poco contraste caracterizado por el bajo
número de diferentes gris. En el histograma correspondiente a la imagen 2.6.b, se puede observar
que tiene una forma estrecha, con los valores de probabilidad altos concentrados en unos pocos
niveles de gris, lo que se traduce en una imagen clara con poco contraste. En el histograma de la
imagen 2.6.c, se observa una alta probabilidad de niveles de gris cercanos al blanco, pero con
niveles de gris más distribuidos, de lo que se deduce que corresponde a una imagen con un
contraste intermedio. Por último, en el histograma que corresponde a la imagen 2.6.d se observa
como la probabilidad de ocurrencia de cada uno de los niveles de gris está mejor repartida a lo
largo de todos ellos, correspondiendo con una imagen de alto contraste.

10
El histograma de una imagen a color RGB (Red-Green-Blue)
corresponde a un histograma para cada una de las bandas de
color (R, G, B): cada banda se trata en forma independiente.
Esto se ilustra con el histograma de la imagen de la Figura 2.7
obtenido con OrquideaJAI.
Figura 2.7

2.6 Conversión en niveles de gris


Una imagen a color en el formato RGB, corresponde a una imagen que en cada píxel tiene tres (3)
enteros asociados a la intensidad, uno para el rojo (Red), otro para el verde (Green) y otro para el
azul (Blue) (cada uno tiene 256 niveles de intensidades, a igual que en las imágenes en tonalidades
de gris).
Para convertirla en niveles de gris, a cada píxel se le coloca un número entero que es igual al
promedio de los valores RGB del píxel respectivo en la imagen original; el proceso de conversión
con OrquideaJAI se lleva a cabo abriendo el popmenú del panel correspondiente a la imagen a
color que se desea convertir en niveles de gris.
Seguidamente se hace clic en el item Convertir en niveles
de gris, y listo. En la Figura 2.8 se ilustra en la columna de
la izquierda la imagen a color (RGB) y en la columna de la
derecha la imagen convertida en niveles de gris.
Figura. 2.8
Es necesario anotar que para realizar el análisis digital de las
imágenes, en la mayoría de los casos es mejor tenerlas en niveles de gris.

11
3

OPERACIONES BÁSICAS
CON IMÁGENES DIGITALES
3.1 Operaciones aritméticas
Las imágenes se pueden sumar, restar, multiplicar y dividir. Para ello se operan los valores
correspondientes (nivel de gris) píxel a píxel. Para sumar, por ejemplo, OrquideaJAI toma el valor
del píxel (i, j) de la imagen fuente y se le adiciona al valor del píxel (i, j) de la otra imagen fuente y
el resultado se lo asigna como valor al píxel (i, j) de la matriz imagen que representa la suma, y así
sucesivamente para los demás píxeles. De la misma forma opera para la resta, la multiplicación y la
división. Si las imágenes son de varias bandas el proceso se repite para cada una de ellas (banda 0,
banda 1, banda 2, banda 3). Las imágenes fuentes a operar pueden tener diferente número de
bandas, tener diferentes formatos (.gif, .jpg, …) y diferente tamaño, en cuyo caso OrquideaJAI
da una imagen resultado con el número de bandas igual al de la imagen de menos bandas (se
operan las bandas más bajas), con un tipo de datos igual al tipo de datos1 de la imagen que tenga
menos precisión en estos y el tamaño de imagen correspondiente a la intersección de las dos
imágenes superpuestas en su esquina superior izquierda. OrquideaJAI trabaja con 255 niveles de
gris, por lo que si el resultado de alguna operación entre píxeles da por encima de 255, asigna al
píxel correspondiente de la imagen resultante el valor de 255 y si la operación da por debajo de 0,
asigna como valor 0.
Para realizar estas operaciones con OrquideaJAI, se
importa las imágenes a operar en dos paneles cualesquiera.
Luego se procede a activar la calculadora digital haciendo
clic en su icono que se encuentra en la barra de
herramientas. En este paso la interfaz gráfica debe estar en
algo parecido a la ilustrada en la figura 3.1. A continuación
se escoge la opción de panel marcada con Aritmética y allí
Figura 3.1 se hace clic en el botón correspondiente a la operación a
realizar, por ejemplo, +, desplegándose

1
Las matrices (arreglos matriciales) que representan las imágenes son compuestas por números que pueden ser enteros o
de punto flotante. Aunque al final se redondean a números enteros para representarlas en pantalla.

12
una Ventana/Diálogo que permite asignar en sus campos
de texto el número de los paneles donde están ubicadas las
imágenes fuentes y el panel donde se ubicará la imagen
resultante. Antes de aceptar los datos de la operación a
realizar, es posible Previsualizar el resultado para tomar la
posible decisión de Cancelar (Figura 3.2). Una vez
aceptada la imagen resultante se ubica en el panel
Figura 3.2 correspondiente.
También es posible operar aritméticamente una imagen con una constante. En este caso
OrquideaJAI opera la constante con los niveles de gris correspondientes a cada píxel.
Adicionalmente OrquideaJAI también da la posibilidad de obtener el logaritmo decimal y la
función exponencial de una imagen. El logaritmo se emplea en ocasiones para aumentar el rango
dinámico de la imagen.

3.2 Operaciones lógicas (Booleanas)


La forma como OrquídeaJAI procede con las operaciones lógicas, es análoga a como procede con
las operaciones aritméticas. Sin embargo en este caso OrquideaJAI exige que las imágenes sean
binarizadas (en cuyo caso los pixeles tienen solo dos valores, 0 o 255). El mayor valor (255) se
elige como valor lógico VERDADERO y el menor valor (0) se elige como valor lógico FALSO. La
operaciones que permite realizar son: AND, OR, XOR, NOT.
Para binarizar la imagen, se abre el popmenú del panel donde se encuentra la imagen
correspondiente y se hace clic en el item Binarizar. OrquídeaJAI abre una Ventana/Diálogo que
permite definir el valor de corte; todos
los píxeles cuyo valor de intensidad
estén por encima del valor de corte se
les asigna una intensidad de 255 y a los
que están por debajo de este valor de
Imagen Fuente 1: I1 Imagen Fuente 2: I2 I1 AND I2
intensidad se les asigna una intensidad
Figura 3.3
de 0. En la Figura 3.3, dos imágenes son
operadas booleanamente mediante el operador AND.

3.3 Operaciones Morfológicas


Las operaciones morfológicas pueden simplificar los datos de la imagen, preservar las
características esenciales y eliminar aspectos irrelevantes. Las operaciones morfológicas, si se usan,

13
constituyen usualmente una parte intermedia de la secuencia del procesamiento de imágenes. El
lenguaje de la morfología matemática binaria es el de la teoría de conjuntos.
Las operaciones primarias morfológicas son la erosión y la dilatación. A partir de ellas se puede
componer las operaciones de apertura y cierre. OrquideaJAI permite solo la morfología
matemática binaria, por lo que las imágenes a operar morfológicamente se deberán antes
binarizar.
De manera simple se pueden considerar los objetos formados por anillos de píxeles. La operación
de erosión consiste en la eliminación del anillo superficial de un objeto. Del mismo modo se
entiende la dilatación como la incorporación de una fila marginal de píxeles a los objetos de una
imagen binaria. En ambas operaciones se siguen los mismos criterios para su aplicación.
El criterio más simple para la erosión consiste en la búsqueda de los píxeles marginales con valor
lógico VERDADERO que tenga un vecino con valor lógico FALSO; la erosión se produce cuando los
pixeles marginales cambian su valor lógico de VERDADERO a FALSO.
Aplicando un criterio semejante para la dilatación, se
buscan los píxeles vecinos a la línea marginal del objeto
que tengan un valor lógico FALSO y se cambia su valor
de FALSO a VERDADERO. En la Figura 3.4 se ilustra la
Figura 3.4 complementariedad de las operaciones de erosión y
dilatación.
La operación de erosión produce la disminución del área de la imagen y la dilatación produce el
incremento de la misma. Pero, además, ambas operaciones producen importante cambios en las
regiones delgadas de los objetos, cambiando su perímetro y su forma, así como el número de
agujeros que contenga el objeto; una dilatación hace crecer el objeto por su periferia, a la vez que
rellena los agujeros de pequeño tamaño.
Las operaciones de erosión y dilatación pueden combinarse con el fin de restaurar, en lo posible,
las adiciones o disminuciones de los píxeles periféricos tras la correspondiente operación contraria.
Sin embargo, no siempre se pueden reconstruir todos los píxeles periféricos con una dilatación tras
una erosión.
Se conoce como apertura la operación que encadena una erosión seguida de una dilatación. Y se
conoce una operación de cierre a la que encadena una operación de dilatación seguida de una

14
erosión. Al igual que las operaciones de erosión y
dilatación, las de apertura y cierre se pueden realizar
repetidamente sobre una misma binaria. En la Figura 3.5 se
ilustra un ejemplo de una dilatación realizada con
OrquideaJAI, en donde se observa como se ensancharon
Imagen Dilatación de la Imagen
las líneas. El proceso que se debe seguir es el mismo que
Figura 3.5
para las operaciones booleanas.

3.4 Operaciones geométricas


OrquideaJAI permite solo tres de las llamadas transformaciones afines sobre una imagen:
traslación, rotación y magnificación. Se debe recordar que se denomina transformación afín a
aquella que al realizarse conserva el paralelismo entre los segmentos que lo eran antes de la
transformación.

3.5 Generación de imágenes especiales


En algunas
aplicaciones ópticas y
tecnológicas es
necesario disponer de
un conjunto de
imágenes muy
especial tales como:
imágenes
sinusoidales, rendijas
Figura 3.6 rectangulares y
circulares, rejillas rectangulares y circulares, máscaras, etc. Con este fin la calculadora OrqideaJAI
da la posibilidad de que el usuario construya con base en sus necesidades estas imágenes. Para
esto es necesario hacer clic dentro de la calculadora en el panel etiquetado como Generar. Estas
imágenes las podrá almacenar (grabar) en alguna carpeta, para coleccionarlas y poder usarlas en
sus procesamientos. En la Figura 3.6 se ilustran varias de estas imágenes generadas con
OrquideaJAI. Imágenes más complejas se pueden lograr realizando sobre las imágenes
generadas operaciones aritméticas y geométricas con la calculadora de OrquideaJAI.

15
4
TRANSFORMADA
DE FOURIER DE UNA IMAGEN

4.1 La transformada de Fourier


Muchas técnicas de procesado de señal se hacen en un espacio matemático conocido como el
dominio de la frecuencia. Para representar datos en el dominio de la frecuencia, algunas
transformaciones son necesarias. Quizás la más estudiada es la Transformada de Fourier (TF).
En el caso de que la señal sea una función de dos dimensiones f ( x, y ) , sí esta es continua e
(
integrable y F k x , k y ) es integrable entonces existe el siguiente par de transformadas de

Fourier:

∞ ∞
F (k x , k y ) = ∫ ∫ f (x, y )exp[ j (k
− ∞− ∞
x ]
x + k y y ) dxdy

∞ ∞
f ( x, y ) =
1
[ ]
F (k x , k y )exp − j (k x x + k y y ) dk x dk y
(2π )2 −∫∞−∫∞

donde j = − 1 . A estas integrales se les denominan respectivamente la transformada de Fourier


directa y la inversa. Las condiciones de continuidad y de integrabilidad se cumplen generalmente
en la práctica. Las imágenes son un caso de funciones f ( x, y ) , y son además funciones reales,
aunque la transformada de Fourier es en general compleja, es decir:

F (k x , k y ) = Re(k x , k y ) + j Im(k x , k y )

donde su módulo o espectro de Fourier es,

[
F (k x , k y ) = Re 2 (k x , k y ) + Im 2 (k x , k y ) ] 1
2

y su fase es,

16
⎡ Im(k x , k y )⎤
ϕ (k x , k y ) = tan −1 ⎢ ⎥
⎢⎣ Re(k x , k y )⎥⎦

El espectro de potencia de Fourier es,

P (k x , k y ) = F (k x , k y )
2

Se debe anotar que k x , k y son las denominada frecuencias angulares espaciales y f x , f y son

la frecuencias espaciales,

kx = 2 π fx ky = 2π fy .

Adicionalmente se pueden definir los periodos espaciales como,

1 1
λx = λy =
fx fy

4.2 Interpretación de la frecuencia espacial y de la Transformada de Fourier


En los procesos a menudo es de interés medir las variaciones de la señal con el tiempo; por
ejemplo, la alteración instante a instante del voltaje que podría aparecer a través de un par de
terminales en alguna ubicación fija en el espacio. Por comparación en la óptica es de interés
frecuente la información difundida sobre una región del espacio en una ubicación fija en el tiempo.
Piénsese en la escena que se ilustra en la Figura 4.1.a como una distribución bidimensional de
intensidad. Podría ser una transparencia iluminada, una imagen de TV o una imagen proyectada en

una pantalla; en todo caso, presumiblemente hay alguna función I ( x , y ) que asigna un valor de I

a cada punto de la imagen. Para simplificar un poco las cosas, supóngase que se explora a lo largo

de la pantalla en una línea horizontal ( y = y1 , entre x = b y x = d ) y se grafica punto a punto

las variaciones de la intensidad, como en la Figura 4.1.b. La función I ( x, y1 ) se puede sintetizar a

partir de funciones armónicas usando técnicas del análisis de Fourier. En este caso, la función es
muy complicada y se necesitarán muchos términos para representarla adecuadamente. Explorando

a lo largo de otra línea, por ejemplo y = y 2 , entre x = a y x = c , se obtiene I ( x, y 2 ) que está

trazada en la figura 4.1.c y la cual está formada por una serie de pulsos cuadrados igualmente

17
espaciados. En la figura 4.1.d se muestran esquemáticamente algunas componentes de Fourier. Si
los máximos en 4.1.c están separados centro a centro, por ejemplo, por intervalos de 1 cm., el
periodo espacial fundamental es igual 1 cm. por ciclo o su recíproco, que es la frecuencia espacial
fundamental, igual un ciclo por cm.

Figura 4.1.a Figura 4.1.b

Figura 4.1.c Figura 4.1.d


Figura 4.1

De modo muy general se puede transformar la información asociada con cualquier línea de
exploración en una serie de funciones sinusoidales de amplitud y frecuencia espacial apropiadas. Si
la escena es periódica como una escena por ejemplo de baldosas (Figura 4.2), las componentes de
Fourier serán elementos de una serie (serie de Fourier), de lo contrario serán elementos de la
integral de Fourier y corresponderá a la transformada de Fourier. De esta forma la información de

18
una escena bidimensional se podrá codificar por la respectiva transformada de Fourier
bidimensional.
La Figura 4.2 si fuera infinita en extensión sería periódica con período espacial
2L, y se podría representar como una serie de Fourier bidimensional. El hecho
de ser finita implica que su representación se debe realizar con la transformada
de Fourier bidimensional.

Figura 4 .2

En la Figura 4.3 se hace un esquema gráfico de la interpretación de la transformada de Fourier


bidimensional, como una superposición de perfiles de onda planos sinusoidales de diferentes
frecuencias espaciales.

Figura 4.3

El secreto radica en que cualquier imagen f ( x, y ) la podemos construir superponiendo funciones

armónicas,
[
F ( f x , f y ) exp − j 2π ( f x x + f y y ) ]
es decir,

∞ ∞
f ( x, y ) = ∫ ∫ F(f x [ ]
, f y ) exp − j 2π ( f x x + f y y ) df x df y
− ∞− ∞

Es interesante anotar que los armónicos de frecuencias espaciales altas son los responsables de los
detalles de la imagen (zonas de variaciones bruscas en los niveles de gris –de intensidad– de la
imagen) y los armónicos de baja frecuencia espacial son los responsables de las zonas de la imagen
con niveles de gris más o menos homogéneos.

4.3 La transformada discreta de Fourier (DFT)


La DFT (transformada discreta de Fourier) es una aproximación a la trasformada de Fourier
continua (TF), la cual posibilita realizar el cálculo de ésta, usando el computador. Todas las

19
propiedades para la TF pueden ser extendidas a la DFT, como consecuencia directa de que la DFT
es simplemente un caso especial de la TF.
Al trabajar con imágenes digitales, no nos posibilita manipular funciones continuas, sino que se
debe trabajar con un número finito de muestras discretas. Estas muestras son los píxeles que
componen la imagen. El análisis computarizado de imágenes requiere la DFT.
La forma matemática de la DFT directa es,

M −1 N −1
⎡ ⎛ u v ⎞⎤
F (u, v ) = ∑∑ f (x, y ) exp⎢− j 2π ⎜⎝ M x + N y ⎟⎠⎥
1
MN x =0 y =0 ⎣ ⎦

donde, u = 0,1,2,3,..., M − 1 ; v = 0,1,2,3,..., N − 1 y la de la inversa es,

M −1 N −1
⎡ ⎛ x y ⎞⎤
f ( x, y ) = ∑∑ F (u, v ) exp⎢ j 2π ⎜⎝ M u + N v ⎟⎠⎥
u =0 v =0 ⎣ ⎦

donde, x = 0,1,2,3,..., M − 1 ; y = 0,1,2,3,..., N − 1 .

Cuando M = N , algunas de las expresiones anteriores pueden expresarse de forma más sencilla.
En particular la transformadas de Fourier directa quedaría como,

N −1 N −1
F (u , v ) = ∑∑ f (x, y ) exp[− j 2π (ux + vy ) / N ]
1
N x =0 y =0

donde, u = 0,1,2,3,..., N − 1 ; v = 0,1,2,3,..., N − 1 y la de la inversa como,

N −1 N −1
f ( x, y ) = ∑∑ F (u, v ) exp[ j 2π (xu + yv ) / N ]
1
N u =0 v =0

donde, x = 0,1,2,3,..., N − 1 ; y = 0,1,2,3,..., N − 1


En estas expresiones u, v corresponden a los valores de las frecuencias espaciales.

Existe un algoritmo computacional que permite el cálculo más rápido de la DFT y es conocido con el
nombre de la transformada rápida de Fourier (FFT).

20
4.4 Visualización del espectro
Hay que superar algunas dificultades al mostrar el espectro de frecuencia de una imagen. La
primera surge debido al amplio rango dinámico de los datos resultantes de la transformada discreta
de Fourier. En la imagen original el valor de un píxel (en una imagen monocromática) será un
número entero entre [0,255], representando el grado de intensidad, pero en la imagen que
representa el espectro de Fourier los valores de los píxeles son números en punto flotante y no
están limitados a los valores de [0,255]. Estos datos deben ser escalados de nuevo para
transformarlos en un formato visible, de forma que no exceda la capacidad del dispositivo de
visualización. Una cuantización lineal simple no proporciona siempre los mejores resultados, pues
muchas veces se pierden los puntos de baja amplitud. El término cero de la frecuencia es
generalmente el componente simple más grande, es también el punto menos interesante al
examinar el espectro de la imagen (este es el denominado componente de “corriente directa” –
DC– del espectro y es el responsable del fondo de la imagen, “background”). Una solución común a
este problema es representar el logaritmo del espectro, mejor que el espectro por sí mismo. La
función que se aplica a la imagen del espectro para su representación es una función de
compresión de rango dinámico. La expresión matemática genérica de esta transformación para
el caso de rangos muy grandes es:

D(u , v ) = c log[1 + F (u , v ) ]

donde F (u , v ) es la magnitud de los datos a mostrar en frecuencia y c es una constante de escala

que en el caso de una imagen con rango R toma el siguiente valor,

255
c=
log(1 + R )

La suma de 1 al denominador, asegura que el valor 0 del píxel no causa problemas en el cálculo del
logaritmo.
Desde que científicos e ingenieros se adaptaron al uso del sistema de coordenadas cartesiano, se
prefiere mostrar los espectros de la imagen de esa forma. Un espectro inalterado de la imagen
tendrá el componente cero visualizado en la esquina superior izquierda de la imagen, la cual
corresponde al píxel cero. La forma habitual de mostrar los espectros de la imagen es cambiando
de posición la imagen tanto horizontalmente como verticalmente, desplazándola la mitad de la
anchura y la altura de la imagen, de forma que el origen de coordenadas se encuentre en el centro

21
de la imagen. Todos los espectros que se muestran en las aplicaciones se exhiben de esta manera
convencional. Este formato es conocido como ordenado (en oposición con desordenado).
OrquideaJAI permite obtener fácilmente la transformada discreta de Fourier asegurando
simultáneamente la compresión del rango dinámico para proporcionar al usuario una buena
visibilidad tanto de la magnitud del espectro de Fourier, como de su fase y de su potencia. Para
hacer esta operación basta abrir la calculadora (haciendo clic en el icono ubicado en la barra de
herramientas) y en esta seleccionar el panel correspondiente a Transformadas. Haciendo clic en
el botón DFT o IDFT se puede acceder a las Ventanas/Diálogo correspondientes para realizar la
transformadas discretas de Fourier directa e inversa respectivamente. El resultado OrquideaJAI lo
entrega en niveles de gris, así la imagen original sea a color.
En la Figura 4.4 se ilustra varias imágenes (columna izquierda), la magnitud del espectro de Fourier
(columna central) y la fase del espectro (columna derecha), todo obtenido con OrquideaJAI.

Figura 4.4.a Figura 4.4.b

Figura 4.4.c Figura 4.4.d

Figura 4.4.e Figura 4.4.f


Figura 4.4

4.5 Experimento de Oppenheim: Importancia de la fase


En la representación de Fourier de las señales, el módulo y la fase tienden a representar diferentes
papeles y en algunas situaciones la mayoría de las características más importantes de una señal se
preservan sólo si la información de la fase se mantiene. Además bajo una variedad de condiciones,

22
cuando una señal es de longitud finita, la información de la fase simplemente basta para reconstruir
una señal dentro de un factor de escala. Estas afirmaciones son válidas tanto para señales
unidimensionales como multidimensionales.
Una imagen de sólo fase tiene una transformada de Fourier cuya fase es igual a la fase de la señal
original y módulo unidad, o tal vez un módulo promediado entre un conjunto de imágenes. Muchas
de las características de la imagen original son identificables claramente en la imagen de sólo fase,
pero no ocurre lo mismo en la imagen de sólo módulo (aquella cuya transformada de Fourier tiene
como módulo el de la imagen original, y fase nula).
Un experimento que ilustra claramente la observación de que las señales sólo de fase capturan
mayor inteligibilidad de la señal que las de sólo módulo es el experimento de Oppenheim, que
consiste en reproducir una imagen combinando el módulo de una imagen fuente con la fase de otra
imagen fuente y observando cuál información de las dos imágenes fuente predomina en la imagen
resultante. Obviamente los pasos a seguir son los siguientes:

• Obtener el módulo de la transformada de Fourier de una de las imágenes fuente


• Obtener la fase de la transformada de Fourier de la otra imagen fuente.
• Hallar la transformada de Fourier inversa de la combinación del módulo con la fase
obtenidos de los dos pasos anteriores. Esta es la imagen resultante.

El experimento se realizó con OrquideaJAI y


se obtuvieron los resultados ilustrados en la
Figura 4.5. En las dos primeras filas se
encuentran las imágenes fuentes con sus
módulos y fases de sus transformadas de
Fourier. En la fila inferior a la izquierda se
encuentra la imagen resultante de combinar el
módulo de la TF de la flor y la fase de la TF de
la mujer; y a su derecha se encuentra la
imagen resultante del módulo de la TF de la
mujer y la fase de la TF de la flor. Como se
observa, en ambas imágenes resultantes
Figura 4.5 predomina la información aportada por la fase.
Es decir, la fase de la TF lleva la mayor parte de la información de la imagen.

4.6 Algunas propiedades de la transformada de Fourier

23
Propiedad de modulación
La multiplicación de una señal por otra puede considerarse como el empleo de una señal para
escalar o modular la amplitud de otra, y por lo tanto, la multiplicación de las dos señales se refiere
frecuentemente como modulación en amplitud. Esta operación en el dominio de las frecuencias
corresponde a la convolución de las transformadas de Fourier de las señales (ver unidad 5). Es
decir, en el caso de imágenes, el producto de ellas (modulación en el dominio espacial)
corresponde a la convolución de sus trasnformdas de Fourier en el dominio de las frecuencias. Esta
es la propiedad de modulación, y matemáticamente se expresa así,

f ( x, y )g ( x, y ) ⇔ F (u , v ) ⊗ G (u , v )

Un caso muy especial es cuando una imagen es modulada por una rejilla sinusoidal (imagen que
tiene una distribución sinusoidal de intensidades). El módulo de la transformada de Fourier de la
distribución sinusoidal de intensidades corresponde a tres picos, casi deltas de Dirac (están
ensanchados y más con apariencia de senos circulares, debido al efecto de ventaneo); un pico en el
centro del plano de frecuencias y los otros dos simétricamente ubicados a lado y lado de este pico y
a una “distancia” igual a la frecuencia de la rejilla; por lo tanto, debido a la propiedad de tamizado
de la función delta, el espectro resultante de la modulación hace la replica del espectro de la
imagen (tres espectros semejantes) centrados en cada uno de los picos del espectro de la rejilla
(“reproducción del espectro”). Esto se observa claramente en la Figura 4.6.

Imagen 1: f 1 ( x, y ) Módulo de la Transformada de Fourier de la imagen 1 (Izquierda) y su


“topografía” (derecha).

24
Imagen 2: Red sinusoidal generada con Módulo de la transformada de Fourier de la imagen 2. Son
OrquideaJAI, empleando su módulo Generar aproximadamente tres deltas de Dirac (están ensanchados por el
de la calculadora en el modo Armónico, efecto de ventana)
f 2 (x, y ) = 255 sen 2 [2π (0.05 x + 0.05 y )] F2 (u , v ) = 255π [δ (u − 2π (0.05), v − 2π (0.05) ) +
+ 2δ (u , v ) + δ (u + 2π (0.05), v + 2π (0.05) )]
A la derecha se encuentra la “topografía” del Módulo de la
transformada

Modulación de la Imagen 1 con la Imagen 2: Convolución de la Transformadas de Fourier de la Imágenes 1 con la


Producto de la Imagen 1 con la Imagen 2. Se ha de la Imagen 2.
normalizado a 1 la amplitud de la imagen 2. F (u, v ) = F1 (u, v ) ⊗ F2 (u, v )
f ( x, y ) = f 1 ( x, y ) f 2 ( x , y )
F (u , v ) = π [ F1 (u − 2π (0.05, )v − 2π (0.05) ) +
+ 2 F (u , v ) + F (u + 2π (0.05), v + 2π (0.05) ) ]
Figura 4.6: El producto de las imágenes (operación en el dominio espacial) corresponde a la convolución de los espectros
(Transformadas de Fourier) en el dominio de las frecuencias.

Propiedad de rotación
Si la imagen se rota un ángulo ϕ su transformada de Fourier

también rota un ángulo ϕ . Esto se debe a que si se introducen


las coordenadas polares,
x = r cos θ y = rsenθ u = w cos α v = wsenα
si,
f (r , θ ) ⇔ F (w, α )
entonces,
Figura 4.7 f (r , θ + ϕ ) ⇔ F (w, α + ϕ )
En la Figura 4.7 se presenta en la columna de la izquierda las imágenes y en la de la derecha el
módulo de la transformada de Fourier; claramente se observa la propiedad de la rotación de la
transformada de Fourier.

Propiedad de traslación
Un desplazamiento en la imagen no afecta el módulo de la transformada de Fourier. Esto se debe a
que,

25
f ( x − x0 , y − y 0 ) ⇔ F (u, v ) exp[− j 2π (ux0 + vy 0 ) / N ]

en una imagen de tamaño NxN.

Esta propiedad aplicada al módulo de la transformada será

F (u , v ) exp[− j 2π (ux0 + vy 0 ) / N ] = F (u , v )

es decir, el módulo de la transformada de


Fourier no se ve afectado por la traslación de
la imagen. Es importante recordar esto,
porque el examen visual de la transformada se
limita habitualmente a la presentación de su
módulo. En la Figura 4.8 se presenta en la
columna de la izquierda las imágenes, en las
columnas del centro y de la derecha el módulo
y la fase de sus transformadas de Fourier
respectivamente; en ella se puede observar
claramente la propiedad de traslación de la
transformada de Fourier.
Figura 4.8

4.7 Teorema del Muestreo de una señal


Como se analizó en las secciones 2.2 y 2.3 el muestreo es el proceso de obtener las muestras
digitales de la función imagen, es decir, obtener la imagen. Matemáticamente se puede interpretar
como la aplicación de una estructura bidimensional de funciones Delta de Dirac sobre la función
imagen continua. Usualmente se considera que la estructura de funciones Delta de Dirac tiene una
distribución regular en filas y columnas, con lo cual los resultados del muestreo se pueden
proyectar directamente en una matriz. Cada elemento de la matriz, caracterizado por unos valores
de índice que representarán la distribución espacial de muestras, contendrá el nivel de Brillo de la
variable física representada en esa zona espacial.
En las mismas secciones se definió también que el proceso de cuantización es el proceso de asignar
valores a los elementos de la matriz. Cada valor representa al valor de la variable física en ese
punto. A efectos de representación visual se asume que el valor más pequeño del rango de valores
corresponde a un nivel de gris negro y que el valor más grande al nivel de gris blanco (este es un

26
convencionalismo ampliamente utilizado). Dentro de este intervalo, cuantos más valores se puedan
discriminar mayor cantidad de matices se podrán representar.
La pregunta obvia que surge al hablar de Muestreo y Cuantización es: ¿Cuáles son los valores
adecuados de número de muestras y número de niveles distinguibles? La respuesta, también obvia,
es que lo mejor es tener el mayor número posible de muestras (para obtener la mejor
aproximación a la función imagen continua) y el mayor número posible de niveles (para poder
percibir todos los detalles). Sin embargo, esta conclusión hay que analizarla con cuidado pues
cuantas más muestras y más niveles, más datos a procesar por el computador y más tiempo de
computación necesario para obtener los resultados. Se puede analizar matemáticamente cuál es el
mínimo de estos valores. En cuanto al muestreo, el Teorema de Whitaker-Shannon (Teorema del
Muestreo) obliga a que el intervalo entre muestras sea menor o igual a la mitad del menor detalle
de interés. Para la cuantización no hay una ley matemática y queda a expensas del problema
concreto.
El muestreo ideal se puede realizar con una colección de deltas de Dirac equiespaciados en las
direcciones x , y , donde las longitudes de las separaciones entre los deltas se denominan períodos

de muestreo, ∆x , ∆y . A esta estructura de deltas se le conoce también con el


nombre de peinilla. En la Figura 4.9 se ilustra esta
estructura: en la columna de la izquierda hay una peinilla 4x4,
conformada por 16 deltas de Dirac equiespaciados y en la
columna de la derecha se representa la “topografía” de esta
Figura 4.9 peinilla. Matemáticamente se representa así,
N −1 M −1
s ( x, y ) = ∑ ∑ δ ( x − n∆x, y − m∆y )
n=0 m =0

La imagen muestreada es el producto de la imagen original (imagen a muestrear) por la función


peinilla (Figura 4.10),

⎡ N −1 M −1 ⎤
f ( x, y )muestreada = f ( x, y )s ( x, y ) = f ( x, y )⎢∑ ∑ δ ( x − n∆x, y − m∆y )⎥
⎣ n =0 m =0 ⎦

27
Imagen Original “Topografía’ de la imagen original

Peinilla de paso 40 en x e y “Topografía’ de la peinilla muestreadota

Imagen muestreada “Topografía’ de la imagen muestreada


Figura 4.10

La transformada de Fourier de la imagen muestreada es la suma de repeticiones periódicas de la


transformada de Fourier de la imagen original. Es decir es una colección de espectros iguales
centrados en los deltas de Dirac resultantes en el dominio de las frecuencias y que son el resultado
de la transformada de Fourier de la peinilla, que es otra peinilla pero con los deltas separados

(∆x )−1 , (∆y )−1 . Esta es simplemente una aplicación del teorema de la convolución (este teorema
y la operación de convolución, se tratarán en detalle en la unidad 5).

⎡ 1 N −1 M −1
F (u, v )muestreada = F (u, v ) ⊗ S (u , v ) = F (u, v ) ⊗ ⎢ ∑ ∑ ( )⎤
δ u − n(∆x )−1 , v − m(∆y )−1 ⎥
⎣ ∆x∆y n =0 m =0 ⎦

Aplicando la propiedad de tamizado del delta de Dirac,

F (u, v )muestreada =
1 N −1 M −1
∑ ∑
∆x∆y n =0 m =0
(
F u − n(∆x ) , v − m(∆y )
−1 −1
)

28
Imagen Original Módulo de la Transformada de Fourier de la Imagen y su
“topografía”

Función Peinilla: Construida con OrquideaJAI


con su módulo Generar, empleando la opción Módulo de la Transformada de Fourier de la función Peinilla
Reticula.

Imagen Muestreada: Producto de la Imagen Módulo de la Transformada de Fourier de la Imagen Muestreada.


con La Función Peinilla. (colección de espectros) y su “topografía” .

Espectro Filtrado y recuperación de la imagen original.


Hay pérdida de algo de información y aparecen
ondulaciones no presentes en la imagen original; esto es
Comienzo del proceso para Filtrar uno de los espectros y
debido a que las frecuencias más altas del espectro
lograr recuperar la imagen original, usando el módulo de
original se solaparon en el muestreo. Hay alissing
OrquideaJAI Filtros en la opción Frecuenciales, Paso
(aunque algo leve). Se pierden detalles de la imagen, los
Bajo.
cuales son suministrados con las frecuencias más altas.
Se debe anotar que en este caso, la imagen original, al
ser digital, ya venía con un muestreo anterior.
Figura 4.11: Teorema de muestreo

29
que es precisamente la colección de espectros a que se hacía referencia en el párrafo anterior. En
la Figura 4.11 se ilustra este procedimiento. Si los espectros individuales no se solapan filtrando
uno sólo de ellos es posible recuperar la imagen mediante la transformada de Fourier inversa, lo
que demostraría que bastaría con esa colección de muestras para guardar la información de la
imagen original. En caso de solapasen (aliasing) no sería posible esto y imagen recuperada estaría
defectuosa respecto a la original o incluso irreconocible. Esto último sucedería si las frecuencias de

muestreo, (∆x )−1 y (∆y )−1 , estuviera por debajo del doble de la frecuencia de corte (frecuencia

espacial más alta de la imagen). A esta frecuencia de muestreo se le denomina frecuencia de


Nyquist.
El teorema de muestreo tiene una interpretación física muy simple en el análisis de imágenes:

El intervalo de muestreo debe ser escogido de un tamaño menor o igual a


la mitad del menor detalle de interés en la imagen

Es interesante anotar que la DFT (Transformada Discreta de Fourier) se aprovecha del teorema de
muestreo para realizar la TF (Transformada de Fourier).

Algo más sobre la frecuencia de muestreo de una imagen digital. Manejo de equipo
óptico
Según el teorema del muestreo de Shannon, para preservar la resolución espacial de la imagen
original, el dispositivo que digitaliza la imagen debe utilizar un intervalo de muestreo que no sea
mayor de la mitad del tamaño del detalle más pequeño de la imagen óptica. Esto es equivalente a
adquirir muestras en dos veces la frecuencia espacial más alta contenida en la imagen, regla
conocida criterio de Nyquist. Si el límite de Abbe de la resolución en la imagen óptica es
aproximadamente 0,22 micrómetros, el digitalizador debe muestrear en el espécimen a intervalos
de 0,11 micrómetros o menos. Un digitalizador que muestrea 512 puntos por línea de exploración
horizontal, tendría un campo visual horizontal máximo de aproximadamente 56 micrómetros (512 x
0,11). Un número creciente de muestras digitales por línea de exploración sobre el espécimen, que
se podrían lograr por una ampliación óptica demasiado grande, no daría más información espacial;
simplemente la imagen se habrá sobremuestreado. Esto generalmente se hace intencionalmente
para adquirir valores redundantes y asegurar la fidelidad de la imagen exhibida. En la mayoría de
los casos, para imágenes de alta resolución se asegura un muestreo entre 2,5 a 3 veces la
frecuencia de Nyquist.

30
5
SEÑALES Y SISTEMAS LINEALES
BIDIMENSIONALES
FUNDAMENTOS

5.1 Señal Bidimensional


5.1.1 Representación en el dominio espacial
Una imagen se puede considerar como una colección de puntos dispuestos en un arreglo matricial,

cada uno con un nivel de gris determinado por f ( x, y ) . En otras palabras la imagen se puede

representar como una colección de deltas de Dirac (impulsos) modulados por f ( x, y ) . Para el caso

de una imagen digital esto se representa matemáticamente así,

M −1 N −1
f ( x, y ) = ∑∑ f (x m , y n )δ ( x − x m , y − y n )
m =0 n =0

Esta es una sumatoria de superposición. En la Figura 5.1 se ilustra esto,

“Topografía” de la imagen: Se puede observar que es

Imagen f ( x, y ) una colección de deltas de Dirac moduladps por la

imagen f ( x, y )
Fig. 5.1

31
Se puede observar que los deltas de Dirac (los impulsos) debidamente desplazados (“peinilla”) son
una base para generar las imágenes.

5.1.2 Representación en el dominio de las frecuencias espaciales

En el dominio de las frecuencias espaciales, se trabaja es con la transformada de Fourier, F (u , v ) ,

de la imagen,
M −1N −1
⎡ ⎛ u v ⎞⎤
f (x , y ) = ∑ ∑ F (u ,v )exp⎢⎣ j 2π ⎜⎝ M x + N y ⎟⎠⎥⎦ x = 0 , 1, 2 ,..., M − 1; y = 0 , 1, 2 ,..., N − 1
m =0 n =0

siendo,

1 M −1N −1
⎡ ⎛ u v ⎞⎤
F (u ,v ) = ∑ ∑ f (x , y )exp ⎢⎣− j 2π ⎜⎝ M x + N y ⎟⎠⎥⎦ u = 0 , 1, 2 ,..., M − 1; v = 0 , 1, 2 ,..., N − 1
MN x =0 y =0

es decir f ( x, y ) se puede expresar como una combinación lineal de ondas planas de la forma,

⎡ ⎛ u v ⎞⎤
exp ⎢ j 2π ⎜ x + y ⎟⎥
⎣ ⎝M N ⎠⎦

cuyas amplitudes y contribución de fase para cada frecuencia están dadas por la transformada de

Fourier, F (u , v ) :

F (u , v ) = F (u , v ) exp[iϕ (u , v )]

M −1 N −1
⎡ ⎛ u v ⎞⎤
por tanto, f ( x, y ) = ∑∑ F (u, v )exp⎢ j 2π ⎜⎝ M x + N y ⎟⎠⎥ es una sumatoria de superposición.
m=0 n=0 ⎣ ⎦
Esto se ilustra en la Figura 5.2,

Figura 5.2

32
Se puede observar que las ondas planas con frecuencias espaciales correspondientes son una base
para generar las imágenes.

5.2 Sistemas lineales bidimensionales invariantes bajo desplazamiento espacial (LSI)

5.2.1 Propiedades de un sistema LSI (Linear Shift Invariant)


En general, para el caso de situaciones ópticas, se puede suponer una señal bidimensional (objeto)

de entrada f ( x, y ) , pasando a través de algún sistema óptico S ( x, y ) (por ejemplo una lente, o

un conjunto de lentes, o un telescopio, o un microscopio, etc.), generándose a la salida una señal

bidimensional (imagen) de salida g ( x, y ) . En el caso que nos compete (procesamiento de

imágenes digitales), el objeto será una imagen de entrada f ( x, y ) , el sistema será un proceso de

transformación de la imagen (por ejemplo un filtro, S ( x, y ) , que generalmente se denominará

máscara) y se generará una imagen de salida g ( x, y ) , que será la transformación de la imagen

original f ( x, y ) después de aplicar el filtro S ( x, y ) , ver Figura 5.3:

Figura 5.3

Si el sistema es Lineal e Invariante bajo desplazamiento (LSI), debe cumplir las relaciones de
linealidad e invarianza. La condición de linealidad expresa que sí g1 ( x, y ) es la señal generada por
S (x, y ) al transformar f1 ( x, y ) , g 2 ( x, y ) es la señal generada por S (x, y ) al transformar
f 2 ( x, y ) y así sucesivamente, es decir gk (x, y) = S{ fk (x, y)} , y además sí f ( x , y ) , al ser procesada
por sistema S ( x, y ) da como resultado g(x, y) , es decir, g(x, y) = S{ f (x, y)} ,entonces si f ( x, y ) se
puede expresar como una combinación lineal de los f i ( x, y ) , es decir,
n
f ( x, y ) = a1 f 1 ( x, y ) + a 2 f 2 ( x, y ) + ....a k f n ( x, y ) = ∑ a k f k ( x, y )
k =1

g ( x, y ) deberá cumplir que,

n
g ( x, y ) = a1 g1 ( x, y ) + a 2 g 2 ( x, y ) + ... + a n g n ( x, y ) = ∑ a k g k ( x, y )
k =1

y para invarianza por desplazamiento,

33
g ( x − m, y − n ) = S { f ( x − m, y − n )}

es decir un desplazamiento de la señal de entrada (en nuestro caso, imagen original) causa el
mismo desplazamiento en la señal de salida (en nuestro caso, imagen transformada por el proceso
digital S ( x, y ) ), sin ninguna alteración sobre su forma funcional (es decir, sin deformación).

5.2.2 La función de punto esparcida (PSF: Point Spread Function)


Como la imagen de entrada se puede escribir como una colección de puntos (colección de
impulsos),
M −1 N −1
f ( x, y ) = ∑∑ f (x m , y n )δ ( x − x m , y − y n )
m =0 n =0

entonces si S ( x, y ) es LSI, se puede escribir para la imagen de salida,

M −1 N −1
g ( x, y ) = ∑∑ f (x m , y n )h( x − x m , y − y n )
m =0 n =0

donde h( x, y ) es la respuesta del sistema S (x, y ) al impulso δ ( x, y ) , es decir,

h( x, y ) = S ( x, y ){δ ( x, y )}

gráficamente,

Figura 5.4

a h( x, y ) se le conoce también como función de punto esparcida (PSF) de un sistema. Puede


concluirse que si se conoce el PSF de un sistema LSI, inmediatamente se conocerá la señal de
salida, g ( x, y ) , correspondiente a cualquier señal de entrada f ( x, y ) .
M −1 N −1
La ecuación g ( x, y ) = ∑∑ f (x m , y n )h( x − x m , y − y n ) es simplemente la denominada
m =0 n =0

suma de convolución o simplemente convolución entre f ( x, y ) y h ( x, y ) ,

g ( x, y ) = f ( x, y ) ⊗ h ( x , y )

34
5.2.3 El teorema de Convolución

La convolución de dos funciones en el dominio espacial corresponde en el dominio de las


frecuencias espaciales, al producto de las transformadas de Fourier de estas funciones:

g ( x, y ) = h( x, y ) ⊗ f ( x, y ) ⇔ G (u , v ) = H (u , v )F (u , v )

a H (u , v ) se le denomina función de transferencia del sistema del sistema S ( x, y ) (en nuestro

caso, será la función de transferencia del proceso). En óptica H (u , v ) se denomina función de

transferencia óptica, y su magnitud es la modulación de la función de transferencia.


Existen numerosos problemas de mejora de la imagen que pueden ser formulados en la forma de la

ecuación G (u , v ) = H (u , v )F (u , v ) . En una aplicación típica de mejora de la imagen, f ( x, y ) es

conocida y el objetivo, después de calcular F (u , v ) , es seleccionar H (u , v ) de forma que la

imagen deseada,

g ( x, y ) = ℑ −1 [H (u, v )F (u, v )]

presente resaltada alguna característica de f ( x, y ) . Por ejemplo, se pueden acentuar los bordes

de f ( x, y ) empleando una función H (u , v ) que ponga énfasis en las componentes de alta


frecuencia de F (u , v ) . Se tratará más sobre este asunto en las unidades 7 y 8.

Algo interesante es que como g ( x, y ) = f ( x, y ) ⊗ h(x, y ) , entonces si se hace que


f ( x, y ) = δ (x, y ) , se obtiene que,
g ( x, y ) = δ ( x, y ) ⊗ h( x, y )

[ ]
y como ℑ δ ( x, y ) = 1 se deduce que,

G (u , v ) = H (u , v )

es decir al aplicar a un sistema lineal la transformada de Fourier de un impulso, su salida es

precisamente la función de transferencia del sistema H (u , v ) . Recíprocamente, al aplicar el impulso

se obtiene directamente en la salida h( x, y ) . Por esta razón, h( x, y ) , la transformada inversa de

la función de transferencia del sistema, se denomina respuesta a un impulso en la terminología de

35
la teoría de sistemas lineales: un sistema lineal queda completamente determinado por la respuesta
a un impulso, h( x, y ) .

5.2.4 Máscaras (Filtros)


El tratamiento de imágenes más empleado y conocido, es el tratamiento espacial también conocido
como convolución, y el cual se abordará en la unidad 7. Las convoluciones discretas son muy
usadas en el procesado de imágenes para el suavizado de éstas, la detección de bordes, y otras
características. Mediante este proceso se calcula el valor de un determinado píxel en función de su
valor y de los valores de los píxeles que le rodean, aplicando una simple operación matemática en
función de la cual se obtendrá un valor resultante para el píxel en cuestión.
La operación de la convolución puede representarse como la siguiente operación:

g ( x, y ) = f ( x, y ) ⊗ h ( x, y )

donde h( x, y ) es la función respuesta al impulso del filtro lineal a aplicar (o máscara de

convolución), f ( x, y ) es la imagen de entrada y g ( x, y ) es la imagen filtrada. La expresión


matemática para el caso bidimensional discreto es:

M −1 N −1
g ( x, y ) = ∑∑ f (x m , y n )h( x − x m , y − y n )
m =0 n =0

La convolución es simplemente una suma ponderada de píxeles en el vecindario del píxel fuente.
Los pesos son determinados por una pequeña matriz llamada máscara de convolución, que
determina unos coeficientes a aplicar sobre los píxeles de una determinada área. Las dimensiones
de la matriz son normalmente impares e iguales, de forma que se pueda determinar el centro de la
matriz cuadrada. La posición del valor central se corresponde con la posición del píxel de salida.
Una ventana deslizante, llamada ventana de convolución, se centra en cada píxel de una imagen de
entrada y genera un nuevo valor para el píxel de salida. Para aplicar la máscara a una zona se
multiplican los valores de los puntos que rodean al píxel sobre el que se está actuando (píxel
central) por su correspondiente entrada o coeficiente en la máscara y luego se suman esos
productos. El resultado es el nuevo valor para el píxel central, tal y como se puede ver en la Figura
5.5. El proceso es bastante repetitivo, algo costoso en tiempo pues depende del tamaño de la
imagen, pero sencillo y eficaz.

36
Es muy importante colocar los nuevos píxeles en una nueva imagen. Si el recién generado píxel
reemplaza al antiguo píxel, éste será usado para calcular el valor del siguiente píxel.

Figura 5.5

El tamaño de la máscara podría ser arbitrario, e incluso no restringido a arreglos matriciales


cuadrados, por lo que se podría utilizar perfectamente arreglos matriciales rectangulares.
OrquideaJAI emplea máscaras cuadradas de tamaño: 3x3, 5x5 y 7x7. Una cosa que se aprende
con rapidez es que cuando la máscara de convolución aumenta de tamaño, la carga computacional
aumenta exponencialmente.
OrquideaJAI permite implementar a gusto del usuario dos tipos de
filtros espaciales: los denominados de Paso-Bajo y los denominados de
Paso-Alto, los cuales serán tratados en la unidad 7. Sólo a manera de
Figura 5.6 ejemplo, se describirá como implementar el filtro de la Figura 5.6 (que
es un filtro de los denominados de paso-bajo). Los pasos a seguir son los siguientes:

• Se importa una imagen. Por ejemplo, la de la Figura 5.7

Figura 5.7

• Se abre la calculadora digital de OrquideaJAI y se selecciona el panel correspondiente a


Filtros.

37
• Se hace clic en el botón Personal del panel
izquierdo, y se abre la Ventana/Diálogo de la Figura
5.8 correspondiente a Filtros Espaciales.
• Se selecciona Paso-Bajo 3x3 y en el arreglo matricial
(resaltado) se escriben los coeficientes del filtro de
la Figura 5.6. Se debe tener en cuenta que
Figura 5.8
OrquideaJAI divide el valor de los coeficientes
introducidos en el arreglo por el número que es indicado en el subpanel superior derecho,
el cual está etiquetado como Divisor del Filtro.
• Al Aceptar se obtiene la imagen de la Figura 5.9

Figura 5.9

Resumiendo, la imagen original es:

Figura 5.10

OrquideaJAI realiza la siguiente operación (Figura 5.11):

g ( x, y ) = f ( x, y ) ⊗ h ( x, y )

38
Figura 5.11

Cuando un diseñador de software va a implementar una convolución, debe


enfrentarse con el problema de los bordes de la imagen. Cuando la ventana
de convolución se centra en el primer píxel de una imagen en (0,0), la
ventana deslizante sobresale de la imagen en el borde superior y en el
izquierdo. ¿Qué valores de la imagen deben ser multiplicados por esos

Figura 5.12 coeficientes de convolución que sobresalen de los bordes? Ver Figura 5.12

Hay varias maneras para solucionar este problema:

• La primera solución es tratar las celdas vacías en la ventana de convolución como ceros. Esto
se conoce como zero-padding. Es fácil de realizar pero no es una buena idea si los bordes de la
imagen resultante son tan importantes como el resto de la imagen.
• La siguiente solución es empezar la convolución en la primera posición donde la ventana no
sobresalga de la imagen. Si la máscara de convolución es de tamaño 3x3, se empezaría
convolucionando con el píxel en (1,1) en vez del píxel en (0,0). Este método es sencillo de
implementar. En la imagen de salida, los pixeles que forman el borde de lo que se ha
convolucionado son repetidos para crear una imagen con el mismo tamaño que la imagen de
entrada.
• Otros métodos amplían la imagen antes de convolucionarla. Una forma de hacerlo es duplicar
los bordes. Usando una máscara 3x3, se copiarían las filas superior e inferior, así como las
columnas izquierda y derecha.
• El otro método es “envolver” la imagen, es decir, considerar como píxel contiguo al del borde
izquierdo, el píxel del borde derecho y viceversa, así como con los del borde superior e inferior

En la unidad 7 se utilizará la técnica de convolución para aplicar filtros espaciales lineales a las
imágenes con el fin de lograr diferentes resultados.

39
6

MEJORA DE LA IMAGEN
DOMINIO ESPACIAL
Operaciones Punto a Punto

El principal objetivo de las técnicas de mejora es procesar una imagen de forma que resulte más
adecuada que la original para una aplicación específica. Las técnicas presentadas en esta unidad,
pertenecen a dos categorías: métodos en el dominio espacial, es decir, se actúa sobre el propio

plano de la imagen ( x, y ) , o sea sobre la imagen, f ( x, y ) , y métodos en el dominio de la

frecuencia, es decir, se actúa sobre el plano de la transformada de Fourier, (u , v ) , o sea se

modifica la transformada de Fourier de la imagen, F (u , v ) . En la presente unidad y en la unidad 7

se tratarán los primeros; los segundos se abordarán en la unidad 8.


El término dominio espacial se refiere al conjunto de pixeles que componen una imagen, y los
métodos en el dominio espacial son procedimientos que operan directamente sobre los pixeles. Las
funciones de procesamiento de la imagen en el dominio espacial pueden expresarse como,

g ( x, y ) = T [ f ( x, y )]

donde f ( x, y ) es la imagen de entrada, g ( x, y ) es la imagen de salida (imagen original ya

procesada) y T es un operador que actúa sobre la imagen f ( x, y ) .


Los procesos punto a punto se encuentran entre las técnicas más simples de mejora de la imagen.
Estos se basan sólo en las intensidades de los píxeles individuales. Este proceso implica la siguiente
transformación,

s = T (r )

en donde r y s indican la intensidad de los píxeles antes y después del procesamiento


respectivamente. Se llaman de punto porque se aplican a todos y cada uno de los píxeles que
forman la imagen. Se trata de operaciones sencillas que producen como resultado el cambio del

40
valor de gris de cada uno de los píxeles. Se pueden agrupar en dos tipos fundamentales:
modificaciones del histograma de gris y operaciones aritméticas con las imágenes.

6.1 Modificaciones del histograma de gris.


6.1.1 Negativo de una imagen
Los negativos de las imágenes digitales son útiles en numerosas
aplicaciones, como la representación de imágenes médicas y en
la obtención de fotografías de una pantalla con película
monocromática con la idea de emplear los negativos resultantes
como diapositivas normales. El negativo de una imagen digital se

obtiene empleando la función de transformación s = T (r ) que


Figura 6.1
se muestra en la Figura 6.1.

Es decir, la intensidad en cada píxel se cambia por un valor equivalente a 255 menos su valor
actual,

s = T (r ) = 255 − r

En al Figura 6.2 se ilustra un ejemplo. Esto se logra con OrquideaJAI abriendo el popmenú (clic
derecho del ratón cuando el cursos esta sobre la imagen) del panel correspondiente a la imagen a
la cual se le desea obtener el negativo. Seguidamente se hace clic en el item Negativo.

Fig. 6.2 Imagen y su negativo con los respectivos histogramas

Esta operación es bastante útil por dos motivos:

• Permite “positivar” imágenes procedentes de negativos.


• Permite volver claramente visibles cambios de brillos que no eran evidentes en la imagen
original, como ocurre en las imágenes de fluorescencia. Esto se debe a que el ojo humano
no responde del mismo modo a pequeños cambios de intensidad en zonas claras que a
pequeños cambios de intensidad en zonas oscuras.

41
6.1.2 Compresión del rango dinámico
A veces el rango dinámico de una imagen procesada excede ampliamente la capacidad del
dispositivo de presentación, en cuyo caso sólo las partes más brillantes de la imagen aparecerán en
la pantalla. Eso mismo ocurre frecuentemente cuando se trata de registrar la imagen en una
película. Un ejemplo clásico de este problema es la visualización del espectro de Fourier de una
imagen (ver sección 4.4). Una manera efectiva de comprimir el rango dinámico de los valores de
cada píxel consiste en realizar la siguiente transformación de intensidad,

s = c log(1 + r )

Donde c es un factor de escala y la función logaritmo realiza la compresión deseada.

6.1.3 Escalado del histograma de gris


Se trata de establecer un nuevo valor a los umbrales de
gris. En forma general se procede estableciendo dos nuevos
valores extremos a los niveles de gris Esto se logra con
OrquideaJAI abriendo el popmenú del panel
correspondiente a la imagen que se desea mejorar.
Seguidamente se hace clic en el item Variar el
Histograma, apareciendo una Ventana/Diálogo tal y como
Figura 6.3
se ilustra en la Figura 6.3. Luego deslizando los ascensores
Alto y Bajo se pueden hacer cero los niveles de gris extremos (es decir los valores más alto y más
bajo). En la Figura 6.4 se ilustra un ejemplo.

Imagen después de la variación del rango dinámico a niveles de


Imagen original y su histograma.
gris entre 45 y 180 y su histograma.
Figura 6.4

Mediante el escalado se puede lograr mejorar el contraste de la imagen. Sin embargo se debe
aclarar que un aumento de contraste no revelará nunca una información nueva que no esté

42
contenida en la imagen. El contraste solamente presentará la misma información existente en los
datos originales, pero de una forma más clara visualmente para el usuario.
6.1.4 Normalización del histograma
La normalización del histograma es una forma particular de estiramiento de éste, con el que se
pretende que los valores de gris de la imagen lleguen a ocupar el rango máximo de niveles, esto
es, entre 0 y 255. Se trata de buscar los valores menores y mayores del histograma de la imagen y
llevarlos a 0 y 255 respectivamente. Es obvio que, si existe, aunque sea solo uno, de valor 0 y otro
de valor 255, la operación de normalizado no tendrá efecto. Esto se logra con OrquideaJAI
abriendo el popmenú del panel correspondiente a la imagen que se desea mejorar mediante este
mecanismo. Seguidamente se hace clic en el item Variar el Histograma, apareciendo una
Ventana/Diálogo tal y como se ilustra en la Figura 6.3. Luego se hace clic en Normalizar. En la
Figura 6.5 se da un ejemplo.

Imagen original y su histograma Imagen y su histograma normalizado


Figura 6.5

La normalización del histograma es un procedimiento enormemente útil en las ocasiones en las que
las imágenes tengan poco contraste (lo que supone que presentan los niveles de gris muy
agrupados), porque el “estirado” del histograma incrementa el contraste y permite la apreciación de
los detalles.
6.1.5 Ecualización del Histograma
La ecualización distribuye los niveles de gris para que queden repartidos de una manera más
uniforme, consiguiendo un histograma uniforme, mejorando de esta forma el contraste de la
imagen. Esto se logra con OrquideaJAI abriendo el popmenú del panel correspondiente a la
imagen que se desea mejorar. Seguidamente se hace clic en el item Variar el Histograma,
apareciendo una Ventana/Diálogo tal y como se ilustra en la Figura 6.3. Luego se hace clic en
Ecualizar. Ver la ilustración de la Figura 6.6.

43
Imagen original (izquierda) y su histograma. Imagen y su histograma ecualizado
Figura 6.6

Mientras que la normalización reparte de manera proporcional los valores intermedios en el nuevo
rango de salida, en la ecualización se distribuyen los pixeles de manera que cada clase tenga
frecuencias semejantes de valores de gris.
6.1.6 Binarización
Dada una imagen, es posible convertirla en una imagen que
tenga solo dos tonos de gris: el nivel 0 (negro) y el nivel 255
(blanco). A este proceso se le denomina binarización. Esto se
logra con OrquideaJAI abriendo el popmenú del panel
Imagen Imagen Binarizada correspondiente a la imagen que se desea binarizar.
Figura 6.7
Seguidamente se hace clic en el item Binarizar. Ver Figura 6.7

6.2 Operaciones aritméticas con la imagen


En la sección 3.1 se trató como proceder con OrquideaJAI para operar aritméticamente las
imágenes.
6.2.1 Operaciones aritméticas con una imagen
Partiendo de que la imagen digital es, un arreglo matricial de números, se le puede restar, sumar,
multiplicar o dividir por un escalar. El resultado que se produce es el desplazamiento del
histograma hacia el negro o el blanco, según la operación de que se trate.
Con estas operaciones se puede sobrepasar la escala de representación de nivel de gris porque el
resultado puede producir algunos píxeles con valores por debajo de 0 o por encima de 255. Esto se
resuelve reasignando valores a estos píxeles. Por ejemplo, a los que queden con valores por debajo
de 0 se les reasigna el valor de 0 y a los que queden con valores por encima de 255 se les reasigna
255. Esto lo hace automáticamente OrquideaJAI (otros software usan criterios diferentes). La
Figura 6.8 muestra el resultado de aplicar las operaciones a la imagen, sumando, restando,
multiplicando y dividiendo por un escalar. Se puede observar como varía el histograma por efecto
de las operación aritmética respectiva.

44
Imagen Original Imagen Original sumándole una la constante: 50

Imagen Original restándole una la constante: 50 Imagen Original multiplicada por la constante: 2

Figura 6.8

Imagen Original dividida por la constante: 2

6.2.2 Operaciones aritméticas con varias imágenes


Igual que se ha propuesto la suma o la resta de una constante a cada uno de los píxeles del arreglo
matricial de la imagen, se puede proponer una operación aritmética entre dos imágenes operando
ambas píxel a pixel. El software utilizado se encarga de tomar decisiones aceptables cuando el
resultado se salga del rango de niveles de gris (0 a 255) o cuando por ejemplo, aparezca una
división por cero.
Por ejemplo la sustracción es empleada para detectar la diferencia entre dos imágenes. También se
usa en microscopía para hacer correcciones de problemas de iluminación ocasionados por
acomodaciones dinámicas de los sensores de las cámaras de video a la intensidad lumínica, o de las
alteraciones del haz de luz a su paso por las lentes del condensador del microscopio (mala
alineación de la lámpara respecto al eje óptico del microscopio); en ambos casos el resultado es la
presencia de regiones desigualmente iluminadas. El procedimiento para este tipo de correcciones
puede ser el siguiente: se toma la imagen del fondo, esto es, se toma una imagen después de
retirar la muestra de la platina del microscopio y se resta de la imagen original; la mejora podría
concluir sumando un fondo homogéneo de nivel de gris, semejante al que se espera cuando las
condiciones de iluminación son las adecuadas.
La suma es usada, por ejemplo, en el promediado de imágenes. Se pueden capturar varias
imágenes de una escena en un lapso de tiempo y luego se procede a sumarlas y dividirlas por el
número de ellas.

45
7
MEJORA DE LA IMAGEN
DOMINIO ESPACIAL
Operaciones de Área (Filtros Espaciales)

7.1 Fundamentos
El empleo de máscaras espaciales (ver sección 5.2.4) para el procesamiento de las imágenes se
denomina frecuentemente, filtrado espacial (frente al filtrado en el dominio de la frecuencia
empleando la transformada de Fourier), y las propias máscaras se denominan filtros espaciales. El
término espacial se refiere al hecho de que el filtro se aplica directamente a los pixeles que
representan a la imagen y no a una transformada de la misma, es decir, el nivel de gris de un píxel
se cambia y el nuevo valor se obtiene en función de los valores de los pixeles vecinos.
Los filtros espaciales pueden clasificarse basándose en su linealidad: filtros lineales y filtros
no lineales. A su vez los filtros lineales pueden
clasificarse como: filtros paso bajo que atenúan las
zonas de alto contraste (bordes o detalles muy
marcados de la imagen) y alteran muy poco las
zonas de bajo contrate, estas zonas son las
representativas de las regiones lentamente
Figura 7.1 Arriba: secciones de filtros en frecuencia con variables de la imagen, por lo tanto el contraste y
simetría circular. Abajo: secciones correspondientes a
filtros espaciales. (a) Filtro paso bajo. (b) Filtro paso alto. la intensidad de la imagen quedaran uniformizados
(c) Filtro paso banda
después del filtrado, eliminando en algo el ruido de
fondo. filtros paso alto que atenúan las zonas de bajo contraste y alteran muy poco las zonas de
alto contrate, resaltándose los borde y los detalles muy marcados o finos de la imagen y filtros paso
banda que afectan zonas intermedias de contraste. La forma de operar de los filtros lineales es por
medio de la utilización de máscaras que recorren toda la imagen operando cada vez sobre los
píxeles que se encuadran en la región de la imagen original que coincide con la máscara y el
resultado se obtiene mediante una computación (suma de convolución) entre los píxeles originales
y los diferentes coeficientes de las máscaras (ver sección 5.2.4).
Los filtros espaciales no lineales también operan sobre entornos. Sin embargo, su operación se
basa directamente en los valores de los píxeles en el entorno en consideración. Unos ejemplos de

46
filtros no lineales habituales son los filtros mínimo, máximo y de mediana que son conocidos como
filtros de rango. La actual versión de OrquideaJAI (versión 1.0) no incluye estos filtros.
Otra clasificación de los filtros espaciales puede hacerse basándose en su finalidad, y así se tienen
los filtros de realce (Sharpening) para eliminar zonas borrosas o filtros de suavizado
(Smoothing) para difuminar la imagen. También se tienen los filtros diferenciales que se
caracterizan por el tipo de máscaras (Laplaciano, Prewitt, Sobel, etc.), y se utilizan para la
detección de bordes. El proceso de detección de bordes se basa en realizar un incremento del
contraste en las zonas donde hay una mayor diferencia entre las intensidades, y en una reducción
de éste donde tenemos poca variación de intensidad. OrquideaJAI tiene disponibles los siguientes
filtros: Media, Gauss, Sharpen y Laplaciano.

7.2 Diseño de las máscaras o filtros espaciales Lineales

Los filtros lineales consisten en máscaras h( x, y ) que se convolucionan con la imagen original

f ( x, y ) para obtener una nueva imagen g ( x, y ) que analíticamente se representa por:

g ( x, y ) = f ( x, y ) ⊗ h( x, y )

La forma de operar se explicó en la sección 5.2.4.


En general los coeficientes del filtro (máscara) son números reales. Sin embargo en general se ha
extendido el convenio de expresar estos coeficientes con números enteros; por lo que los filtros se
diseñan empleando un arreglo matricial de números enteros pero los resultados de las suma de
convolución se divide por la suma de los coeficientes del filtro. En algunos casos el resultado
de la suma de los coeficientes es cero quedando en una situación de una división por cero, en cuyo
caso el diseñador debe tomar la opción de no dividir por cero, sino por ejemplo, dividir por uno y
observar si el resultado sobre la imagen filtrada sí es el esperado. Este es el caso de los filtros
laplacianos que se tratarán más adelante.

7.3 Filtrado Espacial Pasa Baja (suavizado–smoothing)


Bajo la denominación general de filtros de suavizado se engloba un conjunto de ellos cuya
característica común es la de esconder al vecino, de tal forma que disminuyen las diferencias de los
valores de los pixeles respecto a sus vecinos. El suavizado de imágenes se utiliza normalmente bajo
dos supuestos: dar a una imagen un difuminado o efecto especial y para la eliminación del ruido de
fondo.

47
El suavizado o filtrado espacial paso bajo borra los detalles más finos de una imagen, es decir,
conlleva una atenuación de las altas frecuencias (zonas de altos contrastes), mientras se mantienen
las bajas y medias frecuencias (las zonas de bajo e intermedio contraste). Tiene un buen número
de aplicaciones: algunas veces se emplea para simular una cámara desenfocada, o para restar
énfasis a un fondo ocultando algo el ruido de fondo (background).
Las máscaras de los filtros paso bajo deben tener todos sus coeficientes positivos y la
suma de ellos debe estar normalizada a uno. Normalmente el tamaño de la máscara (3x3, 5x5,
7x7,…) se toma en función de la cantidad de suavizado que se quiera. En este caso la visualización
del resultado es uno de los mejores métodos para saber si se ha elegido el tamaño adecuado o no.
Los tres principales filtros de suavizado son: el de la media, el gaussiano y el mediana. Los dos
primeros son lineales. OrquideaJAI dispone de los siguientes Filtros Pasa-Baja: Media 3x3, Media
5x5, Media 7x7, Gauss 1, Gauss 2, Gauss 3 y Gauss 4. Los coeficientes de estos filtros se presentan
en la Tabla 7.1.
De forma general, el arreglo matricial de un filtro de la media de dimensiones NxN, tiene todos los
elementos iguales a 1. Por lo tanto al aplicar el filtro se termina por asignar al píxel central de la
imagen filtrada el valor correspondiente a la media aritmética del valor de gris de los NxN pixeles
determinados de la “submatriz” máscara correspondiente

⎡1 1 1 1 1 1 1⎤
⎡1 1 1 1 1⎤ ⎢1 1 1 1 1 1 1⎥⎥
⎢1 ⎢
⎡1 1 1⎤ 1 1 1 1⎥⎥ ⎢1 1 1 1 1 1 1⎥
1 ⎢ 1 ⎢ ⎥
h( x, y ) = ⎢⎢1 1 1⎥⎥ h( x, y ) = h ( x, y ) =
1
⎢1 1 1 1 1⎥ 1 1 1 1 1 1 1⎥
9 25 ⎢ ⎥ 49 ⎢
⎣⎢1 1 1⎥⎦ ⎢1 1 1 1 1 1 1⎥
⎢1 1 1 1 1⎥
⎢ ⎥
⎢⎣1 1 1 1 1⎥⎦ ⎢1 1 1 1 1 1 1⎥
⎢1 1 1 1 1 1 1⎥⎦

Media 3x3 Media 5x5 Media 3x3

⎡1 2 1⎤ ⎡25 50 25⎤ ⎡ 6 25 6 ⎤
h( x, y ) = ⎢2 4 2⎥⎥
1 ⎢ 1 ⎢
50 100 50⎥⎥
1 ⎢
h ( x, y ) = h ( x, y ) = 25 100 25⎥⎥
16 400 ⎢ 224 ⎢
⎢⎣1 2 1⎥⎦ ⎣⎢25 50 25⎥⎦ ⎢⎣ 6 25 6 ⎥⎦

Gauss 1 Gauss 2 Gauss 3


⎡6 18 18 6 ⎤
25
⎢18 50 50 18 ⎥⎥
71
1 ⎢
h ( x, y ) = ⎢25 71 100 71 25⎥
852 ⎢ ⎥
⎢18 50 71 50 18 ⎥
⎢⎣ 6 18 25 18 6 ⎥⎦

Gauss 4

Tabla 7.1

48
En cuanto al filtro gaussiano, debe su nombre, a la forma como se definen sus coeficientes, los
cuales siguen la forma de una campana de Gauss. El máximo de la distribución coincide con la
media y, de manera simétrica a la derecha y a la izquierda de la media se colocan los valores según
la desviación estándar de la distribución.
Para aplicar estos filtros con OrquideaJAI, se debe abrir la
calculadora de imágenes, escoger en ella el panel correspondiente
a Filtros y se hace clic en el botón Paso Bajo del subpanel
etiquetado como Filtros Espaciales, abriéndose de esta forma
una Ventana/Diálogo como se ilustra en la Figura 7.2 , en la cual
se selecciona el filtro deseado. Se debe observar que como el
Figura 7.2
objetivo principal de OrquideaJAI, es el de servir como
herramienta de enseñanza, el software hace visible los coeficientes de los filtros.
En el ejemplo de la Figura 7.2 se escogió el filtro Media
7x7 y se obtuvo el resultado ilustrado en la Figura 7.3. Se
observa claramente que el efecto del filtro fue el de
difuminar la imagen original (una especie de efecto de
desenfoque de cámara).
Imagen Original Imagen Filtrada
Figura 7.3

7.4 Filtrado Espacial Pasa Alta


7.4.1 Filtros de Realce (Enhaced)
El objetivo principal del realce (enhaced) o enfatizado (sharpen) es el de destacar los detalles
finos de una imagen o intensificar detalles que han sido difuminados, bien sea por error o bien por
efecto natural del método de adquisición de la imagen. El realce de una imagen aumentará su
contraste. Las utilidades del realce de las imágenes son variadas e incluyen aplicaciones que van
desde la impresión electrónica y las imágenes médicas hasta las inspecciones industriales e incluso
la detección autónoma de objetivos en las armas inteligentes.
Para la implementación del realce se utilizan, lo mismo que para el suavizado, técnicas basadas en
la aplicación de filtros. El realce de una imagen se basa en el filtro paso alto. Un filtro paso alto
eliminará los componentes bajos de frecuencia (como el medio de la imagen) y mostrará sólo los
detalles altos.
Por lo general, la máscara de convolución usada comúnmente en el realce, es decir, la máscara de
filtro paso alto, tiene un coeficiente positivo en su centro, mientras que los coeficientes vecinos son
negativos o cero. Además la suma de los coeficientes es uno.

49
⎡ 0 −1 0 ⎤ ⎡− 1 − 1 − 1⎤ ⎡ − 1 − 2 − 1⎤
h( x, y ) = ⎢⎢− 1 5 − 1⎥⎥ h( x, y ) = ⎢⎢− 1 9 − 1⎥⎥ h( x, y ) = ⎢⎢− 2 13 − 2⎥⎥
⎣⎢ 0 − 1 0 ⎥⎦ ⎢⎣− 1 − 1 − 1⎥⎦ ⎢⎣ − 1 − 2 − 1⎥⎦

Sharpen 1 Sharpen 2 Sharpen 3

⎡ − 2 − 2 − 2⎤ ⎡− 3 − 3 − 3⎤ ⎡ − 4 − 4 − 4⎤
h( x, y ) = ⎢⎢− 2 17 − 2⎥⎥ h( x, y ) = ⎢⎢− 3 25 − 3⎥⎥ h( x, y ) = ⎢⎢− 4 33 − 4⎥⎥
⎣⎢− 2 − 2 − 2⎥⎦ ⎢⎣− 3 − 3 − 3⎥⎦ ⎣⎢− 4 − 4 − 4⎥⎦

Sharpen 4 Sharpen 5 Sharpen 6

⎡− 1 − 1 − 1 − 1 − 1⎤ ⎡− 2 − 2 − 2 − 2 − 2⎤ ⎡− 1 − 1 − 1 − 1 − 1⎤
⎢− 1 ⎢− 2 − 2 − 2 − 2 − 2⎥⎥
⎢ − 1 − 1 − 1 − 1⎥⎥ ⎢
⎢− 1 − 2 − 2 − 2 − 1⎥⎥

h ( x, y ) = ⎢ − 1 − 1 26 − 1 − 1⎥ h ( x, y ) = ⎢ − 2 − 2 49 − 2 − 2⎥ h ( x, y ) = ⎢ − 1 − 2 33 − 2 − 1⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢− 1 − 1 − 1 − 1 − 1⎥ ⎢− 2 − 2 − 2 − 2 − 2⎥
⎢− 1 − 2 − 2 − 2 − 1⎥
⎢⎣− 1 − 1 − 1 − 1 − 1⎥⎦ ⎢⎣− 2 − 2 − 2 − 2 − 2⎥⎦ ⎢⎣− 1 − 1 − 1 − 1 − 1⎥⎦
Sharpen 7 Sharpen 8 Sharpen 9

⎡− 8 − 5 − 2 − 5 − 8⎤
⎢− 5 3 9 3 − 5⎥⎥

h( x, y ) = ⎢− 2 9 33 9 − 2⎥
⎢ ⎥
⎢− 5 3 9 3 − 5⎥
⎢⎣ − 8 − 5 − 2 − 5 − 8 ⎥⎦

Sharpen 10

Tabla 7.2

OrquideaJAI dispone de los siguientes Filtros Pasa-Alta de realce: Sharpen 1, Sharpen 2, Sharpen
3, Sharpen 4, Sharpen 5, Sharpen 6, Sharpen 7, Sharpen 8,
Sharpen 9 y Sharpen 10. Los coeficientes de estos filtros se
presentan en la Tabla 7.2.
Para aplicar estos filtros con OrquideaJAI, se debe abrir la
calculadora de imágenes, escoger en ella el panel correspondiente a
Filtros y se hace clic en el botón Paso Alto del subpanel
etiquetado como Filtros Espaciales, abriéndose de esta forma una
Ventana/Diálogo como se ilustra en la Figura 7.4, en la cual se
Figura 7.4 selecciona el filtro deseado. Allí mismo se pueden observar los
coeficientes de los filtros, esto, con fines didácticos.

50
Imagen Original Imagen Filtrada con sharpen 1 Imagen Filtrada con sharpen 2 Imagen Filtrada con sharpen 10
Figura 7.5

En la Figura 7.5. se ilustra el resultado sobre una imagen después de aplicar los filtros sharpen 1, 2
y 10 de OrquideaJAI.

7.4.1 Filtros diferenciales. Detección de bordes.

Uno de los más importantes y sencillos procesos es la detección de bordes. Importante porque
de él se puede empezar a extraer gran información de la imagen, como pueden ser las formas de
los objetos que la componen, y sencillo porque los operadores de detección de bordes son simples
máscaras de convolución. Estos operadores son utilizados en aplicaciones para el reconocimiento
de formas, aplicaciones industriales, militares, etc.

Los filtros utilizados para la detección de bordes son filtros diferenciales, que se basan en la
derivación o diferenciación. Dado que el promediado de los píxeles de una región tiende a
difuminar o suavizar los detalles y bordes de la imagen, y esta operación es análoga a la
integración, es de esperar que la diferenciación tenga el efecto contrario, el de aumentar la nitidez
de la imagen, resaltando los bordes.
OrquideaJAI proporciona el filtro laplaciano. Este se define como una derivada de segundo
orden,

El Laplaciano es un buen ejemplo de un operador de derivada de segundo orden, se distingue de


los otros operadores porque es omnidireccional, es decir, destacará los bordes en todas las
direcciones. El operador Laplaciano producirá bordes más agudos que la mayoría de las otras
técnicas. Una característica fundamental de los filtros laplacianos es que la suma de sus
coeficientes es cero.
Para detección de bordes se utilizan con mayor eficiencia los operadores diferenciales de primer
orden: Sobel, Prewitt, gradiente. Estos no están disponibles en la actual versión de OrquideaJAI.
OrquideaJAI dispone de los siguientes Filtros Laplacianos: Laplaciano 1, Laplaciano 2 y Laplaciano
3. Los coeficientes de estos filtros se presentan e la Tabla 7.3.

51
⎡− 1 − 1 − 1 − 1 − 1⎤
⎢− 1 − 1 − 1 − 1 − 1⎥⎥
⎡ 0 −1 0 ⎤ ⎡− 1 − 1 − 1⎤ ⎢
h( x, y ) = ⎢⎢− 1 4 − 1⎥⎥ h( x, y ) = ⎢⎢− 1 8 − 1⎥⎥ h( x, y ) = ⎢ − 1 − 1 24 − 1 − 1⎥
⎢⎣ 0 − 1 0 ⎥⎦ ⎢⎣− 1 − 1 − 1⎥⎦ ⎢ ⎥
⎢− 1 − 1 − 1 − 1 − 1⎥
⎢⎣− 1 − 1 − 1 − 1 − 1⎥⎦
Laplaciano 1 Laplaciano 2 Laplaciano 3
Tabla 7.3

Para aplicar estos filtros con OrquideaJAI, se


debe abrir la calculadora de imágenes, escoger
en ella el panel correspondiente a Filtros y se
hace clic en el botón Paso Alto del subpanel
etiquetado como Filtros Espaciales,

Imagen Original Imagen Filtrada con laplaciano 3 abriéndose de esta forma una Ventana/Diálogo
Figura 7.6 como se ilustra en la Figura 7.4, en la cual se
selecciona el filtro deseado. En la Figura 7.6. se ilustra el resultado sobre una imagen después de
aplicar el filtro laplaciano 3 de OrquideaJAI.

52
8
MEJORA DE LA IMAGEN
DOMINIO DE LA FRECUENCIA

8.1 Métodos en el dominio de la frecuencia

La base de las técnicas en el dominio de la frecuencia es el teorema de convolución. Sea g ( x, y )

una imagen formada por una convolución de una imagen f ( x, y ) y un operador lineal invariante

de posición h( x, y ) , es decir,

g (x , y ) = h (x , y ) ⊗ f (x , )
Entonces, por el teorema de convolución, se cumple la siguiente relación en el dominio de la
frecuencia:
G (u, v ) = H (u, v )F (u, v )

Donde G, H y F son respectivamente las transformadas de Fourier de g , h y f . En la


terminología de sistemas lineales, la transformación H (u , v ) se denomina la función de
transferencia del proceso. En óptica H (u , v ) se denomina la función de transferencia óptica, y su
magnitud es la modulación de la función de transferencia.
En una aplicación típica de mejora de la imagen, f ( x, y ) es conocida y el objetivo, después de

calcular F (u , v ) , es seleccionar H (u , v ) de forma que la imagen deseada, que es la transformada

[ ]
de Fourier inversa ( ℑ ) de H (u , v )F (u , v ) , es decir,
−1

g ( x, y ) = ℑ −1 [H (u, v )F (u, v )]
presente resaltada alguna característica de f ( x, y ) . Por ejemplo, se pueden acentuar los bordes

de f ( x, y ) empleando una función H (u , v ) que ponga énfasis en las componentes de lata

frecuencia de F (u , v ) . En al Figura 8.1 se ilustra lo dicho.

53
Figura 8.1. a. Proceso (filtrado) en el dominio espacial y b. Proceso (filtrado) en el dominio de la frecuencia

En la unidad 7 se trató el cómo filtrar datos de la imagen mediante convoluciones en el dominio


espacial; es también posible y muy común el filtrado en el dominio de la frecuencia. Basándose en
el teorema de convolución (convolucionar las funciones en el dominio espacial es igual que
multiplicar sus espectros en el dominio frecuencial) el proceso del filtrado en el dominio de las
frecuencias se realiza siguiendo los siguientes pasos,

1. Transformar los datos de la imagen al dominio frecuencial mediante la DFT.


2. Multiplicar el espectro de la imagen con alguna máscara de filtrado.
3. Transformar el espectro de vuelta al dominio espacial empleando la IDFT.

Hay muchos tipos de filtros pero la mayoría es una derivación o una combinación de cuatro tipos
básicos: paso bajo, paso alto, paso banda, y banda eliminada. Los filtros paso banda y banda
eliminada se pueden crear por la sustracción apropiada y la adición de las respuestas en frecuencia
de los filtros paso bajo y paso alto. El filtro paso bajo deja pasar frecuencias bajas mientras que
atenúa las frecuencias más altas. Los filtros paso altos atenúan las frecuencias bajas y dejan pasar
frecuencias más altas. Los filtros paso banda permiten una banda específica de frecuencia.
OrquideaJAI dispone de dos filtros ideales, uno pasa alta y uno pasa baja. Para emplearlos siga
este procedimiento:
• Importar la imagen a la que se le desea aplicar el filtro; abrir la calculadora de imágenes.
• Escoger el panel etiquetado Filtros.
• En este panel se hace clic sobre alguno de los dos botones (Paso Alto o Paso Bajo) del
subpanel derecho etiquetado Filtros Frecuenciales.
• Debe aparecer una Ventana/Diálogo, en la cual se debe escoger el número del panel donde
está ubicada la imagen a filtrar y el número del panel donde se va a ubicar la imagen
filtrada.
• Hacer clic en el botón etiquetado Previsualizar (ver Figura 8.2). Se puede graduar el
radio del filtro.

54
Observe que el usuario no se debe preocupar por los pasos 1,
2 y 3 mencionados anteriormente, ya que OrquideaJAI hace
esto automáticamente.

Figura 8.2

8.2 Ejemplos más elaboradossobre filtraje en el dominio de las frecuencias


Con OrquideaJAI También es posible la construcción de filtros manualmente en cuyo caso se
debe proceder así:

• Importar la imagen a filtrar.


• Escoger el panel etiquetado Transformadas.
• Hacer clic en el botón etiquetado DFT.
• Escoger el número del panel donde se encuentra la imagen a filtrar y el número del panel
donde se va a ubicar el resultado de la operación.
• Escoger Módulo y hacer clic en el botón Previsualizar y luego clic en Aceptar.
• Repetir este paso para obtener la Fase.
• Construir “manualmente” el filtro (máscara) empleando diferentes funciones de la
calculadora (Generación, Aritmética, Geometría, …). La máscara debe ubicarse en un
panel.
• Multiplicar el módulo del espectro de Fourier de la imagen con la máscara de filtrado y
ubicar el resultado en un panel.
• Regresar al panel de la calculadora etiquetado Transformadas y hacer clic en el botón
etiquetado IDFT. Diga en que panel están ubicados el módulo de la transformada (ya
filtrado) y la fase y hacer clic en Previsualizar y luego en Aceptar.

Ejemplo 1:
Se tiene la imagen de la Figura 8.3. El objetivo es eliminar las rayas horizontales presentes en ella.

55
Figura 8.3

Para esto primero se procede a obtener el


módulo y la fase del espectro de Fourier de la
imagen y se ubican en dos de las celdas de
OrquideaJAI, Figura 8.4

Módulo del espectro de Fourier Fase del espectro de Fourier


Figura 8.4

La información de las rayas horizontales se encuentra en la secciones del


espectro (región de frecuencias espaciales) que se marcan con los rectángulos
rojos en la Figura 8.5,

Figura 8.5

Por lo tanto es necesario diseñar una máscara que elimine la contribución


de esas frecuencias. Una buena máscara puede ser la ilustrada en la Figura
8.6:

Figura 8.6

Para construirla con OrquideaJAI se puede proceder como sigue:


• Abrir la calculadora digital.
• Seleccionar el panel correspondiente a la etiqueta Generar.
• Hacer clic en Rectángulo. Aparece la Ventana/Diálogo de la
Figura 8.7,
Figura 8.7

56
• Se debe escoger L= 100, H=100, x=128, y=64, Nivel de gris del
fondo=255, Nivel de gris del rectángulo=0, Número del panel donde
se ubicará la imagen Rectángulo generada. Luego se previsualiza. Si
se está satisfecho se acepta y se debe obtener la imagen generada
de la Figura 8.8, Figura 8.8

• En la calculadora se selecciona el panel etiquetado


Geometría. Luego se hace clic en el botón
etiquetado Rotar. Debe aparecer la
Ventana/Diálogo de la figura 8.9,
Figura 8.9

• Se selecciona el panel donde está ubicada la imagen generada de la


Figura 8.8, se asignan los siguientes valores,

Rotación = 180, Centro x = 128, Centro y = 128.

y se elige el número del panel donde se va a depositar el resultado.


Figura 8.10

La nueva imagen generada se ilustra en la Figura 8.10,

• Se selecciona en la calculadora el panel etiquetado Aritmética. Se


procede a multiplicar las imágenes generadas (Figuras 8.8 y 8.10)
obteniéndose la imagen de la Figura 8.11,

Figura 8.11

57
• A continuación se debe multiplicar esta imagen con el módulo de la transformada de
Fourier. Sin embargo antes se debe dividir la imagen de la
Figura 8.11 por la constante 255, con el fin de que la
multiplicación por el módulo de la transformada no cambie
los niveles de gris de las regiones de frecuencia que no se
desean filtrar. La resultante de esa última operación se debe
ubicar en una de las celdas de OrquideaJAI. Ahora sí, se
debe proceder a multiplicar esta última imagen con el
Figura 8.12
módulo de la transformada y el resultado se deposita en
otra celda. Todas estas operaciones se hace con el modo Aritmética de la calculadora de
imágenes. El resultado de todas estas operaciones se ilustra en la Figura 8.12,

• Por último se procede a obtener la transformada


inversa de Fourier. Para esto se escoge el panel de la
calculadora etiquetado Transformadas y se hace clic
en IDFT, apareciendo la Ventana/Diálogo de la Figura
8.13,

Figura 8.13

• Se deben asignar los respectivos números de los paneles donde se


encuentran el módulo de la transformada, ya filtrado y la fase
original de la transformada, se previsualiza y acepta, y se obtiene
la imagen de la Figura 8.14,

Figura 8.14

Como puede observarse se han eliminado las rayas horizontales. Es obvio que también se ha
distorsionado algo la imagen del fondo, pero nada que no se pueda arreglar haciendo un post-
procesamiento.

Ejemplo 2

58
Interpretación de la transformada de Fourier de una imagen.
En la sección 4.2, se expresa como una imagen se puede expresar como una suma de armónicos, y
se ilustra esto con la Figura 4.3. Con el presente ejemplo se aclarará más este importante
concepto.
En la Figura 8.16 se ilustra una imagen con su
espectro. Siguiendo un proceso similar al del ejemplo
1, se pueden obtener diferentes armónicos de la
imagen a través del filtraje en el domino de la
frecuencia. De esta forma se puede verificar
Imagen Módulo de la Transformada visualmente como cada una de las imágenes
Figura 8.16 obtenidas en estos filtrajes corresponden a
diferentes imágenes sinusoidales que componen la imagen original. Esto se ilustra en la Figura 8.17
para algunos armónicos. Se debe aclarar que en las imágenes armónicas obtenidas se observa algo
de “ruido” por lo que no corresponden exactamente a armónicos planos.

Imagen de frecuencia espacial cero Transformada Filtrada que da origen a la imagen de la izquierda

Un Armónico con frecuencia espacial fy = 0 Transformada Filtrada que da origen a la imagen de la izquierda

Un Armónico con frecuencia espacial fx = 0 Transformada Filtrada que da origen a la imagen de la izquierda

59
Un Armónico con frecuencia espacial f x ≠ 0 y f ≠ 0 Transformada Filtrada que da origen a la imagen de la izquierda
y

Un Armónico con frecuencia espacial f x ≠ 0 y f y ≠ 0 Transformada Filtrada que da origen a la imagen de la izquierda

Figura 8.17

FIN.

60
Bibliografía

1. González R., Woods R., Tratamiento Digital de Imágenes, Addison-Wesley/Díaz De Santos,


1996.
2. Pertusa J., Técnicas de Análisis de Image - Aplicaiones en Biología-, Univesrsitat de
Valencia, 2003.
3. Lyon L., Image Processing in Java, Prentice Hall, 1999.
4. Pajares G., De La Cruz J., y otros, Imágenes Digitales – Procesamiento Práctico con Java,
Alfaomega, Ra-ma, 2004.
5. Thompson C., Shure L., Image Processing Toolbox, for Use with MATLAB, The Maths Works
Inc, 1995.
6. Goodman W.,Introduction to Fourier Optics, McGraw-Hill, 1988.
7. Hecht E., Óptica, Addison-Wesley, 2000.
8. Oppenheim A., Willsky A., Señales y Sistemas, Prentice-Hall Hispanoamericana, S.A., 1883.
9. Klein M., Furtak T., Optics, John Wiley – Sons, 1993.
10. Davidson M., Molecular Expressions – Optical Microscopy Primer- [web]
http://micro.magnet.fsu.edu/primer/index.html [Último Acceso, 10 Marzo 2006].
11. Mosquera G. A., Bloques Temáticos – Tratamiento Computacional de Imágenes-, [web]
http://gva1.dec.usc.es/~antonio/docencia/20042005tci/teoria/teoria.html [Último Acceso,
10 Marzo 2006].
12. Dapena A., Técnicas de Procesado de Imagen, [web]
http://www.des.udc.es/~adriana/TercerCiclo/CursoImagen/curso/web/Intro.html [Último
Acceso, 10 Marzo 2006].

61

También podría gustarte