Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
DISTANCE-ESTIMATION METHOD FOR A TRAVELLING OBJECT SUBJECTED TO DYNAMIC PATH CONSTRAINTS
Document Type and Number:
WIPO Patent Application WO/2005/031262
Kind Code:
A1
Abstract:
The invention relates to a method whereby a terrain elevation database can be used to calculate a distance map of the points accessible to a travelling object that is subjected to dynamic path constraints which change over time, e.g. an aircraft having an imposed vertical flight profile, said distances only being measured using the paths that can be passed by the travelling object. The inventive method employs a propagation distance transform which: (i) lists the passable paths from a target point to a source point, the distance of which is to be estimated in order to provide distance measurements; and compares the distance from the target point to the length of the shortest passable paths(s).

Inventors:
BITAR ELIAS (FR)
MARTY NICOLAS (FR)
Application Number:
PCT/EP2004/052078
Publication Date:
April 07, 2005
Filing Date:
September 08, 2004
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
THALES SA (FR)
BITAR ELIAS (FR)
MARTY NICOLAS (FR)
International Classes:
G01C21/00; G08G5/04; (IPC1-7): G01C21/00; G05D1/02; G08G5/04
Other References:
HORNG J-H ET AL: "Vehicle path planning by using adaptive constrained distance transformation", PATTERN RECOGNITION, PERGAMON PRESS INC. ELMSFORD, N.Y, US, vol. 35, no. 6, June 2002 (2002-06-01), pages 1327 - 1337, XP004341798, ISSN: 0031-3203
STILES P ET AL: "ROUTE PLANNING", PROCEEDINGS OF THE DIGITAL AVIONICS SYSTEMS CONFERENCE. LOS ANGELES, OCT. 14 - 17, 1991, NEW YORK, IEEE, US, vol. CONF. 10, 14 October 1991 (1991-10-14), pages 420 - 425, XP000309279, ISBN: 0-7803-0116-1
Attorney, Agent or Firm:
Beylot, Jacques (31/33 avenue Aristide Briand, Arcueil Cedex, FR)
Download PDF:
Claims:
REVENDICATIONS
1. Procédé d'estimation des distances des points d'une carte extraite d'une base de données d'élévation du terrain, pour un mobile soumis à des contraintes dynamiques lui interdisant certaines zones de la carte dites zones interdites de passage dont la configuration varie en fonction du temps de parcours du mobile ; la base de données d'élévation du terrain renfermant un ensemble de points repérés par une altitude, une latitude et une longitude maillant le terrain d'évolution du mobile ; ledit procédé mettant en oeuvre une transformée de distance opérant par propagation sur l'image constituée par les éléments de la base de données d'élévation du terrain correspondant à la carte, disposés en lignes et colonnes par ordres de valeurs de longitude et de latitude ; la transformée de distance estimant les distances des différents points de l'image par rapport à un point source placé à proximité du mobile, en appliquant, par balayage, un masque de chanfrein aux différents points de l'image ; l'estimation de distance d'un point, par application du masque de chanfrein à ce point dit point but s'effectuant en répertoriant les différents trajets allant du point but au point source et passant par des points du voisinage du point but qui sont couverts par le masque de chanfrein et dont les distances au point source ont été préalablement estimées au cours du mme balayage, en déterminant les longueurs des différents trajets répertoriés par sommation de la distance affectée au point de passage du voisinage et de sa distance au point but extraite du masque de chanfrein, en recherchant le trajet le plus court parmi les trajets répertoriés et en adoptant sa longueur comme estimation de la distance du point but ; une valeur de distance supérieure à la plus grande distance mesurable sur l'image étant initialement attribuée, en début de balayage, à tous les points de l'image sauf au point source, origine des mesures de distance, auquel est affectée une valeur de distance nulle ; ledit procédé étant caractérisé en ce que les longueurs des trajets répertoriés, lors de l'application du masque de chanfrein à un point but, en vue de la recherche du trajet le plus court, sont traduites en temps de parcours pour le mobile et en ce que les trajets répertoriés dont les temps de parcours pour le mobile sont tels que le point but appartiendrait à une zone interdite de passage au moment où le mobile l'atteindrait, sont exclus de la recherche du trajet le plus court.
2. Procédé selon la revendication 1, appliqué à un aéronef ayant un profil vertical de vol à respecter déterminant l'évolution de son altitude instantanée, caractérisé en ce que, aux longueurs des trajets répertoriées lors de l'application du masque de chanfrein à un point but, sont associées les valeurs prévisibles des altitudes instantanées qu'aurait l'aéronef en atteignant le point but par ces trajets tout en respectant le profil vertical de vol imposé, et en ce que les trajets répertoriés associés à des valeurs prévisibles d'altitude inférieures ou égales à celle du point but donnée par la base de données d'élévation du terrain et augmentée d'une marge de protection sont exclus de la recherche du trajet le plus court, .
3. Procédé selon la revendication 2, caractérisé en ce que l'estimation de distance opérée par propagation sur l'image constituée des éléments de la base de données d'élévation du terrain correspondant à la carte est doublée d'une estimation de l'altitude prévisible pour l'aéronef au droit des différents points de l'image en supposant qu'il suive le trajet le plus court sélectionné pour l'estimation de distance et qu'il respecte le profil vertical de vol imposé.
4. Procédé selon la revendication 3, caractérisé en ce que les altitudes des différents points de la carte sont soustraites des estimations des altitudes prévisibles pour l'aéronef en ces points pour obtenir des écarts par rapport au sol.
5. Procédé selon la revendication 4, caractérisé en ce que les écarts par rapport au sol sont affichés sur la carte en strates de couleurs.
6. Procédé selon la revendication 1, caractérisé en ce que la transformée de distance par propagation balaie les pixels de l'image constituée des éléments de la base de données d'élévation du terrain correspondant à la carte, en plusieurs passes successives selon des ordres différents.
7. Procédé selon la revendication 6, caractérisé en ce que la transformée de distance par propagation balaie les pixels de l'image constituée des éléments de la base de données d'élévation du terrain appartenant à la carte, en plusieurs passes successives selon des ordres différents et de manière répétée jusqu'à ce que les estimations de distance obtenues se stabilisent.
8. Procédé selon la revendication 6, caractérisé en ce que la transformée de distance par propagation balaie les pixels de l'image constituée des éléments de la base de données d'élévation du terrain correspondant à la carte, en plusieurs passes successives selon des ordres différents dont l'ordre lexicographique, l'ordre lexicographique inverse, l'ordre lexicographique transposé et l'ordre lexicographique transposé inverse.
9. Procédé selon la revendication 6, caractérisé en ce que la transformée de distance par propagation balaie les pixels de l'image constituée des éléments de la base de données d'élévation du terrain correspondant à la carte, en une série de quatre passes répétée jusqu'à stabilisation des estimations de distances : une première passe effectuée ligne par ligne de haut en bas de l'image, chaque ligne étant parcourue de gauche à droite, une deuxième passe effectuée ligne par ligne de bas en haut de l'image, chaque ligne étant parcourue de droite à gauche, une troisième passe effectuée colonne par colonne de gauche à droite de l'image, chaque colonne étant parcourue de haut en bas, et une quatrième passe effectuée colonne par colonne de droite à gauche de l'image, chaque colonne étant parcourue de bas en haut.
10. Procédé selon la revendication 6, caractérisé en ce que la transformée de distance par propagation balaie les pixels de l'image constituée des éléments de la base de données d'élévation du terrain correspondant à la carte, en une série de huit passes répétée jusqu'à stabilisation des estimations de distances : une première passe effectuée ligne par ligne de haut en bas de l'image, chaque ligne étant parcourue de gauche à droite, une deuxième passe effectuée ligne par ligne de bas en haut de l'image, chaque ligne étant parcourue de droite à gauche, une troisième passe effectuée colonne par colonne de gauche à droite de l'image, chaque colonne étant parcourue de haut en bas, une quatrième passe effectuée colonne par colonne de droite à gauche de l'image, chaque colonne étant parcourue de bas en haut, une cinquième passe effectuée ligne par ligne de haut en bas de l'image, chaque ligne étant parcourue de droite à gauche, une sixième passe effectuée ligne par ligne de bas en haut de l'image, chaque ligne étant parcourue de gauche à droite, une septième passe effectuée colonne par colonne de droite à gauche de l'image, chaque colonne étant parcourue de haut en bas, et une huitième passe effectuée colonne par colonne de gauche à droite de l'image, chaque colonne étant parcourue de bas en haut.
11. Procédé selon la revendication 6, caractérisé en ce que la transformée de distance par propagation balaie les pixels de l'image constituée des éléments de la base de données d'élévation du terrain appartenant à la carte, en plusieurs passes successives selon des ordres différents dont certains consistent en un balayage de l'image par diagonales, d'un bord à l'autre et, au sein d'une diagonale, d'une extrémité à l'autre.
Description:
PROCEDE D'ESTIMATION DE DISTANCE POUR UN MOBILE SOUMIS A DES CONTRAINTES DYNAMIQUES DE PARCOURS L'invention concerne la navigation de terrain pour un mobile soumis à des contraintes de parcours variant au cours du temps, tel qu'un aéronef limité en taux de montée, la limite pouvant tre négative, et évoluant au-dessus d'une zone de terrain présentant des reliefs ou des obstacles menaçants proches ou supérieurs à son altitude de vol.

Divers systèmes ont été développés pour prévenir l'équipage d'un aéronef d'un risque de collision avec le sol. Certains, tels que les systèmes <BR> <BR> TAWS (acronyme de l'expression anglo-saxonne : "Terrain Awareness and Warning System"), font une prévision de trajectoire à court terme pour l'aéronef à partir des informations de vol (position, cap, orientation et amplitude du vecteur vitesse) fournies par les équipements du bord, la placent en situation par rapport à une carte de la région survolée extraite d'une base de données d'élévation du terrain accessible du bord et émettent des alarmes à destination de l'équipage de l'aéronef à chaque fois que la trajectoire prévisible à court terme entre en collision avec le sol. Ces systèmes TAWS agrémentent leurs alarmes de recommandations rudimentaires du genre"Terrain Ahead, Pull up". Certains d'entre eux donnent également des informations sur le niveau de risque de collision que font encourir les reliefs et les obstacles environnant l'aéronef sous la forme d'une carte présentant les reliefs ou les obstacles du terrain survolé en strates de couleurs différentes. Cependant, cette carte de risques de collision avec l'environnement tient uniquement compte des altitudes du relief relativement à la position du mobile et ne prend pas en compte de l'existence ou non d'une trajectoire réaliste permettant de rejoindre les zones affichées.

