Brevet FR2726107A1 — publié le 19960426

La présente invention concerne un ensemble de traite- ment de signaux du type qui permet de déterminer avec précision la position d'un corps mobile par rapport à son environnement. Selon une proposition, il est possible d'obtenir la position d'un corps mobile en utilisant un capteur d'image qui est porté par le corps de manière à voir son environnement et à carreler la scène qu'il observe avec des données emmagasinées représentant des informations sur une scène de référence. Cette scène de référence est constituée d'une information préassemblée qui est indicative de la scène que le capteur monté sur le corps mobile est susceptible d'observer s'il se déplace le long du trajet qu'il est censé prendre. En notant la position réelle du corps par rapport à son environnement, il est possible de corriger son trajet de manière à compenser les erreurs de déplacement du corps mobile. Ceci lui permet de se maintenir sur son trajet voulu avec un haut degré de précision. L'ampleur du traitement de signaux qui est associée à un tel système est en réalité très grande, en particulier si le corps mobile se déplace à une vitesse notable par rapport à un environnement d'aspect complexe. L'invention vise à produire un ensemble de traitement de signaux qui est adapté à ce but et est en mesure de fonctionner à une vitesse suffisamment éLevée sans être excessivement encombrant. Selon l'invention, un processeur de données comprend plusieurs étages de traitement connectés en séquence, comportant un générateur de signaux vidéo conçu pour produire un signal vidéo sous forme d'une succession de lignes de données numériques, un filtre numérique, et un corréLateur; le corrélateur étant conçu pour correler des données extraites du signal vidéo avec des données de référence; et un moyen servant à délivrer les données venant d'un étage à l'étage suivant de façon que chaque étage (sauf le premier) reçoive des lignes (ou des parties de ligne) de données traitées en provenance d'un étage précédent et les traite, tandis que ledit étage précédent traite les lignes suivantes de données du même signal vidéo. Cette organisation des étages de traitement permet de réaliser très rapidement un traitement de données complexe, car il n'est pas nécessaire qu'un étage de traitement particulier attende que tous Les étages précédents aient traité le signal vidéo entier. De préférence, les données de référence représentent une quantité de données plus petite que Le signal vidéo, de sorte qu'il est possible de carreler La totalité de données de référence avec une partie des données détectées avant que le signal vidéo ait été complètement traité par les étages précédents. L'invention sera avantageusement utilisée pour traiter des signaux vidéo représentant la scène vue par une caméra de téLé- vision, ou un moyen analogue, et pour correler la scène vue avec des données emmagasinées représentant des particularités visuelles que la caméra de télévision est censée voir. Pour réaliser la cor- rélation, il est ordinairement nécessaire d'orienter les deux ensembles de données l'un par rapport à l'autre et d'ajuster leurs dimensions effectives de façon que les deux ensembles d'éléments de données, l'un extrait de la caméra de télévision et l'autre extrait des données emmagasinées, qui représentent les mêmes parti- cularités visuelles, aient la même dimension effective et soient alignés entre eux. Cette fonction est réaLisée par un processeur géométrique qui fonctionne, de manière très avantageuse, sur les données emmagasinées. Puisque la quantité des données de référence, pour une corrélation particulière, est inférieure à la quantité des données venant de la caméra de télévision ("données de la scène"), le temps nécessaire pour Les traiter dans le processeur géométrique est d'autant moins grand. En outre, le processeur géométrique peut fonctionner alors que Les étages de traitement précédemment mentionnés sont en train d'effectuer les opérations nécessaires sur les données de La scène. La description suivante, conçue à titre d'illustration de l'invention, vise à donner une meiLLeure compréhension de ses caractéristiques et avantages; elle s'appuie sur la figure unique qui représente l'ensemble de traitement de signaux sous forme schématique simplifiée. Tandis qu'un corps se déplace au-dessus d'une surface particulière de façon à se conforner au moins approximativement à un trajet prédéterminé, un capteur d'image, par exemple une caméra de télévision ou un détecteur à infrarouge,, observe l'environnement fixe du corps mobile. La scène vue es-t comparée périodiquement avec des données de référence emmagasinées qui représentent de petites parties localisées de l'environnement que le corps mobile est censé voir s'il suit son trajet prédéterminé. Les données emmagasinées représentent une configuration simplifiée des particularités visuelles dominantes. Les détails mineurs ne sont pas emmagasinés, car ceci rendrait le processus de comparaison inutilement difficile. Les données sont prétraitées, de sorte qu'elles sont constituées de chiffres binaires, par exemple des "1'' et des "0", o la pré- sence d'un "1" numérique désigne la transition visuelle entre la lumière et l'obscurité, ou inversement, Des représentations emmagasinées de plusieurs de ces petites aires sont contenues à l'intérieur d'une mémoire de grande capacité 1, et les données relatives à une aire particulière sont extraites lorsque cela est nécessaire sous commande d'un proces- seur 2, Lequel reçoit des informations via un fil 3 au sujet du déplacement du corps. A partir de cette information, qui contient typiquement une indication de la vitesse et de la direction du corps mobiles le processeur 1 est en mesure de déterminer, à une première approximation, ta position présente du corps mobile de façon à être en mesure de sélectionner dans La mémoire à grande capacité 1 les données relatives à l'aire La plus appropriée. Les données de réfé- rence sont délivrées à un processeur géométrique 4, lequel a pour fonction de modifier les données de référence en fonction de la position de vol et de la distance du corps mobile à l'environnement qu'il observe. Cette étape est nécessaire de façon que les données de référence puissent être mises sous un format qui est compatible avec La scène réelle observée par le capteur d'image. Dans cet exemple, le capteur d'image est une camera de télévision 6. Pour faciliter ce traitement géométrique dans des conditions suffisamment rapides et économiques, les données sont reçues de la mémoire à grande capacité dans le format d'une configuration d'image à deux dimensions, laquelle est voisine de l'image de télévision classique, -4 si bien que des ".ignes" de données binaires sont délivrées séquen- ti.elLement:au processeur 4. Le processeur géométrique:4 peut com- modémentprend&e la forme décrite dans la demande de brevet britan- nique déposée par la demanderesse et publiée sous le numéro GB-21- 00956 A, qui effectue séquentiellement les opérations néces- saires sur des lignes successives de données. Des paramètres néces- saires au.traitement géométrique sont tirés du processeur 2, lequel obtient cette information, via le fil 3, de l'indication de la- distance du corps mobile par rapport-à la scène observée et de la position de vol, ou orientation, du corps mobile.par rapport.à cette scène. Ainsi, le processeur 4 fait tourner la configuration de données de façon à l'orienter correctement par rapport à la scène observée, et grossit sa taille en fonction du grossissement et de La distance d'observation de la caméra 6.. L'information traitée qui est délivrée par Le processeur géométrique 4 est assemblée dans une mémoire de référence 5 de façon qu'elle corresponde au format dans lequel les données relatives à la scène observée sont censées être reçues. La caméra- de télévision 6 est montée sur le corps mobile de manière. à être en mesure de voir l'environnement qui est supposé être fixe. Elle produit un signal vidéo d'une configuration d'image bidimensionnelle classique. La. caméra de. télévision peut tre une caméra. classique, dans laquelle le signal de sortie vidéo -représente la scène visible normale, ou bien il peut s'agir d'une caméra qui réagit au rayonnement infrarouge contenu dans une scène. ILes-informatiorTs vidéo brutes sont transmises à une interface de calteur 7 qui transforme les données de façon qu-'eLLes soient -acep.tables dans les -étages suivants de l'ensembL-e de traitement. Le. signal -de -sortie de l'interface de capteur-7:est constitué par 30. un courant de bit'numériquesà plusieurs niveaux, chaque "celLuLe image",, nu rpoint image, étant -représentéepa-r-un -mat -numérique ayant un nombre suff.isart.de_ bits pour donner l'ampLitude du -signal.vidéo en ce point-avec la précision voulue. Une aire bidimensi.onneLl-e contenant une semblable -35 configuration de.données -est d'une nature très.omplexe et eLle est extrêmement difficile à. traiter de -manière réatiste et économique. En outre, en raison.-de-laprésence de-données à plusieurs niveaux qui représentent::-toutes les nuances de gris de la scène observée (si-' L. 'à-suppose-un-re caméra noir et blanc), il est difficile de distinguer de.manière fiable des particularités visuelles importantes ou dominantesau milieu de l'information générale étrangère au probLème.--àI traiter, ou du.bruit. Les données venant de l'interface. de capteur 7 sont transmises à un filtre numérique 10 dont la fonction est de détecter la- présence de particularités dominantes, appelées "bords" et de produire un signal de sortie binaire numérique qui représente seule- ment.ces bords. Un détecteur de bord convenable est décrit dans la demande de brevet britannique déposée par la demanderesse et publiée sous-le-n GB-2100955 A. Alors, une. transition graduelle d'une région-claire à une région sombre de la scène observée sera trans- formée, par l'action du filtre numérique 10,.en une transition abrupte entre les deux régions, et sera représentée sous forme d'une mince ligne (par exemple des valeurs numériques "1") sur un fond par ailleurs uniforme-(par exemple constitué de valeurs numériques *07). De cettemanière, la présence d'importantes-particularités visuelles est renforcée, et celles-ci sont présentées dans un format permettant de les comparer commodément avec les particularités de référence contenues dans la mémoire à grande capacité 1. Le filtre 10 est destiné à commencer à travailler dès que les premières lignes de données en provenance de l'interface 7 sont disponibles et à délivrer-Les- résultats dès que ces quelques lignes auront été traitées. A-insi, il.-traite des lignes particulières des données dans..le-mêne temps. que des lignes suivantes sont en train d'être produites -par la caméra 6--et d'être délivrées via. l'interface 7. Le.signal de. sortie du filtre numérique 10 est transmis. 370 à:.une mémoire tde. scène 11 o iL est temporairement emmagasiné avant d'être.corre-té ave.c les données de référence de La mémoire de: rfé-- rerce- 5.. Typ-qrement, l'aire de la scène vue par la caméra de télé-- vision 6 est environ.16 fois plus grande que l'aire effective de chaqe--région-de données. de référence contenue dans La mémoire de- 35.réfrenrrce --. Comme urre mémoire de référence_ es-t constituéetypique-- menrrt d'un ensemble-de- données bi.dimensionne. comportant- 64-. x 64 cel- lules images,. la mémoire. de s-c:èrre- est. équiva-tent-e- à-. urr ensemhlie bidimens.ionneL comprenant 256.x 256-:celLules images. I1 est extrêmement avantageux de disposer le processeur géométrique'4:dans.Ile bras données de référence de L'ensemble de trait-ement,-car, dans cette-position, il doit traiter une quantité 5.beaucoup:plus petite-de données, c'est-à-dire seulement 64 x 64 cel- luLes images, par comparaison avec la quantité beaucoup plus élevée, de 256 x.256 celuLes images, qui devraient être traitées si le processeur était placé à L'entrée de la mémoire de scène 11. En- outre,.le-signaL vidéo venant de la caméra de télévision 6 subit unassemblage à une vitesse extrêmement élevée en temps réel, et i.l est souhaitable de minimiser la quantité de traitement qu'il doit subir. Ainsi, les données de référence peuvent être extraites de La mémoire.à grande capacité 1 peu avant.qu'elles soient néces- saires, puis être traitées par-Le processeur géométrique 4 de façon 1'T5:qu'elles puissent être introduites dans la mémoire de référence 5 au moment ou un peu avant le moment o une scène correspondante est :censée entrer dans la mémoire de scène 11.. La mémoire de scène 11 et la mémoire de référence 5 -contiennent toutes deux des- ensembles bidimensionnels de données -20:hinàaires et la fonction-du.-traducteur-d.'instruction 12 et du cor- rét-ateur 13.:est de comparer-toutes les positions possibles de Ulensemble de-référence-:aveccelles de. l'ensemble de scène à deux dimensions..Comme'l'aire.de.référence est.beaucoup plus petite -que l'aire- relative à la:scène, les opérations de traduction 25.d'instr. uction et de corrélation commencent avant que la mémoire de :scèe, 1:toute entière ait été complètement assemblée. En pratique, letraducteu- r d'instruction 12 et le corrélateur 13 sont conçus pour7fonctionner.en traitant ligne après ligne.à l'.aide d'un ensemble -séquentiel.. de:celluLes.de corréLation-..Ceci réduit grandement.le -30 -temps nécessai-re pour effectuer le-processus-de corrélation, car- i.l:-,ri'-est ^pas nécessaire.d'attendre--que -tout.l'ensemble bidimension- -nel.de-données de:scène-aitété-:transpQsé-dans la mémoire-11-pour :commenc-er.lerprocessus de:-corrélation. Uncorr-éLateur à.vitesse élevée permettant de-correl-er 35.de-grandes. quantités de données -binaires est.décrit dans -la.demande de brevet 'français-déposée ce jour sous le-no85 03 437 par.a demanderesse et intitulé "processeur de corrélation". Pour chaque position possible de la petite aire de référence-par-rapport à la scène, un signal de sortie est fourni parle corréLtateur 13 à un analyseur de corrélation 14. Le signal de sortie du corrélateur représente le résultat de corrélation, c'est-à-dire un ensemble indiquant le degré de similarité existant entre la mémoire de référence et la partie localisée de la mémoire de scène avec laquelle elle est comparée. A chaque fois qu'un résultat de corrélation est produit, un signal de commande est transmis via la ligne 16 au traducteur d'instruction afin de faire commencer le processus de corrélation suivant. Dans le présent exemple, il existe 193 x 193 positions possibles différentes-pour l'aire de référence par rapport à l'aire de scène, si bien qu'un nombre correspondant de résultats différents est produit par le corrélateur 13. L'analyseur de corrélation 14 examine tous les résultats de corrélation et détermine lequel est le plus éleve, c'est-à-dire quelle est la région de la mémoire de scène qui res- semble le plus à la mémoire de référence. L'information identifiant la position de la mémoire de scène qui donne le résultat de cor- rélation le plus élevé est fourni par l'analyseur 14 et est trans- mis à la sortie de commande 15, laquelle produit un signal de com- mande au processeur 2 de signaux de commande afin d'indiquer que la corrélation est terminée. Lorsque le processus de corrélation est terminé pour toutes les positions possibles de l'aire de référence par rapport à l'aire de référence, la position du corps mobile qui porte la caméra de télévision 6 est alors connue avec une grande précision. Si le-corps mobile s'est écarté, même légèrement, du trajet attendu, le résultat-de:la corrélation peut être utilisé pour fournir un facteur-de corrélation permettant de compenser les erreurs et pour- amener le corps môbile à revenir sur le trajet prévu. En effectuant- deskopérations de corrélation à intervalles réguliers le long du trajet p'révu du corps mobile, on peut appliquer une correction avant-que--les erreurs.de déviation ne.s'accumulent jusqu'à un - degré imnportant. Il est:clair que les- processus de corrélation doivent être:: répétés à des intervallessuffisamment fréquents- pour que les erreurs accumulées ne deviennent importantes au point que la scène observée par la camera de télévision ne comporte pLus d'aire de référence contenue dans la mémoire à grande capacité 1. On notera que l'architecture de L'ensemble de traitement ci-dessus décrit permet de mettre en oeuvre un processus de correla- tion particulièrement rapide. Par exemple, comme le montre la figure unique, chaque bloc des données de signaux venant de la caméra de télévision 6 et allant à l'analyseur de corrélation 14 peut transmettre son résultat partiel au bloc suivant de la séquence avant que tout l'ensemble bidimensionnel des données de scène ait été entièrement traité. Il est simplement nécessaire que les quelques premières lignes d'image des données soient traitées par un bloc quelconque, de façon qu'elles puissent être mises à la disposition du bloc suivant. Les résultats sont ensuite transmis à des blocs ultérieurs qui peuvent commencer le traitement pendant que les blocs précédents sont toujours en train de traiter les lignes de données restantes de l'ensemble bidimensionnel. Cette particularité améliore fortement la vitesse du processeur et peut être rapprochée des processus du type dit "pipeline". Avec une telle structure, il devient pratique- -ment possible de traiter les signaux produits par la caméra 6 en temps réel et d'utiliser les résultats pour commander avec précision Le déplacement du corps qui porte la caméra. Dans le cas d'une scène constituée de 256 lignes d'image, toutes les lignes sauf les quelques premières et dernieres lignes peuvent, théoriquement, être traitées simultanément par tous les blocs de traitement. Bien entendu, l'homme de l'art sera en mesure d'imaginer, à-parttr du processeur dont la description vient d'être donnée à titre simplement illustratif et nuLLement limitatif, diverses variantes et modifications ne sortant pas du cadre de l'invention. REVENDICATIONS 1. Processeur de données comprenant plusieurs étages de traitement séquentiellement connectés, comportant un générateur (6) de signaux vidéo destinés à produire un signal vidéo sous forme d'une succession de lignes de données numériques, un filtre numé- rique (10), et un corrélateur (13), le corrélateur étant destiné à correler des données extraites du signal vidéo avec des données de référence, caractérisé par un moyen servant à délivrer des données d'un étage au suivant de façon que chaque étage (sauf le premier) reçoive des lignes (ou des parties de ligne) de données traitées de la part d'un étage précédent et les traite alors que ledit étage précédent traite des lignes ultérieures de données du même signal vidéo. 2. Processeur de données seLon la revendication 1, caracté- risé en ce que les données de référence représentent une quantité de données plus petite que ledit signal videéo. 3. Processeur de données selon la revendication 2, caracté- risé en ce qu'un processeur géométrique (4) est destiné à travailler sur lesdites données de référence avant que celles-ci ne soient présentées au corrélateur, le processeur géométrique commandant la taille et l'orientation des données de référence par rapport aux données- extraites du signal vidéo. 4. Processeur de données selon l'une quelconque des reven- dications I à 3, caractérisé en ce que des mémoires respectives (5, 11) sont prévues dans les deux trajets d'entrée du corréLateur, les données étant-extraites des mémoires et étant délivrées au corrélateur- en forrction des besoins sous commande d'un traducteur d'instruction (1)..