Sunteți pe pagina 1din 7

FUSIÓN DE IMAGENES USANDO

WAVELETS BIVALENTES
Casana Pajares, Oscar Mija Ferrer, Joel Velásquez Haro, César

13 de Julio del 2009

1. RESUMEN
En el presente trabajo se presenta un esquema empleado para la
fusión de imágenes basado en un análisis wavelet y utilizando la trans-
formada wavelet Haar para encontrar la matriz de coeficientes Cij. El
cálculo de las transformadas Wavelet de las imágenes de entrada da
como resultado coeficientes que son elegidos bajo una regla de fusión.
La imagen final es obtenida calculando la transformada inversa de la
imagen que ha sido fusionada en el dominio de la transformada. Este
metodo se aplico para el caso de dos imágenes multifoco usando la
transformada wavelet discreta, con base en la función Haar.

2. INTRODUCCIÓN
La fusión de imágenes es el proceso de combinar dos o más imágenes
en una sola que integre información complementaria, de cada una de
las imágenes de entrada para propósitos de apreciación visual humana
y procesamiento por computadora. Uno de los objetivos principales de
la fusión es hacer que muchas caracterı́sticas surjan en la nueva imagen.
Dicha fusión es frecuentemente requerida para imágenes obtenidas en
diferentes modalidades o técnicas de captura de una misma escena u
objetos. El método más simple de fusión de imágenes es tomar el prome-
dio de dos imágenes pı́xel a pı́xel. Sin embargo, cuando este método es
aplicado, el contraste en las caracterı́sticas presentes en cada una de
las imágenes se reduce. El metodo se basa en calcular los coeficientes
de la Transformada Wavelet para luego fusionarlos mediante una regla
de fusión y finalmente calcular la transformada inversa Wavelet de los
coeficientes ya fusionados, resulta en una mejor preservación tanto de
orillas como de información complementaria de los objetos u escenas
de la nueva imagen fusionada.

1
3. FUNCIÓN WAVELET
La transformada Wavelet es una representación en tiempo- frecuen-
cia. Al representar una señal en frecuencia y en tiempo se podrı́a cortar
la señal en partes y analizarlas por separado. Las wavelets permiten que
la información sea codificada por medio de los coeficientes de wavelet de
acuerdo a niveles de detalle o medidas de la cantidad detallada de infor-
mación, es decir permite que la información sea analizada dependiendo
de las escalas o resoluciones. Las wavelets se usan como funciones base
para representar otras funciones tal y como se hace con las funciones
seno y coseno en la transformada de Fourier. La transformada wavelet
es la representación de una señal en términos de una forma de longi-
tud finita o de oscilación rápidamente decreciente y con valor medio
cero, llamada wavelet madre o función prototipo. Esta forma de onda
se escala y desplaza para generar ondas que si se superponen igualan
a la señal original. Se puede decir que es una función en términos de
oscilaciones tanto en el tiempo como en la frecuencia. El análisis con
wavelets permite definir una función prototipo o wavelet madre que no
siempre es la misma, es decir las funciones base no siempre son iguales a
diferencia de lo que ocurre en la transformada de Fourier donde las fun-
ciones base son siempre el seno y coseno. Las wavelets madre se pueden
diseñar dependiendo de los gustos y las necesidades del diseñador siem-
pre y cuando cumplan algunas normas. A continuación se describen los
conceptos matemáticos básicos para la implementación de la transfor-
mada wavelet discreta, la cual esta basada en una función wavelet. El
conjunto de funciones base wavelet ψa,b (x) que se busca son del tipo
medible y cuadraticamente integrables sobre la recta real L2 (R) por lo
que ∀ψn (x) ∈ L2 (R) se cumple:

Z ∞
| ψa,b (x) |2 dx < ∞
−∞

En análisis wavelet, nosotros generamos un conjunto de funciones base,


por escalamiento y traslación de una sola función prototipo, ψ(x), la
cual llamaremos Wavelet Madre. Se tiene entonces que las funciones
wavelet base ψa,b (x) pueden ser generadas por traslaciones b y es-
calamientos a del wavelet madre ψ(x) como se muestra en siguiente
expresión:
 
ψa,b (x) = √1 ψ x−b
a a

2
4. WAVELETS BIVALENTES
Las funciones wavelets del tipo bivalente se consiguen con la se-
lección de valores adecuados para a y b. Una forma de calcular la
transformada wavelet es vı́a una expansión en series wavelet, donde
ahora el wavelet Madre, una vez escalado y trasladado, forma un con-
junto de funciones base, pero ahora sus escalamientos serán binarios
(factores de dos, 2p ) y sus traslaciones bivalentes. Una traslación bi-
valente es un desplazamiento b = q2p , el cual es un múltiplo entero q
del factor de escala binario, por lo que el ancho del wavelet, a = 2p ,
tambien lo es. Sustituyendo los nuevos valores para a y b en la ecuacion
anterior, resulta un wavelet bivalente expresado como:
x−q2p
 
ψp,q (x) = √1 ψ
2p 2p

es decir:
 
ψp,q (x) = 2p/2 ψ 2−p/2 x − q

donde −∞ < p, q < ∞ son números enteros, el entero p determina


la dilatación o escalamiento, mientras que q especifica la traslación.
Ahora restringimos el wavelet Madre al intervalo [0,1], se tiene entonces
una familia de funciones bases que pueden ser especificadas por un solo
ı́ndice k.

ψk (x) = 2p/2 ψ (2p x − q)

donde p y q son funciones de k, como se muestra en la siguiente


relación

k = 2p + q − 1

Con k=1,..,N-1, p=0,1,...,n-1 y q=1,..,2p en donde N = 2n , y n


un numero entero positivo. Una función f(x) puede ser expandida en
términos del conjunto de funciones wavelet base como:

f(x)=Σ∞
K=0 ck ψk (x)

donde los coeficientes Ck de la transformada están dados por pro-


ductos internos

ck = hf (x), ψk (x)i

3
donde asumimos que ψ0 (x) = 1
Se tiene aquı́ la base de la transformada wavelet discreta. Si f es
una función discreta muestreada en N valores, con N en potencias de
2, y si ψk (x) es un wavelet bivalente, entonces podremos calcular la
transformada wavelet discreta usando versiones discretas de las fun-
ciones anteriores. Cuando se usan wavelets discretas para transformar
una señal continua el resultado es una serie de coeficientes que se cono-
cen como la descomposición en series wavelets. Es posible reconstruir
la señal original a partir de su transformada wavelet discreta. Ademas
esta provee suficiente información para analizar y sintetizar una señal
mientras reduce la cantidad de operaciones a realizar pues no contiene
información redundante.

5. TRANSFORMADA WAVELET HAAR


Alfred Haar, un matemático Húngaro, descubre una ”base”de fun-
ciones que se reconocen actualmente como las primeras wavelets. Con-
sisten en un breve impulso positivo seguido de un breve impulso neg-
ativo. Tales funciones constituyen una base ortogonal. Por lo que la
transformada Haar discreta se beneficia de las propiedades de trans-
formaciones ortogonales. La inversa de una transformación ortogonal
es también particularmente fácil de implementar porque esta es la
transpuesta de una transformación directa. La transformada de Haar
se basa en una clase de matrices ortogonales
√ cuyos elementos son 1,
-1 ó 0 multiplicados por potencias de 2. La transformada de Haar
ortonormal es otra transformada de imágenes eficiente en cuanto a las
operaciones. La transformada de un vector de N puntos necesita so-
lamente 2(N-1) sumas y N multiplicaciones. La transformada wavelet
Haar es una transformada lineal separable basada en la función escalón,
g(x), y en la función Haar, h(x), expresadas como.