Pour satisfaire ce besoin de connaître les points du terrain survolé restant accessibles après une manoeuvre d'évitement d'un relief ou d'un obstacle au sol, la carte de risque de collision avec l'environnement doit afficher uniquement les zones pour lesquelles il existe un chemin possible depuis la position courante du mobile. La réalisation d'un tel affichage passe par l'association d'une métrique à une carte du relief tirée d'une base de données d'élévation du terrain.

Une méthode connue pour associer une métrique à une carte du relief tirée d'une base de données d'élévation du terrain à maillage régulier

de la surface terrestre ou d'une partie de celle-ci, consiste à considérer la carte présentant le relief à partir de valeurs d'altitude figurant, avec les coordonnées géographiques : latitude et longitude des points de mesure, dans les éléments de la base de données d'élévation du terrain comme une image dont les pixels sont les valeurs d'altitude des points de la base de données d'élévation du terrain illustrées dans la carte avec, pour coordonnées abscisse et ordonnée au sein de l'image, les coordonnées géographiques latitude et longitude de ces points figurant dans les éléments de la base de données d'élévation du terrain et à faire appel à une transformée de distance opérant par propagation pour estimer des distances au sein de cette image.

Les transformées de distance opérant par propagation également connues sous l'appellation"transformées distance de chanfrein" ("chamfer distance transform"ou"chamfer euclidean distance transform"en anglo- saxon) déduisent la distance d'un pixel dit pixel but par rapport à un autre pixel dit pixel source, des distances précédemment estimées pour les pixels de son voisinage, par un balayage des pixels de l'image. Le balayage permet d'estimer la distance d'un nouveau pixel but par rapport au pixel source par recherche du trajet de longueur minimale allant du nouveau pixel but au pixel source en passant par un pixel intermédiaire de son voisinage dont la distance a déjà été estimée, la distance du nouveau pixel but à un pixel intermédiaire de son voisinage dont la distance a déjà été estimée étant donnée par application d'un masque de voisinage communément appelé masque de chanfrein.

Une transformée de distance de ce genre a été proposée en 1986 par Gunilla Borgefors pour estimer des distances entre objets dans une <BR> <BR> image numérique, dans un article intitulé : "Distance Transformation in Digital Images."et paru dans la revue"Computer Vision, Graphics and Image Processing", Vol. 34 pp. 344-378. Un des intérts de ces transformées de distance par propagation est de réduire la complexité des calculs d'une estimation de distance en autorisant l'emploi de nombres entiers.

Pour sélectionner le trajet de longueur minimale donnant l'estimation distance, une transformée de distance par propagation doit tester tous les trajets possibles. Cette obligation se traduit par une contrainte de régularité imposée à l'ordre de balayage des pixels d'une image. G.

Borgefors propose, pour satisfaire cette contrainte de régularité, de balayer les pixels d'une image deux fois consécutivement, dans deux ordres inverses l'un de l'autre, qui sont soit l'ordre lexicographique, l'image étant analysée de gauche à droite ligne par ligne et de haut en bas, et l'ordre lexicographique inverse, soit l'ordre lexicographique transposé, l'image ayant subi une rotation de 90°, et l'ordre lexicographique transposé inverse. Elle propose également d'adopter un masque de chanfrein de dimensions 3x3 avec deux valeurs (3,4) de distances de voisinage ou de dimensions 5x5 avec trois valeurs (5,7, 11) de distances de voisinage.

Les transformées de distance opérant par propagation sont déjà employées dans le domaine de la navigation terrain pour robot. Dans ce cadre, il est connu d'utiliser la transformée de distance de G. Borgefors avec une contrainte statique consistant à attribuer, de manière autoritaire, une distance infinie à un point en analyse lorsqu'il apparaît qu'il fait partie de reliefs ou d'obstacles à contourner répertoriés dans une mémoire de zones interdites de franchissement, cela de manière à éliminer, de l'ensemble des trajets testés lors d'une estimation de distance, ceux passant par les reliefs ou obstacles que le robot doit contourner. Cependant, une transformée de distance opérant par propagation utilisée avec une contrainte statique dans le cadre de la navigation terrain pour robot, ne convient pas à la navigation terrain pour aéronef pour lequel la menace présentée par un relief ou un obstacle au sol dépend du profil vertical de sa trajectoire.

La présente invention a pour but un procédé d'estimation des distances des points d'une carte extraite d'une base de données d'élévation du terrain par rapport à un point de référence employant une transformée de distance opérant par propagation, avec une contrainte dynamique évolutive au cours du temps convenant à la navigation terrain pour un aéronef ayant une trajectoire à profil vertical imposé.

Elle a pour objet un procédé d'estimation des distances des points d'une carte extraite d'une base de données d'élévation du terrain, pour un mobile soumis à des contraintes dynamiques lui interdisant certaines zones de la carte dites zones interdites de passage dont la configuration varie en fonction du temps de parcours du mobile. La base de données d'élévation du

terrain renferme un ensemble de points repérés par une altitude, une latitude et une longitude maillant le terrain d'évolution du mobile. Le procédé met en oeuvre une transformée de distance opérant par propagation sur l'image constituée par les éléments de la base de données d'élévation du terrain correspondant à la carte, disposés en lignes et colonnes par ordres de valeurs de longitude et de latitude. Cette transformée de distance estime les distances des différents points de l'image par rapport à un point source placé à proximité du mobile en appliquant, par balayage, un masque de chanfrein aux différents points de l'image. L'estimation de distance d'un point, par application du masque de chanfrein à ce point dit point but s'effectue en répertoriant les différents trajets allant du point but au point source et passant par des points du voisinage du point but qui sont recouverts par le masque de chanfrein et dont les distances au point source ont été préalablement estimées au cours du mme balayage, en déterminant les longueurs des différents trajets répertoriés par sommation de la distance affectée au point de passage du voisinage et de sa distance au point but extraite du masque de chanfrein, en recherchant le trajet le plus court parmi les trajets répertoriés et en adoptant sa longueur comme estimation de la distance du point but. Initialement, en début de balayage, une valeur de distance supérieure à la plus grande distance mesurable sur l'image est attribuée à tous les points de l'image sauf pour le point source, origine des mesures de distance, auquel est affectée une valeur de distance nulle. Le procédé est remarquable en ce que les longueurs des trajets répertoriés, lors de l'application du masque de chanfrein à un point but, en vue de la recherche du trajet le plus court, sont traduites en temps de parcours pour le mobile et en ce que les trajets répertoriés dont les temps de parcours pour le mobile sont tels que le point but appartiendrait à une zone interdite de passage au moment où le mobile l'atteindrait, sont exclus de la recherche du trajet le plus court.

Avantageusement, lorsque le mobile est un aéronef ayant un profil vertical de vol à respecter déterminant l'évolution de son altitude instantanée, on associe, aux longueurs des trajets répertoriées, les valeurs prévisibles des altitudes instantanées qu'aurait l'aéronef en atteignant le point but par ces trajets tout en respectant le profil vertical de vol imposé, et on élimine de

la recherche du trajet le plus court, les trajets répertoriés associés à des valeurs prévisibles d'altitude inférieures ou égales à celle du point but donnée par la base de données d'élévation du terrain et augmentée d'une marge de protection.

Avantageusement, lorsque le mobile est un aéronef ayant un profil vertical de vol imposé, l'estimation de distance opérée par propagation sur l'image constituée des éléments de la base de données d'élévation du terrain correspondant à la carte est doublée d'une estimation de l'altitude prévisible pour l'aéronef au droit des différents points de l'image en supposant qu'il suive le trajet le plus court sélectionné pour l'estimation de distance et qu'il respecte le profil vertical de vol imposé.

Avantageusement, lorsque le mobile est un aéronef à profil vertical de vol imposé et que l'estimation de distance est doublée par une estimation de l'altitude prévisible de l'aéronef, les altitudes des différents points de la carte sont soustraites des estimations des altitudes prévisibles pour l'aéronef en ces points pour obtenir des écarts par rapport au sol.

Avantageusement, lorsque le mobile est un aéronef à profil vertical de vol imposé et que l'estimation de distance est doublée par une estimation de l'altitude prévisible de l'aéronef, les altitudes des différents points de la carte sont soustraites des estimations des altitudes prévisibles pour l'aéronef en ces points pour obtenir des écarts par rapport au sol affichés sur la carte en strates de couleurs.

Avantageusement, la transformée de distance par propagation balaie les pixels de l'image constituée des éléments de la base de données d'élévation du terrain correspondant à la carte, en plusieurs passes successives selon des ordres différents.

Avantageusement, la transformée de distance par propagation balaie les pixels de l'image constituée des éléments de la base de données d'élévation du terrain appartenant à la carte, en plusieurs passes

successives selon des ordres différents et de manière répétée jusqu'à ce que les estimations de distance obtenues se stabilisent.

Avantageusement, la transformée de distance par propagation balaie les pixels de l'image constituée des éléments de la base de données d'élévation du terrain correspondant à la carte, en plusieurs passes successives selon des ordres différents dont l'ordre lexicographique, l'ordre lexicographique inverse, l'ordre lexicographique transposé et l'ordre lexicographique transposé inverse.

Avantageusement, la transformée de distance par propagation balaie les pixels de l'image constituée des éléments de la base de données d'élévation terrain correspondant à la carte, en une série de quatre passes répétée jusqu'à stabilisation des estimations de distances : - une première passe effectuée ligne par ligne de haut en bas de l'image, chaque ligne étant parcourue de gauche à droite, - une deuxième passe effectuée ligne par ligne de bas en haut de l'image, chaque ligne étant parcourue de droite à gauche, - une troisième passe effectuée colonne par colonne de gauche à droite de l'image, chaque colonne étant parcourue de haut en bas, et - une quatrième passe effectuée colonne par colonne de droite à gauche de l'image, chaque colonne étant parcourue de bas en haut.

Avantageusement, la transformée de distance par propagation balaie les pixels de l'image constituée des éléments de la base de données d'élévation du terrain correspondant à la carte, en une série de huit passes répétée jusqu'à stabilisation des estimations de distances. : - une première passe effectuée ligne par ligne de haut en bas de l'image, chaque ligne étant parcourue de gauche à droite, - une deuxième passe effectuée ligne par ligne de bas en haut de l'image, chaque ligne étant parcourue de droite à gauche,

une troisième passe effectuée colonne par colonne de gauche à droite de l'image, chaque colonne étant parcourue de haut en bas, une quatrième passe effectuée colonne par colonne de droite à gauche de l'image, chaque colonne étant parcourue de bas en haut, une cinquième passe effectuée ligne par ligne de haut en bas de l'image, chaque ligne étant parcourue de droite à gauche, une sixième passe effectuée ligne par ligne de bas en haut de l'image, chaque ligne étant parcourue de gauche à droite, une septième passe effectuée colonne par colonne de droite à gauche de l'image, chaque colonne étant parcourue de haut en bas, et une huitième passe effectuée colonne par colonne de gauche à droite de l'image, chaque colonne étant parcourue de bas en haut.

