Tesis de Licenciatura en Cs. de la Cornputación METODOS DE ...

71
Métodos de comparación de imágenes por contenido basados en color Departamento de Computación Fac. Cs. Exactas y Naturales -UBA Tesis de Licenciatura en Cs. de la Corn putación METODOS DE COMPARACION DE IMAGENES POR CONTENIDO BASADOS EN COLOR Director: Lic. Eduardo Rodriguez Sergio Nouet y Antonio Ruggiero L.U.: 0385/80 L.U.:2396/84 Noviembre de 1998 1 Sergio Nouet y Antonio Ruggiero

Transcript of Tesis de Licenciatura en Cs. de la Cornputación METODOS DE ...

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

Tesis de Licenciaturaen Cs. de la Cornputación

METODOS DECOMPARACION DE IMAGENES

POR CONTENIDOBASADOS EN COLOR

Director: Lic. Eduardo Rodriguez

Sergio Nouet y Antonio RuggieroL.U.: 0385/80 L.U.:2396/84

Noviembre de 1998

1 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -VBA

coc cc ••••••••••.xc ••••••••••••••••«ccc oc ••••«••••••o;o."<W"; ••••• e••.••••••••••••••••••ccox ••~~<<< ccc cc cc ~~«<<<<< ••• ==.•..•.•=-.=-..;<< ••••cccccccccc ••cccccccccc -ccc 'ecc ccccccc cc ••••••••••••ccccccccccc e cccc ...............« .....•«~« ..•••••••..••••••..•••••••..••••••........-;

CONTENIDO

1 - INTRODUCCION

2 - ESTUDIO DE COLORa - EL CONCEPTO DE COLORb - REPRESENTACION DEL COLORe - SISTEMAS DE REPRESENTACION DEL COLORd - LA DISTANCIA "CIELab"e - CUANTIZACION DE COLORES

3 - METODOS DE BUSQUEDA ANALIZADOS BASADOS ENHISTOGRAMAS COLOR

a - INTERSECCION DE HISTOGRAMASb - INTERSECCION INCREMENTALe - RETROPROYECCIÓNd - HISTOGRAMAS LOCALES

4 - METODO PROPUESTO:COMPARACION DE IMAGENES POR CONTENIDO BASADO ENCOLORa - REPRESENTACION DE IMAGENES MEDIANTE GRAFOSb - ALGORITMOS DE COMPARACION DE GRAFOSe - DETALLES DE IMPLEMENTACIÓN DEL MÉTODOd - RESULTADOS EXPERIMENTALES

5 - DESCRIPCION DEL SOFTWARE IMPLEMENTADO

6 - CONCLUSIONES Y EXTENSIONES PROPUESTAS

7 - REFERENCIAS

APENDICE A: PALETA DE COLORES REPRESENTANTES

APENDICE B: IMÁGENES UTILIZADAS

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UEA

-x ••••••••••e ••••••••..••••••.••cc occ o;cccc xcc ccc cc ••••••••••xc ••••••••••••ccc ••..••••••••••••••••.xccc ••••••••••••••••..•;••x ••-..;••-..-..v..-..~-..-..v..~...........•..o;•••••• cc e cc cccccc cc -,~~-..-.. xcccccccc «....w.v;;« ...•••..«<WI. ..•••••••••••••••.,:•••••••••••••~O;~ •••••••••••~~ ••••••••••••••••••••••••.•••.•~

Abstract

Ante la utilización cada vez más frecuente de información gráfica e imágenes color en los ambientesinformáticos. resulta necesario desarrollar métodos para "manejar" eficientemente este tipo de información.El manejo mencionado consiste en comparar imágenes para hallar igualdad o similitud, poder buscarimágenes por contenido (forma, color y textura), realizándolo en un tiempo razonablemente corto.Concentramos el estudio en métodos de comparación que utilizan específica mente las características de colorde las imágenes; proponiendo distintas clases de grafos como representación de las mismas, en lugar dehistogramas color utilizados habitualmente. La ventaja de utilizar grafos es que éstos conservan, además delcolor, información estructural de la imagen; mientras que los histogramas sólo conservan la distribución decolores.Para obtener gratos a partir de las imágenes realizamos una segmentación de las mismas, utilizando unadistancia medible en el espacio de colores.Como la comparación entre grafos es un problema de resolución exponencial, decidimos transformar a losgrafos en árboles ya que son más fáciles de comparar.Para encontrar similitud desarrollamos: algoritmos que calculan magnitudes de grafo y algoritmos quecomparan árboles. Estos algoritmos también utilizan la distancia en el espacio de colores, produciendo valoresparciales de comparación entre nodos correspondientes que al propagarse se obtiene un valor único final.Estos métodos, resultan eficaces al comparar una imagen contra muchas otras (ej., una Base de Datos deimágenes). trabajando en dos fases. La primera fase, calcula y compara magnitudes escalares característicasde grafo para utilizarlas como prefiltrado de imágenes, descartando en esta etapa a las imágenes muydiferentes a la de consulta. La segunda etapa, es aplicada a las imágenes que pasaron el prefiltrado, realizandouna comparación. nodo a nodo, de los árboles que representan a las imágenes. Obtienéndose como resultadoun conjunto de imágenes similares a la de consulta, ordenadas por grado de similitud.

Due to more frequent use of graphic and color images information in the informatic environment, itis necessary to develop methods in order to "manage" efficiently this type of information. Thisprocess consists in comparing images to find equality or similarity to search images by content(shape, color and texture) in the shortest time.

The study is based on comparison thot use .specifically color characteristics of images, trying different typesof graphs as representations instead of color histograms usually used. The advantage ofusing these graphs isthat they maintain as well as color, structural tnformation of the image while histograms only maintain colordistribution.

