Brevet FR3004835A1 — publié le 20141024

Procédé de suivi d'objets par imagerie hyperspectrale L'invention concerne l'imagerie hyperspectrale et en particulier le suivi du mouvement d'au moins un objet faisant partie d'un groupe d'objets mobiles. Les caméras hyperspectrales sont aptes à capter des trames d'images (« image frame » en langue anglaise) hyperspectrales ou des cubes de données à des cadences de trames vidéo (« video frame rates » en langue anglaise). Ces caméras acquièrent des images à haute résolution spatiale et spectrale. En combinaison avec des techniques relatives à la vision artificielle et l'analyse spectrale, des utilisateurs de caméras hyperspectrales se sont lancés dans des applications relevant du domaine de la surveillance, portant sur la détection, le suivi et l'identification d'objets captés sous forme d'images. Un aspect de l'invention concerne un procédé de suivi, par imagerie hyperspectrale, du mouvement d'au moins un objet faisant partie d'un groupe d'objets mobiles. Le procédé comporte l'obtention d'une série de trames d'image hyperspectrales, la comparaison de chaque trame de la série avec un modèle afin de déterminer des changements sur l'image entre des trames, l'identification, sur chaque trame, d'un groupe de pixels associés aux changements, l'identification de changements en tant que mouvement des objets mobiles, la corrélation, trame à trame, des groupes de pixels, afin de déterminer dans l'espace au moins un paramètre du mouvement des objets, et la corrélation des groupes de pixels avec un profil de réflectance spectrale associé à l'objet/aux objets, la trajectoire du/des objets pouvant être distinguée des trajectoires d'autres objets mobiles. L'invention sera mieux comprise à l'étude détaillée de quelques modes de réalisation pris à titre d'exemples non limitatifs et illustrés par les dessins annexés sur lesquels : - la Figure 1 est un organigramme illustrant un procédé de suivi, par imagerie hyperspectrale, du mouvement d'au moins un objet faisant partie d'un groupe d'objets mobiles selon une forme de réalisation de l'invention ; et - la Figure 2 illustre un scenario dans lequel un système d'imagerie hyperspectrale a détecté et suivi deux objets selon une forme de réalisation de l'invention. Les formes de réalisation décrites ici peuvent comporter un produit formant programme informatique comprenant des supports exploitables par ordinateur destinés à contenir des instructions ou des structures de données exécutables par ordinateur ou sur lesquels sont mémorisées lesdites instructions ou structures de données. Ces supports exploitables par ordinateur peuvent être n'importe quels supports existants, accessibles à un ordinateur polyvalent ou spécifique ou à une autre machine à processeur. A titre d'exemple, ces supports exploitables par ordinateur peuvent comprendre une RAM, une ROM, une EPROM, une EEPROM, un CD-ROM ou autres dispositifs de stockage à disque optique, à disque magnétique ou autres moyens de stockage magnétique qui peuvent servir à contenir ou enregistrer un code de programme voulu sous la forme d'instructions ou de structures de données exécutables par ordinateur et qui sont accessibles à un ordinateur polyvalent ou spécifique ou à une autre machine à processeur. Quand des informations sont transmises ou fournies à une machine via un réseau ou une autre connexion de communication (câblée ou radioélectrique ou à la fois câblée et radioélectrique), la machine perçoit à juste titre la connexion comme un support exploitable par ordinateur. Ainsi, toute connexion de ce type est appelée à juste titre support exploitable par ordinateur. Des combinaisons des éléments ci-dessus relèvent également des supports exploitables par ordinateur. Les instructions exécutables par ordinateur comprennent, par exemple, des instructions et des données, lesquelles amènent un ordinateur polyvalent, un ordinateur spécifique ou des processeurs spécifiques à assurer une certaine fonction ou un certain groupe de fonctions. Des formes de réalisation seront décrites dans le contexte général d'étapes d'un procédé qui, dans une forme de réalisation, peuvent être mises en oeuvre par un produit formant programme comprenant des instructions exécutables par ordinateur telles qu'un code de programme, par exemple sous la forme de modules de programme exécutés par des machines dans des environnements en réseaux. Globalement, les modules de programme comprennent des routines, des programmes, des objets, des composants, des structures de données, etc., qui ont pour effet technique d'exécuter des tâches particulières ou de mettre en oeuvre des types de données abstraites particuliers. Les instructions exécutables par ordinateur, les structures de données associées et les modules de programme constituent des exemples de code de programme pour exécuter des étapes du procédé exposé ici. L'ordre particulier de ces instructions ou structures de données associées exécutables constitue des exemples d'actions correspondantes pour, lors de ces étapes, mettre en oeuvre les fonctions décrites. Des formes de réalisation peuvent être mises en oeuvre dans un environnement en réseau à l'aide de connexions logiques à un ou plusieurs ordinateurs distants à processeurs. Les connexions logiques peuvent comprendre un réseau local (LAN) et un réseau étendu (WAN) proposés ici à titre d'exemple nullement limitatif. Ces environnements en réseau sont classiques dans les réseaux informatiques de bureaux ou d'entreprises, les intranets et l'Internet et peuvent utiliser toutes sortes de protocoles de communication différents. Les spécialistes de la technique comprendront que ces environnements informatiques en réseau couvrent typiquement de nombreux types de configuration de systèmes informatiques, dont des ordinateurs personnels, des dispositifs portatifs, des systèmes de multiprocesseurs, des équipements électroniques grand public à microprocesseurs ou programmables, des PC en réseau, des miniordinateurs, des ordinateurs centraux et autres. Les formes de réalisation peuvent aussi être mises en oeuvre dans des environnements informatiques répartis où des tâches sont exécutées par des dispositifs de traitement locaux et distants reliés (par des liaisons câblées ou radioélectriques ou à la fois câblées et radioélectriques) par un réseau de communication. Dans un environnement informatique réparti, des modules de programme peuvent se trouver dans des dispositifs de mémorisation locaux et distants. Un exemple de système pour mettre en oeuvre l'ensemble ou des parties des exemples de formes de réalisation pourrait comporter un dispositif informatique polyvalent sous la forme d'un ordinateur, comprenant une unité centrale, une mémoire système et un bus système, qui couple à l'unité centrale divers organes du système, dont la mémoire système. La mémoire système peut comprendre une mémoire morte (ROM) et une mémoire vive (RAM). L'ordinateur peut aussi comprendre un lecteur de disque dur magnétique pour lire et écrire sur un disque dur magnétique, un lecteur de disque magnétique pour lire ou écrire sur un disque magnétique amovible, et un lecteur de disque optique pour lire ou écrire sur un disque optique amovible tel qu'un CD-ROM ou d'autres supports optiques. Les lecteurs et leurs supports correspondants exploitables par ordinateur assurent, pour l'ordinateur, un stockage rémanent d'instructions, structures de données, modules de programme et autres exécutables par ordinateur. Parmi les effets techniques du procédé exposé dans les formes de réalisation figure une amélioration de l'utilité et des performances des systèmes d'imagerie distants pour la détection et le suivi d'objets. Le procédé réduit les erreurs survenant lors du suivi spatial selon la technique antérieure, résultant de masquages, de fusions de taches, de pertes de trames d'images, de l'intersection d'objets et autres problèmes accompagnant les techniques de différenciation qui utilisent des procédés de détection reposant sur le contraste d'images à échelle de gris. Le procédé améliore également les systèmes de suivi d'objets autonomes en offrant des possibilités essentielles d'auto-désignation, de réacquisition et de recherche de cible. La Figure 1 est un organigramme illustrant un procédé de suivi du mouvement d'un ou de plusieurs objets faisant partie d'un groupe d'objets selon une forme de réalisation de l'invention qui utilise une fusion d'informations spectrales et spatiales contenues dans des images hyperspectrales. Initialement, lors d'une étape 100, au cours du fonctionnement d'une plate-forme équipée d'une caméra hyperspectrale, il peut être nécessaire de traiter les images dans le but de détecter, suivre et identifier des objets. Lors d'une étape 110, la caméra hyperspectrale peut capter une série de trames d'image hyperspectrales. Un processeur à bord de la plate-forme peut réaliser le traitement des trames ou peut gérer la transmission des trames d'image vers un lieu distant où elles seront traitées par un second processeur ou système de traitement (appelés collectivement "processeur"). Initialement, le processeur peut déterminer, par des techniques d'analyse spatiale, des changements dans les trames d'image hyperspectrales. Comme représenté sur la Figure 1, le processeur peut exécuter, en 112, une suite d'étapes 114, 118 sur les trames d'image hyperspectrales dans le but de déterminer des changements dans les trames d'image par comparaison avec un modèle 115. Le processeur peut tout d'abord réaliser, lors d'une étape 114, une comparaison trame à trame des trames d'image à l'aide de techniques classiques d'analyse spatiale ou de traitement d'images. En réalisant une comparaison directe des propriétés spatiales des trames d'image, le processeur peut déterminer des caractéristiques des trames d'image concernant l'étalonnage et l'alignement des trames d'image ou peut déterminer des caractéristiques de la scène captée concernant des objets mobiles dont l'image est captée. En ce qui concerne l'étalonnage et l'alignement, le processeur peut mettre en oeuvre une série de techniques de traitement d'image bien connues qui peuvent, d'une manière nullement limitative, avoir trait au filtrage du bruit, à la détection des angles, au recalage d'images, à l'homographie et à l'alignement trame à trame. Le processeur peut employer d'autres techniques de traitement d'image concernant la détection d'objets sur les trames d'image d'après des propriétés de l'image telles que le contraste, la résolution et l'intensité. En partie d'après la comparaison trame à trame de l'étape 114, le processeur peut déterminer, lors d'une étape 118, des changements entre des trames d'image. Le processeur peut comparer les trames d'image et les caractéristiques identifiées en tant que différences entre les trames avec des modèles de référence 115 de cibles connues qui peuvent être stockés dans une base de données 116 de modèles. Les modèles de cibles de référence 115 peuvent être des descripteurs établis antérieurement qui représentent les caractéristiques spatiales d'une image hyperspectrale d'un objet d'intérêt du monde réel. Par exemple, un modèle 115 peut comprendre une série de pixels révèlent la forme attendue d'un objet capté sous forme d'image par le système. Selon une autre possibilité, un modèle 115 peut consister en une série de vecteurs mémorisés pour représenter une décomposition particulière de la forme attendue d'un objet, par exemple comme résultat d'une Analyse en Composantes Principales ou d'une transformée en ondelettes. Quel que soit le format particulier du descripteur spatial dans les modèles 115, le processeur peut réaliser, lors d'une étape 118, une opération de corrélation ou d'adaptation afin d'exploiter les connaissances antérieures relatives à des objets codés dans un modèle 115 pour déterminer encore des changements sur les trames d'image. Le processeur peut, à la suite de l'étape 118, signaler les changements détectés sur les trames d'image, obtenus par la comparaison trame à trame lors de l'étape 114 et à partir d'un modèle 115. Dans le but d'identifier des objets potentiels à suivre, le processeur signale, lors d'une étape 118, des groupes de pixels des trames d'image. Dans une première forme de réalisation de l'invention, le processeur peut gérer le signalement jusqu'à une étape 120 afin d'identifier sur chaque trame un groupe de pixels associés aux changements détectés. Dans une autre forme de réalisation de l'invention, le processeur peut gérer le signalement par l'intermédiaire d'un flux de commande 132 jusqu'à une étape 128 pour corréler les groupes de pixels afin d'obtenir une caractérisation spectrale des objets. Lors de l'étape 120, le processeur peut identifier sur chaque trame un groupe de pixels associés aux changements détectés, signalés lors de l'étape 118. Le processeur peut exécuter une série de fonctions et de calculs sur chacune des trames afin de réunir, fusionner et/ou éliminer des pixels de chaque trame et constituer ainsi des groupes de pixels associés à des changements détectés sur les trames d'images, obtenus par la comparaison trame à trame lors de l'étape 114 et à partir des modèles 115. Ensuite, lors de l'étape 122, le processeur peut identifier un mouvement d'objets mobiles dans la série de trames d'image d'après les changements détectés sur les trames d'image et, sur chaque trame, le groupe de pixels associés aux changements détectés. Au moment où il détecte et identifie des objets mobiles dans la série de trames d'image hyperspectrales, le processeur réalise une nouvelle corrélation des groupes de pixels dans l'ensemble des trames pour obtenir, lors d'une étape 124, une caractérisation spatiale du mouvement des objets détectés et identifiés. Le processeur peut paramétrer le mouvement d'après des techniques connues de traitement d'image et de vision artificielle afin de déterminer une caractéristique telle que la vitesse ou l'accélération. Le paramétrage du mouvement peut ensuite servir d'information supplémentaire pour des opérations de suivi ultérieures. Par exemple, le processeur d'un système de suivi à informations antérieures détaillant la vitesse d'un objet suivi peut appliquer des transformations supplémentaires lorsqu'il réalise des comparaisons trame à trame et des adaptations spatiales de modèles pour tenir compte de l'emplacement attendu de l'objet sur les trames d'image hyperspectrale. Lors de l'étape 128, le processeur peut déterminer la corrélation des groupes de pixels à un profil de réflectance spectrale 125 enregistré dans une base de données 126 de profils de réflectance spectrale. Le profil de réflectance spectrale 125 peut être déterminé a priori et peut décrire les caractéristiques spectrales d'une image hyperspectrale d'un objet d'intérêt du monde réel. Par ailleurs, le profil de réflectance spectrale 125 peut être composé de nombreuses signatures de réflectance spectrale. Par conséquent, la base de données 126 de profils de réflectance spectrale peut décrire les signatures de réflectance spectrale d'un objet d'intérêt du monde réel ainsi que les relations spatiales entre elles. Pour corréler ou adapter le groupe de pixels à un objet décrit dans la base de données 126 de profils de réflectance spectrale, le processeur peut déterminer si la répartition spatiale du groupe de pixels pour chaque signature est similaire à la répartition spatiale de signatures dans un profil de réflectance spatiale 125. Comme la base de données 126 de profils de réflectance spatiale peut contenir de multiples profils 125 concernant de multiples objets, le processeur corrélant les groupes de pixels à un profil de réflectance spectrale 125 peut employer un algorithme de recherche hyperspectrale pour adapter le groupe de pixels à un profil de réflectance particulier 125. Un certain nombre d'algorithmes de recherche hyperspectrale ont été mis au point et utilisés pour traiter des images hyperspectrales à des fins de détection d'objets. Ordinairement construits sur des concepts statistiques bien connus, les algorithmes de recherche hyperspectrale exploitent des caractéristiques statistiques d'objets potentiellement présents sur les images. Par exemple, la distance de Mahalanobis mesure la similarité d'une signature en testant la signature en référence à un écart moyen et type d'une catégorie de signatures connue. Les mesures de similarité peuvent comprendre des éléments de techniques connues de détection par analyse spectrale telles que la cartographie angulaire spectrale (« SAM : Spectral Angle Mapping » selon un acronyme anglosaxon), la divergence d'informations spectrales (« SID : Spectral Information Distance » selon un acronyme anglosaxon), la surface à différentielle moyenne nulle (« ZMDA : Zero Mean Differential Area » selon un acronyme anglosaxon) ou la distance de Bhattacharyya. En fonction de la mise en oeuvre, le processeur peut employer d'autres mesures de similarité. Bien que les profils de réflectance spectrale 125 puissent de préférence être enregistrés dans et extraits de la base de données 126 de profils de réflectance spectrale comme représenté sur la Figure 1, d'autres sources de profils de réflectance spectrale 125 destinés à servir de référence peuvent comprendre les trames d'images hyperspectrales elles-mêmes. Par exemple, le processeur peut avoir des fonctionnalités de traitement supplémentaires grâce auxquelles il peut être déterminé que des groupes de pixels sont des images d'objets intéressants. Selon une autre possibilité, un opérateur d'un système recueillant des images hyperspectrales peut sélectionner manuellement des groupes de pixels sur un écran d'affichage et identifier les signatures de réflectance spectrale correspondantes comme profil de réflectance spectrale 125 d'un objet intéressant. Comme décrit plus haut, le processeur peut intégrer l'étape 128 pour corréler le groupe de pixels afin d'obtenir une caractérisation spectrale d'objets à un ou plusieurs endroits, en fonction de la mise en oeuvre de la présente invention. Comme représenté sur la Figure 1, le flux de commande principal du procédé fait apparaître que l'étape 128 de corrélation du groupe de pixels pour obtenir une caractérisation spectrale d'objets peut succéder à l'étape 124 de corrélation trame à trame du groupe de pixels pour obtenir une caractérisation spatiale du mouvement des objets. Des flux de commande supplémentaires 132 et 134 font apparaître que l'étape 128 de corrélation du groupe de pixels pour obtenir une caractérisation spectrale d'objets peut succéder directement à l'étape 118 de détermination de changements sur les images entre des trames d'image hyperspectrale. Selon la mise en oeuvre, l'étape 128 peut succéder soit à l'étape 118 soit à l'étape 124 ou peut succéder aux deux étapes 118 et 124. Dans une forme de réalisation de l'invention, le processeur n'exécute l'étape 128 de corrélation du groupe de pixels pour obtenir une caractérisation spectrale d'objets que si le paramètre de mouvement déterminé lors de l'étape 124 est au-dessous d'un seuil prédéterminé. Par exemple, le processeur peut ne pas réaliser de caractérisation spectrale d'un objet détecté se déplaçant à une vitesse supérieure à 5 m/s. En ne réalisant une caractérisation spectrale que pour des objets qui ont ralenti ou se sont arrêtés, le processeur peut traiter efficacement les images et continuer à suivre des objets typiquement difficiles à suivre avec des procédés de suivi spatial. L' étape supplémentaire de corrélation spectrale peut faciliter la liaison entre les suivis et la confirmation des suivis, ce qui a pour effet de réduire les conclusions positives erronées et d'autres erreurs de suivi courantes dans les procédés de suivi spatial selon la technique antérieure. Il existe de nombreux scenarios où un objet peut être difficile à capter ou à suivre en continu à l'aide de techniques de suivi spatial. Ces scenarios peuvent être les suivants : un objet suivi vient à être masqué par un autre objet ; un objet suivi se divise en de multiples objets séparés. Il existe d'autres scenarios, qui ne doivent pas être considérés comme limitatifs. La Figure 2 illustre, en 300, un exemple de scenario où le procédé de suivi, par imagerie hyperspectrale, du mouvement d'un objet parmi un groupe d'objets mobiles selon une forme de réalisation de l'invention détecte et suit un véhicule 310 circulant approximativement à la même vitesse qu'un second véhicule 312 sur la même route. Le processeur mettant en oeuvre le procédé de la Figure 1 traite une série de trames hyperspectrales et suit les deux véhicules d'un type similaire. Si, par exemple, les véhicules 310 et 312 ont des couleurs différentes, la corrélation spectrale donne une différence distincte entre les deux véhicules à aspect et mouvement similaires. Si on suppose que les deux véhicules circulent proximité l'un de l'autre et à peu près à la même vitesse, un système de suivi reposant uniquement sur une analyse spatiale risque d'être trompé lorsque les deux véhicules 310, 312 prendront des routes différentes, par exemple si le véhicule 310 s'arrête alors que le véhicule 312 continue. Cependant, le système de suivi reposant sur le procédé de la Figure 1 continuera à suivre le véhicule 310. Pour l'essentiel, la fusion des techniques de suivi spatial avec la caractérisation spectrale des groupes de pixels reposant sur le profil de réflectance spectrale 125 permet un suivi fiable d'un objet mobile en présence d'éléments trompeurs. De plus, les informations spectrales et le traitement ajoutés permettent de continuer à suivre le véhicule 310 même lorsque le véhicule 310 s' arrête. Si les véhicules 310, 312 viennent à poursuivre leur route, le système de suivi peut abandonner le suivi des véhicules si, par exemple, les véhicules viennent à être cachés à la vue du système de suivi lorsqu'ils passent devant l'arbre représenté sur la Figure 2. Cependant, comme le profil de réflectance spectrale125 d'un objet ne change pas avec le temps, le suivi peut reprendre dès que le véhicule 310 rentre dans le champ de vision sans obstacle du système de suivi. Ici, le profil de réflectance spectrale 125 permet un suivi fiable d'un objet mobile même si des éléments créant un masquage sont présents dans le domaine qu'il couvre. REVENDICATIONS1. Procédé de suivi, par imagerie hyperspectrale, du mouvement d'au moins un objet faisant partie d'un groupe d'objets mobiles, comportant : l'obtention (110) d'une série de trames d'image hyperspectrales ; la comparaison (114) de chaque trame de la série avec un modèle (115) pour déterminer (118) des changements sur l'image entre des trames ; l'identification (120), sur chaque trame, d'un groupe de pixels associés aux changements ; l'identification (122) de changements en tant que mouvement des objets mobiles ; la corrélation (124), trame à trame, des groupes de pixels pour déterminer dans l'espace au moins un paramètre du mouvement des objets ; et la corrélation (128) des groupes de pixels à un profil de réflectance spectrale (125) associé à l'objet/aux objets, la trajectoire de l'objet/des objets pouvant être distinguée des trajectoires d'autres objets mobiles. 2. Procédé selon la revendication 1, dans lequel l'étape (128) de corrélation des groupes de pixels à un profil de réflectance spectral (125) est effectuée comme étape succédant a la comparaison (114) de chaque trame de la série avec un modèle (115). 3. Procédé selon la revendication 1, dans lequel l'étape (128) de corrélation des groupes de pixels à un profil de réflectance spectral (125) est effectuée comme étape succédant à la corrélation(124) trame à trame des groupes de pixels pour déterminer dans l'espace au moins un paramètre du mouvement de l'objet. 4. Procédé selon la revendication 1, dans lequel l'étape (128) de corrélation des groupes de pixels à un profil de réflectance spectral (125) est effectuée comme étape succédant à l'étape (114) de comparaison de chaque trame de la série avec un modèle (115) et comme étape succédant la corrélation (124) trame à trame des groupes de pixels pour déterminer dans l'espace au moins un paramètre du mouvement de l'objet. 5. Procédé selon la revendication 1, dans lequel l'étape (128) de corrélation des groupes de pixels à un profil de réflectance spectral (125) est effectuée uniquement lorsque la valeur du/des paramètre(s) du mouvement des objets est au-dessous d'un seuil prédéterminé. 6. Procédé selon la revendication 1, dans lequel le/les paramètre(s) du mouvement des objets est/sont la vitesse. 7. Procédé selon la revendication 1, dans lequel le/les paramètre(s) du mouvement des objets est/sont l'accélération. 8. Procédé selon la revendication 1, dans lequel le profil de réflectance spectrale (125) est enregistré dans et extrait d'une base de données (116) de profils de réflectance spectrale. 9. Procédé selon la revendication 1, dans lequel le profil de réflectance spectral (125) est obtenu à partir d'un groupe de pixels de la série de trames d'image hyperspectrales.