|
|
Embedded
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:
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.
Algorithm
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.
Specifications
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 |
Demo
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:
|