Conceptos y Desarrollo - pmariniutec/db2-proyecto3 GitHub Wiki
Construcción del índice Rtree
Utilizamos la librería RTree de python para manejar la creación del índice espacial. Creamos un índice de dimensiones igual a las imágenes que estamos procesando (128x128 en este caso).
Algoritmo de busqueda KNN
KNN-Secuencial
Implementamos la búsqueda KNN utilizando una cola de prioridad para mejorar el performance. Para las comparaciones utilizamos la distancia euclideana entre los vectores característicos. La función load_images() itera en la carpeta que almacena las imagenes, procesa cada una dando como output los encodings y los almacena en un array; esto es finalmente utilizado en la función de KNN como data para calcular las comparaciones entre las imagenes.
KNN-Rtree
Utilizamos la función de la librería de RTree para la búsqueda. Se utiliza una función que compara los encodings a travéz de boundings que cada elemento del Rtree almacena.