Brevet FR3076378A1 — publié le 20190705

PROCEDE DE FORMATION D'UN RESEAU DE NEURONES POUR LA RECONNAISSANCE D'UNE SEQUENCE DE CARACTERES ET PROCEDE DE RECONNAISSANCE ASSOCIE DOMAINE DE L'INVENTION L'invention concerne le domaine des procedes de formation d'un reseau de neurones pour la reconnaissance d'une sequence de caracteres, ainsi que le domaine des procedes de reconnaissance d'une sequence de caracteres qui leur sont ensuite associes. CONTEXTE DE L'INVENTION 11 s'agit de reconnaitre, pour la localiser et l'extraire, une sequence de caracteres dans une image, de maniere a la fois simple et efficace. Selon un premier art anterieur, it est connu d'effectuer un apprentissage en profondeur (« deep learning » en langue anglaise) au cours duquel une sequence de caracteres de format fixe predetermine et prealablement connu est extraite d'une image presentant un fond uni lui aussi fixe et prealablement connu, en effectuant une segmentation digitale tirant parti du format fixe de sequence dans l'image et prealablement connu. Si ce premier art anterieur permet l'utilisation d'une base de donnees de sequences reelles pour l'apprentissage de taille relativement reduite, tout en permettant une reconnaissance ulterieure satisfaisante, c'est neanmoins avec deux inconvenients. D'abord, le procede ne fonctionne qu' avec une sequence de caracteres de format fixe predetermine et prealablement connu. Ensuite, le procede necessite egalement des conditions predeterminees sur le fond de l'image dont va devoir etre extraite la sequence de caracteres. En résumé, ce premier art anterieur relativement simple ne presente toutefois aucune flexibilite. En 2 cas de besoin de flexibilite, it devient necessaire de &multiplier les procedes utilises et leur coordination devient alors tres complexe, sans aucune garantie quant au resultat final obtenu. Selon un deuxieme art anterieur, it est connu d'effectuer un 5 apprentissage en profondeur (« deep learning » en langue anglaise) au cours duquel une toute petite sequence de nombres uniquement est extraite d'une image, sans effectuer de segmentation digitale requerant un format fixe de sequence dans l'image et prealablement connu. Un premier inconvenient de ce deuxieme art anterieur est de necessiter 10 une base de donnees reelle de tres grande taille, nombre de sequences reelles differentes de l'ordre du million, pour permettre un apprentissage se traduisant par une reconnaissance ulterieure satisfaisante. Un deuxieme inconvenient de ce deuxieme art anterieur est d'être limite aux chiffres et de ne pas englober egalement les lettres. 15 RESUME DE L'INVENTION Le but de la presente invention est de fournir un procede de formation d'un reseau de neurones pour la reconnaissance d'une sequence de 20 caracteres palliant au moins partiellement les inconvenients precites. Plus particulierement, l'invention vise a fournir un procede de formation d'un reseau de neurones pour la reconnaissance d'une sequence de caracteres dans une image et sans format predefini, de maniere a ce que, non seulement le procede de reconnaissance d'une sequence de caracteres 25 dans une image basee sur ce procede de formation d'un reseau de neurones reste robuste quel que soit le type de sequence de caracteres a reconnaitre et quel que soit le type d'image dans laquelle cette sequence de caracteres est incluse, mais encore de maniere a ce que cette robustesse soit obtenue, malgre un nombre habituellement tres insuffisant de sequences de caracteres 30 reelles pour constituer une base de donnees de taille suffisante pour l'etape 3 d'apprentissage du reseau de neurones pour garantir ensuite un procede de reconnaissance qui serait robuste. Dans l'invention proposee, c'est la combinaison, entre d'une part la structure particuliere de la base de donnees artificielle de sequences de 5 caracteres et d' autre part le deroulement particulier de l'etape d'apprentissage par le reseau de neurones a l'aide de cette base de donnees artificielle de sequences de caracteres, qui permet d'obtenir ulterieurement cette amelioration surprenante de la robustesse du procede de reconnaissance des sequences reelles. 10 A cette fin, la presente invention propose un procede de formation d'un reseau de neurones, pour la reconnaissance d'une sequence de caracteres dans une image et sans format predefini, comprenant : une etape de realisation d'une base de donnees artificielle de plusieurs sequences de caracteres dans des images, certaines sequences etant generees 15 aleatoirement, d' autres sequences provenant de transformations de sequences generees aleatoirement, une etape d'apprentissage, du reseau de neurones, a la reconnaissance d'une sequence de caracteres dans une image, directement sur au moins certaines desdites sequences de ladite base de donnees artificielle, sans pre-decoupage prealable de ces sequences en leurs 20 caracteres constitutifs. A cette fin, la presente invention propose egalement un procede de reconnaissance d'une sequence de caracteres dans une image, comprenant : une etape de reconnaissance d'une sequence de caracteres dans une image, par un reseau de neurones forme par un procede de formation selon 25 l'invention. Selon des modes de realisation de l'invention, au fur et a mesure que la robustesse s'ameliore, tout ou partie des avantages des avantages suivants peuvent etre obtenus : une identification d'une sequence de caracteres dans une image avec des performances comparables a celles d'un etre humain, 30 une identification d'une sequence de caracteres dans une image avec des caracteres typographiques pas du tout normalises avec des variations 4 notamment en termes de taille, de police, de couleur, d'orientation, de luminosite, de flou, de bruit, une identification d'une sequence de caracteres dans une image permettant un traitement temps reel pour un flux video depassant 24fps (fps pour « frames per second » en langue anglaise), une 5 identification d'une sequence de caracteres dans une image a partir d'un jeu tres reduit de sequences de caracteres reelles disponibles. Selon des modes de realisation de l'invention, les fonctionnalites d'une bibliotheque de logiciels de type flux tensoriel dite « TensorFlow ont ete utilisees pour entrainer et tester le reseau de neurones. 10 Selon des modes de realisation de l'invention, le reseau de neurones profond forme par l'invention doit reconnaitre une sequence de lettres et de chiffres dans une image, et/ou de taille variable mais limite a 8 caracteres au maximum, et/ou avec un fond d'image hautement variable aussi bien au niveau de sa texture qu'au niveau de sa taille, et/ou pour reconnaitre des 15 plaques d'immatriculation de vehicules automobiles terrestres, par exemple de type voitures, camions et motos, et/ou a partir d'un jeu disponible de sequences de caracteres reelles tres reduit, par exemple de l'ordre de mille sequences seulement. Suivant des modes de realisation preferes, l'invention comprend une 20 ou plusieurs des caracteristiques suivantes qui peuvent etre utilisees separement ou en combinaison partielle entre elles ou en combinaison totale entre elles, avec l'un ou l'autre des objets precites de l'invention. De preference, le reseau de neurones est un reseau de neurones profond, comprenant de preference au moins 4 couches de neurones, 25 comprenant plus de preference entre 5 et 10 couches de neurones, comprenant encore plus de preference 7 couches de neurones. Ainsi, le procede de reconnaissance d'une sequence de caracteres dans une image basee sur ce procede de formation d'un reseau de neurones reste particulierement robuste. 5 De preference, le reseau de neurones profond est un reseau de neurones profond convolutif, comprenant de preference des convolutions d'une taille comprise entre 3 et 10. Ainsi, le procede de reconnaissance d'une sequence de caracteres dans 5 une image basee sur ce procede de formation d'un reseau de neurones reste particulierement robuste. De preference, dans l'etape de realisation de la base de donnees artificielle de plusieurs sequences de caracteres dans des images, au moins 60% de ces sequences soit sont des sequences generees aleatoirement soit 10 proviennent de transformations de sequences generees aleatoirement, de preference au moins 90% de ces sequences soit sont des sequences generees aleatoirement soit proviennent de transformations de sequences generees aleatoirement, encore plus de preference au moins 99% de ces sequences soit sont des sequences generees aleatoirement soit proviennent de 15 transformations de sequences generees aleatoirement, avantageusement 100% de ces sequences soit sont des sequences generees aleatoirement soit proviennent de transformations de sequences generees aleatoirement. Ainsi, le procede de reconnaissance d'une sequence de caracteres dans une image basee sur ce procede de formation d'un reseau de neurones reste 20 robuste quel que soit le type de sequence de caracteres a reconnaitre et quelle que soit le type d'image dans laquelle cette sequence de caracteres est incluse, sinon malgre l' absence totale de sequences de caracteres reelles, du moins malgre la presence d'un nombre habituellement beaucoup trop faible de sequences de caracteres reelles, pour l'etape d'apprentissage du reseau de 25 neurones. De preference, l'etape d'apprentissage, du reseau de neurones, a la reconnaissance d'une sequence de caracteres dans une image, est realisee directement sans pre-decoupage prealable, pour au moins 60% desdites sequences de ladite base de donnees artificielle, de preference pour au 30 moins 90% desdites sequences de ladite base de donnees artificielle, encore plus de preference pour au moins 99% desdites sequences de ladite base de 6 donnees artificielle, avantageusement pour 100% desdites sequences de ladite base de donnees artificielle. Ainsi, le procede de reconnaissance d'une sequence de caracteres dans une image basee sur ce procede de formation d'un reseau de neurones reste 5 encore plus robuste quel que soit le type de sequence de caracteres a reconnaitre et quel que soit le type d'image dans laquelle cette sequence de caracteres est incluse. De preference, lesdites transformations sont : l'intercalation d'espaces de taille variable entre les caracteres de certaines sequences de la base de 10 donnees artificielle, et/ou l'utilisation de differents types de fonds de differentes tailles comme arrieres plans des sequences de caracteres a reconnaitre. Ainsi, le procede de reconnaissance d'une sequence de caracteres dans une image basee sur ce procede de formation d'un reseau de neurones reste 15 encore plus robuste quel que soit le type de sequence de caracteres a reconnaitre et quel que soit le type d'image dans laquelle cette sequence de caracteres est incluse. Une base de donnees d'apprentissage ne comprenant que des sequences de caracteres uniformement espaces entre eux va rendre 20 notablement plus fragile le procede de reconnaissance des que les caracteres des sequences reelles a reconnaitre seront aleatoirement espaces, ce qui est notamment le cas des plaques d'immatriculation qui sont de formats varies et qui peuvent comporter differentes largeurs d'espacement selon la position oil ils se trouvent sur la plaque d'immatriculation. 25 Comme les sequences de caracteres a reconnaitre sont extraites des images dans lesquelles elles se trouvent avec le fond sur lequel elles se trouvent, la taille et la texture visuelle de ce fond sont egalement des parametres plus critiques que les autres. De preference, lesdites transformations sont : des transformations 30 geometriques pouvant inclure : agrandissements, et/ou reductions, et/ou rotations, et/ou translations, et/ou distorsions geometriques, et/ou autres 7 deformations geometriques, et/ou des transformations par traitement d'image pouvant inclure : changements de couleurs, et/ou changements de niveaux de gris, et/ou rehaussements des contours, et/ou lissages des contours, et/ou autres traitements de Fintensite et/ou du contraste. 5 Ainsi, le procede de reconnaissance d'une sequence de caracteres dans une image basee sur ce procede de formation d'un reseau de neurones reste encore plus robuste quel que soit le type de sequence de caracteres a reconnaitre et quel que soit le type d'image dans laquelle cette sequence de caracteres est incluse, et egalement quelles que soient les conditions dans 10 lesquelles ces sequences de caracteres reelles sont photographiees ou autrement obtenues. De preference, la base de donnees artificielle de sequences comprend au moins 100.000 sequences differentes pour l'apprentissage, de preference au moins 500.000 sequences differentes pour l'apprentissage, encore plus de 15 preference entre 500.000 et 2.000.000 sequences differentes pour 1' apprentis sage. Ainsi, le procede de reconnaissance d'une sequence de caracteres dans une image basee sur ce procede de formation d'un reseau de neurones sera plus robuste pour une taille importante de la base de donnees sur laquelle a 20 ete effectue son apprentissage. En particulier, le fait que le reseau de neurones soit profond requiert une taille plus importante de la base de donnees sur laquelle a ete effectue son apprentissage. Le benefice obtenu par ce reseau de neurones profond, plus exigent 25 sur la taille de la base de donnees artificielle d'apprentissage, est une plus grande robustesse ensuite lors du deroulement du procede ulterieur de reconnaissance. De preference, la base de donnees artificielle de sequences comprend, d'une part entre un tiers et deux tiers de sequences generees aleatoirement, 30 et d'autre part entre deux tiers et un tiers de sequences provenant de transformations de sequences generees aleatoirement, de preference autant 8 de sequences generees aleatoirement que de sequences provenant de transformations de sequences generees aleatoirement. Ainsi, la base de donnees d'apprentissage du reseau de neurones realise un bon compromis entre d'une part l'apprentissage du type de 5 caractere a reconnaitre dans la sequence et d' autre part la forme sous laquelle le caractere va se trouver dans la sequence a reconnaitre. De preference, tout ou partie des sequences contenues dans la base de donnees artificielle et obtenues par transformations de sequences generees aleatoirement proviennent de transformations de sequences generees 10 aleatoirement déjà contenues dans la base de donnees artificielle. Ainsi, la base de donnees d'apprentissage du reseau de neurones est encore un peu plus efficace dans la mesure oil les sequences de caracteres a reconnaitre, au moins en partie, vont se retrouver a la fois sous forme standard et sous forme inhabituelle. 15 De preference, la base de donnees artificielle comprend des sequences de caracteres dont les caracteres typographiques ne sont pas normalises et presentent au contraire : une taille variable, et/ou une police variable, et/ou une couleur variable, et/ou une orientation variable, et/ou une luminosite variable, et/ou un niveau de flou variable, et/ou un rapport signal a bruit 20 variable. Ainsi, le procede de reconnaissance d'une sequence de caracteres dans une image basee sur ce procede de formation d'un reseau de neurones reste encore plus robuste quel que soit le type de sequence de caracteres a reconnaitre et quel que soit le type d'image dans laquelle cette sequence de 25 caracteres est incluse, et egalement quelles que soient les conditions dans lesquelles ces sequences de caracteres reelles sont photographiees ou autrement obtenues. De preference, les caracteres comprennent des lettres et des chiffres. Ainsi, le procede de reconnaissance d'une sequence de caracteres dans 30 une image basee sur ce procede de formation d'un reseau de neurones sera 9 plus robuste pour la reconnaissance de plaques d'immatriculation automobile. De preference, dans l'etape de realisation de la base de donnees artificielle de plusieurs sequences de caracteres dans des images, moins de 5 10% de ces sequences sont des sequences reelles photographiees, de preference moins de 1% de ces sequences sont des sequences reelles photographiees, encore plus de preference 0% de ces sequences sont des sequences reelles photographiees. Ainsi, le procede de reconnaissance d'une sequence de caracteres dans 10 une image basee sur ce procede de formation d'un reseau de neurones reste robuste quel que soit le type de sequence de caracteres a reconnaitre et quelle que soit le type d'image dans laquelle cette sequence de caracteres est incluse, sinon malgre l'absence totale de sequences de caracteres reelles, du moins malgre la presence d'un nombre habituellement beaucoup trop faible 15 de sequences de caracteres reelles, pour l'etape d'apprentissage du reseau de neurones. De preference, les sequences de caracteres de la base de donnees artificielle correspondent respectivement a des plaques d'immatriculation automobile. 20 Ceci est un mode de realisation preferentiel comprenant beaucoup d' applications pratiques dans la circulation routiere de vehicules, avantageusement de vehicules terrestres. De preference, la longueur de la sequence de caracteres est comprise entre 1 et 9. 25 Ainsi, le fait de pouvoir determiner a l'avance la longueur de la sequence de caracteres a reconnaitre et de pouvoir l'implementer dans le procede de reconnaissance comme dans le procede de formation, rend ceuxci plus efficaces, en particulier ameliore leur compromis entre d'une part augmentation de 1' efficacite de detection et d'autre part diminution du taux 30 de fausses alarmes. 10 De preference, l'etape d'apprentissage du reseau de neurones utilise, pour chaque caractere de la sequence de caracteres a reconnaitre, un tableau de probabilite representatif dudit caractere. Ainsi, le compromis entre efficacite pendant le deroulement du 5 procede de reconnaissance et simplicite pendant le deroulement du procede de formation, realise au niveau de l'etape d'apprentissage, est ameliore. De preference, l'etape d'apprentissage du reseau de neurones utilise, pour comparer deux distributions de probabilites representatives de la sequence de caracteres a reconnaitre, une fonction de coot. 10 L'utilisation d'une fonction de coot permet a l'apprentissage de converger plus rapidement. De preference, ladite fonction de coot est basee sur l'entropie croisee. L'entropie croisee est une fonction de coot particulierement efficace pour optimiser ces probabilites. 15 De preference, la fonction de coot de la sequence de caracteres est la somme des fonctions de coot de chaque caractere. La sommation des fonctions de coot de chaque caractere pour obtenir la fonction de coot globale de la sequence de caracteres presente un double avantage, d'abord d'être simple a mettre en oeuvre, ensuite de tout de meme 20 bien fonctionner malgre la complexite du procede de reconnaissance d'une sequence de caracteres de format non normalise. De preference, ladite fonction de coot est minimisee par un optimiseur d' Adam. L'optimiseur d' Adam minimise rapidement et efficacement cette 25 fonction de coot. De preference, le chargement des donnees a l'entree du reseau de neurones se fait par une queue asynchrone qui contient les fichiers a charger et les operations a effectuer sur ces fichiers. Cette strategie de chargement se revele ici particulierement efficace. 30 De preference, l'initialisation des poids dans le reseau de neurones est effectuee par un initialiseur de Xavier. 11 L'initialiseur de Xavier reduit de beaucoup le temps d'apprentissage du reseau de neurones dans ce procede de formation, pour obtenir ensuite une robustesse comparable au niveau du procede de reconnaissance. De preference, ladite etape de reconnaissance est precedee d'une etape 5 d'extraction, de la sequence de caracteres et du fond d'image voisin de cette sequence de caracteres, hors du reste de l'image, seuls ladite sequence de caracteres et ledit fond d'image voisin de cette sequence de caracteres, a l'exclusion dudit reste de l'image, etant fournis au reseau de neurones. Cette etape prealable d' extraction presente deux avantages importants. 10 D'une part, elle facilite beaucoup le deroulement du reste du procede de reconnaissance, en ayant enleve beaucoup d'informations parasites lesquelles auraient risque de perturber de maniere notable ce deroulement. D'autre part, elle reste relativement facile a realiser, car le fond d'image voisin de la sequence de caracteres se detache et se distingue generalement 15 assez nettement du reste de l'image plus brouillee et plus aleatoire. De preference, ledit fond d'image voisin de ladite sequence de caracteres est un fond uni monocolore. Cela ameliore encore le deuxieme avantage de cette etape prealable d'extraction, car le fond d'image voisin de la sequence de caracteres se 20 detache et se distingue encore plus nettement du reste de l'image au contraire plus brouillee et plus aleatoire. De preference, ladite sequence de caracteres a reconnaitre dans une image correspond a une plaque d' immatriculation automobile. Ceci est un mode de realisation preferentiel comprenant beaucoup 25 d' applications pratiques dans la circulation routiere de vehicules, avantageusement de vehicules terrestres. De preference, ladite etape de reconnaissance est effectuee en temps reel sur un flux video d'images incluant les sequences de caracteres a reconnaitre, de preference avec un flux video superieur a l0fps, plus de 30 preference avec un flux video superieur a 20fps. 12 Ceci est un mode de realisation preferentiel comprenant des applications pratiques temps reel delicates dans la circulation routiere de vehicules, comme par exemple la reconnaissance instantanee de plaques d'immatriculation automobile permettant d'afficher, en bord de route au 5 niveau d'un radar pedagogique, au conducteur instantanement la vitesse de son vehicule. D'autres caracteristiques et avantages de l'invention apparaitront a la lecture de la description qui suit d'un mode de realisation prefere de l'invention, donnee a titre d'exemple et en reference aux des sins annexes. 10 BREVE DESCRIPTION DES DESSINS La figure 1 represente schematiquement un exemple de deroulement du procede de reconnaissance d'une sequence de caracteres base sur le 15 procede de formation d'un reseau de neurones selon un mode de realisation de l'invention. La figure 2 represente schematiquement un exemple de listing informatique en langue anglaise pour les deux bibliotheques de logiciels informatiques en langue anglaise que sont « OpenCV » et « TensorFlow », 20 sous forme d'un organigramme d'implementation conforme a un mode de realisation de l'invention. La figure 3 represente schematiquement un exemple du fonctionnement du reseau de neurones d'une part forme selon le procede de formation d'un reseau de neurones et d'autre part utilise selon le procede de 25 reconnaissance d'une sequence de caracteres base sur le procede de formation d'un reseau de neurones selon un mode de realisation de 1' invention. Les figures 4A, 4B et 4C representent des exemples d'images de sequences de caracteres incluses dans la base de donnees artificielle utilisee 30 pour l'apprentissage du reseau de neurones selon un mode de realisation de 1' invention. 13 La figure 5 represente des exemples de resultat d'identification montrant l'efficacite du procede de reconnaissance d'une sequence de caracteres base sur le procede de formation d'un reseau de neurones selon un mode de realisation de l'invention. 5 DESCRIPTION DETAILLEE DE L'INVENTION La figure 1 represente schematiquement un exemple de deroulement du procede de reconnaissance d'une sequence de caracteres base sur le 10 procede de formation d'un reseau de neurones selon un mode de realisation de l'invention. Lors du procede de formation du reseau de neurones 1, a partir d'une base de donnees 7 artificielle de sequences de caracteres, un modele de reconnaissance de sequences de caracteres dans une image base sur un 15 reseau de neurones 1 effectue une etape d'apprentissage 11 en profondeur. Lors du procede de reconnaissance d'une sequence reelle de caracteres, une voiture 10 circule, et une etape 12 de capture d'une video est realisee, suivie d'une etape 13 de reconnaissance d'une plaque d'immatriculation dans la capture d'image video 16, suivie d'une etape 20 d'extraction 14 de la sequence 15 de caracteres contenue dans l'image 16 de la plaque d'immatriculation. Lors de l'etape 13 de reconnaissance d'une plaque d'immatriculation automobile dans la capture d'image video 16, un systeme de generation de donnees de synthese permet d'effectuer l'entrainement du reseau de 25 neurones 1 sur une masse de donnees suffisante de la base de donnees artificielle 7 pour atteindre les performances de reconnaissance attendues. Lors de l'etape d'extraction 14 de la sequence 15 de caracteres contenue dans l'image 16 de la plaque d'immatriculation, d'une part une fonction de reconnaissance permet de localiser une partie de l'image 30 contenant la sequence de caracteres cherchee, et d'autre part un modele d'apprentissage en profondeur base sur un reseau de neurones 1 est utilise 14 pour reconnaitre la sequence 15 de caracteres, ce qui offre une grande robustesse, autorisant la reconnaissance de sequences 15 de caracteres, avec des luminosites variables, des angles de vue differents, des polices variees de caracteres, etc... 5 Le modele d'apprentissage en profondeur base sur un reseau de neurones 1 permet de reconnaitre n'importe quelle sequence de N caracteres, les caracteres etant des chiffres et/ou des lettres et/ou des separations de type « -», tout en restant compatible avec la contrainte temps reel. 10 Ce modele d'apprentissage en profondeur base sur un reseau de neurones 1 peut egalement etre utilise pour reconnaitre n'importe quelle sequence de caracteres dans les images, en dehors du cas d'utilisation pour la reconnaissance de plaque d'immatriculation, a condition bien sur de disposer ou de realiser la base de donnees artificielle de depart destinee a 15 faire effectuer au reseau de neurones son apprentissage en profondeur. La figure 2 represente schematiquement un exemple de listing informatique en langue anglaise pour les deux bibliotheques de logiciels informatiques en langue anglaise que sont « OpenCV » et « TensorFlow », sous forme d'un organigramme d'implementation conforme a un mode de 20 realisation de l'invention. L'image 16 va subir une serie 21 de traitements dans la bibliotheque de logiciels « OpenCV » avant de subir une autre serie 22 de traitements dans la bibliotheque de logiciels « TensorFlow » pour obtenir la sequence 15 de caracteres sur la plaque d'immatriculation. 25 La serie 21 de traitements comprend successivement : une transformation de la couleur en niveaux de gris, un seuillage, une analyse de contours, l'extraction d'un bandeau rectangulaire donnant la position de la sequence 15 de caracteres de la plaque d'immatriculation dans l'image 16 capturee par video. 30 La serie 22 de traitements comprend successivement : une extraction de la zone utile comprenant d'une part la sequence 15 de caracteres a 15 extraire et d'autre part le fond uni situe au voisinage immediat de cette sequence 15 de caracteres a extraire, ceci afin de s'affranchir du reste de l'image qui peut contenir beaucoup plus de bruit car n'etant pas uni, suivie de l'etape de reconnaissance par le reseau de neurones 1 aboutissant a 5 l'obtention de la sequence 15 de caracteres contenue dans la plaque d' immatriculation de la voiture. La figure 3 represente schematiquement un exemple du fonctionnement du reseau de neurones d'une part forme selon le procede de formation d'un reseau de neurones et d'autre part utilise selon le procede de 10 reconnaissance d'une sequence de caracteres base sur le procede de formation d'un reseau de neurones selon un mode de realisation de 1' invention. Que ce soit pour le procede de formation du reseau de neurones 1 ou pour le procede de reconnaissance d'une sequence de caracteres base sur le 15 procede de formation d'un reseau de neurones 1, le reseau de neurones 1 recoit une image en entrée 2 et donne en sortie des caracteristiques 3 qui se presentent sous la forme d'un tableau de probabilites. Ce tableau de probabilites comprend 9 valeurs de probabilites pour la taille 4 de la sequence et 36 valeurs de probabilites pour chacun des caracteres 5 de la 20 sequence qui peut etre un chiffre, 9 valeurs de probabilites, une lettre, 26 valeurs de probabilites, ou la separation « - », 1 valeur de probabilite. Le probleme du reseau de neurones 1 peut etre considers comme un probleme de classification. En effet, pour chaque caractere 5 trouve sur l'image, il faut determiner une valeur de probabilite d'appartenir a une 25 classe. Pour chaque caractere 5, le nombre de classes possibles est 9+26+1=36, ce qui correspond a 9 chiffres, 26 lettres et une separation « - ». Pour chaque caractere 5, il y a donc 36 classes de probabilites. Le reseau de neurones 1 va donner en sortie un tableau de probabilites (« softmax output » en langue anglaise) qui, au lieu d'indiquer simplement a 30 quelle classe une image en entrée appartient, indique ici, 9 valeurs de probabilites dans un premier tableau pour determiner la taille 4 de la 16 sequence, puis 9 tableaux suivantes contenant chacun 36 valeurs de probabilites pour determiner respectivement quels sont les 9 caracteres 5. Le reseau de neurones 1 utilise une fonction de coot qui est l'entropie crois& laquelle est particulierement adapt& pour comparer les similitudes 5 entre deux distributions de probabilites. 11 s'agit alors de minimiser l'erreur entre une image en entrée 2 dont la sequence de caracteres est connue et la prevision de sequence de caracteres donnee en sortie par le reseau de neurones 1. En sortie du reseau de neurones 1, se trouvent 10 caracteristiques qui correspondent chacune a une distribution de probabilite, 10 9 pour les caracteres et 1 pour la taille de la sequence. Ainsi, 10 entropies croisees sont evaluees, une par caracteristique 3 de sortie. 10 fonctions de coot sont obtenues lesquelles sont simultanement minimisees. La somme de ces fonctions de coot donne la fonction de coot globale. Puisque la taille 4 de la sequence vaut au maximum 9 caracteres 5, les fonctions de coot 15 strictement superieures a 9 sont exclues. Alternativement, on peut n'evaluer que 9 entropies croisees, celles des caracteres et ne pas integrer celle de la taille 4 de la sequence dans l'evaluation des entropies croisees. En entrée 2 du reseau de neurones 1 se trouve une image qui est transmise au travers des couches du reseau de neurones 1, par exemple au 20 nombre de 7 couches, et de donner en caracteristiques 3 de sortie les tableaux de valeurs de probabilites permettant ensuite d'extraire la sequence de caracteres recherchee. La topologie du reseau de neurones 1 a ete determinee avec la bibliotheque de logiciels « TensorFlow », et le reseau de neurones 1 a 25 ensuite realise son etape d'apprentissage egalement en utilisant cette bibliotheque de logiciels « TensorFlow ». La bibliotheque de logiciels « TensorFlow » realise des operations mathematiques sur les tenseurs qui sont des matrices multidimensionnelles. La strategie de charge d'ensembles de donnees est bas& sur des 30 queues asynchrones. Une queue est realisee qui contient les fichiers a 17 charger et les operations a realiser sur ces fichiers, comme par exemple lecture, decodage, redimensionnement, extraction, etc... L'enrichissement des donnees, comme l' extraction aleatoire (« random crop » en langue anglaise), la revue aleatoire (« random flip » en 5 langue anglaise), le contraste aleatoire (« random contrast » en langue anglaise) est egalement realise a ce moment-1a pour ajouter les operations d'enrichissement de donnees sur la queue. Les queues sont remplies avec les donnees, et de maniere asynchrone, le reseau de neurones 1 peut recevoir en entrée ces donnees traitees. 10 Une liste python (python est une marque deposee) est creee sur toutes les images jpeg du jeu de donnees disponible. Simultanement, une autre liste python (python est une marque deposee) est creee, elle contient les etiquettes (« labels )* en langue anglaise). Pour chaque element x, on a le chemin de l'image et l'etiquette de cette image. La queue est creee avec les 15 chemins d'image et les etiquettes. Les operations requises sont ajoutees a la queue pour donner un lot qui peut etre utilise par le reseau de neurones 1. Pour realiser l'apprentissage du reseau de neurones 1, tout d'abord une operation d'initialisation des ponderations est effectuee. En effet, plus la strategie d'initialisation des ponderations est bonne, plus le gain de temps 20 requis pour realiser l'apprentissage du reseau de neurones 1 est important. Un initialiseur de Xavier est utilise, car les resultats obtenus sont notablement meilleurs qu' avec un initialiseur aleatoire classique. Ensuite, une operation d'optimisation est realisee, grace a une fonction de coot qui est minimisee par un optimiseur d'Adam lequel donne egalement de bons 25 resultats. Deux scripts python (python est une marque deposee) sont utilises, l'un pour l'apprentissage du reseau de neurones 1, et l'autre pour tester le reseau de neurones 1. Pour partager les donnees entre scripts, des points de controle sont realises (« checkpoints » en langue anglaise) lesquels 30 contiennent les valeurs numeriques d'une liste de tenseurs. Toutes les ponderations du reseau de neurones 1 sont conservees au niveau de points 18 de controle durant l' apprentis sage du reseau de neurones 1. Il suffit alors de charger Fun de ces points de controle pour pouvoir effectuer des tests sur le reseau de neurones 1. Durant l'apprentissage du reseau de neurones 1, les points de controle sont lus et charges dans la bibliotheque de logiciels 5 « TensorFlow ». Les figures 4A, 4B et 4C representent des exemples d'images de sequences de caracteres incluses dans la base de donnees artificielle utilisee pour l'apprentissage du reseau de neurones selon un mode de realisation de 1' invention. 10 Apres l'installation de la bibliotheque de logiciels « TensorFlow », et l'implementation de la topologie globale du reseau de neurones 1, est ensuite realisee l'operation de creation de la base de donnees artificielle de sequences de caracteres permettant d' affiner la structure et le fonctionnement du reseau de neurones, en modifiant le nombre de couches 15 du reseau de neurones ou la taille de ses convolutions. A partir d'un premier panel de seulement 1000 images de sequences reelles de caracteres, ce qui est habituellement largement insuffisant pour realiser l'apprentissage d'un reseau de neurones profond, ce premier jeu de donnees a ete utilise pour tester le reseau de neurones obtenu par 20 apprentissage profond a l' aide de la base de donnees artificielle creee par generation aleatoire et transformations geometriques et colorimetriques. Une premiere partie de la base de donnees artificielle contient environ 400.000 images en noir et blanc du type de celle de la figure 4A. La figure 4A represente une image 30 dans laquelle une sequence 25 droite de caracteres 32 uniformement espaces peut etre extraite d'un fond uni 31. Une deuxieme partie de la base de donnees artificielle contient environ 400.000 images obtenues par diverses transformations evoluees realisees a partir des 400.000 images en noir et blanc du type de celle de la 30 figure 4A de la premiere partie de la base de donnees artificielle. Ces transformations evoluees incluent notamment des transformations 19 geometriques lineaires, des changements de couleur, des modifications aleatoires du fond sur lequel se trouve la sequence de caracteres a reconnaitre, etc... Le reseau de neurones est ensuite teste sur des images representant des 5 sequences reelles de caracteres a reconnaitre, par exemple des images de vraies plaques d'immatriculation automobile, correspondant ici au premier panel reduit d'environ 1000 sequences reelles de caracteres a reconnaitre sur 1000 captures video de plaques reelles d'immatriculation automobile, ce qui permet ensuite de modifier et d'enrichir la base de donnees artificielle. 10 Cette base de donnees artificielle contient notamment beaucoup de sequences de caracteres qui font varier les espaces entre caracteres et/ou qui ont differentes couleurs de fond et differentes tailles de fond, le fond etant ce qui entoure la sequence de caracteres a reconnaitre en particulier dans son voisinage immediat, le tout afin de mieux coller a la diversite des 15 plaques d'immatriculation automobile reelles afin d' ameliorer la robustesse du reseau de neurones ainsi forme. Le reseau de neurones obtenu avait 7 couches, et it avait ete entraine notamment avec des images en rouge vert bleu d'une taille de 120 pixels par 80 pixels. Le temps d' apprentis sage du reseau de neurones a dure 2 jours sur 20 une base de donnees artificielle melangeant les deux parties precedemment decrites a parts egales et presentant un volume global d'environ 800.000 sequences de caracteres artificiellement creees. La figure 4B represente une image 33 dans laquelle une sequence pencil& de caracteres 36 un peu irregulierement espaces peut etre extraite 25 d'un fond uni 35 lui-meme dispose au milieu d'un voisinage lointain uni 34. La figure 4C represente une image 37 dans laquelle une sequence pencil& de caracteres 39 tres irregulierement espaces peut etre extraite d'un fond bariole 38. La figure 5 represente des exemples de resultat d'identification 30 montrant l'efficacite du procede de reconnaissance d'une sequence de 20 caracteres base sur le procede de formation d'un reseau de neurones selon un mode de realisation de l'invention. La figure 5 presente 7 cas reels de reconnaissances de plaques d'immatriculation reelles dans lesquels on peut constater la grande efficacite 5 et la grande robustesse du procede de reconnaissance d'une sequence de caracteres base sur le procede de formation d'un reseau de neurones selon un mode de realisation de l'invention, les differentes plaques d'immatriculation etant de toutes tailles, de toutes couleurs, de toutes polices et de toutes orientations. 10 Sur la plaque 41, aucune erreur de reconnaissance. Sur la plaque 42, bonne reconnaissance des lettres et des chiffres, avec seulement un 1 pris pour un I. Sur la plaque 43, aucune erreur de reconnaissance. Sur la plaque 44, bonne reconnaissance des lettres et des chiffres, avec seulement un 0 pris pour un 0 et seulement un 1 pris pour un I. Sur la plaque 45, bonne 15 reconnaissance des lettres et des chiffres, avec seulement un couple UL pris pour un couple LL. Sur la plaque 46, aucune erreur de reconnaissance. Sur la plaque 47, aucune erreur de reconnaissance. Globalement, en depit de quelques legeres erreurs pouvant egalement etre commises par des titres humains, la precision du reseau de neurones, 20 ainsi forme par apprentissage profond de la base de donnees artificielle, s'est revel& excellente, meme dans le cas d'images brouillees ou desorientees ou desaxees. Le reseau de neurones ainsi obtenu determine a tous les coups le bon nombre de caracteres dans la sequence a reconnaitre, c'est-a-dire qu'il est infaillible sur la taille de la sequence de caracteres a 25 reconnaitre. Le reseau de neurones ainsi obtenu extrait et identifie chacun des caracteres de la sequence a reconnaitre quels que soient les espaces entre les caracteres dans la sequence a reconnaitre. Le reseau de neurones ainsi obtenu reste egalement tres robuste par rapport au changement d'echelle, car it reconnait aussi bien les caracteres de petite taille que de 30 grande taille ou encore de moyenne taille. 21 Bien entendu, la presente invention n'est pas limit& aux exemples et au mode de realisation decrits et representes, mais elle est susceptible de nombreuses variantes accessibles a l'homme REVENDICATIONS1. Procede de formation d'un reseau de neurones (1), pour la reconnaissance d'une sequence (15) de caracteres (5) dans une image (16) et sans format predefini, comprenant : - une etape de realisation d'une base de donnees artificielle (7) de plusieurs sequences (15) de caracteres (5) dans des images (16), certaines sequences (15) etant generees aleatoirement, d' autres sequences (15) provenant de transformations de sequences (15) generees aleatoirement, - une etape d'apprentissage (11), du reseau de neurones (1), a la reconnaissance d'une sequence (15) de caracteres (5) dans une image (16), directement sur au moins certaines desdites sequences (15) de ladite base de donnees artificielle (7), sans pre-decoupage prealable de ces sequences (15) en leurs caracteres constitutifs. 2. Procede de formation d'un reseau de neurones selon la revendication 1, caracterise en ce que le reseau de neurones (1) est un reseau de neurones (1) profond, comprenant de preference au moins 4 couches de neurones, comprenant plus de preference entre 5 et 10 couches de neurones, comprenant encore plus de preference 7 couches de neurones. 3. Procede de formation d'un reseau de neurones selon la revendication 2, caracterise en ce que le reseau de neurones (1) profond est un reseau de neurones (1) profond convolutif, comprenant de preference des convolutions d'une taille comprise entre 3 et 10. 4. Procede de formation d'un reseau de neurones selon l'une quelconque des revendications precedentes, caracterise en ce que, dans l'etape de realisation de la base de donnees artificielle (7) de plusieurs sequences 23 (15) de caracteres (5) dans des images (16), au moins 60% de ces sequences (15) soit sont des sequences (15) generees aleatoirement soit proviennent de transformations de sequences (15) generees aleatoirement, de preference au moins 90% de ces sequences (15) soit 5 sont des sequences (15) generees aleatoirement soit proviennent de transformations de sequences (15) generees aleatoirement, encore plus de preference au moins 99% de ces sequences (15) soit sont des sequences (15) generees aleatoirement soit proviennent de transformations de sequences (15) generees aleatoirement, 10 avantageusement 100% de ces sequences (15) soit sont des sequences (15) generees aleatoirement soit proviennent de transformations de sequences (15) generees aleatoirement. 5. Procede de formation d'un reseau de neurones selon l'une quelconque 15 des revendications precedentes, caracterise en ce que l'etape d'apprentissage (11), du reseau de neurones (1), a la reconnaissance d'une sequence (15) de caracteres (5) dans une image (16), est realisee directement sans pre-decoupage prealable, pour au moins 60% desdites sequences (15) de ladite base de donnees artificielle (7), de preference 20 pour au moins 90% desdites sequences (15) de ladite base de donnees artificielle (7), encore plus de preference pour au moins 99% desdites sequences (15) de ladite base de donnees artificielle (7), avantageusement pour 100% desdites sequences (15) de ladite base de donnees artificielle (7). 25 6. Procede de formation d'un reseau de neurones selon l'une quelconque des revendications precedentes, caracterise en ce que : > lesdites transformations sont : o l'intercalation d'espaces de taille variable entre les 30 caracteres (5) de certaines sequences (15) de la base de donnees artificielle (7), 24 o et/ou l'utilisation de differents types de fonds (31, 35, 38) de differentes tailles comme arrieres plans des sequences (15) de caracteres (5) a reconnaitre. 5 7. Procede de formation d'un reseau de neurones selon l'une quelconque des revendications precedentes, caracterise en ce que : > lesdites transformations sont : o des transformations geometriques pouvant inclure : ^ agrandis sements, 10 ^et/ou reductions, ^et/ou rotations, ^et/ou translations, ^et/ou distorsions geometriques, ^et/ou autres deformations geometriques, 15 o et/ou des transformations par traitement d'image pouvant inclure : ^changements de couleurs, ^et/ou changements de niveaux de gris, ^et/ou rehaussements des contours, 20 ^et/ou lissages des contours, ^et/ou autres traitements de l'intensite et/ou du contraste. 8. Procede de formation d'un reseau de neurones selon l'une quelconque 25 des revendications precedentes, caracterise en ce que la base de donnees artificielle (7) de sequences (15) comprend au moins 100.000 sequences (15) differentes pour l'apprentissage, de preference au moins 500.000 sequences (15) differentes pour l'apprentissage, encore plus de preference entre 500.000 et 2.000.000 sequences (15) differentes pour 30 l' apprentis sage. 25 9. Procede de formation d'un reseau de neurones selon l'une quelconque des revendications precedentes, caracterise en ce que la base de donnees artificielle (7) de sequences (15) comprend, d'une part entre un tiers et deux tiers de sequences (15) generees aleatoirement, et d'autre part entre 5 deux tiers et un tiers de sequences (15) provenant de transformations de sequences (15) generees aleatoirement, de preference autant de sequences (15) generees aleatoirement que de sequences (15) provenant de transformations de sequences (15) generees aleatoirement. 10 10. Procede de formation d'un reseau de neurones selon la revendication 9, caracterise en ce que tout ou partie des sequences (15) contenues dans la base de donnees artificielle (7) et obtenues par transformations de sequences (15) generees aleatoirement proviennent de transformations de sequences (15) generees aleatoirement déjà contenues dans la base de 15 donnees artificielle (7). 11. Procede de formation d'un reseau de neurones selon l'une quelconque des revendications precedentes, caracterise en ce que : > la base de donnees artificielle (7) comprend des sequences (15) de 20 caracteres (5) dont les caracteres (5) typographiques ne sont pas normalises et presentent au contraire : o une taille variable, o et/ou une police variable, o et/ou une couleur variable, 25 o et/ou une orientation variable, o et/ou une luminosite variable, o et/ou un niveau de flou variable, o et/ou un rapport signal a bruit variable. 26 12. Procede de formation d'un reseau de neurones selon l'une quelconque des revendications precedentes, caracterise en ce que les caracteres (5) comprennent des lettres et des chiffres. 5 13. Procede de formation d'un reseau de neurones selon l'une quelconque des revendications precedentes, caracterise en ce que, dans l'etape de realisation de la base de donnees artificielle (7) de plusieurs sequences (15) de caracteres (5) dans des images (16), moins de 10% de ces sequences (15) sont des sequences (15) reelles photographiees, de 10 preference moins de 1% de ces sequences (15) sont des sequences (15) reelles photographiees, encore plus de preference 0% de ces sequences (15) sont des sequences (15) reelles photographiees. 14. Procede de formation d'un reseau de neurones selon l'une quelconque 15 des revendications precedentes, caracterise en ce que les sequences (15) de caracteres (5) de la base de donnees artificielle (7) correspondent respectivement a des plaques d'immatriculation automobile. 15. Procede de formation d'un reseau de neurones selon l'une quelconque 20 des revendications precedentes, caracterise en ce que la longueur de la sequence (15) de caracteres (5) est comprise entre 1 et 9. 16. Procede de formation d'un reseau de neurones selon l'une quelconque des revendications precedentes, caracterise en ce que l'etape 25 d'apprentissage (11) du reseau de neurones (1) utilise, pour chaque caractere (5) de la sequence (15) de caracteres (5) a reconnaitre, un tableau de probabilite representatif dudit caractere (5). 17. Procede de formation d'un reseau de neurones selon l'une quelconque 30 des revendications precedentes, caracterise en ce que l'etape d'apprentissage (11) du reseau de neurones (1) utilise, pour comparer 27 deux distributions de probabilites representatives de la sequence (15) de caracteres (5) a reconnaitre, une fonction de coot. 18. Procede de formation d'un reseau de neurones selon la revendication 17, 5 caracterise en ce que ladite fonction de coot est basee sur l'entropie croisee. 19. Procede de formation d'un reseau de neurones selon la revendication 17 ou 18, caracterise en ce que la fonction de coot de la sequence (15) de 10 caracteres (5) est la somme des fonctions de coot de chaque caractere (5). 20. Procede de formation d'un reseau de neurones selon l'une quelconque des revendications 17 a 19, caracterise en ce que ladite fonction de coot 15 est minimisee par un optimiseur d'Adam. 21. Procede de formation d'un reseau de neurones selon l'une quelconque des revendications precedentes, caracterise en ce que le chargement des donnees a l'entree (2) du reseau de neurones (1) se fait par une queue 20 asynchrone qui contient les fichiers a charger et les operations a effectuer sur ces fichiers. 22. Procede de formation d'un reseau de neurones selon l'une quelconque des revendications precedentes, caracterise en ce que l'initialisation des 25 poids dans le reseau de neurones (1) est effectuee par un initialiseur de Xavier. 23. Procede de reconnaissance d'une sequence de caracteres dans une image, comprenant une etape de reconnaissance d'une sequence (15) de 30 caracteres (5) dans une image (16), par un reseau de neurones (1) forme 28 par un procede de formation selon l'une quelconque des revendications precedentes. 24. Procede de reconnaissance selon la revendication 23, caracterise en ce 5 que ladite etape de reconnaissance (11) est precedee d'une etape d'extraction, de la sequence (15) de caracteres (5) et du fond d'image (31, 35, 38) voisin de cette sequence (15) de caracteres (5), hors du reste de l'image (16), seuls ladite sequence (15) de caracteres (5) et ledit fond d'image (31, 35, 38) voisin de cette sequence (15) de caracteres (5), a 10 l'exclusion dudit reste de l'image (16), etant fournis au reseau de neurones (1). 25. Procede de reconnaissance selon l'une quelconque des revendications 23 a 24, caracterise en ce que ledit fond d'image (31, 35, 38) voisin de 15 ladite sequence (15) de caracteres (5) est un fond uni monocolore. 26. Procede de reconnaissance selon l'une quelconque des revendications 23 a 25, caracterise en ce que ladite sequence (15) de caracteres (5) a reconnaitre dans une image (16) correspond a une plaque 20 d'immatriculation automobile. 27. Procede de reconnaissance selon l'une quelconque des revendications 23 a 26, caracterise en ce que ladite etape de reconnaissance est effectuee en temps reel sur un flux video d'images (16) incluant les sequences 25 (15) de caracteres (5) a reconnaitre, de preference avec un flux video superieur a l0fps, plus de preference avec un flux video superieur a 20fps.