auto-binarize a fingerprint

7 vues (au cours des 30 derniers jours)
Jean-Edouard Simonin
Jean-Edouard Simonin le 29 Mar 2011
Hi, I am a French student and i'm working on a minutia recognition project. My work is based on this application : http://www.mathworks.com/matlabcentral/fileexchange/16728-fingerprint-application It works with the joined picture but a problem comes with the binarization (if the pixel is a stria -> 0, else -> 1). Indeed, the limit between white and black is manually fixed to 160. I am looking for ideas to make it automatically. Maybe, find the average intensity of the stria... Can someone help me ?

Réponses (3)

Jean-Edouard Simonin
Jean-Edouard Simonin le 30 Mar 2011
up

Sean de Wolski
Sean de Wolski le 30 Mar 2011
Perhaps use:
graythresh
to determine a suitable threshold.
  3 commentaires
Sean de Wolski
Sean de Wolski le 30 Mar 2011
How are the stria too close? graythresh uses a histogram so location doesn't matter. What class is your data?
Jean-Edouard Simonin
Jean-Edouard Simonin le 30 Mar 2011
It's maybe beacause of the difference of intensity between stria and valley which is not too much strong...

Connectez-vous pour commenter.


Jean-Edouard Simonin
Jean-Edouard Simonin le 3 Avr 2011
I have an idea but I don't know how to do it. If we draw a histogram of the picture, we can see two Gaussians. To determine the limit between white and black, I have to find the min between these two Gaussians. How could I do that ?
  1 commentaire
Sean de Wolski
Sean de Wolski le 4 Avr 2011
It's called the minimum valley method.
Basically find the peaks; it's the bottom of the valley between the two peaks. You could use the histc function and some basic numerical derivatives to find it.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Data Distribution Plots dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by