D'autres caractéristiques et avantages de l'invention ressortiront de la description ci-après d'un mode de réalisation donné à titre d'exemple.

Cette description sera faite en regard du dessin dans lequel : - une figure 1 représente un exemple de masque de chanfrein, - des figures 2a et 2b montrent les cellules du masque de chanfrein illustré à la figure 1, qui sont utilisées dans une passe de balayage selon l'ordre lexicographique et dans une passe de balayage selon l'ordre lexicographique inverse, - une figure 3 est un diagramme illustrant les principales étapes d'un procédé, conforme à l'invention, pour estimer la distance d'un point en tenant compte d'une contrainte dynamique au cours de l'application d'un masque de chanfrein, - une figure 4 est un diagramme illustrant une variante du procédé d'estimation de la distance d'un point montré à la figure 3, et - une figure 5 est un diagramme des principales étapes d'un procédé, conforme à l'invention, d'estimation, par propagation, des distances de l'ensemble des points d'une carte tenant

compte d'une contrainte dynamique et mettant en oeuvre un procédé d'estimation de la distance d'un point tel que ceux montrés aux figures 3 et 4.

La distance d'entre deux points d'une surface est la longueur minimale de tous les parcours possibles sur la surface partant de l'un des points et aboutissant à l'autre. Dans une image formée de pixels répartis selon un maillage régulier de lignes, colonnes et diagonales, une transformée de distance par propagation estime la distance d'un pixel dit pixel"but"par rapport à un pixel dit pixel"source"en construisant progressivement, en partant du pixel source, le plus court trajet possible suivant le maillage des pixels et aboutissant au pixel but et en s'aidant des distances trouvées pour les pixels de l'image déjà analysés et d'un tableau dit masque de chanfrein répertoriant les valeurs des distances entre un pixel et ses proches voisins.

Comme montré à la figure 1, un masque de chanfrein se présente sous la forme d'un tableau avec une disposition de cases reproduisant le motif d'un pixel entouré de ses proches voisins. Au centre du motif, une case affectée de la valeur 0 repère le pixel pris pour origine des distances répertoriées dans le tableau. Autour de cette case centrale, s'agglomèrent des cases périphériques remplies de valeurs de distance non nulles et reprenant la disposition des pixels du voisinage d'un pixel supposé occuper la case centrale. La valeur de distance figurant dans une case périphérique est celle de la distance séparant un pixel occupant la position de la case périphérique concernée, d'un pixel occupant la position de la case centrale.

On remarque que les valeurs de distance se répartissent en cercles concentriques. Un premier cercle de quatre cases correspondant aux quatre pixels les plus proches du pixel de la case centrale placés soit sur la ligne soit sur la colonne du pixel de la case centrale sont affectées d'une valeur de distance D1. Un deuxième cercle de quatre cases correspondant aux quatre pixels les plus proches du pixel de la case centrale placés en dehors de la ligne et de la colonne du pixel de la case centrale sont affectées d'une valeur de distance D2. Un troisième cercle de huit cases correspondant aux huit pixels les plus proches du pixel de la case centrale placés en dehors de la

ligne, de la colonne et des diagonales du pixel de la case centrale sont affectées d'une valeur D3.

Le masque de chanfrein peut couvrir un voisinage plus ou moins étendu du pixel de la case centrale en répertoriant les valeurs des distances d'un nombre plus ou moins important de cercles concentriques de pixels du voisinage. II peut tre réduit aux deux premiers cercles formés par les pixels du voisinage d'un pixel occupant la case centrale ou tre étendu au-delà des trois premiers cercles formés par les pixels du voisinage du pixel de la case centrale mais il est habituel de s'arrter à trois premiers cercles comme celui représenté à la figure 1. Les valeurs des distances D1, D2, D3 qui correspondent à des distances euclidiennes sont exprimées dans une échelle autorisant l'emploi de nombres entiers au prix d'une certaine approximation. C'est ainsi que G. Borgefors donne à la distance d1 correspondant à un échelon en abscisse x ou en ordonnée y la valeur 5, à la distance d2 correspondant à la racine de la somme des carrés des échelons en abscisse et ordonnée w la valeur 7 qui est une approximation de 5-2, et à la distance d3 la valeur 11 qui est une approximation de 5ß/i.

La construction progressive du plus court trajet possible allant à un pixel but, en partant d'un pixel source et en suivant le maillage des pixels se fait par un balayage régulier des pixels de l'image au moyen du masque de chanfrein. Initialement, les pixels de l'image se voient affecter une valeur de distance infinie, en fait un nombre suffisamment élevé pour dépasser toutes les valeurs des distances mesurables dans l'image, à l'exception du pixel source qui se voit affecter une valeur de distance nulle. Puis les valeurs initiales de distance affectées aux points but sont mises à jour au cours du balayage de l'image par le masque de chanfrein, une mise à jour consistant à remplacer une valeur de distance attribuée à un point but, par une nouvelle valeur moindre résultant d'une estimation de distance faite à l'occasion d'une nouvelle application du masque de chanfrein au point but considéré.

