FR 3088467 A1 20200515 FR 1860323 A 20181108 Procédé de classification d'une image d'entrée représentative d'un trait biométrique au moyen d'un réseau de neurones à convolution DOMAINE TECHNIQUE GENERAL La présente invention concerne le domaine de la biométrie, et propose en particulier un procédé de classification d'une image d'entrée représentative d'un trait biométrique au moyen d'au moins un réseau de neurones à convolution, ainsi qu'un procédé d'apprentissage du ou des réseaux de neurones à convolution. ETAT DE L'ART Les réseaux de neurones sont massivement utilisés pour la classification de données. 15 Après une phase d'apprentissage automatique (généralement supervisé, c'est-à-dire sur une base de données de référence déjà classifiées), un réseau de neurones « apprend » et devient tout seul capable d'appliquer la même classification à des données inconnues. Les réseaux de neurones à convolution, ou CNN (Convolutional Neural 20 Networks) sont un type de réseau de neurones dans lequel le motif de connexion entre les neurones est inspiré par le cortex visuel des animaux. Ils sont ainsi particulièrement adaptés à un type particulier de classification qui est l'analyse d'image, ils permettent en effet avec efficacité la reconnaissance d'objets ou de personnes dans des images ou des vidéos, en particulier dans des applications de 25 sécurité (surveillance automatique, détection de menace, etc.). On connait tout particulièrement une utilisation des CNN dans le domaine de l'authentification/identification biométrique. En effet, un CNN peut être entraîné à reconnaitre un individu sur la base de traits biométriques de cet individu tels que les empreintes digitales (reconnaissance digitale), l'iris ou le visage 30 (reconnaissance faciale). Dans la mesure où ces données sont manipulées sous formes d'images, le CNN s'avère très efficace. Les approches biométriques classiques utilisent les informations caractéristiques du trait biométrique extraites à partir de la biométrie acquise, 10 2 appelées « features », et l'apprentissage/classification est réalisé sur la base de la comparaison de ces caractéristiques. En particulier, dans le cas de la reconnaissance digitale, les images d'extrémité de doigt sont traitées de sorte à extraire les caractéristiques d'une 5 empreinte qui peuvent être classées en trois catégories : - Le niveau 1 définit le motif général de cette empreinte (une des quatre classes : boucle à droite, boucle à gauche, arche et spirale), et le tracé global des crètes (on obtient en particulier une carte d'orientation dite « Ridge Flow Matrix », carte RFM, qui représente en chaque point de l'empreinte la direction générale de la crète). - Le niveau 2 définit les points particuliers des empreintes appelés minuties, qui constituent des « événements » le long des crêtes (fin d'une crête, bifurcation, etc.). Les approches classiques de reconnaissance utilisent essentiellement ces caractéristiques. - Le niveau 3 définit des informations plus complexes telles que la forme des crêtes, les pores de la peau, des cicatrices, etc. On appelle ainsi un « codage » le procédé d'extraction des caractéristiques d'une empreinte (sous la forme de cartes de caractéristiques, ou « feature maps »), lesquelles permettent de composer une signature appelée « template » encodant l'information utile à la phase finale de classification. Plus précisément, on va réaliser la classification par comparaison des cartes de caractéristiques obtenues avec une ou plusieurs carte(s) de caractéristiques de référence associée(s) à des individus connus. Il serait souhaitable d'éviter la phase de codage et de parvenir à réaliser directement l'apprentissage/classification sur la base des données biométriques, i.e. de représenter la biométrie par un vecteur réduit sans qu'il ne soit plus nécessaire d'extraire explicitement les caractéristiques. Les approches récentes dans le domaine de l'apprentissage profond ont 30 permis de telles avancées majeures notamment dans le domaine de la reconnaissance faciale : l'apprentissage/classification peut être réalisé directement sur la base des photographies de visage. 3 L'application de telles approches à la reconnaissance digitale se heurte aux spécificités inhérentes aux empreintes digitales et les performances n'ont jusqu'à ce jour pas été convaincantes. En particulier, les CNN requièrent un volume de données d'apprentissage plus important. 5 En effet, si les images de visage sont toujours acquises d'une manière relativement standardisée (aux conditions d'éclairage près), ce n'est pas toujours le cas pour les empreintes, et tout particulièrement les empreintes dites latentes par exemple celles trouvées sur une scène de crime. Deux images d'empreintes de la même identité peuvent présenter l'une par rapport à l'autre de fortes 10 rotations, des occultations ainsi qu'un ensemble de distorsions. Il a été proposé dans la demande de brevet FR1855170 une augmentation particulière des données d'apprentissage comprenant l'application de transformations géométriques et/ou en intensité de sorte à créer de multiples occurrences « altérées » des données d'entrée. 15 Cela améliore efficacement la robustesse aux déformations, mais il reste toujours difficile de travailler sur des empreintes d'orientation inconnue et il est souhaitable d'améliorer encore la performance. PRESENTATION DE L'INVENTION 20 Selon un premier aspect, la présente invention concerne un procédé de classification d'une image d'entrée représentative d'un trait biométrique au moyen d'un premier réseau de neurones à convolution, CNN, caractérisé en ce qu'il 25 comprend la mise en oeuvre par des moyens de traitement de données d'un client d'étapes de : (c) Estimation d'un vecteur de paramètres de transformation de ladite image d'entrée, au moyen d'un deuxième CNN, les paramètres du vecteur étant représentatifs d'une transformation géométrique permettant de recaler le trait biométrique représenté par l'image d'entrée dans un référentiel commun ; 4 (d) Application à ladite image d'entrée d'une transformation définie par ledit vecteur de paramètres de transformation estimé, de sorte que à obtenir une image d'entrée recalée ; (e) Classification de l'image d'entrée recalée au moyen du premier CNN. 5 Selon d'autres caractéristiques avantageuses et non limitatives : - lesdites traits biométriques sont choisis parmi des empreintes digitales, des visages et des iris, en particulier des empreintes digitales ; - lesdits paramètres de transformation comprennent au moins un ensemble de 10 coefficients de déformation chacun associé à une fonction de déformation non- linéaire de référence d'une famille de fonctions de déformation non-linéaires de référence, ladite transformation définie par ledit vecteur de paramètres de transformation estimé comprenant une déformation exprimée à partir de ladite famille de fonctions de déformation non-linéaires de référence et des coefficients 15 associés ; - lesdites fonctions de déformation non-linéaires de référence sont des champs de vélocité, ladite déformation étant exprimée sous la forme d'un champ de distorsion difféomorphique comme une exponentielle d'une combinaison linéaire des champs de vélocité pondérés par lesdits coefficients associés ; 20 - lesdits paramètres de transformation comprennent en outre un paramètre de rotation et/ou un paramètre de changement d'échelle et/ou au moins un paramètre de translation ; - ladite transformation définie par ledit vecteur de paramètres de transformation estimé comprend une composition de ladite déformation avec une transformation 25 affine exprimé(e)(s) à partir des paramètres de transformation correspondants ; - le procédé comprend la mise en oeuvre préalable d'étapes (a) d'estimation d'un vecteur de paramètres descriptifs d'un point singulier du trait biométrique sur ladite image d'entrée, au moyen d'un troisième CNN, et (b) de recadrage de ladite image d'entrée en fonction des paramètres estimés dudit point singulier, de sorte 30 que les paramètres dudit point singulier présentent pour l'image d'entrée recadrée des valeurs prédéterminées ; les étapes (c) et (d) étant mises en oeuvre sur l'image d'entrée recadrée ; 5 - lesdits paramètres de transformation comprennent au moins une coordonnée du point singulier et un angle du point singulier, ledit recadrage de l'image d'entrée comprenant une translation et/ou une rotation ; - le procédé comprend une étape (a0) préalable d'apprentissage, par des 5 moyens de traitement de données d'un serveur, à partir d'une base d'images d'apprentissage déjà classifiées, de paramètres desdits premier et deuxième CNNs; - les premier et deuxième CNNs sont appris de manière simultanée et semisupervisée, les images d'apprentissage de la base d'images d'apprentissage 10 n'étant pas associées à des paramètres de transformation ; - l'étape (a0) comprend également l'apprentissage du troisième CNN, les images d'apprentissage de la base d'images d'apprentissage étant associées à des paramètres descriptifs d'un point singulier ; - l'apprentissage des premier et deuxième CNN comprend, pour au moins une 15 image d'apprentissage de ladite base d'images d'apprentissage, l'obtention d'une image d'apprentissage recalée, la classification de l'image d'apprentissage recalée, et la minimisation d'une fonction de coût ; - l'étape (a0) comprend préalablement l'analyse statistique de ladite base d'images d'apprentissage déjà classifiées, de sorte à déterminer ladite famille de 20 fonctions de déformation non-linéaires de référence permettant d'exprimer des transformations observées dans la base de données d'apprentissage en fonction d'un ensemble de coefficients ; - lesdites transformations observées dans la base de données d'apprentissage sont les transformations non-linéaires permettant de passer de l'une à l'autre des 25 données d'un couple d'images d'apprentissage représentatives d'un même trait biométrique ; - ladite analyse statistique est une analyse en composantes principales sur l'ensemble des champs de distorsion exprimant les transformations observées dans la base de données d'apprentissage, les fonctions de déformation non- 30 linéaires de référence étant déterminées comme des champs de vélocité définis par des vecteurs propres issus de l'analyse en composantes principales ; - ledit trait biométrique représenté par l'image d'entrée est celui d'un individu, l'étape (e) étant une étape d'identification ou d'authentification dudit individu. 6 Selon un deuxième et un troisième aspect, l'invention propose un produit programme d'ordinateur comprenant des instructions de code pour l'exécution d'un procédé selon le premier aspect de classification d'une image d'entrée représentative d'un trait biométrique au moyen d'un premier réseau de neurones à 5 convolution, CNN ; et un moyen de stockage lisible par un équipement informatique sur lequel un produit programme d'ordinateur comprend des instructions de code pour l'exécution d'un procédé selon le premier aspect de classification d'une image d'entrée représentative d'un trait biométrique au moyen d'un premier réseau de neurones à convolution, CNN. 10 PRESENTATION DES FIGURES D'autres caractéristiques et avantages de la présente invention apparaîtront à la lecture de la description qui va suivre d'un mode de réalisation préférentiel. 15 Cette description sera donnée en référence aux dessins annexés dans lesquels : - la figure 1 est un schéma d'une architecture pour la mise en oeuvre du procédé selon l'invention ; - la figure 2 illustre le recalage d'une image d'entrée dans un mode de réalisation préféré du procédé selon l'invention ; 20 - la figure 3 illustre le recadrage d'une image d'entrée dans un mode de réalisation préféré du procédé selon l'invention ; - la figure 4 représente les étapes d'un mode de réalisation préféré du procédé selon l'invention ; - la figure 5 illustre l'apprentissage des CNN dans un mode de réalisation 25 préféré du procédé selon l'invention. DESCRIPTION DETAILLEE Architecture 30 Selon deux aspects complémentaires de l'invention, sont proposés : - un procédé de classification d'une image d'entrée représentative d'un trait biométrique au moyen d'au moins un réseau de neurones à convolution (CNN) ; 7 - un procédé d'apprentissage de paramètres du ou des CNNs. Le CNN de classification sera désigné comme un premier CNN, car comme l'on verra, un deuxième CNN, voire un troisième CNN vont également être utilisés. 5 Les présents procédés sont mis en oeuvre au sein d'une architecture telle que représentée par la figure 1, grâce à un serveur 1 et un client 2. Le serveur 1 est l'équipement d'apprentissage (mettant en oeuvre le procédé d'apprentissage) et le client 2 est un équipement de classification (mettant en oeuvre le procédé de classification), par exemple un terminal d'un utilisateur. Il est tout à fait possible 10 que les deux équipements 1, 2 soient confondus. Dans tous les cas, chaque équipement 1, 2 est typiquement un équipement informatique distant relié à un réseau étendu 10 tel que le réseau internet pour l'échange des données. Chacun comprend des moyens de traitement de données 11, 21 de type processeur, et des moyens de stockage de données 12, 22 telle 15 qu'une mémoire informatique, par exemple un disque. Le serveur 1 stocke une base de données d'apprentissage, i.e. un ensemble de données déjà classifiées (par opposition aux données dites d'entrée que l'on cherche justement à classifier). En effet, les données d'entrée ou d'apprentissage sont de type image, et 20 sont représentatives d'un trait biométrique (en d'autres termes il s'agit d'images du trait biométrique, i.e. sur lesquelles le trait biométrique est visible), avantageusement choisi parmi une empreinte digitale, un visage et un iris de l'utilisateur, de façon préféré une empreinte digitale (comme l'on verra, le présent procédé est tout particulièrement efficace dans ce dernier cas). Ladite 25 classification est alors respectivement une reconnaissance digitale de l'utilisateur (authentification ou identification de l'individu par reconnaissance de son empreinte digitale). De façon classique, une telle base de données d'apprentissage comprend plusieurs données représentatives d'un même trait biométrique, i.e. représentant la même identité, par exemple plusieurs 30 occurrences de la même empreinte digitale, mais acquises de manière légèrement différente. A noter qu'il est possible que lesdites images représentent plus que le trait biométrique, et notamment une « réglette » comme l'on voit dans les figures pour 8 les empreintes digitales latentes, qui sont simplement photographiées in-situ, la réglette permettant d'avoir une échelle. La réglette est un élément de l'image qui pourra tout à fait être utilisé par les CNNs. 5 CNN Un CNN contient généralement quatre types de couches traitant successivement l'information : la couche de convolution qui traite des blocs de l'entrée les uns 10 après les autres ; la couche non linéaire qui permet d'ajouter de la non linéarité au réseau et donc d'avoir des fonctions de décision beaucoup plus complexes ; la couche de mise en commun (appelée « pooling ») qui permet de 15 regrouper plusieurs neurones en un seul neurone ; la couche entièrement connectée qui relie tous les neurones d'une couche à tous les neurones de la couche précédente. La fonction d'activation de couche non linéaire NL est typiquement la fonction ReLU (Rectified Linear Unit, i.e. Unité de Rectification Linéaire) qui est 20 égale à f(x) = max(0, x) et la couche de pooling (noté POOL) la plus utilisée est la fonction MaxPool2x2 qui correspond à un maximum entre quatre valeurs d'un carré (on met en commun quatre valeurs en une seule). La couche de convolution, notée CONV, correspond à l'opération de convolution, et la couche entièrement connectée, notée FC, correspond 25 généralement à un produit scalaire entre les neurones de la couche précédente et les poids du CNN. Les architectures typiques de CNN empilent quelques paires de couches CONV -> NL puis ajoutent une couche POOL et répètent ce schéma [(CONV -> NL)P -. POOL] jusqu'à obtenir un vecteur de sortie de taille suffisamment petite, 30 puis terminent par deux couches entièrement connectées FC. Voici une architecture CNN typique : INPUT -> ((CONV -> NLf -> POOL!' -> FC -> FC 9 Chacun des premier, deuxième et/ou troisième CNN pourra prendre ladite architecture typique. Le premier CNN peut plus précisément prendre par exemple l'architecture suivante : INPUT -> [[NL CONV (lx1) NL-* CONV (3x3)]" 5 CONV->POOL]" FC FC, où 1x1 et 3x3 désignent des tailles des filtres des couches de convolution. Chacune des p sorties du bloc ((NL CONV (1x1) NL-> CONV (3x3)] est concaténée et mis en entrée au bloc CONV->POOL. Le deuxième CNN peut quant à lui suivre l'architecture typique susmentionnée avec une fonction d'activation tangente hyperbolique en sortie. 10 Le troisième CNN peut enfin prendre notamment une architecture de type encodeur-décodeur qui sort une carte permettant d'obtenir le ou les points singuliers. L'image est « encodée » à travers une première partie INPUT -> ((CONV -> NL]" -> POOL]" . Cette partie d'encodage réduit la taille de l'image ou des cartes de caractéristiques par l'opération POOL. Puis la sortie de la partie 15 d'encodage est placée en entrée d'une partie dite de décodage ((CONV NL]" -*UPSCALE]" qui augmente à nouveau les tailles de cartes de caractéristiques jusqu'à obtenir la carte de probabilité. Cet agrandissement est réalisée par une couche de redimensionnement appelé UPSCALE. 20 Principe L'idée du présent procédé est d'utiliser non pas le seul premier CNN de classification, mais un ou deux CNN de « pré-traitement » des images de traits biométriques de sorte que le premier CNN ait en entrée une image « recalée » 25 facile à classifier, i.e. ayant subi une transformation géométrique permettant de corriger d'éventuelles aberrations telles que des rotations, des occultations ou des distorsions. En d'autres termes, l'image recalée est une image rectifiée, corrigée. On désignera comme « recalage » le fait de transformer une image d'entrée en une image recalée théoriquement exempte d'aberrations. En particulier, le trait 30 biométrique représenté par l'image d'entrée est recalé dans un « référentiel commun » permettant de comparer les traits biométriques représentés. Conceptuellement parlant, on peut considérer que l'image recalée est celle qu'on aurait théoriquement dû obtenir si le trait biométrique avait été acquis dans 10 des conditions normalisées, i.e. image non déformée (acquise bien à plat), à la bonne échelle, bien orientée, et notamment celle que l'on peut trouver dans une base officielle d'images de traits biométriques pour identification/authentification. On comprend que la « bonne orientation », celle du référentiel commun, que l'on 5 peut qualifier d'orientation de référence correspond à une orientation arbitrairement choisie telle que celle dans laquelle le doigt est vertical et dirigé vers le haut, dite « Nord-Sud », i.e. l'orientation naturelle lorsque l'on presse le doigt sur un capteur dans de bonnes conditions, correspond à celle habituelle des bases d'images officielles. Pour reformuler, l'orientation de référence est 10 préférentiellement fixe par rapport à l'orientation du doigt, en particulier égale à l'orientation du doigt, mais on comprendra qu'on peut partir de n'importe quelle orientation de référence. La notion « de recalage » s'entend donc comme la transformation inverse permettant de retrouver cette image théorique et en particulier de « dé-distordre » 15 l'image d'entrée. Comme l'on verra, la transformation de recalage peut combiner une transformation linéaire (transformation affine) et une transformation non-linéaire (déformation). On verra plus loin comment parvenir simplement et efficacement à apprendre un CNN apte à recaler une image de trait biométrique. 20 En ce qui concerne les CNN : - le premier CNN, dit de classification, est celui qui permet d'associer à une image d'entrée, en particulier recalée, à une classe, c'est-à-dire une identité du possesseur du trait biométrique représenté 25 - le deuxième CNN, dit de recalage, est celui qui permet d'estimer un vecteur de paramètres de transformation définissant la transformation à appliquer à l'image d'entrée pour obtenir l'image recalée ; l'éventuel troisième CNN, dit de recadrage, permet comme l'on verra 30 un potentiel « pré-recalage » simplifiant le travail du deuxième CNN. Plus précisément, le troisième CNN estime un vecteur de paramètres descriptifs d'un point singulier du trait biométrique représenté sur image d'entrée, de sorte à recadrer l'image d'entrée 11 afin que ce vecteur de paramètres descriptifs prenne des valeurs prédéterminées. On expliquera cela en détails plus loin. Transformation de recalage 5 Comme expliqué, par transformation de recalage, on entend une transformation géométrique dont les paramètres sont estimés par le deuxième CNN, c'est-à-dire la combinaison d'une transformation linéaire et/ou d'une transformation non-linéaire, i.e. T = TL ° TNL. 10 La composante linéaire TL de la transformation, i.e. la transformation affine, correspond à une combinaison d'une rotation et/ou une translation et/ou un changement d'échelle. Elle est définie par jusqu'à quatre paramètres (a, s, dx, dy) du vecteur de paramètres de transformation, où a est l'angle de rotation (orienté) à appliquer, s le coefficient de changement d'échelle à appliquer, et dx, dy la 15 translation selon des axes horizontaux et verticaux. A partir de ces paramètres, la transformation affine peut être exprimée par la fonction TL = (s. cos(a) -sin(a) dx) cos(a) s. sin(a) dy On comprendra que l'invention n'est pas limitée à cette liste de paramètres de transformation affine, et que la transformation estimée par le deuxième CNN 20 peut même être limitée à une transformation purement non-linéaire, en particulier lorsque l'on utilise un troisième CNN. La composante non-linéaire TNL de la transformation, appelée plus simplement déformation, correspond au reste de la transformation qui ne peut pas être exprimé de façon affine. 25 A ce titre, lesdits paramètres de transformation comprennent avantageusement au moins un ensemble de k coefficients (k de l'ordre de quelques coefficients, en particulier entre 2 et 10, et par exemple 5) de déformation (c0 ... ck_1) chacun associé à une fonction de déformation non-linéaire de référence ELiEff0;k-111 d'une famille (E0 ...Ek_1) de fonctions de déformation non- 30 linéaires de référence. En d'autres termes, Tm, = f (co ck_i, E0 De façon préférée, lesdites fonctions de déformation non-linéaires de référence sont des champs de vélocité, ladite déformation étant exprimée sous la 12 forme d'un champ de distorsion difféomorphique comme une exponentielle d'une combinaison linéaire des champs de vélocité pondérés par lesdits coefficients associés. Plus précisément, en supposant que TNL est un champ de distorsion 5 difféomorphique, il existe un champ de vélocité y tel que TNL = eXp(V) , et ladite famille de fonctions de déformation non-linéaires de référence constitue une base permettant d'exprimer tout champ de vélocité comme une combinaison linéaire, i.e. v = rra' ciEt. On peut dans un tel mode de réalisation voir les coefficients de déformations comme les « coordonnées » du champ de vélocité dans la base 10 constituée par la famille de fonctions de déformation non-linéaires de référence. On comprendra que ladite famille peut être prédéfinie, mais alternativement on verra plus loin comment la générer de façon optimale vis-à-vis de la base d'apprentissage. La combinaison des deux transformations linéaire et non-linéaire permet de (s. cos(a) - 15 construire une fonction globale de transformation T = sin(a) dx) cos(a) s. sin(a) dy exp(erol c1E1), définie par un vecteur de k + 4 paramètres de transformation. En référence à la figure 2, l'application de cette transformation à une image d'entrée (le cas échéant déjà recadrée par le troisième CNN) permet d'obtenir ladite image recalée sur laquelle le premier CNN peut être utilisé pour 20 classification. Recadrage Comme expliqué, la transformation de recalage peut comprendre une 25 rotation et une translation, mais ces dernières doivent normalement rester minimes. Cependant il est possible que le trait représenté par l'image d'entrée présente une orientation complètement inhabituelle résultant seulement de la non-connaissance du repère dans lequel l'image a été acquise (par exemple empreinte latente sur une scène de crime comme expliqué). 30 De façon préférée, le troisième CNN permet de recadrer l'image d'entrée via la recherche d'un « point singulier » du trait biométrique, typiquement le point de plus forte courbure d'une empreinte digitale, mais on pourra également citer un 13 noyau ou un delta de l'empreinte digitale. Pour d'autres traits biométriques tel que le visage, on pourra par exemple citer le bout du nez. Le troisième CNN estime un vecteur de paramètres descriptifs d'un point singulier du trait biométrique représenté sur image d'entrée. Lesdits paramètres 5 descriptifs comprennent préférentiellement une coordonnée du point singulier (en particulier deux) et un angle du point singulier. Par « angle » du point singulier, on entend une direction définie par ce point singulier, matérialisée par un vecteur (et possiblement exprimé par un écart d'angle orienté par rapport à une direction arbitraire, par exemple la direction verticale). L'objectif de cet angle est de pouvoir 10 orienter de façon commune les empreintes En référence à la figure 3, la connaissance des paramètres descriptifs de l'image d'entrée permet de générer l'image recadrée comme étant celle dans laquelle les paramètres descriptifs prennent des valeurs prédéterminées, i.e. le point singulier est à une position prédéterminée (par exemple au centre l'image 15 recadrée) et la direction du point singulier est vers le bas (par exemple pour retrouver une acquisition avec le doigt vertical, i.e. l'écart d'angle entre la direction du point singulier et la direction verticale est nulle). Le recadrage est donc une combinaison d'une translation et/ou d'une rotation. Pour reformuler, l'image d'entrée est préférentiellement recadrée dans la 20 boîte alignée sur l'angle du point singulier et dont le centre est ce même point singulier. Classification 25 En référence à la figure 4, le procédé commence avantageusement par une étape (a0) d'apprentissage, par les moyens de traitement de données 11 du serveur 1, à partir d'une base d'images de traits biométriques déjà classifiées, des CNNs. Cet apprentissage sera décrit en détail plus loin. Les CNNs appris peuvent être stockés le cas échéant sur des moyens de 30 stockage de données 22 du client 2 pour utilisation en estimation d'orientation. A noter que les mêmes CNN peuvent être embarqué sur de nombreux clients 2, un seul apprentissage est nécessaire. 14 La classification à proprement parler d'une image d'entrée représentative d'un trait biométrique comprend la mise en oeuvre par des moyens de traitement de données 21 du client 2 commence par des étapes optionnelles (en cas de troisième CNN) de (a) estimation d'un vecteur de paramètres descriptifs d'un point 5 singulier (typiquement deux coordonnées et un angle) du trait biométrique sur ladite image d'entrée, au moyen du troisième CNN, et (b) recadrage de ladite image d'entrée (rotation/translation) en fonction des paramètres estimés dudit point singulier, de sorte que les paramètres dudit point singulier présentent pour l'image d'entrée recadrée des valeurs prédéterminées (par exemple point singulier 10 centré, et angle nul par rapport à la verticale). On obtient alors l'image d'entrée recadrée. Ensuite, dans une étape (c) est estimé un vecteur de paramètres de transformation de ladite image d'entrée recadrée (ou directement de l'image 15 d'entrée d'origine en l'absence des étapes (a) et (b)) pour recalage, au moyen du deuxième CNN, ensuite dans une étape (d) la transformation définie par ledit vecteur de paramètres de transformation estimé est appliquée à ladite image d'entrée recadrée (ou directement à l'image d'entrée d'origine en l'absence des étapes (a) et (b)), de sorte à obtenir une image d'entrée recalée. 20 Enfin, dans une étape (e) l'image d'entrée recalée est classifiée au moyen du premier CNN de sorte à déterminer l'identité de l'individu présentant le trait biométrique représenté par l'image d'entrée, pour authentification/identification de cet utilisateur. 25 Apprentissage Par apprentissage des premier, deuxième et/ou troisième CNN, on entend de façon classique la détermination des paramètres (les poids) de ces réseaux. Comme expliqué, le serveur 1 stocke une base de données 30 d'apprentissage, i.e. un ensemble de données déjà classifiées (par opposition aux données dites d'entrée que l'on cherche justement à classifier). Comme illustré par la figure 5, dans le cas d'un troisième CNN, les images d'apprentissage sont également déjà associées à des valeurs de référence des 15 paramètres du point singulier, i.e. la position et l'orientation du point singulier sont connues. A noter que comme expliqué les bases officielles n'ont généralement que des images déjà correctement orientées, on procède alors avantageusement à de l'augmentation de données de sorte à générer artificiellement des images 5 avec des positions et des orientations variées du point singulier, à partir d'images originales. Par ailleurs, on peut procéder avantageusement à de l'augmentation de données supplémentaire sous la forme d'occultations aléatoires. Ainsi même en cas d'un point singulier potentiellement occulté (et donc absent), le troisième CNN est capable d'inférer la position du point singulier le plus probable. 10 Par contre, les images d'apprentissage ne sont pas associées à des paramètres de transformation, i.e. les images ne sont associées qu'à leur classe et éventuellement des paramètres représentatifs du point singulier, ce qui facilite l'obtention d'une telle base. A noter qu'alternativement, on peut mettre en oeuvre de l'augmentation avec transformations telle que décrite dans la demande de 15 brevet FR1855170. Dans le cas préféré de paramètres de transformation non connus a priori dans la base d'apprentissage, au moins les premier et deuxième CNNs sont appris de manière simultanée et semi-supervisée. Plus précisément, on utilise à la suite les deux CNNs avec génération à la volée d'une image recalée pour chaque 20 image d'apprentissage en entrée, et c'est le premier CNN qui en minimisant une fonction de coût propage les mises à jour sur les paramètres du deuxième CNN. On comprend que la fonction de coût est minimale lorsque la transformation opérée grâce au deuxième CNN permet d'obtenir une image recalée la plus facilement identifiable par le premier CNN, c'est-à-dire la plus conforme possible 25 au référentiel commun, de sorte que malgré l'absence de vérité terrain en ce qui concerne les paramètres de transformation, l'apprentissage du deuxième CNN ne pose pas de difficulté. Pour ce faire, le deuxième CNN peut comprendre avantageusement une couche appelée Transformée Spatiale (voir le document M. Jaderberg, K. 30 Simonyan & A. Zisserman, (2015). Spatial transformer networks. ln Advances in neural information processing systems (pp. 2017-2025)), qui placée entre le premier et le deuxième CNN, permet de propager plus facilement les mises à jour des poids du premier CNN vers le second CNN de façon semi-supervisée 16 A noter que le troisième CNN peut également être appris simultanément, de sorte que le deuxième CNN prend en entrée des images d'apprentissage déjà recadrées. 5 Famille de fonctions de déformation non-linéaire de référence Comme expliqué, de manière préférée ladite transformation définie par ledit vecteur de paramètres de transformation estimé comprend une déformation (la composante non-linéaire de la transformation) exprimée à partir de ladite famille 10 de fonctions de déformation non-linéaires de référence et des coefficients associés. De façon préférée, l'étape (a0) comprend préalablement la détermination préalable de ladite famille de fonctions de déformation non-linéaires de référence (avant d'apprendre le deuxième CNN en utilisant cette famille, voir la figure 5). 15 Pour cela on, met en oeuvre l'analyse statistique de ladite base d'images d'apprentissage déjà classifiées. Comme expliqué, lesdites transformations observées dans la base de données d'apprentissage sont les transformations non-linéaires permettant de passer de l'une à l'autre des données d'un couple d'images d'apprentissage 20 représentatives d'un même trait biométrique, i.e. d'identité similaires (associées à la même classe). On peut ainsi supposer que la base comprend N couples d'images représentatives d'un même trait. A noter que si par exemple il y a un triplet d'images représentatives du même trait, on peut le voir comme deux couples, et 25 ainsi de suite. Alors, on détermine les transformations géométriques permettant de passer de l'une à l'autre des images d'un couple de données d'apprentissage représentatives d'un même trait biométrique (et ce préférentiellement pour tous les couples possibles de sorte à obtenir toutes les N transformations). 30 Pour ce faire, on peut définir un (premier) champ de distorsion (non difféomorphique) représenté par exemple une « Thin Plate Spline » (TPS) en appliquant par exemple la méthode décrite dans le document A.Ross, S.C.Dass, A.K.Jain (2004) Estimating Fingerprint Deformation. ln: Zhang D., Jain A.K. (eds) 17 Biometric Authentication. Lecture Notes in Computer Science, vol 3072. Springer, Berlin, Heidelberg, et le rendre difféomorphique (i.e. on obtient un deuxième champ de distorsion cette fois difféomorphique) par une technique de régularisation consistant à supprimer pour chaque point du champ de distorsion 5 les éventuels replis. A partir de là, ladite analyse statistique est préférentiellement une analyse en composantes principales sur l'ensemble des champs de distorsion exprimant les transformations observées dans la base de données d'apprentissage, les fonctions de déformation non-linéaires de référence étant déterminées à partir des 10 vecteurs propres issus de l'analyse en composantes principales (ACP). Par exemple, si l'on travaille sur les champs de vélocité (en prenant le logarithme des champs de distorsions), l'ACP permet d'obtenir une base de N-1 champs de vélocité Ei,i,[[o;N-21 permettant d'écrire les N champs de vélocité observés comme une combinaison linéaire Er_7,2 aiEi. Les k REVENDICATIONS1. Procédé de classification d'une image d'entrée représentative d'un trait biométrique au moyen d'un premier réseau de neurones à convolution, CNN, caractérisé en ce qu'il comprend la mise en oeuvre par des moyens de traitement de données (21) d'un client (2) d'étapes de : (c) Estimation d'un vecteur de paramètres de transformation de ladite image d'entrée, au moyen d'un deuxième CNN, les paramètres du vecteur étant représentatifs d'une transformation géométrique permettant de recaler le trait biométrique représenté par l'image d'entrée dans un référentiel commun ; (d) Application à ladite image d'entrée d'une transformation définie par ledit vecteur de paramètres de transformation estimé, de sorte que à obtenir une image d'entrée recalée ; (e) Classification de l'image d'entrée recalée au moyen du premier CNN. 2. Procédé selon la revendication 1, dans lequel lesdits traits biométriques sont choisis parmi des empreintes digitales, des visages et des iris, en particulier des empreintes digitales. 3. Procédé selon l'une des revendications 1 et 2, dans lequel lesdits paramètres de transformation comprennent au moins un ensemble de coefficients de déformation chacun associé à une fonction de déformation non- linéaire de référence d'une famille de fonctions de déformation non-linéaires de référence, ladite transformation définie par ledit vecteur de paramètres de transformation estimé comprenant une déformation exprimée à partir de ladite famille de fonctions de déformation non-linéaires de référence et des coefficients associés. 4. Procédé selon la revendication 3, dans lequel lesdites fonctions de déformation non-linéaires de référence sont des champs de vélocité (Et), ladite déformation étant exprimée sous la forme d'un champ de distorsion 19 difféomorphique (T) comme une exponentielle d'une combinaison linéaire (T = exp (Ic-oi ci )) ni,. des champs de vélocité (E1) pondérés par lesdits coefficients associés (ci). 5 5. Procédé selon l'une des revendications 3 et 4, dans lequel lesdits paramètres de transformation comprennent en outre un paramètre de rotation et/ou un paramètre de changement d'échelle et/ou au moins un paramètre de translation. 10 6. Procédé selon la revendication 5, dans lequel ladite transformation définie par ledit vecteur de paramètres de transformation estimé comprend une composition de ladite déformation avec une transformation affine exprimé(e)(s) à partir des paramètres de transformation correspondants. 15 7. Procédé selon l'une des revendications 1 à 6, comprenant la mise en oeuvre préalable d'étapes (a) d'estimation d'un vecteur de paramètres descriptifs d'un point singulier du trait biométrique sur ladite image d'entrée, au moyen d'un troisième CNN, et (b) de recadrage de ladite image d'entrée en fonction des paramètres estimés dudit point singulier, de sorte que les paramètres 20 dudit point singulier présentent pour l'image d'entrée recadrée des valeurs prédéterminées ; les étapes (c) et (d) étant mises en oeuvre sur l'image d'entrée recadrée. 8. Procédé selon la revendication 7, dans lequel lesdits 25 paramètres de transformation comprennent au moins une coordonnée du point singulier et un angle du point singulier, ledit recadrage de l'image d'entrée comprenant une translation et/ou une rotation. 9. Procédé selon l'une des revendications 1 à 8, comprenant une 30 étape (a0) préalable d'apprentissage, par des moyens de traitement de données (11) d'un serveur (1), à partir d'une base d'images d'apprentissage déjà classifiées, de paramètres desdits premier et deuxième CNNs. 20 10. Procédé selon la revendication 9, dans lequel les premier et deuxième CNNs sont appris de manière simultanée et semi-supervisée, les images d'apprentissage de la base d'images d'apprentissage n'étant pas associés à des paramètres de transformation. 5 11. Procédé selon les revendications 7 et 10 en combinaison, dans lequel l'étape (a0) comprend également l'apprentissage du troisième CNN, les images d'apprentissage de la base d'images d'apprentissage étant associés à des paramètres descriptifs d'un point singulier. 10 12. Procédé selon l'une des revendications 10 et 11, dans lequel l'apprentissage des premier et deuxième CNN comprend, pour au moins une image d'apprentissage de ladite base d'images d'apprentissage, l'obtention d'une image d'apprentissage recalée, la classification de l'image d'apprentissage 15 recalée, et la minimisation d'une fonction de coût. 13. Procédé selon l'une des revendications 9 à 12, dans lequel l'étape (a0) comprend préalablement l'analyse statistique de ladite base d'images d'apprentissage déjà classifiées, de sorte à déterminer ladite famille de fonctions 20 de déformation non-linéaires de référence permettant d'exprimer des transformations observées dans la base de données d'apprentissage en fonction d'un ensemble de coefficients. 14. Procédé selon la revendication 13, dans lequel lesdites 25 transformations observées dans la base de données d'apprentissage sont les transformations non-linéaires permettant de passer de l'une à l'autre des données d'un couple d'images d'apprentissage représentatives d'un même trait biométrique. 30 15. Procédé selon l'une des revendications 13 et 14, dans lequel ladite analyse statistique est une analyse en composantes principales sur l'ensemble des champs de distorsion exprimant les transformations observées dans la base de données d'apprentissage, les fonctions de déformation non- 21 linéaires de référence étant déterminées comme des champs de vélocité définis par des vecteurs propres issus de l'analyse en composantes principales. 16. Procédé selon l'une des revendications 1 à 15, dans lequel 5 ledit trait biométrique représenté par l'image d'entrée est celui d'un individu, l'étape (e) étant une étape d'identification ou d'authentification dudit individu. 17. Produit programme d'ordinateur comprenant des instructions de code pour l'exécution d'un procédé selon l'une des revendications 1 à 16 de 10 classification d'une image d'entrée représentative d'un trait biométrique au moyen d'un premier réseau de neurones à convolution, CNN, lorsque ledit programme est exécuté sur un ordinateur. 18. Moyen de stockage lisible par un équipement informatique sur 15 lequel un produit programme d'ordinateur comprend des instructions de code pour l'exécution d'un procédé selon l'une des revendications 1 à 16 de classification d'une image d'entrée représentative d'un trait biométrique au moyen d'un premier réseau de neurones à convolution, CNN.