In order to obtain graphs from images a segmentation is previously perfortned, using a measured distance inthe color space.As [he comparison between graphs is a problem of exponential resolution, it is decided to transform graphsinto trees because they are easier to be contpared. To jind similarities, algorithms to calculate graphmagnitudes and algorithms to compare trees are developed. These algorithms also used the distance of thecolor space, producing partial values of comparison between corresponding nodes that when are propagateda unique jinal value is obtained.

These methods are e./Jective by comparing one image against a great quantity of them (i.e. data base ofimages) working into two phases. The jirst one, calculates and compares scale magnitude characteristics ofthe graph in order to be used as prejiltered of images, discarting in this step the images which are verydifferent from the ones being consulted. The second one is applied to images which has already passed theprejiltering process, performing a comparisonnode by node ofthe trees which represent images. Obtaining inthis wav an image set similar to the one being consulted, in order of similarities.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UBA

~ •• o;oo;o,;,\:o;o; •• ccc ccccccccccc ••o;o; cecee o;o; •••••••• o;o;o; cccoxccooc o; •••• o;o; •••• ~ cccc••••••••••••••••••••••••••••••••••••••••••••••••••o;cecee cccccccccccccccccccccccccccccccc e«••••••••••o; •••••••• o; •• oc••••~ ••••••••~ ••••••••.•••.•.••••••••••••ccccccc ••«~ ••••••••••••••••«..•..•..•.•..•.•.•••.•.•

1 - INTRODUCCION

El manejo eficiente de la información gráfica es muy útil para diversas aplicaciones, tales comovisión artificial, bases de datos de imágenes, publishing, tomografías computadas, detección defallas en procesos industriales, selección de imagen de video, etc. Por ejemplo, en el caso devisión artificial, imaginemos un robot que tiene en memoria una base de datos de imágenes y sepretende que pueda reconocer cualquier imagen de su memoria en el ambiente donde seencuentra. Si el robot cuenta, como ojo, con una cámara o filmadora, que le provea de imágenesdigitales de entrada, extraídas de distintos sectores del ambiente y si dotamos a éste, de unmétodo de comparación dinámico entre las imágenes de entrada con las de su base de datos enmemoria, podría reconocer los casos de igualdad o similitud de imágenes. Entonces el robot lograver artificialmente.Para que puedan implementarse mecanismos de visión artificial como el descripto, eficientemente,es necesario contar con formas sintéticas de representar a las imágenes y utilizar algoritmoseficaces y eficientes para comparar esas formas de representación de imágenes.Definimos como espacio de representación de las imágenes a cualquier estructura, proveniente dela imagen, que conserve los atributos distinguibles de la misma. Es decir, que contenga lascaracterísticas propias de la imagen. Proponemos como espacio de representación para nuestrosmétodos a los Grafos de Adyacencias de Color. En estos grafos, los nadas provienen de lasegmentación de la imagen, representando zonas suficientemente homogéneas en color. Laexistencia de un arco entre dos nadas, indica que existe adyacencia entre dos zonas de la imagen.

Determinamos un conjunto de Grafos de Adyacencia de Color como espacio de representación deuna imagen. Una clase de grafos es de aspecto matricial, que llamamos GMA (Grafo Matricial deAdyacencia) , otra clase es resultado de la unificación de zonas del GMA adyacentes y del mismocolor, denominado GRA (Grafo Reducido de Adyacencia) y la tercera y última clase de grafosempleados, es la de los árboles MST(Maximal Spanning Tree) , lIarnados así por ser los árbolesobtenidos a partir del GRA que dan prioridad a las zonas de máxima variación en el grafo.En nuestro trabajo, empleamos una base de datos de imágenes e imágenes de entrada en unacomputadora, realizando un proceso análogo al mencionado en el ejemplo del robot.

Representamos a las imágenes por medio de grafos de adyacencia de colores e ideamosalgoritmos de comparación que se aplican sobre el conjunto de grafos determinado. Al conjuntode grafos de cierta clase que representan a un grupo de imágenes lo llamamos Espacio deRepresentación y al conjunto de algoritmos ideados para encontrar similitud o igualdad en cadaespacio, los llamamos Método de Comparación de Grafos.Enfocamos el estudio en las características de color de las imágenes. Ya que, el color nos brindainformación muy significativa que nos permite establecer magnitudes relevantes de cada imagen.Estas magnitudes nos permiten evaluar el grado de similitud entre las imágenes.Concretamente, tomamos como objetivo el estudio de métodos de comparación y búsqueda deimágenes en base de datos gráficas, basándonos en sus características de color.A la Base de Datos de imágenes color, le anexamos un mecanismo de indexación automática, queutiliza como claves de búsqueda a las magnitudes obtenidas a partir de diversas características decolor de las imágenes, algunas de estas características involucran también informaciónmorfológica, pues el cambio de color en diversas regiones de una imagen, define bordes marcadoso difusos que nos dan idea de su forma. De esta manera, dada una imagen de consulta, podemosseleccionar todas las imágenes que sean iguales o similares a ésta.Antes de explicar nuestros métodos, presentamos un análisis previo de métodos clásicos, donde elespacio de representación está dado por los Histogramas de Color.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en coLor Fac. Cs. Exactas y Naturales -UBAccccccc -,-.;••••••••••.•••••••••••••••.•••••••••••••••••••••..•••••••..•..•~ ••~ ••••••••«.;«,=«===_' cc o;:••••••••••••••••••• ..; ••••••••••••••••••••••••••••••••••••••••••••••••••• sccccccc ••••••••••.•••.•ocecc••••.•••••••••.•~~ .•ccccccc ••••~ ••••••cecee e<<<c;~

En el capítulo 2, se presenta un estudio minucioso del Concepto de Color [FEY/71], [GON/92],Sistemas de Representación de Imágenes Color y, en particular, la Distancia entre colores"CIELab" que sirve como base para muchos de nuestros cálculos gracias a su tremenda precisión.Estudiamos métodos ya desarrollados de representación, bases de formación de color justificadaspor el estudio de color propuesto y métodos para transformar el espacio de colores (no lineal) enun Espacio Euclídeo, es decir, con distancia definida y medible entre colores, para larepresentación propuesta. [DEL/96], [GON/ 92], [JAI/90], [UM/90]Para terminar el capítulo, utilizando la distancia entre colores, estaremos en condiciones de definiruna Cuantización de Color, es decir que obtendremos un conjunto reducido de ColoresRepresentantes al que se mapean, por similitud, todos los colores de cualquier imagen. Logramosde este modo, características comunes para la comparación (paleta de colores común) y de estamanera aumentamos la eficiencia del algoritmo de comparación al trabajar con un conjunto derelativamente pocos elementos. [CHA/96], [DEL/96], [JAI/90], [XIA/96]

En el capítulo 3 se hace una presentación de los Histogramas Color (frecuencias de aparición decada color en la imagen), por ser éstas unas de las estructuras de representación más usadas enlos métodos clásicos de búsqueda. [SAL/90l. [SWA/91]. Además se detallan varios métodos queutilizan esta representación.Intercalamos la discusión What vs. Where referida a los tipos de búsqueda posible, distinguiendola búsqueda de "Qué hay parecido a lo que busco?" de "Dónde hay algo similar o igual a lo quebusco? [SAL/90] identificando a cada uno de los métodos en qué tipo está clasificado.Una vez realizados los estudios del concepto de color, los modelos de representación ycuantización, nos abocaremos, a la investigación de métodos, ya implementados, de comparaciónde imágenes por contenido, basados en el color de las mismas.

Esto nos sirvió para perfeccionar nuestros algoritmos en base a implementaciones ya probadas ypara obtener casos de referencia que nos permitan evaluar las bondades de nuestro método.[SAL/90], [DEL/96], [ENN/95], [HAF/95], [SWA/91]

El capítulo 4, es la parte principal de nuestra presentación, pues allí exponemos nuestro método.En éste proponemos como modelos de representación de una imagen a un conjunto de grafos, querepresentan zonas suficientemente homogéneas (en color) de la imagen conservando laadyacencia entre las mismas.Para la construcción de los grafos mencionados anteriormente, necesitamos segmentar la imagenen regiones identificadas por el Color Representante de Máxima Frecuencia en dicha zona.[SAN/91l. [SUKl84], [SUKl86], [TSO/86], [TRE/94], [URQ/82]

El método de segmentación que proponemos genera los grafos GRA, GMA y MST.El resultado de contar con esta serie de grafos, es que podemos realizar métodos de comparacióny búsqueda multiresolución, es decir con una etapa de Prefiltrado (en base a magnitudes del GRA)y otra de Refinamiento (en base a la comparación entre diversos MST). Más precisamente, en estecapítulo se explica detalladamente como se obtienen los grafos, y como se usan los grafos para lacomparación, en las etapas de Prefiltrado y Refinamiento.Este método analiza el grado de isomorfismo entre los grafos y cuánto se asemejan susmagnitudes calculadas. De este modo obtendremos valores de testeo que propagaremos mediantetécnicas probabilísticas para obtener un único valor de comparación. Este valor nos permitirá tomardecisión sobre el grado de similitud de las imágenes comparadas haciendo énfasis en sucoloración y estructura.Al final del capítulo, se muestran resultados obtenidos, aplicando el método, sobre un pequeño lotede imágenes de prueba; con el fin de demostrar las bondades del método desarrollado.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UBA

•••••••••••••••••0;oocxcc- ;••••••••••.•••••••••••••.•••••••.••••••...•...•.•••••••••••••.••.•.•••••••••••••.•.•••.••.•..xcc ccccccc -..xccccc xc ccccccc «0;: ccc "'0;0;0;••••0;:« ••"' •••••••••••••••••••••••••••xcc -,sx ••.••••.•....••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••.•...••"V.-..« ••cccc cecee ">'t«~~ ••••••ccccccc •••••••.•••~'"""«'«<

En el capítulo 5 se detalla el software implementado.

En el capítulo 6 se presentan las conclusiones y extensiones propuestas para perfeccionar elmétodo desarrollado.

Finalmente en el capítulo 7 se encuentran las referencias bibliográficas que justifican y dan unsólido sustento teórico a los aspectos básicos de nuestro trabajo.

En apéndices adicionales se detallan temas complementarios tales como el formato derepresentación de imágenes y la definición de una Paleta de Colores Representantes; con elprimero definimos las imágenes utilizadas en nuestros experimentos, aunque el algoritmo teóricoque planteamos puede aplicarse a cualquier tipo de representación de imágenes.En el segundo apéndice se detallan los colores que componen la Paleta de ColoresRepresentantes, la cual es utilizada para mapear los colores de la imágenes hacia ésta y obtenerasí estructuras comparables.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UBA

0;-..••.•;-;-;cc--;-;••••••••••-..-..••••••••xc ccoccxcc cccscc -..••••••••••••••••..;•••••••••;ve~«« ••••.•.•.•oc.••..••••..••..••..••..••v. ceceev. .••v.v..-..;••..••V;O'~ coxccc xcc -,ec..••.••.••••••.••.xccvcc cc-w; -;cc oc ';O;-;:••••••••cc ••••.xccccccccccc ...............~ ..••.••••.••••.••.•••'«<~ •••••••••..•..••.••••••••.•••..•••.••~

2 - ESTUDIO DE COLOR

2.a - EL CONCEPTO DE COLORLa sensación de color:La percepción humana del color es un fenómeno psico-físico y fisiológico, ya que depende de lanaturaleza física de la luz reflejada por los objetos que observamos, del mecanismo biológico queutilizan los ojos para captar dicha señal y del procesamiento de esta información en el interior de laretina y el cerebro. [FEY/71].

Naturaleza física de la luz:Físicamente, la luz es una forma de energía de característica ondulatoria (Huyguens, Maxwell,Hertz) , que puede ser percibida por el ojo e instrumentos ópticos.Ya en 1666 Isaac Newton descubrió que la luz natural podía descomponerse en diversos coloresfundamentales: violeta, azul, verde, amarillo, naranja y rojo a los que denominó espectro y por lotanto dedujo que dichos colores podían formar la luz natural y toda la gama de colores posibles.Estudios posteriores le dieron precisión a estos conceptos, ubicando los colores naturales básicosdentro de una escala energética llamada espectro electromagnético.Dentro del espectro electromagnético existen radiaciones visibles para el ojo humano y radiacionesinvisibles tales como el infrarrojo y el ultravioleta. Dentro del espectro visible, se encuentra toda lagama de energía luminosa que da lugar a los colores que podemos percibir, las radiaciones dedicho espectro están en un ran~o de longitudes de onda que va de los 400 NM a los 700 NM,donde NM son Nano-Metros (10- Metros).Concluyendo: Los objetos que reflejan luz a longitudes de onda entre 400 NM Y 700 NM seránvistos por nosotros de algún color dentro del espectro visible. Por ejemplo, los objetos verdes nosreflejan luz con longitudes de onda entre 500 y 570 NM, absorbiendo el resto de la energíalumínica con otras longitudes de onda.[FEY/71], [GON/92].

Influencia fisiológica y la percepción del color:La física caracteriza la luz que entra en el ojo, pero después de esto, nuestras sensaciones sonresultado de procesos neuro-fotoquímicos y de respuestas psicológicas, producidos por nuestroaparato sensor, que puede variar significativamente según el individuo (Por ejemplo en daltónicos).Sintéticamente, lo que observamos, es captado por los ojos, procesado parcialmente en ellos yreprocesado en el cerebro, esto produce finalmente la sensación de ver.

RA~T()Nr.IT()~ y conos

ESTRUCTURA DE LA RETINA(La luz entra por debajo)

Ilustración esquemática del ojo humano y sus partes principales.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UEA

••••.;0;0;.;ccxc-; cc-.;.;.;.; ••••.•cce-;•••••••••••••••••••••••••;.;0;•••••••••••••;.; •••••••••••••••••..•.•••••••••••ccccoc ..••cecee ..••.••.••.•eccc .ccccccccc .•••....•excc ~ .••~ .••.••.••.••..••.••.••.••.••.••••.•~•...••.••••••~~ ••••••.••••.••-.;••••••••••••••••••••••••.•;••••••••••••••.••••••.••~.............. ....~ ••••••••••-..~~ .••

La luz entra en el ojo a través de la cornea y se desvía para formar imagen sobre una capallamada retina, situada en la parte posterior del ojo. Distintas partes de la retina reciben luz desdediferentes zonas del campo visual exterior y la luz se difunde de tal forma que entra a la retinadesde abajo. La retina no es absolutamente uniforme, existe un lugar puntual que atiende al centrode nuestro campo visual, que utilizamos cuando tratamos de ver muy cuidadosamente las cosas, yen el cual tenemos la visión más aguda, dicho lugar es llamado fóvea o mácula y está situadocerca del nervio óptico.Las partes laterales del ojo, tal como podemos apreciar inmediatamente mediante la simpleexperiencia de mirar las cosas, no son tan efectivas para percibir detalles como lo es el centro delojo.Existe también un punto de la retina de donde salen los nervios que llevan información, éstecuriosamente es un punto ciego. No existe aquí parte sensible de la retina, y es posible demostrarque si cerramos, por ejemplo, el ojo izquierdo, mirando con el derecho un objeto, y seguidamentemovemos un dedo u otro objeto pequeño lentamente hacia fuera del campo visual, súbitamentedesaparece en alguna parte (se hace invisible).

En las distintas partes de la retina existen diferentes estructuras. Los objetos que se presentanmás densamente cerca de la periferia de la retina se llaman bastoncitos. En cambio cerca de lafóvea se encuentran, además de algunos bastoncitos, las células conos. Mientras más próximo seesté a la fóvea más aumenta la cantidad de conos, y en la fóvea misma no hay otra cosa más queconos, dispuestos en forma muy compacta. Por lo dicho, debemos apreciar que vemos con losconos justamente en el centro del campo visual, pero a medida que se va a la periferia se utilizamás a los bastoncitos. Resulta interesante conocer que en la retina cada célula sensible a la luz,no está conectada directamente al nervio óptico, sino que está conectada a muchas otras células,que a su vez están conectadas entre sí.Hay varias clases de células en el ojo, hay células que llevan información hasta el nervio óptico yotras que están interconectadas "horizontalmente". Existen esencialmente cuatro clases decélulas, pero no entraremos en esos detalles ahora. Lo principal que nos interesa resaltar es que laseñal luminosa ha sido ya "pensada". Esto significa que la información desde las diferentes célulasno va inmediatamente al cerebro, sino que en la retina una cierta cantidad de la información ya hasido procesada desde diversos receptores visuales y además combinada. Es importantecomprender que ciertos fenómenos de la función cerebral necesaria para ver, ocurren en el ojomismo.Los investigadores de la percepción visual afirman que: el color depende de la intensidad, por lotanto, analizaremos que significa esto. Para explicarlo, tomemos uno de los fenómenos mássorprendentes de la visión, como lo es la adaptación del ojo a la oscuridad. Si entramos en unlugar oscuro viniendo desde un sitio iluminado intensamente, no podemos ver durante un instante,pero paulatinamente las cosas se hacen más y más notorias, y finalmente podemos ver algo dondeantes no veíamos nada (de todos modos, si la intensidad es muy baja, las cosas que vemos setornan de colores imperceptibles). Los científicos especializados afirman que esta visión poradaptación a la oscuridad, a baja intensidad luminosa, se debe enteramente a los bastoncitos,mientras que la visión en lugar brillante se debe a los conos. Como consecuencia, variosfenómenos pueden ser apreciados fácilmente gracias a la transferencia de funciones entre losbastoncitos y los conos en conjunto.A la luz brillante, los bastoncitos son de sensibilidad baja, pero en la oscuridad, a medida que pasael tiempo adquieren su habilidad para ver. También sucede que los bastoncitos ven mejor hacia elazul que los conos y el rojo profundo es apreciado perfectamente por los conos, mientras que losbastoncitos encuentran la luz de este color absolutamente imposible de ver. Así, la luz roja esnegra en lo que concierne a los bastoncitos.

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -URA

Un experimento sencillo para apreciar este fenómeno, consiste en tomar un papel, coloreado enazul y rojo más brillante que el azul (visto a la luz intensa), y luego trasladar el papel a la oscuridadpara volver a observarlo, se notará entonces, el brillo de los colores totalmente invertido (el azulmás brillante que el rojo), dado que se vería con los bastoncitos, finalmente el brillo entre coloresse volvería a invertir retornando a la luz brillante. El fenómeno que comprueba el experimento sellama Efecto Purkinje.Se han trazado curvas de sensibilidad espectral del ojo a alta y baja intensidad, en función de lavisibilidad relativa y la longitud de onda luminosa, en estas curvas se aprecia que: la curva de losbastoncitos, está volcada hacia la derecha (hacia el ultravioleta) y estos alcanzan su máximasensibilidad en la región verde; mientras que la curva de los conos, está desplazada hacia laizquierda (hacia el infrarrojo) y los conos alcanzan su máxima sensibilidad en la región deamarillos.En la figura siguiente pueden apreciarse las curvas mencionadas.

Visibilidad Relativa

20

onos a onc osr " V

~- .-

J \V- I \-- - - - - - -

~

- - -

1/ I \,

- - - - - - - -

~1- ~ \- - - 17 - - - - -

" ,I, 1-\--11,/ - .- - -'-

....•~~ N

e Bst it100

80

60

40

Longitud deOnda en nanometros

700 600 500

La Teoría de Percepción de Color más simple propuesta por Young y Helmholtz, supone que en elojo hay tres pigmentos diferentes que reciben la luz y que los mismos tienen espectros deabsorción distintos (por ejemplo: un tipo de pigmento absorbe fuertemente el azul, otro el rojo yotro el verde).

9 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -VBA

<;-;o;o;o;-:o;.;-:o;o;.;.;.;.;o;O;....-;O;';O;....-;O;••-.;.; ••o;o;~o;o;o;o;~o;o;o;o;o;o;o;o;o;o; ••ccccccc cco;o;o;o;o;o;o;o;o;o;o;o;••~..:«o; ••cc••o;o;o;•••;~~ ••••••~ •••••••:••••••o;~« ••«o;o;o;o;o;o;«o;o;o; ••o;•••••••;•••••••xcccccccccccc ••o;•••••••••••••••••••••••••••••.•• o;o;o;••••"«o; ••~ •••••••••••••••••

Entonces cuando hacemos incidir un rayo de luz sobre ellos, obtendremos cantidades diferentesde absorción en las tres regiones básicas y estas tres partes de la información son manejadas ycombinadas en la retina y el cerebro estableciendo la sensación de color apreciada. Casi todaslas teorías modernas de la visión de colores están de acuerdo con la expuesta, afirmando que haysólo tres pigmentos en los conos del ojo y que la absorción espectral en estos tres pigmentos es loque fundamentalmente produce el sentido de color que el hombre interpreta. [FEY/71]

2.b - REPRESENTACION DEL COLOR

El estudio del color es importante en el diseño y desarrollo de sistemas de vrsion color. Lautilización de colores en las imágenes, nos permite recibir más información visual. Mientras laspersonas sólo podemos percibir unas docenas de niveles de grises, tenemos la capacidad dedistinguir entre cientos de colores. Los atributos de color que percibimos son: brillo, matiz ysaturación. El brillo representa la luminosidad o intensidad percibida.

El matiz de un color se refiere a su tonalidad (que tan rojo o verde por e.j.L Para fuentes de lucesmonocromáticas, las diferencias en matices son manifestadas por las diferencias entre longitudesde onda. La saturación es ese aspecto de percepción que varía más fuertemente cuanto más ymás luz blanca es agregada en una luz monocromática. Estas definiciones son algo imprecisasporque el matiz, la saturación y el brillo cambian cuando las longitudes de onda, la intensidad, elmatiz, o la cantidad de luz blanca en un color cambian. La figura muestra un modelo derepresentación de los colores que surge del estudio de percepción por medio del ojo humano.Posteriormente explicaremos el modelo de representación que se ilustra, denominado HSB o HSI(Hue-Saturation-Brightness)

G

Pl.Jrlt lsalt!o:.r~!]ooIG'1I

El brillo (W*)varía a lo largo del eje vertical, el matiz (e)varía a lo largo de la circunferencia , lasaturación (S) varía a lo largo de la distancia radial. Para un brillo fijo W*, los símbolos R, G y Bmuestran las localizaciones relativas de los colores espectrales rojo, verde y azul respectivamente.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactasy Naturales -VEA••••••••••••••••;ccc~••••••ccc ••••••••••••••••••••••.••...,;••'"••••;-xcccccxcccccccccccc «~ ••••••••.••.••••••••••••••••ccccccccc ccsxcc "i"i ••••.;v.'9I.xcccc~V>'I.v; -,«••...•••.•••••••••••••••••..••••••••••••••••.•••••••••••••••••~ .••~~« coc~~ ••••cccccccc ••••~ ••••••••

La representación de color está basada sobre la teoría clásica de Thomas Young (1802), JAI/90el cual fue el primero que dijo que cualquier color puede ser reproducido por mezclar un apropiadoconjunto de tres colores primarios. 8ubsecuentemente Maxwell ha establecido, que hay tresdiferentes conos en la retina humana con absorción espectral 81(A), 8AA) Y 83(A), donde /cmax::; A sAmín:::::380 nm (nano metros), Amax:::::780 nm. Estas respuestas son picos en las regiones amarillo-verdosas, verdes y azules, del espectro visible respectivamente. (figura siguiente). Notar que existeun significante solapamiento entre 81 y 82.Basándonos sobre la teoría tri-color, la distribución espectral de una luz "coloreada", CCA), producirá unasensación de color que puede ser descripta por respuestas espectrales (figura siguiente) como

Curvas de Sensibilidad oara S" S2 y S3

O~ __ ~ __ ~ L-__L-__L- ~_400 460 500 5óO 800 600

~...:lcno.th [11m]

(a1 Typic.1 Se<1.ili',¡,1' C~fV«3 for ';,, ~, $3~oot10 ~CJ'C~

«(C) = e..max8¡(A) C(A) dA,

J xmín

i = 1,2,3.

I J 81(A) C(A) dA ~ a,1(C)

C(A) ~I J 8AA) C(A) dAa,2(C)

~

I J 83(A) C(A) dA ~ a,3(C)

Modelo tri-receptor para representación del color,

Esta ecuación puede ser interpretada como una ecuación de color. 8i C1(A) y C2(A) son dosdistribuciones espectrales que producen respuestas a,¡(C1)y a,¡(C2) tales que

luego los colores C1 y C2 se perciben iguales. Así dos colores que se ven iguales podrían tenerdiferentes distribuciones espectrales.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en coLor Fac. Cs. Exactas y Naturales -UBA

.;.;.;.:-:.;-;.;.;.;.; ••••••• ;.: ••••••• ;-;.;.;.; ••...-;-;.;.;-: •• 0;-;-:-."='«0;-:-;-;0,;.,;.: cc 0;«-;-. x~;-;v. ••cecee ••••••••.••.••.••.••.••.••.•;..-.;..-..v;-;-..••.••.••.••••.••••.••.••••••••••••••••••••••••••••.••.••o;o;w..•;••••.•••~o;-;:o; o x ••••••••••••••••••••••••••••-.;-..•ccocxVX?; ••••~ ••"ó"M ••••• V\NO"O"O"O ••••••••••• ~ ••••••••••• ~~~

Reproducción y Composición de Colores

Uno de los problemas básicos en el estudio del color es la reproducción del color usando unconjunto de fuentes de luz. Generalmente, el número de fuentes está restringido a tres, ya que esel número mínimo requerido para comparar colores arbitrarios. Consideremos tres fuentesprimarias de luz con distribuciones de energía espectral Pk(A), k=1, 2, 3.

Donde

en donde los límites de integración son asumidos como AminY AmaxY las fuentes son linealmenteindependientes, por ejemplo, una combinación lineal de dos fuentes cualquiera no pueden producirla tercera fuente. Para formar un color C(I,), supongamos que los tres primarios son mezclados enproporciones de ~k, k=1, 2, 3 (figura siguiente)

P10--4l./,......---,I.....---Itr-_--,

P20 ....:.....::..~~---tIS¡(í-) a¡

Composición de colores usando tres fuentes primarias.

3

Luego L: ~k Pk(A) debería ser percibido como C(A), por ejemplo,k=1

3 3

a¡(C) = J(L: ~k Pk(A) )S¡(A) dA = L: ~k JS¡(A) Pk(A) dA i=1, 2, 3.k=1 k=1

Definiendo la i-ésima respuesta de cono generada por una unidad del k-ésimo color primario como

a¡.k = ay (Pk) = J S¡(A) Pk(A) dA i=1, 2, 3.entonces

3

L: ~k Pk(A) = a¡(C) = J S¡(A) C(A) dA i=1, 2, 3.k=1

(1)

Estas son las ecuaciones de comparación de colores. Dada una distribución espectral de un colorarbitrario C(A), las fuentes primarias Pk(í.) , y las curvas de sensibilidad espectral S¡(A), lascantidades ~k. k=1, 2, 3, pueden ser encontradas por resolver estas ecuaciones. En la práctica, lasfuentes primarias son calibradas enfrente de una fuente de luz blanca de referencia condistribución de energía conocida W(A). Denotamos Wk a la cantidad del k-ésimo color primariorequerido para comparar con la luz blanca. Entonces las cantidades

~kTk(C) = ---- k=1, 2, 3 (2)

Wkson llamados los valores triestímulos del color C. Claramente, los valores triestímulos de lareferencia blanca son unitarios. Los valores triestímulos de un color dan las cantidades primariasrequeridas para formar ese color.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -VEA.;o,;..v;-.:-.:-,xc ••••••••••o;••••••••cc ccsx 'QI, co;••••ccccccc.•.•.••"« ••••••••e;••••••••••••••••cecee ••••••••••••••••••.••••.••.••••••••••••~ ••••cese eoo;~ ••~-...~v..VW'; ••••~-.,;••~'W'ó••...wo; ••••••.••••••.••••••••••••••••v; ••.••.••.••.••xcccccccccc cccccccccccc e«.•~~ ••"""""""'••••••..••••••••••••..••••••••••~ ••

Los valores triestimulos Tk(A), del color de energía espectral unitario a una longitud de onda Adada, son llamadas las curvas de comparación espectral. Estas son obtenidas por tomar C(A) = 8(le-A') en (1), el cual junto con (2) nos da tres ecuaciones simultáneas para cada A'

3

¿ Wk a¡,k Tk(A') = S¡(A')k=1

i=1, 2,3.

Dando los valores triestímulos espectrales Tk(A), los valores triestímulos de un color arbitrario C(A)puede ser calculado como

Leyes de Composición y Comparación de Colores

La teoría de colorimetría induce a regla útiles para la composición y comparación de colores, lascuáles se detallan a continuación:

- Cualquier color puede ser formado mezclando por lo menos tres luces de colores. Esto nosdice que siempre podemos encontrar tres fuentes primarias, tales que, la matriz ( a ¡,k) es nosingular, es decir que tiene filas y columnas linealmente independientes y por lo tanto (1) tienesolución única.

2 - La luminosidad o intensidad es igual a la suma de las luminosidades de sus componentes, lasluminosidades Y de una luz de color C(A) puede ser obtenida como:

y = Y(C) = J C(A) V(A) dA

donde V(A) es la función de eficiencia lumínica del sistema visual. Para el ojo humano, V(A) esuna curva con forma de campana que representa V(A) en función de A(nm), comprendida entrelos 380 y 780 nm.

Desde esta fórmula, la luminosidad de la k-ésima fuente primaria, con triestímulos que cumplen~k = Wk Tk (figura), está dada por Tk Wk J Pk(A)V(A) dx .De esta manera la luminosidad de un color con triestímulos Tk, k =1,2,3 puede también serescrita como:

3 3

Y = ¿ Tk J Wk Pk(A) V(A) dA = ¿ Tk I kk=1 k=1

donde I k es llamado el coeficiente de luminosidad del k-ésimo primario.

3 - El ojo humano no puede resolver los componentes de un color. Esto significa que una fuentede luz monocromática, en lo que se refiere a su color, no es vista de la misma forma pordiferentes observadores.

4 - Un color, se percibe con el mismo matiz sobre un amplio rango de luminosidad o intensidadluminosa.

5 - Suma de colores: si un color C1 se percibe igual a un color C2 y otro color C1' se percibe iguala uno C2', entonces la mezcla de C1 y C1' se percibe igual a la mezcla entre C2 y C2 ',

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UBA

-; ••-.;.;.;.;.; -, ..:.;.;0; -o;.;.;••0;-,;0; ••• ;.;>,.-.;0;0;0;0;0; eco ;0;0; ••••••• ;-;-;0; •••••-;- ••••-.;o;o;••o;?;·••;o..v~ ••••••••••••••oc.••X". ••X" ••»~;o;o;o;o;-""X";-;..-.;-..v. .••.••~-.;w~~o;o;o;««o;-;-;o;o;.·;o;o;o;o;o.~ .••v. .•;o...•;.;o;~o;o;~o;o;-;w. .•••~ ••••••••••••••••••••••••••••••cccccccccccc

Usando la notación[C1l = [C2l ~ Color C1se percibe igual al color C20.1 [C1l + 0.2 [C2l ~ una mezcla conteniendo una cantidad 0.1 de

C1 y una cantidad 0.2 de C2

Podemos escribir la ley anterior de la siguiente manera: Si[C1l = [C1'l y [C2l = [C2'l

luego

6 - Resta entre colores: Si la mezcla entre C1 y C2 se percibe igual a la mezcla entre C1'y C2 ' Y siademás C2 se percibe igual que C2', entonces C1 se percibe igual que C1',

[C1l + [C2l = [C1'l + [C2'l y [C2l = [C2'lentonces

7 - Ley Transitiva: Si C1 se percibe igual que C2 y C2 se percibe igual que C3, entonces C1 sepercibe igual que C3

[C1l = [C2l y [C2l = [C3lentonces [C1l = [C3l.

8 - Comparación entre colores: Tres tipos de comparaciones son definidas:a. a [C] = 0.1 [C1l + 0.2[C2l + 0.3 [C3J, por ejemplo a unidades de C concuerdan con la mezcla

de 0.1 unidades de C1, 0.2unidades de C2 y 0.3 unidades de C3. Esto es una comparacióndirecta.

b. a [C] + 0.1 [C1l = 0.2[C2l + 0.3 [C3lC. a [Cl + 0.1 [C1l + 0.2[C2l = 0.3 [C3l

Estas son también llamadas las leyes de Grassman. Estas no son válidas cuando los niveles deliminancia son muy altos o muy bajos. Estas son también útiles en reproducción de colores,Colorimetría (ciencia que mide los colores cuantitativamente).

Diagrama de Cromaticidad

Las cromaticidades de un color están definidas como:

tk = T k / (T1+ T2 + T3), k=1,2,3

Claramente, t1 + t2 + t3 = 1. Así, solamente dos de las tres coordenadas de cramaticidad sonindependientes. Por lo tanto, las coordenadas de cromaticidad proyectan el sólido de colortridimensional sobre un plano. Las cromaticidades t., t2 juntas representan las componentescramáticas (matiz y saturación) del color. El espacio de color puede ser representado por lascoordenadas (t1 , t2 , Y), tomando Y como una constante, se determina un plano cromático. Eldiagrama de cromaticidad representa el subespacio de color en el plano cromático. La siguientefigura muestra éste diagrama dado por el CIE (Commission Internationale de t.'Eclairaqe, el comitéinternacional de normalización de colores)

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

Corte del Diagrama de Cromaticidadpara el sistema primario espectralCIE. El área sombreada es la gamade colores de éste sistema.

-(),~ Li~B ofpurPlet

Diagrama de Cromaticidad: Determina una distribuciónespacial de los colores con forma de paraboloide, también selo llama espacio de Riemman.

15 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UBA

';•••;••-c•••••••••••••;•••••••;-.;••••••••••••••••••••ccc e o,;•••• -.;w;. •••• ccx«oxccsx cccccc ~~ ••••••••••••••••••••••••«~« ••••••.•.•.•••.•••.•••••••••••••••cc ••cc ••••••ccccccccccc cccccccccccc v.VN'> cecee ~«« ••••«.•••••••.•••.•••~ ••.••.••.•.•cccccccc ccccccc «••••••~«~~ ••cecees

En la figura de la página anterior, se muestra el diagrama de Cromaticidad para el sistema primarioespectral CIE. El área sombreada es la gama de colores de éste sistema.El diagrama de cromaticidad tiene las siguientes propiedades:

1. La localización de todos los puntos representando los colores espectrales contiene laregión de todos los colores visibles.

2. La línea recta que une las coordenadas cromáticas del azul (360nm) y el rojo (780nm)contiene los colores púrpuras y es llamada la línea de púrpuras.

3. La región sombreada, comprendida por las líneas rectas que unen las coordenadas (0,0),(0,1) Y (1,0) contiene todos los colores reproducibles por fuentes primarias. Esta región esllamada la gama de colores primarios.

4. La referencia blanca del sistema primario CIE tiene las coordenadas cromáticas (1/3, 1/3).Los colores cercanos a estas coordenadas son los colores menos saturados. Los coloresque están localizados lejos de estas coordenadas son los colores más saturados. Así loscolores espectrales y los colores que están sobre la línea de púrpuras son los de máximasatu ración.

2.c - SISTEMAS DE REPRESENTACION DEL COLOR

Introducción a los Sistemas de Representación del Color

Según las consideraciones hechas previamente, físicamente, existe una gama de coloresespectrales puros (reflejados o absorbidos por los objetos), a partir de los cuales se obtienen todoslos colores visibles y por las características del ojo humano, tomando sólo tres colores básicos o"primarios", con diferentes niveles de intensidad y combinándolos, se obtienen prácticamente todoslos colores humanamente distinguibles o alguna escala de ellos. Esta técnica de representación(triestímulo) da origen a la existencia de diversos sistemas de representación del color, quetratamos a continuación. [FEY/71], [GON/92],[JAI/89].

Los artistas definen los colores a partir de tres colores primarios básicos: Rojo (Red), amarillo(Yellow) y azul (Blue) que dan lugar a todos los colores secundarios, utilizando como auxiliares loscolores neutros: blanco y negro, dando lugar a un Sistema de Composición RYB. Por otro lado losmonitores y máquinas de video aprovechan el triestímulo tomando como colores básicos alrojo(Red), al verde (Green) y al azul(Blue), generando el sistema de representación utilizado porlas computadoras o sistema aditivo RGB. Las impresoras usan en cambio, un sistema derepresentación complementario al anterior (en lo referido a sus colores primarios), dicho sistema sebasa en los colores Cyan, Magenta y Amarillo (Yellow), dando origen al Sistema de Impresión CMYo al CMYK , si se le agrega el negro como color de tinta adicional.El pasaje entre sistemas de representación de los mencionados anteriormente es posible y estádado por un simple cambio de base entre la terna de colores primarios de cada sistema, que puederepresentarse por una transformación lineal implementada por un producto matricial. Pero nosiempre el cambio de representación es tan sencillo, ya que para ciertos sistemas que nosinteresan, el cambio es no lineal, dando lugar a fórmulas más complejas.Otros sistemas de representación particularmente interesantes, son los que no se basan en coloresen sí, sino en magnitudes de los fenómenos visuales, tales como el Sistema "Hue (Matiz) -Saturation (Saturación) - Intensity o Lightness (Intensidad o Luminosidad)" (HSI o HSL), que esuno de los que definen un espacio de representación de conversión no lineal, con respecto a losanteriores sistemas de bases de color.Por último, mencionamos a los sistemas de representación CIE, establecidos por el ComiteInternacional de Normalización de Color (Commisión Internationale de L'Eclairage).

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

Esta serie de sistemas, útiles para diversas aplicaciones prácticas, nos permiten establecer unorden entre los colores visibles, disponiéndolos en un espacio con forma de Paraboloide, llamadoEspacio de Riemman. Esta disposición ordenada de colores permite definir los llamadosDiagramas de Cromaticidad y una distancia entre colores de excelente precisión, concordante conel sistema de observación humano. En nuestro trabajo nos basamos fuertemente en la aplicaciónde esta distancia y para tal fin seleccionamos el Sistema de Representación CIE-L *a*b* (quellamaremos simplemente CIELab). Este sistema es la variante propuesta por CIE para las fuentesemisoras de luz, tales como los monitores color. Es así que la distancia CIELab resulta de sumaimportancia para los algoritmos propuestos en nuestra metodología.[DEU96], [GON/92], [LlM/90],[JAI/89]

A continuación explicamos con mayor detalle los sistemas que consideramos más importantesentre los mencionados, para utilizar en representación de imágenes por pantalla y paraimplementar métodos de búsqueda.

Sistema de Representación RGB (Red - Green - Blue)

El sistema RGB, adoptado para trabajar con placas de video y monitores de computadoras, tomacomo componentes básicas primarias a las componentes: Roja, Verde y Azul. Estas componentesse disponen sobre un sistema de tres ejes cartesianos ortogonales. El subespacio de coloresdeterminado es un cubo de radio uno (para el caso normalizado) cuyas aristas situadas sobre losejes son los colores primarios mencionados, y en las aristas opuestas, quedan situados los coloressecundarios complementarios, mientras que en la diagonal trazada desde el centro decoordenadas hasta el punto (1,1,1), queda determinada la escala de grises del esquema, sobreésta cada componente de la terna de colores básicos tiene la misma magnitud. Figura 2.c.1Una imagen RGB, consiste de tres imágenes independientes en cada plano de color, cuyasuperposición sobre un monitor color produce la imagen compuesta multicolor.En implementaciones prácticas se suele tomar un rango discreto de números enteros, entre O y255 (256 valores), para cada componente primaria, obteniendo 2563 colores posibles.Este sistema de representación, como otros, se comporta en forma no lineal para realizarcomparación entre colores. Esto es debido a lo detallado anteriormente, cuando se mostró eldiagrama de cromaticidad. Vimos que éste determinada un paraboloide y realizar un cálculo dedistancia entre colores es medir la longitud de una curva trazada sobre el paraboloide, que no esun cálculo lineal. Por lo tanto, en el sistema RGB es erróneo calcular distancia entre coloresrealizando simples diferencias entre coordenadas.

R.J- --,;Magenta

B

•.•••. !.........................•.••....•••••.•••.••..............~

.'.'..l...~~.~.~.~~...~~..~.~.~.~~~.....J

Figura 2.c.1 : Cubo de colores RGB. Los puntos de la diagonal principal son los valores de grises.17 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

Sistema de Representación CMY lCyan - Magenta - Yellow)

En este modelo, la base de formación de colores, está dada por la terna Cyan, Magenta, Yellowque no es otra cosa que una rotación de ejes con respecto al modelo RGB. Esta representaciónresulta conveniente para formar colores a través de pigmentación (tintas), por lo tanto es elutilizado en impresión.Cyan, Magenta y Yellow son los colores secundarios de luz o alternativamente primarios depigmentación. Sucede que cuando una superficie cubierta de pigmentación de color Cyan esiluminada con luz blanca, ésta no refleja nada de luz roja, esto quiere decir que: el color Cyanresulta de sustraer la luz roja reflejada por la luz blanca, quedando sólo las componentes verde yazul en la misma proporción. De la misma manera, el color Magenta resulta de la sustracción delcolor verde, y el Amarillo (Yellow) de la sustracción del azul. Figura 2.c.2.

Verde f----I--,.

1,1,1) Ma enta....

..•..•.....•..••...r·······························: .l....~.~.~~.~.J ,.-.- .

Figura 2.c.2: Cubo de Colores CMY. Se obtiene a través de una rotación del modelo RGB.

Lo anterior, nos permite deducir que el sistema CMY y el RGB son complementarios. La fórmula deconversión entre estos modelos (con valores normalizados) es la siguiente:

(C,M,Y) = (1,1,1) - (R,G,B)

Despejando en la fórmula anterior obtenemos el pasaje inverso.

(R,G,B) = (1,1,1) - (C,M,Y)

Sistema de Representación HSI o HSL lHue - Saturation - Intensity o Lightness)

Este modelo, también presenta una base de tres componentes, pero éstas en lugar de ser coloresbásicos, representan parámetros estrechamente ligados con el mecanismo de visión humana.H(Hue) es un atributo que representa el matiz puro del color, S(Saturation) representa el grado porel cual el color puro está diluido por luz blanca e 1(lntensity) representa el grado de luminosidad obrillo contenido, en otras palabras: la energía del color.Una ventaja, que ofrece esta representación, es que la componente I está desacoplada de lainformación de color dada por las dos componentes restantes, que si están más ligadas.Precisamente dicha información conjunta de color dada por H y S, suele llamarse Cromaticidad.

18 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

Las características de esta representación son afines al sistema de visión humano. El Modelo HSIse suele representar gráficamente mediante un sólido, formado por dos pirámides triangularesinvertidas como se muestra en la figura 2.c.3. [GON/92], [JAI/90].

Pasaje entre HSI y RGB. (Valores normalizados)

De RGB a HSI:

I = 1/3 (R + G + B)

s = 1 - [3/ ( R + G + B)] mín { R, G, B}

donde: mín determina el valor mas pequeño entre R, G Y B

Y2 [ (R-G) + (R-B) ]H = arcos

( R-G)2 + (R-B) (R-G) 1/2

De HSI a RGB:

R = 1/3 1 - S )

Oº < H <= 120º 120º < H <= 240ºH = H - 120º

G = 1/3 [ 1+(S cos H)/cos(60º - H)]B=1- R+G)

.....................................................•...•...............................•BLUE

MAGENTA

SÓLIDO DE COLOR HSI

RFn YFTJOW GRFFNTRIÁNGULO DE COLOR HSI

Representación del espacio de color en el modelo HSI. La intensidad varía a lo largo del ejevertical, el matiz H varía a lo largo de la circunferencia y la saturación S varía a lo largo del radio.

19 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -VBA

'.-;-;-;-;';';-;-;O;-;-;-;-;-;';';';';';';';';';';"~';.;.;.; •••;.;.;.;.; ••••••o; ••••••••• ; ••-.. ••• ; ••••••••• ;.; •• 0;••••••••••••••••••••••••••••••••••e;••••••••••••••.;.;.; ccccc••cecee ••••••-..;••••••••••••••••<•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••;••••••••.;.;-;« c-,-;'t-;-;~~ eccc••••-;••~.;O;« ••••~ •••••••••••••••••••••••••••ccc••••••,,"'cc~ cc

2.d - LA DISTANCIA CIELab

Medir cuantitativamente diferencias entre dos colores arbitrarios, es un problema de gran interéspara el análisis de imágenes color, e insistimos en que es fundamental para nuestra metodología.Los primeros estudios, con cierta precisión relativos al ordenamiento y distancia entre coloresfueron realizados por artistas plásticos tales como Oswald y Mansell que consiguieron representarescalas de colores mediante ordenamientos corpóreos de los mismos [DEL 96].Las investigaciones más recientes y precisas referentes a las cuestiones de color, se inspiran enlos estudios documentados en los Libros de Mansell y fueron ampliamente experimentados,perfeccionados y normalizados por CIE: Commissión Internationale de L'Eclairage (ComitéInternacional de Normalización del Color). Esta organización formuló, entre otras cosas, diversossistemas de representación de color muy aptos para calcular diferencias entre éstos yconcordantes con la percepción humana.Entre los sistemas de representación propuestos por el CIE, se encuentra la formulación delSistema CIEL*a*b* (CIELab) que nos da una transformación del espacio de colores, con distanciacomputable entre dichos colores y aplicable a dispositivos emisores de luz, como los monitores devideo. [JAI/90]La evidencia experimental, permitió probar que los colores pueden ordenarse distribuidos en ciertoparaboloide llamado Espacio de Riemann, cuyos cortes dan lugar a los llamados diagramas decromaticidad. Por lo tanto el cálculo analítico de la distancia entre dos colores dados está definidopor una integral de Riemann. Pero, como mencionamos anteriormente, existe un algoritmo deconversión CIELab que transforma el espacio Riemanniano en un espacio Euclídeo, con distanciamedible mediante fórmulas sencillas. [GON/92]

Medidas de Diferencias entre Colores

Medidas cuantitativas de diferencias entre dos colores arbitrarios es un problema de considerableinterés en codificación, análisis de imagen color, etc. Evidencias experimentales sugirieron que lostriestímulos en el sólido de color puede ser considerados como un espacio de Riemann con unamétrica para el cálculo de distancia entre colores:

3 3

(ds2) = ¿¿c¡jdX¡dXj

¡=1j=1La distancia infinintesimal ds representa la diferencia entre dos colores con coordenadas X¡ yX¡ + dX¡ , en cualquier sistema de coordenadas de color. Los coeficientes c¡j miden el promedio depercepción humana tomado para pequeñas diferencias entre la i-ésima y j-ésirna coordenada.Pequeñas diferencias entre colores son descriptas sobre observaciones de diferenciasinfinintesimales entre los colores(JNDs - jusf noficeable differences) . Una unidad JND se definepor:

3 3

1= ¿¿c¡jdX¡dXj¡=1j=1

Esta es la ecuación que describe un elipsoide. Si los coeficientes c¡j fueran constantes a través delespacio de color, entonces los elipsoides JND deberían ser de tamaño uniforme en el espacio decolor. En este evento, el espacio de color podría ser reducido a un espacio de triestímuloseuclídeo, donde la diferencia de color, entre dos colores cualquiera, debería ser proporcional a lalongitud de la línea recta que junta a los puntos que representan a los colores.Desafortunadamente, los c¡j exhiben grandes variaciones según los triestímulos, sus magnitudesvarían de acuerdo a las variaciones de orientación de los elipsoides JND. Consecuentemente, ladistancia entre dos colores arbitrarios C1 y C2 está dada por la distancia minimal extraída de lacadena de elipsoides alineados a lo largo de una curva G* que junta C1 y C2 tal que la distanciaintegral es mínima cuando es evaluada a lo largo de esta curva.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -VBA

o;••-.;-;-;-;-; cccccccccccccccccccox e ccc e••.••«.•.•ccccccc ••••••ccc.••.••.••xcc ••cc ••••••••••••.••.••••.••.••.••.••.••.cccccccc .••cc ••.••••.••••.••••«occccc «••ccccccccc ••-....••••••~ .••.•••;>;w;>;w; ••roeo ;ecc ••••••••••••••.•;••.••••.••-;ccc""'''>«" .•ccoc cc cccc .••••.••.coccccccccccccccccccccccccc ..............0;

Esta curva es llamada la geodésica entre C1 y C2. Si los Cij son constantes en el espaciotriestímulo, entonces la geodésica es una línea recta. Las geodésicas en el espacio color puedenser determinadas empleando una técnica de optimización adecuada tales como programacióndinámica o cálculo de variaciones. [AKJain - "Color Distance and Geodesic in color 3 Space". J.opt. Soc. Am.64, June 1974: 896-897]En la figura siguiente se muestran las proyecciones de diferentes curvas geodésicas entre loscolores del sistema NTSC sobre el plano cromático u,v. Las geodésicas entre los colores primariosson líneas rectas cercanas (en el plano de cromaticidad), pero las geodésicas entre los demáscolores son generalmente curvas, como puede verse en la figura 2.d.1.

0.4 . G~

v

0.1

0·0.-

~.1

o

811J1!

u0.4 1),5

Figura 2.d.1 : CUI'Vas Geodésicas en el plano (u, v)

Las Geodésicas en el espacio de colores, pueden ser determinadas empleando una adecuadatécnica de optimización, tales como Programación Dinámica o Cálculo de Variaciones (Ver J.B.oNeal.Jr. "Diferencial Pulse-Code Modulation with Entropy Coding" IEEE Trans. Inform. Theory IT-21, nro. 2 - Marzo de 1976).Las técnicas mencionadas para calcular distancias entre colores, son de gran complejidad. Parasimplificar el cálculo, se aproximan las fórmulas del espacio de Riemman mediante un conjunto defórmulas simples en el espacio Euclídeo, esta metodología fue propuesta por el CIE en 1964.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -VBA

0;••••••• ; ••• ;.;.; o ;.;0; o, 0;.;.;0; -oxocc •••••;0;.;.; ••••••••••• ;-; ccO;cc-..-.;.;•••••••;•••••~ ••••••••••.••.••••.•••••;O';O;••••••••••••••••• ;cox-x ';O';•••••••••••zx.•~ ••••••••••••••••••••••.;ceceeVW'.~-... .••••.••.•••••~ .••-...•••;-.-..-...••••--wo;•••o;•••••••o;••••••••••••••~ •••••••••••••••••••••~ •••«ccccccoxocccoc ..•~ ..•••••..••.••"«o;« •••

El pasaje desde el sistema RGB al sistema CIELab y el cálculo de la distancia correspondienteestán dados por:

[XJ '[ 1.910Y = -0.984Z 0.058

- 0.5341.999

- 0.028

0.058J[RJ- 0.118 G0.898 B

{116 V1OOY* /Yn -16

L*-- 903.3(Y / Yo)

,si Y / Yo ~ 0.008856,si Y / Yo < 0.008856

b* = 500(VY / Yo - VZ / Zo)Para el sistema receptor primario NTSC se puede tomar: Xo = 0.982: Yo = 1.00 Y ZO = 1.183

En las fórmulas anteriores: L* representa la luminosidad (Lightness)a* es la componente rojo-verdosab* es la componente azul-amarillenta

Finalmente, la distancia que nos interesa está dada por:

I (6S)2 = (6L*)2 + (!':P*)2 + (6b*)2 I 4..2.d.1

en la fórmula anterior, el operador 6 indica diferencia entre los valores de la magnitud queantecede, para dos colores cualesquiera tomados para comparar entre sí.Es decir, que dados dos colores Cl y C2, tomando por ejemplo la magnitud L (Luminosidad),entonces ...

D L = Ll- L2es la diferencia entre la luminosidad L 1 de e1 y la luminosidad L2 de Cz Referencias [JAI/89],[DEL/96], [TRE/94].

Esta fórmula de distancia nos permite obtener una medida, relativamente fácil de computar, de ladistancia entre dos colores. Es de mucha utilidad en nuestros métodos, ya que todos los algoritmosestán basados sobre las diferencias entre los colores de las imágenes.En la figura 4.2.d.2 se muestran algunos ejemplos de distancias entre colores obtenidos a partir dela fórmula 4.2.d.1. Vemos que las distancias entre los colores rojo, verde y azul puros son másgrandes que los ejemplos de degrade de rojo y azul. Esto nos dice, que la medida de distanciaobtenida se corresponde con la diferencia percibida por el ojo humano.

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

(R,G,B)=(204,0,0) (R.G,B)=(255,0,0) (R,G,B)=(0.255,0) (R,G,B)=(O,0,255) (R,G,B)=(O.0,204)

•••t__ ttt t t tJt--t156.9271 2672.7646 3068.5844 169.1382

2134.1108

Figura 4.2.d.2: Distancias entre colores obtenidas a partir de la fórmula 4.2.d.1

2.e - CUANTIZACIÓN DE COLORES

Antes de comenzar con el planteo de la cuantización, definimos como paleta de colores de unaimagen al conjunto completo de colores que ésta contiene.Como trabajamos con una base de datos de imágenes, donde las imágenes que se ingresanpueden tener diversos orígenes, éstas pueden tener distintas paletas, lo que resulta, en una gamade millones de colores para tratar y comparar. Con este planteo, cada vez que sea necesariocomparar si un elemento de color es igualo similar a otro, tendría que examinarse eventualmentemillones de posibilidades, lo que se tornaría muy ineficiente.Para solucionar este problema de eficiencia planteado, para unificar las múltiples paletas y parapoder hacer referencia a colores con un sólo identificador entero en lugar de una terna RGB,decidimos aplicar a nuestro sistema de imágenes una cuantización de color. La citadacuantización, no es otra cosa que el mapeo de cada una de las paletas de colores de lasimágenes, cualquiera sea su variedad, sobre un conjunto reducido de colores representantes.

De acuerdo a la bibliografía [BAU90] y [DEU96], basta con tomar un conjunto de aproximadamente256 colores para representar a todo el espectro, de acuerdo a los matices que puede diferenciar elhombre. Por supuesto, se debe elegir esta paleta de representantes con una gama suficientementevariada y equidistante para que cada color mapeado se vea bien representado. Cada elemento decolor cambiará su matiz para ser transformado al color representante más similar. Adoptamoscomo paleta de colores representantes a la paleta standard del sistema operativo Windows a laque completamos con unas decenas de colores más, suficientemente esparcidos, hasta llegar aunos 238 colores [apéndice B]. Por otro lado, corroboramos la bondad de los coloresrepresentantes elegidos mediante la observación de múltiples imágenes de paletas muy variadas,y notamos que las características distintivas de las imágenes examinadas no se alterabansignificativamente.Como consecuencia de la cuantización, cualquier imagen multicolor es tratable en nuestro sistemade comparaciones por referir sus colores a una paleta común, los algoritmos que implementemosluego de ésto, se volverán absolutamente más eficientes y no se degradará la precisión ya que setrabaja originalmente por similitud y no por igualdad exacta.

23 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UEA

••.,; ••••• o;-; cecee o; ••••-...-.;o;O;'.- ••..••••;.;: •••••••••• ;.; •••• ~; •••••~~ •••••• ~~ ••••••••••••••••••••• -..-..-..-..-..~v.-•••;•••e••.••••••••.•.•.•••••••••xcccccccccccox .••••••.••.••••••••.~ .••••••.••••.•••••••••••••••••••~........-;:o;?X~ ccoc ~... ...............~~......................... .....;0.

Definimos el método de mapeo del siguiente modo:

Para cada color Cj de la paleta original de la imagen a tratar, éste se representa por el color Ri dela paleta de representantes si:

Ri = min { dist(Cj, Rk) }, (1<= k <= 238)

donde dist representa a la distancia entre colores CIELab definidas en el capítulo 2 d.Es decir, que cada color es reemplazado por un color representante de mínima distancia y por lotanto, podemos nombrar a este método de cuantización como: mapeo al color representante demínima distancia. [CHA/96], [DEL/96], [JAI/89], [XIA/96].

Los métodos de comparación, definidos más adelante, son independientes a la paleta de coloresrepresentantes elegida. Es muy importante, para la eficiencia de los métodos de comparación,definir una buena paleta de representantes acorde con las imágenes a utilizar. Nosotros definimosuna paleta que posea una gama de todo el espectro de colores, pero bien se podría haber definidouna paleta de colores con un degrade de verdes y marrones si por ejemplo se van a utilizarimágenes del suelo obtenidas desde un radar. Logrando así una mayor eficiencia de los métodos.

3 - MÉTODOS DE BÚSQUEDA ANALIZADOS BASADOS EN HISTOGRAMAS

En este capítulo, se presentan varios métodos de comparación de imágenes por contenidobasados en la característica de color de las imágenes. Todos estos métodos utilizan comorepresentación de las imágenes a los histogramas color.Antes de entrar en cada uno de los métodos, presentamos una breve descripción de las dospreguntas que se utilizan al comparar imágenes por su contenido y la definición de los histogramasde color.

Qué vs. Dónde

Los problemas de reconocimiento que surgen, en la parte del sentido visual del cerebro humano, alcomparar un gran número de imágenes con un gran número de modelos, pueden resumirse en elsiguiente esquema [SAL/90]:

Objetos a ser comparadosUno Muchos

Identificación: Tratar de identificar unUna objeto, en una localización determi-

Porciones de nada.Imágenes

Localización: Tratar de localizar un Interpretación de la Imagen: Dema-Muchas objeto cuya identidad es conocida. siado costosa. Implica semántica.

La respuesta a la pregunta Qué? (Encontrar parecido entre una imagen y un modelo), asumiendoque la localización aproximada de un objeto es conocida, la responden los métodos de Intersecciónusando un histograma de color como representación, el cual cuenta qué cantidad de cada uno delos colores ocurren en la imagen; y el método de Intersección Incremental, similar al anterior.

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

Con respecto a la pregunta Dónde (en qué posición o coordenadas se encuentra una determinadasubimagen dentro de una imagen), la responden los métodos de Retroproyección y deHistogramas Locales, también resueltos por histogramas de color.

Histogramas de Color

Dado un Sistema de Representación de Color discreto definido por algunos ejes de color, porejemplo: rojo, verde y azul ( Sistema RGB) Y dado cualquier conjunto de imágenes representablesen dicho sistema, se define como histograma de color a la estructura que caracteriza a cadaimagen del conjunto por su distribución de color. El histograma de color de una imagen, se obtienepor discretizar sus colores y contar el número de veces que aparece cada color. Es decir, que sedefine completamente por la frecuencia de aparición de cada color de la paleta en la imagen. Sinembargo, no guarda información posicional de la coloración ni de estructura de la imagen. Suimportancia es probabilística, pues podemos decir que es probable que una imagen, del mismotipo, tomada aleatoriamente pueda ser similar o igual a otra si ambas tienen el mismo histogramacolor. Pero lamentablemente, imágenes que en su apariencia pueden verse muy distintas puedentener el mismo histograma.Los histogramas de color son invariantes por rotación y traslación de la imagen y ante pequeñoscambios en el punto de vista de la imagen. También son estructuras de fácil manejo encomparaciones.Los histogramas definen una función de equivalencia sobre el conjunto de todos los posibles co-lores, de modo que dos colores que son iguales (ó similares) se adicionarán en la misma columnadel histograma considerado.Veremos luego, cómo los métodos estudiados, que se detallan más adelante, utilizan los

histogramas color para representar la información de imágenes de una manera relativamente pococostosa y de gran eficiencia para el trato comparativo. Existen muchas modalidades para generarhistogramas a partir de imágenes color y aún muchos más métodos para compararlos.Lo que sugirieron originalmente los autores clásicos, tales como Swain & Ballard [BAU90J, esrealizar un histograma tridimensional por ejemplo de 256 valores para cada uno de los coloresR(red), G (green) y B (blue). Esto nos lleva a un histograma de 2563 componentes (16.777.216columnas del histograma) que puede representarse por matrices 3-D ralas. Para unaimplementación mucho más manejable de los métodos que utilicen histogramas, lo queproponemos es representar los con una estructura más pequeña, un histograma unidimensionalcon aproximadamente 238 colores representantes. Para construir dicho histograma, debemosrealizar una cuantización de colores como se propuso en el capítulo 2.e.En la figura 3.1 se muestra un ejemplo de histograma de color de una imagen.

Imagen Histograma de colores de la imagen

~-i •.•~"~

Cantidad depixeles de

cada color enla imagen

Colores reoresentados

Figura 3.1: ejemplo de un histograma de color

25 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en coLor Fac. Cs. Exactas y Naturales -UBA

ccccv; ••·;o;o;-; ••oc••·;o;·;·; •••••••••••••....-;o;o. ••••••••••••••••-cxc e••..•....•...••••••••••••.••••"'o;« ••••••o;;•••••••••••..•••xccc ••••••••••••••••••••••••••••••v;v.V> ••-.;y,: cc «.;.•••.••.•.•.•.•«cc ~~.~ .•••••.•..••.•.•.••.••.••.••.••.••.••.••.••.••••.••••.••..••••"'N'."t'...••••••••••••.•e••.•;.;.;••••••••••••«••«.•...••.•....•cccooccccccccc cccccccccccccccccccccccccc ~O;«

3.a - INTERSECCiÓN DE HISTOGRAMAS

Es un método que compara los histogramas de color de una imagen contra otra llamada modelo. Elmétodo nos dice, qué cantidad de pixeles de cierto color en el modelo son encontrados tambiénen la imagen. Para realizarlo, se hace una superposición de los histogramas correspondientes demanera que se solapen las columnas del histograma del modelo con las columnas del histogramade la imagen que contengan al mismo color. Así, se obtienen proporciones parciales para cadacolumna, que sumadas producen un valor final de comparación que nos permite decidir si elmodelo es en su distribución de color similar a la imagen.Este método no requiere (como otros) la separación exacta de los objetos desde su fondo.Los métodos de búsqueda deben ser capaces de vencer los obstáculos que presentan las imáge-nes, para su buen reconocimiento. Los obstáculos más importantes a vencer son:

- Distracciones en el fondo.- Visión de los objetos desde varios puntos de vista.- Oclusión.- Variaciones en las Condiciones de Luz.- Cambios de Escala.- Rotaciones. Traslaciones, etc.

Este método, llamado Intersección de Histogramas, resuelve los tres primeros problemas y esinvariante a traslaciones y rotaciones, pero el problema de las variaciones lumínicas se deberíatratar en un módulo de constancia de color que opera sobre la entrada, en la etapa del histograma.Una solución para resolver los eventuales cambios de escala, es simplemente, normalizar lasalturas de las columnas de los histogramas con valores entre O y 1, de modo que representenverdaderas frecuencias de aparición de color y no, cantidad neta de colores.

Algoritmo: [BAL/90l

Este método, compara el histograma de color de la imagen con los histogramas de cada uno de losmodelos en la Base de Datos. Se define una magnitud de comparación con rango entre O y 1, elvalor más alto de comparación obtenido luego de testear todos los modelos de la Base de Datos,devuelve la imagen de dicha base más parecida en distribución de color a la imagen decomparación.Más precisamente, dado un par de histogramas, I(de la imagen) y M(del modelo), cada uno deellos conteniendo n columnas (colores), la intersección de histogramas está definida por la fórmula:

n

¿ mín( Ij, Mj )J=1

-Donde j toma valores para cada uno de los colores del histograma. El resultado de la interseccióndel histograma del modelo con el histograma de la imagen es el número de pixeles del modelo quetienen correspondencia con pixeles del mismo color en la imagen. Para obtener un valor decomparación entre O y 1, la intersección es normalizada por el número de pixeles en el histogramadel modelo. Entonces el valor de comparación es:

H(I,M) =

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas VNaturales -VEA

ecccc -.;••••••••••-.,••••••••x -xcoc x cc o;o;••-.;';••••••••..-;o;••••••••••"«o; cc ««-.-.:; ••ccccccccccccc ••••••••••••••••-:-:-;~o;:o; ••-..;••.••.••.••.••v;o. .••··;o;·,:xcc xcccc ••••~;~~-.;?v.-..v.-..-...v~;-..-..~·; ••••••••••••.••••••••v..xcox ~~~ ..••••.••••••••.••••••••••••••.,...••««••••••••••

Este valor de comparación no es reducido por distracciones de los pixeles del fondo de la imagen.Esto es deseable ya que es bastante difícil garantizar una buena segmentación de la imagendesde el fondo. El valor de comparación sólo es incrementado por un pixel en el fondo si el pixeltiene el mismo color como uno de los colores del modelo y el número de pixeles de ese color en elobjeto de la imagen es menor que el número de pixeles de dicho color en el modelo.Si somos capaces de segmentar el objeto buscado desde el fondo de la imagen y si éste no est'qsignificativamente ocluido, el histograma de la imagen puede ser escalado para que sea del mismotamaño que el histograma del modelo.

Esto es, si

¿ M¡ = ¿ li = Ti=1 i=1

obtenemos: (apéndice A de [SAL/90J).

1 - H(I,M) = ( 1 / 2T). ¿ Ili - M¡ Ii=1

La función 1-H define una medida de distancia (una métrica llamada city-block). Si los histogramasno son del mismo tamaño, cuando no escalamos por distancia, luego 1-H no es una métricaporque el factor normalizador que está en el denominador, variará si comparamos el modelo contrala imagen o la imagen contra el modelo [SAL/gOl.

El sistema QSIC (Query bu Image Content) desarrollado por un grupo de miembros de el MachineVision Group at the ISM Almaden Research (San Jose CA) utiliza para la búsqueda porcaracterísticas de color un histograma de 256 colores y el método de intersección de histogramas.

Otro sistema que también utiliza este método de comparación de imágenes es el desarrollado porC.C. Jay Kuo y Xia Wan del Integrated Media Systems Center, Departament of ElectricalEngineering-Systems. University of Southern California.

3.b - INTERSECCiÓN INCREMENTAL

Está basado en el algoritmo de Intersección de Histogramas [SAL/gOl mencionado anteriormente.En este método solo las columnas más significativas, de los histogramas del modelo y de laimagen, son comparadas. Se dice que la computación es incremental porque el algoritmo esinterrumpido cuando, por algún criterio empírico, se decide que los resultados van a ser correctospara la mejor performance en la comparación. Esto implica que el algoritmo necesita que se ledefina una buena heurística de corte y un buen criterio de decisión.

El método está definido en 2 fases [SAL/gOl:

- Una fase off-line en la cual se genera la estructura que representa la base de datos.- Otra fase on-line "matching phase" en la cual se compara la imagen contra todas las

imágenes de la Sase de Datos.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UEA

~"""",,,,,,,,,,,,,,,,,;,,,,,,,,,,,-,,,,,,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,, ••.; occccccc occcc-..-...••....,...;.••••••.••••.••••••••.xccc ccccccccccccccccccecccccxc ceccccccccccc cccxccccccccc .••••••«.•.•...••.•.•.•....-..-..-..-....-..-..-....•..-•..•••...ex~«««« cccccc ~ .••••••~« ••.••-v...•••••.•..•..•..•••••••••••

Fase off-line:

1 - Asignar a cada uno de los bines del histograma de la imagen considerada, una"clave" dada por la frecuencia del color en la imagen, es decir el cociente entre la can-tidad de veces que aparece el color correspondiente y la cantidad total de pixeles de laimagen.2 - Agrupar las columnas por orden de color, de modo que los bines de color parecidosformen un grupo.3 - Para cada uno de los grupos del pto. 2, ordenarlos por la "clave" definida en el pto.1.4 - Grabar las e columnas de la imagen más significativas de cada grupo.

Fase on-line:

1 - Ordenar las columnas del Histograma de la imagen a comparar contra la base dedatos por altura (cantidad de pixeles).2 - Para las N columnas más representativas de dicha Imagen, comenzando con la másgrande, aplicar el algoritmo de intersección (devolviendo una medida de comparación)para cada uno de los histogramas almacenados en la Base de Datos.

Heurística a utilizar para la precisión del método.Sean:

N = Cantidad de Bines a comparar,M = Cantidad de Pixeles de la Imagen,b¡ = Cantidad de Pixeles en la columna i-ésima

N¿ b¡i=1 > x ,da un criterio de corte

M

donde x es una constante a definir como precisión del método (si utilizamos x=1, estaríaen el caso de intersección standard, comparando todas las columnas del histograma).

El orden computacional del algoritmo de intersección standard es O(n.m), donde n es en númerototal de columnas del histograma y m es la cantidad de imágenes que hay en la base de datos[BAL/90j. Mientras que el orden del algoritmo de Intersección Incremental es O(n.log(n)+ e.m),donde C es el número de columnas del histograma de la imagen usados para indexar en la Basede Datos. Por lo tanto la complejidad computacional es menos dependiente de la cantidad deimágenes de la Base de Datos y resulta más eficiente cuando menos columnas intervengan en lacomparación.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UEA

ccx e "'.;o;o; ••••••• ;e~ •••;••-cce o;:••••"«-;<::••••••cccc .•.•••cecee ••••••••••••-..-.;•••••.•••~.••••••.••••••••••«ccc-..-.;-;v,~cccc=.•.•.•=...'\:.=._''''' ..•-.-..••••~«~.~~ ••.••.•••••;.,;•••;.;.;•••;••.••••••ccc.cc~~ .••.~~ ••cecee ••••••••.••.••"«"« ••••" ••«.;-."""" ••

3.c - RETROPROYECCIÓN

Este método responde a la pregunta: En qué lugar de la imagen están los colores que pertenecenal objeto que buscamos?Como en el método de Intersección, en el algoritmo de Retroproyección el modelo es representadopor su histograma de color M. El histograma de la imagen I es también calculado y un tercer histo-grama R, el cual es la relación que hay entre M e I (M dividido 1). Luego este histograma R es re-troproyectado sobre la imagen, es decir, los valores de la imagen son reemplazados por los valoresde R para cada color. Esta nueva imagen retroproyectada, es luego convolucionada con unamáscara, la cual para objetos compactos puede ser un círculo de la misma área que el objeto bus-cado. El valor pico en la imagen convolucionada es la localización esperada del objeto buscado,suponiendo que el objeto aparece en la imagen.

Más precisamente, sea h(c) la función histograma la cual mapea un color e en una columna delhistograma, y o' un disco de radio r:

OrX,y = {o en otro caso

Se define la función loc que retorna un pixel (x,y) con el valor de sus argumentos, y el símbolo *que denota convolución. Luego el algoritmo de Retroproyección puede ser escrito:

1 - Para bin j de los histogramas calcular:Rj = Mjl Ij

2 - Para cada x,y hacerbx,y== mín( Rh(cx,y),1)

3 - b:= Or * b

4 - ( Xt, yd = loc( máx x,y(bx.y))

En las coordenadas Xt,Yt es donde se encuentra localizada la subimagen buscada. Puede sucederque encontremos varias subimágenes, devolviendo todos los valores máximos (todas laslocalizaciones de las subimágenes) [SAL/90j.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UBA

~o;o;.;O;"·;';«O;":";"'l:o;o;..:..;..; e cc ••••.••"o;-;o;ve"x"""·" x•cecee """"""",,,,,,,,,~,,,,,,,,,,,;,,.; •••;••••••••••••ccccccccccc-x ••••••cc -;o;oco;o;« ccc cecee ••~.««~~o; .•.•cceccccccc ••••••••••o;.;••••••••••~~~«o;................. .•..•.•....•.•..•.•..•.•....•.•.•-;..-;«

3.d - HISTOGRAMAS LOCALES

Este método, del mismo modo que el de retroproyección, está orientado a hallar unasubimagen dentro de una imagen que eventualmente la contiene, basándose en sucaracterización de color.

El algoritmo que se plantea es propicio para trabajar con imágenes de gran variedad de color yresulta particularmente útil para reconocer algún objeto particular inmerso en imágenes conmuchos objetos variados, resolviendo muy bien los problemas de oclusión, variaciones de escala ypequeñas variaciones en las condiciones de iluminación, dependiendo estas últimas virtudes del empleo deun buen método de cuantización de colores.A la fracción destacada de la imagen de referencia que se pretende encontrar, se la denominafoco de atención y la sección de la imagen que contiene dicho foco da la respuesta de laaplicación del método.El algoritmo de búsqueda del foco de atención por Histogramas Locales consiste en:

1. Segmentar la imagen tomada como ambiente de búsqueda en porciones que pueden ser, porejemplo, del tamaño del modelo que se pretende hallar.

2. En cada una de las secciones obtenidas, se calculan histogramas locales los cuales soncomparados sucesivamente contra el histograma del modelo, mediante el método decomparación utilizado en el algoritmo original de Intersección de Histogramas [SAL/90j.

3. Finalmente el método devuelve como respuesta a la fracción de imagen con máximo valor decomparación que eventualmente contiene al modelo o foco de atención.

La formula del valor de comparación o valor de matching, es la siguiente:

I (Wj min { Lj, Mj } )bin j

donde, Wj corresponde al valor del histograma R del método de Retroproyección, es decirWj = Mj / Ij ,con Mj : bin del histograma del modelo e If bin del histograma de la imagen dereferencia.

Se ha comprobado que la performance del método supera en muchos casos de aplicación almétodo de Retroproyección y en el peor de los casos tiene la complejidad de éste [ENN/95j.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactasy Naturales -VEA?;••.••••••o;••..-;-;o;o;;o;o;..-;o;<o;o;o;o;«o;~o;o;o;o.""Xo;o;o; cecee cccccccc ••••••o;••••••••o;~o;« ••••••••cccccccccccxccc e«o:-."««««««~.~-...;«««~ ••.••••«o;o;.;o; ••.••o;••~o; ••~~««"«« ••••••••••••••••••••..••.••••.•••..•..•••••.•••••••••••••.•

4-METODOPROPUESTO

COMPARACION DE IMAGENES POR CONTENIDO BASADO EN COLOR

Para comparar imágenes por contenido, podríamos hacerla pixel a pixel. Pero nos encontramoscon grandes dificultades, ya que las imágenes pueden tener diferentes tamaños, escalas, estarrotadas, o levemente distorcionadas. Además sería muy trabajoso y poco eficiente compararmuchas de éstas pixel a pixel. Debido a esto, es necesario representar a las imágenes porestructuras de fácil comparación y que no pierdan sus características.Como describimos en el capítulo 3, los métodos clásicos utilizan como estructura derepresentación de las imágenes a los histogramas color. Estos histogramas son eficientes para lascomparaciones pero pierden demasiada información estructural de las imágenes.Por lo tanto, proponemos un método de comparación de imágenes que utiliza grafos deadyacencia de color como representación de las imágenes, ya que los grafos, además de contenerla información de color, conserva mucha información estructural de las imágenes. Entonces estetipo de estructura resulta ideal, no sólo para encontrar igualdad sino similitud entre imágenes.Teniendo definida las estructuras adecuadas que representan a las imágenes, basta con definiralgoritmos que actúen sobre este tipo de estructuras para comparar las imágenes a través de sucontenido. El método propuesto involucra tres clases de grafos y una serie de algoritmos paraobtener estas estructuras y otros algoritmos que utilizan estas clases de grafos en diferentes fasesde la comparación.

4 a - REPRESENTACION DE IMAGENES MEDIANTE GRAFOS

GMA. Grafo Matricial de Adyacencias

La primera clase de grafos, que definimos para representar a las imágenes, proviene de unasegmentación matricial de las mismas. Este tipo de grafos, bajo otro punto de vista, es una matrizde adyacencias. Por lo tanto a cada grafo de esta clase lo denominamos GMA (Grafo Matricial deAdyacencias) .

Como se ve en la figura 4.a.1 , la segmentación de la imagen anteriormente mencionada, se realizamediante una cuadrícula de N x M regiones uniformes. El tamaño de las regiones rectangulares esde (alto imagen / N) x (ancho imagen / M). Las regiones mencionadas representan los nadas delGMA.Cada nodo posee como atributo un color representante. Dicho color, es el color de máximafrecuencia dentro de la región de la imagen que el nodo representa, mapeado sobre la paleta decolores representantes. (ver capítulo 2.e Cuantización de colores y apéndice A). Otro atributo queconservamos de cada nodo del GMA es la varianza o la dispersión de colores en su interior. Estoes importante debido a que sólo conservamos un único color representante del nodo, este valornos brinda una idea de lo importante de ese color dentro de la región.Los arcos del GMA representan adyacencia entre los nadas, es decir existe un arco entre dosnadas si las dos regiones, las que representan éstos, son adyacentes en la imagen. Definimosadyacencia entre dos regiones de la imagen a aquellas regiones que poseen un lado en común, noasí a aquellas que poseen un vértice en común.Cada Arco posee una magnitud asociada (Peso), la cual representa la distancia (CIELab) entre loscolores representantes de cada uno de los nadas que vincula.

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -URA

El GMA resulta una estructura fácil de tratar en algoritmos de comparación. Si por ejemplo,tomamos N=10 y M=10, con sólo comparar 100 valores y propagando éstos para obtener uno sólo,obtenemos nuestra primera medida de similitud entre imágenes. Esta magnitud es invariante acambios de escala.En el ejemplo de la figura 4.a.1 tomamos N=4 y M=4, para hacer más simple la ilustración.

Imagen original Imagen segmentada

Segmentación

GMA Histogramade color deuna región dela imagen

......................................-------.- Mapeo del color de

máxima frecuencia decada región sobre laPaleta de ColoresRepresentantes.

Figura 4.a.1: Obtención del GMA a partir de una imagen.

Si obtenemos los GMA de muchas imágenes, podemos comparar a estas imágenes mediante laaplicación de M x N comparaciones nodo a nodo cualquiera sea la escala de las imágenes acomparar. Pero esta comparación no es buena ante rotaciones de las imágenes. Sin embargo, sihacemos cuatro comparaciones, rotando en cada comparación el GMA en 90º, logramos que elalgoritmo de comparación soporte rotaciones de 90º, pero empleando un tiempo de comparacióncuatro veces mayor.

GRA. Grafo Reducido de Adyacencias

El segundo tipo de grafos utilizado, es denominado GRA (Grafo Reducido de Adyacencias). ElGRA de una imagen se obtiene a partir del GMA, reduciendo o fusionando nodos adyacentes y delmismo color representante.Dada una imagen, el criterio para obtener nodos del GRA agrupando nodos del GMA es elsiguiente: (ver figura 4.a.2)Si un par de nodos del GMA son del mismo color representante y adyacentes, ambos nodosforman parte del mismo grupo.Todo nodo adyacente, con alguno del grupo y del mismo color, también pertenece al grupo.

32 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

Cada grupo así obtenido, es un nodo del GRA, con el mismo color de los nadas contenidos ytamaño dado por la cantidad de nadas del GMA agrupados. También los nadas del GMAagrupados definen la adyacencia de los nadas del GRA: un grupo (un nodo del GRA) es adyacentea otro si alguno de los nadas del GMA, que pertenece al primer grupo, es adyacente con otro nododel GMA del segundo grupo. En la figura 4.a.2, se observa como se genera un GRA.

GMA visto como matriz

¡.....

GMA visto como grafo

:. ;

GRA (Grafo Reducido de Adyacencias)

ATRIB UTO de ARCO• Longitud =Distancia entre colores

Figura 4.a.2: Obtención del GRA partiendo de un GMA

/Procesa deReduccióno Fusiónde Nadas

ATRIBUTOS de NODOTamañoColor

El conjunto de arcos del GRA queda definido de la siguiente manera:Existe un arco entre dos nadas N1 y N2 del GRA si y solo si, existe adyacencia entre algún nododel GMA, contenido en N1, con otro nodo del GMA, contenido en N2. La figura 4.a.3 ilustra laexplicación.

Adyacencia GRA, define el arco (N¡,N2) Figura 4.a.3: Adyacenciaentre los nadas N I YN2

del GRA, heredada delos nadas adyacentesdelGMA

__________________________________ ~NodosdeIGMA

33 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

El atributo que caracteriza a los arcos del GRA es la longitud de arco, dada por la distancianormalizada, entre los colores de los nadas ligados por el arco. Donde por distancia normalizada,se entiende a la distancia CIELab, llevada al intervalo [0,1]. Veamos la figura siguiente ...

• DMax: Distancia CIELab máxima entre colores de la paleta de representantes =3073,2629

• D(R,A): Distancia CIELab entre el ROJO y el AZUL

• LA: Longitud de arco = D(R,A) / DMax

Color AZULD(R,A) = 2134,1108 LA = 2134,1108/3073,2629

= 0,6944

Color ROJOProceso de Normalización

Nodo N1 Nodo N2

Arco (N1,N2)

Longitud de arco 0,6944

Figura 4.a.4: Asignación de la Longitud de Arco entre los arcos del GRA

Utilizar grafos de clase GRA, en algoritmos de comparación resulta un problema complejo, ya queobteniendo grafos GRA desde imágenes distintas, es difícil determinar cuáles son los nadas yarcos correspondientes para la comparación entre éstos. Debido a ésto, consideramos convenienteno usar esta clase de grafos en algoritmos de comparación de grafos. Pero, por otro lado, resultanser los grafos más apropiados, para definir a través de ellos magnitudes escalares de grafo. Estasmagnitudes son muy propicias para ser evaluadas rápidamente, en algoritmos de búsquedapreliminar, llamados Algoritmos de Prefiltrado.

Magnitudes escalares de grafo calculadas desde los GRA:

Estas magnitudes por ser escalares, facilitan la comparación, ya que con sólo comparar un númerocontra otro (la misma magnitud en otro GRA) se obtiene una primera estimación de similitud.

Las magnitudes mencionadas son:

• Magnitud 1: Cantidad de NodosSe obtiene simplemente contando los nadas del GRA, mide cuántas zonas de la imagen,suficientemente homogéneas en color existen.

• Magnitud 2: Cantidad de ArcosSe obtiene contando los arcos del GRA, mide la cantidad de zonas de la imagen vecinas oadyacentes.

• Magnitud 3: Tamaño del Nodo MáximoSe obtiene extrayendo el tamaño del nodo máximo del G RA, medido en cantidad de nadascontenidos del GMA, da idea de la existencia o ausencia de una zona predominante, por ejemploun gran objeto de un color determinado, que puede ser posiblemente el fondo de una imagen.Ver figura 4.a.5

34 Sergio Nouet y Antonio Ruggiero

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

Métodos de comparación de imágenespor contenido basados en color

N1 N2 N3

N4 Ns Ns

N7 Ns Ng

Figura 4.a.5:Máximo nodo del GRA

Ni, N2, N3: Nodos del GRATamaño de Ni = 3Tamaño de N2= 4Tamaño de N3= 2Máx (Ni, N2, N3) = N2Tamaño del Máximo=4

............, 1--••N7 ¡ NsGMA de una imagen y sus

nodos de tamaño unitario

GRA obtenido desde el GMA anterior

• Magnitud 4: Promedio de las longitudes de arco o VariaciónSe obtiene sumando las longitudes de todos los arcos del GRA en proporción a su cantidad.Mide el grado de variación de colores de las zonas de la imagen.

d¡=O,9984GRA de unaimagen

3

Variación = Ldi/3i=¡

= 1/3(0,9984+ 0,6944+ 0,8696)= 0,8888

Figura 4.a.6: Variación o Promedio de Longitudes de Arco

• Magnitud 5: Suma de Longitudes de BordesSe calcula sumando los perímetros o longitudes de borde de los nadas del GRA. Para calcularesta magnitud, sobre cada nodo Ni del GRA, se procede así:Acumular una unidad por cada lado, perteneciente a un nodo exterior del GMA, contenido dentrodel nodo del GRA considerado.Esta magnitud resulta importante pues hace distinguibles a las imágenes con muchos bordesfrente a las de poca longitud de borde y es resultante de la forma de cada nodo en particular. Porejemplo, una imagen con bordes de nadas escarpados, seguramente tiene mayor longitud debordes, si la comparamos contra otra imagen, de estructura semejante, pero con bordes llanos,aunque la superficie de sus nadas correspondientes sea la misma.

GRA obtenido desde un GMAFigura 4.a.7: Suma de Long. de Bordesdel GRA en función de los nodos del GMA

Long Borde(N¡)=8, Tamaño(N1)=3

Unidades deLong. de Bordeson losLados de los NidelGMA

Long Borde(N2)=8, Tamaño(N2)=4

Long Borde(N3)=6, Tamaño(N3)=2

I'h: Nodo del GMA Suma de Long Bordes = 8+8+6= 22N2: Nodo del GRA que contiene al N7

35 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

MST (Maximal Spaning Tree)

Esta es la última estructura que proponemos para representar imágenes por grafos. Se trataefectivamente de un árbol, pues como sabemos, un árbol es un caso particular de grafo.Con más precisión, definimos un árbol como un grafo conexo y que no contiene ciclos.Por otro lado, hacemos notar que los árboles, son estructuras mucho más fáciles de recorrer ycomparar que los grafos, por lo tanto son apropiados para utilizar en algoritmos de comparación.Entonces, obtendremos finalmente un MST, partiendo de un GRA, que a su vez proviene de unGMA, que se obtuvo por segmentación de una imagen dada originalmente, tal como vemos en lafigura 4.a.8. GRA MST

IMAGEN

i-¿4 .~d.C;·

GMA

Nodo Raiz

Segmentación Reducciónde Nodos

Selecciónde arcos

Figura 4.a.8: Serie de trasnsfonnaciones hasta obtener el MST

El proceso para transformar un grafo en árbol, sin perder sus características más importantes, serealiza conservando intactos todos los nodos del grafo, descartando arcos que produzcan ciclos ysin perder arcos que produzcan una foresta (más de un árbol de salida). El proceso descriptoproduce eventualmente, muchos árboles como resultado, por lo que es conveniente dar un criteriode selección de arcos a conservar, en el algoritmo de cálculo. De ese modo, tomando el criterioapropiado, se obtiene como resultado un árbol único.El criterio de selección de arcos, bien podría haber sido, como en ejemplos típicos de teoría degrafos, conservar los arcos de mínima distancia que no produzcan ciclos. Obteniendo lo que loslibros llaman un "minimun Spaning Tree" (mST). Pero consideramos que este no es el mejor árbolpara nuestro problema, pues en él, se daría mayor importancia a las zonas de menor variación dela imagen, propiedad que podría ser deseable para segmentar, pero no para dar prioridad a laszonas de más cambio o contraste, dentro de la imagen.Entonces, elegimos la estructura que llamamos MST (Maximun Spaning Tree) para transformar losgrafos en árboles. En estos árboles, se conservan los arcos que ligan las zonas de máximavariación en color, que consideramos más relevantes para hacer las comparaciones.(Ver figura 4.a.9)

Cada MST, se obtiene partiendo de un GRA por un proceso de selección de arcos, que daprioridad a las zonas de máxima variación en la imagen, conservando por lo tanto, los arcos demayor longitud antes que los de menor longitud, siempre y cuando éstos no produzcan ciclos.

Figura 4.a.9: Max. Spaning Treeversus mínimo Spaning Tree

mST MST

(Conserva arcos de mínima variación) (Conserva arcos de máxima variación)

36 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

En el caso en que al elegir arcos desde un GRA, para ir generando su MST, se produzca unempate de longitudes de arco, se elige primero a aquellos que unan nodos de mayor tamaño, siaún hay empate, se elige a los que tengan nodos de máxima conectividad y si aún persiste elempate (aunque es muy poco probable), se continúa con otros criterios de desempate como losanteriores. Criterios que denominamos "no posicionales".Los criterios no posicionales, son aquellos que nos permiten seleccionar arcos, sólo porcondiciones propias de los nodos y de los arcos del grafo de origen, sin tener en cuenta la posiciónde éstos.Los criterios "posicionales" son: tomar primero el arco de más arriba, el de más abajo, el de más ala izquierda, el de más a la derecha, o el que aparece primero por construcción en una lista dearcos.No consideramos buenos a los criterios posicionales para la construcción de árboles. Pues alutilizar criterios posicionales para obtener árboles que se utilicen en algoritmos de comparación, losalgoritmos no son invariantes a rotaciones. Si rotamos grafos cambia totalmente su lateralidad, ypor lo tanto, un mismo grafo rotado podría producir árboles muy diferentes. En cambio tomandocriterios no posicionales, conseguimos generar árboles invariantes a rotaciones de su grafo deorigen. Por eso, recomendamos y adoptamos esta clase de criterios de selección de arcos, para laconstrucción de los MST.En el ejemplo de la figura 4.a.1 O se muestra la obtención de los correspondientes MST de unaimagen y de su rotación en 180º. El GRA obtenido a partir de la imagen y de su rotación es elmismo. En cambio los MST obtenidos desde el GRA utilizando criterios de desempateposicionales, son diferentes ( MST1 es distinto al MST2).Si utilizamos un criterio de desempate no posicional para obtener el MST, vemos que se obtiene elmismo MST (MST1 es idéntico al MST3) a partir de la imagen y su rotación.El algoritmo para obtener el MST desde el GRA, está representado en la figura por una flechaverde o naranja y consiste en conservar, preferiblemente, los arcos de máxima distancia que noproduzcan ciclos, con un criterio de desempate adicional, para resolver en el caso de arcos dedistancias iguales.

Figura 4.a.1O: Desempates con criterio Posicional y No Posicional

GRA DE LA IMAGENROTADA EN 1800

MSTlliKAVJ:::. UNAIMAliJ:::.N

Desempate ~N::O~P:O:Si:c~io:n:al~~ ~--~ 3--

DesempateNo Posicional----~

Desempate Posicional

Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

El criterio de desempate posicional utilizado en la ejemplo de la figura anterior, es:En caso de empate entre longitudes, preferir primero el arco de más a la izquierda.El criterio de desempate no posicional utilizado en el ejemplo de la figura anterior, es:En caso de empate entre longitudes, preferir primero el arco con nodos de mayor tamaño.Notar que cuando se aplica criterios de desempate no posicionales se obtiene el mismo árbolfrente a rotaciones de la imagen, por esta situación es MST2 idéntico a MST1 en la figura anterior.

El algoritmo para obtener el MST está basado en los algoritmos de Kruskal [Ref/nn] que calculaminimmun spanning tree y el de Warshall [TEN/85], que nos permite hallar todos los caminos entredos nodos de un digrafo (utilizado para descartar los arcos que producen ciclos).

Determinación del Nodo Raíz

Como el objetivo es comparar estructuras de árbol, es necesario determinar un punto de comienzopara recorrer los árboles. Entonces resulta necesario definir, sobre cada MST, un Nodo Raíz.De esta forma, cuando comparemos un árbol contra otro (nodo a nodo) la primera comparaciónqueda bien definida. Comparando las raíces de ambos árboles.El criterio para elegir el nodo raíz en un MST es tomar el nodo más conectado, ya que éste muyprobablemente proviene de un objeto destacado en la imagen. Definimos al nodo más conectado,a aquel que posee mayor cantidad de arcos.Si existe más de un nodo con la cantidad máxima de arcos, tomar el nodo de mayor tamaño, depersistir la igualdad tomar el nodo cuya sumatoria de distancias con sus vecinos sea mayor y siaún sigue la igualdad, tomar criterios de desempate no posicionales análogamente a cómo serealizó en la construcción de los MST.

4.b - ALGORITMOS DE COMPARACION DE GRAFOS

Nuestro Método de Comparación de Imágenes, basado en grafos de adyacencia de color, requiereno sólo de la forma de representar imágenes tratada, sino también de algoritmos que permitanrealizar eficientemente la comparación de las estructuras obtenidas, en cada nivel derepresentación (Grafos GMA, GRA y árbol MST).En esta sección, describimos concretamente los algoritmos de comparación de las magnitudes ylas estructuras obtenidas, que son los procesos que se muestran en un rectángulo amarillo,señalizados respectivamente, con (C1) y (C2) en la Figura 4.b.1. Esta figura, muestra un diagramaglobal de los algoritmos del método completo.Los procesos de la figura que se ven dentro de una elipse verde, son los que corresponden a laobtención de las magnitudes y estructuras del método y ya fueron descriptos en la sección 4.a.

Algoritmo de Comparación de Magnitudes del GRA

Como se afirmó en la sección 4.a, el GRA es un grafo bastante intratable para las comparacionesdirectas, pero las 5 magnitudes calculadas sobre esta clase de grafos caracterizan fuertemente ala imagen original correspondiente a cada grafo.Por lo tanto, contando con esas magnitudes, calculadas durante el mismo proceso de generaciónde cada GRA, resulta muy fácil utilizarlas en algoritmos de selección rápida, ya que consiste encomparar magnitudes escalares (un número real contra otro, en cada comparación).Por ejemplo: Sea le una imagen a comparar contra un conjunto finito de imágenes, si tomamos unamagnitud simple como CN= Cantidad de Nodos del GRA, la calculamos para ley para cada imagendel conjunto { 11, 12 •.. IK }. Definimos un intervalo de confianza con límites apropiados alrededor deCN(le), que representa la cantidad de nodos de la imagen a comparar.

38 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -URA

El algoritmo consiste simplemente en: tener calculadas las cantidades de nodos para las Kimágenes del conjunto e ir evaluando de a una por vez, de modo que si la cantidad de nodos de laimagen I¡(¡=1,__,k), cae dentro del intervalo de confianza, entonces I¡es preseleccionada comobastante similar, en caso contrario I¡es rechazada por ser de estructura muy diferente.Análogamente, el mismo proceso puede repetirse sobre cada una de las otras cuatro magnitudescaracterísticas calculadas.

Generalizando:

Sea le: Imagen a comparar, R={ 11,12 ••• IK }: Conjunto de imágenes a Reconocer, eventualmentepuede suceder que le pertenezca a R

Sea M, alguna de las cinco magnitudes calculadas en los GRA (Ver 4.a), donde:

M(le) es la magnitud calculada sobre la imagen a comparar y M(I¡), (i=1 ,.., K) es la serie demagnitudes de la misma especie, calculada sobre el conjunto de imágenes R

y sean a, 13constantes enteras no negativas, determinadas empíricamente y que no superenal valor de M(le) en más de su mitad. Es decir Máx(a, 13):s;1/2M(le)

Entonces, para cada índice i=1 ,..,K evaluamos:

Si M(le)-a < M(I¡) < M(le)+13~ Aceptar I¡En caso contrario, rechazar I¡

las imágenes aceptadas generan como salida un conjunto S de imágenes seleccionadas de R

El proceso selectivo se aplica de la misma manera, tomando como magnitud M a cualquiera de lascinco consideradas simultáneamente ó bien tomando un subconjunto de ellas. De esta manera elconjunto S proviene de una selección múltiple.

Finalmente, se obtiene como salida un conjunto SF de imágenes seleccionadas, que cumple conlas características estructurales deseables, dadas por cada magnitud.

Nótese la importancia de este algoritmo, ya que reduce la comparación de cientos o miles depixeles de cada imagen involucrada en el proceso de comparación a la comparación de a lo sumocinco valores característicos por imagen. Además, las magnitudes propuestas no varían frente acambios de escala de las imágenes ni frente a cierta clase de rotaciones (rotaciones de a 90° ypequeñas).En consecuencia el algoritmo propuesto, al que llamamos en la implementación "Algoritmo dePrefiltrado", resulta invariante a cambios de escala e invariante frente a rotaciones como lasmencionadas.Para aumentar aún más la eficiencia del algoritmo (ver capítulo 4.c: implementación del método),construimos índices durante la implementación, con las magnitudes propuestas como clave deindexación para la búsquedas de acceso directo y selecciones mediante lenguajes tipo Sal, deesta forma se cercena una gran cantidad de imágenes, estructuralmente muy diferentes, entiempos muy cortos.El algoritmo de comparación de magnitudes descripto, aparece señalizado con el indicador (C1), enla Figura 4.b.1, que muestra como se inserta el mismo, en el diagrama de procesos del método.

39 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

lmagenesOrieinales

MSTOBTENCIONDE LOSMST

OBTENCIONDE LOSGRA

MagnitudesdelGRA ALGORITMO DE

COMPARACIONDE MAGNITUDES

Figura 4.b.l:Procesos del Método de Comparación Propuesto

ResultadosParciales

i Cómo comparamos los MST ?

ALGORITMO DECOMPARACION

ENTRE MST

ResultadosFinales

Este algoritmo de comparación es el que está señalizado con (C2) en el diagrama de procesos delmétodo de la figura 4.b.1.El algoritmo puede aplicarse sobre cualquier conjunto de árboles MST a cotejar contra un MST deconsulta, pero por razones de eficiencia del método, se toma como entrada (para cotejar contra elMST de consulta) sólo a los MST que provienen del "Prefiltrado" o "Algoritmo de Comparación deMagnitudes" del GRA. Es decir que se trabaja con este algoritmo, sólo sobre un conjunto deimágenes preseleccionado, con condiciones deseables para la similitud frente a la imagen deconsulta. Este conjunto de imágenes de entrada (de buena calidad), es lo que en el diagrama de lafigura 4.b.1 se nombra como Resultados Parciales. La salida del Algoritmo de Comparación de losMST, son los Resultados Finales del diagrama, en la misma figura.Estos resultados o salida del algoritmo, es un conjunto de imágenes, consideradas similares a laimagen consultada, ordenadas por un grado de similitud porcentual. Si el grado de similitud, fueraconsiderado bajo, de acuerdo a un umbral establecido experimentalmente, el algoritmo tambiéndescarta soluciones parciales, realizando una segunda selección mucho mas fina que la realizadaen el Prefiltrado.Es así que el proceso puede descomponerse en:

• El cálculo del grado de similitud de la imagen consultada contra cada imagen de entrada.

• La selección de las imágenes con grado de similitud mayor que el umbral.

• El ordenamiento de las imágenes resultado obtenidas, según grado de similitud decreciente.

Antes de explicar el algoritmo, damos una justificación matemática a la forma elegida, para calcularel grado de similitud entre MST. Ya que este grado de similitud entre dos árboles, proviene delcálculo de una Función de Probabilidad, computada en base a las comparaciones parciales de losnodos correspondientes de ambos árboles, que se propagan para producir un valor único decomparación final. Este valor de comparación final es un número entre Oy 1, que vale 1 cuando lasimágenes comparadas son iguales o totalmente similares (pueden ser de distinta escala o rotadas).

40 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

Una función es discreta y de probabilidad, si cumple con las siguientes propiedades:[SPI/75],[COR/96]

1) El dominio de jestá dado por un conjunto finito de puntos X¡,X2""XIl

2) Para todo x, en el dominio de la función f, es: O s f (Xi) s 1

3) La sumatoria sobre los x, del dominio es: nI f (Xi) = 1

i=l

La función que damos para medir similitud, se creó de modo que cumpla con estas propiedades,ya que en tratados de Lógicas Difusas [COR/96], se establece como muy apropiado, asignargrados de verdad a una proposición, mediante valores de una función de probabilidad que estimebien lo que la proposición expresa.Además, nuestra función Grado de Similitud también cumple la propiedad de ser buena estimadoradel isomorfismo entre árboles, basándose en el color y el tamaño de los nodos correspondientesde los MST comparados. Este efecto es consecuencia directa del empleo de una medición dedistancias precisa entre colores, una comparación de tamaños invariante a escalas, por basarse enunidades GMA y una asignación de nodos correspondientes acertada.Concluyendo, nuestra función de similitud da un grado de certeza, bien fundamentado, a laproposición: "El MST, es similar al MST2 ", cada vez que que se comparen 2 árboles dados.Ver figura 4.b.2

Figura 4.b.2: Asignación de nodos correspondientes por niveles de los MST

Correspondencia de raíces, a nivelO

MST¡ MST2

NIVEL 1 I

I~----------~I I, I

NIVEL I

- - --,I I

~---~I I

_____ J 1 __

NIVEL 2

Nodo sincorresoondiente

Nodos correspondientes del nivel 2

Algoritmo de Comparación de los MST

Entrada:La entrada del algoritmo son dos árboles MST1 y MST2, el primero proviene de la imagenconsultada y el segundo proviene de alguna imagen tomada del conjunto de imágenes a comparar.Por eso podemos lIamarlos Arbol Consultado y Arbol Comparado, respectivamente.

Salida:La salida del algoritmo es el Grado de Similitud que existe entre el MST1 y el MST2, expresadocomo un porcentaje.

41 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

Modo de Recorrido:El algoritmo se aplica tomando como referencia al árbol consultado: MSTi. Se visitan todos susnadas por nivel, comenzando desde el nodo raíz (nivelO), con una estrategia de recorrido"Primero a lo Ancho", comenzando cada vez que se pase a un nivel superior con el nodo másconectado y luego siguiendo por cada uno de los nadas del mismo nivel más conectados,aplicando en caso de empate de conectividades, el mismo criterio de desempate aplicado paraelegir la raíz.

Nadas Correspondientes entre el Arbol Consultado y el Arbol Comparado:La comparación de árboles se hace nodo a nodo, entre nadas del mismo nivel de ambos árboles.Dicha comparación se hace en función del color y tamaño de los "Nadas Correspondientes" decada árbol, por lo tanto a continuación aclaramos el concepto de Nodo Correspondiente, medianteuna definición recursiva.

-La raíz del MSTi es correspondiente a la raíz del MST2 (Correspondencia a NivelO) ycomparando las raíces se obtiene un valor de comparación parcial "Cs".

-En el Nivel 1 (Nadas hijos de las raíces), el nodo Ni del MSTi es correspondiente al nodo N2 delMST2, produciendo un valor de comparación parcial C1; si:a) Ni fue elegido de la lista de nadas de nivel 1, según el criterio de selección.b) N2 es el nodo que produjo el máximo valor de comparación con Ni, entre todos los de su nivel

que aún no fueron correspondientes anteriormente. Notar que en el primer nodo elegido delMSTi para el nivel dado, se compara contra todos los del mismo nivel en el otro árbol, siendosu correspondiente el nodo del MST2 que produjo máximo valor de comparación parcial.

-En el nivel K>i, se aplica el mismo criterio que para determinar correspondencia en el Nivel K-i,pero comparando los grupos de nadas del mismo nivel de cada árbol de modo que tengan elmismo antecesor.

Valores de Comparación Parciales:

Cada vez que se localice un par de nadas correspondientes, uno de cada árbol, se produce unValor de Comparación Parcial, inversamente proporcional a la diferencia de colores de los nadas ydirectamente proporcional a la relación entre los tamaños de dichos nadas.

Si el MSTi tiene M cantidad de nadas, se producen exactamente la misma cantidad de ValoresParciales de Comparación, dados por:

._[ _ . ( )]* min(Tam(Nl}Tam(N2))s: - 1 Dist Nl,N2 rrJ ( ') ( ))m"f./\,lTam Nl¡Tam N2Vi = 1,.. ,M

Donde di =[1- Dist( Nl,N2)] ::;Ie, = min(Tam( NI } Tam( N2 )) < I

max(Tam( NI } Tam( N2)) -

es elfactor de dije renda entre colores

y es el factor de comparación de tamaños

Además:Dist(Ni,N2) representa la distancia entre colores de los nadas correspondientes Ni y N2Tam(Ni) representa el tamaño del nodo iO~ c.st , O~ di~i ~ O~Sí::;].

42 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

Valor de Comparación Final:

El valor de comparación final se obtiene acumulando los M valores parciales y dividiendo elresultado por dicho valor M, que es la cantidad de nodos comparados. Así resulta el número S,también entre °y 1, que tomamos como nuestra medida de similitud de árboles.Multiplicando a S por 100, se obtiene el porcentaje de similitud.

1 n

S =-*¿SiM i=l

Donde n:<:;Mrepresenta la cantidad de pares de NodosCorrespondientes.S es el promedio de los valores de similitud parciales,por lo tanto se mantiene en el intervalo [0,1].

Cuando los árboles comparados son idénticos, resulta: n=M , Si=l s/i ~ I Si=M ~ S=1

Finalmente, podemos asignarle un factor adicional a cada valor parcial de comparación ( Si )multiplicando dicho valor por un factor ( o, ).Dado por la dispersión de la distribución de colordentro de cada nodo. Aplicada de la siguiente manera:

s = min( Oh, (Ji2 ) ~ 1max( (Jil, (J¡2)

Dónde (1¡¡ es la dispersión en el Ni del MSTl y(1¡2 es la dispersión en el Ni del MST2.

Por lo tanto:

Obteniéndose de esta manera, un valor de comparación final, el cual no sólo utiliza un valor únicode color representante en cada nodo, sino que también se emplea la varianza ó dispersión queexiste dentro de cada región que es representada por el nodo.Agregar la varianza ó dispersión no implica realizar cálculos adicionales para obtenerla; pues yafue calculada para cada nodo y utilizada cuando se obtiene el GRA a partir del GMA.

4.c - DETALLES DE IMPLEMENTACIÓN DEL MÉTODO

Método de comparación de imágenes por contenido basado en colorEl sistema desarrollado consiste en buscar imágenes por contenido basado en la información quebrinda el color de las imágenes.Dada una imagen de entrada o de consulta el sistema devuelve todas las imágenes similares, enun determinado porcentaje, a la de consulta con sus correspondientes valores de similitud. Elporcentaje de similitud requerido es solicitado, como entrada, al usuario.Para desarrollar este sistema, es necesario utilizar una estructura de índice que nos permitarealizar una búsqueda eficiente. Esta estructura de índice se basa en las magnitudes del GRA y enlos MST de las imágenes almacenadas en una Base de Datos. Es decir que este sistema requierede dos etapas: una de almacenamiento de las imágenes en la base de datos y otra que es la deconsulta propiamente dicha.En este capítulo describimos las dos etapas, de almacenamiento y de consulta, utilizando lasrepresentaciones de las imágenes y los algoritmos de comparación desarrollados en los capítulosanteriores.

43 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

Etapa de almacenamiento de las imágenes en la Base de Datos

Esta etapa consiste en guardar todas las estructuras que representan a las imágenes, quequeremos almacenar, en la Base de Datos.En la figura 4.c.1 se describe el proceso completo de esta etapa. A partir de la imagen se obtieneel GMA correspondiente, luego a partir de éste se calcula el GRA con sus correspondientesmagnitudes y por otro proceso se obtiene el MST que corresponde a la imagen a almacenar. Unavez obtenidas las magnitudes del GRA, éstas se almacenan en la estructura de índice 11y el MSTse almacena en la segunda estructura de índice 12. 11 e 12van a utilizarse en la etapa de consultade las imágenes. Este proceso completo es la etapa de almacenamiento de las imágenes(estructuras que las representan) en la Base de Datos.

Imagen aalmacenar

OBTENCIONDELGMA

OBTENCIONDELGRA

GRAMST

CALCULO DEMAGNITUDES

DEGRAFO

11

12MAGNITUDES

DELGRA

Figura 4.c.l: Procesos utilzados al almacenarse las imágenes en la Base de Datos

44 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -USA

Etapa de consulta de una imagen en la Base de Datos

Esta etapa consiste en devolver una lista de imágenes similares a una imagen de consultadeterminada. Para la imagen de consulta. debemos calcular su representación en nuestro sistemade la misma manera que si fuéramos a almacenarla. para así obtener las estructuras a compararcontra nuestra Base de Datos.

Imagen aconsultar

OBTENCIONDELGMA

ALGORITMO DECOMPARACIONDE MAGNITUDES

CRAMST

MAGNITUDESDELGRA

Proceso que compara las magnitudes de 1 imagen deconsulta y las magnitudes de todas las i ágenesalmacenadas en la Base de Datos (Pr filtrado)

Proceso que compara el MST de la imagen deconsulta contra todos los MST del conjunto de

imágenes que pasaron el Prefiltrado _-----l- .ALGORITMO DECOMP ARACION

ENTREMST

45 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -USA

Tenemos que comparar la imagen de consulta contra todas las imágenes que previamentealmacenamos en nuestra base de datos. Para realizar esto y no perder eficiencia, lo primero quehacemos es aplicar un proceso que lo denominamos "Prefiltrado". Este proceso, consiste enobtener todas las imágenes que son similares a la de consulta aplicando el algoritmo decomparación de magnitudes desarrollado en el capítulo 4.b. Al realizar solamente comparacionesde magnitudes escalares, resulta muy eficiente y obtenemos de esta manera un subconjunto de laBase de Datos para comparar más detalladamente.Una vez obtenido el conjunto de imágenes que pasaron el Prefiltrado, se realiza el proceso decomparación entre el MST de la imagen de consulta contra todos los MST del conjuntomencionado. Este proceso, utiliza el algoritmo de comparación entre dos MST desarrolladotambién en el capítulo 4.b.; devolviendo sólo las imágenes que obtienen un porcentaje de similitudsuperior a un umbral definido por el usuario con anterioridad. La lista de imágenes obtenida,además del porcentaje de similitud respecto de la imagen consultada, es mostrada ordenada demayor a menor según el valor de similitud. La etapa completa se muestra en la figura 4.c.2

4.d - RESULTADOS EXPERIMENTALES

En este capítulo, mostramos los resultados obtenidos luego de implementar el método. Estosresultados están divididos en tres secciones, las cuales muestran diferentes bondades ó

cualidades del método desarrollado. La primera, es mostrar cómo se comporta el método frente arotaciones de las imágenes, la segunda frente a cambios de escala y la tercera es una consulta deuna imagen frente a variaciones de la misma.Al final del capítulo, presentamos una comparación del método frente al método de Intersección deHistogramas.

Comportamiento del método frente a rotaciones

Sea la imagen consultada la siguiente: AVION4

Los parámetros definidos para la búsqueda son los siguientes:

Prefiltrado:Intervalo en Cantidad de Arcos = [ -35%, +35% 1Intervalo en Cantidad de Nodos = [ -35%, +35% 1

Porcentaje de Similitud Mínimo Buscado: 60%

Esto significa, que el método busca aquellas imágenes que tiene en la base de datos con cantidadde nodos que se encuentran en el intervalo [ -35%, +35% 1 respecto a la cantidad de nodos de laimagen de consulta y además posean una cantidad de arcos que se encuentren en el intervalo[ -35%, +35% 1 respecto a la cantidad de nodos de la imagen de consulta. Luego, para cada unade las imágenes que cumplen con estas condiciones, calcula el valor de similitud frente a laimagen de consulta, devolviendo el resultado ordenado por grado de similitud decreciente siempreque el valor obtenido sea mayor ó igual al 60%.

Como veremos en los resultados estos parámetros son muy restrictivos, es decir que estamosbuscando imágenes, que se encuentren almacenadas en nuestra Base de Datos, que sean muysimilares a la imagen de consulta (AVION4).Variando los parámetros encontraremos mayor cantidad de imágenes pero algunas pueden variarbastante en estructura y coloración a la buscada.

46 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

La pantalla siguiente muestra la imagen a buscar y los parámetros de búsquedacorrespondientes .

.,:¡ Tesis de licenciatura. Oepto. Computación. Cs. Exactas. UBA Nouet - Ruggiero 1!I~13ftusCaJ é,lmacenar Utilidades ~alir

Ull. Busqueda por Arbol MST I!lI'iJiEi

Las imágenes obtenidas son las siguientes:

En la página siguiente vemos la pantalla que muestra las imágenes resultantes de la búsqueda,junto con los correspondientes valores de similitud obtenidos.

47 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

,:> Tesis de Licenciatura. Depto. Computación. Cs. Exactas. UBA Nouet- Ruggiero I!lriJlEi.6.uscar élmacenar !.[tilidades ~alir

98.29608

20 c:\vfp\bmp\avion5.bmp

98.296081 E: c:\'iffp'ü)rrlpl,avion4ri.brnp

23 c:\vip'l,bmp\avion8bmp 913024421 c:\lfip\bmp\a'ifion6.bmp 89.32434

78.9718736 c:\'.fp\bmp\eticon bmp 6118456

Claramente se visualiza que las primeras cinco imágenes obtenidas son muy similares a la de consulta, ypodemos observar que el método se comporta muy bien frente a rotaciones, ya que AVION4rr, AVION4ir,AVION4rd son rotaciones a 90° de la imagen AVION4 que es la imagen consultada.Las siguientes tres imágenes son muy similares en estructura a la consultada pero la diferencia se encuentrabásicamente en el fondo de la imagen, devolviéndolas con un porcentaje de similitud el cual radicabásicamente en la diferencia del color del fondo. Y la última imagen está muy cercana al umbral elegido,aproximadamente 60%.

Comportamiento del método frente a cambios de escala

Sea la imagen consultada la siguiente: AUTOSDOB

Los parámetros definidos para la búsqueda son los siguientes:

Prefiltrado:Intervalo en Cantidad de Arcos = [ -70%, +70% 1Intervalo en Cantidad de Nadas = [-70%, +70% 1

Porcentaje de Similitud Mínimo Buscado: 40%

Esto significa, que el método busca aquellas imágenes que tiene en la base de datos con cantidadde nadas que se encuentran en el intervalo [ -70%, +70% 1 respecto a la cantidad de nadas de laimagen de consulta y además posean una cantidad de arcos que se encuentren en el intervalo[ -70%, +70% 1 respecto a la cantidad de nadas de la imagen de consulta.

48 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

Luego, para cada una de las imágenes que cumplen con estas condiciones, calcula el valor desimilitud frente a la imagen de consulta, devolviendo el resultado ordenado por grado de similituddecreciente siempre que el valor obtenido sea mayor ó igual al 40%. Esto se visualiza en lasiguiente figura.

U~Büsqueda por Arbol MST ara a

Las imágenes resultantes de la búsqueda anterior son las siguientes:

49 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -URA

La próxima pantalla muestra los valores obtenidos para la búsqueda anterior.

.! Resultados de la Búsqueda Br€l13

Id. Nombre de Imágenes Similares Similitud17 c:\vfp\brnp\autostrUlrnp 100.00mo15 C:\',.•fp\brnp\autosdobbrnp 100.00mo14 c:\vfp\bmp\autoscua.bm 100.000009 c:i.\¡fp\brnpi.autos.bmp 1OO.DOmO

42.1%11'1 C:\', .•fp\brnp\autos1.bmp

Como podemos observar en los resultados anteriores, el método se comporta muy bien frente acambios de escala en las imágenes, ya que AUTOS, AUTOSDOB, AUTOSTRI Y AUTOSCUA sonlas mismas imágenes modificados sus tamaños.

Comportamiento del método frente a sucesivos cambios en una imagen

Sea la imagen consultada la siguiente: ROMBOSLos parámetros definidos para la búsqueda son los siguientes:

Prefiltrado:Intervalo en Cantidad de Arcos = [ -75%, +75% lIntervalo en Cantidad de Nadas = [-75%, +75% l

Porcentaje de Similitud Mínimo Buscado: 30%

Esto significa, que el método busca aquellas imágenes que tiene en la base de datos con cantidadde nadas que se encuentran en el intervalo [ -75%, +75% l respecto a la cantidad de nadas de laimagen de consulta y además posean una cantidad de arcos que se encuentren en el intervalo[ -75%, +75% l respecto a la cantidad de nadas de la imagen de consulta. Luego, para cada unade las imágenes que cumplen con estas condiciones, calcula el valor de similitud frente a laimagen de consulta, devolviendo el resultado ordenado por grado de similitud decreciente siempreque el valor obtenido sea mayor ó igual al 30%. Esto se visualiza en la siguiente figura

50 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

¡U Busqueda por Albol MST R~t3

Las imágenes resultantes de la búsqueda anterior son las siguientes:

La siguiente figura muestra los valores de similitud obtenidos para cada una de las imágenes resultantes.

51 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

~ Resultados de la Búsqueda l!Ir€Ja

Id. Nombre de Imágenes Similares Similitud107 c:'t.',¡fp't.bmp't.rombos.brnp 10000000108 c:'t.l¡fp't.bmp't.rornbos1.brnp 94.19B85'110 c:\vfp\'brnp\rombos3brnp 89.69596'1'14 c:\vfp\brnp't.rornt'os7.lm1P B94156510El c:\',¡fp\'brnp\rornbos2.brnp 8:3.39769'111 c:\vfp\bmp\rombos4.brn B2.BB5IJ4112 c:\'vfp\'bmp\'rornbos5.brnp 7142699113 c:\vfp\brnp\rornbos6.brnp 6649135

59.27831'115 c:\vfp\'brnp't.rornbos8.brnp

67 c:\I,.fp\bmp\rnact1ms.bmp

En los resultados obtenidos, podemos apreciar que el método se comporta muy bien frente acambios sucesivos de una misma imagen, devolviendo valores de mayor a menor frente a dichoscambios.

Comparación del método VS. Intersección de Histogramas Color

En esta sección, realizamos una comparación entre el método propuesto y el método deintersección de histogramas color.En primer lugar, realizamos una comparación muy sencilla con sólo dos imágenes (EJEMPL04 yEJEMPL05) para ver cómo se comportan ambos métodos.Las imágenes son las siguientes:

I EJEMPL04 I I EJEMPL05 IComo podemos apreciar, ambas imágenes poseen la misma cantidad de pixeles de cada colorpero son diferentes en sus estructuras.Las estructuras almacenadas en nuestro método se muestran en la figura 4.d.1, en la cual vemospara ambas imágenes los GMA, GRA Y MST correspondientes.En el método de intersección de histogramas la estructura almacenada es el mismo histogramapara las dos imágenes ya que no guarda estructura sino que sólo utiliza la distribución de loscolores.

52 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

Figura 4.d.1: GMA, GRA Y MST correspondientes a las imágenes EJEMPL04 y EJEMPL05.El GRA Y MST se muestran en la misma pantalla, sólo que el MST es el que tiene los arcos encolor rojo y el GRA se completa con los arcos en línea puntada, los cuáles son descartados por elalgoritmo que genera el MST a partir del GRA.

I GMA de EJEMPL04 Imn Gfato Malflclal de Adyacencias ~ GMA !1m El

1m' Gralo GRAy Arbol MST 1!!Ir;;J E3

GRA YMST de EJEMPL04

I GMA de EJEMPLOS Iftm Grato Malnclal de Adyacenclas - GMA 1!Ir;J 13

'"

1m' Gralo GRA y Arbol MST 1!!Ir;;J E3

GRA YMST de EJEMPLOS

53 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

Los valores de similitud obtenidos por ambos métodos son los siguientes:

Consulta: EJEMPL04MSTINTERSECCION

EJEMPL04 100% 100%

EJEMPLOS 100% 60.18%

IMAGEN

En los resultados vemos que el método de intersección da un valor de similitud del 100% entreambas imágenes. a pesar de que la estructura es diferente.En cambio el método propuesto. detecta dicha variación entre las imágenes y devuelve un valor desimilitud del 60.18%. Esto se debe a que utiliza estructuras de árboles para realizar lacomparación. pudiendo así utilizar la información estructural de las imágenes a comparar.

En segundo lugar realizamos una comparación un poco más compleja con 15 imágenes elegidascomo ejemplo. para determinar algunas conclusiones más acerca de la eficiencia del métodopropuesto vs. el método de Intersección de Histogramas. Las imágenes elegidas se muestran en laFigura 4.d.2

Figura 4.d.2.:lmágenes almacenadas en la Base de Datos utilizadas en el ejemplo decomparación.

54 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -UBA

La imagen utilizada en la consulta es EJEMPL04, la cual fue consultada con ambos métodosobteniéndose los si uientes resultados:

Consulta: EJEMPL04INTERSECCION MST

EJEMPL04 100% 100%

IMAGEN

EJEMPL05 60%100%

EJEMPL06 100% 70%

EJEMPL07 100% 73%

EJEMPL011 100% 87%

EJEMPL012 100% 76%

EJEMPL013 100% 68%

EJEMPL014 100% 85%

EJEMPL08 99% 70%

EJEMPL09 96% 95%

EJEMPL010 88% 84%

EJEMPL015 75% 87%

EJEMPLo16 75% 92%

EJEMPL017 50% 98%

EJEMPL018 50% 82%

55 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -URA

Para dar una visión general de los resultados obtenidos, generamos un gráfico donde se muestrandos curvas. Una de ellas está dada por los valores obtenidos por el método de Intersección y laotra está generada mediante los valores obtenidos por el método propuesto.

Comparación del método vs. Histogramas

100 . 100 ' 100 ' 100 ' 100 ' 100 ' 100 ' 100 ' 99

" 80~.~E

.Cñ 60Q)

" 40-;{¿o

60,--,--,--,--,--,--,--,--,--,--,--,--,--c---\

14 15 9

En el gráfico anterior, desde el punto donde se juntan ambas curvas hacia la izquierda, estándistribuidas las imágenes con cambios de tipo estructural y todas éstas poseen la mismadistribución de color. En cambio, hacia la derecha se encuentran las imágenes que no cambianestructuralmente pero si cambian levemente su coloración.En la parte izquierda, la curva Arbol MST va por debajo de la de Intersección siendo ésta unacondición favorable ya que el método Arbol MST está mostrando gran sensibilidad ante cambios deestructura en las imágenes, tal como lo percibe el ojo humano. Mientras que el método deIntersección encuentra igualdad en todos estos casos, contradiciendo nuestra percepción óptica.En la parte derecha, la curva del método Arbol MST va por encima de la de Intersección siendoesto también favorable debido a que en estas imágenes sólo existen pequeñas variaciones de unode sus colores, por lo que Intersección (sólo evalua colores) detecta fuertemente la variación. Encambio, el método propuesto devuelve valores de similitud mayores ya que detecta que laestructura de las imágenes permanecen igual pese a las pequeñas variaciones de color. Estonuevamente corresponde a lo que percibe el ojo humano.Concluyendo, el método propuesto detecta más similitud que el método de intersección cuando elojo humano percibe la misma sensación.

56 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UBA

••-.;.;0;0;0;e- ;0;0;0;••-.;0;0;0;.;0;0;0;0;0;••-..•••;0;0;0;.;••..•••••;0;0;••-.;«.;0;0; ••-...;0;0; cc cc ••.o;~o;o;~o;~.;o. .••••.•;••~~ •••••••.•••••••••..••••.••~~ •••••.••••..•••.•••••.••.••..••••.••••-...••.••.••.••o;e- ;o".••o;.;owo;O;';-.-.;O;O;'~~~ ••"« ••""'«<"««««"",,,,,,,,,,,,,,,"""""""'V'>««««""~

5 - DESCRIPCION DEL SOFTWARE IMPLEMENTADO

En este capítulo describimos las características fundamentales del software implementado paraprobar el método propuesto y compararlo contra otros métodos. Al desarrollar el software, nopretendimos realizar un sistema comercial sino que sólo nos abocamos a que éste nos brindeinformación sobre el método y que presente una forma didáctica de devolver los resultados.Además comentamos estrategias o formas de implementación que consideramos destacables parael mejor funcionamiento del método o para mejorar su eficiencia. Estas características no fueroncomentadas en los capítulos que describen el método, porque están directamente ligadas con lametodología de programación.

• Utilizamos programación visual basada en eventos y formularios de pantalla, con llamadas arutinas realizadas mediante programación clásica. Es decir, que utilizamos un paradigma deprogramación mixto orientado a eventos y procedular.El lenguaje de programación utilizado es Visual Fox 5.0, ya que nos permite trabajar con elparadigma anteriormente mencionado e incluso podemos tratar la información de las imágenesa nivel de bit.

• El diseño del software responde a un esquema como el que se muestra en la Figura 5.1.

• En el capítulo 2.e: Cuantización de Colores, mencionamos las ventajas de utilizar un conjuntoreducido de colores representantes.Para implementar el mapeo de los colores propios de cada imagen sobre los coloresrepresentantes es necesario encontrar el color representante de mínima distancia CIElab paracada color de la imagen. Este proceso en lugar de realizarlo una vez por cada pixel de laimagen, lo hacemos solamente una vez por cada color de la imagen, aprovechando la paletade colores propia de cada archivo BMP. Otra opción sería mapear sólo los coloresrepresentantes de cada nodo del GMA sobre la paleta de colores representantes, es decir sólorealizamos 100 mapeos.

• Para las comparaciones entre colores, utilizadas en los algoritmos, consideramos convenientela utilización de una tabla en donde se encuentran almacenadas todas las distancias CIElabentre los colores representantes. Es decir, cada vez que sea necesario calcular la distanciaentre dos colores sólo realizamos un acceso a dicha tabla, lo que resulta más eficiente quevolver a realizar los cálculos correspondientes.

• En el algoritmo de obtención del GRA a partir del GMA (unificación de nodos adyacentes delmismo color representante), consideramos conveniente para ganar eficiencia, ir calculando lasmagnitudes extraídas del GRA simultáneamente con la obtención del mismo. De este modo, alterminar de calcular el GRA, también tenemos calculadas todas las magnitudes que provienende él.

• En el algoritmo de obtención del MST a partir del GRA (eliminación de arcos que producenciclos), es de gran importancia cómo se implementa la rutina de detección de ciclos. Ennuestro caso, tratamos de utilizar un método puramente recursivo, pero esto nos produjoexplosiones recursivas en los programas. luego probamos la utilización de métodos clásicos,mediante la implementación de matrices de adyacencia ( Kruskal), pero esto nos produjodesbordes de memoria ya que era necesario generar demasiadas matrices. Por lo tanto, sibien nos basamos en estos tipos de métodos, utilizamos recursos puramente de programaciónpara dotar de eficiencia a la rutina. Utilizamos una serie de consultas SQl con tablastemporales y cursores.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UEA

O;-;-; -, O;•••••• O;••x -,O;-.:-;.;.;O;«O;-;-;-."«O; •••••• O;' ••••••••••••••••••••••••• «O: e cc e ccccccc ••••.•••••;.;••••••x cc o;••••••••••••••••••••••••• cc ••••••••••••.••.••..•••••xccccvccccccccccccc xcc -..v.v.-.."« ccxccccccccccccc ••••••••••••.••••••ccccccc ••••••••~~«'IN'ó ••••••••..•.••.••••..•..•..•..••••..•••cceeccccec

• En la etapa de Prefiltrado del método, utilizamos una sencilla consulta SOL que compara lasmagnitudes escalares. Esto nos permite descartar rápidamente aquellas imágenes muydiferentes a la imagen consultada debido a que sus magnitudes no caen dentro de losintervalos de confianza buscados.

• En los algoritmos de comparación de los árboles MST, cuando hay empate de magnitudes denodo y se debe desempatar por criterios no posicionales, recurrimos a una tabla en memoria,dónde los nodos están ordenados según esta serie de criterios. Por lo tanto, establecer undesempate es tomar el nodo que aparece primero en la citada tabla, dotando así de mayoreficiencia a los algoritmos.

• Gracias a la elección de un lenguaje de programación visual, es que logramos mostrar losresultados de comparación y las respuestas múltiples junto con la imagen que representan.Aprovechando las propiedades del lenguaje, también logramos mostrar las estructurasutilizadas (GMA, GRA Y MST) en pantalla, a través de diferentes objetos formularios.

• Descripción de Tablas e Indices utilizados

Para implementar el método es necesario almacenar, por cada imagen que se ingrese al sistema,las estructuras y magnitudes que las representan (Opción almacenar del Menú Principal).Realizamos esto para no tener que recalcular en cada comparación de imágenes todas estasestructuras y magnitudes. Las estructuras almacenadas son las siguientes: el histograma decolores representantes de la imagen, el MST y las cinco magnitudes calculadas sobre el GMA.Todos estos elementos caracterizan fuertemente a la imagen original, son ideales para serevaluadas en nuestros algoritmos de comparación y ocupan relativamente poco espacio dealmacenamiento por cada imagen. Además implementando índices apropiados, sobre las tablasque la contengan, logramos accesos directos a los valores buscados y por lo tanto dotamos demayor eficiencia al método. Otra ventaja de estos índices es que se aprovechan para resolver másrápidamente las consultas SOL, cuando se requiere a ellas en algunos segmentos de losprogramas.Las estructuras almacenadas son las que se detallan a continuación:

Estructura de la tabla: MST.DBF - En esta Tabla se almacenan los datos del MST para serutilizado en el algoritmo de comparación.

Indice: ID = STR(ID,8)

Nombre de Campo Tipo Ancho Dec. DescripciónID Numérico 8 Identificador de la ImagenNRO NODO Numérico 3 Número de Nodo del MSTTAMANO Numérico 3 Tamaño del NodoID COLOR Numérico 3 Identificador del Color del NodoCONECT Numérico 3 Conectividad del NodoSUMDIST Numérico 10 7 Sumatoria de distancias de los arcosANTECESOR Numérico 3 Número de Nodo Antecesor en el MSTNIVEL Numérico 2 Nivel del Nodo dentro del MSTHOJA Lógico 1 Si es un Nodo Hoja ó No

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -VBA

'; ••o;o;o;o;••o;~o;o;o; cco;o;O;o;?;.'; ••o;o;o.-';o;o;••o;o;.;.:".;o;-;-;o.-'; ••••••ccccccc ••ccccccc.•••~o; ••o;••••••o;ccccccccccccccccccccc •••••••••••••••••••••••• «W:~ ••••••••••••••••••••••••••••••••••<;?;.<;..-;-;,~~ xccoc cccccccccccc ••ccccccc ••••••••••••••••.•••••••••.••••.••.•..••~~

Estructura de la tabla: IMAGES.DBF - En esta Tabla se guardan los datos de las imágenes ymagnitudes del GRA para el Prefiltrado del método.

Indice: ID = STR(ID,8)NOMBRE = NOMBRE

Nombre de Campo Tipo Ancho Dec. DescripciónID Numérico 8 Identificador de la ImagenNOMBRE Carácter 30 Nombre de la lmaqenTAMARCH Numérico 8 Tamaño del Archivo en BvtesCOL Numérico 4 Cantidad de Columnas de la ImagenFIL Numérico 4 Cantidad de Filas de la ImaqenBITSPORPIX Numérico 3 Bits por Pixel de la lrnauenCOLORES Numérico 8 Cantidad de Colores de la ImagenCOMPRESION Numérico 1 Formato de Compresión de la lmaoenPIXELOFF Numérico 4 A partir de que Byte están los datosCANT NODO Numérico 3 Cantidad de Nadas del GRACANT ARCO Numérico 3 Cantidad de Arcos del MSTLONG BORD Numérico 3 Suma de Longitudes de Borde del GMAPROM REGIO Numérico 3MAX REGIO Numérico 3ENTROPIA Numérico 8 6

Estructura de la tabla: HISTOG.DBF - Se almacenan los Histogramas de Color de cada Imagenpara ser utilizados en el método de Intersección de Histogramas.

Indice: ID = STR(ID,8)+STR(COLOR_REP,3)

Nombre de Campo Tipo Ancho Dec. DescripciónID Numérico 8 Identificador de la ImagenCOLOR REP Numérico 3 Identificador del Color RepresentanteFREC Numérico 10 8 Porcentaje de aparición del color

,.•

.' fO,v ii«I ¡[:if( ,

Métodos de comparación de imágenespor contenido basados en color

Departamento de ComputaciónFac. Cs. Exactas y Naturales -URA

Figura 5.1: Diseño del software implementado.

ProgramaMAIN

ALMACENAR BUSCAR UTILIDADES SALIR --.

POR INTERSECCION POR GMA POR MST BORRAR B.D. REINDEXAR

FormularioDIDMST

FormularioDIBGRA

60 Sergio Nouet y Antonio Ruggiero

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UBA

0;.;-;.;-;.;.;-;.;.;.; •••;.;.; ••..•••;0;.; •••;-;0;0;••-.;.;.;.;0;.;.;.;.;.; ••-..••••••;•••••••••••••••••••;.;.;.;-;';O'; •••••••••••••~; •••;.; •••••;O;>;•••••••••••••••••••••••••••••••••••••••••••••••••..••••••••••••••••..••..•••;.;-;;.;-;>.; c.ccc -.;o.~; ••.•;x-.;-.v.v.v.-..-.;-.-...;-.-.;.....,; ••••••o;?;o;.;••••••-;cc -..;-;cc ~o;: oc o;:~~ •••••;••••.•~~.««««.. ..••••••

6- CONCLUSIONES Y EXTENSIONES PROPUESTAS

CONCLUSIONES:• El Método de Comparación de Imágenes por Contenido, basado en color y utilizando grafos,

reconoce similitud con más exactitud que los métodos clásicos basados en color y que utilizanhistogramas. Esto se debe a que los grafos, no sólo retienen información acerca del color delas imágenes, sino que también conservan información estructural de las mismas.

• Por realizar una comparación estructural, es un método muy útil para hallar no solo igualdad,sino también semejanza entre imágenes, permitiéndonos devolver respuestas múltiples.Además, por devolver para cada imagen seleccionada un grado de similitud, nos permiteobtener un conjunto respuesta bien ordenado por dicho grado.

• La implementación de una etapa de prefiltrado, por magnitudes de rápida evaluación y muysignificativas, reduce notablemente el tiempo de las comparaciones múltiples. Por lo tanto,recomendamos fuertemente la utilización de la misma, ya que actúa como una efectivaheurística de corte, que nos permite aumentar la eficiencia del método ante grandescantidades de imágenes a comparar.

• La precisión del método, en cada uno de sus algoritmos está basada en la gran precisión de ladistancia dada por el Sistema de Representación CIELab, esta distancia responde al modelode Mansell (para ordenar colores, según percepción visual) y de los científicos que loperfeccionaron posteriormente. Esta distancia y el modelo a que responde (paraboloide decolores) nos permiten reconocer la No Linealidad del Espacio de Colores. Finalmente, losresultados experimentales nos hacen valorar enormemente a esta distancia.

• Los procesos para llevar imágenes a grafos, si bien deben ser apropiados, no son de grancomplejidad, pero no resulta lo mismo cuando se intenta pasar de grafos a árboles, en estaetapa, puede resultar complejo producir algoritmos eficientes y que no produzcan explosionesrecursivas, ni desbordes de memoria, para descartar caminos cíclicos.

EXTENSIONES PROPUESTAS:

Mediante el método propuesto, hemos obtenido resultados muy satisfactorios. Sin embargocreemos que este puede perfeccionarse, utilizando un método diferente para obtener directamenteun GRA desde cada imagen, sin obtener un GMA anterior. Esto, seguramente puede lograrseintroduciendo un algoritmo de segmentación basado en una extracción de bordes y cierre posteriorde zonas abiertas, mediante curvas simples. De esta manera, el método lograría aún másprecisión, ya que los nodos responderían absolutamente a la forma de la imagen y además elmétodo sería invariante a cualquier tipo de rotaciones.

En nuestro método, por cada región obtenida en la segmentación de las imágenes, calculamos unúnico color representante y la dispersión. Una alternativa en el método sería reemplazar al colorrepresentante por un pequeño histograma de colores y en cada comparación realizar unaintersección local de histogramas [SWA/91]. teniendo en cuenta que estaríamos guardando másinformación para cada imagen almacenada.

Otro aspecto en dónde también se puede trabajar es encontrar algoritmos que nos proporcionen uncriterio de desempate absolutamente no posicional durante el pasaje del GRA al MST.

El software implementado está orientado a mostrar el buen funcionamiento del métododesarrollado. Una extensión al mismo consiste en desarrollar un sistema que nos permita realizarconsultas conjuntas: basadas en color, el nombre de las imágenes, textura y otros atributos propiosde las imágenes.

Métodos de comparacián de imágenes Departamento de Computaclánpor contenido basados en color Fac. Cs. Exactas y Naturales -VBA

'••••••••••••••;•••••;•••••••••;.:-;-:.;.;.;.;.:.;.;.;.;.;.; •••••;.;.;.;.; •••;-;••-:-:o;-;-x-;••••.•;-;••••••••••••••••~ •••••••••••••••••••:•••••••:.:.:.:?;-;-;.;.; •••••:.;.:.:-:•••:.;•••;.;•••••••:-:.;-;-;-;-;•••••;-;.;••••••••~ ••••••o;o;o;o;o;o;o;o;••••••cc•••;o;.;.;o;.;-;.~«~o;o; ••.••••-;.,...;••.•;.••••~o; ••••••o;o;.:.••••o;o;O;'•.••xccccccccccox ••xccocccccccc

7- REFERENCIAS

[BAL/90] Ballard D. and Swain M., Indexing Via Color Histograms, IEEE Transactions on ImageProcessing, pág. 390-393. 1990.

[BAN/91] Banerjee S., An Optimal algorithm to find the degrees of connectedness in an undirectededge-weighted graph, Elsevier Science Publishiers B. V. (North-Holland), pág. 421-424. April 1991.

[CHA/96] Chang R. and Chen W., Adaptive Edge-Based Side-Match Finite-State Classified VectorQuantization with Quadtree Map, IEEE Transactions on Image Processing, Vol. 5 N° 2,February 1996.

[COR/96] Correa da Silva Flavio, USP San Pablo, Brasil. Razonamiento automatizado conincertidumbre. Curso ECI '93

[DEL/96] Del Bimbo A, Image and Video Databases, Curso ECI'96, 1996.[ENN/95] Ennesser F. and Medioni G., "Finding Waldo, or Focus of Attention Using Local Color

Information", IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 17- N° 8 - pág. 805-809. August 1995.

[FEY/71] Feynman, Leighton and Sands, "Mecánica, Radiación y Calor", Fondo EducativoInteramericano S.A., 1971.

[GON/90] González R and Woods R., Digital Image Processing, Addison Wesley PublishingCompany.

[HAF/95] Hafner J., Sawhney H., Equitz W., Flickner M. and Niblack W., Efficient Color HistogramIndexing for Quadratic Form Distance Functions, IEEE Transactions on PatternAnalysis and Machine Intelligence, Vol. 17 - N° 7 - pág. 729-736. July 1995.

[JAI/90] Jain A, Fundamentals of Digital Image Processing, Prentice Hall, Information and SystemSciences Series. Tomas Kailath Series Editor. 1990.

[LlM/90] Lim J., Two Dimensional Signal and Image Processing, Prentice Hall - Signal ProcessingSeries, Alan V. Oppenheim Series Editor., 1990.

[MLS/94] Mlsna P. and Rodríguez J., Explosion of Multidimensional Image Histograms, IEEETransactions on Image Processing, pág. 958-961. 1994.

[NOV/94] Novak C. and Shafer S., Estimating Scene Properties from Color Histograms, School ofComputer Science - Carnegie Mellon University. Pittsburgh.

[SPI/75] Spiegel Murray, Probabilidad y Estadística. Mac Graw Hill.[SUKl84] Suk M. and ChoTai-hoon, An Object Detection Algorithm Based on the Region-Adjacency

Graph, Proceedings ofthe IEEE, Vol.2 N° 7, pág. 985-986,1984.[SUKl86] Suk M. and Oh Shoung-jun, Region Adjacency and its Aplication to Object Detection,

Pattern Recognition Society, Vol.19 N° 2, pág. 161-167, 1986.[STR/94] Stricker M. and Swain M., The Capacity and the Sensitivity of Color Histogram Indexing,

Technical Report, March 24, 1994.[SWA/91] Swain M. and Ballard D., Color Indexing, International Journal of Computer Vision, 7:1,

pág. 11-32. 1991.[TEN/85] Tenenbaum Aaron y Augestein Moshe, Estructura de Datos en Pascal. Prentice Hall.

1985.[TSO/86] Tso M., Network Flow Models in Image Processing, Journal of the Operational Research

Society Vol. 37 N° 1, 1986.[TRE/94] Tremblay M. and Zaccarin A, Transmission on the color information using Quad-Trees

and Segmentation-Based approaches for the Compression of color Images with limitedPalette, IEEE Transactions on Image Processing, pág. 967-971. 1994.

[URQ/82] Urquhart R., Graph Theoretical Clustering Based on Limited Neighbourhood Sets,Pattern Recognition Vol. 15 N° 8, 1982.

[XIA/96] Xiaolin W., YIQ Vector Quantization in a New Color Palette Architecture, IEEETransactions on Image Processing, Volume 5. N° 2, pág. 321-329.February 1996.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en coLor Fac. Cs. Exactas y NaturaLes -UBA

.;-,.,;•••••;-.;.;•••••••;.,;.;•.•xc e"«0;.: ••.••.•;0:-; e-.:••.•;e0;0;-;••.•;-c~ •••••e•••••x ccc -..-...;••.••.••~ .••••.••.••••••••••••••••••••••-.....••••••••••••••••.•;.:••.•;••••••••••••••••••••~ ..•••••••~ .••••••••.•.•••••.••.••-...••.••.••.••.••.••.••-..x-..-......••••••.••.••.••••«~« ••••.••~ ••••••••'""" ..••••••••••••.••••• • •••••.••••••••.•••••••••••..........-xv;=

APÉNDICE A

PALETA DE COLORES REPRESENTANTES

En la implementación del método propuesto, al utilizar archivos BMP cómo imágenes en dondecada una de éstas posee diferente paleta de colores, la comparación entre las imágenes es muydificultosa; entonces nos encontramos con la necesidad de definir una paleta de colores única,denominada paleta de colores representantes.Cada una de las paletas de colores de las imágenes es mapeada a la paleta de coloresrepresentantes, por intermedio de una distancia entre colores [Capítulo 2], obteniéndose el espaciocaracterístico de las imágenes (GMA, GRA Y MST) en base a esta paleta de colores única. Es decirse calculan los grafos siempre utilizando como base la paleta de colores representantes.Permitiéndonos realizar una buena comparación entre los MST.La paleta de colores representantes posee una amplia variedad de colores, basada sobre la paletade colores standard de Microsoft Windows con pequeños cambios, considerada muy buena parabuscar similitud entre imágenes.Los valores r,g,b, de la paleta de colores representantes son los siguientes:

#Color R G BO O O 511 O O 1022 O O 1283 O O 1534 O O 2045 O O 2556 O 51 O7 O 51 518 O 51 1029 O 51 15310 O 51 20411 O 51 25512 O 64 O13 O 102 O14 O 102 5115 O 102 10216 O 102 15317 O 102 20418 O 102 25519 O 128 25520 O 153 O21 O 153 5122 O 153 10223 O 153 15324 O 153 20425 O 153 25526 O 204 O27 O 204 5128 O 204 10229 O 204 15330 O 204 20431 O 204 25532 O 255 O

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UBA

.;0;cc-.:.;0; cc-.;.;-;.•••••;.;-;.-;.•••••••••••••••••••;.;••-.;0;.;.;.;.;.;-.;0;..; ••••• ;••••••..•..-...;o;••occccccccoxccccccccc .•••x-xccccoc ••••.•••••••••••••••••••excc cc ccc ccc ~ .•••;••••.••.••••••••••••••••..:« ••'« ••••••••••e;.••••.••••-.......cccc ··;·.;w.~~«o; .•.•.•~~ ••.•«o; ••••••••cccccc ••.•••••••••••••••••••••••••

#Color R G B33 O 255 5134 O 255 10235 O 255 15336 O 255 20437 O 255 25538 51 O O39 51 O 5140 51 O 10241 51 O 15342 51 O 20443 51 O 25544 51 51 O45 51 51 5146 51 51 10247 51 51 15348 51 51 20449 51 51 25550 51 102 O51 51 102 5152 51 102 10253 51 102 15354 51 102 20455 51 102 25556 51 153 O57 51 153 5158 51 153 10259 51 153 15360 51 153 20461 51 153 25562 51 204 O63 51 204 5164 51 204 10265 51 204 15366 51 204 20467 51 204 25568 51 255 O69 51 255 5170 51 255 10271 51 255 15372 51 255 20473 51 255 25574 56 56 5675 72 72 7276 77 O 7777 88 88 8878 102 O O79 102 O 5180 102 O 10281 102 O 15382 102 O 20483 102 O 255

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UBA

0;-; cccccccccco ;-;••x ••••••.x ••x ••.••••••••••••.•••••••e•••••••••••••••••••••••••••••••••••••••.••••••••••••••••••••••.••••.••••••-•.;•••••••••••••••••••••••••~ •••••••••••••••••••••••••••e••••••.•••••••••••••~.~ ••••.••..••xcccccccccccccccccccccccccx oxcccc ~ ••••••••••••••~ ••••~ .•••.•••••••••••••.••••••••••••.•..••••••••••.••••.•••••

#Color R G B84 102 51 O85 102 51 5186 102 51 10287 102 51 15388 102 51 20489 102 51 25590 102 102 O91 102 102 5192 102 102 10293 102 102 15394 102 102 20495 102 102 25596 102 153 O97 102 153 5198 102 153 10299 102 153 153100 102 153 204101 102 153 255102 102 204 O103 102 204 51104 102 204 102105 102 204 153106 102 204 204107 102 204 255108 102 255 O109 102 255 51110 102 255 102111 102 255 153112 102 255 204113 102 255 255114 104 104 104115 120 120 120116 128 O O117 128 O 255118 128 128 O119 136 136 136120 152 152 152121 153 O O122 153 O 51123 153 O 102124 153 O 153125 153 O 204126 153 O 255127 153 51 O128 153 51 51129 153 51 102130 153 51 153131 153 51 204132 153 51 255

. ««««<<<<<<<<<<<<<<<<<-=<<<<<<<<<<<<-..'<< .«««««««<<<-:<<<<.<<<<.<<<<<<<<<<<.:65 ••«<<<<<<-¡<<<<<<<o(<<<<<<<<<<<<<<<<<<<~«<<<<<<<<<<<<<.::~<<<<<

Sergzo Nouet y Antonio Ruggiero

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas VNaturales -UBA

-;•••••;0;.;e-;•••••••;••0;.;-;e-c••••••••••••••••••...,;0: e-;ex- ;cxccccc e••••0;«.; ••••••••••••••cccc cccccccccc-x v,;~ •••••••••••••••••••••;o;c;« •••••••••••••• «« •••••••••••;••••••••~ ••••••••••••••••••••••••••••••••••••••••••cceccc ••cc-co;••o;:••••«« ccccccccc .,;.,;ccccccc ••••••••~~~ ccccccc e««<~ ••.,;-;o;

#Color R G B133 153 102 O134 153 102 51135 153 102 102136 153 102 153137 153 102 204138 153 102 255139 153 153 O140 153 153 51141 153 153 102142 153 153 153143 153 153 204144 153 153 255145 153 204 O146 153 204 51147 153 204 102148 153 204 153149 153 204 204150 153 204 255151 153 255 O152 153 255 51153 153 255 102154 153 255 153155 153 255 204156 153 255 255157 168 168 168158 172 172 O159 196 196 196160 204 O O161 204 O 51162 204 O 102163 204 O 153164 204 O 204165 204 O 255166 204 51 O167 204 51 51168 204 51 102169 204 51 153170 204 51 204171 204 51 255172 204 102 O173 204 102 51174 204 102 102175 204 102 153176 204 102 204177 204 102 255178 204 153 O179 204 153 51180 204 153 102181 204 153 153182 204 153 204

<.;<.: •.~ •., ••.-x-: te-.:««««<<<<<<<-. ••.~"<< X>.-.:.."««««-.~:.x.:..."<<< ••»;.x ••-.:

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en coLor Fac. Cs. Exactas VNaturales -UBA

.; ••••••• ;-; ••••••• ;0,; •••••••••••• -c•••••;••••••.•••••••••••;cc evccc oc •••••••••••••••••;••••••.••••••••••••••..••••••.•••••••••••••;•••••••••;.;o,c o; ••.•••••••••• v.-,; .•••••••••••;ccxcccc , ••••••••••••.••••.••••••.••••••••.'•••••••.,;.,;.,;'1:".'«« •••••••••••••••••••••••••••••••••;ccccox cccccccccc cccc ~.,; cccccc ~ e«V. x~~~~

#Color R G B183 204 153 255184 204 204 O185 204 204 51186 204 204 102187 204 204 153188 204 204 204189 204 204 204190 204 204 255191 204 255 O192 204 255 51193 204 255 102194 204 255 153195 204 255 204196 204 255 255197 216 216 216198 232 232 232199 255 O O200 255 O 51201 255 O 102202 255 O 128203 255 O 153204 255 O 204205 255 O 255206 255 51 O207 255 51 51208 255 51 102209 255 51 153210 255 51 204211 255 51 255212 255 102 O213 255 102 51214 255 102 102215 255 102 153216 255 102 204217 255 102 255218 255 128 O219 255 128 128220 255 153 O221 255 153 51222 255 153 102223 255 153 153224 255 153 204225 255 153 255226 255 204 O227 255 204 51228 255 204 102229 255 204 153230 255 204 204231 255 204 255232 255 255 O

:««<<<<<<<<<<<<<~~"oX<<o."<<.:<<o: ~~ ••~ ••:...-.:..:.e..."'«oC««< .•«««««<67

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -VBA

••v.O;O;';O;';o;-,~o;O;"?;";"""'''';''''';';O;';';'''''''; cccc o;o;«v.:o;o;~o;-;o.-.;o;-..~ ••••o;.;.;« ccc -..~''''' ••• =..=..= .•.•=-.-....~.;o;o;~~o;v.«o;o;o;o;-;-;o;o;o;o;o;«.;.;o;o;o;v.~~o; cc o;-o;o;o;••••-.~ •••••coc.••••••••••••••••••••••••••••••oxoxcccccccccc ••••••~~v.

#Color R G B233 255 255 51234 255 255 102235 255 255 153236 255 255 204237 255 255 255

APÉNDICE B

IMÁGENES UTILIZADAS

Para implementar las técnicas mencionadas, utilizamos como imágenes multicolor, a archivos conformato bitmap de Microsoft Windows 3.0 (.BMP). Este tipo de archivos, soporta imágenes de 1, 4,u 8 bits por pixel mapeado a una paleta de colores e imágenes full color de 24 bits por pixel. Lasimágenes pueden estar comprimidas o no, usando una técnica de compresión que desarrollaremosmás adelante.

Un archivo BMP consiste de un encabezado de longitud fija, seguido por un mapa de colores (enlos formatos que lo requieren) ya continuación los datos de la imagen almacenados pixel por pixel,empaquetados en bytes.Entonces el formato de un BMP es:

ENCABEZADOMAP A DE COLORESMAP A DE BlTS.

La estructura del ENCABEZADO ,conteniendo información acerca del archivo, dimensión, cantidadde colores, etc. del bitmap, está definida de la siguiente manera:

struct ENCABEZADO {unsigned char magic1 , magic2;unsigned long filesize;unsigned short res1, res2;unsigned long pixeloffset;

unsigned long bmisize;unsigned long cols;unsigned long rows;unsigned short planes;unsigned short bitsperpixel;unsigned long compression;unsigned long cmpsize;unsigned long xscale;unsigned long yscale;unsigned long colors;unsigned long impcolors;

};

En un archivo de formato BMP, el valor de magic1 es "B" y el de magic2 es "M", en caso contrariono es un archivo con formato bitmap de MS-Windows. El valor de filesize, indica la cantidad debytes que posee el archivo BMP, mientras que res1, res2 son valores igual a cero en todos loscasos. Por otro lado pixeloffset indica a partir de que byte comienzan a estar almacenados losdatos de la imagen.Los valores que se detallan a continuación son características de la imagen multicolor.

bmisize = Número de bytes requeridos por la estructura.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -VEA-xccoxcccccc-xcccccccccccc ••,«o;o;o;o; ••~o;o;o;o;••?,~o; ccocx ccco;••••~ ••••••.••-..;..~~~ ••cccccc ••••~ ••••••••.••••••••.••••~.~ .••••«o;~;w;.;o;o;•••xcccc cccc -cc••~.; ••••o;e-;o;«~o;o;o;o;o;~~ ••«~ cccccc~ ••~~

cols = Ancho o cantidad de columnas del bitmap en pixels.rows = Alto o cantidad de filas del bitmap en pixeles.planes = Números de planos para el dispositivo target, este valor es siempre cero.bitsperpixel = Cantidad de bits por pixel. Los valores deben ser 1, 4, 8 ó 24.

1 bit por pixel : El bitmap es monocromo y el MAPA DE COLORES, debecontener sólo 2 entradas.Cada uno de los bits en el MAPA DE BITS representa unpixel. Si el bit es cero, el pixel es mostrado con el color dela primera entrada en el MAPA DE COLORES, si encambio este es uno, muestra el color de la segunda entrada.

4 bits por pixel: El bitmap tiene un máximo de 16 colores, por lo tanto elMAPA DE COLORES tiene 16 entradas. Cada uno de lospixels en el bitmap (MAPA DE BITS), es representado porun valor de 4 bits (1/2 byte) que es el valor índice en elMAPA DE COLORES.

Por ejemplo si el primer valor en el bitmap es Ox1F, elbyte al representar dos pixels, indica que el color del primer pixel es la segunda entrada en el MAPA DE COLORES, mientras que el segundo pixel es el color correspondiente a la décimosexta entrada.

8 bits por pixel: El bitmap tiene un máximo de 256 colores. El MAPA DECOLORES contiene 256 entradas. Cada uno de los bytesdel MAPA DE BITS representa una entrada en el MAPA

DE COLORES, significando un pixel en el bitmap.24 bits por pixel: El bitmap tiene un máximo de 2A24 colores. No posee

MAPA DE COLORES Y cada grupo de 3 bytes consecutivos en el MAPA DE BITS, representa la intensidad de losvalores R(red), G(green), B(blue) respectivamente de unpixel.

compression = Especifica el tipo de compresión utilizada en un bitmap comprimido. Estepuede ser uno de los siguientes valores:BI_RGB = O Formato sin compresión.BI_RLES = 1 Formato de compresión para bitmaps de 8 bits por

pixel. El formato de compresión es un dato compuestode 2 bytes, en el cual el primero es la cantidad de pixelsque siguen con el color que corresponde a la entrada delvalor del segundo byte en el MAPA DE COLORES.

Este formato puede estar comprimido de dos modos diferentes:encoded y absoluto.

El modo encoded consiste de 2 bytes: el primero de estos especifica el número de pixeles consecutivos a ser dibujados usando elíndice del MAPA DE COLORES contenido en el segundo byte. Elel primer byte puede ser cero, indicando un código de control ydependiendo del valor del segundo byte, denota el fin de linea, finde bitmap o un Delta.Significado del segundo byte:

O Fin de Línea.1 Fin de Bitmap.2 Delta. Los dos bytes que siguen a este código de

control indican la cantidad de pixels a saltear horizontal y vertical respectivamente desde la posición corriente.

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -UBA

eoc-;.;.;0; -, -:.;-: -o;.;.;.; ••••••••".; e 0,;•••••-.;.;0;.; ••••• ;.; ••••-...••••• ; •••••••••••••••••• o; ••~-..-..; •• ~ ••••••••••••• ; •••••••••••••••• ~ ••••••• ~ ••••••••••••••••••••.•••••••••• ~ cccxccccccex .••.••.••.••.••.••.••.••.••-...••••-..-..-...-.,;••-..-.;.;•••e••.••~ .••••••.••.••.••xx .••-.."""••••••••••.••••••••.••.••~~ ••••~~~

El modo absoluto es indicado por el primer byteen cero y el segundo byte un valor entre Ox03 yOxFF. En modo absoluto, el segundo byte representa el número de pixels que sigue,cada uno delos cuales contiene el color del MAPA DE COLORES de un pixel. Cuando el segundo byte es 2o menos, el código de control tiene el mismosignificado que en modo encoded.

BI_RLE4 = 2 Formato de compresión para bitmaps de 4 bits por pixel,Este formato también utiliza modos encoded y absoluto.

El primer byte contiene el número de pixels a ser dibujados usando el índice del MAPA DE COLORES que vieneen el segundo byte. El segundo byte contiene dos índicesdel MAPA DE COLORES, utilizando medio byte para c/ude éstos. El primero de los pixels es dibujado utilizandocomo índice del MAPA DE COLOR el Yz byte más alto y elsegundo pixel utilizando el segundo Yz byte más bajo.

En el modo absoluto el primer byte contiene cero y el segundo byte contiene la cantidad de índices del MAPA DECOLORES que siguen, y los bytes siguientes contienenlos índices utilizando 1/2 byte para cada uno. Cada uno deéstos índices representa un pixel. Los códigos de controlFin de Linea, Fin de Bitmap y delta se aplican igual que elformato anterior.

En todos los formatos los valores son completados a palabra (byte completo) conceros.

cmpsize = Especifica el tamaño, en bytes, de la imagen. Este valor es cero si el bitmapestá en el formato BI_RGB.

xscale = Especifica la resolución horizontal, en pixels por metro, del dispositivo targetdel bitmap.

yscale = Especifica la resolución vertical, en pixels por metro, del dispositivo target delbitmap.

colors = Especifica el número de índices en el MAPA DE COLORES actualmente utilizados por el bitmap. Si éste valor es cero, el bitmap usa el máximo número decolores correspondiente al valor de bitsperpixel.

impcolors = Si este valor es distinto de cero, indica la cantidad de colores que son considerados importantes para dibujar el bitmap. Si este valor es cero, todos los

colores son importantes.

El MAPA DE COLORES, representa la paleta de colores que utiliza el bitmap en todas susformas, menos el de 24 bits por pixel que representa el MAPA DE BITS por cada color R,G,B. Laestructura del MAPA DE COLORES es la siguiente:

struct MAPA COLOR {unsigned char Blue, Green, Red, NOUSAR

};

Métodos de comparación de imágenes Departamento de Computaciónpor contenido basados en color Fac. Cs. Exactas y Naturales -VEA

«-;-; cc-.;.;o;•••••zxc oco;••o;••••••o;coc -;ocxc •••;..:••~ ••-;••••••••••••••••••••••••~ ••~ ••o;••o;e-;••••••••.••.••••~ •••••••••..•••e•••••••.••••••.••~ ••~_. """""""""_~ -cxc scc~~ ••••••••••••••••••••~o;o; cc cccccccc ••o;-,~ ••••••••••cccccccccccccccccccc e~

Esta estructura describe un color por intermedio de las intensidades realtivas de los colores rojo,verde y azul.

Blue = Especifica la intensidad del azul en determinado color.Green = Especifica la intensidad del verde en determinado color.Red = Especifica la intensidad del rojo en determinado color.

Entonces el MAPA DE COLORES es un arreglo donde cada entrada es un color de la imagen,compuesto por sus componentes Red, Green, Blue respectivamente.

MAPA DE BITS

El mapa de bits es la estructuta que representa a la imagen propiamente dicha. En los formatos sincompresión, el mapa de bits contiene el índice del MAPA DE COLORES, es decir el número decolor que corresponde en la paleta de colores del bitmap. Dependiendo la forma en que vienenéstos datos según la cantidad de bits por pixel.En los formatos comprimidos utiliza una forma de compresión indicada anteriormente, en dondeutiliza códigos de control y modos encoded o absoluto. En este tipo de codificación el modoencoded o absoluto pueden aparecer ambos en el mismo mapa de bits en cualquier lugar.En todos los formatos, cada valor es alineado a palabra completa, completa con ceros a bytecompleto.El mapa de bits comienza por el pixel de la última fila y el de más a la izquierda. Es decir que sedebe dibujar el bitmap de abajo hacia arriba y de izquierda a derecha.