Brevet FR3088457A1 — publié le 20200515

PROCEDE DE DETECTION AUTOMATIQUE DE L'USURPATION DE VISAGE DOMAINE DE L'INVENTION La présente invention concerne le domaine de la protection contre l'usurpation d'identité, en particulier contre l'usurpation de visage, plus connue sous l'anglicisme « anti face spoofing », l'usurpation d'identité visant à déjouer un capteur biométrique en lui présentant une image biométrique contrefaite d'un utilisateur authentique. La reconnaissance faciale est de plus en plus souvent utilisée, en particulier pour sécuriser l'accès à certaines applications ou services. L'usurpation de visage consiste à ce qu'une personne non autorisée utilise l'image du visage d'une personne autorisée, à l'insu de celle-ci, afin contourner la sécurité et pouvoir accéder ainsi auxdits services, par exemple dans le cadre d'une vérification d'identité en ligne. L'usurpation de visage peut donc correspondre à des actes malveillants voire frauduleux. Par exemple, il peut être demandé à un utilisateur de se présenter à une webcam pour vérifier son identité. Le contournement de la version naïve d'un tel système de sécurité est élémentaire. Il suffit au faussaire de présenter une photo de la personne autorisée en lieu et place de lui-même. Il a donc été développé d'autres solutions, visant à émettre des messages d'instructions de mouvement à l'utilisateur par exemple de cligner un oeil, de bouger la tête, etc. Toutefois, là encore des solutions à base de masques permettent de contourner relativement facilement un tel système de sécurité. En outre, il existe également des logiciels de modification de visage, qui permettent des fraudes connues sous le terme de fraude par morphing, ou encore des logiciels d'échange de visage, ou « face swapping » par anglicisme, qui permettent d'échanger tout ou partie d'un visage par un autre, par exemple pour un document d'identité entre le visage du porteur légitime du document d'identité et le visage du fraudeur, pour créer une nouvelle image numérique et qui peuvent permettre de tromper certains systèmes de vérification d'identité par reconnaissance faciale avec une caméra fixe. Il est possible d'injecter dans un objet communicant des fausses données de localisation GPS en piratant le système d'exploitation. De manière similaire, il est possible d'injecter un flux vidéo dans un objet communicant, provenant d'une source autre que la caméra dudit objet communicant. Il existe donc un besoin de limiter ou de contrer de telles attaques de façon automatique, c'est-à-dire autrement que par un opérateur. 5 Toutefois, ce type de solution nécessite des ressources de calcul assez élevées. La présente invention ne vise pas à détecter l'utilisation de masques humains 3D en silicone, ni à se prémunir contre des attaques par des moyens d'Etats, mais vise à se prémunir contre les stratégies utilisables par l'homme de la rue. 10 Elle permet de confirmer la matérialité de la personne en face de l'écran, c'est-à-dire que le visage en face d'une webcam est réellement une personne physique et non un masque ou une image projetée ou affichée. 15 La présente invention peut être mise en oeuvre à la fois au moment de l'enrôlement d'un utilisateur de référence et au moment d'un contrôle d'identité qui comprendra d'une part la vérification de la matérialité de cette personne puis la comparaison avec une référence pour une véritable authentification. 20 RESUME DE L'INVENTION Plus précisément, l'invention concerne selon un premier de ses objets, un procédé de détection de l'usurpation d'un visage (30) d'un sujet, par traitement automatique d'un fichier de données (40), comprenant une étape consistant à : 25 - Acquérir (200) une séquence de trames vidéo d'un visage (30) avec une caméra, chaque trame vidéo comprenant un code temporel. Il est essentiellement caractérisé en ce que le procédé comprend en outre des étapes consistant à : 30 - Enregistrer (300) l'accélération subie par la caméra pendant l'acquisition de la séquence, - sélectionner (210) tout ou partie des trames vidéo, et pour chaque trame sélectionnée : o appliquer un algorithme de reconnaissance faciale (220) et extraire (230) les coordonnées d'un ensemble de points biométriques (10) prédéterminés ; 35 o déterminer (310) la valeur de l'accélération subie par la caméra à l'instant correspondant au code temporel de la trame, - Générer (400) et enregistrer dans une mémoire un fichier de données (40) comprenant de manière synchrone, 3 o le résultat d'au moins une fonction mathématique appliquée aux coordonnées dudit ensemble de points biométriques prédéterminés, et o le résultat d'au moins une fonction mathématique appliquée auxdites valeurs de l'accélération subie par la caméra, 5 - appliquer un algorithme de classification automatique par apprentissage automatique (500) audit fichier de données (40), et - émettre (600) un signal (OK, KO) représentatif de la classe attribuée par l'algorithme de classification automatique par apprentissage automatique au fichier de données. 10 On peut prévoir que la fonction mathématique appliquée aux coordonnées dudit ensemble de points biométriques prédéterminés, et appliquée auxdites valeurs de l'accélération subie par la caméra est la même et en l'espèce la fonction identité, de sorte que le fichier de données (40) comprend lesdites coordonnées dudit ensemble de points biométriques prédéterminés et lesdites valeurs de l'accélération subie par la caméra 15 On peut aussi prévoir une fonction de filtrage, en particulier des valeurs de l'accélération subie par la caméra. Dans un mode de réalisation, les étapes consistant à : - acquérir (200) une séquence de trames vidéo, et 20 - enregistrer (300) l'accélération subie par la caméra, sont mises en oeuvre par un objet communicant (20) équipé d'une caméra et d'un accéléromètre, ledit objet communicant étant mis en mouvement selon un parcours courbe imposé par rapport au dit visage (30), ledit visage étant immobile pendant l'acquisition de la séquence de trames vidéo par la caméra. Dans un mode de réalisation, l'étape (500) consistant à appliquer un algorithme de classification automatique par apprentissage automatique comprend l'application d'un algorithme de classification automatique par apprentissage automatique monoclasse ou mutliclasses. Dans un mode de réalisation, l'étape (500) consistant à appliquer un algorithme de classification automatique par apprentissage automatique comprend l'application d'un algorithme de classification automatique par apprentissage automatique supervisé. 35 Dans un mode de réalisation, l'étape (500) consistant à appliquer un algorithme de classification automatique par apprentissage automatique comprend l'application d'un algorithme de classification automatique par apprentissage automatique basé sur un réseau de neurones artificiels. 25 30 Dans un mode de réalisation, l'étape (500) consistant à appliquer un algorithme de classification automatique par apprentissage automatique comprend l'application d'un algorithme de classification automatique par apprentissage automatique de type longue 5 mémoire à court terme (LSTM). Dans un mode de réalisation, l'étape (500) consistant à appliquer un algorithme de classification automatique par apprentissage automatique comprend l'application d'un algorithme de classification automatique par apprentissage automatique basé sur une machine 10 à vecteurs de support (SVM). Dans un mode de réalisation, l'étape (500) consistant à appliquer un algorithme de classification automatique par apprentissage automatique comprend l'application d'un algorithme de classification automatique par apprentissage automatique non supervisé ou semi 15 supervisé basé sur un apprentissage par renforcement (RL). Dans un mode de réalisation, on prévoit en outre une étape (100) d'initialisation, comprenant l'acquisition de plusieurs séquences de trames vidéo de plusieurs visages (30) respectifs, et l'enregistrement de l'accélération subie par la caméra pendant l'acquisition 20 desdites séquences. Dans un mode de réalisation, les étapes consistant à : sélectionner (210) tout ou partie de l'ensemble de trames de la séquence vidéo, et extraire (230), sur chaque image de l'ensemble de trames sélectionnées, les 25 coordonnées d'un ensemble de points biométriques prédéterminés et le code temporel de la trame correspondante, Sont mises en oeuvre : a) Soit sur l'objet communicant (20) pour créer ledit fichier de données (40), Le procédé comprenant alors en outre une étape d'envoi dudit fichier de données (40) par 30 ledit objet communicant (20) à un serveur (50) configuré pour mettre en oeuvre les étapes consistant à : - appliquer (500) un algorithme de classification automatique par apprentissage automatique au fichier de données, - émettre (600) un signal représentatif de la classe attribuée par l'algorithme de 35 classification automatique par apprentissage automatique au fichier de données ; Ledit signal représentatif de la classe attribuée pouvant être transmis audit objet communicant (20) par le serveur ; b) Soit sur un serveur (50), 5 Le procédé comprenant alors en outre une étape d'envoi de ladite séquence vidéo par l'objet communicant (20) audit serveur (50), le serveur (50) étant configuré pour mettre en oeuvre les étapes consistant à : - générer (400) et enregistrer dans une mémoire un fichier de données (40) 5 - appliquer (500) au fichier de données un algorithme de classification automatique par apprentissage automatique, et - émettre (600) un signal représentatif de la classe attribuée au fichier de données par l'algorithme de classification automatique par apprentissage automatique. 10 Selon un autre de ses objets, l'invention concerne un programme d'ordinateur comprenant des instructions de code de programme pour l'exécution des étapes du procédé selon l'invention, lorsque ledit programme est exécuté sur un ordinateur. Avantageusement selon l'invention, il n'est pas nécessaire de mettre en oeuvre une étape 15 de reconstruction complète en 3D du visage de l'utilisateur, ce qui permet des calculs beaucoup plus rapides et/ou moins consommateurs en ressources de calcul, ce qui permet éventuellement d'externaliser une partie des opérations dans l'objet communicant. D'un point de vue matériel, une simple caméra suffit pour l'acquisition de la séquence 20 vidéo. L'invention est donc beaucoup plus simple à mettre en oeuvre que les solutions basées sur des caméras 3D, infra rouge, thermique, etc. D'autres caractéristiques et avantages de la présente invention apparaîtront plus clairement à la lecture de la description suivante donnée à titre d'exemple illustratif et non 25 limitatif et faite en référence aux figures annexées. DESCRIPTIF DES DESSINS - la figure 1 illustre un mode de réalisation de la mise en oeuvre du procédé selon 30 l'invention, - la figure 2 illustre un mode de réalisation de l'extraction de points biométriques, la figure 3 illustre un mode de réalisation de l'extraction de points biométriques sur le nez vu du côté droit d'un visage, - la figure 4 illustre les angles du triangle identifié sur la figure 3, 35 - la figure 5 illustre un extrait d'un mode de réalisation d'un fichier de données selon l'invention - la figure 6 illustre un mode de réalisation du procédé selon l'invention, 6 la figure 7 illustre des résultats d'un mode de réalisation d'une classification multiclasse selon l'invention. DESCRIPTION DETAILLEE 5 Par souci de concision, un seul mode de réalisation sera décrit ici. Dans ce mode de réalisation, un utilisateur est en possession d'un objet communicant 20 (par exemple un téléphone intelligent ou Smartphone par anglicisme, une tablette, etc.), c'est-à- 10 dire un dispositif électronique équipé de : une caméra 2D, de moyens de mesure et de moyens de communication. 15 Les moyens de mesure comprennent les accéléromètres, les boussoles et les gyroscopes. Ils sont configurés pour mesurer au moins l'une parmi : l'accélération linéaire de l'objet communicant en mouvement, l'accélération angulaire de l'objet communicant en mouvement, la vitesse linéaire de l'objet communicant en mouvement, 20 la vitesse angulaire de l'objet communicant en mouvement, l'orientation de l'objet communicant par rapport à un référentiel prédéfini. Par concision, les moyens de mesure sont dénommés « accéléromètre » dans la présente invention et les données issues de l'un quelconque des moyens de mesure ci-dessus 25 sont dénommées « données accélérométriques ». L'avantage d'un objet communicant 20 est que les données accélérométriques de l'accéléromètre sont mécaniquement couplées au mouvement de la caméra de celui-ci et synchronisables avec ladite caméra. 30 La synchronisation entre l'accéléromètre et les trames du flux vidéo acquis par la caméra peut être réalisée en post traitement. Elle peut également être réalisée en temps réel, par déclenchement sur la base de pas d'horloge. Par exemple à un tic d'horloge donné, on déclenche simultanément une prise de vue photo, c'est-à-dire une trame, et l'enregistrement 35 des valeurs de l'accéléromètre. Par exemple pour se connecter à un site sur Internet, ou s'authentifier, il peut être demandé à cet utilisateur de démontrer / valider que celui-ci est bien l'être humain qu'il déclare 7 être. Le site Internet doit donc s'assurer que l'utilisateur ne peut pas présenter le visage 30 d'un tiers à une webcam. À cet effet, il est proposé à l'utilisateur de réaliser une manipulation prédéterminée très 5 simple avec son objet communicant 20, consistant à filmer son visage 30 en déplaçant son objet communicant 20 selon un parcours imposé, le parcours étant courbe par rapport au visage 30, le visage 30 étant immobile pendant la prise de vue. La prise de vue consiste à enregistrer une vidéo du visage 30 tout au long du parcours 10 imposé. De préférence, le mouvement de l'objet communicant 20 est effectué dans un plan sensiblement horizontal. Par vidéo, on entend instinctivement un flux vidéo comprenant un ensemble de trames successives, ou une pluralité de photographies prises en série. 15 Pendant le déplacement de l'objet communicant 20, la vidéo enregistre un ensemble de trames et les valeurs de l'accéléromètre. Parmi les valeurs de l'accéléromètre sont conservées les quaternions unitaires représentant le référentiel par rapport auxquels les accélérations sont calculées, permettant ainsi de resynchroniser les données vis-à-vis d'éventuelles dérives. 20 Par parcours imposé, on entend que le déplacement de l'objet communicant n'est pas décidé par l'utilisateur. Le parcours peut être interactif, c'est-à-dire que une ou plusieurs instructions ou indications de déplacement peuvent envoyées à l'utilisateur par le biais de l'objet communicant. L'utilisateur doit alors mouvoir son objet communicant en respectant l'indication 25 (ou les indications) de déplacement. Ces mouvements de l'objet communicant sont détectés par l'accéléromètre et/ou par la caméra et ces données peuvent être envoyées à un serveur ou un opérateur qui vérifie la cohérence entre l'instruction de déplacement et le mouvement effectif de l'objet communicant. 30 Les indications de déplacement à opérer par l'utilisateur avec l'objet communicant 20 le long du parcours imposé sont communiquées à l'utilisateur par tous moyens connus, par exemple par texte ou par vidéo sur le site Internet ; ou encore par des indicateurs graphiques notamment sous forme de flèches affichées sur l'écran de l'objet communicant 20 dont le sens indique à l'utilisateur dans quel sens mouvoir celui-ci. 35 Le mouvement de l'objet communicant 20 est effectué selon un parcours courbe imposé par rapport au visage 30 dudit sujet, ledit visage 30 du sujet étant immobile pendant la prise de vue de la caméra. Par exemple l'utilisateur effectue manuellement le parcours imposé. En l'espèce, on peut prévoir un mouvement en forme d'arc de cercle dans un plan 5 sensiblement horizontal, ledit plan sensiblement horizontal passant de préférence entre les yeux et la bouche de l'utilisateur, le visage de l'utilisateur étant en permanence dans le champ de l'objectif tout au long du parcours de manière à ce que la totalité du visage soit visible et si possible centré pour limiter les aberrations optiques. 10 Pendant le mouvement de l'objet communicant 20, la caméra de celui-ci effectue une prise de vue continue, c'est-à-dire une acquisition 200, et enregistre une séquence vidéo. De même, les données de l'accéléromètre de l'objet communicant 20 sont enregistrées de manière synchronisable à la séquence vidéo. 15 On peut prévoir une étape de contrôle consistant à évaluer la présence de défauts aléatoires dans le déplacement, attribuables à un mouvement humain et qui n'existeraient pas avec une prise de vue simulée ou automatisée, en particulier effectuée sur un rail. 20 A cet effet, on peut prévoir que le contrôle comprend un seuillage haut et/ou un seuillage bas des données accélérométriques. Pendant l'enregistrement de la séquence vidéo, il est recommandé que le visage 30 de l'utilisateur soit aussi immobile que possible pour des raisons exposées ultérieurement. Traitement de la séquence vidéo La séquence vidéo comprend un ensemble de trames vidéo successives ou un ensemble de photographies en série, ci-après « trames » par concision. On peut prévoir de sélectionner 210 tout ou partie de l'ensemble des trames de la séquence vidéo. Sur chaque image de chaque trame sélectionnée, on prévoit d'identifier un ensemble de 35 points biométriques 10 prédéterminés puis d'extraire 230 les coordonnées de l'ensemble de points biométriques 10 prédéterminés, ainsi que le code temporel de la trame correspondante. 25 30 9 Le code temporel de chaque trame est aisément accessible. Pour identifier un ensemble de points biométriques 10 prédéterminés, on prévoit d'appliquer 220 un algorithme de reconnaissance faciale à chaque image de chaque trame 5 sélectionnée. Par exemple, on peut appliquer un logiciel basé sur la bibliothèque logicielle DLIB, et qui détermine la position d'un ensemble de points biométriques 10 prédéterminés, chaque point correspondant à un élément morphologique prédéterminé d'un visage 30, par exemple le coin 10 de l'o/il droit, le coin de l'oeil gauche, le bas du nez, les coins de la bouche, etc. comme illustré sur la figure 2 où chaque rond indique un point biométrique 10. Traitement des données accélérométriques 15 Par données accélérométriques, on entend les données issues de l'accéléromètre de l'objet communicant 20. Ces données sont enregistrées grâce à une étape 300 d'enregistrement des données de l'accéléromètre. On peut alors déterminer 310 la valeur de l'accélération subie par la caméra, par exemple 20 en sélectionnant les valeurs de l'accéléromètre correspondant à l'instant du code temporel de la trame sélectionnée, ou encore par interpolation ou par extrapolation. Un accéléromètre 3D est configuré pour mesurer l'accélération selon trois axes orthogonaux XYZ (figure 1). Les données accélérométriques comprennent l'accélération selon 25 chacun de ces axes X, Y et Z et peuvent comprendre l'accélération angulaire autour de chacun de ces axes X, Y et Z. Avec un gyroscope ou une boussole, les données accélérométriques sont relatives à la position ou l'orientation de l'objet communicant. Ces données peuvent être traitées par une fonction mathématique, et le résultat peut être 30 enregistré dans un fichier de données 40 décrit ci-dessous. Fichier de données 40 Les étapes de traitement de la séquence vidéo et de traitement des données accélérométriques permettent de générer 400 un fichier de données 40. 35 Le fichier de données 40 est une table comprenant à chaque instant de mesure : 10 les données de l'accéléromètre de l'objet communicant 20, ou une fonction de celles-ci, et les coordonnées de la position de l'ensemble de points biométriques 10 prédéterminés, ou une fonction de celles-ci. 5 Avantageusement, on peut prévoir qu'il n'est pas nécessaire de calculer l'angle duquel la position de l'objet communicant 20 a varié depuis la mesure précédente. En l'espèce, le fichier de données 40 se présente sous la forme d'une matrice à 2 10 dimensions, dont une des dimensions comprend le code temporel de chaque trame sélectionnée, et dont l'autre dimension comprend un ensemble de données issues de l'accéléromètre. On peut prévoir que les données issues de l'accéléromètre sont les mesures brutes de 15 l'accéléromètre. On peut aussi prévoir, à titre d'alternative ou en combinaison, que les données enregistrées dans le fichier de données 40 sont nos résultats de calculs basés sur les données brutes. Par exemple, on peut prévoir une étape de filtrage des données brutes. 20 On peut aussi prévoir d'enregistrer des données différentielles dans le fichier de données 40. Par exemple pour chaque dimension de l'accéléromètre : la valeur de l'accéléromètre selon cette dimension pour une trame au temps t moins la valeur de l'accéléromètre selon cette même dimension pour la trame au temps t-1, et la même chose pour les deux autres 25 dimensions de l'accéléromètre tridimensionnel, ce qui rend le résultat plus sensible. Le fichier de données 40 comprend les coordonnées d'un ensemble de points biométriques 10 prédéterminés (non illustré). 30 On peut aussi prévoir que le fichier de données 40 comprend un traitement mathématique des coordonnées de l'ensemble de points biométriques 10 prédéterminés. Par exemple, on peut prévoir de calculer des distances ou des angles entre différents points biométriques 10, des statistiques (moyennes, écart type, etc.), ou encore d'autres 35 fonctions mathématiques. Par exemple avec un mouvement courbe de l'objet communicant 20 devant le visage 30 de l'utilisateur, le long d'un parcours imposé partant d'un profil du visage 30 et allant jusqu'à 11 l'autre profil du visage 30, ce qui est illustré par une flèche en pointillés sur la figure 1, la distance entre les deux yeux calculée de trame en trame va d'abord augmenter jusqu'à ce que la caméra de l'objet communicant 20 soit en face du visage 30, puis diminuer. Une telle distance entre les deux yeux pour chaque trame peut être enregistrée dans le fichier de 5 données 40. Par exemple, le mouvement est sensiblement en arc de cercle, notamment si l'utilisateur tient l'objet communicant à bout de bras tout au long du parcours imposé, ou en arc d'ellipse. On peut prévoir également une tolérance verticale correspondant aux fluctuations naturelles du 10 mouvement d'un bras humain, par exemple on considère que le parcours imposé doit être effectué dans un plan horizontal plus ou moins une marge prédéfinie, en l'espèce de 10 cm. De même, on peut prévoir de calculer les valeurs de certains angles à partir de trois points biométriques 10 prédéfinis. Comme illustré sur la figure 3 et figure 4, on prévoit par 15 exemple de calculer les angles a, 13 et y qui correspondent aux extrémités du nez de l'utilisateur, et d'enregistrer ces valeurs dans le fichier de données 40. Un exemple d'un extrait de fichier de données 40 est illustré sur la figure 5. Les différentes colonnes de gauche à droite correspondent respectivement au code temporel 20 (Time), à la rotation de l'objet communicant 20 sur lui-même selon l'axe X (Gyr X(rad/s)), selon l'axe Y (Gyr Y(rad/s)) et selon l'axe Z (Gyr Z(rad/s)), à l'accélération mesurée selon l'axe X (Acc X(m/s2)), selon l'axe axe Y (Acc Y(m/s2)) et selon l'axe Z (Acc Z(m/s2)). D'autres colonnes peuvent être ajoutées et comprendre par exemple comme discuté ci-dessus, les valeurs des angles a, p et y ou d'autres valeurs. 25 On peut prévoir que les données enregistrées dans le fichier de données 40 ont été préalablement filtrées, par exemple pour prendre en compte les mouvements parasites introduits par la manipulation de l'objet communicant. Algorithme de classification automatique 30 On prévoit d'appliquer 500 un algorithme de classification automatique par apprentissage automatique au fichier de données 40, c'est-à-dire qu'on applique une méthode d'apprentissage automatique aux données de la matrice basée sur une intelligence artificielle, pour caractériser si ces données correspondent à un visage 30 pris dans des conditions normales ou non. 35 Dans un mode de réalisation, on prévoit que l'algorithme de classification automatique par apprentissage automatique est monoclasse, ce qui permet d'avoir une classification rapide. 12 Par exemple le temps de calcul peut prendre moins d'une fois le temps d'acquisition sur une machine standard, par exemple un ordinateur individuel. 5 En l'espèce, on prévoit que la classe unique est la classe qualifiée de « vrai » c'est-à-dire que l'apprentissage automatique a été effectué sur un jeu de séquences vraies. Dans un mode de réalisation, on prévoit que l'algorithme de classification automatique par apprentissage automatique est mutliclasse, ce qui permet d'avoir une classification moins 10 rapide que le monoclasse mais un résultat plus fin, c'est-à-dire qu'il permet de détecter par exemple le type d'attaque, chaque classe autre que la classe « vraie » correspondant à un type d'attaque, par exemple une classe « attaque par masque », etc. l'apprentissage automatique ayant été effectué sur un jeu de séquences comprenant de telles attaques. 15 De préférence, l'algorithme de classification automatique par apprentissage automatique est supervisé, et vise notamment à détecter la classe « vraie », c'est-à-dire que les données du fichier de données 40 sont classées par l'algorithme de classification automatique par apprentissage automatique dans la classe prédéterminée « vraie », considérée comme correspondant à un vrai visage 30. 20 Dans un mode premier de réalisation, l'algorithme de classification automatique par apprentissage automatique est basé sur une machine à vecteurs de support (SVM). Au sens de la présente invention, on considère que le SVM est une des branches de l'intelligence artificielle. 25 Dans un deuxième mode de réalisation, l'algorithme de classification automatique par apprentissage automatique est basé sur un réseau de neurones artificiels. En particulier, on peut prévoir que le réseau de neurones artificiels est de type longue 30 mémoire à court terme, plus connu sous l'acronyme LSTM pour « Long Short-Term Memory » en Anglais, qui sont des réseaux spécialisés dans l'apprentissage automatique des séquences et moins sensible au bruit que les machines à vecteurs de support. D'autres types de réseau sont possibles, notamment des réseaux récurrents, par exemple 35 tels que des réseaux Elman, des réseaux Jordan, des réseaux Hopfield ; un réseau récurrent à portes ou GRU pour « Gated Recurrent Unit » en Anglais, un réseau BAM pour « bidirecfional associative memory » en Anglais, un réseau basé sur l'attention ou « Attention Based 13 Network » en Anglais, un réseau à renforcement d'apprentissage ou RL pour « Reinforcement Learning » etc. Quel que soit le mode de réalisation, on a de préférence préalablement prévu une 5 étape 100 d'initialisation, comprenant l'acquisition de plusieurs séquences de trames vidéo de plusieurs visages 30 respectifs, et l'enregistrement de l'accélération subie par la caméra pendant l'acquisition desdites séquences. L'apprentissage automatique est de préférence effectué sur un ensemble de données 10 correspondant au moins à une pluralité de visages 30 authentiques, permettant de définir la classe « vraie ». On peut prévoir un enrichissement permanent de la classification par capitalisation des données accumulées grâce à l'invention sur une pluralité de visages. 15 On peut aussi prévoir de définir une pluralité de classes, par exemple pour affiner le type d'attaques détectées et définir de nouvelles classes, c'est-à-dire de nouveaux types d'attaques, dans le temps. 20 L'étape de classification automatique par apprentissage automatique peut être mise en oeuvre sur l'objet communicant 20. De préférence, elle est effectuée sur un serveur 50 distant, ce qui sécurise les calculs contre le piratage du système d'exploitation de l'objet communicant 20. 25 De même, l'extraction des points biométriques 10 peut être réalisée sur l'objet communicant 20, à supposer que son système d'exploitation soit intègre, c'est-à-dire qu'il n'est pas ou n'a pas été piraté pour y injecter une vidéo. Autrement, on peut réaliser l'extraction des points biométriques 10 sur un serveur 50 distant auquel est envoyé la vidéo. 30 L'algorithme de classification automatique par apprentissage automatique permet de classer les données du fichier de données 40 en fonction de l'apprentissage automatique et de l'étape d'initialisation. Le classement correspond par exemple à émettre 600 un signal de classification dont la 35 valeur correspond à la classe attribuée par l'algorithme de classification automatique par apprentissage automatique. 14 Par exemple sur la figure 6 le signal OK signifie que le visage est reconnu comme vrai et le signal KO que le visage est reconnu comme faux. Comme exposé précédemment, en fonction de l'algorithme de classification automatique 5 par apprentissage automatique choisi, on peut prévoir plus de deux signaux de sortie pour un algorithme multiclasse, de sorte à déterminer la classification du type de faux candidat, par exemple un masque, une attaque par téléphone intelligent, une attaque par séquence vidéo injectée, etc. 10 Par exemple, la figure 7 représente l'application d'un algorithme de classification automatique par apprentissage automatique multiclasse basé sur une machine à vecteurs de support (SVM). La figure 7 est issue de tests réalisés par la demanderesse. La frontière du SVM est indiquée par une ligne noire continue (résultat certain à plus de 15 99%). Les triangles tête en bas correspondent à l'apprentissage automatique (initialisation) avec de vrais visages ; et les triangles tête en haut correspondent aux résultats issus d'un apprentissage automatique avec de faux visages (masques). 20 Les ronds gris clair correspondent aux résultats issus de tests avec de vrais visages ; et les ronds gris foncé correspondent aux résultats issus de tests avec de faux visages (masques). Nomenclature 10 Point biométrique 20 Objet communicant 30 visage Fichier de données 50 Serveur 100 Initialisation 200 Acquisition séquence vidéo 210 Sélection de trames vidéo 220 Application algorithme de reconnaissance faciale 230 Extraction des coordonnées d'un ensemble de points biométriques prédéterminés 300 Enregistrement des données de l'accéléromètre 310 Détermination de la valeur de l'accélération subie par la caméra 400 Génération et enregistrement dans une mémoire du fichier de données 15 500 Application d'un algorithme de classification automatique par apprentissage automatique 600 Emission d'un REVENDICATIONS1. Procédé de détection de l'usurpation d'un visage (30) d'un sujet, par traitement automatique d'un fichier de données (40), comprenant une étape consistant à : - Acquérir (200) une séquence de trames vidéo d'un visage (30) avec une caméra, chaque trame vidéo comprenant un code temporel, Caractérisé en ce que le procédé comprend en outre des étapes consistant à : - Enregistrer (300) l'accélération subie par la caméra pendant l'acquisition de la séquence, - sélectionner (210) tout ou partie des trames vidéo, et pour chaque trame sélectionnée : o appliquer un algorithme de reconnaissance faciale (220) et extraire (230) les coordonnées d'un ensemble de points biométriques (10) prédéterminés ; o déterminer (310) la valeur de l'accélération subie par la caméra à l'instant correspondant au code temporel de la trame, Générer (400) et enregistrer dans une mémoire un fichier de données (40) comprenant de manière synchrone, o le résultat d'au moins une fonction mathématique appliquée aux coordonnées dudit ensemble de points biométriques prédéterminés, et o le résultat d'au moins une fonction mathématique appliquée auxdites valeurs de l'accélération subie par la caméra, appliquer un algorithme de classification automatique par apprentissage automatique (500) audit fichier de données (40), et émettre (600) un signal (OK, KO) représentatif de la classe attribuée par l'algorithme de classification automatique par apprentissage automatique au fichier de données. 2. Procédé selon la revendication 1, dans lequel les étapes consistant à : acquérir (200) une séquence de trames vidéo, et enregistrer (300) l'accélération subie par la caméra, sont mises en oeuvre par un objet communicant (20) équipé d'une caméra et d'un accéléromètre, ledit objet communicant étant mis en mouvement selon un parcours courbe imposé par rapport audit visage (30), ledit visage étant immobile pendant l'acquisition de la séquence de trames vidéo par la caméra. 3. Procédé selon l'une quelconque des revendications précédentes, dans lequel : - L'étape (500) consistant à appliquer un algorithme de classification automatique par apprentissage automatique comprend l'application d'un algorithme de classification automatique par apprentissage automatique monoclasse ou mutliclasses. 17 4. Procédé selon l'une quelconque des revendications précédentes, dans lequel : L'étape (500) consistant à appliquer un algorithme de classification automatique par apprentissage automatique comprend l'application d'un algorithme de classification automatique par apprentissage automatique supervisé. 5. Procédé selon la revendication 4, dans lequel : - L'étape (500) consistant à appliquer un algorithme de classification automatique par apprentissage automatique comprend l'application d'un algorithme de classification automatique par apprentissage automatique basé sur un réseau de neurones artificiels. 6. Procédé selon la revendication 5, dans lequel : - L'étape (500) consistant à appliquer un algorithme de classification automatique par apprentissage automatique comprend l'application d'un algorithme de classification automatique par apprentissage automatique de type longue mémoire à court terme (LSTM). 15 7. Procédé selon la revendication 4, dans lequel : - L'étape (500) consistant à appliquer un algorithme de classification automatique par apprentissage automatique comprend l'application d'un algorithme de classification automatique par apprentissage automatique basé sur une machine à vecteurs de support 20 (SVM). 8. Procédé selon l'une quelconque des revendications précédentes, comprenant en outre une étape (100) d'initialisation, comprenant l'acquisition de plusieurs séquences de trames vidéo et de l'accélération subie par la caméra pendant l'acquisition de chacune desdites 25 séquences, chaque séquence de trames vidéo correspondant à un visage (30) respectif. 9. Procédé selon l'une quelconque des revendications 2 à 8, dans lequel : les étapes consistant à : - sélectionner (210) tout ou partie de l'ensemble de trames de la séquence vidéo, et 30 - extraire (230), sur chaque image de l'ensemble de trames sélectionnées, les coordonnées d'un ensemble de points biométriques prédéterminés et le code temporel de la trame correspondante, Sont mises en oeuvre : a) Soit sur l'objet communicant (20) pour créer ledit fichier de données (40), 35 Le procédé comprenant alors en outre une étape d'envoi dudit fichier de données (40) par ledit objet communicant (20) à un serveur (50) configuré pour mettre en oeuvre les étapes consistant à: 5 10 18 - appliquer (500) un algorithme de classification automatique par apprentissage automatique au fichier de données, - émettre (600) un signal représentatif de la classe attribuée par l'algorithme de classification automatique par apprentissage automatique au fichier de données ; 5 Ledit signal représentatif de la classe attribuée pouvant ëtre transmis audit objet communicant (20) par le serveur b) Soit sur un serveur (50), Le procédé comprenant alors en outre une étape d'envoi de ladite séquence vidéo par l'objet communicant (20) audit serveur (50), le serveur (50) étant configuré pour mettre en 10 oeuvre les étapes consistant à : - générer (400) et enregistrer dans une mémoire un fichier de données (40) - appliquer (500) un algorithme de classification automatique par apprentissage automatique au fichier de données, et - émettre (600) un signal représentatif de la classe attribuée par l'algorithme de 15 classification automatique par apprentissage automatique au fichier de données. 10. Programme d'ordinateur comprenant des instructions de code de programme pour l'exécution des étapes du procédé selon l'une quelconque des revendications précédentes, lorsque ledit programme est exécuté sur un ordinateur. 20