0

Мне было интересно, как создать базу данных отпечатков пальцев. Если отпечатки пальцев хранятся в виде изображений, как вы сравниваете изображения в базе данных или создаете систему поиска изображений, например, TinEye?Создание базы данных отпечатков

Я знаю, что это большой вопрос, но я просто ищу отправную точку. Можно ли это сделать с использованием библиотек Python/Django и MySQL?

ответ

1

Python Imaging Library, вероятно, лучшая библиотека, с которой можно начать обработку изображений.

Библиотека, наиболее часто используемая для обработки изображений в реальном времени (вам не нужно в реальном времени, но вы не можете ошибиться с быстрым) - OpenCV. Он имеет привязки Python и встроенный feature detection algorithms. См. Также this comparison.

Для обзора алгоритмов сравнения изображений см. this question.

+0

Большое вам спасибо, я не думал, что PIL может это сделать :) – user

1

Как очень простой подход, вы можете сканировать все изображения и вычислять хэш для каждого.

Позже, когда пользователь отправляет изображение для поиска, вы также вычисляете хэш и просматриваете тот же хеш в своей базе данных.

Однако это действительно упрощенческий подход и будет работать только при поиске точных копий изображений. В идеале каждое изображение должно быть преобразовано в некоторый упрощенный набор функций (для обеспечения толерантности к различным версиям одного и того же изображения - разные форматы, размеры, шум и т. Д.). Например, может потребоваться преобразовать изображения (как сканированные, так и отправленные для поиска) в оттенки серого размером 128x128 и вычислить хэш этого.

2

OpenCV поставляется с образцом программы, который делает то, что вы ищете. Это называется find_obj.py. Потяните его в редакторе и изменить:

surf = cv2.SURF(1000) 

в

surf = cv2.SURF(100) 

Это должно найти много «inlier» точек интереса к отрицательному сканирования отпечатков пальцев.

Вы можете поиграть с несколькими переменными и в итоге найти оптимальную конфигурацию для сортировки изображений, которые вы сравниваете. Также довольно просто изменить образец, чтобы вы могли сравнить одно изображение с целым каталогом.

Следует отметить, что это будет эффективно только для оцифрованных отпечатков пальцев, используемых правоохранительными органами.

Смежные вопросы