La reconnaissance faciale
La reconnaissance faciale est un procédé biométrique au même titre que la reconnaissance d’empreintes digitales, d’iris, ou vocale. Cela consiste donc à déterminer l’identité d’une personne. Le système de reconnaissance faciale est une application logicielle visant à reconnaître une personne grâce à son visage de manière automatique. A l’aide d’algorithmes, cette application analyse toutes les caractéristiques faciales telles que l’écartement des yeux, des arêtes du nez, des commissures des lèvres, des oreilles, du menton, à partir d’une image de son visage qui peut provenir à la fois d’une photo ou d’une vidéo. Donc de nombreux formats d’image peuvent être utilisés qu’ils soient statiques (JPG, bmp, png, GIF …) ou en mouvement (MPEG4 Part 2) [1] Plusieurs méthodes de reconnaissance de visages ont été proposées durant ces 30 dernières années, suivant deux grands axes : la reconnaissance à partir d’images fixes et la reconnaissance à partir de séquence d’images (vidéo). La reconnaissance de visages basée sur la vidéo est préférable à celle basée sur des images fixes, puisque l’utilisation simultanée des informations temporelles et spatiales aide dans la reconnaissance. Dans notre projet, on s’est focalisé sur la reconnaissance basée sur la vidéo, puisqu’elle est plus demandée et plus pertinente [2].
Domaines de la Reconnaissance Faciale
Aujourd’hui la reconnaissance faciale est utilisée principalement pour des raisons sécuritaires. Elle peut être utilisée à des fins très diverses. Par exemple, l’authentification, le contrôle d’accès (autorisation) et la vidéo de surveillance. Un bon exemple de l’usage des applications d’identification, est le nouveau tunnel qui sera installé d’ici la fin de l’été, situé à Dubaï premier de ce type dans le monde. Il s’agit d’un système biométrique qui permet aux passagers d’être identifiés en traversant un tunnel dans le but d’augmenter l’efficacité des points de contrôle de sécurité. Ils n’ont même pas besoin de montrer leur passeport. L’outil fonctionne grâce à la reconnaissance de l’iris et du visage. La procédure dure environ 15 secondes. [3] La reconnaissance faciale est aussi utilisée dans les Applications militaires. Un bon exemple de ce domaine est l’utilisation des lunettes de style « Robocop » munies d’une petite caméra d’une portée de 12 milles (19,3 km) par la marine américaine, la caméra peut aussi faire partie de l’optique d’un soldat sur son arme. Grâce à cet équipement, les soldats peuvent identifier des ennemis en quelques secondes sur le terrain, et cela sans réseau à large bande. [4]
En revanche, on distingue un autre domaine d’application de ces systèmes qui est l’assistance à l’utilisateur. Les systèmes de reconnaissance faciale sont de plus en plus présents au quotidien. Ils sont par exemple utilisés sur les réseaux sociaux sur internet pour identifier quelqu’un sur une photo, sur les Smartphones pour les déverrouiller… Facebook a la plus grande collection et exposition de photos au monde et a maintenant une chance d’unifier tous les visages. Oui, même les personnes qui ne sont pas identifiées. Facebook a annoncé qu’il a développé un programme appelé DeepFace, qui selon les chercheurs, peut déterminer si deux visages appartiennent à la même personne avec une précision de 98%. Selon Facebook, dans 97,53% des cas, les photos à différents âges de même personnes ont la même réponse au test, comme le prouve la procédure de DeepFace pour la reconnaissance du célèbre acteur Sylvester Stallone.
Détection de Face à l’aide de la fonction de Haar La détection d’objets à l’aide de classificateurs de cascade, basée sur les fonctions de Haar est une méthode efficace de détection d’objet proposée par Paul Viola et Michael Jones dans leur article « Détection rapide d’objets utilisant une cascade de fonctions simples » en 2001 .[15] Il s’agit d’une approche ou la fonction cascade est formée à partir de nombreuses images positives et négatives, qui est ensuite utilisée pour détecter des objets dans d’autres images. Pour notre cas nous allons travailler avec la détection de visage. Initialement, l’algorithme a besoin de beaucoup d’images positives (images de visages) et d’images négatives (images sans visages) pour former le classificateur. Ensuite, nous devons extraire des fonctionnalités de celui-ci. Pour cela, les caractéristiques de Haar présentées dans l’image ci-dessous sont utilisées. Ils sont juste comme notre noyau convolutif. Chaque caractéristique est une valeur unique obtenue en soustrayant la somme des pixels sous un rectangle blanc de la somme des pixels sous un rectangle noir.
Maintenant, toutes les tailles et les emplacements possibles de chaque noyau sont utilisés pour calculer beaucoup de fonctionnalités. (Imaginez de combien de calculs il a besoin? Même une fenêtre 24×24 donne plus de 160000 fonctions). Pour chaque calcul d’entité, nous devons trouver la somme des pixels sous les rectangles blancs et noirs. Pour résoudre cela, ils ont introduit les images intégrales. Il simplifie le calcul de la somme des pixels, quelle que soit la taille du nombre de pixels, pour une opération impliquant seulement quatre pixels. Mais parmi toutes ces caractéristiques que nous avons calculées, la plupart d’entre elles ne sont pas pertinentes. Par exemple, considérez l’image ci-dessous. La rangée supérieure montre deux bonnes caractéristiques. La première caractéristique sélectionnée semble se concentrer sur la propriété que la région des yeux est souvent plus sombre que la région du nez et des joues. La deuxième caractéristique sélectionnée repose sur la propriété que les yeux sont plus sombres que le pont du nez. Mais les mêmes fenêtres appliquées sur les joues ou tout autre endroit est sans importance. Alors, comment pouvons-nous sélectionner les meilleures fonctionnalités sur 160000+ fonctionnalités?
Détection de Face à l’aide de fonction de LBP
LBP présente un espace caractéristique discriminant qui peut être appliqué à des problèmes de détection des visages et de reconnaissance, motivé par son invariance par rapport aux transformations d’échelle de gris monotones (par exemple, tant que l’ordre des valeurs de gris reste le même, la sortie de l’opérateur LBP continue est constante, et le fait qu’il peut être extrait en un seul balayage à travers l’image entière. Les motifs binaires locaux (LBP) sont des descripteurs de texture qui peuvent également être utilisés pour représenter des visages, puisqu’une image de visage peut être vue comme une composition de motifs de micro-texture. En bref, la procédure consiste à diviser une image faciale en plusieurs régions où les caractéristiques LBP sont extraites et concaténées dans un vecteur de caractéristiques qui sera plus tard utilisé comme descripteur facial. Le LBP est apparu à l’origine comme un descripteur de texture générique. L’opérateur attribue une étiquette à chaque pixel d’une image en limitant un voisinage 3×3 avec la valeur de pixel central et en considérant le résultat comme un nombre binaire. Dans différentes publications, les valeurs résultantes circulaires 0 et 1 sont lues soit dans le sens des aiguilles d’une montre, soit dans le sens inverse des aiguilles d’une montre. Dans ce PFE, le résultat binaire sera obtenu en lisant les valeurs dans le sens des aiguilles d’une montre, à partir du voisin supérieur gauche, comme on peut le voir sur la figure suivante.
La raison pour laquelle les quatre points sélectionnés correspondent à ceux verticaux et horizontaux, est que les faces contiennent plus d’arêtes horizontales et verticales que diagonales. Lors du calcul des opérations de pixel prenant en compte les voisinages NxN à la limite d’une image, une partie du masque NxN se trouve hors du bord de l’image. Dans de telles situations, différentes techniques de remplissage sont généralement utilisées, telles que le remplissage à zéro, la répétition d’éléments de bordure ou l’application d’une réflexion miroir pour définir les bordures d’image. Cependant, dans le cas de l’opérateur LBP, la limite critique, définie par le rayon R de l’opération circulaire, n’est pas résolue en utilisant une technique de remplissage, plutôt que cela, l’opération est démarrée au pixel d’image (R, R). L’avantage est que l’histogramme final des étiquettes LBP ne sera pas affecté par les bordures, bien que la taille d’image des étiquettes LBP résultante sera réduite à (Largeur-R) x (Hauteur-R) pixels. Les images suivantes montrent le résultat de l’application de modèles binaires locaux LBP sur l’image. Dans les images résultats (a) et (b), on peut clairement observer pourquoi les LBP sont appelés descripteur de texte.
|
Table des matières
Table des figures
Liste des tableaux
Introduction générale
CHAPITRE 1 : La reconnaissance faciale
1.1Introduction
1.2 La reconnaissance faciale
1.3 Domaines de la Reconnaissance Faciale
1.4 Historique
1.5 Les techniques de détection et de reconnaissance faciale
1.6 Problématique
1.7 Conclusion
Chapitre 2 spécifications et conceptions
2.1 introduction
2.2 Spécification de la technique et langage utilisés
2.2.1 Techniques de détection utilisées
2.2.1 Choix du langage de programmation
2.2.2 Les diagrammes de cas d’utilisation
2.3 Conception
2.3.1 Conception global
2.3.2 Conception détaillée
2.3.2.1 Diagramme de séquence « identification »
2.4 Conclusion
Chapitre 3 : Réalisation
3.1 Introduction
3.2 Environnement du Travail
3.3 Présentation
3.3.1 Détection de visage :
3.3.3 Reconnaissance faciale :
3.4 Détection de visage par open cv
3.4.1 Introduction :
3.4.2 Les étapes pour que OpenCV détecte un visage :
3.5 Prétraitement pour la reconnaissance faciale fisher (lda)
3.6 Conclusion
Conclusion Générale et perspectives
Télécharger le rapport complet