Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

download Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

of 14

Transcript of Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

  • 7/25/2019 Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

    1/14

    XI 1 23 polibits 9

    Sistema de Codificacin Sub-banda de Imgenes con Wavelets

    Si st em a d e Cod i f i ca c in

    Su b -ban d a d e Im gen es conWave l e t s

    Si st em a d e Cod i f i c a cin

    Su b -b an d a d e Im gen es conWave l e t s

    E

    Gus tavo A b raham Mas L eva r i o , Ma r a

    Au r o r a Segu r a Co r o na , M i g ue l An ge l

    Lp ez Ma rt nez

    Pro feso res de l C I C-IPN

    gmas@red ipn . i pn .mx

    n este trabajo se propone unasolucin para implementar unsistema de compresin de im-

    genes basndose en un esquema de-nominado codificacin sub-banda.Bajo este esquema se propone lautilizacin de la transformada llama-da wa ve l e t . Por otra parte, se pre-tende que el sistema se implante usan-do un modelo de coprocesamientoentre una computadora husped yuna tarjeta de expansin.

    INTROD UCC IN

    Hoy en da circulan en diversosmedios grandes volmenes de infor-macin. Como resultado, la habilidadpara almacenar, accesar y transmitiresta informacin en una manera efi-ciente es crucial. Esto es particular-mente cierto para el caso de imge-nes digitales, donde tpicamente serequiere un gran nmero de bits pararepresentar una imagen digital sim-ple; con los rpidos avances en latecnologa de sensores y la electrni-ca digital, este nmero crece aun mscon cada nueva generacin de pro-ductos.

    El procesamiento digital de im-genes es un rea de la ingeniera que

    actualmente tiene una gran relevan-cia. Hoy en da son mltiples lasaplicaciones que involucran el proce-samiento de imgenes en alguna desus etapas, entre otras: multimedia,diagnstico clnico, sistemas de infor-

    macin administrativos, robtica, jue-gos etc.

    El uso de imgenes digitales enforma efectiva requiere de tcnicasespecficas para reducir el nmero debits requeridos en su representacin.El rea del procesamiento digital deimgenes que estudia este tipo deproblemas es la Compresin de Im-genes.

    La compresin de imgenes se

    encarga de codificar la informacinde tal manera que se ocupe menostiempo en su transmisin y almace-namiento. Desde los inicios del pro-cesamiento de imgenes se han de-sarrollado diferentes mtodos tantotericos como prcticos para lograrmejores tasas de compactacin, conmejores ndices de eficiencia.

    El objetivo principal de este traba-jo es proponer una solucin paraimplementar un sistema de compre-

    sin de imgenes, con base en unesquema de compresin denomina-do codificacin sub-banda. Este es-quema tiene diferentes variantes, perose ha optado por la utilizacin de latransformada llamada wavelet. Porotra parte, se pretende que el sistemase implante bajo un esquema de co-procesamiento, entre una computa-

    dora husped y una tarjeta coproce-sadora con un DSP (Digital SignalProcessor) TMS320C50, de la fami-lia de Texas Instruments.

    Este tipo de esquemas se puede

    utilizar para resolver aplicaciones deconferencias remotas.

    CONCEPTOSBSICOSDEIMGENES

    Imagen: Es la representacin de laforma de una escena visual.

    Comnmente tenemos familiari-dad con fotografas en color y enblanco y negro.

    Una fotografa en blanco y negroguarda la brillantez de cada puntode la escena.

    Una fotografa a color almacenael color de cada punto, adems desu brillantez.

    En la fotografa convencional, elmecanismo por el cual se realiza elalmacenamiento es qumico.

    REPRESENTACINDEIMGENESPORUNACOMPUTADORA

    Existe una gran diversidad de fuen-tes de donde obtener imgenes: foto-grafas, revistas, libros, cmaras digi-tales, etc.. Si el material original co-rresponde a un medio impreso, seemplea un digitalizador (scanner) paraadquirir la informacin, transformar-

  • 7/25/2019 Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

    2/14

  • 7/25/2019 Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

    3/14

    XI 1 23 polibits 11

    Sistema de Codificacin Sub-banda de Imgenes con Wavelets

    Esta forma de codificacin ha pro-ducido esquemas de compresin dealta eficiencia para voz, audio, imge-nes y video, algunos de los cuales hansido adoptados como estndares in-

    dustriales, por ejemplo: codificacinsub-banda para voz de alta calidad a32 KBits/ sec. ; AC, PAC y NUSI-CAM para audio; J PEG para imge-nes y MPEG para video.

    La codificacin sub-banda es unatcnica para comprimir imgenes;inicialmente la imagen a comprimirse descompone en varias imgenesque contienen un rango limitado deinformacin de la imagen original.Este proceso se denomina F i l t r a do,

    y las imgenes obtenidas son llama-das sub-bandas, obteniendose comoresultado una eliminacin de pixeles.Dependiendo del criterio utilizado seeliminan todos los pixeles pares o losnones, tanto de las columnas comode los renglones de cada una de lassub-bandas; este proceso se conocecomo Submue s t r e o .

    La etapa donde se realiza el filtra-do y el submuestreo es llamadaA n-l i s i s.

    Hasta este punto an no se hacomprimido la imagen, solo se haaplicado una transformacin paracambiar su organizacin. Esto permi-te analizar desde otro punto de vista laimagen, sin que se haya perdido in-formacin de importancia. Ahora sedebe elegir un mtodo para codificarlas imgenes generadas y comprimirla imagen. El codificar la imagen sig-nifica analizar toda la informacincontenida en ella y reinterpretarla, amodo que los datos a almacenar o atransmitir sean los mnimos posiblespara reconstruir la imagen original,empleando un cdigo para tal efecto.El objetivo del cdigo es el poderrepresentar un gran conjunto de in-formacin (smbolos, nmeros, dibu-

    jos, palabras, etc.) con otro conjuntode menor tamao; el utilizar un cdi-

    go para esta representacin es llama-do Cod i f i cac in.

    Ya que las imgenes obtenidas enel filtrado estn perfectamente defini-

    das, se puede utilizar un cdigo dife-rente para cada una, o el mismo,segn convenga.

    Una vez que se ha codificado (ocomprimido) la imagen, la informa-cin se puede almacenar o transmitirpor cualquier mtodo; sin embargo,el esquema no esta completo hastaque se pueda reconstruir la imagenoriginal.

    El proceso de reconstruccin se

    denomina Decod i f i cac in, es de-cir de la informacin comprimida re-cuperar la versin original. Una vezque se ha aplicado la decodificacinse tiene la imagen separada en sub-bandas y submuestreadas. El submues-treo consisti en eliminar tanto ren-glones como columnas ya sea pares oimpares; por lo que ahora se requierereponer esos datos. As, se insertanceros en los lugares correspondientesa las columnas y renglones faltantes,llamndosele a esto Sob r emues - t r e o. Nuevamente se realiza el pro-cedimiento de Filtrado a cada sub-banda, para finalmente sumar pixel apixel todas las sub-bandas y obtener laimagen original.

    La etapa donde se realiza el sobre-muestreo, filtrado y suma de las sub-bandas (la reconstruccin de la ima-gen comprimida) se llama Sn t esi s.

    Cabe sealar que la imagen re-construida tiene prdidas, pero dadoque la visin humana no es perfecta,no se aprecian cambios significativosen el aspecto de la imagen reconstrui-da, si se le compara con la imagenoriginal.

    Se emplean los trminos de banday sub-banda debido a que la informa-cin contenida en la imagen se puede

    concebir como un conjunto de fre-cuencias, organizadas para formar unespacio o rea (en este caso el planode la imagen). En telecomunicacio-nes se llama banda al rango de fre-

    cuencias de operacin de un equipo(radio, televisin, etc.), y las sub-ban-das son pequeos rangos comprendi-dos en la banda original. Transpor-tando esta nocin al tema de imge-nes, la banda correspondera a toda laimagen por comprimir, consideran-do que su informacin (todos los valo-res de sus pixeles) equivale a un rangode frecuencias. Como el proceso indi-ca una separacin en imgenes com-plementarias, cada una de ellas (altener un pequeo rango de informa-

    cin) se considera como sub-banda.

    De forma esquemtica, el procesocompleto de codificacin se puederesumir en tres etapas:

    a) Anlisis.b) Codificacin.c) Sntesis.

    Existen varias formas para desa-rrollar este esquema de compresinde imgenes; una de ellas es el em-

    pleo de la Tr ansformada WaveletDiscreta (DWT - Discrete Wavelet

    Transform), con su contraparte, laTr ansformada Wavelet Discreta In-versa(IDWT-Inverse Discrete Wave-let Transform).

    La Transformada wavelet satisfa-ce los requerimientos de la etapa deAnlisis, mientras que la Transforma-da Wavelet Inversa corresponde a laSntesis.

    TRANSFORMADAWAVELET

    La idea fundamental tras las wave-lets es el anlisis de acuerdo a unaescala. Las wavelets son funcionesque satisfacen ciertos requerimientosmatemticos y se usan para represen-

  • 7/25/2019 Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

    4/14

    12 polibits 2 0 0 0

    Sistema de Codificacin Sub-banda de Imgenes con Wavelets

    tar datos u otras funciones. Esta ideano es nueva, la aproximacin usandosuperposicin de funciones ha existi-do desde principios del siglo XIX,cuando J oseph Fourier descubri que

    se poda superponer senos y cosenospara representar otras funciones. Sinembargo, en el anlisis con wavelets,la escala que se emplea para analizarlos datos juega un rol especial. Losalgoritmos con wavelets procesan losdatos a diferentes escalas o resolucio-nes. Si se observa una seal a travsde una ventana grande, se puedenapreciar las caractersticas ms grue-sas. Similarmente, si se observa lamisma seal con una ventana mspequea, se aprecian los detalles ms

    pequeos.

    Esto hace a las wavelets interesan-tes y tiles; por muchas dcadas losinvestigadores han querido obtenerfunciones mas apropiadas que lossenos y cosenos, base del anlisis deFourier, para analizar seales conpicos muy agudos, en las que el resul-tado obtenido por este mtodo esmalo. En estas aplicaciones las wave-lets entregan mejores resultados.

    Las personas que empiezan a tra-bajar con wavelets frecuentemente sepreguntan, porqu no usar los mto-dos tradicionales de Fourier?. Existenimportantes diferencias entre ambosanlisis: las funciones base de Fourierestn localizadas en frecuencia perono en tiempo, los pequeos cambiosen las frecuencias en la transformadade Fourier siempre producen cam-bios en el dominio del tiempo. Laswavelets estn bien localizadas tantoen frecuencia/ escala (por medio dedilataciones) y en tiempo (por mediode traslaciones). Esta localizacin esuna ventaja en muchos casos.

    El nombre de wavelet viene delrequerimiento de que estas funcionesdeben ser integradas a cero (el valorobtenido al integrar esta funcin debeser cero), ondeando(waving) arriba

    y abajo del eje x. Otros requerimien-tos son tcnicos, pues debe asegurar-se rapidez y facilidad de clculo en lastransformada wavelet directa e inver-sa. Existen muchos tipos de wavelets:

    suaves, con soporte compacto, conexpresiones matemticas simples, confiltros asociados simples, etc; la mssimple es la Wavelet H aar.

    La transformada wavelet tiene lassiguientes caractersticas:

    Una wavelet es una forma de ondacon una duracin efectiva limita-da, de valor promedio cero.

    Comparando las wavelets con las

    ondas cosenoidales del anlisis deFourier, stas no tienen una dura-cin limitada, y se extienden de unmnimo al infinito.Las ondas co-senoidales son suaves y predeci-bles, mientras que las waveletstienden a ser irregulares y asim-tricas.

    El anlisis de Fourier consiste ensegmentar una seal en ondas devarias frecuencias; similarmente

    en el anlisis con wavelets se sepa-ra una seal en versiones despla-zadas y escaladas de la waveletoriginal.

    Las seales con cambios msabruptos se analizan mejor conuna wavelet irregular que con unasinusoide suave.

    Desde un punto de vista matem-tico, el procedimiento del anlisiswavelet es adoptar una funcin pro-to t ipo, llamadade anl isi somadre,y una fun cin de escalamient otam-bin llamadaecuaci n bsica de d il a-tacinorecursin fundamental. Deestas dos expresiones se obtiene unsistema de ecuaciones; en el cual sesustituyen prot otip os de la clase defu nci on es bsicas ort on ormales.Aqu se calculan varios coeficientes

    (ak) que satisfacen al sistema de ecua-ciones; dependiendo de las ecuacio-nes y de la funcin bsica utilizada, elsistema se vuelve complejo o sencillo,por lo que se tiene un nmero dife-

    rente de coeficientes. Estos coeficien-tes deben cumplir con ciertos requisi-tos para ser considerados como wave-lets; una vez cubiertos se dispone deun sistema wavelet.

    Cuando se crea un sistema wave-let, se puede utilizar para expandiruna funcin, que en este caso puedeser una seal o una imagen. El expan-dir esta funcin significa representartoda su informacin de inters endiferentes niveles de resolucin, es

    decir, se hace una descomposicin dela informacin y se reordena. Losdatos contenidos en los diferentesniveles en conjunto son la informa-cin necesaria para reconstruir la fun-cin. Si se calculan los coeficientesusando productos internos, si el siste-ma tiene soporte compacto y si seestablece un grado de dilatacin en lafuncin de expansin, sta se simpli-fica.

    La condicin de soporte compac-

    to implica que los coeficientes calcu-lados sean un nmero finito de valo-res diferentes de cero.

    En 1985, Stephane Mallat le dio alas wavelets un nuevo salto, ya que ensu trabajo sobre el procesamientodigital de seales descubri algunasrelaciones entre los filtros espejo encuadratura (QMF - Quadrature MirrorFilter), los algoritmos piramidales ylas bases ortonormales de wavelets.Mallat demostr que el rbol o algorit-mo piramidal puede aplicarse a latransformada wavelet usando los co-eficientes wavelets como los corres-pondientes a un par de filtros QMF.

    Inspirado en parte en estos resul-tados, Y . Meyer construy las prime-ras wavelets no triviales, esto es, quelos coeficientes obtenidos en la solu-

  • 7/25/2019 Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

    5/14

    XI 1 23 polibits 13

    Sistema de Codificacin Sub-banda de Imgenes con Wavelets

    La caracterstica que se desea queel filtro presente est determinadapor el tipo y nmero de coeficientesutilizados. La forma general de unsistema lineal invariante en tiempo

    FIR de salida y[k]a un tiempo kestdada por:

    dondeh[k] es la respuesta impulsodel sistema, o bien los coeficientesque describen el efecto deseado en elmismo.

    La relacin que encontr Daube-chies respecto a la implementacin

    con filtros FIR fue la siguiente:

    La funcin escalamiento:

    es idntica con respecto a la fr-mula general para un filtro FIR y[k],excepto por un coeficiente (2), inser-tado en la funcin de escalamiento.Esto indica que la salida solo tomarlos valores pares o impares de la sealtransformada (que correspondera a

    un submuestreo por 2 o decimacinpor 2). Obviamente, en el proce-so inverso se requiere realizar elsobremuestreo por 2.

    Las ak corresponden a loscoeficientes que se utilizan paraun filtro FIR pasa-bajas.

    De la funcin bsica:

    se toma el mismo razona-miento que el anterior.

    Las (-1k)ak+1corresponden alos coeficientes del filtro FIR pasa-altas. Ntese como cambia elsigno de los coeficientes ak res-pecto a la relacin (-1k).

    [ ] [ ] [ ]nkxkhkyN

    n

    =

    =

    1

    0

    ( ) ( )

    =Zk

    k ktat 2

    ( ) ( ) ( )ktat kZk

    k += + 21 1

    ( ) ( )

    =Zk

    k ktat 2

    ( ) ( ) ( )ktat kZk

    k += + 21 1

    ( ) ( )

    ( ) ( )ktt

    ktt

    jj

    kj

    jj

    kj

    =

    =

    22

    22

    2/

    ,

    2/

    , ; j ,kZ

    2

    0

    1

    1

    2

    12

    2

    =

    =

    =

    =

    +

    +

    k

    Zk

    k

    Zk

    lkk

    Zk

    k

    Zk k

    aa

    aa

    a

    a

    Funcin de escalamiento

    Funcin bsica

    Clase de funciones bsicas ortonormales

    Condiciones que deben cumplir para serun sistema wavelet

    Figura 2. Sistema Wavelet

    inters permite seleccionar una fre-cuencia o conjunto de frecuenciasdeseadas, mientras que las frecuen-cias restantes son bloqueadas.

    Existen diversos tipos de filtros,pero para efectos de este trabajo soloson de inters dos: los filtros pasa-bajas y los filtros pasa-altas. Una ca-racterstica general de los filtros esque poseen una o varias frecuenciasde corte, es decir, las frecuencias apartir de donde el filtro limita su rangode funcionamiento.

    El filtro pasa-bajas es aquel quebloquea todas las frecuencias mayo-res a la de corte, y permite el paso a

    todas aquellas menores.

    Por el contrario el filtro pasa-altases aquel que bloquea las frecuenciasmenores a la de corte, permitiendotodas aquellas mayores.

    La principal caracterstica de losfiltros FIR es el presentar una res-puesta de duracin finita a un impulsounitario. Adems, se pueden imple-mentar utilizando tcnicas recursivasy no recursivas, pero es prctica co-

    mn la utilizacin de estas ltimas.

    ( ) ( ) ( ) ( ) ( )

    =

    =

    =

    +=l j k

    kjl tkjdtlctg0

    ,,

    Sistema Wavelet expandiendo una seal g(t).

    Los coeficientes se calculan con productos internos.

    Si el sistema wavelet tiene soporte compacto y seestablece un limite superior sobre el grado de dilatacin,

    la ecuacin de expansin toma esta forma.

    Figura 3. Sistemas Wavelet y expansin defunciones

    ( ) ( ) ( )

    ( ) ( ) ( )

    ==

    ==

    dtttggkjd

    dtttgglc

    kjkj

    l

    ,, |,

    |

    ( ) ( ) ( ) ( ) ( )

    =

    +=1

    0

    ,,J

    j

    kj

    ZkZl

    l tkjdtlctg

    cin son diferentes de cero, perosin tener un soporte compacto(que sea un nmero finito). IngridDaubechies utiliz el trabajo deMallat para construir un conjuntode funciones bsicas ortonorma-les wavelet; donde descubri quela transformada puede ser imple-mentada con un par de filtros deRepuesta a Impulso Finito (FIR Finite Impulse Response) espe-cialmente diseados. Este par defiltros FIR son el par QMF seala-do por Mallat.

    FI L TROS

    Un filtro, en procesamientodigital de seales, es un dispositi-vo que a partir de una seal de

  • 7/25/2019 Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

    6/14

    14 polibits 2 0 0 0

    Sistema de Codificacin Sub-banda de Imgenes con Wavelets

    Para la reconstruccin se usan losmismos filtros, pero aplicados en or-den inverso y cambiando el signooriginal.

    La forma prctica de observar

    como funciona la transformada wave-let es a travs de filtros, especialmen-te con unbanco de fil tr os (un conjun-to ordenado de filtros en cascada)para la transformada wavelet. De estamisma forma se puede modelar elcomportamiento de la transformadawavelet.

    TRANSFORMADAWAVELETDISCRETA

    ( DW T - DISCRETEWAVELET

    TRANSFORM)

    El banco de filtros deun n ivelparala trasformada wavelet discreta con-siste en dos filtros, uno pasa-bajas yotro pasa-altas, teniendo a la salida decada uno un submuestreador (down-sampler). A la entrada de cada filtro seaplica la seal o imagen a analizar; loscoeficientes estn relacionados con la

    Figura 4. Respuesta Caractersti-ca de un Filtro Pasa-bajas

    Figura 5. Respuesta Caracters-tica de un Filtro Pasa-altas

    wavelet empleada, mientras que lossubmuestreadores eliminan la mitadde la seal de entrada. As, a la salidade cada submuestreador se tiene unaseal reducida de la versin original;

    la primera contiene una buena aproxi-macin de la seal (salida del filtropasa-bajas), mientras que el filtro pasa-altas genera una seal con los detallesde la imagen original.

    De esta forma, la transformadawavelet permite analizar (sintetizar odescomponer) la seal en sub-ban-das, las que al codificarse satisfacen laetapa de Anlisis de Codificacin Sub-banda

    TRANSFORMADAWAVELETDI SCRETA

    INVERSA ( IDWT- INVERSEDISCRETE

    WAVELETTRANSFORM)

    Para reconstruir la seal se em-plea laTr ansform ada Inversa Wave-let (IDWT Inverse Discrete Wavelet

    Transform), en la que a cada sub-banda se aplica un sobremuestreador(upsampler) y el resultado se filtra,

    sumndose las sub-bandas conformeal orden que se sigui en la descom-posicin. La caracterstica de los fil-tros est dada por la wavelet que seemple en la descomposicin; el so-bremuestreo y el filtrado en esta eta-pa son una forma de interpolar losvalores que anteriormente fueron sub-muestreados.

    As funcionara el esquema paraun sistema con seales en forma uni-dimensional; para el caso de imge-

    nes se tendra que aplicar en formabidimensional, es decir, sobre los ejesX y Y. Como se mencion anterior-mente, una imagen se representa pormedio de pixeles en la computadora;cada pixel est asociado a una colum-na y un rengln.

    Para procesar la informacin deuna imagen se procede como sigue:

    primero se aplica la DWT a cada unade las columnas y, posteriormente, alos valores obtenidos se aplicar laDWT para cada uno de los renglones.

    Como resultado de la DWT seobtienen cuatro imgenes: Una deellas contendr los valores de aproxi-macin, es decir, la definicin de laforma, el color, y parte de la textura(Imagena); las otras imgenes corres-ponden a los detalles en forma verti-cal (Imagen v), en forma horizontal(Imagen h) y en forma diagonal (Ima-gen d).

    Para reconstruir se aplica la IDWTprimeramente sobre las imgenesay

    h,formando una nueva imagen, T0.Despus se aplica la IDWT a dy v,generndose D0. Finalmente se apli-ca a D0yT0,con lo que se obtiene laimagen reconstruida.

    En lasfiguras 6 y7 se muestranlos procesos DWT e IDWT sobre unaimagen, y en las figuras 8y 9 laaplicacin de dichos algoritmos enuna imagen real.

    CARA CTERSTICASDEL OSFI LTROS

    A diferencia de la compresin enaudio, los filtros para codificacinsub-banda en imgenes no necesitanun alto rechazo fuera de la bandaseleccionada; sin embargo, existenalgunas otras restricciones:

    Fase L in eal: En el filtrado regularde imgenes, la necesidad por la fase

    lineal es bien conocida, ya que sin ellala distorsin sobre los bordes es noto-ria. Por esta razn, se requiere el usode filtros de fase lineal en codificacinsub-banda.

    Ortogonalidad: Los filtros orto-gonales tienen la facultad de que,cuando se implementa la transforma-da, sta es unitaria entre la entrada y

  • 7/25/2019 Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

    7/14

    XI 1 23 polibits 15

    Sistema de Codificacin Sub-banda de Imgenes con Wavelets

    las sub-bandas. Esta caracterstica per-mite que se conserve la energa sindistorsiones. En el caso no ortogonal,esto no ocurre, por lo que los algorit-mos para designacin de bits no pue-den ser usados directamente. Obser-vese que un banco de filtros FIR defase lineal bien diseado (con un buenrechazo fuera de banda) regularmen-

    te tiende a ser ortogonal, y por ello seaproxima satisfactoriamente.

    Tam ao del f il t ro: El tamao delfiltro se refiere al nmero de coefi-cientes que se necesitan para imple-mentarlo; para filtros grandes se re-quiere de un buen rechazo fuera de labanda o una alta regularidad. Ademsde su complejidad computacional, losfiltros de gran tamao se evitanusualmente porque tienden a expan-dir los errores de codificacin. Por

    ejemplo, los bordes ms finos intro-ducen mayor distorsin, ya que loscanales de alta frecuencia son cuanti-zados burdamente. Si los filtros songrandes (y usualmente su respuestaimpulso tiene muchos cambios designo), esto causa un efecto molestoconocido como r inging(introduce unruido peridico) alrededor de los bor-des. Por esta razn, los filtros usados

    en compresin sub-banda de audio,tales como los filtros de 32 etapas delongitud, son demasiado largos paracompresin de imgenes; esto haceque se prefieran filtros cortos.

    Regularidad: Un filtro ortogonalcon un cierto nmero de ceros en lafrecuencia de aliasing (pen el caso de

    dos canales) es llamado regular si susiteraciones tienden a una funcin re-gular.

    La importancia de esta propie-dad para la codificacin es que sedivide en dos partes cuando la des-composicin es cclica. Los resulta-dos son interesantes: se desea regula-ridad (el desempeo sin ella es pobre),a la vez que a mayor regularidadmejor compresin.

    Si el filtro usado realiza un filtradosuave, al producirse las iteracionesser menos notable que si se utilizarauna funcin altamente irregular.

    En el caso de los sistemas biorto-gonales, tales como los bancos defiltros FIR de fase lineal, usualmentese enfrenta el caso donde el anlisis ola sntesis son regulares, pero no

    Seal

    Seal A

    Seal B

    Seal Reconstruida

    Seal A

    Seal B

    Figura 6. Representacin por medio de un banco de filtros de la DWTy la IDWT

    ambos. En tal caso, es preferible usarun filtro regular en la sntesis, por elmismo argumento mostrado anterior-mente. Visualmente, un anlisis irre-gular es menos notable que una snte-

    sis irregular.

    Cuando la descomposicin no tie-ne iteraciones, la regularidad no esimportante.

    Selecti vidad d e la Frecuencia:Lo que constituye el criterio ms sig-nificativo en el diseo de filtros encodificacin sub-banda de audio, es lomenos importante en la compresinde imgenes. El Aliasing, que es elmayor problema en audio, es menos

    molesto en la compresin de imge-nes. El uso de filtros de longitud limitala frecuencia y la selectividad de lamisma. Una ventaja de la selectividadde la frecuencia es que los pesosperceptuales de errores son meno-res, y los errores sern confinados a labanda donde ocurren.

    En conclusin, la codificacin sub-banda de imgenes requiere de filtroscortos o con pocos coeficientes, quefiltren de una manera suave, con

    poca regularidad si la descomposi-cin se va a iterar.

    Se tiene la forma de obtener loscoeficientes que convengan a un dise-o en particular; de hecho, se puedenaplicar los mtodos tradicionales parael diseo de filtros FIR, pero paraconsiderar que se estn empleandocoeficientes wavelets, estos debencumplir con las condiciones ya cita-das. Existen diferentes tipos de wave-lets, y cada uno presenta ventajas ydesventajas; entre ellos estn:

    a) Wavelet de Morlet.b) Wavelet del Sombrero Mexicano

    (Mexican Hat Wavelet).c) Wavelet de Haar (esta es la ms

    bsica de todas).d) Wavelet de Daubechies.e) Wavelets de Symlets.

  • 7/25/2019 Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

    8/14

    16 polibits 2 0 0 0

    Sistema de Codificacin Sub-banda de Imgenes con Wavelets

    Figura 7. Algoritmo de DWT para Imgenes.

    IMAGEN

    FILTRADO PB EN EJE X

    SUBMUESTREO EN EJE X

    FILTRADO PB EN EJE Y

    SUBMUESTREO EN EJE Y

    FILTRADO PA EN EJE Y

    SUBMUESTREO EN EJE Y

    IMAGEN a IMAGEN h

    FILTRADO PA EN EJE X

    SUBMUESTREO EN EJE X

    FILTRADO PB EN EJE Y

    SUBMUESTREO EN EJE Y

    FILTRADO PA EN EJE Y

    SUBMUESTREO EN EJE Y

    IMAGEN v IMAGEN d

    a h

    v d

    IMAGEN

    FILTRADO PB EN EJE Y

    SOBREMUESTREO EN EJE Y

    FILTRADO PA EN EJE Y

    SOBREMUESTREO EN EJE Y

    IMAGEN a IMAGEN h

    +

    T0

    FILTRADO PB EN EJE Y

    SOBREMUESTREO EN EJE Y

    FILTRADO PA EN EJE Y

    SOBREMUESTREO EN EJE Y

    IMAGEN v IMAGEN d

    +

    D0

    SOBREMUESTREO EN EJE X SOBREMUESTREO EN EJE X

    FILTRADO PB EN EJE X FILTRADO PA EN EJE X

    T0 D0

    +

    ImagenReconstruida

  • 7/25/2019 Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

    9/14

    XI 1 23 polibits 17

    Sistema de Codificacin Sub-banda de Imgenes con Wavelets

    f) Wavelets de Coiflets.g) Wavelets Biortogonales de fun-

    ciones Splines.

    En la figura 10se muestra unatabla con algunas caractersticas delos diferentes tipos de wavelets.

    Para los fines de este trabajo seutilizaron la wavelet de Daubechies ylos resultados del artculo WaveletFilter Evaluation for Image Compres-sion[1], en donde se publicaron loscoeficientes que cumplen con las ca-ractersticas idneas presentadas; enla Tabla 1se presenta la transcrip-cin de esta tabla. En la Tabla 2estn los coeficientes para la waveletde Daubechies.

    COD IF ICAC INDEL AIMAGEN

    Una vez que se ha analizado laimagen y se ha descompuesto en sub-

    bandas, a estas se les puede codificarcon uno o varios cdigos.

    La intencin de la codificacin esencontrar otra forma de expresar lossmbolos con la informacin de unafuente (en este caso de una imagen),con otros smbolos para emplear unamenor cantidad de informacin, perosiempre y cuando permita recuperarla informacin en su forma original.

    En la parte de codificacin existen

    dos grandes categoras: la Codifica-cin de Longitud Fija y la de LongitudVariable. En la codificacin fija cadasmbolo existente en la imagen sereemplaza con el mismo nmero debits. En este caso es esencial el em-pleo de un buen cuantificador. Unejemplo de esta codificacin es elalgoritmo de Lloyd-Max, utilizado paraconstruir una tabla que da el errormnimo de cuantificacin en la normade la media cuadrada.

    En la codificacin de longitud va-riable, se asignan las palabras de c-digo mas cortas a los smbolos msfrecuentes, y las ms largas a los demenor frecuencia. Los mtodos mspopulares de este tipo son la Codifi-cacin Huffman y la Aritmtica.

    IMPLEM ENTACINDEL SI STEMA

    La implementacin est plantea-da para una tarj eta coprocesadora,para coneccin al Bus de una micro-computadora (PC); el procesador endicha tarjeta es un DSP (Digital SignalProcessor - Procesador Digital deSeales) de la familia de Texas Instru-ments, el TMS320C50. Este tipo deprocesadores tiene una arquitectura

    dedicada para realizar operacionesaritmticas en un ciclo de mquina,adems de realizar transferencias dedatos en un tiempo significativamen-te menor comparado con otros pro-

    cesadores. Estas caractersticas haceidneo al DSP para el filtrado. Elalgoritmo de codificacin sub-bandaque se est implementando requierede varios tipos de filtros, tanto para laetapa de anlisis como para la desntesis.

    La imagen a comprimir se en-cuentra en la memoria de la PC anfi-triona, por lo que s tendr una re-gin de esta memoria que se mapearcon la memoria compartida de la

    tarjeta husped. La tarjeta husped seencargar de comprimir la imagen oprocesar las secciones que se le en-ven. En la figura 11 se tiene undiagrama a bloques del sistema.

    La tarjeta tiene dos regiones dememoria RAM: una memoria local,que solo podr accesar el DSP, y unamemoria compartida que estar ma-peada tambin en la PC. El mapeo dela memoria compartida del DSP en lamemoria de la PC tiene como objeto

    funcionar como puente de comunica-cin entre el huesped y el anfitrion.As, cuando la PC escribe a esta partede la memoria, la informacin estardisponible inmediatamente para elDSP. Por otra parte, si el DSP escribedatos en su memoria compartida, laPC podr acceder a la informacininmediatamente.

    As mismo, la tarjeta coprocesa-dora se encarga de descomprimir yrecuperar la imagen, para dejarla enmemoria, y que la PC anfitriona seencarge de su presentacin.

    La computadora husped realizala lectura, despliegue y almacenaje dela imagen, proporcionando una in-terface amigable para controlar lainteraccin entre ella y la tarjetacoprocesadora.

    Figura 8. Imagen Original

    Figura 9. Imagen en el dominiode la DWT

  • 7/25/2019 Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

    10/14

    18 polibits 2 0 0 0

    Sistema de Codificacin Sub-banda de Imgenes con Wavelets

    La ventaja de utilizar un sistema decoprocesamiento es reducir el tiempo

    requerido para la realizacin de ope-raciones matemticas, en este casomultiplicaciones y sumas; si el siste-ma lo requiere, se puede optimizarpara funcionamiento en tiempo real.

    El bus de interconeccin para latarjeta coprocesadora es tipo PCI,basado en un circuito integrado ( CI )de la empresa AMCC. Este CI pro-porciona toda la circuitera necesariapara el control y decodificacin dedirecciones y datos.

    Es conveniente sealar que se esttrabajando con imgenes en tonos degrises, ya que es la mejor manera deentender como se implementan estosalgoritmos; existe la posibilidad deimplementarlos para imgenes a co-lor, si se resuelven algunos problemascon la programacin.

    ARQUITECTURADELTMS320C50

    El filtrado de seales por cualquiermetodo es la aplicacin ms comnde los DSP. Estos no solamente per-miten el diseo de filtros con consis-tencia reproducible y caractersticasdefinidas, sino que la facilidad y flexi-bilidad de la implementacin de unfiltro complejo no tiene paralelo.

    La familia TMS320 consiste dedispositivos de 16 bits de punto fijo y

    de 32 bits de punto flotante; estosprocesadores poseen la flexibilidadoperacional de los controladores dealta velocidad, y la capacidad numri-ca de los procesadores de arreglo.

    Esta familia incluye 6 generacio-nes: C1x, C2x, C3x, C4x, C5x y C6x(la ltima de reciente aparicin). Lasfamilias C1x, C2x y C5x son depunto fijo, y las C3x y C4x son depunto flotante;todas ellas tienen unncleo interno de CPU y una amplia

    variedad de configuraciones de me-moria y perifricos.

    DESCRIPCINGLOBALDELAGENERAC INTMS320C5X

    La generacin C5x consiste de losdispositivos C50, C51 y C53, y eldiseo de su arquitectura est basadoen la del C25. La combinacin dearquitectura Hardvard avanzada (bu-ses separados para memoria de pro-grama y memoria de datos), periferi-cos adicionales e incremento de lamemoria en el circuito, y un conjuntode instrucciones altamente especiali-zado, es la base de su flexibilidadoperacional y de su velocidad.

    Los dispositivos C5x pueden eje-cutar ms de 20 MIPS (millones de

    instrucciones por segundo). En la fi-gura 12se muestran las principales

    caractersticas de esta generacin.Adems, los procesadores C5x pre-sentan las siguientes caractersticasfuncionales:

    Tiempo de ejecucin de instruc-ciones de punto fijo en un solociclo de 35-/ 50-ns (28.6/ 20MIPS).

    Compatibilidad de cdigo fuentecon los dispositivos C1x y C2x.

    Operacin basada en memoria

    RAM (C50). RAM de programa/ datos en el

    circuito, con un solo ciclo de 9K x16 bits. (C50)

    ROM de arranque integrada de unsolo ciclo de 2K x 16 bits.(C50)

    RAM de datos de acceso dualinterna de 1056 x 16 bits.

    Espacio mximo de memoria ex-terna direccionable de 224K x 16bits (64K de programa, 64K dedatos, 64K de puertos, y 32K

    global). Unidad Aritmtico Lgica (ALU),

    Acumulador (ACC) y Buffer delacumulador (ACCB) de 32 bitscada uno.

    Unidad Lgica Paralela (PLU) de16 bits.

    Temporizador de intervalos conregistros de periodo, de control y

  • 7/25/2019 Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

    11/14

    XI 1 23 polibits 19

    Sistema de Codificacin Sub-banda de Imgenes con Wavelets

    de conteo para detencin de soft-ware, inicio y reset.

    Multiplicador paralelo de 16 x 16bits, con una capacidad de pro-ducto de 32 bits.

    Instrucciones de un solo ciclo paramultiplicar/ acumular.

    Ocho registros auxiliares con unaunidad aritmtica dedicada paradireccionamiento indirecto.

    Once registros contexto-conmu-tador (registros sombra, shadowregisters) para almacenar regis-tros estratgicos controlados porel CPU durante una rutina de ser-vicio a interrupcin.

    Pila de hardware (stack) de ochoniveles.

    Registros de corrimiento circularhacia la izquierda o derecha de 0a 16 bits, y corrimiento de datosincremental de 64 bits.

    Dos buffers circulares direcciona-dos indirectamente para direccio-namiento circular.

    Operaciones de repeticin de unasola instruccin y de repeticinpor bloques para cdigo de pro-grama.

    Instrucciones de movimiento debloques de memoria para mejorarel manejo de programa/datos.

    64K de puertos paralelos, 16K delos cuales estn mapeados en me-

    moria. 16 generadores de estados de es-

    pera programables por software,para espacios de memoria de pro-grama, datos, y puertos.

    Direccionamiento indexado.

    Direccionamiento indexado de bit-reversing para FFTs de raiz-2.

    Generador de reloj interno.

    BUSPCI

    En la primavera de 1991, IntelCorp. empez a trabajar sobre el BusPCI, bsicamente sobre el nivel de

    sistema, donde el ancho de banda deEntrada/ Salida de los buses existen-tes no mantena la velocidad corres-pondiente a la del CPU; esta veloci-dad continuaba cayendo conformelas nuevas tecnologas estaban dispo-nibles (por ejemplo 486/ Pentium/P6, etc). El Bus ISA (Industry Stan-dard Architecture o AT) limita severa-mente la transferencia de datos, mien-tras que los estndares EISA (Exten-ded ISA) y Micro-Canal (MCA, MicroChannel) no haban sido vistos como

    un remplazo efectivo o econmicopara ISA. Para aadir funcionalidad auna computadora personal por me-dio de tarjetas de expansin, se pre-sentaban varios problemas, tales comoel conflicto de direcciones y de inte-rrupciones (IRQs), obligando a losusuarios a configurar los interrupto-res tanto de la tarjeta como de laconfiguracin del sistema.

    Bus Ancho Frecuenciaen Bits (MHz)

    IBM (PC) 8 4.77IBM PC-AT 16 6.8MCA (IBM PS/2) 16/32 10EISA 32 8VL BUS 32 33PCI Bus 32 33

    Los objetivos de la creacin deeste tipo de bus contemplan no soloun mejor desempeo en cuanto adireccionamiento, sino tambin la fle-xibilidad de uso. Otros objetivos con-siderados son:

    Alto desempeo, mayor a 100mega bytes (MB) sostenibles.

    Bajo costo (en trminos de unabaja cuenta de uso de pines y elpoco uso de lgica de pegamento)

    Fcil de usar (configuracin auto-mtica)

    Compatibilidad de software

    Figura 11. Diagrama Esquematico de la Tarjeta Coprocesadora

  • 7/25/2019 Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

    12/14

    2 0 polibits 2 0 0 0

    Sistema de Codificacin Sub-banda de Imgenes con Wavelets

    Control Total de Bus (espacio dedirecciones lineal).

    Interoperabilidad/ confiabilidad(Las tarjetas de expansin soncompatibles en cualquier sistema

    PCI)

    El PCI es un bus sncrono de altodesempeo, que opera tanto para 33o 66 MHz. Para reducir la cuenta totalde pines (y el costo) de implementa-cin, las lneas de direcciones y dedatos estn multiplexadas. Los usua-rios pueden definir el direccionamien-to tanto para 32 como para 64 bits,haciendo que los datos tambin pue-dan definirse de la misma manera.Esta flexibilidad permite varias confi-guraciones:

    palabra/reloj transferencia

    32 bits/33 MHz 132 MB/s32 bits/66 MHz 264 MB/s64 bits/33 MHz 264 MB/s64 bits/66 MHz 528 MB/s

    Las seales estn definidas paraactivarse en el flanco ascendente delreloj, exceptuando unas pocas sea-les asncronas (tal como RESET). Lastransferencias de datos son de longi-tud variable, pudiendo ser definidaspara optimizar la posesin del bus porcualquier otroMaster. La latencia delbus est definida en trminos de unatransferencia de registro a registrosobre el mismo. La compatibilidad delsoftware est asegurada, ya que noexisten direcciones fijas o peticionesde interrupcin para cualquier recur-so de PCI.

    La operacin del sistema est en

    relacin con el software y al uso de laconfiguracin del espacio de memo-ria y de los comandos, lo cual puedesonar familiar en trminos de la arqui-tectura Plug and Play (PnP - Instalar y

    ejecutar). PCI acta como base parala arquitectura de PnP; el uso de laconfiguracin de direcciones no con-sume memoria o espacio de I/ O (puer-tos), y permite a un dispositivo PCIsolicitar los recursos que requiere(memoria, puertos, IRQ, etc.) sin eluso de int erruptores de confi gura-cin o intervencin del usuario.

    CONCLUSIONESYRECOMENDAC IO-

    N ES

    La aplicacin de nuevas tcnicasde procesamiento digital, como la

    Transformada Wavelet, permite re-solver en forma ms sencilla proble-mas que anteriormente parecin pre-sentar mayor complejidad.

    Esta nueva herramienta tiene ungran potencial en el campo del proce-samiento digital, ya que no solo se

    emplea para compresin de seales yde imgenes; tambin es muy til enla supresin de ruido, anlisis de se-ales en sismografa y electrocardio-grafa, deteccin de bordes en imge-nes, y en general en aplicacionesdonde la Transformada de Fourier noproduce resultados satisfactorios. La

    Transformada Wavelet constituye lapuerta de entrada para el campo delAnlisis Multiresolucin, donde losresultados obtenidos de la seal en

    anlisis se presentan con diferentesresoluciones.

    El esquema de Codificacin Sub-banda es una tcnica de compresinmuy verstil, que no solo s puede

    implementar con wavelets; de hecho,con disear filtros que se ajusten a laaplicacin y cumplan con el requisitode ser filtros QMF (Quadrature MirrorFilter) es suficiente. Sin embargo, lasventajas que ofrece la TransformadaWavelet son mayores que las de losfiltros QMF, considerando que loscoeficientes de wavelets se puedenajustar para formar un sistema QMF,sin que se pierdan las caractersticasde wavelets.

    En la parte de codificacin existeun criterio documentado para la elec-cin del codificador de cada sub-ban-da. Debido a la complejidad de laimplementacin en hardware y losrequerimientos de memoria, se haoptado por la utilizacin de los forma-tos de compresin GIF y JPG, que serealizan va software por parte de lacomputadora husped.

    Como trabajo a futuro se planteala implementacin de este esquema

    de compresin, tanto en un DSP demayor capacidad (DSP TMS320C40),como en tecnologa de FPGAs (FieldProgrammable Gate Array), as comoel empleo de criterios de codificacinpara cada sub-banda.

    Figura 12. Caracteristicas de la generacin C5x de DSPs

    Dispositivo Memoria en chip Puertos I/O Tiempo de ciclo

    RAM ROM (ns)Datos Datos prog Serie Paralelo

    +prog

    TMS320C50 1k 9k 2k 2 64k 50/35

    TMS320C51 1k 1k 8k 2 64k 50/35TMS320C53 1k 3k 16k 2 64k 50/35

  • 7/25/2019 Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

    13/14

    XI 1 23 polibits 21

    Sistema de Codificacin Sub-banda de Imgenes con Wavelets

    REFERENCIAS

    [1] J ohn D. Villasenor, BenjaminBelzer and J udy Liao, Wave-

    let Filter Evaluation f or Ima-ge Compr ession, IEEE Tran-sactions on Image Processing,August, 1995.

    BI BL IO GRA FA

    [1] "A friendly guide to wavelets".Gerald Kaiser. Ed. Birkhuser

    [2] "Wavelets and filters banks".Gilbert Strang, Truong Ngu-yen. Ed. Wellesley-CambridgePress

    [3] "Multirate digital signal proces-sing". N. J . Fliege. Ed. J ohnWiley & Sons

    [4] "Subband image coding". J ohnW. Woods. Ed. Kluwer Acade-

    mic Publishers

    [5] "Practical digital image proces-sing". Rhys Lewis. Ed. EllisHorwood

    [6] "The image processing hand-book". J ohn C. Russ. Ed. CRCPress

    [7] "Digital image compressiontechniques". Majid Rabbani,Paul W. J ones. Ed. SPIE Opti-

    cal Engineering Press[8] "Wavelts and subband coding".

    Martin Vetterli, J elena Kova-cevic. Ed. Prentice Hall PTR

    [9] "The fast wavelet transform".Mac A. Cody. Dr. Dobbs Jo-urnal, April 1992

    [10] "A successive aproximation

    vector quantizer for wavelettransform image coding".Eduardo A. B. Da Silva, Deme-trios G. Sampson, and Moha-mmad Ghanbari. IEEE Tran-sactions On Image Processing,Vol. 5, No. 2, February 1996

    [11] "Wavelet filter evaluation forimage compression". J ohn D.Villa senor, Benjamin Belzerand J udy Liao. IEEE Transac-tions On Image Processing,

    August 1995

    [12] "Wavelet toolbox". Michel Mi-siti, Yves Misiti, Georges Op-penheim and J ean-Michel Po-ggi. Ed. The Math Works Inc.

    Longitud Coeficientes de Filtros (el origen es el coeficiente ms a la izquierda, loscoeficientes para ndices negativos continan por simetra.)

    Regular idad Referencias / Comentarios

    H0 9 0.852699, 0.377402, -0.110624, -0.023849, 0.037828 1.068

    G0 7 0.788486, 0.418092, -0.040689, -0.064539 1.0701

    Buen Desempeo

    H0 13 0.767245, 0.383269, -0.068878, -0.033475, 0.047282, 0.003759, -0.008473 1.899

    G0 11 0.832848, 0.4481092, -0.069163, -0.108737, 0.006292, 0.014182 20324

    H0 6 0.788486, 0.047699, -0.129078 .0701

    G0 10 0.615051, 0.133389, -0.067237, 0.006989, 0.018914 2.068

    H0 5 1.060660, 0.353553, -0.176777 Diverge

    G0 3 0.707107, 0.353553 1.000

    Coeficientes Enteros1

    H0 2 0.707107, 0.707107 0.000

    G0 6 0.707107, 0.088388, -.088388 1.000

    Coeficientes Enteros1

    H0 9 0.994369, 0.419845, -0.176777, -0.066291, 0.033145 0.830

    G0 3 0.707107, 0.353553 1.000

    Coeficientes Enteros1

    H0 2 0.707107, 0.707107 0.000

    G0 2 0.707107, 0.707107 0.000

    Base de HaarCoeficientes Enteros

    1

    H0 9 0.544089, 0.296844, 0.041409, 0.056710, 0.040100 1.919

    G0 23 1.2680, 0.6337, -0.2967, -0.3712, 0.0072, 0.1098, 0.0116, -0.0212, -0.0027,

    etc.

    3.437

    Alta regularidad, pobredesempeo

    1 - Un solo factor de normalizacin puede ser elegido para hacer todos los coeficientes valores enteros.

    - Los filtros 7 y 8 dan un pobre desempeo pero son incluidos para ilustrar los siguientes puntos: el filtro 7 es labase de Harr y tiene una regulridad de cero. El filtro 8 es un filtro con una alta regularidad pero un desempeo

    para la compresin pobre, e ilustra que la regularidad sola no es suficiente criterio para elegir un filtro.

    TABLA1.LOSMEJORESBANCOSDEFILTROSPARACOMPRESINDEIMGENESCONWAVELETS

  • 7/25/2019 Sistema de Codificacion Sub-banda de Imagenes Con Wavelets

    14/14

    2 2 polibits 2 0 0 0

    Sistema de Codificacin Sub-banda de Imgenes con Wavelets

    TABLA2.

    COEFICIENTES

    PARA

    LA

    WAVELET

    DE

    DAUBECHIES