Brevet FR3074594A1 — publié le 20190607

EXTRACTION AUTOMATIQUE D'ATTRIBUTS D'UN OBJET AU SEIN D'UN ENSEMBLE D'IMAGES NUMERIQUES DOMAINE DE L'INVENTION L' invention concerne l' extraction automatique d' attribute et la recherche d'objets dans une video ou un ensemble d'images numeriques. Elle s'applique en particulier au suivi d'humains dans un flux videos dans un but de video-surveillance, de ciblage marketing, de constitution de statistiques, etc. CONTEXTE DE L'INVENTION Des cameras videos sont de plus en plus deployees dans l'espace public ou prive afin de recueillir des informations sur le comportement de personnes humaines dans une zone geographique. Une application typique est la videosurveillance afin de &teeter au plus tot des informations d'interet (par exemple des comportements suspects), dans des zones a risque ou a surveiller (aeroport, gare, banque, etc.) ou dans tout autre espace destine a recevoir du public, y compris dans la rue. D'autres applications peuvent concerner des finalites commerciales ou de marketing afin de suivre et caracteriser le comportement de clients potentiels dans une enceinte commerciale (boutique, centre commercial, supermarche...). Les flux videos forment des quantites d'informations tres importantes, au point qu'un suivi manuel devient difficile, coUteux, voire impossible dans certaines situations. 2 Certains outils de recherche ont ete elabores ces dernieres annees mais ils se basent principalement sur de l'analyse faciale, et pas sur l'apparence complete d'une personne dans des images basses resolutions. Les solutions existantes n'offrent ainsi pas des performances 5 suffi s antes. En outre, elles visent a suivre des humains dune image a l'autre dans un flux d'images successives. Elles ne permettent pas de faire des recherches dans une banque d'images prealablement recueillies afin de determiner si une personne donnee s'y trouve. A fortiori, elles ne permettent pas de 10 retrouver, au sein dune telle banque d'images, si des personnes correspondant a un ensemble d'attributs s'y trouvent. RESUME DE L 'INVENTION 15 Le but de la presente invention est de fournir une solution palliant au moins partiellement les inconvenients precites. A cette fin, la presente invention propose un procede pour la 20 reconnaissance d'objets d'un ensemble de types predefinis au sein d'un ensemble d'images numeriques, comportant la detection d'un objet dudit type predefini au sein d'une image numerique dudit ensemble, et la determination d'une zone de ladite image englobant ledit objet detecte ; 25 la generation d'une signature par un reseau de neurones a convolution a partir de ladite zone, permettant une identification dudit objet de facon univoque ; la determination a partir de ladite signature d'un ensemble d'attributs; 3 la memorisation dans une base de donnees d'un enregistrement relatif audit objet associant ladite signature audit ensemble d' attributs ; dans lequel ledit reseau de neurones est entraine sur un jeu 5 d'apprentissage composees d'un premier ensemble forme d'objets associes a un ensemble d' attributs et d'un second ensemble forme d'objets non associes a un ensemble d' attributs, Suivant des modes de realisation preferes, l'invention comprend une 10 ou plusieurs des caracteristiques suivantes qui peuvent etre utilisees separement ou en combinaison partielle entre elles ou en combinaison totale entre elles : - ledit type predefini est un humain ; - lesdites images numeriques forment un flux videos ; 15 - ledit reseau de neurones de convolution comprends un reseau Restnet50 ; - ledit jeu d'apprentissage est compose dune pluralite de sous-jeux, chacun determine dans un contexte operationnel different ; - l'entrainement dudit reseau de neurones a convolution est supervise 20 par un mecanisme mettant en jeu un « center loss » ; - le procede comporte en outre une ≊ de recherche d'un ensemble d'objets au sein de ladite base de donnees a partir d'un ensemble de valeurs associes a des attributs ; - le procede comporte en outre une ≊ de recherche d'un ensemble 25 d'objets au sein de ladite base de donnees, a partir dune image contenant un unique objet a rechercher ; - ledit enregistrement associe ledit identificateur a un ensemble de valeurs representatives des valeurs desdits attributs pour une succession d'images numeriques dudit ensemble. 30 4 L'invention concerne egalement un programme d'ordinateur comprenant des instructions de programme pour l'execution d'un procede tel que precedemment define, lorsque ledit programme est execute sur un ordinateur. 5 Ainsi, l'invention permet de nettement ameliorer la qualite de la reconnaissance et detection d'objets en preci s ant leurs caracteristiques Elle permet en outre de traiter des domaines d'applications supplementaires par rapport aux solutions de l'etat de l'art. 10 Notamment, grace a l'association entre les personnes detectees et des attributs, la solution de l'invention peut permettre de viser la video-surveillance dans le sein dune entreprise ou sur un chantier, par exemple, afin de &teeter des personnes ne respectant pas certaines regles de securite (port d'un gilet, d'un casque, etc.) 15 L'invention permet egalement de rechercher et d'extraire des attributs d'objets autres que des etres humains, tels que notamment des animaux dans le cas de suivi ou de calcul de statistiques sur un parc animalier ou dans une exploitation d'elevage. 20 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 dessins annexes. BREVE DESCRIPTION DES DESSINS 25 La figure 1 represente schematiquement un exemple d'organigramme illustrant un mode de realisation de l'invention. DESCRIPTION DETAILLEE DE L'INVENTION 30 5 L'invention concerne le suivi d'obj ets d'un type predefini au sein d'un ensemble d'images numeriques. Les objets sont typiquement des humains, mais d'autres types d'objets peuvent etre consideres sans apporter de modifications majeures aux 5 principes de l'invention : animaux, vehicules, etc. Dans une premiere ≊, referencee 11, sur la figure 1, on detecte un (ou plusieurs) objets d'un type predefini (humain, animal, vehicule...) au sein dune image numerique 10. L'etape suivante 12 consiste a determiner 10 une zone englobante pour chacun des objets detectes. Il est egalement possible de &teeter des objets appartenant a plusieurs types (par exemple &teeter des humains et des vehicules, au cours d'un meme processus). L'image numerique 10 peut etre une image provenant directement dune camera video ou d'une banque d'images. Elle peut representer une 15 scene dans laquelle aucun, un ou plusieurs objets peuvent etre presents. En outre, ces objets peuvent etre representes de differentes fawns sur l'image numerique : notamment, dans le cas d'un humain, celui-ci peut etre vu de face, de dos, de profil, debout, assis, dans une zone eclairee ou dans la penombre, etc. 20 La determination dune zone englobant le (ou les) objets detectes consiste en la delimitation dune zone de type predetermine (typiquement un rectangle) contenant l'objet detecte dans son entierete et de dimensions minimales, ou sensiblement minimale (il peut etre prevu des marges entre les extremites de l'objet a les limites de la zone englobante. 25 De la sorte, l'invention permet de considerer toutes sortes d'images brutes », telles qu'issues dune camera et de &teeter, de fawn autonome, la presence d'un objet, et le cas echeant, de proceder ensuite au suivi de cet objet, ou de ces objets lorsque la scene capturee par la camera en comprend 30 plusieurs. 6 Ces &apes de detection, 11, des objets et de determination, 12, des zones englobantes peuvent etre effectuees de differentes facons. Selon les modes de realisation, ces deux &apes peuvent effectuees simultanement, par un meme mecanisme. 5 Preferentiellement, un reseau de neurones a convolution est utilise pour simultanement reduire graduellement une zone autour d'un objet et, progressivement classifie l'objet contenu dans la zone, dans une des classes recherchee (qui peut etre simplement la presence ou l'absence d'un objet d'un type predetermine). 10 On obtient en fait de processus un ensemble de zones englobante (soit reduite a une surface optimale) et un degre de confiance qu'elle contient un objet du type recherché. Un exemple dune telle approche est decrite dans Liu Wei, Dragomir Anguelov, Dumitru Erhan, Christian Szegedy, Scott Reed, Cheng- Yang Fu 15 et Alexander C. Berg, "SSD: Single Shot Multibox Detector", European Conference on Computer Vision (ECCV), Springer International Publishing (2016), pp. 21-37. Les zones englobantes, 13, ainsi determinees peuvent ensuite etre 20 utilisees comme entrées de l'etape de generation 14 d'une signature par un reseau de neurones a convolution. Cette signature, 15, permet de determiner un ensemble d'attributs caracteri sant l'objet detecte, et d' egalement identifier l'objet detect& Autrement dit, un meme reseau de neurone, via une unique phase de 25 prediction, permet de determiner des informations de nature differente : - une signature, qui permet de determiner si un objet est le meme dune image a l'autre; un ensemble d'attributs permettant de caracteriser cet objet. Cette facon de faire permet des performances compatibles avec le 30 temps reel puisqu'un seul traitement est necessaire pour la determination des deux types d'informations, mais aussi, et surtout, la determination est plus 7 precise par l'utilisation simultanee de ces deux types d'information lors de la phase d'apprentissage (ou d'entrainement) du reseau de neurones a convolution. 5 Il est important pour permettre un bon apprentissage du reseau de neurones de l'entrainer avec un grand nombre d'exemples. Il existe plusieurs travaux ayant permis de constituer des jeux d'exemples a partir de captures reelles issues de camera video, auquel des attributs ont ate manuellement assignes aux objets representes. 10 La page suivante presente un certain nombre de tels jeux d'exemples, ou « dataset » selon la terminologie habituelle en langue anglaise: http://www.liangzheng.org/Proj ect/proj ect reid.html Selon un mode de realisation de Pinvention, on utilise comme jeu d'apprentissage du reseau de neurones une composition dune pluralite de 15 sous jeux, chacun determine dans un contexte operationnel different, c'est-à- dire determine par une equipe de chercheurs differents, ayant procede par une methodologie propre et dans un environnement propre (emplacement de la camera, population visee, etc.) Il est important que le nombre de sous-jeux soit important afin de 20 permettre une meilleure representativite des differentes images qui seront proposes ensuite au reseau de neurones en phase de prediction, et donc de meilleures performances en generalisation. A titre d'exemple, les sous-jeux utilises peuvent etre 25 CHUK01, tel que defini dans Particle « Human Reidentificaiton with Transferred Metric Learning », de Li Wei' Zhao Rui et Wang Wiaogang, ACCV, 2012 CHUK03, tel que defini dans Particle « DeepReID: Deep Filter Pairing Neural Network for Person Re-identification » de Li 30 Wei, Zhao Rui , Xiao Tong et Wang Wiaogang, CVPR, 2014 8 MARS, tel que defini dans Particle « MARS: A Video Benchmark for Large-Scale Person Re-identification », de Zheng Liang, Bie Zhi, Sun Yifan, Wang Jingdong, Su Chi et Wang Shengjin, et Tian Qi, in European Conference on 5 Computer Vision (ECCV), 2016 ViPER, tel que defini dans Particle « Viewpoint Invariant Pedestrian Recognition with an Ensemble of Localize Features », de D. Gray, et H. Tao, in European Conference on Computer Vision (ECCV), 2008 10 Market1501, tel que defini dans Particle « Improving Person Re-identificiation by Attribute and Identity Learning », de Lin Yutian, Zheng Liang, Zhang Zhedong, Wu Yu et Yang Yi, arXiv:1703,07220, 2017 15 Chacun de ces « dataset » comporte des donnees impactees par les conditions d'acquisition et de creation, quoiqu'ils visent tous a une certaine universalite. En agregeant et combinant ces sous-ensemble, on minimise les biais apportes implicitement par les etudes qui ont permis de les elaborer. 20 En outre, selon l'invention, le reseau de neurones est entraine sur un jeu d'apprentissage composees d'un premier ensemble forme d'objets associes a un ensemble d'attributs et d'un second ensemble forme d'objets non associes a un ensemble d'attributs. Ainsi, tout type de sous-jeux d'entrainement peut etre pris en compte : 25 ceux qui ont fait l'objet dune affectation manuelle d'attributs peuvent etre verses dans le premier ensemble, et les autres dans le second ensemble. Cette fawn de proceder, dite « apprentissage multitache » (ou « multitask learning » en anglais), est intrinsequement lie au fait que l'entrainement du reseau de neurones est effectuees pour une signature « mixte » 30 permettant, comme it a ete vu precedemment, d'identifier l'objet detecte et de determiner un ensemble d'attributs le caracterisant. 9 Des lors, le premier ensemble permettra de rendre la signature a meme de representer des attributs en plus d'etre un identificateur independant l'orientation de l'objet, tandis que le second ensemble permettra d'entrainer le reseau de neurones a creer une signature representative pour un objet 5 (identificateur), sans impact sur l'entrainement general du reseau concernant notamment sa capacite a extraire des attributs. Le reseau de neurones est typiquement un reseau de neurones a convolution (ou « CNN » pour « Convolutional Neural Network »), qui est 10 une technique bien connue dans le domaine de la re-identification d'un objet dans une succession d'images, ainsi qu'indique, notamment, dans Particle « Improving Person Re-identificiation by Attribute and Identity Learning », de Lin Yutian, Zheng Liang, Zhang Zhedong, Wu Yu et Yang Yi, precedemment cite. 15 Selon un mode de realisation de l'invention, le reseau de neurones a convolution peut etre base sur un reseau « RestNet50 », auquel quelques couches peuvent etre ajoutees (couches correspondant a la signature et aux attributs, couches correspondant a la classification, lors de l'entrainement). Ce reseau « RestNet50 » a ete decrit notamment dans l'article « Deep 20 Residual Learning for Image Recognition », de K. He, X. Zhang, S. Ren et J. Sun, in CVPR, 2016 Autrement dit, l'architecture du reseau de neurones a convolution utilises pour mettre en oeuvre l'invention peut etre connue en soi. 25 L'innovation reside notamment dans les mecanismes d'entrainement de ce reseau de neurones, et en particulier dans le fait que le jeu d'apprentissage est compose d'un premier ensemble forme d'objets associes a un ensemble d' attributs et d'un second ensemble forme d'objets non associes a un ensemble d' attributs 30 En consequence, le reseau de neurones permet de generer une signature a partir de laquelle seront egalement extraits les attributs.. 10 Selon un mode de realisation de l'invention, en outre, l'entrainement dudit reseau de neurones a convolution est supervise par un mecanisme mettant en jeu une « center loss ». Un tel mecanisme a ete propose dans 5 1' article « A Discriminative Feature Learning Approach for Deep Face Recognition » de Yandong Wen, Kaipeng Zhang, Zhifeng Li et Yu Qiao, in European Conference on Computer Vision (ECCV), 2016, dans un cadre de reconnaissance faciale. Ce mecanisme vise a fournir un signal qui, lors de l'apprentissage, va 10 favoriser le regroupement des caracteristiques reconnues appartenant a une meme classe. Il permet ainsi d'accroitre le caractere discriminant des classes de caracteristiques apprises. Il a ete demontre experimentalement qu'il etait important, dans le contexte de l'invention, d'en effet obtenir des classes bien discriminees en 15 sortie du reseau de neurones. Plus concretement, la fonction d' apprentissage du « center loss » tend a rassembler une signature obtenue par presentation d'une image numerique en entrée du reseau de neurones, autour d'un « centre » de la classe correspondante. Ce centre (c'est-à-dire un vecteur similaire a une signature, 20 correspondant a la couche de sortie du reseau de neurones) fait ainsi l'objet d'un apprentissage en meme temps que le reseau de neurones lui-meme. Lors de la phase d'exploitation du reseau de neurones, on peut lui presenter une image numerique nouvelle. Les capacites de generalisation du 25 reseau de neurones permettent alors la generation d'une signature. Cette signature correspond a des caracteristiques internes apprises par le reseau de neurones (« deep features » ou caracteristiques profondes). La determination, 16 d'un ensemble d'attributs, 17, a partir de la 30 signature, 15, peut etre mise en oeuvre par une couche de classification. 11 La signature peut etre vue comme un vecteur de valeurs. Selon un mode de realisation concret mis en place par les inventeurs, la signature est un vecteur de 4096 valeurs. Cette signature 15 permet d'identifier un objet de facon univoque. 5 Si deux images numeriques distinctes representent un meme objet, le reseau de neurones doit pouvoir generer deux signatures semblables. Inversement, it doit generer deux signatures distinctes pour deux images numeriques differentes. Selon un mode de realisation concret mis en place, la mesure de similarite se fait via un calcul de distance entre les signatures, 10 un exemple de distance &ant la mesure cosinus. De cette signature 15 sont extraits un ensemble d' attributs 17. Les attributs peuvent dependre du type d'objets que l' on cherche identifier. Dans cas d'etres humains, les attributs peuvent comprendre : genre, couleurs des vetements hauts, couleurs des vetements bas, longueur 15 des cheveux, etc. Plus particulierement, les valeurs de la signature permettent d'etablir une probabilite pour chaque attribut. Differents mecanismes de seuillage peuvent etre mis en place, selon les cas d'usage souhaites. 20 Dans une ≊ 18, on memorise dans une base de donnees 19 un enregistrement relatif a l'objet determine, qui associe son signature et ses valeurs d' attributs. D'autres informations peuvent en outre etre memorisees dans cet enregistrement, tels que par exemple un horodatage ou des donnees techniques (identificateur de la camera videos, etc.) 25 Selon un mode de realisation de l'invention, plutot que de memoriser des valeurs d' attributs et de signatures chaque image numerique, on calcule une valeur representative de l'attribut et de la signature sur une succession d'images numeriques. Cette succession peut etre define par une fenetre 30 temporelle glissante d'une sequence video. Il peut par exemple s'agir d'une valeur moyenne des valeurs (ou probabilites) des attributs ainsi que celles 12 des signatures. On consolide ainsi les resultats en ecartant des eventuels resultats aberrants. Selon des modes de realisation de l'invention, on peut exploiter les 5 resultats memorises dans la base de donnees 19 en y effectuant des recherches. Ces recherches peuvent etre declenchees manuellement, lorsqu'un utilisateur souhaite rechercher des objets identifies ou bien correspondant un signalement, etc. 10 Elles peuvent egalement etre declenchees automatiquement, afin de determiner differents resultats de statistiques, des comparaisons entre differentes sequences d'images, etc. Les recherches peuvent etre effectuees a partir d'un ensemble de valeurs associees a des attributs : it suffit alors de determiner l' ensemble des 15 enregistrements dont les valeurs d'attributs correspondent aux criteres de recherche sur les attributs. Il est ainsi possible de rechercher tous les etres humains ayant des vetements d'une couleur donnee, etc. Les recherches peuvent egalement etre effectuees a partir dune image contenant un unique objet a rechercher. Cette image peut alors faire l'objet 20 d'un traitement similaire a celui decrit precedemment afin de determiner une signature, via le reseau de neurones a convolution, Cette signature peut alors etre utilisee comme critere de recherche dans la base de donnees 19. Bien entendu, la presente invention nest pas limitee aux exemples et 25 au mode de realisation decrits et representes, mais elle est susceptible de nombreuses variantes accessibles a l'homme REVENDICATIONS1. Procede pour la reconnaissance d'objets d'un ensemble de types predefinis au sein d'un ensemble d'images numeriques, comportant la detection (11) d'un objet d'un type predefini parmi ledit ensemble, au sein d'une image numerique (10) dudit ensemble, et la determination (12) d'une zone (13) de ladite image englobant ledit objet detecte ; la generation (14) d'une signature (15) par un reseau de neurones a convolution a partir de ladite zone, permettant une identification dudit objet de facon univoque ; la determination (16) a partir de ladite signature d'un ensemble d' attribute (17); la memorisation (18) dans une base de donnees (19) d'un enregistrement relatif audit objet associant ladite signature audit ensemble d' attribute ; dans lequel ledit reseau de neurones est entraine sur un jeu d'apprentissage composees d'un premier ensemble forme d'objets associes a un ensemble d' attribute et d'un second ensemble forme d'objets non associes a un ensemble d' attributs, 2. Procede selon la revendication precedente, dans lequel ledit type predefini comprend un humain. 3. Procede selon Tune des revendications precedentes, dans lequel lesdites images numeriques forment un flux videos 4. Procede selon Tune des revendications precedentes, dans lequel ledit reseau de neurones de convolution comprend un reseau Restnet50. 14 5. Procede selon l'une des revendications precedentes, dans lequel ledit jeu d'apprentissage est compose dune pluralite de sous-jeux, chacun determine dans un contexte operationnel different. 5 6. Procede selon l'une des revendications precedentes, dans lequel l'entrainement dudit reseau de neurones a convolution est supervise par un mecanisme mettant en jeu un « center loss 7. Procede selon l'une des revendications precedentes, comportant en 10 outre une ≊ de recherche d'un ensemble d'objets au sein de ladite base de donnees a partir d'un ensemble de valeurs associes a des attributs. 8. Procede selon l'une des revendications precedentes, comportant en outre une ≊ de recherche d'un ensemble d'objets au sein de ladite base de 15 donnees, a partir dune image contenant un unique objet a rechercher. 9. Procede selon l'une des revendications precedentes, dans lequel ledit enregistrement associe ledit identificateur a un ensemble de valeurs representatives des valeurs desdits attributs pour une succession d'images 20 numeriques dudit ensemble. 10. Programme d'ordinateur comprenant des instructions de programme pour l'execution d'un procede selon l'une des revendications precedentes, lorsque ledit programme est execute sur un ordinateur. 25