MinutiaeClassificator
MinutiaeClassificator is a Python library for extracting and classifiying minutiae from fingerprint images.
MinutiaeClassificator contains 2 modules:
- MinutiaeNet - module responsible for extracting minutiae points from fingerprint image. Using neural network architecture from MinutiaeNet
- ClassifyNet - module responsible for classifying extraced minutiae points. Architecture based on FineNet module of MinutiaeNet
Requirements: software
- Python 2.7 - we are planning to update module for Python 3.x in future
- CUDA - MinutiaeClassificator using TensorFlow GPU acceleration
Installation
Use the package manager pip to install foobar. We reccomend to use it in anaconda enviroment. Installation in anaconda enviroment:
conda install cudatoolkit=<version compatible with the system CUDA>
pip install minutiaeclassificator
API
Import modules
-
MinutiaeClassificator.exceptions.MinutiaeClassificatorExceptions- module containing library specific exceptions:CoarseNetPathMissingExceptionFineNetPathMissingExceptionClassifyNetPathMissingExceptionMinutiaeNetNotLoadedExceptionClassifyNetNotLoadedException
-
MinutiaeClassificator.MinutiaeClassificatorWrapper- main module contains library moduleMinutiaeClassificator. It is main module for accessing library. It contains methods:get_coarse_net_path(coarse_net_path)- used for setting path to pretrained model of submodule CoarseNet.get_fine_net_path(fine_net_path)- used for setting path to pretrained model of submodule FineNet.get_classify_net_path(classify_net_path)- used for setting path to pretrained model of submodule ClassifyNet.load_extraction_module()- used for compiling extraction module MinutiaeNet. ThrowsCoarseNetPathMissingExceptionorFineNetPathMissingExceptionwhen missing path to respective model's weights fileload_classification_module()- used for compiling classification module ClassifyNet. ThrowsClassifyNetPathMissingExceptionwhen missing path to its weights fileget_extracted_minutiae(image_path, as_image = True)- used for extracting minutiae points from input image. Image is determined byimage_path(path to image file). Whenas_image = Trueminutiae points are marked in input image and updated image is returned asPIL.Image. Ifas_image = Falseminutiae_points are returned asnumpy.array. If MinutiaeNet not loaded throwsMinutiaeNetNotLoadedExceptionget_classified_minutiae(image_path, extracted_minutiae, as_image = True)- used for classifying extracted minutiae points. Accepts same arguments as previous method and additionalyextracted_minutiae, which isnumpy.arrayin same shape asget_extracted_minutiaeoutput. If ClassifyNet not loaded throwsClassifyNetNotLoadedExceptionget_extracted_and_classified_minutiae(image_path, as_image = True)- wrapper over previous two methods. Extracts and then classify extracted minutiae.get_single_classified_minutiae(minutiae_patch_path)- used for classification of singe minutiae point image. Image is determined byminutiae_patch_path(path to image file). In version 1.0.0, library is able to classify minutiae points into 6 classes:- ending
- bifurcation
- fragment
- enclosure
- crossbar
- other
Models
- CoarseNet: Googledrive || Dropbox
- FineNet: Googledrive || Dropbox
- ClassifyNet: Googledrive
Usage
from MinutiaeClassificator.MinutiaeClassificatorWrapper import MinutiaeClassificator
from MinutiaeClassificator.exceptions.MinutiaeClassificatorExceptions import
ClassifyNetPathMissingException
minutiaeClassificator = MinutiaeClassificator()
minutiaeClassificator.get_classify_net_path('path to file')
try:
minutiaeClassificator.load_classification_module()
except ClassifyNetPathMissingException:
do something...
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
License
Metadata
Release files for MinutiaeClassificator 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| MinutiaeClassificator-1.0.0.tar.gz | 39.3 kB | Details |
Release files / MinutiaeClassificator-1.0.0.tar.gz
| Download URL | MinutiaeClassificator-1.0.0.tar.gz |
|---|---|
| Size | 39.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2e028391d051e4604acd1d541fab54b3df51074727d34ad8adbbdddc7d3516c4
|
|
BLAKE2b-256 checksum How to use checksums |
f49957cd5f8c106b149641211222090b425634b0b251b77b661dc4ec9efaf245
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.8.1
|