I m trying to implement, capture finger image and then scan that image and get the biometric fingerprints from that image and then finaly sending that image to server. Basically i dont have idea to work on image processing of these. so i tried Onyx SDK and the problem solved. but its a trail version. Now i need to know what are the proces undergoes inorder to get biometic image of finger, like cropping, inverting, contrasting, etc . Can anyone tell me the steps to undergone for image processing. Or anyother open source sdk for fingerprint sensor. Ur help is much appreciated.
I m just trying to do something like this.
say img one is captured image and imge two is after reconizing the biometric fingerprint
It's possible to pick out fingerprints using a phone camera with a resolution as low as two megapixels. The result is a traditional fingerprint image, which can then be matched against existing databases.
From Settings, tap Biometrics and security, and then tap Fingerprints. Enter your secure screen lock credentials and then tap Add fingerprint. Follow the on-screen prompts to add the fingerprint, and then tap Done.
Step 4) Once you've selected all the apps you want to use with the fingerprint sensor to take pictures, open the camera app on your smartphone. You will see a 'Dactyl Service Running' notification just above the shutter button. Now just place your finger on the fingerprint sensor and you'll be able to click pictures.
Basically what you need to do is "match" two images of fingertips: one is the original image of the authorised user's fingertip and the other one is the image of the fingertip the camera just captured.
If the two images "match" then the camera captured the authorised user's fingertip and you shall let her in, otherwise access is to be denied.
Here's the steps I'd fallow to evaluate "matching" between to fingertip images:
Crop the essential part: you can crop an area at the center of the image, or put a square area in overlay on the CameraPreview and ask the user to capture the camera image when this square area is completely covered by her fingertip. Then crop out what's inside that square.
Equalize the cropped image: equalization gives more contrast and betters the image in general.
Detect edges: by detecting edges you'll obtain something like the black and white image you posted, with only the fingerprint lines showing.
Apply SIFT: with SIFT you extract "features" which are Scale-invariant (alsto rotation, tilt, light...-invariant) representations of points in your image. Using these features you can compare two images: they match if features can be found in both images.
Step 1: Original image
Here's the original user's fingertip image
Step 2: Cropping
We crop it to just the fingertip
Step 3: Equalization
We equalize the cropped image
Step 4: Edges
We find the edges
Now we can save this image and keep it for future authentication reference.
Step 5: New image captured
When a new image of a fingertip is acquired by the camera
Step 6: Process new image
We process it just like the original one
Step 7: Matching
Finally we use SIFT to match the original image wit the new one
See that, even if some point is mismatched (10%), most of them (90%, the big central group) matches correctly. In this example SIFT finds 20 points of match, you could also set a threshold for feature quality which improves matches.
To do all this stuff with Android, you could use the OpenCV Android Library which has utils for pretty much everything, including SIFT
Hope this helps.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With