Une estimation de distance par application du masque de chanfrein à un pixel but consiste à répertorier tous les trajets allant de ce pixel but au pixel source et passant par un pixel du voisinage du pixel but dont la distance a déjà été estimée au cours du mme balayage, à rechercher parmi les trajets répertoriés, le ou les trajets les plus courts et à adopter la longueur du ou des trajets les plus courts comme estimation de

distance. Cela se fait en plaçant le pixel but dont on veut estimer la distance dans la case centrale du masque de chanfrein, en sélectionnant les cases périphériques du masque de chanfrein correspondant à des pixels du voisinage dont la distance vient d'tre mise à jour, en calculant les longueurs des trajets les plus courts reliant le pixel à mettre à jour au pixel source en passant par un des pixels sélectionnés du voisinage, par addition de la valeur de distance affectée au pixel du voisinage concerné et de la valeur de distance donnée par le masque de chanfrein, et à adopter, comme estimation de distance, le minimum des valeurs de longueur de trajet obtenues et de l'ancienne valeur de distance affectée au pixel en cours d'analyse.

L'ordre de balayage des pixels de l'image influe sur la fiabilité des estimations de distance et de leurs mises à jour car les trajets pris en compte en dépendent. En fait, il est soumis à une contrainte de régularité qui fait que si les pixels de l'image sont repérés selon l'ordre lexicographique (pixels classés dans un ordre croissant ligne par ligne en partant du haut de l'image et en progressant vers le bas de l'image, et de gauche à droite au sein d'une ligne), et si un pixel p a été analysé avant un pixel q alors un pixel p+x doit tre analysés avant le pixel q+x. Les ordres lexicographique (balayage des pixels de l'image ligne par ligne de haut en bas et, au sein d'une ligne, de gauche à droite), lexicographique inverse (balayage des pixels de l'image ligne par ligne de bas en haut et, au sein d'une ligne, de droite à gauche), lexicographique transposé (balayage des pixels de l'image colonne par colonne de gauche à droite et, au sein d'une colonne, de haut en bas), lexicographique transposé inverse (balayage des pixels par colonnes de droite à gauche et au sein d'une colonne de bas en haut) satisfont cette condition de régularité et plus généralement tous les balayages dans lesquels les lignes et colonnes, ou les diagonales sont balayées de droite à gauche ou de gauche à droite. G. Borgefors préconise un double balayage des pixels de l'image, une fois dans l'ordre lexicographique et une autre dans l'ordre lexicographique inverse.

La figure 2a montre, dans le cas d'une passe de balayage selon l'ordre lexicographique allant du coin supérieur gauche au coin inférieur droit de l'image, les cases du masque de chanfrein de la figure 1 utilisées pour répertorier les trajets allant d'un pixel but placé sur la case centrale (case

indexée par 0) au pixel source en passant par un pixel du voisinage dont la distance a déjà fait l'objet d'une estimation au cours du mme balayage. Ces cases sont au nombre de huit, disposées dans la partie supérieure gauche du masque de chanfrein. II y a donc huit trajets répertoriés pour la recherche du plus court dont la longueur est prise pour estimation de la distance.

La figure 2b montre, dans le cas d'une passe de balayage selon l'ordre lexicographique inverse allant du coin inférieur droit au coin supérieur gauche de l'image, les cases du masque de chanfrein de la figure 1 utilisées pour répertorier les trajets allant d'un pixel but placé sur la case centrale (case indexée par 0) au pixel source en passant par un pixel du voisinage dont la distance a déjà fait l'objet d'une estimation au cours du mme balayage. Ces cases sont complémentaires de celles de la figure 2a. Elles sont également au nombre de huit mais disposées dans la partie inférieure droite du masque de chanfrein. II y a donc encore huit trajets répertoriés pour la recherche du plus court dont la longueur est prise pour estimation de la distance.

La transformée de distance par propagation dont le principe vient d'tre rappelé sommairement a été conçue à l'origine pour l'analyse du positionnement d'objets dans une image mais elle n'a pas tardé à tre appliquée à l'estimation des distances sur une carte du relief extraite d'une base de données d'élévation du terrain à maillage régulier de la surface terrestre. En effet, une telle carte ne dispose pas explicitement d'une métrique puisqu'elle est tracée à partir des altitudes des points du maillage de la base de données d'élévation du terrain de la zone représentée. Dans ce cadre, la transformée de distance par propagation est appliquée à une image dont les pixels sont les éléments de la base de données d'élévation du terrain appartenant à la carte, c'est-à-dire, des valeurs d'altitude associées aux coordonnées géographiques latitude, longitude des noeuds du maillage où elles ont été mesurées, classés, comme sur la carte, par latitude et par longitude croissantes ou décroissantes selon un tableau à deux dimensions de coordonnées latitude et longitude.

Pour une navigation terrain de mobiles tels que des robots, la transformée de distance par propagation est utilisée pour estimer les distances des points de la carte d'un terrain d'évolution extraite d'une base de données d'élévation du terrain par rapport à la position du mobile ou une

position proche. Dans ce cas, il est connu de tenir compte de contraintes statiques constituées par des zones de la carte infranchissables par le mobile en raison de leurs configurations accidentées. Pour ce faire, un marqueur de zone interdite est associé aux éléments de la base de données d'élévation du terrain figurant dans la carte. II signale, lorsqu'il est activé, une zone infranchissable ou interdite et inhibe toute mise à jour autre qu'une initialisation, de l'estimation de distance faite par la transformée de distance par propagation pour l'élément pixel considéré.

