BQAT is a biometric quality assessment tool for generating and analysing biometric sample quality to international standards and supporting customized metrics. It takes as input directory of biometric images/data in standard formats (e.g. wsq,png,jpg) and output both the raw quality information as well as an analysis report.
The analysis of fingerprint engine based on NIST/NFIQ2 quality features. The quality score links image quality of optical and ink 500 PPI fingerprints to operational recognition performance.
The face image assessment provides metrics includes head pose, smile detection, inter-eye-distance, closed eyes, etc.
The iris sample assessment module provides various quality attributes, features, and ISO metrics.
The speech assessment provides various quality metrics, including naturalness, coloration, noisiness, etc.
pip install bqatExample Usage:
# Print help information
bqat --help
# Print version information
bqat --version
# Run benchmarking task
bqat --benchmark
# Run samples in `data` with fingerprint mode as default
bqat --input data
# Run samples in `data` with iris mode
bqat --input data --mode iris
# Run samples in `data` with iris mode and generate EDA report
bqat --input data --mode iris --report
# Search the file with name pattern in the input folder
bqat --input data --mode iris --filename "*FINGER*"
# Search the file with specific format in the input folder
bqat --input data --mode iris --type "jp2,pgm,bmp"
# Convert the files with specific formats before scanning
bqat --input data --mode fingerprint --convert "jp2,jpeg"
# Specify the file format to convert to
bqat --input data --mode fingerprint --target wsq
# Run samples in `data` with face mode, extension function enabled, limit to 100k scan
bqat --input data --mode face --extension --limit 100000You can append optional flags as follows:
- -M, --mode (REQUIRED) Specify assessment mode (Fingerprint, Face, Iris).
- -I, --input (REQUIRED) Specify input directory
- -O, --output (OPTIONAL) Specify output csv file or directory
- -B, --benchmark (OPTIONAL) Run system benchmarking analysis
- -L, --limit (OPTIONAL) Set a limit for number of files to scan
- -F, --filename (OPTIONAL) Specify filename pattern for searching in the folder
- -S, --search (OPTIONAL) Specify file types to search within the input folder
- -C, --convert (OPTIONAL) Specify file types to convert before processing
- -T, --target (OPTIONAL) Specify target type to convert to
- -E, --extension (OPTIONAL) Enable customized extension function
- --help Show a help message
If the output or log options are not specified then the tool will use a default value.
For fingerprints the tool works with image formats WSQ and PNG. For both of these formats the image will be run directly through NFIQ2. The image formats JPG and BMP are also supported but will be converted to WSQ first before being run through NFIQ2.
NFIQ2 expects images to have a resolution of at least 500 PPI. The tool will force NFIQ2 to run on images of lower resolution but the result may be inaccurate.
The tool will produce a csv with all the quality scores generated by the engines and some additional columns.
| Column Name | Description |
|---|---|
| Filename | Filename of the image, including the directory path |
| FingerCode | NFIQ2 Output |
| QualityScore | NFIQ2 Output |
| OptionalError | NFIQ2 Output |
| Quantized | NFIQ2 Output |
| Resampled | NFIQ2 Output |
| UniformImage | NFIQ2 Output |
| EmptyImageOrContrastTooLow | NFIQ2 Output |
| FingerprintImageWithMinutiae | NFIQ2 Output |
| SufficientFingerprintForeground | NFIQ2 Output |
| EdgeStd | Metric to identify malformed images |
| Width | Width of the image in pixels |
| Height | Height of the image in pixels |
| uuid | The unique id assigned to this image |
| Column Name | Description |
|---|---|
| Filename | Filename of the image, including the directory path |
| IPD | Inter-pupillary distance |
| Closed eye left | Bool value |
| Closed eye right | Bool value |
| Head pose yaw | Direction and degree |
| Head pose pitch | Direction and degree |
| Head pose roll | Direction and degree |
| Expression smile | Bool value |
| Face recognition confidence level | Percentage |
| Column Name | Description |
|---|---|
| quality | An overall quality score that leverages several statistics together |
| contrast | Raw score quantifying overall image contrast |
| sharpness | Raw score quantifying the sharpness of the image |
| iris_diameter | Raw diameter of the iris measured in pixels |
| percent_visible_iris | Percentage of visible iris area |
| iris_pupil_gs | Raw measure quantifying how distinguishable the boundary is between the pupil and the iris |
| iris_sclera_gs | Raw measure quantifying how distinguishable the boundary is between the iris and the sclera |
A overview statistical report on each of the column.