Articulo de referencia

Categorización de objetos a partir de la búsqueda de imágenes

En visión artificial , la categorización de objetos a partir de búsquedas de imágenes consiste en entrenar un clasificador para reconocer categorías de objetos utilizando únicam...

En visión artificial , la categorización de objetos a partir de búsquedas de imágenes consiste en entrenar un clasificador para reconocer categorías de objetos utilizando únicamente imágenes obtenidas automáticamente mediante un motor de búsqueda de Internet . Idealmente, la recopilación automática de imágenes permitiría entrenar clasificadores con solo los nombres de las categorías como entrada. Este problema está estrechamente relacionado con el de la recuperación de imágenes basada en contenido (CBIR), cuyo objetivo es obtener mejores resultados de búsqueda de imágenes en lugar de entrenar un clasificador para el reconocimiento de imágenes.

Tradicionalmente, los clasificadores se entrenan utilizando conjuntos de imágenes etiquetadas manualmente. Recopilar dichos conjuntos de imágenes suele ser un proceso muy laborioso y que consume mucho tiempo. El uso de motores de búsqueda de Internet para automatizar el proceso de adquisición de grandes conjuntos de imágenes etiquetadas se ha descrito como una forma potencial de facilitar enormemente la investigación en visión artificial. [ 1 ]

Desafíos

Imágenes no relacionadas

Un problema al usar los resultados de búsqueda de imágenes en Internet como conjunto de entrenamiento para un clasificador es el alto porcentaje de imágenes no relacionadas entre los resultados. Se ha estimado que, cuando se consulta un motor de búsqueda como Google Imágenes con el nombre de una categoría de objeto (como avión ), hasta el 85 % de las imágenes devueltas no están relacionadas con la categoría. [ 1 ]

Variabilidad intraclase

Otro desafío que plantea el uso de resultados de búsqueda de imágenes en Internet como conjuntos de entrenamiento para clasificadores es la gran variabilidad que existe dentro de las categorías de objetos, en comparación con las categorías que se encuentran en conjuntos de datos etiquetados manualmente, como Caltech 101 y Pascal . Las imágenes de objetos pueden variar ampliamente en varios factores importantes, como la escala, la pose, la iluminación, la cantidad de objetos y el grado de oclusión.

enfoque pLSA

En un artículo de 2005 de Fergus et al., [ 1 ] el pLSA (análisis semántico latente probabilístico) y extensiones de este modelo se aplicaron al problema de la categorización de objetos a partir de la búsqueda de imágenes. El pLSA se desarrolló originalmente para la clasificación de documentos , pero desde entonces se ha aplicado a la visión por computadora . Parte del supuesto de que las imágenes son documentos que se ajustan al modelo de bolsa de palabras .

Modelo

Así como los documentos de texto se componen de palabras, cada una de las cuales puede repetirse dentro del documento y entre documentos, las imágenes pueden modelarse como combinaciones de palabras visuales . Del mismo modo que el conjunto completo de palabras de texto se define mediante un diccionario, el conjunto completo de palabras visuales se define en un diccionario de palabras clave .

pLSA también divide los documentos en temas . Así como conocer el o los temas de un artículo permite hacer buenas conjeturas sobre el tipo de palabras que aparecerán en él, la distribución de palabras en una imagen depende de los temas subyacentes. El modelo pLSA nos dice la probabilidad de ver cada palabra.w{\displaystyle w}dada la categoríad{\displaystyle \displaystyle d}en términos de temasz{\displaystyle \displaystyle z}:

PAG(w|d)=z=1ZPAG(w|z)PAG(z|d){\displaystyle \displaystyle P(w|d)=\sum _ {z=1}^{Z}P(w|z)P(z|d)}

Una suposición importante que se hace en este modelo es quew{\displaystyle \displaystyle w}yd{\displaystyle \displaystyle d}son condicionalmente independientes dadoz{\displaystyle \displaystyle z}Dado un tema, la probabilidad de que una palabra determinada aparezca como parte de ese tema es independiente del resto de la imagen. [ 2 ]

Entrenar este modelo implica encontrarPAG(w|z){\displaystyle \displaystyle P(w|z)}yPAG(z|d){\displaystyle \displaystyle P(z|d)}que maximiza la probabilidad de las palabras observadas en cada documento. Para ello, se utiliza el algoritmo de maximización de la esperanza , con la siguiente función objetivo :

L=d=1Dw=1WPAG(w|d)norte(w|d){\displaystyle \displaystyle L=\prod _ {d=1}^{D}\prod _ {w=1}^{W}P(w|d)^{n(w|d)}}

Solicitud

ABS-pLSA

El pLSA de posición absoluta (ABS-pLSA) adjunta información de ubicación a cada palabra visual localizándola en uno de los X puntos de la imagen. Aquí,incógnita{\displaystyle \displaystyle x}representa en cuál de los contenedores cae la palabra visual. La nueva ecuación es:

PAG(w|d)=z=1ZPAG(w,incógnita|z)PAG(z|d){\displaystyle \displaystyle P(w|d)=\sum _ {z=1}^{Z}P(w,x|z)P(z|d)}

PAG(w,incógnita|z){\displaystyle \displaystyle P(w,x|z)}yPAG(d){\displaystyle \displaystyle P(d)}se puede resolver de manera similar al problema pLSA original, utilizando el algoritmo EM.

Un problema de este modelo es que no es invariante a la traslación ni a la escala . Dado que las posiciones de las palabras visuales son absolutas, cambiar el tamaño del objeto en la imagen o moverlo tendría un impacto significativo en la distribución espacial de las palabras visuales en diferentes compartimentos.

TSI-pLSA

pLSA invariante a la traslación y a la escala (TSI-pLSA). Este modelo extiende pLSA añadiendo otra variable latente, que describe la ubicación espacial del objeto objetivo en una imagen. Ahora, la posiciónincógnita{\displaystyle \displaystyle x}La posición de una palabra visual se da en relación con la ubicación de este objeto, en lugar de como una posición absoluta en la imagen. La nueva ecuación es:

PAG(w,incógnita|d)=z=1Zdo=1doPAG(w,incógnita|do,z)PAG(do)PAG(z|d){\displaystyle \displaystyle P(w,x|d)=\sum _ {z=1}^{Z}\sum _ {c=1}^{C}P(w,x|c,z)P(c)P(z|d)}

Nuevamente, los parámetrosPAG(w,incógnita|do,z){\displaystyle \displaystyle P(w,x|c,z)}yPAG(d){\displaystyle \displaystyle P(d)}se puede resolver utilizando el algoritmo EM .PAG(do){\displaystyle \displaystyle P(c)}puede asumirse que se trata de una distribución uniforme.

Implementación

Seleccionar palabras

Las palabras en una imagen se seleccionaron utilizando 4 detectores de características diferentes: [ 1 ]

Utilizando estos cuatro detectores, se detectaron aproximadamente 700 características por imagen. Estas características se codificaron como descriptores de transformación de características invariantes a la escala y se cuantificaron vectorialmente para que coincidieran con una de las 350 palabras contenidas en un diccionario de códigos. El diccionario de códigos se calculó previamente a partir de características extraídas de un gran número de imágenes que abarcan numerosas categorías de objetos.

Posibles ubicaciones de objetos

Una pregunta importante en el modelo TSI-pLSA es cómo determinar los valores de la variable aleatoria.do{\displaystyle \displaystyle C}puede tomar. Es un vector de 4 componentes, cuyos componentes describen el centroide del objeto, así como las escalas x e y que definen un cuadro delimitador alrededor del objeto, por lo que el espacio de valores posibles que puede tomar es enorme. Para limitar el número de posibles ubicaciones del objeto a un número razonable, primero se realiza un pLSA normal en el conjunto de imágenes, y para cada tema se ajusta un modelo de mezcla gaussiana sobre las palabras visuales, ponderado porPAG(w|z){\displaystyle \displaystyle P(w|z)}Hasta .K{\displaystyle \displaystyle K}Se prueban las gaussianas (que permiten múltiples instancias de un objeto en una sola imagen), dondeK{\displaystyle \displaystyle K}es una constante.

Actuación

Los autores del artículo de Fergus et al. compararon el rendimiento de los tres algoritmos pLSA (pLSA, ABS-pLSA y TSI-pLSA) en conjuntos de datos seleccionados manualmente e imágenes obtenidas de búsquedas de Google. El rendimiento se midió como la tasa de error al clasificar las imágenes de un conjunto de prueba como pertenecientes a la imagen o que contenían solo el fondo.

Como era de esperar, el entrenamiento directo con datos de Google produce tasas de error más altas que el entrenamiento con datos preparados. [ 1 ] En aproximadamente la mitad de las categorías de objetos probadas, ABS-pLSA y TSI-pLSA funcionan significativamente mejor que el pLSA regular, y en solo 2 de las 7 categorías, TSI-pLSA funciona mejor que los otros dos modelos.

ÓPTIMOL

OPTIMOL (recopilación automática de imágenes en línea mediante aprendizaje incremental de modelos) aborda el problema del aprendizaje de categorías de objetos a partir de búsquedas de imágenes en línea mediante el aprendizaje de modelos y la búsqueda simultánea. OPTIMOL es un modelo iterativo que actualiza su modelo de la categoría de objeto objetivo mientras recupera simultáneamente imágenes más relevantes. [ 3 ]