Dans le cas d'un aéronef, les zones infranchissables évoluent en fonction du profil vertical imposé à sa trajectoire si bien qu'une estimation de distance sous contraintes statiques au moyen d'une transformée de distance par propagation n'est pas satisfaisante.

On propose de prendre en compte, dans la définition des zones interdites de passage, l'altitude prévisible de l'aéronef à chaque point but dont la distance est en cours d'estimation. Cette altitude prévisible, qui dépend bien évidemment du trajet emprunté, est celle de l'aéronef après suivi du trajet adopté pour la mesure de distance. L'estimation de cette altitude prévisible de l'aéronef en un point but, se fait par propagation au cours du balayage de l'image par le masque de chanfrein d'une manière analogue à l'estimation de distance. Pour chaque trajet répertorié allant d'un point but au point source en passant par un point du voisinage du point but dont la distance au point source et l'altitude prévisible de l'aéronef ont déjà été estimées au cours du mme balayage, l'altitude prévisible de l'aéronef est déduite de la longueur du trajet et du profil vertical imposé à la trajectoire de l'aéronef. Cette altitude prévisible, estimée pour chaque trajet répertorié allant d'un point but dont la distance est en cours d'estimation à un point source placé à proximité de la position de l'aéronef, est utilisée comme un critère de sélection des trajets pris en compte dans l'estimation distance. Si elle est inférieure ou égale à l'altitude du point but figurant dans la base de données d'élévation du terrain majorée d'une marge de sécurité, le trajet répertorié auquel elle est associée est écarté et ne participe pas à la sélection du plus court trajet. Une fois la sélection du plus court trajet effectuée, sa longueur est prise pour distance du point but et l'altitude prévisible pour l'aéronef qui lui est associée est également retenue pour l'altitude de l'aéronef au point but.

La figure 3 illustre les principales étapes du traitement effectué lors de l'application du masque de chanfrein à un point but Pij pour estimer sa distance pour un aéronef ayant un profil vertical de trajectoire imposé. Le point but considéré Piu est placé dans la case centrale du masque de chanfrein. Pour chaque point voisin Pv qui entre dans les cases du masque de chanfrein et dont la distance a déjà été estimée au cours du mme balayage, le traitement consiste à : - lire la distance estimée Dv du point voisin Pv (étape 30), - lire l'altitude A ;, j du point but Pij dans la base de données d'élévation du terrain (étape 31), - lire le coefficient Cxy du masque de chanfrein correspondant à la case occupée par le point voisin Pv (étape 32), - calculer la distance propagée Dp correspondant à la somme de la distance estimée Dv du point voisin Pv et du coefficient Cxy affecté à la case du masque de chanfrein occupée par le point voisin Pv : Dp =DV +CXY (étape 33), - calculer l'altitude prévisible Ap de l'aéronef après franchissement de la distance D p directement à partir de la distance Dp si le profil vertical imposé à la trajectoire de l'aéronef est défini en fonction de la distance parcourue PV (Dp) et prend implicitement en compte le temps de parcours ou indirectement par l'intermédiaire du temps de parcours si le profil vertical imposé à la trajectoire de l'aéronef est défini par une vitesse de changement d'altitude (étape 34), - comparer l'altitude prévisible Ap obtenue avec celle Ai, j du point but Pij tirée de la base de données d'élévation du terrain augmentée d'une marge de sécurité A (étape 35), - éliminer la distance propagée Dp si l'altitude prévisible Ap est inférieure ou égale à celle Ai, j du point but Pi, j tirée de la base de données d'élévation du terrain et majorée par la marge de sécurité A (étape 36), - si l'altitude prévisible Ap est supérieure à celle Ai, j du point but Pi, j majorée par la marge de sécurité A, lire la distance Di, j déjà

affectée au point but considéré Pi, j (étape 37) et la comparer à la distance propagée Dp (étape 38), -éliminer la distance propagée Dp si elle est supérieure ou égale à la distance D ;, déjà affectée au point but considéré Pij, et - remplacer la distance Di, j déjà affectée au point but considéré Pi, j, par la distance propagée Dp si cette dernière est inférieure (étape 39).

La figure 4 illustre les principales étapes d'une variante du traitement effectué lors de l'application du masque de chanfrein à un point but Pi, j pour estimer sa distance pour un aéronef ayant un profil vertical de trajectoire imposé.

Cette variante diffère dans la manière d'élaborer l'altitude prévisible Ap de l'aéronef. Elle suppose que l'altitude prévisible pour l'aéronef en chaque point de la base de données d'élévation du terrain calculée en fonction du profil vertical imposé à sa trajectoire et à partir de la longueur du trajet sélectionné pour la mesure de distance n'est pas considérée comme une variable passagère, ce que permet le traitement décrit relativement à la figure 3, mais est mémorisée, au mme titre que l'estimation de distance.

Dans cette variante, les étapes 30,31 de lectures de la distance estimée Dv du point voisin Pv et de l'altitude Aij du point but P ;, dans la base de données d'élévation du terrain sont complétées par une étape 40 de lecture de l'altitude prévisible Apv pour l'aéronef au point voisin Pv, et le calcul de l'altitude prévisible Ap se fait (étape 34') par sommation de l'altitude prévisible Apv au point voisin Pv et de la variation d'altitude sur la distance séparant le point voisin Pv du point but Pij due au profil vertical imposé à la trajectoire de l'aéronef.

