Précédent : Présentation générale et
objectifs Remonter : Rapport activite 1997 Suivant :
Grands domaines
d'application
Résumé : Les progrès réalisés à la fois en synthèse d'image et en vision par ordinateur rendent désormais possible le développement de systèmes permettant de composer des images réelles et virtuelles. Les applications des systèmes de composition d'images sont multiples. Citons par exemple la réalisation d'études d'impact, les simulateurs de tous ordres (chirurgicaux, téléopération...), les logiciels d'apprentissage permettant d'incruster et de visualiser des informations sur un objet d'étude... et également les systèmes permettant de fusionner des images issues de modalités différentes, comme en médecine, où l'on souhaite souvent fusionner sur une même image des informations contenues dans des images rayons X, scanner et IRM par exemple.Une bonne part de la complexité du problème de composition d'images réside dans la difficulté de recaler les entités réelles et virtuelles. Ce problème peut parfois être résolu en utilisant des capteurs de position permettant d'obtenir directement les positions relatives des différents objets à composer. Le plus souvent, cependant, en particulier lorsqu'on travaille dans des univers vastes, l'instrumentation est impossible et des méthodes de recalage basées sur des techniques de vision par ordinateur doivent être utilisées. Obtenir une composition d'image réaliste ne se limite pas à recaler les différents constituants de l'image. D'autres facteurs prennent une part importante dans la perception réaliste de l'image : la gestion d'éventuelles occultations entre les différents composants de l'image, la prise en compte des ombrages et des reflets entre les différents objets, le rendu réaliste des objets synthétisés ajoutés dans l'image.
Le projet ISA s'intéresse plus particulièrement à l'incrustation dans des séquences vidéo. Nous considérons des univers vastes et complexes -- souvent des scènes d'extérieur -- qui ne peuvent être instrumentés. Le recalage entre la séquence et les objets à insérer ne peut donc s'effectuer que grâce à des indices images détectés et suivis dans la séquence. Nous avons développé des méthodes robustes permettant le recalage tout au long d'une séquence sans intervention extérieure. Nous travaillons également sur la gestion, la plus automatique possible, des occlusions qui peuvent survenir entre les scènes réelles et les éléments ajoutés.
Bien que la terminologie de réalité augmentée ne soit
pas encore très stable et varie d'un auteur à l'autre, on peut
tout de même la définir comme un ensemble de moyens permettant
d'augmenter la perception visuelle en y ajoutant des éléments qui
ne sont pas accessibles directement, soit parce qu'ils ne sont
pas visibles (visualisation de nappes gazeuses, de propagation
d'ondes...), soit parce qu'ils n'existent pas encore dans la
réalité (études d'impact, implantation de
prothèses [UK96]).
Bien souvent, il s'agira d'insérer des objets de synthèse dans
des images réelles [BFO92]. Cependant, on peut
également insérer des parties d'images réelles dans d'autres
images réelles ou simplement insérer des annotations dans des
images [RBA94], comme cela se fait couramment dans les systèmes
d'enseignement : dans ce cas, l'élève a la possibilité de
manipuler un objet d'étude et peut par exemple visualiser à
chaque instant le nom des pièces et leur fonctionnalité.
Les problèmes soulevés par la réalité augmentée diffèrent
selon le cadre applicatif et le degré d'interactivité souhaité
avec l'utilisateur. En effet, si le réalisme de la composition
d'images est souvent primordial (notamment pour les études
d'impact), il est acquis fréquemment au prix d'une complexité
algorithmique incompatible avec l'interactivité temps réel
requise par certaines applications. Aussi, une partie des travaux
en réalité augmentée est-elle dédiée à la recherche de matériels
(casque de réalité virtuelle) ou d'architectures parallèles
permettant de composer des images et de les visualiser à la
cadence vidéo [KYO96].
Les problèmes de composition réaliste qui nous intéressent particulièrement sont les suivants. Obtenir une image réaliste nécessite d'assurer la cohérence géométrique et photométrique entre les objets ajoutés (que nous appellerons virtuels) et la scène réelle. Assurer la cohérence géométrique signifie que l'objet virtuel doit être positionné de façon cohérente dans l'environnement. Ceci impose de connaître (ou de calculer) la position de la caméra par rapport à la scène afin de projeter l'objet virtuel au bon endroit. Il faut de plus identifier les objets de la scène réelle occultant éventuellement l'objet virtuel, afin de ne considérer que la partie effectivement visible de l'objet virtuel. Assurer la cohérence photométrique revient ensuite à prendre en compte les interactions photométriques entre objets réels et virtuels (ombrages, reflets, ...), indispensables au réalisme de l'image.
La difficulté de ces étapes dépend beaucoup des connaissances disponibles sur la scène considérée ainsi que sur le matériel de prise de vue utilisé. En effet, si l'on dispose de capteurs sophistiqués permettant d'enregistrer à chaque instant les caractéristiques et la position de la caméra, le problème du recalage de la caméra par rapport à la scène est grandement simplifié [BWRT96]. Malheureusement, cette approche plutôt matérielle est impossible dès que l'on considère des environnements non contraints, comme des scènes d'extérieur, trop vastes pour être équipées de capteurs. Il ne reste alors qu'à recourir à des méthodes relevant typiquement de la vision pour inférer l'information 3D nécessaire au recalage et à la gestion des interactions entre objets réels et virtuels.
Si le modèle 3D des objets présents dans la scène est connu, alors on peut identifier et localiser tous les objets de la scène et gérer facilement les interactions photométriques entre objets. Le mot facilement est toutefois à nuancer, car il s'agit tout de même de réaliser la mise en correspondance entre un modèle 3D et des indices image, ce qui n'est jamais un problème facile. Si, en revanche, la scène n'est que partiellement modélisée, la difficulté augmente notablement. En effet, à la complexité du calcul du point de vue de la caméra s'ajoutent la gestion des occlusions et la prise en compte des interactions photométriques, qui nécessitent d'inférer certaines propriétés 3D des objets de la scène. Quand on connaît la difficulté de reconstruire précisément une scène à partir de plusieurs observations, on mesure le chemin qui reste à parcourir pour obtenir une composition d'images réaliste dans des environnements complexes.
La plupart des systèmes de réalité augmentée existants exigent soit une forte connaissance de l'environnement étudié, soit une importante collaboration de l'utilisateur, aussi bien au niveau du calcul du point de vue (où l'utilisateur doit souvent désigner des marques de référence) qu'à celui de la gestion des interactions entre objets réels et objets virtuels (gestion des occlusions souvent manuelle).
Notre projet souhaite fournir des outils et des méthodes permettant de composer des images d'une séquence vidéo avec le maximum d'autonomie dans un cadre non contraint (pas d'instrumentation spécifique des scènes observées). Nous avons donc développé deux axes de recherche. L'un concerne le calcul robuste du point de vue tout au long de la séquence [5], l'autre la gestion automatique des occlusions [15]. Précisons ces deux domaines :
Résumé : La génération d'images réalistes à partir de modèles géométriques en 3 dimensions est utile principalement parce qu'elle permet de visualiser des objets hypothétiques. La modélisation de la géométrie de ces objets et de leurs propriétés physiques, la simulation du comportement de la lumière sur ces objets, et leur visualisation à partir d'une caméra virtuelle, constituent trois ensembles de problèmes qui, malgré les résultats spectaculaires obtenus ces dernières années, font toujours l'objet de recherches actives. Le projet ISA travaille sur la simulation de la propagation de la lumière à deux niveaux. Nous avons tout d'abord imaginé une nouvelle approche théorique du calcul de l'équation de radiance. Cette approche, numérique, exploite une technique de résolution hiérarchique, et se fonde sur une méthode de décomposition de domaines qui permet de réduire les calculs géométriques dans chaque sous-domaine à leur plus simple expression. Nous développons également une plate-forme logicielle et un ensemble d'algorithmes robustes qui nous permettent d'expérimenter certaines hypothèses, mais également de générer des images de grande qualité dans un contexte applicatif de vraie grandeur. Enfin, nous travaillons dans le domaine de la visualisation, pour développer des applications de réalité virtuelle en architecture (méthode de visualisation par niveau de détail) et en géophysique (méthode de simplification de surfaces).
La génération d'images réalistes à partir de représentations géométriques en 3 dimensions est utile principalement parce qu'elle permet de visualiser des objets hypothétiques, disparus ou au contraire à l'état de projet. Plus généralement, elle permet de visualiser des environnements au sein desquels, ou à partir desquels, on souhaite effectuer des simulations. Les techniques permettant de générer des images réalistes font l'objet de recherches actives depuis une vingtaine années et elles sont aujourd'hui de plus en plus utilisées dans de nombreux domaines d'application. Le coût de production, de stockage et de transmisssion de ces images, et leur qualité encore insuffisante pour certaines applications, restent cependant des obstacles majeurs à leur développement.
La génération d'images réalistes suppose de trouver des solutions à trois problèmes :
Le premier problème est ouvert. La modélisation géométrique reste une procédure très lourde, qui est en général effectuée indépendamment des contraintes de la simulation. Les recherches permettant de modéliser les propriétés physiques des surfaces ont fait de gros progrès, mais elles restent insuffisantes dans des domaines d'application où les simulations requièrent une grande précision physique. La simulation du comportement de la lumière est par ailleurs un problème très difficile, dans la mesure où il faut représenter le comportement physique de la lumière à un niveau macroscopique. La prise en compte des relations de visibilité entre les surfaces du modèle lors des échanges pose également une difficulté majeure. Le recours à des méthodes numériques plus sophistiquées permet aujourd'hui d'effectuer des simulations avec une plus grande précision physique et de contrôler cette précision. Des approches algorithmiques hiérarchiques et multi-échelles ont également été introduites, permettant de réduire la complexité des algorithmes conventionnels. Néanmoins le calcul d'une solution, même statique, reste encore extrêmement lourd. Enfin, le problème de la visualisation des résultats de la simulation, et plus généralement celui de leur stockage ou de leur transmission, sont encore des problèmes non résolus lorsque les modèles ont une taille et une complexité trop grandes, ou lorsque les besoins de la visualisation exigent de générer des images en temps réel.
L'idée principale de cette approche est de décomposer les
calculs géométriques inhérents à la résolution de l'équation
de radiance afin de les réduire à leur plus simple
expression. Pour atteindre cet objectif, nous avons développé
une méthode de décomposition de domaines. La géométrie est
décomposée à partir d'un algorithme de partitionnement
spatial binaire, qui produit en un temps un nombre linéaire de cellules et
d'interfaces entre les cellules. Les surfaces en entrée sont
alors maillées en un certain nombre d'éléments, qui est
fonction du partitionnement binaire (BSP), et les liens entre
cellules voisines sont établis en un temps
.
Nous utilisons une formulation de la radiance en terme d'équation de transport entre trois points, discrétisée sur un couple d'éléments pour former un système linéaire d'équations. Les fonctions de base utilisées sont les ondelettes classiques de Haar. Nous avons développé un algorithme simple de raffinement hiérarchique basé sur une fonction oracle simple. La radiance est codée aussi bien sur les éléments que sur les interfaces. L'algorithme de résolution est basé sur la méthode de Southwell et les méthodes de push/pull pour la propagation de l'énergie dans la hiérarchie. La formulation de l'opérateur de transport utilisé est une formulation non-standard , qui produit moins de liens.
Les méthodes utilisées pour résoudre l'équation de radiance sont fondées aujourd'hui sur des approximations qui permettent de rendre le problème calculable. Dans les approches développées à ce jour, on distingue les méthodes d'échantillonnage et les méthodes variationnelles. Notre travail se situe dans le cadre de cette deuxième catégorie d'approches. Nous avons ainsi développé une architecture permettant d'implanter les algorithmes et les structures de données nécessaires à la résolution de l'équation. Cette architecture satisfait les objectifs suivants :
Pour atteindre ces objectifs, nous cherchons à satisfaire plusieurs critères : flexibilité , modularité , évolutivité , robustesse , réutilisabilité . La satisfaction de ces critères a orienté nos principes de conception. Nous avons conçu notre architecture à partir de trois échelles de conception : échelle physique , échelle mathématique et échelle algorithmique . Elle est réalisée à partir d'objets -- au sens programmation objet -- représentant les données et d'objets représentant les calculs : calcul de visibilité, résolution du système matriciel, calcul de quadrature... Notre choix du langage C++ tient à son usage répandu et à l'option que nous avons prise d'utiliser OpenInventor comme bibliothèque pour la visualisation graphique 3D.
Nous effectuons par ailleurs des travaux dans le domaine
de la visualisation. Ces travaux sont entrepris pour
développer des applications de réalité virtuelle dans le
domaine de l'architecture (cf. § ). Nous
avons ainsi développé une méthode de visualisation par
niveaux de détail, qui permet de visualiser en temps réel des
édifices architecturaux très complexes. Cette méthode
s'appuie sur un algorithme de simplification géométrique qui
permet de réduire la complexité des objets à partir de leur
description géométrique. L'originalité de notre algorithme
est de pouvoir être mis en oeuvre sur des objets présentant
une topologie irrégulière, ce qui est courant avec les
modèles architecturaux. En effet, comme ces modèles
proviennent le plus souvent de modeleurs CAO, il est fréquent
d'y trouver des facettes doubles, des sommets confondus ou
une juxtaposition de volumes clos décrivant un même objet.
Des algorithmes de visualisation permettent ensuite de
déterminer les objets de la scène à afficher, ainsi que les
versions plus ou moins simplifiées à partir desquelles ils
seront représentés pour obtenir un affichage temps réel. Nous
avons également commencé à développer une autre application
de réalité virtuelle dédiée à la géophysique
(cf. §
). La
méthode sur laquelle nous travaillons est une technique de
simplification de surfaces. Deux voies de recherche sont
actuellement explorées : l'une est fondée sur une analyse
multi-résolution; l'autre est fondée sur l'idée selon
laquelle la réduction du nombre de mailles d'un modèle peut
être considérée comme un problème d'approximation dans des
espaces d'éléments finis.
Résumé : L'analyse de documents techniques permet de passer de l'image numérisée d'un document graphique à des modélisations de type CAO plus ou moins précises. Il s'agit avant tout d'un problème d'analyse d'image, l'extraction d'indices consistant à segmenter les images binaires en vecteurs ou en composantes connexes. Mais un tel document ou plan contient aussi beaucoup d'informations symboliques, dans la mesure où il permet d'exprimer dans un langage commun à un ensemble de métiers des données de conception, de fabrication ou de construction. La reconstruction proprement dite s'appuie donc à la fois sur les indices visuels qu'on peut extraire de l'image, et sur cette connaissance contextuelle particulièrement riche.C'est dans ce contexte général de reconnaissance de graphiques que se situe notre recherche sur la modélisation à partir de plans. L'idée principale est de tirer profit de la masse d'informations disponibles dans divers plans, de manière exclusive ou en complément d'autres données plus << classiques >> au sens de la vision par ordinateur, pour reconstruire des modèles géométriques, a priori tridimensionnels, des environnements que nous traitons, notamment les environnements urbains et les ensembles architecturaux.
Dès que l'informatique a quitté le domaine strict du calcul
scientifique et des applications militaires, au début des années
1950, une des premières applications explorées a été la
reconnaissance optique de caractères imprimés. À l'époque, on
pensait aboutir rapidement à une machine qui saurait lire
automatiquement n'importe quel document. Cependant, malgré des
premiers résultats encourageants, il s'avéra rapidement qu'un
taux de reconnaissance supérieur à 90% de caractères reconnus ne
suffit pas pour fournir un service satisfaisant à l'usager. Il
faut en fait dépasser la notion de taux de reconnaissance de
caractères isolés si on veut espérer faire des progrès
significatifs dans ce domaine. C'est là qu'intervient la notion
d'analyse de documents , qui s'intéresse à la
compréhension globale d'un document, et non seulement à la
reconnaissance isolée de certains de ses éléments [BBY92,OK95,TLS96].
Dans ce domaine, l'essentiel des efforts a porté sur l'analyse de documents où le texte est prépondérant. De nombreuses méthodes ont été proposées, à la fois pour la vérification syntaxique, voire contextuelle, des résultats de la reconnaissance de caractères, et pour l'analyse spatiale de la page de document.
Depuis une dizaine d'années, notre équipe fait partie de ceux qui se sont penchés sur une autre catégorie : les documents graphiques et dessins techniques, où l'essentiel de l'information est de nature graphique, et où il ne s'agit pas seulement de reconnaître du texte, mais aussi de retrouver une information structurée, par exemple un modèle géométrique de type CAO ou des données géographiques structurées. Nous avons ainsi pendant plusieurs années exploré plusieurs aspects de l'interprétation de dessins d'ingénierie, en vue de les convertir en une représentation CAO [7,6] [Col92,Vax95].
Pour construire un système d'analyse de documents graphiques, il faut disposer de solutions algorithmiques efficaces aux problèmes suivants :
Dans ces différents domaines, on peut considérer que certains aspects sont bien maîtrisés, et qu'il existe des méthodes connues et robustes, parfois même disponibles commercialement :
Pour aller au-delà de ces acquis, des recherches sont menées sur plusieurs aspects. On voit actuellement poindre des solutions satisfaisantes aux problèmes suivants, entre autres :
Cependant, il reste un certain nombre de défis majeurs. Bien entendu, plusieurs équipes étudient ces problèmes et ont même proposé des solutions partielles. Mais on est encore loin dans bien des cas de systèmes qui puissent être transférés dans des secteurs applicatifs réels et en vraie grandeur. On peut notamment citer :
Comme nous l'avons indiqué, le premier niveau nous semble beaucoup trop « conceptuel » pour être exploitable en analyse de document. Quant aux plans d'exécution, ils fournissent un luxe de détails tout à fait inutiles pour les objectifs visés par l'étude, à savoir la modélisation à des fins de représentation spatiale de l'ensemble de l'édifice. Nous concentrons donc nos efforts sur l'analyse des plans de l'avant-projet, à partir desquels notre objectif ultime est de construire une représentation géométrique 3D de l'édifice représenté.