Tesis de Licenciatura “Análisis de los momentos complejos de Zernike como descriptores de imágenes” Alumno: Ezequiel Adrián Cura Directores: MSc. Mariano H. Tepper y Dra. Marta E. Mejail Febrero de 2010 UNIVERSIDAD DE BUENOS AIRES Facultad de Ciencias Exactas y Naturales Departamento de Computación Resumen Uno de los problemas más importantes en el análisis de patrones es el reconocimiento de objetos sin importar su posición, tamaño u orientación. Fruto de las posibilidades que brinda la nueva tecnologı́a, el avance del contenido multimedia y la expansión de internet, se han presentado diversas situaciones en las cuales una herramienta capaz de encontrar todas las imágenes similares a una dada (query ) serı́a de gran utilidad. Algunos de los casos son : inspección y embalaje de partes industriales, identificación de rostros y el reconocimiento automático de logos de marcas registradas. Este último es una necesidad legal importante, siendo sobre el cual se inspira este trabajo. Los momentos complejos de Zernike se presentan como una posibilidad válida para la generación de descriptores globales de una imagen [KH90]. Estos momentos presentan diversas propiedades de invarianza interesantes para la caracterización de una imagen. En este trabajo, se realiza un análisis en profundidad de los mismos, para luego proponer una serie de nuevas métricas buscando capturar la noción intuitiva de semejanza entre imágenes, mejorando los resultados de métricas existentes. Adicionalmente, se presentan una serie de variantes a los momentos complejos de Zernike para reducir los tiempos de ejecución. Abstract Object recognition despites position, size and orientation is one of the most important areas of image processing. The massive use of new technologies, Internet and multimedia contents has created the need of a tool that can find similar images to a given one. Some particular cases where such tool will be useful are industrial packaging inspection, face recognition and automatic recognition of trademark logos. This work addresses the last case, which is a important legal issue. Using Zernike’s complex moments, we can obtain a global image descriptor. This descriptor has some valuable properties that allow us to characterize an image from it [KH90]. In this work, we analyze Zernike’s complex moments in order to propose different metrics that can capture the intuitive notion of “look-alike” in trademark logos. Our results show better marks than other methods used in the object recognition literature. In addition, we present some variants for the Zernike’s complex moments that report improvements in the execution times. Agradecimientos Un especial agradecimiento a Mariano H. Tepper y Marta E. Mejail, pues ellos recorrieron junto a mı́ este camino, abriendo paso y marcando el sendero. Por responder a mis innumerables consultas y soportar mis inagotables falencias. Gracias! A ambos jurados, Daniel Acevedo y Julio C. Jacobo-Berlles, ya que en lugar de remojar sus piernas en las aguas dulces del rı́o de la Plata decidieron sumergir sus cabezas en los complicados pasillos de mi tesis. Gracias! A mis compañeros de cuartito en el “Image processing and Computer Vision Group”, Marı́a Elena, Pachi, Alexandra y Marcelo. Gracias! A lo que algunos han dado en llamar Voley en exactas, exacta-voley o el grupo de espasmódicos anónimos de martes y viernes. Como fuere, muchos pasaron, algunos quedaron, pocos sonrı́en cordialmente al cruzarme en un pasillo y aún menos me dirigen la palabra. (Ceci, Cele, Maru, Sole, Lu, Caro, Vicky, Junior, Andre, Cyn, Fer, Flor, ¿Bereniz?, Dardo, Rodes, Michan, Juancito, Diego(s), Sasa, Eze(s), Ema, Leo, Yoshi, Lipper, Oscar, Carballo, etc) Gracias! A los sres. miembros de la cofradı́a TPSH, en especial a los socios plenarios co-fundadores y a los perdidos en cumplimiento del deber. (Por orden de aparición: Alejandro “sabi” Deymmonaz, Pedro “piter” Varangot, Federico “roquein” Raimondo, Tomás “Topa” Scally, Marcos “Aurelio” Chicote, Luis “Alberto” Mastrángelo, Jorge “Jotinha” Lucángeli Obes, Pablo “not Pichito” Barembaum, Pablo “Bada-bin” Rodrı́guez Zivic, Lautaro “lata” Dolberg, Pablo “jipi” Heiber, Francisco “Droopy” o (Soy tan feliz) Soulignac, Matias “LyR” Lopez&Rosenfeld, Pancho “Francisco” Roslan y Guido “De” Caso) Son sus discusiones bananales, sus apologı́as de linux, sus distribuciones de cerveza y su peligrosa afección a lo permitido lo que a mellado mi destino para forjar mi carrera. Debo a este singular conglomerado de mentes afiladas media carrera y más de un asado. Gracias! Hay muchos que deberı́a mencionar, algunos que mencioné y deberı́a resaltar por sobre otros. Hay otros que sencillamente se perdieron, se olvidaron de existir en este pequeño mundo académico. A todos ellos, soldados anónimos que esperan con un mate en el bar del 1, una cerveza en deportes o con porciones inconmesurables de bondiola. Esos que invertı́an su tiempo perdiendo en el metegol y dilapidaban las horas en la noriega. (roman, facu, guille, lea, manix, fran, diego, pocho, marine, loch, german, hernan, martin, dario, tavo, joaco, etc.) Gracias! A tu vieja, por esas tardes de gloria. Que buen nombre! Al señor Juan A. Knebel, nunca comprendı́ como forjamos una amistad tras solo compartir una materia. Gracias! A mi familia toda (abuela, primos, tı́os, tı́as, padrino, madrina, sus hijos y los hijos de sus hijos), por todo, aunque no hacı́a falta nada. Gracias! A dos hermanos que me dió la vida, Sebastián Bronico y Julian M. Picollini. Gracias! Padre, madre y hermana, cerca o lejos siempre pienso en ustedes. Dani, es cuando estoy estancado que surgı́s para empujarme. A los señores Jorge Cura y Alejandro Nisán Braslavsky Avenburg, la vida no parece ser justa cuando los recuerdos se nublan. Índice general 1. Introducción 1.1. Objetivo y organización del trabajo . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 3 2. Descriptores basados en momentos de Zernike 2.1. Introducción: Momentos de una función . . . . . . . . . . . . . . . . . . . . . 2.2. Definición . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3. Propiedades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.1. Invarianza ante rotaciones . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.2. Invarianza ante traslaciones y escalamientos . . . . . . . . . . . . . . . 2.4. Estudios sobre los momentos de Zernike . . . . . . . . . . . . . . . . . . . . . 2.4.1. Análisis de los polinomios complejos de Zernike . . . . . . . . . . . . . 2.4.2. Comparación entre momentos de Zernike de diversas imágenes . . . . 2.5. Extracción de los momentos complejos de Zernike de una imagen . . . . . . . 2.5.1. Centrado y escalamiento: invarianza ante traslaciones y escalamientos 2.5.2. Cálculo de los momentos complejos de Zernike . . . . . . . . . . . . . 2.5.3. Corrección de fase de los momentos complejos de Zernike . . . . . . . 2.5.4. Construcción de los descriptores de momentos de Zernike . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 6 7 7 7 10 10 11 12 19 19 21 21 22 3. Métricas propuestas 3.1. Métrica de referencia . . . . . . . . . . . . . . . . . . . . . 3.2. Primera aproximación . . . . . . . . . . . . . . . . . . . . 3.3. Segunda aproximación . . . . . . . . . . . . . . . . . . . . 3.3.1. Ponderación de los momentos complejos de Zernike 3.3.2. Método propuesto . . . . . . . . . . . . . . . . . . 3.4. Tercer aproximación . . . . . . . . . . . . . . . . . . . . . 3.4.1. Análisis de componentes principales (PCA) . . . . 3.4.2. Distancia de Mahalanobis . . . . . . . . . . . . . . 3.4.3. Método propuesto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 26 27 34 34 35 37 37 38 39 4. Estudios sobre los algoritmos de clasificación propuestos 4.1. Colecciones de imágenes utilizadas en los estudios . . . . . . . . . . . . . . . . . . . 4.2. Metodologı́a: Bulls-eye Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.1. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 45 48 50 5. Conclusiones 5.1. Contribuciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2. Trabajo futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 73 74 A. Algebra de números complejos 75 iv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ÍNDICE GENERAL B. Implementación B.1. MATLAB . . . . . . . . . . . . . . . B.1.1. Generación de descriptores de B.1.2. Clasificadores . . . . . . . . . B.1.3. Estudios realizados . . . . . . B.1.4. Bases precalculadas . . . . . . . . . . . momentos . . . . . . . . . . . . . . . . . . v . . . . . . complejos . . . . . . . . . . . . . . . . . . . . . . . . . de Zernike . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 76 76 76 78 78 Capı́tulo 1 Introducción La vista es uno de nuestros sentidos más explotados por la tecnologı́a hoy dı́a. Muchos dispositivos centran su operabilidad en la estética visual (touchscreen), la creciente inclusión de contenido multimedia y el incremento en el uso de cámaras digitales son ejemplos de ello. El uso cotidiano de estos dispositivos genera en sus operarios necesidades básicas que esperan sean satisfechas, generando nuevas demandas en áreas como procesamiento de imágenes y visión por computadora. Como respuestas a estas demandas podemos observar la inclusión de software en cámaras digitales para lograr autoenfoque, detección de sonrisas, detección de rostros, reconocimiento de personas, filtrado de ruido, el seguimiento de objetivos en sistemas de seguridad, selección de elementos en diferentes procesos industriales, etc. Ası́ el procesamiento de imágenes y la visión por computadora se erigen como la contraparte computacional de las ciencias que se dedican a la interpretación de las imágenes y videos. Más precisamente, el procesamiento de imágenes se centra en problemáticas de bajo nivel como detección de bordes, extracción de contornos, filtros, etc., mientras que la visión por computadora se dedica a tareas relacionadas con el video, la reconstrucción de mapas 3D, el análisis de patrones, etc. En particular, uno de los problemas más importantes en el análisis de patrones es el reconocimiento de objetos sin importar su posición, tamaño u orientación. Existen diversas situaciones donde una herramienta capaz de clasificar las imágenes por un grado de similaritud a una dada (query) serı́a de gran utilidad. Algunos de los casos son : inspección y embalaje de partes industriales, identificación de rostros[TP91], reconocimiento de caracteres manuscritos (OCR) y el reconocimiento automático de logos de marcas registradas. Este último es una necesidad legal importante, se centra en imágenes en escala de grises y será sobre el cual se inspira esta tesis. No es una tarea sencilla discernir que tan parecida es una imagen o si una imagen es más parecida a otra. En primer lugar no es fácil conseguir un acuerdo entre humanos sobre el grado de similaridad de dos imágenes aún en aspectos legales, tal como se muestra en el ejemplo de la Figura 1.1. Menos aún es trasladar este difuso concepto a la informática y conseguir la conformidad de aquellos interesados en esta herramienta. Figura 1.1: Dos logos cuya similaridad es discutible : The Art of Peace Foundation (http://www.artofpeacefoundation.org/) vs. Vivir Mejor (Programa de apoyo alimentario para las comunidades rurales, México). 1 Introducción Sobre este punto F. Brooks define un dificultad esencial en lo referente al desarrollo de software, conformidad, en su trabajo “ No silver bullet ”[Bro01] : “Conformity. Software people are not alone in facing complexity. Physics deals with terribly complex objects even at the “fundamental particle level”. The physicist labors on, however, in a firm faith that there are unifying principles to be found, whether in quarks or in unifiedfield theories. Einstein argued that there must be simplified explanations of nature, because God is not capricious or arbitrary. No such faith comforts the software engineer. Much of the complexity that he must master is arbitrary complexity, forced without rhyme or reason by the many human institutions and systems to which his interfaces must conform. These differ from interface to interface, and from time to time, not because of necessity but only because they were designed by different people, rather than by God. In many cases, the software must conform because it is the most recent arrival on the scene. In others, it must conform because it is perceived as the most conformable. But in all cases, much complexity comes from conformation to other interfaces; this complexity cannot be simplified out by any redesign of the software alone.” Si bien la cita hace incapié en la necesidad de conformar a otros sistemas que interactúen con el desarrollado, la necesidad de conformar a las personas que intaractúan con el sistema es evidente y una dificultad intrı́nseca, mas aún cuando incluso la persona que utilizará el software no tiene una definición precisa sobre el concepto de similaritud pasado el punto de imágenes iguales. Pero esta dificultad crece en complejidad a medida que intentamos avanzar en busca de un sistema de comparación general. Al intentar conformar al ser humano, surge la necesidad de interpretar las imágenes como lo hace él. Saber cómo un ser humano interpreta los estı́mulos visuales que recibe es algo que escapa a las ciencias de la computación. Diferentes ramas de la psicologı́a, filosofı́a y la medicina se han avocado a interpretar cuál es la respuesta humana ante estı́mulos visuales. Como un ejemplo, la psicologı́a de la Gestalt enumera diversas leyes y principios sobre la interpretación de los estı́mulos visuales. Los mismos intentan resumir una serie de procesos que realiza nuestra mente al interpretar una imagen, algunas de las leyes son: Ley de cierre: Nuestra mente completa las figuras en base a su experiencia, para obtener imágenes lo más simples posible. Ley de continuidad: La mente continúa un patrón, aún después de que el mismo desaparezca. Ley de la proximidad: El agrupamiento parcial o secuencial de elementos según su distancia. Ley de simetrı́a: Las imágenes simétricas son percibidas como iguales. Ley de la semejanza: Los elementos similares son agrupados en una entidad. La semejanza depende de la forma, el tamaño, el color y el brillo de los elementos. Además, el hombre cuenta con dos herramientas a su disposición : experiencias previas e información de contexto. Eliminando alguna de ellas es posible confundir a la mente al momento de interpretar figuras (Fig. 1.2) . Finalmente, podemos considerar otra de las mayores limitaciones propias de la era digital, la discretización de las funciones. Es decir, existen diferentes formas de representar una imagen y durante el desarrollo teórico podemos asumir las imágenes son funciones continuas. Sin embargo, en la computadora siempre se trata de arreglos n dimensionales, en donde habitualmente n vale 2 ó 3. Durante el trabajo, al tratarse de imágenes blanco y negro o en escala de grises, podemos asegurar que se tratará siempre de arreglos de 2 dimensiones. Esta discretización tiene como consecuencia la pérdida de información, dependiendo el grado de la misma se volverá imposible tratar ciertas imágenes. 2 Introducción Figura 1.2: ¿ Dos caras o una copa ? 1.1. Objetivo y organización del trabajo Ciertos grupos de investigación han avanzando en el reconocimiento de formas bidimensionales utilizando descriptores de imágenes. Los descriptores de imágenes son uno, o varios, vectores extraı́dos de una imagen a través de diversos métodos. Estos descriptores capturan cierta información caracterı́stica y suelen contar con ciertas propiedades que lo tornan interesante para identificar una imagen. Ejemplo de ellos son los extraı́dos a partir de momentos regulares, los descriptores de Fourier[RPAK88], los utilizados por MPEG-7[LLE00], los obtenidos por SIFT[Low03] o los generados utilizando Shape Context[BMP02]. Entre las diversas posibilidades, los momentos complejos de Zernike se presentan como una posibilidad válida para la generación de descriptores globales de una imagen [KH90]. Estos momentos presentan diversas propiedades de invarianza interesantes para la caracterización de una imagen. Existen varios trabajos recientes sobre los momentos de Zernike siempre centrándose en imágenes en escala de grises [LLP09, RLB09]. El objetivo de esta tesis es proponer posibles métricas para los momentos de Zernike. En particular, se busca una métrica que capture la noción intuitiva de semejanza. A lo largo del trabajo se estudiarán los momentos de Zernike en la caracterización de imágenes, se propondrán diferentes métricas, y se intentará determinar las métricas más adecuadas de forma empı́rica. La tesis esta organizada del siguiente modo. Capı́tulo 2 : Descriptores basados en momentos de Zernike Este capı́tulo provee al lector con toda la información necesaria sobre momentos de Zernike. En particular, a lo largo del mismo se define el concepto de momento de una imagen, se presentan los momentos de Zernike, sus propiedades y el por qué de su utilización en este área. De forma conjunta se realizan algunos estudios sobre el comportamiento de los mismos para diferentes imágenes, intentando dilucidar como cambian sus valores de acuerdo a la imagen de la cual son extraı́dos. Capı́tulo 3 : Métricas propuestas Nuestro trabajo busca proponer una serie de nuevas métricas para la comparación de descriptores de Zernike. En el capı́tulo 3 se presentan tres de estas métricas, de forma conjunta con una métrica de referencia. Además se presentan los motivos que llevaron a la construcción de estas métricas y por qué se eligió estas por sobre otras. Capı́tulo 4 : Estudios sobre los algoritmos de clasificación propuestos Aquı́ compararemos diferentes variaciones de las métricas propuestas buscando encontrar las ventajas y desventajas de utilizar cada una de estas. Para realizar estas comparaciones se utilizarán diferentes bases de datos y mecanismos de comparación normalizados. Capı́tulo 5 : Conclusiones En el capı́tulo 5 encontramos las conclusiones de nuestro trabajo y 3 Introducción los posibles trabajos futuros que surgen del mismo. 4 Capı́tulo 2 Descriptores basados en momentos de Zernike Trabajar con imágenes de forma computacional nos fuerza a conseguir representaciones finitas de las imágenes que capturen cierta información caracterı́stica y las vuelvan tratables en este entorno. Como una representación posible, los descriptores de imágenes son colecciones de valores extraı́dos de una imagen a través de diversos métodos, su finalidad es identificar a una imagen y facilitar procesos de comparación, almacenamiento, transformación, etc. Algunos ejemplos de descriptores son los extraı́dos a partir de una función de momentos, los descriptores de Fourier[RPAK88], los utilizados por MPEG-7[LLE00], los obtenidos por SIFT[Low03] o los generados utilizando Shape Context[BMP02]. Las funciones de momentos, a partir de las cuales se obtienen los descriptores de una imagen, son de la forma φpq donde p y q determinan el orden del momento. La idea de las funciones de momentos es, dado un valor para pq, evaluar la imagen ponderando algunos de sus pı́xeles, obteniendo un número resultante. Este número suele poseer ciertas propiedades que lo tornan interesante para la identificación de la imagen. En este trabajo nos centramos en los descriptores generados a partir de los momentos complejos de Zernike para una imagen. Es decir, nuestro descriptor basado en momentos de Zernike será una colección de valores complejos, resultado de evaluar a la imagen en momentos de Zernike de diverso orden. En este capı́tulo se presenta un estudio de los descriptores basados en momentos de Zernike. Veremos la definición, propiedades, algunas caracterı́sticas particulares y la metodologı́a a seguir para extraer los momentos complejos de Zernike a partir de una imagen cualquiera. 5 Descriptores basados en momentos de Zernike 2.1. Introducción: Momentos de una función Los momentos son un concepto derivado de la fı́sica. En ésta existen diversas definiciones para momentos (momento de una fuerza o torque, momento angular, momento de inercia, momento magnético, etc.), aunque siempre representan una magnitud que relaciona vectores y un punto, una recta o un plano. Como contraparte, también existen diferentes definiciones de momentos en matemática. En particular, las áreas dedicadas al procesamiento de imágenes entienden por momento a aquellas funciones encargadas de extraer de una imagen cierta información, otorgando a sus pı́xeles cierto peso. Además estas funciones suelen presentar ciertas propiedades y permiten realizar interpretaciones que no se derivan directamente de la imagen y son útiles para el trabajo en el área. Definimos una imagen como una función continua f : R2 → C. En general, se puede expresar una función de momentos cualquiera φpq del siguiente modo [FM05] Z ∞Z ∞ φpq = ψpq (x, y) f (x, y) dx dy (2.1) −∞ −∞ donde: ψpq es la función encargada de realizar la ponderación de la imagen. Dentro de las funciones que cumplen con esta expresión existen diversos tipos de momentos. Los llamados momentos regulares (mpq ) son uno de los más utilizados dentro de lo que se define como momentos geométricos. Estos se definen como Z ∞Z ∞ mpq = xp y q f (x, y) dx dy . (2.2) −∞ −∞ Los momentos regulares de una imagen tienen ciertas propiedades singulares que pueden ser aprovechadas para realizar ciertas transformaciones en una imagen. A lo largo del trabajo se pueden observar diversos lugares en los que hacemos uso de estas particularidades. Además existen muchos otros momentos que pueden ser extraı́dos de una imagen [KA05]. Entre los que podemos discernir tres grandes grupos: Momentos ortogonales: Obtienen esta categorı́a aquellos momentos cuya función ψpq (Ec. 2.1) describe un conjunto de polinomios que conforman una base ortogonal completa[Tea80]. Existen varios momentos de este tipo, entre los que se puede considerar los de Legendre[FZL+ 07], Tchebichef[ZSX+ 07] y, sobre los que versa este trabajo, los momentos de Zernike. Momentos geométricos: Dentro se incluyen los momentos regulares, momentos centrales, momentos invariantes de Hu[Hu62],etc. Al no ser ortogonales entre sı́, existe una redundancia en la información devuelta por los momentos de diverso orden. Momentos complejos: Los momentos complejos fueron introducidos por Abu-Mostafa y Plais[AP85]. Presentan algunas ventajas frente a los momentos geométricos. Sin embargo presentan una desventaja similar a la de los momentos geométricos, no son ortogonales. Por esto se considera que la reconstrucción de una imagen a partir de los momentos complejos de la misma es algo tedioso. 6 Descriptores basados en momentos de Zernike 2.2. Definición F. Zernike definió [Zer34] un conjunto de polinomios complejos que conforman una base ortogonal completa circunscripta en el cı́rculo unitario1 . A continuación las definiciones correspondientes. Definición 1. Se definen los polinomios complejos de Zernike Vnm como: Vnm : R2 → C (2.3) Vnm (x, y) = Vnm (ρ, θ) = Rnm (ρ) exp(imθ) (2.4) n−|m| 2 Rnm (ρ) = X (−1)s s=0 (n − s)! s!( n+|m| 2 − s)! ( n−|m| − s)! 2 ρn−2s (2.5) donde se cumple: 0 ≤ n. | m | ≤ n, n− | m | es par. ρ es la magnitud del vector formado desde el origen al punto (x, y). θ es el argumento del vector formado desde el origen al punto (x, y). A partir de los polinomios de Zernike se pueden definir los momentos de Zernike de una imagen. Definición 2. Se define un momento de Zernike (MZ) como ZZ n+1 ∗ f (x, y)Vnm (x, y) dx dy Anm = π (2.6) x2 +y 2 ≤1 donde: ∗ (x, y) es el conjugado complejo del polinomio de Zernike Vnm evaluado en (x, y). Vnm La función continua f : R2 → C representa a la imagen según lo mencionado con anterioridad. 2.3. Propiedades A continuación las propiedades que tornan interesante la utilización de los MZ en el reconocimiento de patrones. Se analizan las invarianzas propias de los MZ y se introducen mecanismos para completarlas. 2.3.1. Invarianza ante rotaciones El módulo de los momentos de Zernike cuenta con la propiedad de ser invariante ante rotaciones de f . Por tanto, los MZ de una imagen se preservan sin importar la rotación de la misma. Al analizar esta propiedad se debe tener en cuenta que los MZ tienen valores complejos. La fase de un MZ particular no es invariante a rotaciones. Sin embargo es posible aplicar algún mecanismo para conseguir que la fase sea también invariante a rotaciones. A continuación se detallan la variante y las demostraciones que corroboran la invarianza. En busca de una mayor claridad se trata al módulo y la fase por separado, de forma adicional se asume la función f en coordenadas polares, esto no afecta en nada los resultados expuestos. 1 Se entiende por cı́rculo unitario a los puntos (x, y) dentro del área descripta por x2 + y 2 ≤ 1 7 Descriptores basados en momentos de Zernike Invarianza del módulo ante rotaciones De la observación de los polinomios de Zernike (Ec. 2.4) se deduce que el módulo resultante de un MZ particular depende del valor de Rnm (Ec. 2.5) . Es decir, Rnm valdrá igual para aquellos (x, y) que compartan el mismo valor de módulo ρ. Como ρ se mantiene constante ante rotaciones, no parece extraño que el módulo de los MZ se mantenga constante ante rotaciones también. Lema 1. El módulo de los momentos de Zernike es invariante a rotaciones en f [KH90]. Demostración. Los momentos de Zernike dada una función f particular son de la forma(Ec. 2.6) : Z Z n + 1 2π 1 ∗ f (ρ, θ)Vnm (x, y) dρ dθ, π 0 0 reemplazandolo por su definición (Ec. 2.4) , obtenemos: Afnm = si extendemos Vnm Afnm n+1 = π 2π Z Z 1 (2.7) ∗ f (ρ, θ)Rnm (ρ) exp(imθ) dρ dθ 0 0 ∗ donde Rnm (ρ) exp(imθ) = Rnm (ρ) exp(−imθ),2 finalmente nos queda algo de la forma: Z Z n + 1 2π 1 f (ρ, θ)Rnm (ρ) exp(−imθ) dρ dθ . (2.8) π 0 0 como una rotación en α de la función f , esta se puede expresar como: Afnm = Ahora definamos f α f α (ρ, θ) = f (ρ, θ − α). Los MZ de f α (2.9) se pueden ver, siguiendo el resultado (Ec. 2.8) , de la siguiente manera: Z Z n + 1 2π 1 α f (ρ, θ)Rnm (ρ) exp(−imθ) dρ dθ, π 0 0 si ahora reemplazamos f α por su expresión equivalente en base a f (Ec. 2.9) : α Afnm = Z Z n + 1 2π 1 = f (ρ, θ − α)Rnm (ρ) exp(imθ) dρ dθ π 0 0 y haciendo un cambio de variables donde θα = θ − α, obtenemos : α Afnm Z Z n + 1 2π 1 f (ρ, θα )Rnm (ρ) exp(−im(θα + α)) dρ dθα . π 0 0 Al ser exp(−im(θα + α)) equivalente a exp(−imα) exp(−imθα ), donde exp(−imα) es una α constante dada una f 0 particular, se puede notar Afnm como: α Afnm = Z Z n + 1 2π 1 f (ρ, θα )Rnm (ρ) exp(−imθα ) dρ dθα . π 0 0 Juntando esto con lo descripto en (Ec. 2.8) , obtenemos: α Afnm = exp(−imα) α Afnm = Afnm exp(−imα). Si pedimos el módulo a ambos lados de la igualdad: α f |Anm | = |Afnm exp(−imα)| sabemos que | exp(−imα)| = 1 entonces α |Afnm | = |Afnm | por tanto, el módulo de los momentos complejos de Zernike es invariante a rotaciones. 2 Por definición de conjugado complejo se invierte el ángulo del número. 8 (2.10) Descriptores basados en momentos de Zernike Invarianza de la fase ante rotaciones Observando la sección anterior, podemos notar que la fase de los momentos complejos de Zernike no es invariante ante rotaciones (Ec. 2.10) . De hecho, todos los MZ aparecen desplazados en su fase por una constante, exp(−imα), que depende de la rotación de la función respecto a la original y el orden del momento particular. Sin embargo, según resultados presentados en un trabajo reciente [LLP09], es posible realizar una pequeña variante para conseguir la invarianza ante rotaciones en la fase de los momentos complejos de Zernike. La corrección presentada en el trabajo es la siguiente: A0nm = Anm exp(−imθn0 ,1 ), (2.11) donde θn0 ,1 es la fase sin corregir del momento An0 1 , para algún n0 válido. Este n0 puede ser cualquiera, pero se debe utilizar uno fijo al realizar la corrección para comparar entre MZ provenientes de distintas funciones (imágenes). Además, si observamos en detalle, esta corrección no afecta para nada el módulo de los An m , únicamente se centra en la fase. A continuación presentamos la demostración por la cual esto provee invariancia ante rotaciones para la fase de los momentos complejos de Zernike. Lema 2. Los momentos complejos de Zernike corregidos, A0nm son invariantes a rotaciones en f [LLP09]. Demostración. Según vimos en la sección anterior 2.3.1 la relación entre los MZ de una función rotada y la original sin realizar la corrección es de la forma (Ec. 2.10) : α Afnm = Afnm exp(−imα). Si nos centramos en la fase de los MZ, θnm , podemos deducir la siguiente relación entre ambas: α f f = θnm − mα θnm si restamos a ambos lados de la igualdad α mθnf 0 ,1 α α (2.12) obtenemos: α f f θnm − mθnf 0 ,1 = θnm − mθnf 0 ,1 − mα donde el lado izquierdo αde la igualdad se corresponde con el resultado de aplicar la variante de α (Ec. 2.11) . Dado que mθnf 0 ,1 es la fase sin corregir del MZ Afn0 1 rotado, podemos expresarlo en función de las fases de f (Ec. 2.12) : α θnf 0 ,1 = θnf 0 ,1 − 1 ∗ α. α Entonces reemplazando a mθnf 0 ,1 en la ecuación original: α α f f θnm − mθnf 0 ,1 = θnm − m(θnf 0 ,1 − 1 ∗ α) − mα α α f f θnm − mθnf 0 ,1 = θnm − mθnf 0 ,1 + mα − mα realizando la resta obtenemos la igualdad: 0 0 f f θnm − mθnf 0 ,1 = θnm − mθnf 0 ,1 . 0 0 f Se observa que θnm − mθnf 0 ,1 es la fase resultante de aplicar la corrección a los MZ de f 0 , f mientras que el lado derecho, θnm − mθnf 0 ,1 , es el resultado de corregir los MZ de f . Es decir, la fase es invariante a rotaciones una vez realizada la corrección. El módulo también se mantiene invariante respecto a rotaciones. Partiendo de resultados anteriores (sección 2.3.1), tenemos 9 Descriptores basados en momentos de Zernike α |Afnm | = |Afnm exp(−imα)| reemplazando los MZ por los corregidos obtenemos: α |Afnm exp(−imθnα0 ,1 )| = |Afnm exp(−imθn0 ,1 ) exp(−imα)|. Sabemos por teorı́a de números complejos que | exp(ix)| = 1 dado un x cualquiera, por tanto, podemos reescribir la ecuación anterior como: α |Afnm | = |Afnm |, esto se debe a que la corrección solo influye sobre la fase de los MZ. Se concluye que los momentos complejos de Zernike son invariantes a rotaciones una vez aplicada la variante propuesta por Shan Li et al. 2.3.2. Invarianza ante traslaciones y escalamientos Los momentos complejos de Zernike no son invariantes ante traslaciones ni escalamientos de la función f . Más adelante se verá que es posible conseguir invarianza ante traslaciones o escalamientos en el caso particular en el que la función f es una imagen de ciertas caracterı́sticas mediante la aplicación de normalizaciones. A continuación presentamos tres imágenes de las cuales extrajimos los MZ de orden A0 0 y A1 1 . Primero se puede ver la imagen original, luego una trasladada y finalmente una escalada (reducida).Se observa que los valores obtenidos por MZ son muy distintos entre sı́. Imagen A0 0 A1 1 4019,1 −68,07 + 122,47i 3832,2 −812,96 + 894,93i 1042,1 −33,878 − 30,685i Tabla 2.1: Cambio de los momentos complejos de Zernike frente a traslaciones y escalamientos de una imagen fija. 2.4. Estudios sobre los momentos de Zernike A continuación se realizan algunos estudios sobre los polinomios y momentos complejos de Zernike. El objetivo de los mismos es comprender el comportamiento que estos poseen frente a diversas imágenes para facilitar luego la introducción de nuevas métricas que aprovechen las caracterı́sticas aquı́ encontradas. 10 Descriptores basados en momentos de Zernike 2.4.1. Análisis de los polinomios complejos de Zernike Un primer paso en este trabajo consistió en analizar cuáles son las caracterı́sticas de los polinomios complejos de Zernike (Ec. 2.4) de diversos órdenes. Para este primer estudio definimos f tal que: ( 1, si x2 + y 2 ≤ 1 . f (x, y) = 0, sino Con esto observamos la ponderación particular de un Vnm dentro del cı́rculo unitario. Estos valores reflejan la influencia que tendrán los diversos valores de la función f a la hora de calcular los MZ de una imagen. Para poder observar y comprender el comportamiento de los MZ se realizaron una serie de pruebas: partiendo de la función f se calcularon los valores tomados, en fase y módulo, por distintos polinomios de Zernike, Vn m . A continuación, los resultados para los polinomios de Zernike V1 m ,V2 m y V7 m incluyendo todos los valores de m válidos. N: 1 | M: 1 N: 1 | M: 1 (a) |V11 | (b) arg(V11 ) Figura 2.1: Ponderación dada por el polinomio complejo de Zernike V11 dentro del cı́rculo unitario: (a) valores tomados por el módulo ; (b) valores tomados por la fase. N: 2 | M: 0 (a) |V20 | N: 2 | M: 2 N: 2 | M: 0 (b) |V22 | (c) arg(V20 ) N: 2 | M: 2 (d) arg(V22 ) Figura 2.2: Ponderación dada por los polinomios complejos de Zernike de la forma V2m , para los m válidos, dentro del cı́rculo unitario: (a)(b) valores tomados por los módulos ; (c)(d) valores tomados por las fases. Tras ver las imágenes (Figuras 2.1, 2.2 y 2.3) se observa la presencia de anillos concéntricos cuyo centro coincide con el del cı́rculo unitario. La cantidad de anillos y su ancho varı́a según el polinomio que se esté examinando, aunque siempre aumenta el ancho conforme nos aproximamos al centro del cı́rculo. A continuación se realiza un análisis exhaustivo de las caracterı́sticas de los polinomios. En un primer lugar, se presta especial atención a las imágenes que involucran los valores de los módulos (Figuras 2.1a, 2.2 (a)(b) y 2.3(a)(b)(e)(f)): 11 Descriptores basados en momentos de Zernike N: 7 | M: 1 (a) |V71 | N: 7 | M: 5 (e) |V75 | N: 7 | M: 3 N: 7 | M: 1 (b) |V73 | (c) arg(V71 ) N: 7 | M: 7 N: 7 | M: 5 (f) |V77 | (g) arg(V75 ) N: 7 | M: 3 (d) arg(V73 ) N: 7 | M: 7 (h) arg(V77 ) Figura 2.3: Ponderación dada por los polinomios complejos de Zernike de la forma V7m , para los m válidos, dentro del cı́rculo unitario: (a)(b)(e)(f) valores tomados por el módulo; (c)(d)(g)(h) valores tomados por la fase. n y m determinan la cantidad de anillos. En particular, la cantidad de anillos es igual a n−m + 1. 2 Los valores impares de n (n mod 2 = 1) no tienen en cuenta el centroide de la figura. Al crecer n los anillos se vuelven más finos. Al ser más delgados los MZ otorgarán mayor peso a ciertas porciones reducidas de la función que se encuentren caracterizando. En particular, estos momentos con n mayor serán fácilmente perturbados ante el ruido. A continuación nos centramos en las imágenes abocadas a ver el comportamiento de la fase (Figuras 2.1b, 2.2(c)(d) y 2.3(c)(d)(g)(h)) : Los distribución de los ciclos3 de la fase siempre es con sentido horario y comienza en un mismo lugar. La cantidad de ciclos de la fase en el cı́rculo unitario es igual a m. Esto se desprende de forma directa de la ecuación Vnm que determina la fase (exp(imθ)). 2.4.2. Comparación entre momentos de Zernike de diversas imágenes Por último compararemos visualmente los valores tomados por los MZ para diferentes imágenes. Para llevar adelante este proceso seleccionamos diferentes imágenes de una base de datos, los estudios incluı́dos aquı́ se realizaron sobre las figuras incluı́das en Fig.2.4. Tomamos la imagen 2.4c como la imagen de referencia, nuestra query. Desearı́amos que el resultado del proceso nos entregue como correspondencias válidas las tres imágenes 2.4a, 2.4b y 2.4d. Finalmente buscaremos que nuestro método no nos devuelva imágenes muy distintas a la query 2.4e. Para el desarrollo de las pruebas se utilizaron los MZ hasta el A30 30 . A cada MZ válido se le otorgó un número de orden respetando la siguiente forma : 3 Se considera un ciclo de fase cuando se toman los valores desde 0 a 2π. 12 Descriptores basados en momentos de Zernike (a) (b) (c) (d) (e) Figura 2.4: Imágenes referencia sobre las que se realizarán los estudios de esta sección. (a) query reducida; (b) query trasladada; (c) imagen referencia(query); (d) imagen con caracterı́sticas similares a la query; (e) imagen muy distinta a la query. Orden 0 1 2 3 4 ... 256 Momento complejo de Zernike A0 0 A1 0 A1 1 A2 0 A2 2 ... A30 30 Tabla 2.2: Número de orden asignado a los MZ válidos. Comparación de momentos complejos de Zernike por parte compleja y real A continuación se incluyen dos gráficos comparando los valores tomados por los MZ de diversos órdenes de las imágenes referencia (Fig. 2.4) , para su componente real y compleja. Intentamos observar a los MZ como puntos en el espacio R3 . Aunque sabemos que esto no es exactamente ası́, pues en el orden de los momentos se trata de números discretos y acotados. De todos modos lo que se busca en estos gráficos es encontrar similaridades entre las distribuciones de los diferentes valores de los MZ. De esta manera se intenta avanzar en el entendimiento del comportamiento de los MZ lo cual permitirá proponer métricas en los capı́tulos siguientes. Ambos gráficos utilizan como eje de comparación, imagen query, la imagen llamada normal (Fig. 2.4c) . El primer gráfico(Fig. 2.5) analiza dos imágenes iguales mencionadas anteriormente(Figs. 2.4a y 2.4b). Mientras que el segundo(Fig. 2.6) se avoca al análisis de otras dos imágenes una similar y otra completamente distinta(Figs. 2.4d y 2.4e). Durante el desarrollo del trabajo aprovecharemos varias conclusiones que se desprenden de estos gráficos. Algunas de las conclusiones que se extraen son: Imágenes similares poseen una distribución de MZ similar. En las gráficas se observa como las distancias intra-MZ se asemejan conforme las imágenes se parecen. Por ejemplo, la imagen 13 Descriptores basados en momentos de Zernike Figura 2.5: Se observa como los puntos de cada nube respetan una misma distribución, ejemplo de ello son los rodeados por una elipse. Los MZ pertenecen a tres figuras iguales(normal(Fig. 2.4c) , reducida(Fig. 2.4a) , trasladada(Fig. 2.4b) ) dibujados en el espacio num. orden×real ×complejo. Figura 2.6: Se observa como la distribución de los puntos se aleja según difieren las imágenes, por ejemplo existen tres puntos de una nube muy alejados del resto.MZ pertenecientes a tres figuras distintas(normal(Fig. 2.4c) , similar(Fig. 2.4d) , distinta(Fig. 2.4e) ) dibujados en el espacio num. orden × real × complejo. 14 Descriptores basados en momentos de Zernike diferente (Fig. 2.4e) tiene a sus puntos distribuı́dos de una manera completamente distinta al resto (Fig. 2.6) . Imágenes similares toman valores similares en sus MZ. Si bien esta propiedad es lógica, puede no ser necesariamente cierta. En los estudios se pudo observar como para imágenes parecidas las distancias inter-MZ se reducen. No sucede que dado dos imágenes similares una tiene los valores de MZ desplazados en un orden superior o inferior. Con esto queremos decir que no parece útil, a partir de estos estudios, reordenar los MZ para favorecer una comparación. Por el contrario, cada MZ deberı́a ser comparado con el recı́proco de la otra imagen. Comparación de momentos complejos de Zernike por parte fase y módulo Otra forma, complementaria a la anterior, de comparar los valores tomados por los MZ de diversos órdenes es comparando los valores tomados por su fase y módulo. Observamos ahora también a los MZ como puntos en el espacio R3 . Aunque esta vez no sólo contamos con la dimensión correspondiente a los ordenes de los MZ discreta y acotada, sino que también tenemos la limitación de la fase. La dimensión correspondiente a la fase tomara valores entre −π y π. Aún ası́ se cumple el objetivo de estos gráficos que es encontrar similaridades en el comportamiento de los diferentes valores de los MZ para diversas imágenes. El procedimiento fue idéntico al realizado con los gráficos anteriores(Figs. 2.5 y 2.6). Ambos gráficos utilizan como imagen query la imagen 2.4c. El primer gráfico(Fig. 2.7) analiza las imágenes iguales (Figs. 2.4a y 2.4b). Y el segundo(Fig. 2.8) se avoca al análisis de las otras dos imágenes (Figs. 2.4d y 2.4e). Figura 2.7: Se observa como MZ de igual orden respeta valores similares en fase y módulo. MZ en el espacio num. orden × módulo × f ase, pertenecientes a tres figuras iguales (Fig. 2.4c) (Fig. 2.4a) (Fig. 2.4b) . 15 Descriptores basados en momentos de Zernike Figura 2.8: Se observa como MZ de igual orden toman valores muy distintos en módulo principalmente.MZ en el espacio num. orden × módulo × f ase, pertenecientes a tres figuras distintas (Fig. 2.4c) (Fig. 2.4d) (Fig. 2.4e) . En este caso no se pudo sacar ninguna conclusión directa sobre el comportamiento de la fase. Finalmente se optó por realizar el mecanismo ya mencionado (ver sec. 2.3.1 ) . Sobre el comportamiento del módulo, sucede algo similar a lo que sucedı́a con la parte compleja y real en la sección anterior(ver sec. 2.4.2 ) . Es decir, las imágenes similares respetan una distancias intra-MZ similar mientras que la imagen diferente (Fig. 2.4e) tiene a sus puntos distribuı́dos de una manera completamente distinta al resto. 16 Descriptores basados en momentos de Zernike Registrado de las nubes de puntos Como una alternativa interesante tras los análisis anteriores surge la idea de realizar una registración entre los MZ de las diferentes imágenes como si de nubes de puntos se tratase. Una vez hecho esto, se podrı́a plantear una función de distancia acorde a las transformaciones necesarias para realizar la registración. Se procedió a realizar ciertos estudios sobre esta posibilidad utilizando el algoritmo ICP(iterative closest point) para registrar las nubes de puntos utilizando el criterio de mı́nimo error cuadrático en busca de la mejor aproximación[BM92]. El resultado de aplicar ICP a un modelo, m, y una muestra d es una matriz de rotación, R, y un vector de traslación, T de manera que Rd + T nos da la nube de puntos registrada. Sin embargo, encontrar la transformación que realiza la registración de puntos consume un tiempo de ejecución considerable y, aunque esto puede no ser determinante, en este trabajo intentamos encontrar una métrica eficaz y veloz. Además la registración no disminuye la complejidad del problema, sino que la traslada. Pues ahora deberemos calcular la distancia entre dos imágenes a partir de las matrices R y T , resultantes del ICP, además de expresar nuestros MZ como puntos en un espacio. En la figura 2.9, se muestra un resultado para una distancia definida de la forma X X d(R, T ) = R(i, i) × T (j). i j Donde R y T son las matrices resultantes de aplicar ICP y los MZ fueron considerados en el espacio num. orden × real × complejo (Fig. 2.5) . Entre los resultados se puede observar lo distanciado que aparecen las imágenes similares a la referencia(cı́rculo verde). La conjunción de estas causas, y el buen desempeño de las métricas presentadas a contnuación, nos motivaron a deshechar esta rama de la investigación quizás tempranamente. 17 Descriptores basados en momentos de Zernike Figura 2.9: Resultados arrojados tras realizar un ordenamiento utilizando un distancia sobre R y T . La imagen referencia (query) se encuentra resaltada con un cı́rculo verde y, con un cı́rculo rojo, se resaltó también la imagen igual más lejana en el ranking. Se devuelven 7 de las 16 imágenes con diferencias mı́nimas existentes en la base de datos. 18 Descriptores basados en momentos de Zernike 2.5. Extracción de los momentos complejos de Zernike de una imagen La extracción de los momentos complejos de Zernike de una imagen plantea ciertas dificultades. Algunas de ellas son : la discretización de las diferentes ecuaciones, la normalización de las imágenes, etc. El siguiente gráfico da una idea del proceso de extracción de los momentos complejos de Zernike de una imagen. Figura 2.10: Proceso de extracción de MZ La primer etapa forma parte de la interpretación de una imagen como una función discreta. La segunda y tercera son parte de un proceso de normalización para lograr la invarianza de los momentos de Zernike ante traslaciones y escalamientos (ver sec. 2.5.1 ) . Luego se extraen los momentos de Zernike, ahora discretizados. Finalmente, tras la extracción de los momentos se definirán los descripores de momentos complejos de Zernike para una imagen. Como novedad, incluı́mos en esta sección del trabajo una metodologı́a para la selección del ángulo utilizado en la corrección de fase. Se la explicará en detalle de forma conjunta con el resto de las etapas. 2.5.1. Centrado y escalamiento: invarianza ante traslaciones y escalamientos Para conseguir que los momentos de Zernike (Ec. 2.6) sean invariantes tanto a la traslación como la escala de imágenes se recurre a un preprocesamiento de la imagen antes de extraer sus momentos. Durante el mismo se realiza un centrado y un escalamiento de la imagen para que las mismas sean uniformes. La invarianza ante traslaciones se consigue trasladando la imagen de manera tal que el centroide de la/s figura/s coincida con el centro de la imagen. Para obtener esto alcanza con transformar la imagen en una cuyos momentos regulares (Ec. 2.2) m10 y m01 sean ambos iguales a 0 (cero). Recordemos f es la imagen en escala de grises y los momentos regulares, ahora discretos, m00 , m01 y m10 se corresponden con las siguientes ecuaciones: m00 = ∞ X ∞ X −∞ −∞ 19 f (x, y) (2.13) Descriptores basados en momentos de Zernike ∞ X ∞ X m01 = yf (x, y) (2.14) xf (x, y) (2.15) −∞ −∞ m10 = ∞ X ∞ X −∞ −∞ La transformación a aplicar es tal que cumple la siguiente ecuación: g 0 (x, y) = f (x + m01 m10 ,y + ) m00 m00 (2.16) La invarianza ante escalamientos se alcanza agrandando o achicando la imagen hasta llevar a su momento m00 a un número fijo preestablecido. Este número lo llamaremos β, acorde a la bibliografı́a, y esta intimamente ligado a la cantidad de pı́xeles que puede tener la imagen. Si q se trata de una imagen binaria es exactamente eso. Se puede mostrar que dada a = transformación correspondiente para conseguir m00 = β es: β m00 , la x y (2.17) g 0 (x, y) = f ( , ), a a de la combinación de (Ec. 2.16) y (Ec. 2.17) , se obtiene una única transformación a la cuál llamaremos normalización de la imagen. La misma es: g 0 (x, y) = f ( x m10 y m01 + , + ). a m00 a m00 (2.18) Luego de este proceso de normalización podemos decir que los momentos de Zernike son invariantes frente a traslaciones, escalamientos y rotaciones, dado un β adecuado. Algunos ejemplos de imágenes normalizadas: Imagen original Imagen normalizada Tabla 2.3: Imágenes normalizadas según la ecuación 2.18. 20 Descriptores basados en momentos de Zernike 2.5.2. Cálculo de los momentos complejos de Zernike Al abordar el problema de extraer los momentos complejos de Zernike aparecen dos inconvenientes. Consideramos una imagen como una función f : R2 → C, el origen esta en el centro de la imagen i. Además, consideraremos a fi : [−1, 1] × [−1, 1] → C. Donde, al tratarse de una función discreta el dominio de fi esta limitado por la definición de la imagen. Los momentos complejos de Zernike, ahora discretos, siguen la ecuación: Anm = n + 1 XX ∗ f (x, y)Vnm (x, y) π 2 2 (2.19) x +y ≤1 Limitaciones en el cálculo de los momentos de Zernike Existen algunas dificultades que surgen a la hora de calcular los MZ y no son propias de los mismos. La primera es consecuencia directa del método escogido para centrar la imagen, según lo mencionado anteriormente(ver sec. 2.5.1 ) . Un ejemplo claro donde esta elección perjudica el cálculo de momentos de una imagen es el incluido en la figura 2.11. La diferencia entre ambas imágenes es la recta que aparece como una extensión del cı́rculo en la imagen 2.11a. Esta recta es lo suficientemente larga como para desplazar el centroide de la imagen y cambiar el valor de los MZ, alejando las imágenes. Ası́, un punto débil en la adaptación actual es que la incorporación en la imagen de cualquier elemento que desplace el centroide de la imagen cambiará de manera radical el valor de los MZ de la misma. Qué tan similares deberı́an ser estas figuras es, en principio, una discusión subjetiva. (a) (b) Figura 2.11: Se observan dos figuras donde 2.11a es 2.11b con una recta agregada. Según se discutió en la introducción (ver sec. 1 ) nuestra mente tiende a agrupar estas imágenes, ¿deberı́an asemejarse sus MZ ? La segunda limitación surge tras el abandono de un formalismo continuo (integrales) por las aproximaciones discretas (sumatorias). Aunque estas sumatorias siempre van entre −1 y 1, la cantidad de términos podrı́a variar según la cantidad de pı́xeles de las imágenes. El aumento o disminución en la cantidad de términos de la sumatoria introduce variaciones en los valores devueltos por los MZ. Si bien, tras realizar el escalamiento (ver sec. 2.5.1 ) , imágenes similares deberı́an tomar tamaños(cantidades de pı́xeles) similares, esto puede no ser siempre cierto(Fig. 2.12) . Según mencionamos en la introducción nuestra mente tiende a completar las imágenes para conseguir lo que considera formas simples, si los momentos de estas imágenes difieren en deması́a no será trivial detectar estas semejanzas de manera computacional. A lo largo del trabajo nuestros métodos intentarán apalear parte de estas limitaciones. Sin embargo, muchas soluciones son parciales, por ejemplo si se acota el diámetro del cı́rculo unitario a una cantidad fija de pı́xeles, existirán imágenes cuya distribución fuerce a ciertas partes de la misma a escapar del área de análisis, lo cual tendrá como consecuencia que los MZ sean ciegos a esa parte de la imagen. 2.5.3. Corrección de fase de los momentos complejos de Zernike En busca de conseguir la invarianza ante rotaciones en la fase de los MZ es necesario aplicar una transformación a los MZ una vez extraı́dos, según se mencionó en la sección anterior 2.3.1. 21 Descriptores basados en momentos de Zernike (a) (b) Figura 2.12: Siguiendo lo que algunos denominan ley de cierre nuestro cerebro tiende a completar los espacios vacı́os de 2.12a para acercarlo a 2.12b, ¿deberı́an asemejarse sus MZ ? Aquı́ incluı́mos la misma (Ec. 2.11) : A0nm = Anm exp(−imθn0 ,1 ). (2.20) La corrección requiere se seleccione una fase, θn0 ,1 , perteneciente a un momento, An0 1 , y debe ser el mismo para todas las imágenes. De las posibles fases para realizar la corrección parece ser conveniente escoger aquella cuyo MZ es de menor orden(n0 lo más chico posible), según lo mencionado en un trabajo anterior [LLP09]. En la práctica, el primer MZ útil es A3 1 y es el sugerido en [LLP09]. Sin embargo, esta elección presenta un inconveniente, fruto de la posibilidad de que exp(−imθn0 ,1 ) tienda a 0 y las limitaciones propias de la aritmética finita tanto en la corrección, como en la búsquedas posteriores. Dependiendo de la plataforma sobre la que se desarrolle el sistema, los MZ de una imagen pueden tomar valores tales como: inf,-inf o NaN, al aplicarse la corrección por algún valor particular de fase. Esto representa un inconveniente pues muchas imágenes relevantes o incluso la misma query pueden resultar en un vector no numérico, imposibilitando su comparación. Por ello, no es adecuado fijar un MZ para realizar las correcciones. 2.5.4. Construcción de los descriptores de momentos de Zernike A continuación damos una definición para los descriptores de momentos complejos de Zernike(dMZ ). Sobre la misma versa el desarrollo presentado en el trabajo. Comencemos definiendo la función #dmz tal que dado un n nos dice cantidad de MZ válidos de orden menor o igual a An n . Definición 3. Sea #dmz : N0 → N una función tal que #dmz(0) = 1 #dmz(n) n = b c + 1 + #dmz(n − 1). 2 (2.21) (2.22) Lema 3. Dado n ∈ N0 , #dmz(n) es igual a la cantidad de MZ válidos de orden menor o igual a An n . Demostración. Demostraremos esta propiedad por inducción sobre n. Supongamos n = 0, Sabemos los polinomios de Zernike válidos con n ≤ 0 son los Vnm tal que 0 ≤ n, | m | ≤ n, n− | m | es par por definición (Def. 1 pág. 7) . Entonces existe un único Vn m tal que se cumplen las condiciones dadas y es V0 0 . Por tanto existe un único MZ y es A0 0 . Además sabemos que #dmz(0) = 1 por definición. Entonces, vale la igualdad para n = 0. 22 Descriptores basados en momentos de Zernike Valiendo la propiedad para n queremos ver que se cumpla para n + 1, Por hipótesis inductiva, sabemos que #dmz(n) es la cantidad de MZ tal que el orden es menor o igual a An n . Para cumplir la propiedad, debemos sumar la cantidad de MZ válidos que son de la forma An+1 m con m tal que 0 ≤ n + 1, | m | ≤ n + 1, n + 1− | m | es par. Entonces: Si n+1 es par, m puede tomar todos los valores pares entre 0 y el mismo n, incluyéndolos. Son entonces n+1 2 +1 posibles valores. O como n es par, esto es equivalente a : b n+1 2 c+1. Si n + 1 es impar, m puede tomar todos los valores impares entre 1 y el mismo n, incluyéndolos a ambos. Entonces b n+1 2 c + 1 posibles valores. O lo que es equivalente, la cantidad de MZ menores o iguales a n + 1 es equivalente a b n+1 2 c + 1 + #dmz(n + 1 − 1), como querı́amos demostrar. Extendemos a la función #dmz, para que ahora nos devuelva la cantidad de MZ de orden menor o igual a un n y m dados. Definición 4. Sea #dmz : N0 × N0 → N una función tal que: #dmz(n, m) = #dmz(n) − n−m 2 (2.23) donde n y m cumplen con 0 ≤ n, | m | ≤ n, n− | m | es par (Def. 1 pág. 7) .4 A continuación presentamos los descriptores de momentos complejos de Zernike(dMZ ). Definición 5. Definimos un descriptor de momentos complejos de Zernike(dMZ) para una imagen −→ I , tal que I, como un vector ZN −→ I ZN ∈ C#dmz(N ) (∀n, m ∈ N0 , n ≤ N, | m | ≤ n, n− | m | −→ I mod 2 = 0) ZN (#dmz(n, m)) = AIn m Finalmente en la sección anterior se presentó una problemática (ver sec. 2.5.3 ) , ésta versó sobre la imposibilidad de utilizar cualquier MZ para realizar la corrección de fase planteada en [LLP09]. Como solución al dilema planteado por la indefinición de algunos dMZ tras la corrección de fase, optamos por conservar por imagen una colección de descriptores de momentos de Zernike. Los dMZ que forman parte de la colección de descriptores de una imagen se distribuyen de la siguiente forma: −→ I Se conserva el ZN original, sin realizar ninguna corrección. Además, por cada AIn An 1 . 1 −→ I ∈ ZN , se conserva una copia realizando la corrección de fase por Esto nos da un total de d N2 e + 1 descriptores por imagen. Por ejemplo supongamos N = 30, el −→ I descriptor Z30 tiene 13 MZ que cumplen lo pedido para realizar realizar la corrección por fase, son de la forma An 1 . Por tanto, en este caso se conservarán 14 dMZ por imagen: uno sin corregir(para utilizar si el resto cuenta con valores indefinidos) y el resto, corregidos cada uno por una de las fases posibles. 4 Es posible escribir #dmz(n, m) de manera equivalente como #dmz(n, m) = eligió la representación recursiva por parecer más intuitiva. 23 n(n+1) −d n e 2 2 2 +n+1− n−m . 2 Se Descriptores basados en momentos de Zernike Si bien conservamos una colección de dMZ por imagen, las comparaciones se harán escogiendo un único dMZ por imagen. El dMZ a utilizar por imagen(o, de manera equivalente, el MZ por el cual se realizará la corrección de fase) será aquél que cumpla las siguientes condiciones para la imagen referencia de búsqueda: 1. No tome valores indefinidos. 2. Haya sido corregido por el An 1 de menor n válido. 3. Si no existe fase para la cual no se indefina ningún valor, utilizaremos el dMZ sin corregir. 4. (opcional) Arroje resultados de interés o una cantidad de resultados mı́nima.5 De esta forma determinamos el descriptor a utilizar por las imágenes, una vez escogida la imagen referencia. Por ejemplo, si el dMZ de nuestra imagen de referencia se indefine cuando realizamos la corrección de fase por A3 1 y no sucede esto cuando corregidos con A5 1 . Entonces utilizaremos los dMZ corregidos con A5 1 a la hora de comparar entre la imagen referencia y el resto. 5 Fue ideado para sistemas que interactúan con operarios especializados. No se utilizó en los casos de pruebas. 24 Capı́tulo 3 Métricas propuestas Perceptualmente nos es muy simple decidir si una imagen es igual a otra. Incluso si una imagen es levemente distinta (por ej. : tiene los bordes redondeados) aún coincidimos en que es casi igual. Sin embargo, cuando las imágenes dejan de ser tan parecidas nos suele ser imposible aunar criterios (Fig. 3.1) . Por esto nos es muy difı́cil caracterizar el parecido de las imágenes de un modo matemático. Recurrimos, entonces, a diversas aproximaciones que nos permitan obtener resultados que se ajusten a nuestra percepción de parecidos. (a) (b) (c) Figura 3.1: No es sencillo distinguir grados de similaridad entre imágenes, ¿ Cuál de las dos imágenes es “más parecida” a la query (a)? En la literatura existen dos tipos de metodologı́as propuestas para hallar las imágenes similares a una dada utilizando dMZ : las basadas en la aplicación de una distancia a la reconstrucción de las imágenes [KH90] y aquellas que proponen directamente una distancia sobre los dMZ [LLP09, RLB09]. El proceso de reconstrucción de una imagen a partir de sus MZ es un proceso costoso que introduce aún más errores numéricos, en consecuencia las soluciones presentadas a lo largo de este trabajo tienen como objetivo encontrar una medida de distancia entre los MZ y no sobre la reconstrucción de una imagen a partir de los mismos. A lo largo de este capı́tulo buscamos definir una distancia, d : CN × CN → R, tal que al comparar dMZ de dos imágenes distintas se cumpla que : Si se trata de imágenes perceptualmente iguales sean cercanas para d (cercana a 0). Si, por el contrario, se trata de imágenes muy diferentes sean lejanas para d. Finalmente, las imágenes intermedias deberı́an seguir un ranking perceptualmente coherente. Por tanto comenzamos presentando un conjunto de métricas diferentes para luego realizar comparaciones entre ellas. Nos vamos a valer de una base de datos de 8000 imágenes, subconjunto de una base de datos real de elementos figurativos de marcas(logos). Para cada una de estas imágenes se generaron sus dMZ según lo dicho en el capı́tulo anterior (ver sec. 2.5.4 ) . 25 Métricas propuestas 3.1. Métrica de referencia Nos resulta interesante contar con una métrica que nos sirva de referencia para comparar nuestros resultados. Si bien existen varias métricas en la actualidad sobre los MZ [KH90, LLP09, RLB09], nos compararemos con una de las métricas con mejores resultados y más recientes en el área, para tener resultados equiparables con el estado del arte actual. La métrica de referencia es la propuesta en un trabajo de Shan li et al. [LLP09]. Además de ser reciente(Abril 2009), su metodologı́a es similar a las de las métricas propuestas por nosotros y posee una implementación sencilla. La medida de similaridad propuesta en [LLP09] se basa en comparar los dMZ por fase y módulo de manera separada para luego alcanzar un número final, ponderando estos dos resultados. Distancia angular Con la siguiente definición se obtiene un número representativo de la distancia angular entre descriptores de MZ. − → Definición 6. Definimos la distancia angular (Dφ ) entre dos descriptores de MZ, − x→ N y yN , de la siguiente forma: − → Primero se define dφ 1 como el vector de diferencias angulares entre componentes, tal que, −→ − → φ − → (xφN (i) − yN (i)) dφ (i) = π mod π ∀i ≤ #dmz(N ) −→ − → φ Donde xφN (i) es la componente angular del número complejo − x→ N (i) y lo mismo para yN (i). Definimos la distancia angular total, Dφ , como : v u#dmz(N ) u X − → 1 t Dφ = dφ 2 (i) (3.1) #dmz(N ) i=1 Distancia de módulos A continuación definimos la distancia entre módulos según [LLP09]. → − Definición 7. Para clarificar la notación, primero se define dρ como el vector de diferencias entre − → x→ componentes de dos descriptores de MZ, − N y yN , tal que, → − dρ (i) = −→ − → ρ xρN (i) − yN (i) −→ − → ρ ρ máx(xN (i), yN (i)) ∀i ≤ #dmz(N ) −→ − → ρ Donde xρN (i) es el módulo del número complejo − x→ N (i), lo mismo corre para yN (i). Se define, entonces, la distancia total entre módulos (Dρ ) como : v u#dmz(N ) u X → −2 1 t Dρ = dρ (i) #dmz(N ) i=1 1 toma valores entre [0,1] 26 (3.2) Métricas propuestas Distancia total Finalmente dados dos descriptores de MZ la distancia propuesta en el trabajo [LLP09] se define de la siguiente manera. − → Definición 8. Definimos la distancia de Shan Li (Dα ) entre dos descriptores de MZ, − x→ N y yN , como una suma ponderada de las funciones antedichas (Ec. 3.1) (Ec. 3.2) : Dα = αDρ + (α − 1)Dφ (3.3) Donde α es un parámetro que debe ser definido posteriormente. En [LLP09] se sugiere utilizar α = 21 , quedando la distancia de Shan Li expresada como, Dρ + Dφ 2 A lo largo del trabajo utilizamos esta última versión de la distancia de Shan Li et al.. D 12 = 3.2. (3.4) Primera aproximación Definimos a los descriptores de MZ (dMZ ) como vectores complejos (ver sec. 2.5.4 ) . Además, pudimos ver que imágenes similares respetan una distribución similar en los valores de sus MZ (ver sec. 2.4.2 ) . Entonces, intentando capturar esta similaridad debemos prestar atención a dos factores: la cercanı́a de los valores de cada dMZ (distancias intraMZ ) y las distancias relativas entre los dMZ (distancias intraMZ ). − → Imaginemos que contamos con dMZ de la forma Z1i para una serie de imágenes, ası́ cada descriptor tendrá únicamente 2 valores2 y será un segmento sobre el plano (Fig. 3.2) . La distancia propuesta debe obtener los segmentos que más se asemejan a uno dado, prestando atención a la distancia intra e inter dMZ. Para la primera, mirando el ejemplo de la figura (Fig. 3.2) , surge la idea de utilizar la norma 2 del vector. Para la segunda, se puede pensar en alguna función de distancia entre vectores complejos. Parece acertada la idea intuitiva de que dos segmentos cuyos módulos difieren pertenecen a imágenes distintas y, a su vez, dos imágenes cuyos valores de MZ son muy distintos también deberı́an ser diferentes. Siguiendo esta lı́nea se propuso utilizar dos funciones para la comparación de descriptores de MZ, las mismas son : dk·k : Dados descriptores de MZ u y v, se define la diferencia entre sus normas como, dk·k (u, v) = |kuk − kvk| (3.5) Donde k· k es la norma euclidiana de los vectores (ver apéndice A pág. 75) . deucl : Dados dos descriptores de MZ, u y v, se define la distancia euclidiana como (ver apéndice A pág. 75) , deucl (u, v) = ku − vk (3.6) Tras ésto surge una serie de incógnitas : ¿ Es posible prescindir de alguna de dk·k o deucl ? La respuesta a esta pregunta surge de analizar los resultados obtenidos tras la ejecución de algunas consultas sencillas sobre la base de datos de dMZ (ver sec. 3 ) . En particular, mostramos dos consultas que tomaron como query la misma imagen(Fig. 3.3) resaltada con 2 #dmz(1) =2 27 Métricas propuestas (a) Figura 3.2: Representación de descriptores de momentos de Zernike de dos dimensiones como segmentos en el plano. Se diferencia entre los dMZ pertenecientes a imágenes potencialmente similares y aquellos pertenecientes a imágenes distintas. un cı́rculo verde en las gráficas. La primera de estas dos consultas busco a las 100 imágenes más próximas a la query según dk·k (Fig. 3.4) . Mientras que la segunda hizo lo mismo pero, esta vez, comparando con deucl (Fig. 3.5) . En ambas consultas los resultados arrojan a la imagen query como la más cercana a sı́ misma, primer posición. Sin embargo muchas otras imágenes, casi idénticas, han quedado demasiado lejos, se resaltó con un cı́rculo rojo a la más lejana en cada caso. Estas imágenes no son necesariamente las mismas en ambos casos, sin embargo deberı́an quedar siempre en posiciones más bajas, cercanas a la query. Además hay casos en los que ni siquiera se incluyen todas las imágenes “iguales” a la query entre los resultados. Figura 3.3: Utilizaremos esta imagen a lo largo de la sección como imagen referencia en las diferentes búsquedas(query). Notar el parecido con el logo de una gaseosa lı́der del mercado. Por tanto, parece que no es posible trabajar únicamente con una de estas funciones, al menos no en estas condiciones. ¿ Es posible sumar estas métricas para conseguir una tercera como hace Shan Li et al.(Ec. 3.3) ? Lo que debemos constatar para responder este interrogante es si sirve plantear una función de distancia sobre los dMZ que sea de la forma: Dα = α dk·k + (α − 1) deucl α 6= 0 ∧ α 6= 1 (3.7) Con dk·k , deucl ∈ [0, 1]. En busca de comprobar el buen desenvolvimiento de esta posibilidad realizamos varias pruebas con diferentes valores de α, utilizando una función en 28 Métricas propuestas Figura 3.4: 100 primeras imágenes tras ordenarlas según la diferencia de la norma euclidiana(dk·k ). Se puede observar la imagen referencia resaltada con un cı́rculo verde(Fig. 3.3) . Con un cı́rculo rojo se resaltó la imagen igual más lejana. Aparecen 11 de las 16 imágenes con diferencias mı́nimas respecto de la query en la base de datos. 29 Métricas propuestas Figura 3.5: Ranking obtenido ordenando las imágenes por la norma de la diferencia(deucl ).Se resaltó la la imagen referencia resaltada con un cı́rculo verde(Fig. 3.3) . Mientras que la imagen igual más alejada en el ranking aparece marcada con un cı́rculo rojo. En contraposición con la figura 3.4, aquı́ aparecen las 16 imágenes iguales a la referencia. 30 Métricas propuestas (a) (b) (c) Figura 3.6: Representación de los dMZ de dos dimensiones como segmentos en el plano. Se filtran sacando los dMZ más lejanos a la query, segmento rojo, primero por dk·k y luego por deucl . (a) Universo inicial de dMZ como segmentos en el plano; (b) dMZ sin aquellos que difieren en dk·k ; (c) dMZ resultantes de extraer los más lejanos según deucl . MATLAB(ver apéndice B.1.2 pág. 76) similar a la utilizada para generar los gráficos de las figuras 3.4 y 3.5. Lamentablemente no se pudo conseguir resultados que superen a los conseguidos anteriormente, incluso hubo muy pocos casos en los que se obtuvo entre las primeras 100 imágenes todas las iguales a la query. ¿ Existe alguna combinación algorı́tmica que nos permita conseguir buenos resultados? Esta es la lı́nea que sigue gran parte del trabajo, a continuación detallaremos lo que será un primer intento de proponer una métrica de este modo. La idea por la que sugerimos estas métricas fue la noción de distancias inter e intra MZ. Deseamos obtener aquellas imágenes cuyos MZ tengan una distribución similar a los de la query y, además, sean cercanos en el espacio. Entonces que sucede si realizamos un algoritmo en dos pasos de la siguiente forma : 1. Tomamos el β % de la imágenes en la base de datos cuyos descriptores de MZ son los más cercanos en función de dk·k . A modo ilustrativo, en la figura 3.6b podemos ver que sucederı́a de aplicar este paso a la figura de los segmentos (Fig. 3.6a) . 2. Luego, sobre ese β %, nos quedamos con las n imágenes más cercanas según deucl . En la figura 3.6c se ve que sucede al aplicar este paso a la figura anterior (Fig. 3.6b) . Este es el primer método propuesto, el cual tiene su reflejo en una función de MATLAB (ver apéndice B.1.2 pág. 77) . Podemos ver los resultados entregados dada una query (Fig. 3.3) para la base de datos con β = 10 y n = 100 (Fig. 3.7) . Como se puede apreciar en la figura, de las 16 imágenes casi idénticas a la query que figuran en la base de datos, podemos encontrar a la más lejana en la posición 28 (resaltada con un cı́rculo rojo). Esto se contrapone con los resultados anteriores, en los que no aparecı́an todas estas imágenes, rondaban posiciones mucho más altas y/o no se agrupaban. Un aspecto computacionalmente interesante de este método es la posibilidad de reducir el espacio de imágenes con que se trabaja de un modo rápido(orden de complejidad sublineal o lineal). 31 Métricas propuestas Figura 3.7: Resultados arrojados tras ordenar por dk·k y tomar el 10 % más cercano a la query (Fig. 3.3) . Luego se conformó el ranking final ordenando este 10 % por deucl . Se indica la query con un cı́rculo verde y, con un cı́rculo rojo, se resaltó la imagen igual más lejana en el ranking. Las 16 imágenes con diferencias mı́nima estan ahora más cerca de la query que en resultados anteriores, por ejemplo al utilizar únicamente deucl (Fig. 3.5) . 32 Métricas propuestas Esto se debe a que la norma euclidiana de un dMZ puede ser precalculada pues no depende de ningún factor ajeno al mismo. Entonces manteniendo ordenandos los dMZ por su norma euclidiana es muy sencillo obtener un n % de la base de datos según su cercanı́a con la query. Es decir, realizar el paso correspondiente a dk·k con un orden de complejidad sublineal respecto a la cantidad de dMZ. 33 Métricas propuestas 3.3. Segunda aproximación Utilizar los MZ de una imagen de orden alto, por ejemplo A20 20 , trae consigo ciertas dificultades. En un primer lugar existe una complejidad computacional, no es trivial calcular estos momentos con una precisión adecuada. Sin embargo es posible sortear las dificultades referentes a cálculos, existen diferentes trabajos al respecto [AEBN05]. La segunda dificultad, es fruto de la definición misma de los MZ. Hemos visto, como una propiedad, a medida que avanza el orden de los MZ estos se ven cada vez más afectados por los detalles de las imágenes y como consecuencia, por el posible ruido que pueda contener una imagen (ver sec. 2.4.1 ) . Para atacar este problema se incorpora a la métrica anterior(ver sec. 3.2 ) un nuevo proceso que busca balancear la importancia de los momentos según su orden. 3.3.1. Ponderación de los momentos complejos de Zernike Según vimos es posible observar como a medida que aumenta el orden de los MZ estos son más afectados por el ruido en una imagen (ver sec. 2.4.1 ) [KH90]. Y si bien los momentos de mayor orden son importantes, uno quisiera restarle importancia frente a los momentos de orden inferior, aquellos que toman en cuenta de manera general a la imagen. Recordemos la distribución que tienen los MZ, An m , que conforman nuestros dMZ : ∗ 0 1 2 3 .. . 0 A0 0 − A2 0 − .. . n An 0 1 − A1 1 − A3 1 .. . − 2 − − A2 2 − .. . An 2 3 − − − A3 3 .. . − ··· ··· ··· ··· ··· .. . m − − − − .. . · · · An n Podemos observar como los momentos válidos se encuentran por debajo de la diagonal, incluyéndola. Además, de secciones anteriores(ver sec. 2.4.1 ) , conocemos los siguientes factores : n− | m | es par , | m | ≤ n. La cantidad de anillos es igual a n−m 2 +1. Los anillos determinan qué puntos serán analizados y a medida que sumamos anillos nos concentramos únicamente en ciertas franjas del cı́rculo unitario. La cantidad de ciclos de la fase en el cı́rculo unitario es igual a m. Dado un n fijo, parece ser m quien determina cuán afectado por el ruido se verá un momento particular. Como conclusión intentamos conseguir una ponderación de los MZ proponiendo un nuevo proceso de adaptación para los mismos. Este consiste en aplicar una función heurı́stica que asigna un peso a los módulos conforme el orden del momento, prestando especial atención a m. La adaptación propuesta es la siguiente : A0nm = Anm exp(−#dmz(n, m)m| sin(θn0 1 )|) (3.8) Donde: #dmz es (Ec. 2.23) : #dmz(n, m) = n(n+1) 2 − d n2 e n−m +n+1− 2 2 #dmz también es equivalente a listar los momentos útiles ordenados primero por n y luego por m ({A0 0 , A1 1 , A2 0 , A2 2 , · · · , An n }) y devolver la posición que ocupan en esta lista ordenada. 34 Métricas propuestas θ es el ángulo utilizado para la corrección de fases (ver sec. 2.5.3 ) . 3.3.2. Método propuesto Es posible incorporar la ponderación al momento de calcular el descriptor de MZ de una imagen particular. Por tanto, podemos decir que la métrica sigue siendo aquella propuesta en la sección anterior 3.2. Sin embargo, esta vez, será alimentada con descriptores de MZ a los cuales se los ha calculado utilizando esta nueva adaptación. Considerando estos cambios el proceso de extracción de MZ (Fig. 2.10) se extiende, tomando la siguiente forma : Figura 3.8: Proceso de extracción de MZ con la ponderación propuesta. Para evaluar los resultados de esta mejora al proceso de búsqueda se implementaron una serie de funciones de MATLAB (ver apéndice B.1.2 pág. 77) . Gracias a ello, podemos ver los resultados entregados dada una query (Fig. 3.3) para la misma base de datos de 8000 imágenes, también con β = 10 y n = 100. El resultado (Fig. 3.9) presenta algunas caracterı́sticas que lo destacan por sobre los resultados anteriores (ver Figuras 3.7, 3.4 y 3.5). A diferencia de los casos anteriores, se puede apreciar en la figura : Las 16 imágenes casi idénticas a la query, que figuran en la base de datos, se encuentran agrupadas en las primeras posiciones. De hecho, podemos encontrar la más lejana en la posición 16 (resaltada con un cı́rculo rojo). Entre las 100 imágenes más parecidas según la métrica se puede encontrar imágenes consideradas similares(no iguales). Se indica una dentro de un cuadrado de fondo celeste. Podemos concluir que darle un más peso a los momentos de orden menor ofrece una mayor invarianza ante cambios perceptualmente sútiles de las imágenes. 35 Métricas propuestas Figura 3.9: Partiendo de dMZ ponderados según se propuso en la sección 3.3.1, se ordenaron los mismos por dk·k y se tomó el 10 % más cercano a la query (Fig. 3.3) . Se continuó formando un ranking ordenando el 10 % extraı́do por deucl . Se procedió a indicar: la query con un cı́rculo verde, con un cı́rculo rojo la imagen igual más lejana y dentro de un cuadrado celeste una de las imágenes similares. 36 Métricas propuestas 3.4. Tercer aproximación −→ i Recordemos hemos definido a nuestros descriptores de MZ como puntos en el espacio ZN ∈ − → #dmz(N ) i 1 C (Def. 5) . Tomemos los dMZ por imagen tal que ZN ∈ C , tendremos entonces puntos en el plano complejo. Al aplicar los métodos de las aproximaciones anteriores, estamos descartando aquellos puntos lejanos primero por dk·k (franja verde) y luego por deucl (cı́rculo rojo)(Fig. 3.10) . Sin embargo, es válido preguntarse si es correcto suponer, cuando las dimensiones crecen, la noción de cercanı́a sigue valiendo. Además el crecimiento en las dimensiones trae como consecuencia un aumento considerable en la cantidad de cálculos. Figura 3.10: Representación de los dMZ en una dimensión en el plano. Se diferencia entre los dMZ pertenecientes a imágenes potencialmente similares(puntos verdes) y aquellos pertenecientes a imágenes distintas(puntos negros). Se indica el resultado de filtrar los dMZ por dk·k (cı́rculo verde) y luego por deucl (cı́rculo rojo). Por ello, es válido preguntarse si todos los MZ tienen la misma relevancia a la hora de comparar descriptores de Zernike. En la sección anterior (ver sec. 3.3 ) establecemos que las variaciones en los MZ de mayor orden son menos importantes. Sin embargo esta aproximación no nos permite reducir las dimensiones de nuestro problema. Tampoco responde a la pregunta sobre si existe o no interdependencia entre los MZ, es decir, si dos MZ estan correlacionados de algún modo. En esta aproximación intentaremos eliminar la correlación lineal entre los MZ aplicando una técnica muy utilizada en diferentes áreas, conocida como descorrelación de dimensiones (whitening process) [Fuk90]. 3.4.1. Análisis de componentes principales (PCA) Se trata de una técnica introducida por Kenneth Pearson [Pea01] en busca de describir la dispersión de una nube de puntos proyectándola en un subespacio elegido cuidadosamente. Este subespacio captura la máxima varianza de nuestras muestras en cada una de sus dimensiones, descorrelacionándolas linealmente. El proceso de whitening es un proceso habitual para conseguir muestras distribuı́das de forma normal, logrando que la matriz de covarianza de las muestras sea la matriz identidad. Dado un vector, v, la transformación queda dada por la siguiente ecuación: ṽ = (ΦΛ −1 2 )T v (3.9) Donde se cumple, dada Σ matriz de covarianza de n × n: Φ es una matriz formada por los autovectores [φ1 ...φn ] de Σ. Λ es una matriz de ceros con los autovalores λ1 · · · λn en la diagonal. Existen resultados que generalizan PCA para trabajar con números complejos(CPCA[Hor84]), en los cuales se muestra que no es necesario ningún cambio al formulamiento original. 37 Métricas propuestas Cálculo de la matriz de covarianza (Σ) Parte fundamental de PCA es aproximar Σ de la manera más precisa posible. Dado un conjunto de muestras γ0 , γ2 , · · · , γn (descriptores de MZ ) definimos la distancia, φi , al descriptor promedio como φi = γi − ψ (3.10) Pn 1 donde ψ es la muestra promedio tal que ψ = n i=0 γi . Entonces se utiliza como matriz de covarianza la resultante de [TP91]: n Σ= 3.4.2. 1X φi φTi n i=0 (3.11) Distancia de Mahalanobis La distancia de Mahalanobis se presenta como una opción para comparar dos muestras teniendo en cuenta la correlación entre las dimensiones de las mismas. Definición 9. Dadas dos variables aleatorias con misma distribución, u y v, y con matriz de covarianza Σ se define la distancia de Mahalanobis, q (3.12) dM (u, v) = (u − v)T Σ−1 (u − v) Veamos que, tras realizar PCA, la distancia euclidiana (ver sec. 3.3 ) , deucl , es similar a la distancia de Mahalanobis con la matriz de covarianza Σ perteneciente a los dMZ sin aplicar PCA. − → Lema 4. Dados dos dMZ, − x→ N y yN , queremos mostrar que : q ((ΦΛ −1 2 )T − x→ N − (ΦΛ −1 2 T )T − y→ N ) ((ΦΛ −1 2 )T − x→ N − (ΦΛ −1 2 )T − y→ N) = q − → T −1 (− − → (− x→ x→ N − yN ) Σ N − yN ) Demostración. Partiremos de la distancia euclidiana para llegar al otro lado de la igualdad planteada. q −1 −1 −1 −1 →T → → T− T− T− x→ (3.13) ((ΦΛ 2 )T − N − (ΦΛ 2 ) yN ) ((ΦΛ 2 ) xN − (ΦΛ 2 ) yN ) Miremos ((ΦΛ buir T : −1 2 )T − x→ N − (ΦΛ ((ΦΛ −1 2 −1 2 T )T − y→ N ) , podemos sacar factor común (ΦΛ )T − x→ N − (ΦΛ −1 2 T )T − y→ N ) = ((ΦΛ −1 2 (ΦΛ −1 2 −1 2 )T − x→ N − (ΦΛ −1 2 )T − y→ N = (ΦΛ −1 2 )T y luego distri- − → T )T (− x→ N − yN )) −1 − → T −→ − →T )T (− x→ N − yN )) = (xN − yN ) ΦΛ 2 −1 −1 → T− Ahora podemos realizar algo similar con ((ΦΛ 2 )T − x→ N − (ΦΛ 2 ) yN ) ((ΦΛ −1 2 − → )T (− x→ N − yN ) (3.14) (3.15) Volviendo a la ecuación original(Ec. 3.13) , utilizando los resultados anteriores (Ec. 3.14) (Ec. 3.15) : q −1 −T (− x→ − − y→)T ΦΛ 2 Λ 2 ΦT (− x→ − − y→) N N N N Por otro lado sabemos que la matriz Φ es ortogonal y Λ es diagonal, de lo cual se deduce −T −1 ΦT = Φ−1 y Λ 2 = Λ 2 : q −1 −1 − →T − → −1 (− (− x→ x→ N − yN ) ΦΛ 2 Λ 2 Φ N − yN ) 38 Métricas propuestas Sabemos que Λ −1 2 Λ −1 2 es equivalente a Λ−1 : q − →T − → −1 Φ−1 (− (− x→ x→ N − yN ) ΦΛ N − yN ) (3.16) Por otro lado, la definición de Φ y Λ asegura que Σ = ΦΛΦ−1 , o lo que es equivalente : Σ−1 = (ΦΛΦ−1 )−1 = (Φ−1 )−1 Λ−1 Φ−1 = ΦΛ−1 Φ−1 De este resultado y el anterior (Ec. 3.16) obtenemos : q q − →T − → − → T −→ − → −1 Φ−1 (− (− x→ x→ (− x→ N − yN ) ΦΛ N − yN ) = N − yN ) Σ(xN − yN ) En este nuevo espacio la distancia euclidiana será equivalente a la distancia de Mahalanobis en el anterior, como querı́amos demostrar. A continuación, extendemos la distancia de Mahalanobis para utilizarla con números complejos. Definición 10. Se define la distancia de Mahalanobis para números complejos como : q ∗ dM (u, v) = ((u − v) )T Σ−1 (u − v) Además es sabido que si reemplazamos Σ por una matriz diagonal obtenemos, s X (ui − vi )∗ (ui − vi ) dM (u, v) = λi i (3.17) Donde λi es el elemento de la columna i sobre la diagonal (Σ(i, i) = λi ). Si en el lugar de Σ colocamos la matriz con el desvı́o standard de cada una de las variables aleatorias(dimensiones de nuestro espacio) obtenemos una función de distancia normalizada por la varianza de cada dimensión. Parece adecuado obtener valores ponderados según la varianza de cada dimensión, pues en principio no todas varı́an igual y un desplazamiento en una de ellas puede no significar un cambio perceptual en las imágenes originales. Además contamos con esta matriz diagonal, pues fue calculada cuando se realizó el proceso de PCA, Λ. 3.4.3. Método propuesto Presentamos en esta sección una extensión al método anterior incorporando PCA. Parece acertado incluir el proceso de PCA luego de la realización de la ponderación de la sección anterior 3.3 pues nuestra finalidad es conseguir una reducción en las dimensiones a utilizar. Como se puede observar en la imagen(Fig. 3.11) luego de realizar la corrección de fase según lo propuesto por Shan Li et al. aparecen n descriptores de MZ por cada imagen. Por tanto se necesitarán calcular n matrices de covarianza, algo no trivial si tenemos en cuenta que contamos con una base de datos que supera las 8000 imágenes. Se incorporaron en MATLAB una serie de funciones que integran las mejoras propuestas en esta sección, PCA y la distancia de Mahalanobis (ver apéndice B.1.2 pág. 77) . Se incluye un resultado entregado dada una query (Fig. 3.3) para la misma base de datos de 8000 imágenes, también con β = 10 y n = 100. El resultado se consiguió utilizando las dimensiones tales que sus autovalores contengan un valor relativo máyor al 0,01 % comparado con el resto, alrededor de 208 dimensiones contra las 256 que se utilizaron anteriormente. Además se eliminó del proceso la etapa de comparación por dk·k . Todo esto colabora a que el método sea aún más veloz que los anteriores y conserva las caracterı́sticas de los resultados anteriores(Fig. 3.9) . Se puede apreciar en la figura (Fig. 3.12) : Las 16 imágenes iguales a la query ocupan las primeras 16 posiciones, la más lejana esta en la posición 16 (resaltada con un cı́rculo rojo). 39 Métricas propuestas Imagen Centrado Escalamiento X1 Cálculo MZ . . Corrección fase Ponderación PCA X1 X1 . . . . X1 X1 . . . . X1 X1 . . . . Figura 3.11: Proceso de extracción de MZ + PCA. 40 . . . X1 . . . . . X1 . . . . . X1 . . Métricas propuestas Imágenes consideradas similares(no iguales), una resaltada por un cuadrado celeste, entre las 100 imágenes devueltas por el método. 41 Métricas propuestas Figura 3.12: Luego de aplicar PCA sobre los dMZ ponderados, se ordenaron únicamente por la distancia euclideana normalizada por la desviación standard de cada dimensión(dM ) y se sustrajeron las 100 imágenes más cercanas a la query (Fig. 3.3) . Al igual que en resultados anteriores (Fig. 3.9) , se conserva la cercanı́a de las imágenes iguales a la query y, de forma complementaria, se acercan aún más algunas imágenes similares. Se procedió a indicar: la query con un cı́rculo verde, con un cı́rculo rojo la imagen igual más lejana y dentro de un cuadrado celeste una de las imágenes similares. 42 Capı́tulo 4 Estudios sobre los algoritmos de clasificación propuestos En el capı́tulo 3, presentamos tres métodos diferentes para la búsqueda de imágenes similares basados en descriptores de momentos complejos de Zernike(dMZ ). En cada uno de estos métodos se presenta una posible variante para los dMZ y se sugiere una función distancia a aplicar sobre los mismos. Las métricas presentadas se pueden resumir como: dshanli , propuesta por Shan Li et al. consiste, dados dos dMZ cualesquiera, realizar una suma ponderada de las distancias promedio entre los módulos y las fases de ambos vectores (Ec. 3.4 pág. 27) dshanli = βDρ + (β − 1)Dφ = Dρ + Dφ , 2 recordemos que se eligió fijar un parámetro β = 0,5 para obtener esta función. Aunque no se incluyen en el trabajo, se hicieron pruebas variando este β sin obtener mejoras significativas en el rendimiento de la métrica. Sin embargo, si se consiguieron resultados significativamente peores para algunos valores de β. Finalmente debe notarse que el parámetro aquı́ llamado β es indicado como α en la literatura, incluso en la definición dada anteriormente (Def. 8 pág. 27) . dk·k+eucl , es la distancia resultante de aplicar un filtro buscando los dMZ más cercanos de acuerdo a la norma euclidiana y luego armar un ranking siguiendo la distancia euclidiana (ver sec. 3.2 ) . dstd , resulta de aplicar la distancia de Mahalanobis para números complejos, donde Σ es la matriz diagonal con el desvı́o standard de cada MZ (Def. 10 pág. 39) . La estimación de Σ se hace a partir de todos los dMZ disponibles en la base de datos utilizada. Suponiendo λi el desvı́o standard para el MZ correspondiente, dstd queda de la forma dstd (u, v) = s X (ui − vi )∗ (ui − vi ) i λi , ∗ donde (ui − vi ) es el conjugado complejo de (ui − vi ) (Def. 11 pág. 75) . En los estudios realizados se extendió la métrica dstd incluyendo una reducción de la base de datos utilizando dk·k con una metodologı́a similar a la definida para dk·k+eucl . Como resultado, se obtuvo una nueva métrica, dk·k+std , la cual primero aplica un filtro buscando los dMZ más cercanos de acuerdo a la norma euclidiana y luego arma un ranking siguiendo la distancia dstd . 43 Estudios sobre los algoritmos de clasificación propuestos Complementariamente, se pueden resumir a dos las variantes presentadas en el capı́tulo 3. Una es ponderar los diferentes MZ, dándoles mayor peso a los de menor orden(ver sec. 3.3.1 ) . La siguiente consistı́a en aplicar el método conocido como PCA a los MZ ponderados(ver sec. 3.4.1 ) . De la combinación de estas 3 distancias(dshanli ,dk·k+eucl y dk·k+std ) con las 2 variantes, surgen 9 métricas diferentes(Tabla 4.1) sobre las cuales se experimenta. Distancias / variantes dshanli dk·k + deucl dk·k + dstd Corrección de fase ◦ ◦ ◦ Ponderación ◦ ◦ ◦ Ponderación + PCA ◦ ◦ ◦ Tabla 4.1: Se reflejan de manera breve las posibles combinaciones de variantes sobre los dMZ y funciones de distancia que nos darán las métricas a ser probadas. Además de las métricas, también es necesario tener en cuenta ciertos factores que hacen al entorno de evaluación. Uno de estos factores influyentes, a ser tenidos en cuenta, esta conformado por la colección de imágenes a utilizar en las pruebas. La variación entre las imágenes de una colección determina el rendimiento de las métricas en cada experimento. Éstas pueden hacer hincapié en diferentes aspectos de lo que consideramos similar (basarse únicamente en su forma, información de contexto, tratarse de letras iguales, etc.). Si bien uno esperarı́a que el desempeño de una métrica superior no se vea afectado según el tipo de imágenes a analizar, es una realidad que la variación en la efectividad sufrida para colecciones de imágenes distintas varı́a en todas las métricas. Por ello, en la sección siguiente se introducen una serie de bases de datos que fueron utilizada a lo largo de los experimentos (ver sec. 4.1 ) . Finalmente, otro factor determinante versa en la cantidad de MZ que conforman un dMZ o, de forma equivalente, el número de dimensiones de los dMZ. Si bien, teóricamente, una mayor cantidad de MZ nos provee aún más información sobre la imagen en cuestión, hay dos motivos que tornan engorroso el uso de dMZ con grandes cantidades de dimensiones. En un primer lugar, el aumento en la cantidad de MZ utilizados trae como consecuencia inmediata un aumento en los costos computacionales. Por tanto, es valioso poder establecer una cantidad de MZ mı́nima a partir de la cual cada métrica nos provee resultados aceptables. Por otro lado, los MZ de mayor orden son más afectados por el posible ruido en las imágenes y no es sencillo calcularlos [AEBN05]. Fruto de estas problemáticas se realizaron pruebas con dMZ de diversas dimensiones. 44 Estudios sobre los algoritmos de clasificación propuestos 4.1. Colecciones de imágenes utilizadas en los estudios Debido a que este capı́tulo versa en examinar el desenvolvimiento de diferentes variantes y métricas propuestas en el capı́tulo 3, es esencial escoger una, o varias, colecciones de imágenes que sean representativas del universo para el cual se idearon estas métricas. Debido a que los resultados de las pruebas estarán estrechamente ligados a la colección de imágenes utilizadas, para realizar estos experimentos nos valemos de cuatro bibliotecas de imágenes distintas. Cada una de estas bases de datos fue diseñada con una finalidad distinta y busca explotar un costado diferente de las métricas. A continuación se incluyen algunas de las caracterı́sticas principales de cada una de las bases utilizadas. MPEG-7 CE Shape 1[LLE00] : Consiste en una colección de 1400 imágenes divididas en 70 clases de 20 imágenes consideradas similares entre ellas. Esta biblioteca de imágenes fue especialmente formada para permitir comparar la performance de los diferentes algoritmos basados en devolución por similaridad. Se incluye una pequeña muestra de la base de datos, la cual consiste en 16 imágenes pertenecientes a 4 clases distintas (Fig. 4.1) . ALOI [GBS05] : Se tomó un subconjunto de la base de datos “Amsterdam Library of Object Images”, conformando una colección de 1480 imágenes divididas en 20 clases de 74 imágenes cada una. Cada clase es el resultado de tomar una serie de fotografı́as a un objeto girando alrededor del mismo. Esto nos da una noción de la performance brindada por estos métodos para devolver imágenes de interés acerca de un objeto particular. A continuación pueden observarse algunos de los objetos fotografiados junto con algunas de sus contrapartes en la base de datos (Fig. 4.2) . MNIST[LC04] : El nombre completo es “THE MNIST DATABASE of handwritten digits”, consiste en una base de datos con algo más de 50 mil imágenes de dı́gitos decimales manuscritos. Se extrajo un subconjunto de 10 mil imágenes, mil por dı́gito y se trabajó sobre estas. La idea de esta biblioteca es proveer una fuente standard para realizar pruebas en detección de dı́gitos(Fig. 4.3) . TRADEMARK’S LOGOS : Consiste en una colección de 8 mil imágenes que pertenecen a logos de marcas reales (Fig. 4.4) . Esta base de datos fue cedida para el desarrollo del trabajo y constituye un subconjunto representativo de una base mayor. Aunque al tratarse de una base de datos real no esta dividida en clases, ni presenta casos de test que la acompañen, se pueden observar resultados interesantes sobre esta que se distinguen de los encontrados en las otras bases de datos presentadas. 45 Estudios sobre los algoritmos de clasificación propuestos Figura 4.1: Ubicadas por fila se encuentran algunas muestras de las siguientes clases, en orden descendente: apple, beetle, camel y device 2. Notar como las imágenes no son siempre similares entre sı́, a priori, uno se vale de información de contexto para clasificarlas. Figura 4.2: Podemos observar por fila una fotografı́a correspondiente al objeto original y luego en blanco y negro, por orden de aparición, una rotada 0°, 90°, 180° y 270°. Al igual que con la base de datos anterior, uno se basa en información de contexto para encontrar similitudes en las imágenes pertenecientes a una misma clase, por ejemplo las imágenes de una zapatilla sin rotar y rotándola 90° son muy diferentes. 46 Estudios sobre los algoritmos de clasificación propuestos Figura 4.3: Se observa una pequeña muestra de cada uno de los dı́gitos decimales que aparecen en la MNIST database[LC04]. 47 Estudios sobre los algoritmos de clasificación propuestos Figura 4.4: Este es un pequeño subconjunto de las imágenes presentes en la base de datos de logos de marcas. Mientras que algunas de ellas son conocidas por todos, otras nos son ajenas. Es importante notar lo diverso de las imágenes presentes en esta base y lo difı́cil que se torna clasificarlas en función de su similaridad, incluso para un humano. 4.2. Metodologı́a: Bulls-eye Test Se trata de una de las pruebas más significativas para comparar métricas distintas y el procedimiento para llevarla a cabo es sencillo. Dada una base de datos Bnc , donde c se corresponde con la cantidad de clases existentes en la base y n es la cantidad de imágenes por clase, para cada imagen i ∈ Bnc se construye un ranking según el método propuesto. Luego se establece la efectividad del método de acuerdo a la cantidad de imágenes pertenecientes a la clase de i entre las 2n imágenes más cercanas en el ranking. Ası́, el 100 % de efectividad es alcanzado por un método cuando al finalizar la prueba con todas las imágenes se detectaron n2 c casos positivos. Este método de comparación entre métricas es bastante popular y se considera acertado creer superior a aquella métrica que tiene un mayor porcentaje de efectividad. Sin embargo, se distinguen en esta prueba dos falencias inmediatas: No asigna peso al orden en el cual son devueltos los 2n resultados. Por ejemplo, podrı́a existir un k tal que una métrica devolviera n − k elementos de la misma clase, ubicando a todos ellos delante en el ranking. Ésta clasificarı́a peor que otra métrica cuyos resultados incluyan n − k + 1 imágenes de la misma clase, pero distribuı́dos sobre el fin del ranking (Fig. 4.5) . Únicamente se puede tener noción de efectividad con bases clasificadas. Éstas tienden a ser pequeñas en cantidad de clases e imágenes totales si se las compara con las bases de datos exitentes por fuera del mundo académico. De todas maneras, sigue siendo una de las mejores formas para comparar el rendimiento de dos o más métricas diferentes y es por este motivo que realizamos diversas pruebas utilizando este método. En busca de facilitar la lectura, y el entendimiento, de las pruebas realizadas dividiremos los resultados por la variante aplicada a los dMZ antes de comparar las métricas. 48 Estudios sobre los algoritmos de clasificación propuestos Figura 4.5: Se exponen dos casos en los que la metodologı́a bulls-eye test parece no ser del todo acertada. Supongamos dada una base de datos de dı́gitos manuscritos B910 y métricas m1 ,m2 y m3 . Cada fila de imágenes, fi , se corresponde con los resultados arrojados tras evaluar la métrica mi , la query es la primer imagen desde la izquierda (siendo la misma en las 3 filas). Según la metodologı́a bulls-eye test, la efectividad de m2 y m3 es la misma, a pesar de que m3 pone primeros a todas las imágenes de la misma clase. Además, la efectividad de m1 es menor a la de m2 , únicamente por que m2 devuelve un 0 más. 49 Estudios sobre los algoritmos de clasificación propuestos 4.2.1. Resultados Analizaremos ahora puntualmente los resultados obtenidos tras comparar las métricas (Tabla 4.1) utilizando las diferentes bases de datos MPEG-7 CE Shape 1, ALOI y MNIST, descriptas en la sección 4.1. Con MPEG-7 CE Shape 1 se realizaron dos pruebas, una considerando las imágenes tal cual estaban en la colección original y otra conservando únicamente los bordes de las mismas. Para extraer los bordes de las imágenes pertenecientes a MPEG-7 CE Shape 1 se utilizó el operador de Sobel. Resultados utilizando únicamente la corrección de fase Biblioteca MPEG-7 MPEG-7(bordes) ALOI MNIST Distancia dshanli dk·k+eucl dk·k+std dshanli dk·k+eucl dk·k+std dshanli dk·k+eucl dk·k+std dshanli dk·k+eucl dk·k+std −→ I Z30 (256) β res.( %) .5 36.82 100 61.71 40 42.96 .5 42.13 90 56.41 30 40.53 .5 64.81 40 70.34 30 60.1 .5 36.81 90 53.32 60 32.33 −→ I Z25 (182) β res.( %) .5 38.02 100 61.21 40 44.8 .5 44.12 100 57.1 30 42.35 .5 65.45 40 70.6 30 60.92 .5 36.08 80 55.02 20 33.08 −→ I Z15 (72) β res.( %) .5 39.02 100 60.43 40 48.95 .5 46.88 60 56.95 30 46.18 .5 65.94 40 69.98 40 62.77 .5 36.66 90 55.81 40 33.74 −→ I Z10 (30) β res.( %) .5 36.09 80 56.96 40 49.16 .5 43.2 80 57.07 30 48.09 .5 63.24 30 68.16 30 65.83 .5 38.32 100 56.78 70 37.26 Tabla 4.2: Bulls-eye test sobre las distintas bibliotecas de imágenes (ver sec. 4.1 pág. 45) . Se coloreó el fondo para los mejores resultados obtenidos por fila. β hace referencia a β(0,5) en la distancia propuesta por Shan Li et al.En las otras funciones de distancia, β hace referencia al porcentaje de imágenes extraı́das luego de ordenar por dk·k . Se debe notar como los resultados de dk·k+eucl son superiores al resto. Mientras que dk·k+std toma valores similares a dshanli en la mayorı́a de los casos. En la tabla 4.2, se observa como dk·k+eucl prevalece por sobre las otras dos métricas rondando el 60 % de efectividad, consiguiendo casi un 20 % más que dshanli en tres de las cuatro colecciones de imágenes aquı́ utilizadas. Por otro lado, a diferencia de las otras dos métricas, en la mayorı́a de los casos esta aumenta su desempeño a medida que crece la cantidad de momentos. Esto nos induce a pensar que la métrica dk·k+eucl se ve afectada en menor medida por el ruido introducido en el cálculo de los MZ de mayor orden posibilitando el incremento en su rendimiento. Además, se puede notar como el rendimiento de dshanli mejora notablemente al cambiar las imágenes por aquellas que únicamente contienen bordes, emparejando el rendimiento de dk·k+std (MPEG-7 vs MPEG-7(bordes)). Si bien no se incluyeron las mediciones de tiempo en esta parte del trabajo, estas se llevaron a cabo y es importante resaltar el principal de sus resultados. Mientras que el tiempo promedio para realizar una búsqueda utilizando dk·k+eucl o dshanli ronda los 200ms, para dk·k+std se tiene un tiempo de respuesta de 100ms teniendo en cuenta los parámetros con los que se obtienen los mejores resultados en la tabla 4.2. De esto se desprende que el filtro por dk·k reduce los tiempos de ejecución en gran medida, en este caso a la mitad. En un análisis más detallado se compararon los resultados obtenidos por clase (Fig. 4.6) . Lo interesante de este resultado es notar que si bien la mayorı́a de las clases difı́ciles(en las que se devuelve un bajo porcentaje) son coincidentes, las normas propuestas en este trabajo mejoran el rendimiento para algunas de esas clases. En particular al comparar la figura 4.6b con 4.6a, se 50 Estudios sobre los algoritmos de clasificación propuestos observa como se ha producido una mejora notoria en las primeras clases que figuran (por ejemplo, HCircle mejoró un 80 %). Por otro lado, no empeoran las clases que tenı́an ya buenos resultados, incluso mejoran un poco(Fig. 4.6) . En la colección MNIST sucede lo mismo aunque de un modo más sutil, podemos observar como se nivelan los aciertos por clase a medida que se aumentan la cantidad de MZ en consideración. Además, al comparar las figuras 4.7b con 4.7a, no se ven diferencias tan notorias como en el caso anterior. Finalmente, en las tablas se incluyó el porcentaje a filtrar por dk·k que hacı́a mayor al rendimiento obtenido. Sin embargo, durante las pruebas se fue cambiando este porcentaje hasta obtener el mejor rendimiento (Fig. 4.8) . Aunque en algunas oportunidades el mejor resultado se obtuvo sin utilizar a dk·k , se puede ver como el crecimiento de los porcentajes de efectividad disminuye notablemente al superar el 20 %. Habitualmente escoger entre el 30 − 50 % es una buena idea, pues la efectividad se ve reducida muy poco y los tiempos mejoran notablemente, reduciéndose a la mitad en la mayorı́a de los casos. Resultados utilizando ponderación Observando la tabla 4.3 la ponderación no parece tener grandes efectos, por sı́ sola, sobre las métricas dk·k+eucl y dk·k+std . Sin embargo, al comparar con los resultados anteriores (Tabla 4.2) , deben notarse dos cosas: Afecta el rendimiento de dshanli notablemente, haciendo que esta no alcance siquiera la mitad de los resultados obtenidos sin ponderar. En las colecciones de imágenes ALOI y MNIST, la ponderación trae un pequeño efecto positivo, incrementando los mejores resultados en un poco menos de un 1 %. Biblioteca MPEG-7 MPEG-7(bordes) ALOI MNIST Distancia dshanli dk·k+eucl dk·k+std dshanli dk·k+eucl dk·k+std dshanli dk·k+eucl dk·k+std dshanli dk·k+eucl dk·k+std −→ I Z30 (256) β res.( %) .5 3.91 100 61.71 40 42.96 .5 3.72 90 56.41 30 40.53 .5 10.41 40 70.34 30 60.1 .5 20.52 90 53.56 20 31.79 −→ I Z25 (182) β res.( %) .5 4.23 100 61.21 40 44.8 .5 4.5 100 57.1 30 42.35 .5 10.27 40 70.67 30 60.95 .5 20.43 80 55.6 20 32.51 −→ I Z15 (72) β res.( %) .5 8.67 100 60.43 40 48.95 .5 8.81 60 56.95 30 46.18 .5 12.93 40 69.98 40 62.77 .5 23.39 90 55.26 40 33.78 −→ I Z10 (30) β res.( %) .5 17.13 80 56.96 40 49.16 .5 21.04 80 57.07 30 48.09 .5 30.78 30 68.16 30 65.83 .5 27.65 100 57.2 70 36.87 Tabla 4.3: Resultados tras realizar el Bulls-eye test sobre las distintas bibliotecas de imágenes (ver sec. 4.1 pág. 45) con los correspondientes dMZ ponderados. Sobre fondo gris se encuentran los mejores resultados obtenidos por fila. β hace referencia a β(0,5) en la distancia propuesta por Shan Li et al. o el porcentaje de la base de datos utilizado luego de ordenar por dk·k . Se debe notar como los resultados de dk·k+eucl son superiores al resto. 51 Estudios sobre los algoritmos de clasificación propuestos 100 90 80 70 60 50 40 30 20 30 10 72 182 256 0 Bone Comma Glas HCircle Heart car carriage cattle cellular_phone chicken children stef teddy tree truck turtle (a) Resultados por clase para dshanli teniendo en cuenta diferentes cantidades de MZ. 100 90 80 70 60 50 40 30 20 30 10 72 182 256 0 Bone Comma Glas HCircle Heart car carriage cattle cellular_phone chicken children stef teddy tree truck turtle (b) Resultados por clase para dk·k+eucl teniendo en cuenta diferentes cantidades de MZ. 100 90 80 70 60 50 40 30 30 20 72 182 256 10 0 Bone Comma Glas HCircle Heart car carriage cattle cellular_phone chicken children stef teddy tree truck turtle (c) Resultados por clase para dk·k+std teniendo en cuenta diferentes cantidades de MZ. Figura 4.6: Resultados individualizados por clase, para unas 16 clases de MPEG-7 CE Shape 1 52 Estudios sobre los algoritmos de clasificación propuestos 100 30 72 182 256 90 80 70 60 50 40 30 20 10 0 0 1 2 3 4 5 6 7 8 9 (a) Resultados por clase para dshanli teniendo en cuenta diferentes cantidades de MZ. 100 30 72 182 256 90 80 70 60 50 40 30 20 10 0 0 1 2 3 4 5 6 7 8 9 (b) Resultados por clase para dk·k+eucl teniendo en cuenta diferentes cantidades de MZ. 100 30 72 182 256 90 80 70 60 50 40 30 20 10 0 0 1 2 3 4 5 6 7 8 9 (c) Resultados por clase para dk·k+std teniendo en cuenta diferentes cantidades de MZ. Figura 4.7: Resultados individualizados por clase, para las 10 clases de MNIST 53 Estudios sobre los algoritmos de clasificación propuestos 100 30 72 182 256 90 80 70 60 50 40 30 20 10 0 0 10 20 30 40 50 60 70 80 90 100 (a) Efectividad alcanzada por dk·k+eucl para distintos % de imágenes luego de ordenar por dk·k . 100 30 72 182 256 90 80 70 60 50 40 30 20 10 0 0 10 20 30 40 50 60 70 80 90 100 (b) Efectividad alcanzada por dk·k+std para distintos % de imágenes luego de ordenar por dk·k . Figura 4.8: Resultados referentes a MPEG-7 CE Shape 1, alcanzados variando el porcentaje filtrado utilizando dk·k y las dimensiones de los dMZ. En el eje x se ve el porcentaje restante luego de aplicar dk·k , mientras que el eje y es el correspondiente resultado en el bulls-eye test. 54 Estudios sobre los algoritmos de clasificación propuestos 100 30 72 182 256 90 80 70 60 50 40 30 20 10 0 0 10 20 30 40 50 60 70 80 90 100 (a) Efectividad alcanzada por dk·k+eucl para distintos % de imágenes luego de ordenar por dk·k . 100 30 72 182 256 90 80 70 60 50 40 30 20 10 0 0 10 20 30 40 50 60 70 80 90 100 (b) Efectividad alcanzada por dk·k+std para distintos % de imágenes luego de ordenar por dk·k . Figura 4.9: Resultados alcanzados variando el porcentaje de filtrado utilizando dk·k y las dimensiones de los dMZ para la colección ALOI. El eje x es el porcentaje de imágenes restantes luego de aplicar dk·k . En el eje y vemos el correspondiente resultado en el bulls-eye test. 55 Estudios sobre los algoritmos de clasificación propuestos Resultados utilizando ponderación + PCA Esta adaptación(PCA) es otra de las realizadas en dirección a disminuir los tiempos de ejecución por imagen. Surge de observar los resultados anteriores(Tablas 4.3 y 4.2), sobre todo en lo referente a dk·k+eucl vs dk·k+std . Al verlos podemos comenzar a pensar que MZ con una varianza mayor contienen mayor información, o son más influyentes, sin ser esto una coincidencia. Esto fundamentó la elección de utilizar PCA como una metodologı́a para reducir las dimensiones. PCA, según vimos en la sección 3.4.1, nos permite obtener las dimensiones en las cuáles el desvı́o standard es mayor, ahora consideradas de mayor interés para las métricas propuestas. Por eso, la pregunta que se apunta a responder con este estudio es ¿ Cuál serı́a una cantidad mı́nima de dimensiones a utilizar luego de realizar PCA tal que se obtengan resultados comparables con los anteriores? Es por esto que se cambio la métodologı́a en esta sección respecto de las anteriores. En lugar de −→ I . realizar las pruebas variando la cantidad de MZ por dMZ , en esta oportunidad se fijo en 256(Z30 Aplicando PCA se obtuvo un nuevo vector, con sus dimensiones ordenadas según su varianza, y se lo truncó en diferentes dimensiones tomando siempre las de mayor varianza. Se incluyen los resultados obtenidos para los vectores de longitud 20,15,10 y 5(Tabla 4.4) . Biblioteca MPEG-7 MPEG-7(bordes) ALOI Distancia dk·k+eucl dk·k+std dk·k+eucl dk·k+std dk·k+eucl dk·k+std β 100 40 90 30 60 50 (20) res.( %) 61.19 44.27 56.3 40.42 64.91 60.2 β 100 40 100 30 60 50 (15) res.( %) 61.35 46.71 55.94 41.73 66.32 59.72 β 100 40 60 30 70 50 (10) res.( %) 60.12 48.38 54.96 42.31 70.46 64.42 β 80 40 80 30 100 100 (5) res.( %) 56.89 51.02 49.74 40.83 66.35 64.39 Tabla 4.4: Resultados tras realizar el Bulls-eye test sobre las distintas bibliotecas de imágenes (ver sec. 4.1 pág. 45) variando la cantidad de dimensiones utilizadas luego de aplicar PCA. Se resaltan con fondo gris los mejores resultados por fila. β hace referencia al porcentaje de la base de datos utilizado luego de ordenar por dk·k . Se debe notar cómo se alcanzan resultados similares a los vistos en las tablas 4.3 y 4.2 con menor cantidad de dimensiones. Los dos resultados importantes que se desprenden de la Tabla 4.4 son : para diferentes colecciones de imágenes con diferentes métricas se encuentra el mejor resultado con diferente cantidad de dimensiones y los mejores resultados estan cerca(+/ − 2 %) de los mejores resultados obtenidos sin PCA(Tabla 4.3) . La última de estas conclusiones es realmente importante pues indica que PCA resulta útil en este contexto. Para analizar en mayor profundidad este punto se presentan las figuras 4.10, 4.11 y 4.12. En cada una de ellas se puede observar el desvı́o de cada dimensión expresado como un porcentaje de la suma total. Además se indico el acumulado en el punto en el cuál la tabla 4.4 refleja el mejor resultado para dk·k+eucl . Mirando las figuras 4.10, 4.11 y 4.12, podemos concluir que los mejores resultados se alcanzan cuando se excluyen las dimensiones que son menores a un 1− %, con un chico. De hecho, aunque no suceda esto en el caso particular de MPEG-7(bordes), el resultado en la tabla incluyendo hasta 25 dimensiones está muy cerca del óptimo obtenido (Fig. 4.11) (Tabla 4.4) . Como conclusión de los experimentos realizados, y a modo de heurı́stica, se propone fijar = 0,1 y escoger aquellas dimensiones cuyo desvı́o standard porcentual, respecto a la suma de todos, es mayor o igual al 0,9 %. Notar que con este método reducimos las dimensiones de nuestros dMZ de 256 a un promedio de 15. 56 Estudios sobre los algoritmos de clasificación propuestos 10 9 8 (%) desvío / importancia 7 6 5 4 3 2 (84.28 %) 1 0 5 10 15 20 dimensión 25 30 35 40 Figura 4.10: Se ve en la figura el desvı́o standard de cada dimensión una vez realizado PCA en la base de datos MPEG-7. En este caso el mejor resultado se obtuvo con las primeras 15 dimensiones cuyo desvı́o acumulado suma un 84,28 %. Notar que la última dimensión tomada está apenas debajo del 1 %. Resultados utilizando una base de datos real (TRADEMARK’S LOGOS) TRADEMARK’S LOGOS es un subconjunto de aproximadamente 8 mil imágenes pertenecientes a una base de datos mayor, compuesta de logotipos de marcas registrados (ver sec. 4.1 pág. 45) . Al no encontrarse dividida en clases, ni presentar de forma clara una posible división, es imposible realizar el bulls-eye test sobre esta. Únicamente podemos evaluar los resultados de forma visual. Por ello, incluı́mos a continuación una serie de resultados arrojados por las métricas dshanli , dk·k+eucl y dk·k+std para 4 imágenes de referencia distintas. Para cada métrica se tomaron los dMZ de la −→ I forma Z30 (256 dimensiones). En el caso particular de dk·k+eucl y dk·k+std , primero se ponderó a los dMZ (ver sec. 3.3.1 pág. 34) . Después se aplicó la variante PCA, reduciendo las dimensiones de 256 a 15. Luego se procedió a filtrar la base de datos por dk·k , sacando las imágenes más lejanas y dejando un 25 % de la cantidad de imágenes original. Es decir, el parámetro β se fijó en 0,25. De la comparación entre los 12 casos incluı́dos (ver Figuras 4.13, 4.14, 4.15, 4.16, 4.17, 4.18, 4.19, 4.20, 4.21, 4.22, 4.23 y 4.24) se desprede que las imágenes iguales se acumulan al principio del ranking con las métricas dk·k+eucl y dk·k+std , lo cual no sucede con dshanli . Por otro lado, si bien es subjetivo, también aparecen más imágenes similares, con esas dos métricas, dentro del ranking. 57 Estudios sobre los algoritmos de clasificación propuestos 10 9 8 (%) desvío / importancia 7 6 5 4 3 2 (73.48 %) 1 0 5 10 15 20 dimensión 25 30 35 40 Figura 4.11: La figura representa el desvı́o standard (porcentual) de cada dimensión una vez realizado PCA en la base de datos MPEG-7(bordes), es decir, la colección de dMZ extraı́dos de los bordes de las imágenes pertenecientes a MPEG-7. El mejor resultado se encuentra recuadrado y es la suma de las dimensiones hasta la 20, sumando un desvı́o del 73,48 %. A diferencia de la figura 4.10, la última dimensión incluı́da esta apenas por encima del 1 %. 58 Estudios sobre los algoritmos de clasificación propuestos 10 9 8 (%) desvío / importancia 7 6 5 4 3 2 (96.00 %) 1 0 5 10 15 20 dimensión 25 30 35 40 Figura 4.12: Se observa el desvı́o standard (porcentual) de cada dimensión una vez realizado PCA para los dMZ extraı́dos de ALOI. Recuadrado esta la última dimensión incluı́da, apenas por debajo del 1 %, para obtener el mejor resultado. El desvı́o acumulado es del 96 %. A lo largo de este capı́tulo hemos fundamentado la presentación de las diferentes variantes y métricas. Tras observar los resultados a los estudios podemos concluir que: La métrica dk·k+eucl presenta siempre resultados superiores al resto. dshanli es sumamente afectada por cambios en los valores de los dMZ, sobre todo al utilizar variantes de los mismos. El rendimiento de dk·k+std es intermedio entre dshanli y dk·k+eucl , pero no varı́a su rendimiento por las variantes. La variante de ponderación tiene influencia en algunas bases de datos, parece ser en las más extensas. PCA es en extremo útil para reducir las dimensiones de los dMZ, reduciendo de 256 a 15 en promedio. 59 Estudios sobre los algoritmos de clasificación propuestos Figura 4.13: Partiendo de dMZ con su fase corregida, se ordenaron los mismos por dshanli y se tomaron las 100 primeras posiciones. Se indica la query con un cı́rculo verde y con un cı́rculo rojo la imagen igual más lejana dentro del ranking. 60 Estudios sobre los algoritmos de clasificación propuestos Figura 4.14: Dados los dMZ de las imágenes en TRADEMARK’S LOGOS, se aplicaron la ponderación y, luego, PCA, recortando a 15 las dimensiones. Luego se ordenaron los dMZ por dk·k+eucl y se conformó el ranking con los 100 más cercanos. Al filtrar por dk·k se conservó el 25 % del total de las imágenes, tomando las más cercanas. Se resaltó la query con un cı́rculo verde mientras que con un cı́rculo rojo se resaltó la imagen igual más lejana dentro del ranking. 61 Estudios sobre los algoritmos de clasificación propuestos Figura 4.15: Dados los dMZ de las imágenes en TRADEMARK’S LOGOS, se aplicó la ponderación y luego PCA, recortando a 15 las dimensiones. Luego se ordenaron los dMZ por dk·k+eucl y se conformó el ranking con los 100 más cercanos. Al filtrar por dk·k se conservó el 25 % del total de las imágenes, tomando las más cercanas. Se resaltó la query con un cı́rculo verde mientras que con un cı́rculo rojo se resaltó la imagen igual más lejana dentro del ranking. 62 Estudios sobre los algoritmos de clasificación propuestos Figura 4.16: Ranking generado por dshanli , sin aplicar variantes a los dMZ. Se indica la query con un cı́rculo verde y con un cı́rculo rojo la imagen igual más lejana dentro del ranking. 63 Estudios sobre los algoritmos de clasificación propuestos Figura 4.17: Ranking obtenido utilizando dk·k+eucl , utilizando ponderación, PCA y β = 0,25. Se resaltó la query con un cı́rculo verde mientras que con un cı́rculo rojo se resaltó la imagen igual más lejana dentro del ranking. 64 Estudios sobre los algoritmos de clasificación propuestos Figura 4.18: Ranking obtenido utilizando dk·k+std , utilizando ponderación, PCA y β = 0,25. Sobre un cı́rculo verde se ve la query y con un cı́rculo rojo se indica la imagen igual más lejana dentro del ranking. 65 Estudios sobre los algoritmos de clasificación propuestos Figura 4.19: Partiendo de dMZ con su fase corregida, se ordenaron los mismos por dshanli y se tomaron las 100 primeras posiciones. Se indica la query con un cı́rculo verde y con un cı́rculo rojo la imagen igual más lejana dentro del ranking. 66 Estudios sobre los algoritmos de clasificación propuestos Figura 4.20: Dados los dMZ de las imágenes en TRADEMARK’S LOGOS, se aplicaron la ponderación y, luego, PCA, recortando a 15 las dimensiones. Luego se ordenaron los dMZ por dk·k+eucl y se conformó el ranking con los 100 más cercanos. Al filtrar por dk·k se conservó el 25 % del total de las imágenes, tomando las más cercanas. Se resaltó la query con un cı́rculo verde mientras que con un cı́rculo rojo se resaltó la imagen igual más lejana dentro del ranking. 67 Estudios sobre los algoritmos de clasificación propuestos Figura 4.21: Dados los dMZ de las imágenes en TRADEMARK’S LOGOS, se aplicó la ponderación y luego PCA, recortando a 15 las dimensiones. Luego se ordenaron los dMZ por dk·k+eucl y se conformó el ranking con los 100 más cercanos. Al filtrar por dk·k se conservó el 25 % del total de las imágenes, tomando las más cercanas. Se resaltó la query con un cı́rculo verde mientras que con un cı́rculo rojo se resaltó la imagen igual más lejana dentro del ranking. 68 Estudios sobre los algoritmos de clasificación propuestos Figura 4.22: Partiendo de dMZ con su fase corregida, se ordenaron los mismos por dshanli y se tomaron las 100 primeras posiciones. Se indica la query con un cı́rculo verde y con un cı́rculo rojo la imagen igual más lejana dentro del ranking. 69 Estudios sobre los algoritmos de clasificación propuestos Figura 4.23: Dados los dMZ de las imágenes en TRADEMARK’S LOGOS, se aplicaron la ponderación y, luego, PCA, recortando a 15 las dimensiones. Luego se ordenaron los dMZ por dk·k+eucl y se conformó el ranking con los 100 más cercanos. Al filtrar por dk·k se conservó el 25 % del total de las imágenes, tomando las más cercanas. Se resaltó la query con un cı́rculo verde mientras que con un cı́rculo rojo se resaltó la imagen igual más lejana dentro del ranking. 70 Estudios sobre los algoritmos de clasificación propuestos Figura 4.24: Dados los dMZ de las imágenes en TRADEMARK’S LOGOS, se aplicó la ponderación y luego PCA, recortando a 15 las dimensiones. Luego se ordenaron los dMZ por dk·k+eucl y se conformó el ranking con los 100 más cercanos. Al filtrar por dk·k se conservó el 25 % del total de las imágenes, tomando las más cercanas. Se resaltó la query con un cı́rculo verde mientras que con un cı́rculo rojo se resaltó la imagen igual más lejana dentro del ranking. 71 Capı́tulo 5 Conclusiones Una métrica adecuada para los momentos complejos de Zernike(MZ ) es de gran interés en el mundo académico y presenta diversas aplicaciones prácticas en la industria. El trabajo se centró, entonces, en analizar los MZ y evaluar los métodos actuales, teniendo por objeto el proponer nuevas métricas. Estas métricas tendrı́an el ambicioso objetivo de superar a las existentes y poder desempeñarse de manera acorde en un contexto comercial. Para lo primero se intentarı́a aprovechar caracterı́sticas propias de estos tipos de momentos, mientras que lo segundo involucra a la velocidad de respuesta del algoritmo junto con las colecciones de imágenes para las que serı́a ideada. El trabajo partió de un análisis en profundidad sobre el comportamiento de los polinomios complejos de Zernike[Zer34] sobre el cı́rculo unitario con una función constante en 1. También se analizó el comportamiento de los momentos complejos de Zernike, sin aplicar ninguna variante a los mismos, para una serie de imágenes referencia. Además, en el capı́tulo 2, se formalizó el concepto de descriptores de momentos complejos de Zernike(dMZ ) en busca de facilitar la definición de nuevas metodologı́as de extracción y selección de los dMZ. Tras esto se procedió a examinar las métricas existentes y se tomó como referencia la introducida en 2009 por Shan li et al.[LLP09]. En el capı́tulo 3, como resultado del análisis de los estudios sobre los MZ, surge una métrica (dk·k + deucl ) que posee las caracterı́sticas buscadas: reduce el espectro de búsqueda de un modo acelerado y sus resultados son muy superiores a los de la métrica referencia. Además, como un modo de mejorar aún más los resultados se incluyó una ponderación de los MZ que demostró tener efectos positivos en la práctica. Luego se incorporó a la metodologı́a propuesta la utilización de análisis de componentes principales(PCA) como un método que permitirı́a reducir las dimensiones de los dMZ, disminuyendo la cantidad de operaciones necesarias en la ejecución de las métricas. Finalmente, a lo largo del capı́tulo 4 se compararon las métricas y se expusieron los resultados más relevantes obtenidos, dejando constancia de la mejora conseguida con las metodologı́as propuestas en el trabajo. 72 Conclusiones 5.1. Contribuciones Las contribuciones en este trabajo son fruto de los objetivos autoimpuestos en un principio, conseguir una métrica eficaz y rápida, para conseguir imágenes globalmente similares. Como aportes principales se distinguen: Se incluyó la noción de colecciones de descriptores de momentos complejos de Zernike por imagen y formas de escoger entre los dMZ disponibles. En el capı́tulo 3, se definieron una serie de metodologı́as enfocadas en la extracción y elección de los dMZ . Finalmente, se estableció un último método de extracción de dMZ, respaldado luego por los estudios realizados, que presentaba un balance entre cantidad de dimensiones de los dMZ e información contenida, ver la Figura 3.11(pág. 40). El nuevo método utiliza las nuevas variantes de dMZ expuestas en este trabajo. En el capı́tulo 3 se presentaron una serie de métricas. Entre ellas se distinguieron dos: dk·k+eucl y dk·k+std . Ambas tuvieron un desempeño positivo , sin embargo dk·k+eucl tuvo resultados un 20 % superiores a los del resto. Se definió una función heurı́stica para ponderar los momentos complejos de Zernike. La misma otorga un peso a los MZ de menor orden de acuerdo a lo analizado en el capı́tulo 2,(ver sec. 2.4.1 pág. 11) . El mejor desempeño de esta variante se obtuvo con las bases de datos más extensas. Se definió del siguiente modo,(ver sec. 3.3.1 pág. 34) A0nm = Anm exp(−#dmz(n, m)m| sin(θn0 1 )|). Se introdujo el análisis de componentes principales como una herramienta para la reducción de dimensiones de los dMZ. Se logró reducir la dimensiones de los dMZ a un 5 % de las dimensiones originales y conservar los altos resultados de las métricas dk·k+eucl ydk·k+std . De forma conjunta, se presentó una heurı́stica de corte para la reducción de dimensiones de los dMZ tras realizar PCA. 73 Conclusiones 5.2. Trabajo futuro A partir de los resultados obtenidos en este trabajo cabe preguntarse si es posible encontrar métricas que superen a las aquı́ planteadas y que tornen a los dMZ en una herramienta todavı́a más útil. Además de esta lı́nea de trabajo futuro obvia, durante el desarrollo del mismo se plantearon numerosas opciones de investigación en las que se prefirió no ahondar en pos de continuar en dirección al objetivo principal del trabajo. Algunas de las posibles ramas de investigación que se plantearon fueron: Durante el desarrollo del trabajo se propuso transformar las imágenes originales para conseguir imágenes que sean invariantes a traslaciones y escalamientos antes de extraer los MZ, a pesar de los problemas que esto conlleva(ver sec. 2.5.1 pág. 19) . Sin embargo, en el caso particular del escalamiento pareciera posible aplicar un factor a los MZ extraı́dos para conseguir esta invarianza. Como una continuación a este trabajo se pueden encontrar las equivalencias matemáticas para conseguir estas invarianzas sin necesidad de perder información transformando las imágenes originales. Entre las ventajas que esto presentarı́a, se encuentra la posibilidad de cambiar los coeficientes de escala sin necesidad de recalcular los MZ, ni contar con las imágenes originales. Otra posibilidad es la de intentar extraer los MZ de una imagen sin necesidad de discretizar a nivel pı́xel. Es posible realizar alguna interpolación a las imágenes originales para obtener valores a nivel subpixel, por ejemplo. Además si se consigue una interpolación que nos permita calcular de forma analı́tica los MZ de una imagen dada serı́a óptimo. En lo referente a la invarianza ante traslaciones, actualmente se centra a las figuras en una imagen respecto al centroide. Existen varias formas de centrar las imágenes, muchas de ellas guardan una relación directa con la comprensión humana de las figuras. En particular, una continuación viable es la inclusión y prueba de diversos métodos de centrado. En este trabajo asumimos que todos los MZ válidos eran útiles. Además, si bien indicamos como los MZ de menor orden se basan en caracterı́sticas globales, nunca se distinguió con propiedades especı́ficas a MZ particulares. Una posible continuación al trabajo serı́a analizar los diferentes MZ buscando aquellos que se condicen con alguna propiedad particular sobre las imágenes o, por el contrario, aquellos que no tienen ninguna utilidad. Si bien se examinaron diversas métricas a lo largo del trabajo algunas fueron desestimadas tempranamente por su complejidad temporal. El caso de la registración de nubes de puntos utilizando ICP es uno de ellos (ver sec. 2.4.2 pág. 17) . Aunque en un primer momento los resultados no fueron lo suficientemente buenos, consideramos que un análisis en mayor profundidad puede reportar resultados positivos. 74 Apéndice A Algebra de números complejos A continuación se definen algunas operaciones básicas sobre vectores complejos, Cn . Las mismas son utilizadas a lo largo del trabajo en diferentes ocasiones. Definición 11. Dados un número z ∈ C, z = r + ci, se define el conjugado complejo, z ∗ , como: z ∗ = r − ci (A.1) Definición 12. Dados dos vectores u y v pertenecientes a Cn se define el producto interno euclidiano, · , como: ∗ u· v = u1 v1∗ + u2 v2∗ + . . . + un−1 vn−1 + un vn∗ (A.2) Donde v ∗ es el conjugado complejo de v. Definición 13. Se define la norma euclidiana, k· k , de un vector u, u ∈ Cn , como la raı́z cuadrada del producto interno de u consigo: kuk = √ u· u (A.3) Definición 14. La distancia euclidiana entre dos vectores u y v pertenecientes a Cn , se define como: deucl (u, v) = ku − vk 75 (A.4) Apéndice B Implementación Durante el desarrollo de este trabajo se realizaron diversas implementaciones en C++ y MATLAB. La aplicación realizada en C++ fue implementada dentro del contexto de un proyecto UBACyT para el que se desarrolló tan solo una parte inicial de este trabajo. Las versiones implementadas en MATLAB son la contraparte de todo el desarrollo expuesto a lo largo del trabajo. B.1. MATLAB A continuación se enumeran las diferentes funciones/librerı́as implementadas en MATLAB. Se encuentran distribuı́das en diferentes carpetas agrupadas por funcionalidad permitiendo realizar las diferentes pruebas que figuran en el documento. B.1.1. Generación de descriptores de momentos complejos de Zernike Agrupados en la carpeta generatepack se encuentran las funciones que hacen posible generar los dMZ de un conjunto de imágenes. Las funciones principales son : zmoment getAllMoments: Devuelve los dMZ de todas las imágenes en formato PNG en el directorio recibido como parámetro. zmoment matrix getAllMoments: Devuelve los dMZ de todas las imágenes contenidas en la matriz recibida como parámetro. Cada fila de la matriz representa una imagen cuadrada. run: Ejemplo de generación y guardado de los dMZ pertenecientes a las imágenes en un directorio dado. testBeta: Nos muestra como quedarı́a una imagen normalizada para un β dado. Recibe el path de una imagen, un β de normalización (según lo visto en [LLP09]) y un tamaño final para la imagen dada. B.1.2. Clasificadores Los clasificadores son un conjunto de funciones dedicadas a realizar la búsqueda de una query en la base de datos y devolver listadas en orden de proximidad una cantidad de imágenes más cercanas según se indique. A lo largo del trabajo estos clasificadores fueron utilizados para realizar los diferentes pruebas utilizando la implementación de diferentes métricas. A continuación se incluye una breve descripción de las rutinas incluı́das, su nombre en el código fuente es similar al que figura sumando el prefijo zmoment classifier y con una extensión de archivo .m: ShanLi: Implementación del clasificador presentado en [LLP09]. 76 Implementación normalizada: Realiza una búsqueda utilizando como función de comparación entre descriptores de MZ : Dα = α dk·k + (α − 1) deucl (B.1) Notesé que de ser α = 0 compara únicamente por deucl y de ser α = 1 compara solo por dk·k . ne: Realiza una búsqueda filtrando los descriptores de MZ primero por dk·k . Luego selecciona las k imágenes más cercanas por deucl . nestd: Realiza una búsqueda filtrando los descriptores de MZ primero por dk·k . Luego selecciona las k imágenes más cercanas por s X (ui − vi )∗ (ui − vi ) dstd (u, v) = λi i donde λi representa el desvı́o standard de los MZ de ese orden. maha: Filtra los dMZ por dk·k para luego selecciona las k imágenes más cercanas de acuerdo a la distancia de Mahalanobis. Recibe como parámetro la matriz utilizar. icp: Construye un ranking utilizando la función distancia definida como d(R, T ) = X R(i, i) × i X T (j). j Donde la matriz de rotación, R, y el vector de traslación, T son el resultado de aplicar ICP entre el modelo descripto por el dMZ de la imagen query y otro dMZ,d, de manera que Rd + T nos da la nube de puntos registrada. De forma complementaria, se incluyen rutinas para preprocesar los dMZ acorde a lo descripto a lo largo del trabajo. Estas rutinas tienen como prefijo makeBD y se pueden dividir en tres categorı́as principales: Shanli: Realiza la corrección de fase según se vió en el trabajo 2.5.3 [LLP09]. ponderada: Incorpora la ponderación de los An m según (ver sec. 3.3.1 ) , A0nm = Anm exp(−Xnm m sin(θ)) (B.2) n n m Xnm = b c(b c + 1) + b c 2 2 2 (B.3) con: Xnm es igual a: θ es el ángulo utilizado para la corrección de fases 2.5.3. PCA(whitenning): Suma el análisis de componentes principales al preprocesamiento según lo visto (ver sec. 3.4.1 ) . 77 Implementación B.1.3. Estudios realizados Dentro de la carpeta testpack se encuentra una colección de directorios cada uno conteniendo diferentes estudios realizados. A continuación se describen las funciones principales dentro de cada uno de ellos. bullseye: dentro de esta carpeta encontramos todos los archivos referentes al bulls-eye test. run: Ejemplo de ejecución del bulls-eye test. Ejecuta zmoment matrix getAllMoments: Devuelve los dMZ de todas las imágenes contenidas en la matriz recibida como parámetro. Cada fila de la matriz representa una imagen cuadrada. run: Ejemplo de generación y guardado de los dMZ pertenecientes a las imágenes en un directorio dado. testBeta: Nos muestra como quedarı́a una imagen normalizada para un β dado. Recibe el path de una imagen, un β de normalización (según lo visto en [LLP09]) y un tamaño final para la imagen dada. B.1.4. Bases precalculadas Se incluyen las bases de datos utilizadas en los test dentro de la carpeta bases. Ademaás se pueden encontrar dentro d la misma una serie de bases de datos utilizadas en diversas pruebas que fueron excluı́das del trabajo. Las diferentes bases con los dMZ precalculados estan en formatos mat y csv, para ambos existen funciones nativas de MATLAB que permiten la lectura. mpeg7: Existen una serie de colecciones de dMZ asociadas a la biblioteca MPEG-7 CE Shape 1[LLE00]. Entre ellas: sinflip: dMZ extraı́dos de las imágenes originales. allsinflip: dMZ extraı́dos de las imágenes originales, sin información de pertenencia y en una gran matriz. flipH: dMZ extraı́dos de las imágenes originales luego de voltear(flip) horizontalmente. flipV: dMZ extraı́dos de las imágenes originales luego de voltear(flip) verticalmente. flipHV: dMZ extraı́dos de las imágenes originales luego de voltear(flip) horizontal y verticalmente. edges: dMZ extraı́dos luego de procesar las imágenes originales para dejar únicamente los bordes. digits: 10000 dMZ pertenecientes a una base de datos sobre dı́gitos decimales escritos a mano [LC04]. El archivo mindigits incluye 50000 dMZ. aloi: Amsterdam Library of Object Images [GBS05]). Incluı́mos varios archivos (por ej. aloi.mat) conteniendo los dMZ de esta biblioteca y además se incluye un directorio con las imágenes pertenecientes a la misma. marcas: Subconjunto de dMZ para imágenes pertenecientes a una base de datos de logos empresariales (marcas.mat). 78 Bibliografı́a [AEBN05] G. Amayeh, A. Erol, G.N. Bebis, and M.Ñicolescu. Accurate and efficient computation of high order zernike moments. pages 462–469, 2005. [AP85] Y.S. Abu Mostafa and D. Psaltis. Image normalization by complex moments. 7(1):46– 55, January 1985. [BM92] P.J. Besl and N.D. McKay. A method for registration of 3-d shapes. IEEE Transactions on Pattern Analysis and Machine Intelligence, 14(2):239–256, 1992. [BMP02] S. Belongie, J. Malik, and J. Puzicha. Shape matching and object recognition using shape contexts. Pattern Analysis and Machine Intelligence, IEEE Transactions on, 24(4):509–522, 2002. [Bro01] Frederick P. Brooks. The Mythical Man-Month, chapter No Silver Bullet - Essence and Accident in Software Engineering, pages 177–203. Addison Wesley Longman Inc., New York, 15., aufl. edition, 2001. [FM05] Stéphane Derrode Sami Dhahbi Faouzi Ghorbel and Rim Mezhoud. Reconstructing with geometric moments. 2005. [Fuk90] K. Fukunaga. Introduction to Statistical Pattern Recognition. Academic Press, 2nd edition, 1990. [FZL+ 07] B. Fu, J.Z. Zhou, Y.H. Li, G.J. Zhang, and C. Wang. Image analysis by modified legendre moments. 40(2):691–704, February 2007. [GBS05] J. M. Geusebroek, G. J. Burghouts, and A. W. M. Smeulders. The amsterdam library of object images. Int. J. Comput. Vision, 1(61):103–112, January 2005. [Hor84] J. D. Horel. Complex principal component analysis : Theory and examples. Journal of Climate and Applied Meteorology, 23:1660–1673, December 1984. [Hu62] M.K. Hu. Visual pattern recognition by moment invariants. 8(2):179–187, February 1962. [KA05] L. Kotoulas and I. Andreadis. Image analysis using moments. Thessaloniki, Greece, 2005. Alexander Technological Educational Institute (ATEI) of Thessaloniki. [KH90] A. Khotanzad and Y. H. Hong. Invariant image recognition by zernike moments. Pattern Analysis and Machine Intelligence, IEEE Transactions on, 12(5):489–497, 1990. [LC04] Yann Lecun and Corinna Cortes. The mnist database of handwritten digits. 2004. [LLE00] L. Latecki, R. Lakamper, and U. Eckhardt. Shape descriptors for non-rigid shapes with a single closed contour. In Proc. IEEE Conf. Computer Vision and Pattern Recognition, volume 2000, pages 424–429, 2000. 79 BIBLIOGRAFÍA [LLP09] S. Li, M. C. Lee, and C. M. Pun. Complex zernike moments features for shape-based image retrieval. 39(1):227–237, 2009. [Low03] D. Lowe. Distinctive image features from scale-invariant keypoints, 2003. [Pea01] Kenneth H. Pearson. On lines and planes of closest fit to systems of points in space. Philosophical Magazine, 2:559–572, 1901. [RLB09] J. Revaud, G. Lavoué, and A. Baskurt. Improving zernike moments comparison for optimal similarity and rotation angle retrieval. IEEE Transactions on Pattern Analysis and Machine Intelligence, 31(4):627–636, 2009. [RPAK88] A.P. Reeves, R.J. Prokop, S.E. Andrews, and F.P. Kuhl. Three-dimensional shape analysis using moments and fourier descriptors. IEEE Transactions on Pattern Analysis and Machine Intelligence, 10(6):937–943, 1988. [Tea80] M.R. Teague. Image analysis via the general theory of moments. 70(8):920–930, August 1980. [TP91] M. A. Turk and A. P. Pentland. Face recognition using eigenfaces. In Computer Vision and Pattern Recognition, 1991. Proceedings CVPR ’91., IEEE Computer Society Conference on, pages 586–591, 1991. [Zer34] Frits Zernike. Physica, volume 1. 1934. [ZSX+ 07] H.Q. Zhu, H.Z. Shu, T. Xia, L.M. Luo, and J.L. Coatrieux. Translation and scale invariants of tchebichef moments. 40(9):2530–2542, September 2007. 80