MegaMatcher SDK
VeriFinger SDK
FingerCell EDK
VeriLook SDK
Other products

Supported Scanners

Licensing Model


FingerCell, The Embedded Fingerprint Identification System

Intro |  Why FingerCell? |  Algorithm |  Specifications |  Demo |  Related

Currently, automatic personal identification based on the fingerprint matching is becoming increasingly popular in systems, which control access to physical locations, computer/network resources, bank accounts, or register employee attendance time in enterprises. Large class of such applications can run on the PC, however another applications require to implement system on the low cost, compact and/or mobile embedded device (doors, gates, cell phones etc.).
Together with commonly accepted fingerprint recognition systems requirements (reliability, speed), fingerprint recognition algorithm used in embedded systems requires some specific features. 
Embedded devices usually have weaker processor than personal computer.


The fingerprint image processing routines (image enhancement, noise filtration, binarization, skeletonization etc.), used for PC based applications, are quite computationally expensive, therefore require substantial algorithm modification to achieve acceptable image processing time (1 second or less) on the embedded device. This page contains information about FingerCell embedded algorithm, developed on the VeriFinger basis, but having about 3 times faster image processing and feature extraction algorithm.

Why FingerCell?

FingerCell algorithm, developed on the VeriFinger basis, is designed for embedded biometric systems developers. The algorithm has certain capabilities:

  • Reliability. As FingerCell uses faster and less powerful fingerprint noise filtration algorithm, its False Rejection Rate is slightly bigger than of VeriFinger algorithm. However, the algorithm still produces quite high recognition reliability.
    The grafical charts compare FingerCell 1.2 ROCs with VeriFinger 4.2 ROCs using specific scanners:
    FingerCell 1.2 ROC vs. VeriFinger 4.2 ROC with Atmel Fingerchip scanner
    Click to enlarge

    Cross Match
    Verifier 300
    FingerCell 1.2 ROC vs. VeriFinger 4.2 ROC with Cross Match Verifier 300 scanner
    Click to enlarge

    FingerCell 1.2 ROC vs. VeriFinger 4.2 ROC with SecuGen Hamster scanner
    Click to enlarge

    TouchChip TCRU1C
    FingerCell 1.2 ROC vs. VeriFinger 4.2 ROC with STMicroelectronics TouchChip TCRU1C scanner
    Click to enlarge

    Receiver operating curves (ROCs), obtained in testing with four scanner databases, compare VeriFinger (red) and FingerCell (green) reliability under the same conditions. FingerCell provides about 5% FRR (False Rejection Rate) at 0.001% FAR (False Acceptance Rate) level, and VeriFinger provides about 2.5% FRR in the same FAR level. This difference can be decreased if Features' Generalization procedure (composing fingerprint template from three samples) is used.
  • Identification ability. As FingerCell is developed on VeriFinger basis, it is suitable not only for fingerprint verification (1:1 matching), but also for identification (1:N matching). FingerCell can match about 900 fingerprints per second in 1:N identification mode. Please note, that these results were achieved on StrongArm CPU (206MHz, 230 MIPS).
  • Image processing speed. Due to some algorithm modification, fingerprint image processing time is less than 1 sec.
  • Compact software. Compiled code and internal data arrays require only 512 Kb of memory and therefore can be implemented in low memory microchips, thus allowing the reduce of the hardware price.
  • Portability. FingerCell software source code is provided in ANSI C and doesn't use any specific processor features; therefore, the software can be easily adapted for another embedded processors. FingerCell 1.2 is sensor independent algorithm and can be used with most of sensor types.
  • Available as several types of Embedded Development Kit, including library and source code versions.


FingerCell algorithm is similar to VeriFinger algorithm and includes these features:

  • FingerCell is fully tolerant to fingerprint translation and rotation. Such tolerance is achieved by our proprietary fingerprint matching algorithm.
  • FingerCell does not require presence of the fingerprint core or delta points in the image, and can recognize a fingerprint from any part of it.
  • FingerCell has the fingerprint enrollment with features' generalization mode. This mode generates the collection of the generalized fingerprint features from three fingerprints of the same finger. Each fingerprint image is processed and features are extracted. Then three collections of features are analyzed and combined into a single generalized features collection, which is written to the database. This way, the enrolled minutiae are more reliable and the fingerprint recognition quality considerably increases using this enrollment mode.
  • FingerCell can use the database entries, which were pre-sorted using certain global features. Fingerprint matching is performed first with the database entries having global features most similar to those of the test fingerprint. If matching within this group yields no positive result, then the next record with most similar global features is selected, and so on, until the matching is successful or the end of the database is reached. In most cases there is fairly good chance that the correct match will be found already in the beginning of the search. As a result, the number of comparisons required to achieve fingerprint identification decreases drastically, and correspondingly, the effective matching speed increases.
  • FingerCell embedded algorithm is similar to VeriFinger, but it has about 3 times faster image processing and feature extraction algorithms.
  • FingerCell 1.2 includes algorithm modes that help to achieve better results for specific scanner. The modes are:
    • Universal;
    • DigitalPersona U.are.U family scanners;
    • Cross Match Verifier 300 scanner;
    • ST Microelectronics TouchChip sensor;
    • AuthenTec AES4000 and AF-S2 sensors;
    • Atmel FingerChip sensor;
    • BMF BLP-100 sensor;
    • SecuGen Hamster scanner.
    Please note, that FingerCell algorithm itself provides parameters' optimization for scanners, but does not provide interface for scanners.


Please note, that these specifications were determined on hardware with 206 MHz Intel StrongArm processor and 32 Mbytes RAM.

Enrollment time < 1 second
Enrollment time in features' generalization mode < 3 seconds
Verification time < 1 second
Matching speed up to 700 fingerprints/second
Template size 150 - 300 bytes


FingerCell demo application could be downloaded to evaluate the FingerCell algorithm on PC and Pocket PC. The application enrolls and identifies fingerprints from image file or supported fingerprint scanner. Demo application for PC allows to calculate receiver operating curves (ROC) with custom fingerprint databases.
These demo applications are available for different platforms:

  • Windows 9x/ME/NT/2000/XP application that input from DigitalPersona U.are.U (U.are.U Integrator Gold 2.3 is required), SecuGen Hamster III, BiometriKa FX 2000, Tacoma CMOS, Cross Match and STMicroelectronics TCRU1C scanners, AuthenTec AF-S2 and AES4000 sensors, TIFF and BMP image files.
  • Windows CE 3.0 application that supports input from TIFF and BMP image files. The application runs on the Pocket PC 2002 platform.
  • Linux application that supports input from AuthenTec AF-S2 and AES4000 sensors, BiometriKa FX2000, Startek FM200, Tacoma CMOS and Fujitsu MBF200 scanners or TIFF image files.

Sample fingerprint images can be also downloaded for evaluation purposes.

Related products

These products are based on the FingerCell 1.2 algorithm: