programmation d'un logiciel de reconnaissance d'empreinte digitale

programmation d'un logiciel de reconnaissance d'empreinte digitale - Algo - Programmation

Marsh Posté le 07-07-2005 à 09:45:23    

Bonjour, je souhaite programmer un logiciel de reconnaissance d'empreintes digitales.  
J'ai préparé un algorithme (sous forme littéraire), je cherche donc un matheux, capable de le traduire sous forme mathématique en vue de pouvoir le programmer ensuite. (si ça vous intéresse, contactez moi, je vous l'enverrai).  
 
Je vous remercie de votre aide.  
 
(je fonctionne sous Windows Me)  
 
Romain

Reply

Marsh Posté le 07-07-2005 à 09:45:23   

Reply

Marsh Posté le 07-07-2005 à 09:46:32    

:heink:

Reply

Marsh Posté le 07-07-2005 à 10:10:09    

Citation :

je souhaite programmer un logiciel de reconnaissance d'empreintes digitales.


Citation :

(je fonctionne sous Windows Me)


:heink:
 
A part ça, bonne chance...


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 07-07-2005 à 10:24:50    

C'est quoi un "algo sous forme litteraire"?
As-tu réalisé une étude biblio. pour découvrir l'état de l'art en la matière, savoir si ton idée n'existe pas déjà, s'il y a des brevets, sur quoi etc.?
As-tu pensé aux problèmes techniques liés à l'acquisition? (type du capteur, type de connection au PC, transfert du signal, codage du signal, bruit etc.)
As-tu refléchi au "moteur" d'apprentissage/reconnaissance à mettre derrière? (classifieur, clustering etc.)

Reply

Marsh Posté le 07-07-2005 à 11:27:54    

Bon alors, en ce qui concerne la recherche de caractèristiques sur les empreintes c'est vrai qu'il y a de quoi s'amuser.
Par contre si je te pose toutes ces questions c'est parcequ'au final, c'est à ce niveau que se situe le problème.
Première contrainte: le capteur. Quel type de capteur? Parceque la forme et la qualité du signal vont en dépendre.
Ensuite le pre-traitement du signal; typiquement, l'empreinte arrive au programme sous forme d'un ensemble de lignes mises bout à bout. Il faut séparer ces lignes et les "aligner" pour reconstituer l'empreinte 2D.
Ensuite, grand classique, calcul de caractèristiques, recherche des minutiae etc. Mais après, que faire?
En reconnaissance de forme, le grand classique est de faire un gros apprentissage (plusieurs centaines d'individus) pour avoir une base de connaissance statistiquement fiable. Or ici, on a en gros un individu par classe! Donc, quel moteur d'apprentissage mettre derrière? (exit donc Bayesien, RDN et consors)

Reply

Marsh Posté le 07-07-2005 à 11:34:00    

Pour le capteur, je pense faire une acquisition traditionnelle : avec un scanner haute résolution. J'ai déjà fais un test, ça donne des images d'une très bonne qualité. Je pensais aussi faire le pointage des minuties manuellement (avec le programme).
Mais je ne vois pas quoi choisir comme moteur... Toi qui parait être un spécialiste, tu conseilles quoi?

Reply

Marsh Posté le 07-07-2005 à 11:45:32    

Pour la classification comme ça à vue de nez je dirais de partir sur un kppv (d'ailleurs, c'est ce qu'ils utilisent ici: http://www.ece.cmu.edu/~ee551/Old_ [...] #classify)
Pourquoi faire le pointage des minutiae manuellement?

Reply

Marsh Posté le 07-07-2005 à 12:08:58    

Je pensais que ça serait assez simple à faire. Je pense qu'un pointage automatique (avec différenciation des minuties "fin de ligne", "delta" etc...) doit être très délicat à mettre en place

Reply

Marsh Posté le 07-07-2005 à 12:23:13    

Bah après ça peut marcher, mais ça risque d'être contraignant non? Et il faudra que le moteur derrière soit assez souple pour accepter les décalages (faut pas rêver, pour une empreinte donnée, un être humain ne choisiera jamais exactement les mêmes minutiae au pixel près).

Reply

Marsh Posté le 07-07-2005 à 12:25:17    

Et tu penses que c'est possible de faire un pointage automatique?

Reply

Marsh Posté le 07-07-2005 à 12:25:17   

Reply

Marsh Posté le 07-07-2005 à 14:26:25    

Bah oui, sûrement, ça doit être jouable. Tu peux passer par une squelettisation avec recherche de motif, ou alors codage du freeman en suivant les lignes, ce genre de choses quoi.

Reply

Marsh Posté le 12-07-2005 à 14:37:10    

Voilà donc le fameux algo. de supeRomain:
http://img306.imageshack.us/img306/8868/algorithme1lw.th.png

Reply

Marsh Posté le 12-07-2005 à 14:44:09    

Mon avis: tu vas sûrement avoir a ajouter des coefficients "flous" pour tes comparaisons, notamment sur les minutiae: c'est très peu probable que tu trouves (même doigt mais 2 acquisitions différentes) exactement les mêmes minuties avec les mêmes caractèristiques (taille, position).
Ensuite, un peu de flou sur la fin (seuils à 100%, 90%, 70% etc.) peut aussi beaucoup t'aider. Tu définis simplement ta fonction "seuil" non pas par une droite mais par une courbe (cloche, log. etc.). Ainsi, si tu veux faire varier tes seuils de décision, tu n'as qu'un seul paramètre à bidouiller.
Sinon pour le reste bah... faut voir ce que tu vas mettre dans tes boîtes "Définir une echelle", "Determiner le point central", "Définir une metrique", "Recherche des minutiae" :)
Enfin, j'ai peur que ton algo devienne rapidement une usine à gaz si tu as beaucoup d'empreintes différentes en apprentissage; toutes les reparcourir à chaque fois... Tu peux imaginer une extraction des caractèristiques sous forme de vecteur, comme ça tu ne stockes que ça. Tu peux même (rêvons un peu), envisager la possibilité de mesurer une distance entre ces vecteurs de de caractèristiques. Tu mets tout ça dans un bon SGBD à qui tu confies la tache de recherche les plus proches voisins (calcul de la distance dans ton SELECT).
Bref, il y a vraiment de quoi s'amuser...

Reply

Marsh Posté le 12-07-2005 à 14:52:47    

T'as raison, c'est trop précis, d'ailleurs, je suis tombé sur ce site : http://www.acfr.usyd.edu.au/homepa [...] print2.htm, qui explique très "clairement" les différents types de détermination, comment les réaliser...
Ne penses-tu pas qu'il faudrait que je fasse un algorithme en suivant cette méthode?

Reply

Marsh Posté le 12-07-2005 à 16:09:42    

Bof tu peux mais ce serait dommage de refaire ce qui a été fait non? Tu peux aussi bien te documenter sur le sujet et essayer d'y apporter ta touche personnelle.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed