Aquí hay algunos temas que son muy útiles sobre cómo encontrar imágenes similares.OpenCV/SURF ¿Cómo generar una imagen hash/huella digital/firma fuera de los descriptores?
Lo que quiero hacer es conseguir una huella digital de una imagen y encontrar la misma imagen en diferentes fotos tomadas por una cámara digital. El algoritmo de SURF parece ser la mejor manera de ser independiente en escala, ángulo y otras distorsiones.
estoy usando OpenCV con el algoritmo SURF para extraer características de la imagen de la muestra sucesivamente. Ahora me pregunto cómo convertir todos estos datos de funciones (posición, laplacian, tamaño, orientación, arpillera) en una huella digital o hash.
Esta huella digital se almacena en una base de datos y una consulta de búsqueda debe ser capaz de comparar esa huella digital con una huella digital de una foto con casi las mismas características.
Actualización:
Parece que no hay manera de convertir todos los vectores de descriptores en un simple hash. Entonces, ¿cuál sería la mejor manera de almacenar los descriptores de imagen en la base de datos para consultas rápidas?
Would Vocabulario Árboles ser una opción?
estaría muy agradecido por cualquier ayuda.
El código realiza lo que se llama juego "vecino más cercano" - tomando el descriptor (un vector de tamaño N) y comparándolo con un conjunto de otros vectores de tamaño N (esto puede ser calculando la distancia euclidiana entre ellos o cualquier otra medida de distancia) y seleccionando el que está más cerca. El ingenuo en el nombre significa que el vector se compara con TODOS los demás vectores. Hay otros algoritmos que usan el vecino más aproximado aproximado que son menos precisos pero más eficientes. – elijah
Para abreviar: no se puede hacer una función hash de las imágenes (lo cual es demasiado peligroso y presuntuoso). Puede consultar la literatura para la clasificación de vecino más cercano o las medidas de similitud de imagen. – elijah
De acuerdo, ¿cuál sería la mejor forma de almacenar cualquier consulta que los descriptores de imágenes? – dan