michsak / MinutiaeExtraction

Fingerprint image preprocessing and minutiae extraction using AHE normalization, Gabor filtering, KMM thinning algorithm, Otsu binarization and Crossing Number Algorithm along with false minutiae removal.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MinutiaeExtraction

How to use?

Either load 320x480 image (.png, .jpg or .jpeg extensions) or scan fingerprint using Futronic FS88 fingerprint scanner. Afterwards click proper buttons to execute consecutive steps (1. picture loading or scanning, 2.AHE normalization, Gabor filtering, Otsu normalization, thinning, 3.Minutia extraction, false minutiae removal). All steps are described more precisely below.

Minutiae extraction steps

  1. Load image
  2. AHE normalization
  3. Gabor filtering - on each 80x80 pixels blocks, tests have shown best results, tested on 320x480 pixels images
  4. Otsu binariztion - each of Gabor filtered blocks is then binarized
  5. Line thinning - using KMM algorithm
  6. Minutiae extraction - Crossing Number Concept algorithm
  7. False minutiae removal - all minutiae on the borders are removed. Needs little improvement - algorithm is not always detecting proper outer ROI border.

Extraction params are saved in the "Extracted Params" directory. If you wish try app on sample fingerprints, some of them are in the "Sample Fingerprints" directory.

Ridge endings are marked blue, bifurcations are marked red, crossings are marked green, single points are marked pink.

Overview

About

Fingerprint image preprocessing and minutiae extraction using AHE normalization, Gabor filtering, KMM thinning algorithm, Otsu binarization and Crossing Number Algorithm along with false minutiae removal.


Languages

Language:C# 100.0%