![]() |
NeuroDactyl
|
After you have installed the SDK successfully with valid software license, you need to set up configuration file. See Configuration.
To create general SDK objects (like NeuroDactyl::Detector, NeuroDactyl::Extractor, NeuroDactyl::Matcher, etc.) you need to have NeuroDactyl::Config object.
You can create it by:
configFileName is the path to your configuration file.
You can find default config example in the SDK package - config_default.cfg
The SDK supports WSQ and most common image formats (jpg, bmp, png). Also you can load decoded 8bit images manually. See other image Requirements
All images in the SDK are represented with object NeuroDactyl::Image.
For decoding images you should create NeuroDactyl::Decoder object first:
where cfg is NeuroDactyl::Config.
After it you can decode an image from hard drive:
or from memory:
If you have decoded 8raw bit image (ISO/IEC 19794-4:2005, §6.2) construct NeuroDactyl::Image from it by:
First step of fingerprint recognition is fingerprint detection — localization of a fingerprint or fingerprints on an image.
Firstly, you need to create NeuroDactyl::Detector object:
To run detection on an image:
where:
500 is dpi
0.333 is detector's confidence
NeuroDactyl::Detector returns NeuroDactyl::Detection objects. You can use images with several fingerprints on it, in this case NeuroDactyl::Detector returns several detections. All detections are returned with detection location (NeuroDactyl::Detection::bbox()) and it's confidence, based on it you can choose a needed one or ones.
If you are processing images with only one fingerprint in the same position (for example, in the center) and you are absolutely sure about it, you can indicate fingerprint position manually, without running Detection algorithm.
To create NeuroDactyl::Detection object, when a fingerprint is in the center:
where:
500 is dpi
0 is angle of rotation from vertical axis
Confidence is a value between 0,0001 and 0,9999 indicating level of certainty for the detection, where 0,0001 - most probably a false detection and 0,9999 - most probably a fingerprint.
Recommended value is between 0.33 and 0.5, but may depend on your use case. We recommend to test on your DB before choosing the threshold.
NeuroDactyl::Detection object is used for further biometric template extraction. Biometric template is a proprietary compact descriptor used for further matching and recognition.
Size of biometric template: 512 bytes. Size of the templates is standard for any image.
First, create NeuroDactyl::Extractor object:
To create NeuroDactyl::Template object from detection
You can serialize fingerprint template in memory by:
and load serialized template by:
The matching score is a native value for measuring the similarity between templates.
Score is directly linked with FAR and its values are equal -logFAR, which means:
By setting up a threshold you indicate a score, above which you want to see matching results. For example, threshold 6 means that the SDK returns matching results with scores from 6 and higher. Choosing a suitable threshold depends on your use case and affordable level of FAR.