Loading
Apuntes
Study Reminders
Support
Text Version

Representaciones de Bag-of-Words y VLAD

Set your study reminders

We will email you at these times to remind you to study.
  • Monday

    -

    7am

    +

    Tuesday

    -

    7am

    +

    Wednesday

    -

    7am

    +

    Thursday

    -

    7am

    +

    Friday

    -

    7am

    +

    Saturday

    -

    7am

    +

    Sunday

    -

    7am

    +

Pasando de la conferencia anterior, ahora hablaremos de cómo describir imágenes enteras hasta ahora hablamos sobre cómo obtener descriptores. Para ciertos puntos clave en imágenes, que podrían estar en varios múltiplos en cada imagen. ¿Cómo agregar estos descriptores para obtener un único descriptor para una imagen? ¿Y por qué necesitamos esto? Hablamos de imagen anónima, cosido, donde intentas emparejar puntos clave. Es posible que no desee coincidir con las propias imágenes. Por ejemplo, en la búsqueda de imágenes o en una tabla, o incluso en la clasificación de imágenes. Como veremos, cuando pasemos por estas diapositivas en esta conferencia, nos centraremos en dos tipos específicos de descriptores. La bolsa de palabras, el descriptor, y otra extensión de ella conocida como el descriptor de la luz. Una vez más, las diapositivas de la conferencia se basan en las conferencias del profesor Yannis en el embrión. Así que hemos hablado hasta ahora de obtener puntos clave de dos vistas diferentes de la misma escena u objeto. Tiene dos vistas diferentes. Los puntos clave se extraen en ambas vistas, se obtienen descriptores de puntos clave en ambas vistas y se coinciden con ellos. Y tal vez jugado a coincidir con la geometría de la configuración entre ellos utilizando métodos, como en un SAC o medio punto hecho, así sucesivamente y así sucesivamente. Pero la pregunta que estamos haciendo aquí es ¿qué pasa si queremos emparejar diferentes instancias de un objeto? El objeto no es más el mismo en la luz más temprana. Era el mismo objeto desde diferentes puntos de vista. Ahora el objeto podría ser completamente diferente en este caso, es un helicóptero, pero completamente dos helicópteros diferentes. No son el mismo objeto en sí. Entonces, ¿cómo emparejar? O cómo buscar por ejemplo, importante, imagine su búsqueda de límite de Google, donde usted va a buscar lamer para arriba el tipo de imágenes. Así que usted publica una imagen y pide al sistema recuperar imágenes similares para usted. How do you do this is what we're going to talk about. Ahora, la principal observación aquí es que las transformaciones de rechazo pueden no funcionar aquí hasta ahora. Si solo querías igualar. Dos objetos o escenas diferentes tomadas desde diferentes perspectivas. Usted podría considerar que uno es rígido. Así que misión de la otra, usted podría tratar de estimar sus parámetros finos, sus parámetros de rotación, o sus parámetros de traducción, pero entonces estos son completamente dos instancias diferentes de un objeto. Puede que no sea una transformación rígida en absoluto. Tan idealmente lo que queremos hacer es ahora ver si podemos descartar completamente la geometría en sí, porque normalmente va a ser una transformación realmente legit. ¿Podemos descartar completamente la idea de la geometría? Tratar de emparejar las imágenes de alguna otra manera más allá de la geometría, y luego tal vez más tarde usando otros métodos, vamos a tratar de traer de vuelta ciertos elementos de la geometría, poco a poco en la mezcla. Así que nuestro primer intento de obtener descriptores de nivel de imagen. Es un método conocido como bolsa de palabras. Un método antiguo se ha utilizado mucho en texto antes, pero vamos a tratar de ver cómo utilizamos estas imágenes. Así que vamos a empezar con un conjunto de muestras, un conjunto de puntos de datos. A continuación, se forma un vocabulario de esos puntos de datos. ¿Qué queremos decir con el vocabulario? Un conjunto de palabras comunes que existen a través de imágenes. Y por último, basado en el vocabulario, vas a conseguir un histograma, que es simplemente una columna de frecuencia de palabras en un determinado documento. En nuestro caso, palabras visuales, en una cierta imagen, tratemos de describir eso con más detalle. Así que si tuviera información de texto, sus muestras serían simplemente frases diferentes. Tus capilares serían las palabras que ocurren en estas frases, todas las palabras posibles que has presentado en tus oraciones. Y por último, para cada una de estas frases, se le ocurrió un histograma de cuántas ocurrencias de una palabra en particular en su vocabulario sucedió en esta frase en particular. Así que para cada una de tus frases, puedes mirar hacia arriba o capilar o un diccionario. Y trata de ver cuántas veces cada palabra en el vocabulario o diccionario se produjo en esta frase en particular, vamos a la pizarra o sacar batalla a las imágenes. Ahora vamos a decir que tienes tres imágenes diferentes en este caso en particular. Así que forma un vocabulario. Entonces, ¿qué significa un vocabulario? Para las imágenes en texto, es quizás simple. Son todas las palabras que ocurren en tus documentos. Pero si tuvieras imágenes, ¿cuál sería tu vocabulario? Así que la forma en que vamos a definir el vocabulario es muy simple. Una vez más, usted toma diferentes partes de cada una de estas imágenes, agruparlas. Y ver cuál de ellas corresponde a algo común. Por ejemplo, podría ser posible que haya seis tipos de palabras visuales que se producen en la primera dimensión, que todo parece similar. Tal vez puedan parecer similares en color, en textura o en cualquier otra apariencia de, uh, el, de la representación que elijas. Del mismo modo, la segunda imagen es, tiene un conjunto de palabras visuales. Y la tercera imagen tiene un conjunto de palabras visuales. Una vez más, definimos las palabras visuales como extrayendo varias partes de una imagen. Por lo tanto, si tiene un conjunto de imágenes, extrae partes de todas esas imágenes y luego intenta sacarlas de alguna manera y luego agruparlas. Veo que estas partes en la imagen parecen tener propiedades similares y las voy a agrupar en una palabra en particular. Veremos esto un poco más claramente sobre las próximas diapositivas. Y una vez que obtienes estas palabras visuales, similar al texto, tienes un histograma de cuántas veces cada una de estas palabras visuales ocurrió en una imagen dada. Ese histograma es lo que se dibuja aquí para cada una de estas tres imágenes. Veamos un ejemplo más real del mundo para entender esto un poco mejor antes de ir allí. ¿Qué podrían ser los usuarios de bolsa de palabras? Se podría utilizar para la recuperación de imágenes, así como la clasificación de imágenes como acabamos de hablar. ¿Porqué? Porque esta es una forma de representar toda una imagen como un solo vector. Veamos esto usando un ejemplo más tangible. Sí. Tenía un ejemplo de imagen y asumamos que esta es la imagen de calidad. Y aquí hay una imagen de un conjunto de datos. Así que podrías imaginar que las imágenes del conjunto de datos son todo tu, uh, repositorio de imágenes que tienes. Y la imagen de calidad es como la imagen de Google, tal donde pones esta imagen. Y estás pidiendo un motor de búsqueda para recuperar todas las imágenes similares a esta imagen. ¿No? Por ejemplo, puede cargar una imagen de gato en cualquier motor de búsqueda y pedir al motor de búsqueda que recupere imágenes de gato similares. Un ejemplo muy similar aquí, supongamos que hay una quinta imagen en su imagen de conjunto de datos, que tiene una ocurrencia de similar, uh, de la estructura similar. Ahora vamos a ver qué pasaría antes y cómo cambiaríamos las cosas ahora. Audio, tomaríamos puntos clave en cada una de estas imágenes. Descriptores alrededor de estos puntos clave en cada una de estas imágenes y tratar de hacer una coincidencia de marca entre los descriptores en ambas imágenes. Y esto es obviamente un proceso de toma de tiempo, porque si usted tuviera muchos puntos clave, muchos descriptores en cada imagen, lo ideal sería tener que hacer una mejor coincidencia inteligente entre cada número y la primera dimensión versus cada número en la imagen de referencia. Esto puede ser computacionalmente caro. Si tuviera otra imagen, tendría que repetir el mismo proceso para tantas veces entre la imagen y la segunda imagen de referencia y así sucesivamente para todas las imágenes de referencia. Entonces, ¿cómo desea resolver este problema? Entonces, ¿qué vas a decir ahora es que si hay descriptores rojos que son similares, que coincidirían entre las dos imágenes en lugar de emparejarlas al descubierto entre la imagen de crédito y la imagen de referencia. Intentemos asumir que descriptores similares de cualquier manera corresponderán a representaciones similares en ese espacio de representación en una determinada métrica, digamos la métrica euclidiana. ¿No? Así que un grupo de palabras o regiones visuales que son similares entre sí probablemente tendrían representaciones similares y todas ellas agrupadas en el espacio de representación. Del mismo modo, para aquellas regiones Mudd con azul y las regiones, Margaret, derecha. Son similares y probablemente coincidirán con el final del espacio de presentación. ¿Cómo utilizamos esto? Así que lo que diríamos ahora es que, por lo que esto es sólo para decir que cómo estas representaciones coinciden de nuevo. Así que lo que haremos ahora es llegar a una representación, una representación común para todos los descriptores similares. ¿Cómo lo haríamos nosotros? Podríamos simplemente tomar todo su depósito de imágenes o imágenes de entrenamiento. Grandes palabras visuales de ellos, que son comunes entre sí y simplemente obtienen su significado en ese espacio. Eso se convierte en la palabra visual correspondiente a todas esas palabras visuales en el repositorio de imágenes para entrenamiento. Y nosotros sólo, por lo que hará este proceso fuera de línea antes de que se inicie el proceso de recuperación. Por lo tanto, podría construir sus palabras visuales fuera de línea y mantenerlas almacenadas y listas cuando su proceso de búsqueda comience realmente. Por lo tanto, estas salas sólo se almacenan en una imagen de consulta, se toman los descriptores correspondientes a los puntos clave de su imagen de consulta, y ahora simplemente se corresponden con la palabra visual, que representa la media de tablas visuales similares en las otras películas que utilizan. No es necesario que vaya emparejado con cada descriptor en su referencia ya lo haría. Usted tendría un conjunto de palabras visuales que son comunes a través de su repositorio de imágenes. Sólo es necesario que coincida con ellos ahora para poder obtener sus respuestas. Esto hace que este proceso sea muy factible de hacer, así como muy eficaz no hay emparejamiento por pares requerido. Y sus palabras visuales ahora actúan como un proxy para sus descriptores en su repositorio. Ahora, vamos a ver esto de una manera más, uh, más bien definida. Así que imaginemos que su imagen ahora está representada por un rector Zed, perteneciente al parquet de arte, donde K es el tamaño del libro de códigos o el número de palabras visuales que elijas, que serían aproximadamente un metro que un usuario establecería para un conjunto de datos en particular, cada elemento de Zed, que está vivo. Está representado nosotros. W I N I w I is a fixed week or visual word. Puede elegir asignar un peso. Si no tienes un peso, solo podrían tener pesos uniformes. Y en, I es el número de apariciones de esa palabra en particular en esta imagen de consulta. Sea eso. Así que WWI es, es un peso por palabra visual, que es opcional. Y yo es el número de ocurrencias de esa palabra en este hedor. Así que dado un conjunto de imágenes en sus imágenes de referencia de repositorio, que están representadas por R K cross N por una capitalización RK trap prop cross N recordar, van a ser palabras visuales clave, y en tales imágenes para cada imagen, usted tendría un vector de dimensión gay. Así, y entonces en tales imágenes se convierte en K cruz N y para una imagen de calidad. Usted simplemente compararía las similitudes entre sus imágenes de calidad, la representación del vector. Así, que va a contar el número de palabras visuales en la imagen de consulta y el número de palabras visuales en cada una de las imágenes de referencia. Usted simplemente toma un producto de punto o la distancia de co-signo entre estos dos y usted consigue un conjunto de puntuaciones. Usted sot ordenar sus puntuaciones en orden descendente, y eso le da el mejor partido seguido por el siguiente mejor partido. Así que en y así sucesivamente. Tenga en cuenta aquí que cuando tomamos una distancia de co-firma basada en ver al Dr. Arctic recordar aquí, lo que estamos haciendo como Dr. es que usted tomaría cada columna de Zac, que correspondería a una imagen específica y usted está tomando un producto de punto individual de. Imagen del Dr. Phillips con este gradiente. Es lindo. La segunda imagen de referencia con el, con el acuario, es lindo. Así que en y así sucesivamente. ¿Y cuál tiene el producto de documento más alto? Esa imagen es lo que recomendarías como el partido más cercano. Usted tiene una imagen de calidad, sólo para señalar a usted una observación más general que. Si estás pensando un doctorado, es similar a conseguir la distancia euclidiana, la similitud que se mide usando un producto doc o una distancia de cosigno. La causa I en similitud es complementario al uso de la distancia euclidiana blanco porque Z menos Q todo el calamar no se dan por arriba. También ser escrito como dos en uno. A veces nos vamos a saltar, mirar, no es tarea. Lo que significa. Algo más cercano como similitud de co-signo, tendremos una distancia euclidiana baja, una alta similitud de co-signo será una baja distancia euclidiana. Así que en algún sentido, estas dos métricas de comparar similitudes o distancias son de cortesía e importante observación aquí es. Cuando K es mucho, mucho mayor que Pete con PS, el número de características por imagen en promedio, recuerde K es el número de palabras visuales que usted tiene en su libro de código, que vamos a utilizar para encontrar. Y P es el número promedio de características que tenemos en una imagen dada se resolverá con, uh, con ejemplos, como tamizar que eso podría ser varios cientos, si K es mucho, mucho mayor que P. Entonces Z y Q van a ser manchas blancas. Si tienes mil palabras visuales y dices un centenar en cada imagen, entonces obviamente va a haber bastantes, al menos 900 en una imagen dada que tendrá cero recuento. Debido a que estas palabras visuales no existen en este caso de número de imagen, el número de palabras visuales y B es el número de características de una imagen determinada. Así que si K es mucho, mucho mayor que P tanto zip como Q van a ser escasos. Así que para hacer la competencia más eficaz aquí. Pero aparte de comprobar si una palabra no es una imagen dada, que es lo que normalmente haría. Comprobaremos cada palabra en una imagen determinada, pero entonces toda la imagen podría ser una representación muy escasa del posible conjunto de palabras. Podemos hacer frente a este problema y comprobar qué imágenes contienen una palabra en particular. Y ahora veremos que esto puede ser una manera más eficaz. Para calcular la similitud en el escenario. Veamos esto un poco más intuitivamente. Así que imaginemos ahora que tienes una imagen rápida, que tiene palabras visuales, 54 67 y 72. Estos son York. Palabras visuales. Recuerda que tienes un montón de palabras visuales y cada imagen tiene un cierto número de ocurrencias de cada una de estas palabras visuales. Vamos a asumir. Ahora que sólo tiene una aparición de palabras visuales, 54 67 y 72 en una imagen de consulta dada, 54 67 y 72 son sólo números aleatorios. Usted podría haber tomado cualquier otro número. Eso es sólo para explicar. Ahora, si tiene un repositorio de imágenes, ¿De qué desea recuperar? Digamos que están dadas por un conjunto de números en su conjunto de datos. Así que no estás tratando de sacar esto. Así que miras cada una de estas imágenes, veamos la quinta imagen en tu repositorio tenía la palabra número 72, la séptima palabra número 60, la séptima palabra y la cuarta palabra. Mientras que la 13ª imagen tiene sólo la palabra 67. La imagen número 17 tiene sólo la palabra número 72. La imagen de la decimonovena imagen tiene la palabra 67 y la 54 y así sucesivamente. Ahora, ¿qué haces? Así que usted toma una de estas palabras visuales, que estaba ocurriendo en su imagen de crédito, y usted trató de ver cuál de sus imágenes de consulta. También bombo esa palabra visual en particular, y añades un recuento para esa imagen en particular. Bueno. Del mismo modo, 19, sería un get, obtener un recuento de un 21 obtendrían un recuento de uno para estas imágenes. Así que estás tratando de ver, no estás tratando de comparar cuál de estas imágenes de repositorio contienen la misma palabra, que está ahí en tu imagen de consulta. Del mismo modo, harías esto por la palabra 67, y obtendrás un aumento en el recuento para estas dos imágenes, pero no aumento en un aumento en el recuento para el 13 y el 21 y lo siento, 21st acaba de tener un verde no hay aumento en el recuento, pero la imagen número 13 tiene un aumento en el recuento. Ahora, de manera similar, lo hará por la palabra visual roja o la 72 palabra visual. Y en este momento, la quinta imagen consigue un recuento más. La 17ª imagen recibe un nuevo, uh, cuenta añadido aquí. Y la 22ª imagen consigue un nuevo recuento añadido aquí. Así que es todo de esto que la quinta imagen tiene el recuento más alto con respecto a la imagen de calidad. Y ahora usted clasifica el orden. Todas las imágenes de repositorio basadas en una lista corta con respecto a estas palabras visuales. Así que por fin encontrarás que la quinta imagen tiene el mejor partido. El segundo mejor partido es la decimonovena imagen con dos palabras visuales comunes, y puedes repetir este proceso para poder conseguir tu mejor partido desde tu repositorio de imágenes. Y esto sería conocido como el problema de la recuperación de la imagen. Vamos a tratar de preguntar cómo se va a extender la espalda de las palabras a la clasificación. No, tal vez se habló de recuperación, pero ahora queremos clasificar una imagen dada como perteneciente a una escena en particular. Por ejemplo, en la imagen anterior que vimos, tal vez ese edificio tiene un nombre particular y hay muchos monumentos que tienes, y quieres clasificar una imagen como perteneciente a un monumento en particular. Así que quiere tratar esto ahora como un problema de clasificación. ¿Cómo adaptas esto para la clasificación? La forma en que lo harás es una vez más, representas una imagen de un vector Zed, perteneciente al estacionamiento de arte, donde el número de casos de las palabras visuales, muy similar a como lo hicimos para el problema de recuperación. Pero una vez que hagas esto, ahora puedes usar un clasificador. Para poder clasificarlas, la frecuencia de las palabras visuales de cada imagen se convierte ahora en una representación vectorial de un conjunto de palabras visuales, un histograma de palabras visuales. Y usted tendría un conjunto de imágenes similares en sus datos de entrenamiento. Que también habría tenido una etiqueta de clase asociada a ellos porque recuerda la clasificación como un problema de aprendizaje supervisado. Así que ahora usted podría utilizar una clasificación como por ejemplo, la base de la Marina o las máquinas de vectores de apoyo o cualquier otro clasificador para la materia. Si estás utilizando la base naval. Usted estimaría la máxima probabilidad posterior de una clase C dada una imagen, Zed, asumiendo que las características son independientes. Asumiendo la presencia o el recuento de cada palabra visual es independiente. Simplemente ejecutaría un clasificador de base de la Marina en este escenario en particular. Y recuerde que las bahías de nave se convertirían en un clasificador lineal. Podría hacerlo utilizando una máquina de vectores de soporte. Puede utilizar una función de kernel adecuada en una máquina de vector de soporte para realizar la clasificación. O para ese asunto, se podría utilizar cualquier otro clasificador y extinción de la bolsa de palabras se conoce como el vector de los descriptores agregados localmente o V luz. Es muy similar al reverso de las palabras con una pequeña diferencia, pero una diferencia significativa en las palabras, ya que sólo vimos le daría una escala de frecuencia de cuántas veces una palabra visual en particular. Que se obtiene por agrupación, uh, una gran cantidad de regiones en sus imágenes de limpieza o repositorio de imágenes, cuántas veces cada una de esas palabras visuales ocurrió en la imagen de equidad. Así que en cierto sentido, esto le da información limitada. Usted no tiene una geometría aquí, o usted no tiene lo que eran las regiones exactas en su imagen de consulta. Vas a correlacionarlos innovando a una palabra visual común, que es el promedio de palabras visuales similares en tu repositorio. En el instante de Vielight. Lo que haces eres de nuevo, tienes palabras visuales, todo eso sigue siendo el mismo, pero ahora tienes, en lugar de una escala de frecuencia, tienes un vector por palabras visuales, que mira hasta qué punto cada una de estas características en tu imagen de consulta son de la palabra visual. Así que tiene una palabra visual, que habría obtenido por grupos de agrupación de. Características en sus imágenes de entrenamiento ahora, dada una nueva característica en su imagen de calidad. Se busca lo lejos que es de la palabra visual, se conseguiría un vector residual. Similar. Usted toma otra característica que está mapeada a la misma palabra ritual y ver qué tan lejos está con respecto a la palabra visual. Y se suman todos los residuos y se conseguiría un residuo de vector, que es la suma de todas las sílabas que se mapean a la palabra visual que corresponde a palabra visual digital. Así que ya no es una escala de frecuencia. Es un vector de hasta dónde. Otras características que se correlacionan con esta palabra visual son en cada uno. Esto le da un poco más de información que podría ser más eficaz. Veamos esto un poco más puramente. Si teníamos una bolsa de palabras y una presentación, dada una imagen de color, que es una entrada RGB de tres canales, primero se convirtió a la escala de grises. Usted podría adaptar de nuevo de las palabras a un color también, está tomando un ejemplo más simple aquí. Así que una vez que usted tiene eso, usted consigue un conjunto de decir mil características y se convierte que decir a una dimensión. Si tuvieras mil. Puntos clave. Usted convierte eso a un 20 dimensiones, descriptores de sift para cada uno de esos mil puntos clave. Entonces usted hace un elemento sabio en la codificación para decir cien palabras visuales. Supongamos que tenías cien palabras visuales. Tomas cada una de esas mil características y las mapeas a un centenar de palabras visuales. Así que usted tendría caso tales palabras visuales y usted terminaría contando con ellos, contando las ocurrencias de cada una de esas mil características en. Con respecto a una de estas cien tablas visuales, obtendrás un conjunto de frecuencias. Entonces usted podría hacer un muestreo global y la normalización de Alto de ese vector final del histograma y obtener su bolsa final de palabras y una presentación. Por otro lado con Vilight, harás lo mismo. Puede convertir la entrada RGB de tres canales en una escala de grises de un canal. Una vez más, obtendrá mil características en su imagen de consulta. Convertir eso a una 20 y representaciones dimensionales para cada una de esas mil características, volverías a asignar cada una de esas mil características a una de palabras visuales clave. Pero aquí es donde viene la diferencia de que ahora no vas a conseguir una representación de escalador ni un histograma. Vas a conseguir un vector residual para cada uno. Uh, de esas palabras visuales de escala, lo que significa que ahora va a ser una cruz de 28 K indica otra, uh, representación en lugar de una representación emocional clara, porque para cada palabra visual, usted va a ver para todas las características que se han correlacionado o todos los puntos clave que se han correlacionado con una determinada palabra visual. ¿Cuál fue el residuo para cada dimensión para cada una de esas 20 dimensiones? Y finalmente conseguirás una representación de un 28 en tortas, que harías normalizar y usar para la práctica y para normalizar es simplemente para asegurar que el vector se convierta en una unidad. No, yo sé que soy uno. Y ese es el descriptor de Vielight para concluir esta conferencia, por favor, lea el capítulo 14.3 y 14.4 de Cylus esquís libro y algo para que usted piense. Al final de esta conferencia es como la bolsa de palabras está conectada al algoritmo k-means clustering? Ya, creo, ya hablamos brevemente durante la conferencia, pero piensa en ello y responde con más cuidado, suponiendo que comprendiste que la bolsa de palabras está conectada a k-means clustering. ¿Cómo son las extinciones de la agrupación en clúster de los juegos, tales como la k-medios jerárquicos o la agrupación de los medios k-significa relevantes para la bolsa de palabras? Problema. Su sugerencia es buscar lo que se conoce como pieza de vocabulario. Y aquí hay algunas referencias para esta conferencia.