IDKit - How it works

The IDKit library has been specifically developed for applications requiring to search fingerprints stored in a database(1:N fingerprint identification). As input IDKit takes a supported fingerprint reader trough IScanners or a fingerprint image. It allows to create users (user is a collection of fingerprints from 1-10 fingers), store them in the database, retrieve users from the database using 1:N fingerprint search, compare users using 1:1 fingerprint verification, and delete users from the database. The general architecture as well as general function parts are explained below. You may also download the API documentation.

  • IDKit API: idkit.pdf (~1MB)
    Download Now

User support

The use of the SDK is made simple through the notion of user. A user is collection of fingerprints from up to 10 different fingers. This is very universal, as you can associate many fingerprints with one particular user. You can for example create a user with 2 fingerprints per each finger, which makes 2x10 = 20 fingerprint images in total. Through verification functions you can directly compare two users without needing to explicitly combine similarity scores from different fingers - this is done automatically by the SDK.

Database support

IDKit contains database management functions that enable storing and retrieving user information in/from a flat file database (SQLite3). You don't need to install any database server such as MySQL, PostgreSQL or others, as the database functions are directly implemented in the SDK. In the database, you may optionally store both fingerprint templates and fingerprint images. Fingerprint templates contain fingerprint features necessary for fingerprint verification or identification. Fingerprint images are not required for fingerprint recognition but it may be an interesting option to store them in the database and display them when the user is verified/identified.

Identification

Often you need to find an unknown user in a database, knowing only one (or more) of its fingerprints. You may perform this through identification functions, also called "1 to N matching". Identification functions search for an unknown fingerprint image or set of images in the whole database. Identification search can be performed in different ways:

  • Identification of one particular fingerprint image,
  • Identification of multiple fingerprint impressions (views) of the same finger,
  • Identification of fingerprints coming from multiple fingers,
  • Identification was optimized for speed. Thanks to the automatic memory mapping of the database file, no additional database access time occurs when an identification search is performed. In addition, the IDKit library contains a proprietary high speed fingerprint identification algorithm, suitable for the most demanding applications. A configuration parameter lets you define the matching speed (integer from 1 to 8, where 8 selects the fastest engine - 600.000 fingerprint matches per second).

Verification

In addition to 1:N identification, the IDKit library contains verification functions to compare fingerprints and calculate their similarity scores. Verification is also called "1 to 1 matching". Various verification strategies are supported:

  • comparison of two fingerprint images (verification of a probe fingerprint with a referenced fingerprint)
  • comparison of multiple fingerprint impressions (views) of the same finger against one or multiple other fingerprint impressions
  • comparison of fingerprints coming from multiple fingers against another set of fingerprint images

Supported image formats

The IDKit library accepts as an input fingerprint images stored in different formats. It supports BMP, PNG, JPEG, GIF, TIFF and WSQ images. WSQ is a special format designed specially for efficient fingerprint image compression.

^Top | Print page


Free Demo

IDDemo IDDemo Fingerprint identification demo

IDDemo is a graphical demo application showing high-speed fingerprint search on your PC. IDDemo can be downloaded for free.

» Download demo...