Estoy leyendo mucho sobre árboles de vocabulario cuando se trata de consultas rápidas para imágenes similares o textos en grandes bases de datos. Pero no pude encontrar ninguna descripción buena (fácil de entender) sobre qué es ese árbol de vocabulario y cómo construir una de las características.¿Qué es un árbol de vocabulario y cómo construir uno?
Respuesta
El árbol de vocabulario es una forma compacta de realizar la recuperación de imágenes. Básicamente, hay tres pasos para implementar este algoritmo, y depende en gran medida de otras técnicas de visión por computadora, p. Ej. Funciones SIFT.
El primer paso es construir un árbol kmeans utilizando descriptores tamiz. Los nodos de hojas de este árbol contienen una "bolsa" de descriptores de tamizado. El segundo paso es construir una base de datos de imágenes usando el árbol de vocabulario que construyes en el primer paso. Puede ver este proceso como cuantizar una imagen en un espacio vectorial. Luego, el tercer paso es consultar la imagen en la base de datos de imágenes. Por supuesto, hay algunas técnicas detalladas, como la lista invertida, etc.
Aquí hay una buena implementación del árbol de vocabulario - libvot. Básicamente sigue los tres pasos que describí arriba. Utiliza la biblioteca de hilos múltiples estándar de C++ 11 para acelerar el proceso de compilación, por lo que se ejecuta bastante rápido.
Aquí está la investigación original paper al respecto. Tiene un gran impacto en la comunidad de visión por computadora estos años.
árbol de vocabulario es algo que se hace por la agrupación de palabras visuales en grupos. La estructura del árbol se aplica para esto, lo que lo convierte en un árbol de vocabulario. El siguiente diagrama aclarará las cosas.
También verifique this:
- 1. ¿Cómo construir un árbol y?
- 2. Cómo construir un árbol de sintaxis abstracta
- 3. Construir un árbol
- 4. ¿Construir un árbol de probabilidad usando php?
- 5. ¿Qué es un gráfico de objetos y cómo serializo uno?
- 6. ¿Qué es un árbol B *?
- 7. Construir un árbol JSON desde rutas materializadas
- 8. ¿Cómo construir un árbol no binario con o sin recursividad?
- 9. Implementaciones de coincidencia de imágenes usando "Reconocimiento escalable con un árbol de vocabulario"
- 10. ¿Cómo puedo construir un árbol genealógico con Perl?
- 11. ¿Qué es un árbol podado y no podado en Weka?
- 12. Cómo construir un árbol de expresiones dinámicas Y O linq en un bucle
- 13. ¿Qué es un árbol sintáctico abstracto/¿Es necesario?
- 14. ¿Cómo puedo construir un árbol usando d3 y su diseño de fuerza?
- 15. ¿Cuál es la diferencia entre un árbol de sintaxis abstracta y un árbol de sintaxis concreta?
- 16. imprime un árbol binario en uno de sus lados
- 17. Construir un árbol desde una matriz plana en PHP
- 18. ¿Qué es una página de árbol B
- 19. ¿Cómo construyo un modelo de lenguaje de gran vocabulario para CMU Sphinx?
- 20. ¿Cuál es la diferencia entre un árbol y un directorio?
- 21. ¿Es posible usar Recursive Descent Parser para verificar la gramática Y construir el árbol de análisis al mismo tiempo?
- 22. ¿Qué es una buena práctica para construir parches de software?
- 23. obtener ID de vocabulario por nombre
- 24. ¿Es O (logn) siempre un árbol?
- 25. ¿Hay un diccionario sobre vocabulario común de programación?
- 26. NSFetchedResultsController - KVO, UITableView y un "Árbol"
- 27. ¿Por qué construir un cubo SSAS?
- 28. ¿Cómo construir un motor de "preguntas relacionadas"?
- 29. ¿Qué es y cómo hacer un WBS?
- 30. ¿Qué es una forma estructurada de construir una consulta MySQL?