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.