(
1 0 ≤ x ≤ 12
g(x) =
0 otra parte

Si 0 ≤ x ≤ 12


1
h(x) =  −1 Si 21 ≤ x ≤ 1
 0 otra parte

Podemos generar una familia de wavelets bivalentes hk (x), mediante la


siguiente expresión:
h0 = √1N

4
q− 1
 
2p/2 Si q−1
2p1
≤ x < 2p2 
1
hk = √ ∗ 

q− .
 2−p/2 Si 2p2 ≤ x < 2qp
N

0 otra parte

en donde p, q y k están definidas anteriormente en el documento.


Ahora queremos discretizar éstos resultados usando xi = N0 , N1 , N2 , ..., NN−1 ,
con i=0,1,..,N-1, para obtener la derivación de matrices de transfor-
mación Haar de orden NxN. Por tanto, el kth renglón de la matriz
Haar de elementos se genera mediante:
h0 (xi ) = √1
N

q− 1
 
2p/2 Si q−1
2p1
≤ xi < 2p2 
1 
hk (xi ) = √  q−
 2−p/2 Si 2p2 ≤ xi < 2qp
.
N

0 otra parte

Matrices de transformación Haar ortonormal para los casos N=4 y


N=8, se muestran a continuación.
 
1 1 1 1
√  1 1 −1 −1 
h∗ N=
 
1,414 −1,414 0 0

 
0 0 1,414 −1,414

1 1 1 1 1 1 1 1
 

 1 1 1 1 −1 −1 −1 −1  

 1,414 1,414 −1,414 −1,414 0 0 0 0 

√ 
 0 0 0 0 1,414 1,414 −1,414 −1,414 

h∗ N=  

 2 −2 0 0 0 0 0 0 


 0 0 2 −2 0 0 0 0 

0 0 0 0 2 −2 0 0
 
 
0 0 0 0 0 0 2 −2

El resultado de todo esto es un conjunto de funciones base ortonor-


males, siendo k el ndice de las funciones base. El wavelet Haar básico es
continuamente reducido por potencias de dos. Cada wavelet reducido
es transladado por incrementos igual a su ancho, por lo que el conjunto
de wavelets a cualquier escala cubre completamente el intervalo.
Las propiedades de la transformada Haar son:

1. La transformada Haar es real y ortogonal, por lo tanto

5
Hr = Hr*
Hr−1 = HrT

2. La transformada Haar es una transformada muy rápida.


3. Los vectores base de la matriz Haar son secuencialmente ordena-
dos.

Para definir la Transformada Haar de una imagen bidimensional, es


necesario que N = 2k y M = 2l con k,l enteros y Ai,j una imagen de
tamaõ bidimensional MXN. La transformada Haar de Ai,j conduce a
una matriz de tamao MXN de coeficientes Ci,j dados por:

Ci,j = Hm [Ai,j ]HnT

La imagen Ai,j puede ser recuperada mediante la matriz de coefi-


cientes C, calculando la transformada inversa de Haar para la imagen,
mediante:
T
Ai,j = Hm [Ci,j ]Hn

6. ESQUEMAS DE FUSION
Sean Ai,j y Bi,j un par de imágenes digitales cuyas transformadas
wavelet w, se denotan como Ci,j y Di,j . La regla de fusión , consiste en
el cálculo de los valores máximos de los coeficientes dados por la trans-
formada wavelet para cada una de las imágenes de entrada, quedando
como:

C(i, j) Si C(i, j) > D(i, j)
f (i, j) =

 D(i, j) Si D(i, j) > C(i, j)
C(i,j)+D(i,j)
2
en otro caso

De aquı́ se calcula la transformada wavelet inversa de la fusión de las


transformadas, F(i,j)= w− 1[f (i, j)]obteniendo ası́ la imagen fusionada.

7. ALGORITMO
Entrada : Imagen img1, Imagen img2.
Salida: Imagen fusionada.
Paso 1: Obtener las matrices en escalas de grises de las imágenes
img1 y img2 con sus respectivas dimensiones.

6
Paso 2: Obetner las matrices de la transformada Haar de cada una
de las imágenes.
Paso 3: Aplicar la función de fusión de imágenes.
Paso 4: Obtener la transformada inversa Haar de las matrices fu-
sionadas.

8. EXPERIMENTOS Y RESULTADOS
El método descrito anteriormente fue aplicado fundamentalmente
para el caso de dos imágenes multifoco usando la transformada wavelet
discreta, con base en la función Haar.

9. CONCLUSIONES Y TRABAJOS FUTUROS


Se presentaron los resultados obtenidos con una técnica de fusión
de imágenes digitales, el algoritmo está basado en la Transformada
Wavelet Discreta, teniendo como base a las funciones Haar, escaladas y
trasladadas. Se produjo una imagen final que conserva orillas y regiones
de interés, logrando ası́ una mejor percepción visual. El método desar-
rollado tiene aplicaciones en imágenes médicas provenientes de sensores
diversos. Por ejemplo MRI (Magnetic Resonance Imaging) y CT (Com-
puted Tomography). Imágenes provenientes de sensores con diferentes
longitudes de onda, como IR (infrarrojo) y visible. Basándose en el al-
goritmo desarrollado se logra el computó de funciones más complejas
como Daubechies, y con ello, otras aplicaciones como: reconocimiento
de patrones, filtrado de imágenes, creación de largometrajes de ani-
mación, etc.

Referencias
[1] Digital Image Processing - R. Gonzles y R. Wood - 2da edicion -
Prentice Hall - 2002.
[2] Articulo La Transformada Wavelet y su aplicación en la Ingenierı́a
biomédica - Juliana Villa Bedoya y Juan Manuel Marı́a

S-ar putea să vă placă și