Brevet FR2674652A1 — publié le 19921002

Procédé et dispositif de synthèse d'images cartographiques animées tri- dimensionnelles La présente invention concerne un procédé et un dispositif de synthèse d'images cartographiques animées tri-dimensionnelles per- mettant la représentation en perspective sur un écran, de la scène vue par un observateur se déplaçant au-dessus d'un relief Elle s'applique notam- ment à la réalisation de dispositifs d'aide à la navigation des aéronefs, des navires de surface ou de plongée. Deux étapes sont généralement nécessaires pour créer une image synthétique perceptible avec une illusion de relief par un observateur devant un écran de visualisation. La première consiste à calculer à partir d'informations numéri- ques représentant les coordonnées géographiques d'une scène, la perspec- tive de chacun des points de la scène en fonction de la position de lobservateur dans la scène observée. La deuxième étape consiste à éliminer les parties cachées non vues par lobservateur pour restituer Pillusion de relief. Les algorithmes qui permettent la suppression des parties cachées sont de deux types. Un premier type d'algorithmes permet d'effectuer des traitements dans Pespace réel de la scène tel qu'il est défini par exemple par les cartes géographiques et permet d'établir que telle partie de la scène est visible ou n'est pas visible par lobservateur placé au-dessus de celleci. Les calculs sont effectués avec des précisions au moins égales à celles avec laquelle la scène est définie Mais le coût de tels algorithmes croît en fonction de la complexité de la scène observée. Un deuxième type d'algorithmes permet d'effectuer des traite- ments dans l'espace de l'écran devant lequel se trouve l'observateur Par ces algorithmes on cherche à déterminer si tel point sur l'écran appartient à l'image de la partie visible de la scène avec une précision toute relative qui dépend de celle avec laquelle Pimage est représentée sur l'écran d'affichage. Quelle que soit la méthode employée, la mise en oeuvre de tels algorithmes nécessite des temps de calcul très longs lorsque Pon dispose d'architecture de calcul série et a contrario nécessite un matériel très important lorsque, pour aller plus vite, on utilise des architectures de calcul parallèles. Le but de linvention est de pallier les inconvénients précités. A cet effet, l'invention a pour objet, un procédé de synthèse d'images cartographiques animées tri-dimensionnelles permettant la représentation en perspective sur un écran, de la scène vue par un observateur se déplaçant au-dessus d'un relief, caractérisé en ce qu'il consiste à mémoriser les coordonnées géographiques horizontales et verti- cales des points de la scène définie dans un trièdre local occupant une position fixe par rapport à la scène, à repérer la position de l'observateur dans le trièdre local, à définir, par rapport au trièdre local, un trièdre mobile lié à lobservateur, le sommet P de ce trièdre matérialisant la position de l'observateur dans le trièdre local et un côté de ce trièdre figurant laxe de déplacement du trièdre mobile, à considérer dans la direction du déplacement du trièdre mobile les points de la scène situés dans des plans parallèles entre eux et perpendiculaires à laxe de déplacement du mobile, ces plans coupant laxe de déplacement du mobile en des points distants du sommet P du trièdre mobile d'une distance supérieure à une distance minimale d, à définir dans l'espace mobile un plan de projection perpendicu- laire à Paxe de déplacement du trièdre mobile et coupant Paxe de déplacement du trièdre mobile en un point distant du sommet P du trièdre mobile de la distance minimale d, à déterminer dans le plan de projection les points homothétiques de la scène appartenant à chaque plan parallèle en commençant par les points du plan le plus éloigné du sommet P du trièdre mobile et en continuant successivement par les points des autres plans jusqu'au plan de projection, le centre d'homothétie de chaque homothétie étant confondu avec le sommet P du trièdre mobile, à mémoriser au fur et à mesure de leur détermination les coordonnées des points homothétiques des différents points de la scène sur Pécran de projection définies par rapport à deux axes orthonormés de ce plan, en attribuant une information d'aspect ou une teinte aux points projetés de chaque plan, chaque information relative à un point d'un nouveau plan projeté venant remplacer Pinformation relative à un point projeté du plan précédent, de même coordonnée dans le plan de projec- tion, de manière qu'en fin d'analyse de l'image de la scène, seules restent inscrites dans la mémoire les parties de la scène vue de l'observateur. L'invention a également pour objet un dispositif pour la mise en oeuvre de ce procédé. L'invention a pour avantage, qu'elle permet aux utilisateurs de modifier à volonté la portion de la scène examinée et de modifier les différents paramètres et notamment la distance minimale d servant à la construction de la perspective pour que l'image qui est fournie en temps réel soit celle que percevrait directement l'observateur regardant la scène à l'oeil nu L'effet d'animation, qui fait apparaître le défilement de la scène devant l'observateur qui se déplace par rapport à celle-ci, est obtenu en présentant une succession d'images statiques au-dessus d'une cadence minimale, et une ambiguité en profondeur de l'image pourra être levée en choisissant judicieusement l'aspect ou la teinte des pixels de chacun des plans projetés. L'invention a également pour avantage qu'elle permet d'effectuer la suppression des faces cachées de façon automatique, sans utiliser les algorithmes de tri de Part antérieur, en juxtaposant successivement les différents plans projetés de la scène qui sont perpendiculaires à l'axe des déplacements du mobile, en commençant dans chaque séquence par le plan qui est au fond de la scène, c'est-à-dire le plus éloigné de l'observateur, et en stockant les résultats dans une mémoire d'image, en utilisant le fait que dans une mémoire d'image Pinscription à une adresse donnée écrase Pinformation qui y était précédemment contenue Cette façon de pro- céder permet, par rapport aux méthodes classiques, de gagner du temps et donne des possibilités d'animation en temps réel dans des volumes de circuits raisonnables. D'autres caractéristiques et avantages de l'invention apparaîtront au cours de la description qui suit faite en regard des dessins annexés qui représentent: la figure 1: la position relative du trièdre mobile par rapport au trièdre local; la figure 2: le processus de transformation de coordonnées des points de l'image de la scène repérée dans Pespace mobile, dans le plan de projection; la figure 3: un mode de réalisation d'un dispositif pour la mise en oeuvre du procédé selon l'invention; la figure 4: un exemple de réalisation d'un circuit transforma- teur de coordonnées du dispositif représenté à la figure 3 pour transfor- mer les coordonnées de la scène connues dans l'espace local en coor- données correspondantes dans l'espace mobile; la figure 5: un exemple de réalisation dun circuit transforma- teur de coordonnées espace mobile-espace écran, du dispositif représenté à la figure 3; la figure 6: un mode de représentation surfacée d'une image d'une scène en perspective représentée sur un écran de visualisation, obtenu avec le dispositif selon l'invention; la figure 7: un mode de représentation en pointillés d'une image en relief obtenue sur un écran de visualisation, avec le dispositif selon l'invention. Pour mettre en perspective une scène dont les coordonnées géographiques de chacun des points sont repérées par rapport à un trièdre local O(X,Y,Z), le procédé selon l'invention consiste à repérer dans ce système d'axe, la position P de l'observateur Il consiste ensuite à considérer, de la façon qui est représentée à la figure 1, un trièdre P(X,Y,Z) déduit du trièdre O(X,Y,Z) par la translation du vecteur & et le trièdre P(XM 'YM,ZM) déduit du trièdre de P(XY,Z) par une rotation d'angle a autour de laxe PZ, représentant le trièdre de référence du mobile. Sur la figure 1, x et y désignent les coordonnées horizontales et z désigne la coordonnée verticale dans le trièdre O(X,Y, Z) des points S(x,y,z) de la scène observée et xm Ym et zm les coordonnées correspon- dantes du même point de la scène observée dans le trièdre mobile P(XM 'YM,ZM) Sur cette même figure, x p yyp et zp désignent les coordonnées de la position P de l'observateur dans le trièdre local O(X, Y,Z) Dans le système de coordonnées qui est ainsi défini les coordonnées x,y,z de chacun des points S de la scène vérifient les relations: x = Xm cos a Ym Sin a + xp ( 1) y = Xm Sin a + ym cos a + yp ( 2) et Z = z + z ( 3) En fonction de ces relations qui tiennent compte à la fois de l'altitude et de la direction du déplacement de l'observateur dans l'espace local, les phases suivantes du procédé consistent à calculer les coor- données de projection de chacun des points S(xm, Ym ' Zm) de l'espace mobile sur un plan de projection qui est situé dans le trièdre P(XM 'YM ' ZM) référençant l'espace mobile, à une distance d déterminée du sommet P de ce trièdre et perpendiculaire au côté PXM qui est orienté dans la direction de déplacement du trièdre mobile, de la façon représentée par la figure 2 Ce plan de projection représente également le plan de l'écran sur lequel est visualisé la scène observée. Sur la figure 2, des coordonnées xe et Ye sont celles dun point Se qui représentent la projection d'un point S(xm, Ym ' Zm) de la scène sur le plan de projection le long de la droite SP Le plan de projection est perpendiculaire en O e à l'axe PXM et est situé à la distance d du point P. Les équations de passage des coordonnées des points S(x, Ym m Zm) de l'espace mobile vu en projection sur l'écran de projection se déduisent automatiquement de la figure géométrique représentée à la figure 2 Les coordonnées xe et Ye vérifient les relations: d d (zz)( 4) m m Se x * Ym ( 5)P d Ye= 'Ym m Ces équations traduisent le fait que chaque point S(xm, Ym' Zm) situé dans un plan perpendiculaire à la direction PXM de la scène se déduit du point Se projeté sur le plan de projection par une homothétie de x centre P et de rapport m Chaque point S projeté sur le plan de projection peut correspondre à une multitude de points S(xm, Ym ' Zm) situés dans des plans parallèles au plan de projection et homothétiques du d plan de projection dans l'homothétie de centre P et de rapport d Xm m désignant la distance de chacun des plans parallèles de l'espace mobile par rapport au centre d'homothétie P. Les coordonnées xe, Ye de chaque point projeté Se sont utilisées pour adresser une mémoire d'image qui mémorise, aux emplacements correspondants, la couleur ou Paspect choisi pour chacun des pixels dcun plan projeté Pour permettre la suppression des faces cachées de façon entièrement automatique, chaque nouvelle information relative à un pixel vient automatiquement prendre la place de l'information relative à un pixel dcun plan précédent et présente dans la mémoire à cette même adresse De la sorte, en fin d'analyse de l'image, seules restent inscrites dans la mémoire d'image les parties de la scène vues par l'observateur. Un dispositif pour la mise en oeuvre du procédé selon linvention est représenté à la figure 3 Le dispositif représenté comprend une mémoire principale 1, un circuit transformateur de coordonnées 2 pour calculer les coordonnées x et y de chaque point de la scène dans l'espace local en fonction des coordonnées xp yyp et a du mobile, un circuit transformateur de coordonnées 3 pour calculer les coordonnées des points de la scène projetée sur le plan de projection, un compteur 4 de coordonnées ym ' un décompteur 5 de coordonnées xm, un circuit multiplexeur 6 couplé à une mémoire dlimage paire 7 et à une mémoire d'image impaire 8, un circuit diviseur par deux 9 pour commander le circuit multiplexeur 6, une table de transcodage 10, un circuit multiple- xeur 11, et un écran 12. Les altitudes z de chacun des points S(x,y,z) de la scène sont stockées dans la mémoire principale 1 par la ligne de données D Chaque adresse x, y de cette mémoire contient laltitude z(x,y) d'un point de la scène correspondante Chaque point d'adresse x, y de la mémoire princi- pale 1 traduit par conséquent un segment de droite perpendiculaire au plan XOY de coordonnées x,y et de hauteur z. Comme indiqué précédemment, la scène est analysée dans le trièdre mobile P(XM ey M,ZM) par plans de coupe successifs perpendicu- laires à Paxe de déplacement PXM du mobile, en commençant par le plan le plus éloigné au fond de la scène, par rapport au sommet P du trièdre KXM IYM,ZM) Au début de l'analyse, le décompteur 5 est chargé par un nombre binaire dont la valeur correspond à la distance maximale X (max) qui sépare le plan situé au fond de la scène du sommet P, et le compteur YM incrémente la coordonnée ym le long de laxe PYM Les sorties du compteur 4 et du décompteur 5 sont reliées respectivement aux entrées du circuit de transformation de coordonnées 2 pour faire correspondre à chaque adresse xm, Ym des coordonnées x et y dans l'espace local et pour permettre Padressage de la mémoire principale 1 et la lecture, à l'adresse correspondante, de l'altitude z(x,y) du point observé. Cette altitude z(x,y) est appliquée par la mémoire principale I à une entrée du circuit transformateur de coordonnées 3 qui calcule, en fonction de Paltitude zp du mobile et de la distance d séparant le plan de projection du sommet P, les coordonnées de projection xe et ye définies par les relations ( 4) et ( 5) précédentes Les coordonnées xe et ye sont inscrites, au travers du circuit multiplexeur 6, alternativement dans les mémoires d'image 7 et 8 pour gagner du temps de traitement Les mémoires d'image 7 et 8 sont lues ensuite alternativement, l'une étant inscrite pendant que l'autre est lue par le circuit multiplexeur 11 qui fournit les coordonnées xe et Ye à l'écran 12. Le circuit de transformation de coordonnées 2 est représenté à la figure 4 Ce circuit comprend une mémoire morte programmable 13, un ensemble de quatre circuits multiplicateurs 14, 15, 16 et 17, et un ensemble de circuits additionneurs-soustracteurs 18 et 19 Ce circuit 2 permet de calculer les coordonnées x et y des points situés dans le trièdre local à partir des coordonnées a, x p yp, xm et ym des mêmes points de l'image référencés dans le trièdre mobile La mémoire 13 contient une table de cosinus et une table de sinus de Pangle de rotation a Elle est adressée par l'angle de rotation a Les valeurs cosinus a correspondantes sont appliquées simultanément sur une première entrée d'opérande des circuits multiplicateurs 14, 15 La deuxième entrée d'opérande du circuit multiplicateur 14 reçoit la coordonnée ym et la deuxième entrée d'opé- rande du circuit multiplicateur 15 reçoit la coordonnée xm Les circuits multiplicateurs 14 et 15 fournissent dans ces conditions les produits xm cosinus a et ym cosinus a respectivement. De façon à peu près similaire, les circuits multiplicateurs 16 et 17 reçoivent sur une première entrée la valeur sinus a fournie par la mémoire programmable 13 et sur une deuxième entrée d'opérande les valeurs xm et Ym respectivement, de manière à fournir sur leurs sorties les produits xm sinus a et ym sinusa Le circuit additionneur- soustracteur 18 reçoit sur une première entrée d'opérande la valeur xp représentant la coor- donnée en x du trièdre mobile dans l'espace local, sur une deuxième entrée d'opérande marquée "-" la valeur ym sinus a fournie par le circuit multiplicateur 17 et sur une troisième entrée d'opérande marquée "+" la valeur xm cosinus a fournie par la sortie du circuit multiplicateur 15 Le résultat de l'opération effectuée par le circuit additionneur-soustracteur 18 est égal dans ces conditions à x = x cos " ym sin a + x conformé- ment à la relation ( 1) précédente. Le circuit additionneur 19 possède trois entrées dont deux sont reliées respectivement à la sortie du circuit multiplicateur 16 et à la sortie du circuit multiplicateur 14, la troisième entrée recevant la coordonnée y du trièdre mobile référencée dans le trièdre local Le résultat de l'addition effectuée par le circuit additionneur 19 est égal dans ces conditions à y = xm sin a + ymcos a + yp conformément à la relation ( 2) précédente. Un exemple de réalisation du circuit 3 transformateur de coor- données des points de la scène repérée dans Pespace mobile dans lespace écran est représenté à la figure 5, ce circuit comprend un circuit diviseur , un circuit multiplicateur 21, un circuit multiplicateur 22, un circuit soustracteur 23 et un décompteur 24 Le circuit diviseur 20 possède deux entrées d'opérande sur lesquelles sont appliquées respectivement les coordonnées xm de chacun des points de la scène référencée dans le trièdre mobile et la distance d qui sépare le plan de projection du sommet P du trièdre mobile Ce circuit diviseur 20 fournit sur sa sortie le résultat de la division de d par xm et ce résultat est appliqué d'une part, à une première entrée d'opérande du circuit multiplicateur 21 et d'autre part, à une première entrée d'opérande du circuit multiplicateur 22. Le circuit multiplicateur 21 possède une deuxième entrée sur laquelle sont appliquées les coordonnées ym de chaque point de la scène référencée dans le trièdre mobile, et exécute le produit de ym par le résultat de la division d fourni par le circuit diviseur 20 Ce résultat xm d vérifie la relation ( 5) e = x y A chaque couple de valeurs xm, y m l'altitude z(x,y) de chaque point S(x,y,z) de la scène, fournie par la mémoire principale 1 de la figure 3, est chargée dans le décompteur 24 pour permettre le calcul des coordonnées xe et ye et le tracé d'un segment d'altitude correspondant dans Pespace écran Cette opération commence toujours en partant de la valeur x m(max) référençant le plan de la scène le plus reculé et se poursuit par valeurs de xm décroissantes jusqu'à la valeur xm = d qui référence le plan de projection A chaque couple de valeurs (xm Ym) une horloge rapide non représentée commande le décomptage du décompteur 24, de la valeur z(x,y) à la valeur z = 0 Le contenu du décompteur 24 est transmis ensuite à une entrée d'opérande marquée "+" du circuit soustracteur 23 dont l'autre entrée d'opérande marquée "-" reçoit l'altitude zp du mobile Le résultat de la soustraction effectuée par le circuit soustracteur 23 est transmis à la deuxième entrée d'opérande du circuit multiplicateur 22 qui réalise l'opération Xe = X (zz) m Le passage à zéro du décompteur 24 est signalé par un signal FDS qui indique que la transformation des coordonnées du segment de droite z(x,y) est terminée et ce signal est transmis sur l'entrée d'horloge du compteur 4 pour obtenir la valeur ym suivante et recommencer la transformation des coordonnées du segment z(x,y) lues dans la mémoire principale 1 Lorsque le compteur 4 a atteint sa capacité de comptage maximale il délivre une impulsion de décomptage sur l'entrée d'horloge H du décompteur 5 pour permettre le calcul des nouvelles coordonnées x, y, z des points du plan suivant, adressés par la nouvelle valeur xm, et l'affichage du segment d'altitude correspondant sur l'écran Dans le processus qui vient d'être décrit le temps d'analyse de la scène est naturellement fonction de son relief et fonction de la position de l'observateur. En retournant à la figure 3, la table de transcodage 10 contient pour chaque plan parallèle du trièdre mobile, adressé par la coordonnée xm fournie par le décompteur 5, des valeurs d'attribut de pixel pour désigner chaque plan de coupe par une couleur ou un aspect de surface particulier, ceci afin de permettre de lever l'ambiguité sur la profondeur de l'image et de rendre une impression de relief correct En fonction de cette table de transcodage, on pourra obtenir soit des représentations surfacées telles que représentées par la figure 6, soit des représentations en pointillés telles que représentées à la figure 7. REVENDICATIONS 1 Procédé de synthèse d'images cartographiques animées tri- dimensionnelles permettant la représentation en perspective sur un écran ( 12), de la scène vue par un observateur se déplaçant au-dessus d'un relief, caractérisé en ce qu'il consiste à mémoriser ( 1) les coordonnées géogra- phiques horizontales et verticales des points de la scène définie dans un trièdre local O(X,Y,Z) occupant une position fixe par rapport à la scène, a repérer ( 2, 3) la position de lobservateur dans le trièdre local, à définir ( 2) par rapport au trièdre local un trièdre mobile P(Xm 'ym 'Zm) lié à l'observateur, le sommet P de ce trièdre matérialisant la position de l'observateur dans le trièdre local et un côté de ce trièdre figurant l'axe P Xm de déplacement du trièdre mobile, à considérer ( 3) dans la direction du déplacement du trièdre mobile les points de la scène situés dans des plans parallèles entre eux et perpendiculaires à laxe de déplacement P Xm du mobile, ces plans coupant laxe de déplacement du mobile en des points distants du sommet P du trièdre mobile d'une distance supérieure à une distance minimale d, à définir ( 3) dans l'espace mobile un plan de projection perpendi- culaire à laxe de déplacement du trièdre mobile et coupant laxe de déplacement du trièdre mobile en un point distant du sommet P du trièdre mobile de la distance minimale d, à déterminer ( 3) dans le plan de projection les points homothéti- ques de la scène appartenant à chaque plan parallèle en commençant par les points du plan le plus éloigné du sommet P du trièdre mobile et en continuant-successivement par les points des autres plans jusqu'au plan de projection, le centre d'homothétie de chaque homothétie étant confondu avec le sommet P du trièdre mobile, à mémoriser ( 7, 8) au fur et à mesure de leur détermination les coordonnées des points homothétiques des différents points de la scène sur l'écran de projection, définies par rapport aux axes orthonormés de ce plan, en attribuant une information d'aspect ou de teinte aux points projetés de chaque plan, chaque information relative à un point d'un nouveau plan projeté venant remplacer l'information relative à un point projeté du plan précédent, de mêmes coordonnées dans le plan de projec- Il tion, de manière qu'en fin d'analyse de Pimage de la scène, seules restent inscrites dans la mémoire les parties de la scène vue par l'observateur. 2 Dispositif de synthèse d'images cartographiques animées tri- dimensionnelles, permettant la représentation en perspective sur un écran ( 12) de la scène vue par un observateur se déplaçant au-dessus d'un relief, caractérisé en ce qu'il comprend: une mémoire principale ( 1) pour stocker les coordonnées géogra- phiques de la scène, des moyens de calcul ( 2, 3) pour fournir à Pécran de visualisation les coordonnées de la perspective de chaque point de la scène à partir des coordonnées géographiques de la scène, de la position de l'observateur au- dessus de la scène et de la direction de son déplacement, des moyens de transcodage ( 10) pour attribuer à chaque coor- donnée calculée d'un point de la perspective un attribut d'aspect ou de couleur des moyens d'analyse séquentielle ( 4, 5) des points de la scène par plans successifs perpendiculaires à la direction de déplacement de l'obser- vateur, en commençant par le plan le plus éloigné de la position de lobservateur, couplés à des moyens de mémorisation ( 7, 8) des attributs de chaque point correspondant de la perspective fourni par les moyens de transcodage ( 10), au fur et à mesure du calcul des coordonnées des points de la perspective sur l'écran, chaque nouvel attribut d'un point ayant les mêmes coordonnées sur lécran que celles d'un point du plan précédent et venant remplacer dans les moyens de mémorisation ( 7, 8) l'attribut du point précédent situé à la même adresse, pour qu'en fin d'analyse d'image seules restent inscrites dans les moyens de mémorisation ( 7, 8) les parties de la scène vues par l'observateur. 3 Dispositif selon la revendication 2, caractérisé en ce que la mémoire principale ( 1) est adressée par les coordonnées géographiques horizontales des points de la scène analysée et mémorise aux adresses correspondantes l'altitude de ces points. 4 Dispositif selon les revendications 2 et 3, caractérisé en ce que les moyens de calcul ( 2, 3) comprennent un premier circuit ( 2) transforma- teur des coordonnées des points de la scène fournies par les moyens d'analyse séquentielle ( 4, 5), pour calculer les coordonnées d'adressage de la mémoire principale ( 1) en fonction de la position de l'observateur. Dispositif selon l'une quelconque des revendications 2 à 4, caractérisé en ce que les moyens de calcul comprennent un deuxième circuit transformateur de coordonnées ( 3) pour calculer en fonction de l'altitude de chaque point mémorisé dans la mémoire principale ( 1) et en fonction de l'altitude de l'observateur, les coordonnées des points de la perspective référencés dans un plan de projection perpendiculaire à la direction de déplacement de l'observateur et placé en avant de la scène observée à une distance d prédéterminée de lobservateur, les coordonnées des points de la perspective ainsi calculées représentant les coordonnées de ces mêmes points sur l'écran ( 12). 6 Dispositif selon lune quelconque des revendications 2 à 5, caractérisé en ce que les moyens d'analyse séquentielle ( 4, 5) comprennent un décompteur ( 5) pour sélectionner chacun des plans perpendiculaires à la direction du déplacement et un compteur ( 4) pour sélectionner dans ce plan un nombre déterminé de points de la droite parallèle au plan horizontal de la scène et passant à Paltitude de lobservateur; le décompteur ( 5) étant décrémenté chaque fois que la totalité des points de la droite ont été sélectionnés. 7 Dispositif selon lune quelconque des revendications 2 à 6, caractérisé en ce que les moyens de transcodage ( 10) permettent la génération d'images surfacées. 8 Dispositif selon Pune quelconque des revendications 2 à 7, caractérisé en ce que les moyens de transcodage ( 10) permettent la génération d'images en pointillés.