ISO 19794-2 формат отпечатков пальцев - PullRequest
17 голосов
/ 27 января 2011

Я использую формат данных отпечатков пальцев iso 19794-2. Все данные в формате ISO 19794-2. У меня есть более ста тысяч отпечатков пальцев. Я хочу сделать эффективный поиск, чтобы определить совпадение. Можно ли построить структуру типа бинарного дерева, чтобы выполнить эффективный (самый быстрый) поиск соответствия? или предложите мне лучший способ найти соответствие. а также предложить мне API с открытым исходным кодом для Java для сопоставления отпечатков пальцев. Помоги мне. Спасибо.

Ответы [ 2 ]

24 голосов
/ 03 февраля 2011

Есть ли у вас фон в сопоставлении отпечатков пальцев? Это не простая проблема, и вам понадобится немного теории, чтобы решить эту проблему. Взгляните на это введение в сопоставление отпечатков пальцев от BioLab Болонского университета (ведущая исследовательская лаборатория в этой области).

Давайте теперь ответим на ваш вопрос, как сделать поиск более эффективным.

Отпечатки пальцев можно классифицировать по 5 основным классам в соответствии с типом макросингулярности, которую они демонстрируют.

Существует три типа макро-особенностей:

  • whorl (своего рода круг)
  • петля (инверсия U)
  • дельта (своего рода трехсторонний переход)

В соответствии с положением этих макро-особенностей, вы можете классифицировать отпечаток пальца по следующим классам:

  • арка
  • тентовая арка
  • правая петля
  • левая петля
  • завиток

Как только вы сузили поиск до правильного класса, вы можете выполнять свои совпадения. Исходя из вашего вопроса, похоже, что вы должны выполнить задачу идентификации, поэтому я боюсь, что вам придется выполнить все сравнения или добавить несколько слоев предварительной обработки (например, классификацию, о которой я писал), чтобы еще больше сузить поле поиска.

Вы можете найти много информации о сопоставлении отпечатков пальцев в книге Справочник по распознаванию отпечатков пальцев , написанной Maltoni, Maio, Jain и Prabhakar - ведущими исследователями в этой области.

Чтобы прочитать формат ISO 19794-2, вы можете использовать некоторые утилиты, разработанные NIST под названием BiomDI, программные средства, поддерживающие стандартные форматы обмена биометрическими данными . Вы можете попытаться связать его с алгоритмами сопоставления с открытым исходным кодом, подобными тем, которые можно найти в этом биометрическом SDK . Однако потребуется много работы, включая преобразование из одного формата в другой и тонкую настройку алгоритмов.

Мое мнение (как аспиранта, работающего в области биометрии) заключается в том, что в этой области вы можете легко написать код, который быстро выполнит 60% того, что вам нужно, но оставшиеся 40% будут:

  • трудно писать (20%); и
  • действительно трудно писать без денег и времени (20%).

Надеюсь, это поможет!

Редактировать : добавлена ​​информация о NIST BiomDI

Редактировать 2 : поскольку люди иногда пишут мне по электронной почте с просьбой предоставить копию стандарта, я, к сожалению, не могу поделиться ею. Все, что у меня есть, - это ссылка на страницу ISO, которая продает стандарт .

2 голосов
/ 30 января 2011

Формат iso определяет полезные механизмы для сопоставления и принятия решений.Решите, какой механизм вы хотите использовать для определения соответствия, и соответствующие параметры решения.Когда вы определили эти механизмы и параметры решения, изучите их, чтобы увидеть, какие из них можно упорядочить - с довольно высокой степенью индивидуальных значений, так как вы хотите избежать многочисленных коллизий в данных.Когда вы определили небольшое количество элементов данных (предпочтительно один), которые обладают этим свойством, вычислите свойство для каждого отпечатка пальца - предпочтительно, когда они добавляются в базу данных, хотя сначала можно выполнить большую загрузку.Затем поиск соответствия выполняется по вычисленной характеристике и может быть выполнен с помощью двоичного дерева, черно-красного дерева или множества других процессов поиска.Я не могу рекомендовать конкретную стратегию поиска, не зная, какая форма и степень дифференциации значений у вас есть в вашей базе данных.Однако такая стратегия поиска должна быть способна обеспечить (небольшой) диапазон возможных совпадений, которые затем можно протестировать индивидуально в соответствии с вашим механизмом и параметрами сопоставления, прежде чем принимать решение о конкретном сопоставлении.

...