A C++ implementation of the enhancement method based on Anil Jain's paper:
Fingerprint Image Enhancement: Algorithm and Performance Evaluation, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 20, No. 8, August, 1998. This paper is available here.
This program is using OpenCV 2.4.10 and performs following operations sequentially:
- the image normalization,
- the image orientation calculation
- a Gabor filter based image enhancement
- a cropping to only get the fingerprints
Install OpenCV on your machine. Then clone the repo:
git clone [email protected]:jjerphan/Fingerprint_Image_Enhancement.git
cd Fingerprint_Image_Enhancement
You can build the CLI tool as follows.
mkdir -p build
cd build
cmake ..
make
cd ..
You can then execute the script on a picture :
.bin/fingerPrint -i input.png
To have an overview of options, just use:
./bin/fingerPrint -h
Install the package using:
python setup.py install
Here is an input image :
and the results obtained by running the command above:
You need to manually save the image shown in the OpenCV window at the end.
This project is distributed under the Apache License 2.0.
It features code from edmBernard/pybind11_opencv_numpy
published under the same license.