Skip to main content

FingerFlow

Project description

FingerFlow

Python PyPI

FingerFlow is an end-to-end deep learning Python framework for fingerprint minutiae manipulation built on top of Keras - TensorFlow high-level API.

In current stable version 1.0.0 following modules are provided:

  • extractor - module responsible for extraction and classification of minutiae points from fingerprints

GPU support

FingerFlow supports GPU acceleration on CUDA®-enabled graphic cards.

Software requirements

  • Python 3.9 or newer
  • CUDA - for TensorFlow GPU acceleration (if missing, CPU will be used for computation)

Installation

Use the package manager pip to install FingerFlow. We reccomend to use it in pip or anaconda enviroment.

Installation in anaconda enviroment:

pip install fingerflow

Modules

Extractor

Module responsible for extraction and classification of fingerprint minutiae points. Extractor is built using MinutiaeNet neural network architecture.

Extractor contains 2 modules:

  • MinutiaeNet - module responsible for extracting minutiae points from fingerprint image. Using MinutiaeNet neural network architecture.
  • ClassifyNet - module responsible for classifying extraced minutiae points. Architecture based on FineNet module of MinutiaeNet

Neural networks models

API

Extractor

Class which provides all functionality for extraction of minutiae points

fingerflow.extractor.Extractor()

Arguments

  • coarse_net_path - used for setting path to pretrained model of submodule CoarseNet
  • fine_net_path - used for setting path to pretrained model of submodule FineNet
  • classify_net_path - used for setting path to pretrained model of submodule ClassifyNet

Methods

  • extract_minutiae(image_data) - used for extracting minutiae points from input RGB image data. Methods accepts input data in form of numpy array. Function returns numpy ndarray of extracted and classified minutiae points in following form:
    • x - x coordinate of minutiae point
    • y - y coordinate of minutiae point
    • angle - direction of minutiae point rotation
    • score - minutiae point extraction confidence
    • class - type of minutiae point. In FingerFlow 1.0.0 we support following minutiae classes:
      • ending
      • bifurcation
      • fragment
      • enclosure
      • crossbar
      • other

Usage

import cv2
import numpy as np
from fingerflow.extractor import Extractor

extractor = Extractor("coarse_net", "fine_net", "classify_net")

image = np.array(cv2.imread("some_image"))

extracted_minutiae = extractor.extract_minutiae(image)

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fingerflow-0.0.5.tar.gz (33.1 kB view details)

Uploaded Source

Built Distribution

fingerflow-0.0.5-py3-none-any.whl (38.3 kB view details)

Uploaded Python 3

File details

Details for the file fingerflow-0.0.5.tar.gz.

File metadata

  • Download URL: fingerflow-0.0.5.tar.gz
  • Upload date:
  • Size: 33.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for fingerflow-0.0.5.tar.gz
Algorithm Hash digest
SHA256 30ba639078dfb23191fddca0c8978d0ca49abf5b7085043b9b6b5ec2d4d7d247
MD5 7b2ea457a6b439c7f0fb0d0a5c8f403b
BLAKE2b-256 013713636a97912dd80465250321e3112466714b8705e1047dade2bf06b12945

See more details on using hashes here.

File details

Details for the file fingerflow-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: fingerflow-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 38.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for fingerflow-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 d91a7925d4c494e665cdcae18b2a95148bc29ebbeae5b94cbcfa6678dec327b8
MD5 b825ffa2e693cb198ef1aaa86623a91a
BLAKE2b-256 c9d6eab200dcc7a43dab711b4a320969d24934d0d9b65a9372b2964d344308a3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page