La reconnaissance faciale
La reconnaissance faciale est une technique biométrique relativement récente. Si l’empreinte digitale est la technique biométrique la plus ancienne inventée en 1903 pour rechercher les criminels, la reconnaissance des visages a été développé par « Benton et Van Allen » en 1968 pour évaluer la capacité d’identification des visages non familiers. Il ne s’agit pas d’un test de reconnaissance ménisque de visages familiers ou non familiers, mais d’une épreuve consistant à apparier des photographies de visages non familiers présentés sous différents éclairages et selon des angles différents et nécessitant une bonne capacité d’intégration Visio-spatiale [https://www.clicours.com/]. L’utilisation des techniques de reconnaissance faciale a connu un développement à grande échelle de puis le milieu des années 90, avec l’utilisation efficace de nouvelles technologies, notamment l’ordinateur et sa capacité de traitement d’images. L’utilisation de ces techniques existe depuis qu’une machine est capable de comprendre ce qu’elle « voit » lorsqu’on la connecte à une ou plusieurs caméras, c’est à dire que les premiers essais datent du début des années 70 (Benton et Van Allen en 1968), et sont basés sur des méthodes à bases d’heuristiques, basés sur des attributs faciaux mesurables comme l’écartement des yeux, des sourcils, des lèvres, la position du menton, la forme, etc [3]. Ces méthodes sont très peu robustes, car elles font de nombreuses suppositions en se plaçant dans des cas très simples (visage de face, bonnes conditions d’illuminations, etc. L’une des premières tentatives de reconnaissance de visage est faite par Takeo Kanade en 1973 lors de sa thèse de doctorat à l’Université de Kyoto.
Domaines d’application de la reconnaissance faciale La sécurité reste le domaine d’application principal. Dans ce domaine, la reconnaissance des visages est nécessaire à l’identification et à l’authentification. Un bon exemple de cet usage est En 2017, Gemalto (maintenant Thales) signe l’équipement de nouveaux cas de contrôle automatisés du système PARAFE (Passage Automatisé Rapide aux Frontières Extérieures) au sein des aéroports de Paris. La solution a évolué de la reconnaissance des empreintes digitales à la reconnaissance faciale en 2018 et à réduit le temps moyen de passage de 30-45 secondes à 10-15 secondes [6]. Le contrôle policier peut y avoir recours bien qu’il reste très encadré en Europe. En 2016, « l’homme au chapeau » des attentats de Bruxelles aurait été identifié grâce à un logiciel de reconnaissance faciale du FBI [7]. Les drones équipés de caméra offrent une combinaison intéressante pour la reconnaissance faciale lors de grands évènements, par exemple. Les drones, en position fixe jusqu’à 100 mètres de haut, peuvent porter des optiques lourdes (10kg) et identifier une personne à 800 mètres. De plus comme ils sont reliés par câble, l’autonomie électrique est illimitée et les communications (par câble aussi) sont sécurisées [7]. Google et Facebook ont implémenté des algorithmes pour identifier les personnes dans leur base de données de photos.
En 2014 Facebook annonçait le lancement de son programme baptisé DeepFace, capable de déterminer si deux visages photographiés appartiennent à la même personne, avec une précision de 97,25%. Soumis au même test, les humains répondent correctement dans 97,53% des cas, soit à peine 0,28% de mieux que le programme de Facebook. En juin 2015, Google renchérissait avec FaceNet, nouveau système de reconnaissance faciale aux scores jamais égalés : 99,63% de précision au test de référence Labeled Facebooks in The Wild ; 95 % sur la base YouTube Faces DB. En utilisant un réseau neuronal artificiel et un nouvel algorithme, la firme de Mountain View est parvenue à rapprocher un visage et son propriétaire à la quasi-perfection. Une technologie intégrée dans Google Photos pour trier les clichés et les tagger automatiquement en fonction des personnes reconnues et, preuve de sa pertinence, devenue rapidement disponible en ligne dans une version open-source officieuse, OpenFace [7]. La santé a aussi connait des avancements considérables dans ce domaine. Grâce au Deep Learning et à la reconnaissance faciale et des émotions, il est déjà possible : De suivre plus précisément la consommation de médicaments d’un patient ; De détecter une maladie génétique telle que le syndrome de DiGeorge avec un taux de réussite de 96,6% ; D’accompagner les procédures de prise en charge de la douleur [7]. Il existe plain d’autres domaine d’application de la reconnaissance facial tel que: Le commerce, les systèmes de déverrouillage, les filtres de snapchat…. etc.
Problématique
Le problème de la reconnaissance de visages peut être formulé comme suit : étant données une ou plusieurs images d’un visage, la tâche est de trouver ou de vérifier l’identité d’une personne par comparaison de son visage à l’ensemble des images de visage stockées dans une base de données. En général, un système de biométrie faciale est constitué de deux modules : un module de segmentation de visages (détection ou localisation de visage), et un module de reconnaissance qui se déroule en trois étapes : normalisation ou prétraitement, extraction de caractéristiques faciales, classification (Figure 1.1).
•Capture : image ou vidéo C’est la première étape dans le processus. C’est aussi l’acquisition des informations et leur transfert vers l’unité de traitement. C’est est une étape très importante dans les systèmes de reconnaissance. En effet, avoir des images de bonne qualité en référence améliore les performances de reconnaissance. Il faut réussir à capter l’information pertinente sans bruit [15].
•Détection de visage : La détection de visage dans l’image est un traitement indispensable avant la phase de reconnaissance. En effet, le processus de reconnaissance de visages ne pourra jamais devenir intégralement automatique s’il n’est pas précédé par une étape de détection efficace [14]. Cela peut se faire par détection de la couleur de la peau, la forme de la tête, l’apparence faciale, ou par des méthodes détectant les différentes caractéristiques du visage par des descripteurs locaux (Adaboost). Après la segmentation du visage, on peut filtrer ou améliorer la qualité par des prétraitements qui sont appliqués au visage extrait. On peut effectuer des normalisations géométriques et photométriques. Ces prétraitements sont nécessaires pour éliminer ou limiter les variations de pose, uniformiser l’éclairage, minimiser l’influence de l’illumination, ainsi d’ajuster le visage pour qu’il ait une dimension particulière et qu’il soit horizontal [15].
•Extraction de caractéristiques : Le but est d’extraire les caractéristiques du visage qui peuvent le rendre à la fois différent de celui des autres personnes et robuste aux variations de la personne elle-même. C’est l’information nécessaire pour que le visage d’une personne ne ressemble pas à celui d’une autre personne et en même temps qu’il ressemble à lui-même dans d’autres conditions d’acquisition [15].
•Comparaison : Selon les caractéristiques extraites précédemment, les algorithmes de comparaison diffèrent. On trouve dans la littérature plusieurs approches : calcul de distance, calcul de similarité. D’autres méthodes se basent sur la classification des caractéristiques par un seul classifieur (SVM, classifieur baysien, etc.) ou par plusieurs classifieurs (Adaboost).
Conclusion générale
Ce travail illustre le fonctionnement d’un système de verrouillage électronique intelligent avec reconnaissance faciale à base d’un Raspberry Pi 3B. Les aspects de ce système sont: la détection du visage des individus par utilisation du module OpenCV puis vérification de son existence parmi plusieurs visages stockés en base de données, pour des visages inconnus aucune action n’est déclenchée, par contre pour les visages connus et stockés ; l’indentification du visage provoque l’affichage d’un nouveau cadre présentant un boutant de déverrouillage ainsi que le temps et la date de cette identification. L’utilisation de ce bouton provoque l’ouverture de la porte ainsi que l’introduction de ces informations d’accès dans une base de données csv qu’on peut consulter via une page internet sous réseau local Nous avons rencontré quelques obstacles dans ce travail, tels que l’existence d’un défaut de certains composants, le manque des instruments dans les laboratoires, d’où la nécessité de les chercher ailleurs, le flux d’Internet faible au niveau des laboratoires, le langage de programmes que nous n’avions pas connus auparavant. Mais nous avons tiré parti de nouvelles informations et avons travaillé avec de nombreux programmes (Python, Linux, Raspbian .. ). Et nous nous sommes familiarisés avec les différents types de ce système de verrouillage. Cependant, ce projet peut être amélioré, nous pouvons ajouter plus de paramètres à l’utilisateur pour lui donner plus de contrôle, et luis permettre aussi de contrôler les accès a partir d’un réseau internet externe, ainsi de commander le verrouillage et le déverrouillage a distance.
Introduction générale |