Marco general

OPTIMOL se presentó como un marco iterativo general que es independiente del modelo específico utilizado para el aprendizaje de categorías. El algoritmo es el siguiente:

  • Descarga un gran conjunto de imágenes de Internet buscando una palabra clave.
  • Inicializa el conjunto de datos con imágenes semilla.
  • Si bien se necesitan más imágenes en el conjunto de datos:
    • Aprende el modelo con las imágenes del conjunto de datos añadido más recientemente.
    • Clasifique las imágenes descargadas utilizando el modelo actualizado.
    • Agregar imágenes aceptadas al conjunto de datos

Cabe destacar que en cada ronda de aprendizaje solo se utilizan las imágenes añadidas más recientemente. Esto permite que el algoritmo se ejecute con una cantidad arbitrariamente grande de imágenes de entrada.

Modelo

Las dos categorías (objeto objetivo y fondo) se modelan como procesos de Dirichlet jerárquicos (HDP). Al igual que en el enfoque pLSA, se supone que las imágenes pueden describirse con el modelo de bolsa de palabras . HDP modela las distribuciones de un número no especificado de temas entre las imágenes de una categoría y entre categorías. La distribución de temas entre las imágenes de una sola categoría se modela como un proceso de Dirichlet (un tipo de distribución de probabilidad no paramétrica ). Para permitir que los temas se compartan entre clases, cada uno de estos procesos de Dirichlet se modela como una muestra de otro proceso de Dirichlet. HDP fue descrito por primera vez por Teh et al. en 2005. [ 4 ]

Implementación

Inicialización

El conjunto de datos debe inicializarse con un lote original de imágenes que sirvan como buenos ejemplos de la categoría de objeto que se desea aprender. Estas imágenes pueden recopilarse automáticamente, utilizando la primera página de imágenes que devuelve el motor de búsqueda (que suelen ser mejores que las imágenes posteriores). Como alternativa, las imágenes iniciales pueden recopilarse manualmente.

Aprendizaje de modelos

Para aprender los distintos parámetros del HDP de forma incremental, se utiliza el muestreo de Gibbs sobre las variables latentes. Este se lleva a cabo después de incorporar cada nuevo conjunto de imágenes al conjunto de datos. El muestreo de Gibbs consiste en tomar muestras repetidamente de un conjunto de variables aleatorias para aproximar sus distribuciones. El muestreo implica generar un valor para la variable aleatoria en cuestión, basándose en el estado de las demás variables aleatorias de las que depende. Con suficientes muestras, se puede obtener una aproximación razonable del valor.

Clasificación

En cada iteración,PAG(z|do){\displaystyle \displaystyle P(z|c)}yPAG(incógnita|z,do){\displaystyle \displaystyle P(x|z,c)}se puede obtener a partir del modelo aprendido después de la ronda anterior de muestreo de Gibbs, dondez{\displaystyle \displaystyle z}es un tema,do{\displaystyle \displaystyle c}es una categoría, yincógnita{\displaystyle \displaystyle x}es una sola palabra visual. La probabilidad de que una imagen pertenezca a una determinada clase es, entonces:

PAG(I|do)=ijPAG(incógnitai|zj,do)PAG(zj|do){\displaystyle \displaystyle P(I|c)=\prod _{i}\sum _{j}P(x_{i}|z_{j},c)P(z_{j}|c)}

Esto se calcula para cada nueva imagen candidata en cada iteración. La imagen se clasifica dentro de la categoría con mayor probabilidad.

Adición al conjunto de datos y al "conjunto de caché".

Sin embargo, para poder ser incorporada al conjunto de datos, una imagen debe cumplir una condición más estricta:

PAG(I|doF)PAG(I|dob)>λAdobλRdobλRdoFλAdoFPAG(dob)PAG(doF){\displaystyle \displaystyle {\frac {P(I|c_{f})}{P(I|c_{b})}}>{\frac {\lambda _{Ac_{b}}-\lambda _{Rc_{b}}}{\lambda _{Rc_{f}}-\lambda _{Ac_{f}}}}{\frac {P(c_{b})}{P(c_{f})}}}

DóndedoF{\displaystyle \displaystyle c_{f}}ydob{\displaystyle \displaystyle c_{b}}son las categorías de primer plano (objeto) y fondo, respectivamente, y la relación de constantes describe el riesgo de aceptar falsos positivos y falsos negativos. Se ajustan automáticamente en cada iteración, siendo el costo de un falso positivo mayor que el de un falso negativo. Esto garantiza la recopilación de un conjunto de datos de mejor calidad.