La mémorisation des altitudes prévisibles pour l'aéronef lorsqu'il atteint les différents points de la carte qui lui sont accessibles permet d'établir, en leur soustrayant les altitudes des points de la carte tirées de la base de données d'élévation du terrain, une carte des possibilités maximales de hauteurs de survol de l'aéronef représentant les écarts prévisibles par rapport au terrain en strates de couleurs. Une telle carte facilite pour l'équipage de l'aéronef le choix d'une trajectoire réaliste présentant la meilleure garde au sol.

Comme indiqué précédemment, l'estimation des distances des différents points de la carte se fait en appliquant un traitement par masque de chanfrein tel que ceux qui viennent d'tre décrits relativement aux figures 3 et 4, à l'ensemble des pixels de l'image formée par les éléments de la base de données d'élévation du terrain appartenant à la carte, pris successivement selon un balayage régulier comportant un minimum de deux passes réalisées dans des ordres inverses.

La figure 5 illustre les principales étapes d'un exemple de processus global permettant l'estimation des distances de l'ensemble des points d'une carte de relief pour un mobile soumis à des contraintes dynamiques.

La première étape 50 du processus est une initialisation des distances affectées aux différents points de la carte considérés comme les pixels d'une image. Cette initialisation des distances consiste, comme indiqué précédemment, à attribuer une valeur de distance infinie, à tout le moins supérieure à la plus grande distance mesurable sur la carte, pour tous les points de la carte considérés comme des points but, à l'exception d'un seul considéré comme la source de toutes les distances auquel est attribué une valeur de distance nulle. Ce point source est choisi à proximité de la position instantanée du mobile sur la carte.

Les étapes suivantes 51 à 54 sont des passes d'un balayage régulier au cours desquelles le masque de chanfrein est appliqué successivement et à plusieurs reprises à tous les points de la carte considérés comme les pixels d'une image, l'application du masque de chanfrein à un point de la carte donnant une estimation de la distance de ce point par rapport au point source, par exécution d'un des traitements décrits relativement à la figure 3 ou à la figure 4.

La première passe de balayage (étape 51) se fait dans l'ordre lexicographique, les pixels de l'image étant analysés ligne par ligne du haut vers le bas de l'image et de gauche à droite au sein d'une mme ligne. La deuxième passe de balayage (étape 52) se fait dans l'ordre lexicographique inverse, les pixels de l'image étant toujours analysés ligne par ligne mais du bas vers le haut de l'image et de droite à gauche au sein d'une ligne. La troisième passe de balayage (étape 53) se fait dans l'ordre lexicographique transposé, les pixels de l'image étant analysés colonne par colonne de la

gauche vers la droite de l'image et de haut en bas au sein d'une mme colonne. La quatrième passe de balayage (étape 54) se fait dans l'ordre lexicographique transposé inverse, les pixels de l'image étant analysés colonne par colonne mais de la droite vers la gauche de l'image et de bas en haut au sein d'une mme colonne.

Ces quatre passes (étapes 51 à 54) sont répétées tant que l'image de distance obtenue change. Pour ce faire, le contenu de l'image de distance obtenu est mémorisé (étape 56) après chaque série de quatre passes (étapes 51 à 54) et comparé avec le contenu de l'image de distance obtenu à la série précédente (étape 55), la boucle n'étant brisée que lorsque la comparaison montre que le contenu de l'image distance ne varie plus.

En théorie, deux passes de balayage selon l'ordre lexicographique et l'ordre lexicographique inverse peuvent suffire. Cependant la présence de zones interdites de passage de forme concave peut provoquer, dans le phénomène de propagation des distances, des angles morts renfermant des pixels pour lequel l'application du masque de chanfrein ne donne pas d'estimation distance. Pour diminuer ce risque d'angle mort, il y a lieu de faire varier la direction du phénomène de propagation distance en faisant varier la direction du balayage d'où le doublement des passes avec une transposition des ordres de balayage correspondant à une rotation de l'image de 90°. Pour une encore meilleure élimination des angles morts, on peut procéder à des séries de huit passes : - une première passe effectuée ligne par ligne de haut en bas de l'image, chaque ligne étant parcourue de gauche à droite, - une deuxième passe effectuée ligne par ligne de bas en haut de l'image, chaque ligne étant parcourue de droite à gauche, - une troisième passe effectuée colonne par colonne de gauche à droite de l'image, chaque colonne étant parcourue de haut en bas, - une quatrième passe effectuée colonne par colonne de droite à gauche de l'image, chaque colonne étant parcourue de bas en haut, - une cinquième passe effectuée ligne par ligne de haut en bas de l'image, chaque ligne étant parcourue de droite à gauche,

- une sixième passe effectuée ligne par ligne de bas en haut de l'image, chaque ligne étant parcourue de gauche à droite, - une septième passe effectuée colonne par colonne de droite à gauche de l'image, chaque colonne étant parcourue de haut en bas, et - une huitième passe effectuée colonne par colonne de gauche à droite de l'image, chaque colonne étant parcourue de bas en haut.

II est possible d'introduire dans la série de passes de balayage d'autres types de passes de balayage déduits des passes précédentes en faisant jouer par les diagonales de l'image, les rôles joués précédemment par les lignes et colonnes de l'image. Cela revient à appliquer les passes de balayage décrites précédemment à une image tournée de 45°. De manière générale, plus les passes d'une série sont variées plus le risque d'angle mort diminue.