Una vez que una imagen es aceptada al cumplir con el criterio anterior y se incorpora al conjunto de datos, sin embargo, debe cumplir con otro criterio antes de ser incorporada al conjunto de imágenes que se utilizará para el entrenamiento. Este conjunto está diseñado para ser un subconjunto diverso del conjunto de imágenes aceptadas. Si el modelo se entrenara con todas las imágenes aceptadas, podría especializarse cada vez más, aceptando solo imágenes muy similares a las anteriores.

Actuación

El rendimiento del método OPTIMOL se define por tres factores:

  • Capacidad para recopilar imágenes : Se ha comprobado que OPTIMOL puede recopilar automáticamente un gran número de buenas imágenes de la web. El tamaño de los conjuntos de imágenes recuperados por OPTIMOL supera al de grandes conjuntos de imágenes etiquetadas manualmente para las mismas categorías, como los que se encuentran en Caltech 101 .
  • Precisión de clasificación : La precisión de clasificación se comparó con la precisión mostrada por el clasificador obtenido mediante los métodos pLSA mencionados anteriormente. Se descubrió que OPTIMOL logró una precisión ligeramente superior, alcanzando un 74,8 % en 7 categorías de objetos, en comparación con el 72,0 %.
  • Comparación con el aprendizaje por lotes : Una pregunta importante a abordar es si el aprendizaje incremental de OPTIMOL le otorga una ventaja sobre los métodos tradicionales de aprendizaje por lotes, cuando todo lo demás del modelo se mantiene constante. Cuando el clasificador aprende de forma incremental, seleccionando las siguientes imágenes en función de lo aprendido de las anteriores, se observan tres resultados importantes:
    • El aprendizaje incremental permite a OPTIMOL recopilar un mejor conjunto de datos.
    • El aprendizaje incremental permite a OPTIMOL aprender más rápido (descartando imágenes irrelevantes).
    • El aprendizaje incremental no afecta negativamente la curva ROC del clasificador; de hecho, el aprendizaje incremental produjo una mejora.

Categorización de objetos en la recuperación de imágenes basada en contenido

Normalmente, las búsquedas de imágenes solo utilizan el texto asociado a las imágenes. El problema de la recuperación de imágenes basada en contenido radica en mejorar los resultados de búsqueda al considerar la información visual contenida en las propias imágenes. Varios métodos de recuperación de imágenes basada en contenido utilizan clasificadores entrenados con los resultados de la búsqueda para refinarla. En otras palabras, la categorización de objetos a partir de la búsqueda de imágenes es un componente del sistema. OPTIMOL, por ejemplo, utiliza un clasificador entrenado con imágenes recopiladas durante iteraciones anteriores para seleccionar imágenes adicionales para el conjunto de datos resultante.

Algunos ejemplos de métodos CBIR que modelan categorías de objetos a partir de búsquedas de imágenes son:

  • Fergus et al., 2004 [ 5 ]
  • Berg y Forsyth, 2006 [ 6 ]
  • Yanai y Barnard, 2006 [ 7 ]

Véase también

Referencias

  1. 1 2 3 4 5 Fergus, R.; Fei-Fei, L.; Perona, P.; Zisserman, A. (2005). "Learning Object Categories from Google Image Search" (PDF) . Proc. IEEE International Conference on Computer Vision . Archivado del original (PDF) el 9 de junio de 2007. Recuperado el 16 de enero de 2008 .
  2. Hofmann, Thomas (1999). "Análisis semántico latente probabilístico" (PDF) . Incertidumbre en la inteligencia artificial . Archivado del original (PDF) el 10 de julio de 2007.
  3. Li, Li-Jia; Wang, Gang; Fei-Fei, Li (2007). "OPTIMOL: Recopilación automática de imágenes en línea mediante aprendizaje de modelos incremental" (PDF) . Actas de la Conferencia IEEE sobre Visión por Computadora y Reconocimiento de Patrones . Archivado del original (PDF) el 9 de junio de 2007. Consultado el 16 de enero de 2008 .
  4. Teh, Yw; Jordan, MI; Beal, MJ; Blei, David (2006). "Procesos jerárquicos de Dirichlet" (PDF) . Journal of the American Statistical Association . 101 (476): 1566. CiteSeerX 10.1.1.5.9094 . doi : 10.1198/016214506000000302 . S2CID 7934949 .  
  5. Fergus, R.; Perona, P.; Zisserman, A. (2004). "Un filtro de categoría visual para imágenes de Google" (PDF) . Actas de la 8.ª Conferencia Europea sobre Visión por Computadora .
  6. Berg, T.; Forsyth, D. (2006). "Animales en la web". Proc. Computer Vision and Pattern Recognition . doi : 10.1109/CVPR.2006.57 .
  7. Yanai, K; Barnard, K. (2005). "Recopilación probabilística de imágenes web" . Taller ACM SIGMM sobre recuperación de información multimedia .