Le projet Pyramide du CEA

Contexte

Un modèle 3D de l'environnement procure des assistances efficaces pour programmer et contrôler l'exécution de tâches de téléopération et le pilotage d'engins distants. L'objectif du projet "Pyramide" portait sur la conception et l'évaluation de moyens efficaces pour acquérir ou mettre à jour en-ligne un modèle 3D à partir des capteurs embarqués, et en tirer des assistances fiables. Pour tenir compte des conditions environnementales souvent dures (points de vue contraints, images de qualité incertaine, surfaces fortement spéculaires), une approche interactive a été retenue. Les principaux critères de performance ont porté sur le temps d'obtention, la précision délivrée, mais aussi sur l'ergonomie des solutions et leur adéquation aux contraintes et besoins de la mission.

Le logiciel de modélisation 3D interactive Pyramide

Un concept de modélisation interactive a été proposé. Il repose sur l'exploitation directe des images issues des caméras CCD embarquées sur les robots téléopérés. En fonction du contenu de ces images, l'opérateur choisit des primitives volumiques et les fait coïncider aux détails visibles. Pour l'aider, le système propose plusieurs types d'assistance basés sur des fonctions d'interprétation tridimensionnelle d'indices image, sur des fonctions automatiques de traitement d'images, ou sur l'intégration de connaissances sur l'environnement distant.

Première maquette de Pyramide testée sur des images de synthèse Ce principe de modélisation interactive a d'abord été validé à l'IRISA sur des images de synthèse. Cette première maquette logicielle au graphisme dépouillé disposait déjà des principales fonctions pour assurer des campagnes expérimentales en contexte réaliste.

L'interface de modélisation de la version de Pyramide basée sur ACT-Lib Suite à un transfert industriel vers la Société Aleph Technologies, ces fonctions ont été intégrées au sein de la librairie de CAO-Robotique ACT-Lib. Cette librairie a servi de base au développement d'une version industrielle de Pyramide, en tant que plate-forme d'intégration des nouvelles méthodes de modélisation développées au sein du projet.

Assistances à base de raisonnement géométrique

Ces assistances ont pour objet de faciliter le contrôle des primitives à la souris (sélection des contraintes de déplacement, corrélation entre les déplacements du curseur et ceux des primitives) et l'orientation des objets dans l'espace en s'appuyant sur l'interprétation d'indices visuels (lignes de fuites, directions orthogonales, homologies).

Repère de manipulation calé sur des éléments du modèle Elles sont intégrées dans une métaphore graphique : les repères de manipulation. Ce sont des trièdres réagissant à la souris servant à sélectionner directement dans le modèle les contraintes de déplacement, à spécifier des surfaces ou des axes sur les objets déjà insérés pour effectuer intuitivement des opérations de type "coller contre", ou encore à spécifier à la volée des repères de travail (pour les tâches de duplication notamment).

Repère de manipulation calé sur des indices visuels Les repères de manipulation permettent aussi de matérialiser les solutions des fonctions d'interprétation d'indices visuels, par exemple une orientation calculée à partir de 3 segments correspondant à des directions perpendiculaires dans l'espace, ou bien encore une direction obtenue par un ensemble de lignes de fuites.

Assistances à base de traitement d'images

Deux assistances ont été intégrées pour soulager l'opérateur sur les tâches de bas niveau : le recalage automatique et l'aimantation de segments. Des solutions efficaces ont été proposées pour tenir compte des cas d'échec de ces assistances automatiques, et mettre en place une collaboration homme-machine intuitive et efficace.

Le recalage automatique met en oeuvre un algorithme de minimisation non-linéaire pour affiner la position et les dimensions d'une primitive 3D et la caler au mieux sur les plus proches contours trouvés. L'opérateur se contente de fournir rapidement une solution initiale approchée.

Aimantation d'un segment L'aimantation de segments s'appuie sur une transformée de Hough pour attirer un segment tracé à la volée par l'opérateur vers le meilleur contour dans le voisinage du segment. En cas d'attraction vers un contour indésirable, le segment est manuellement écarté, et l'aimantation est relancée depuis cette nouvelle position initiale. La solution attendue est ainsi rapidement obtenue.

Intégration de connaissances sur l'environnement

Certains environnements peuvent être traités à l'aide de modules spécialisés utilisant un jeu de primitives dédiées munies de méthodes de modélisation optimisées et gérées par des contraintes d'assemblage.

Ce principe a été validé au travers d'un atelier tuyauterie permettant de placer des portions droites de tuyaux sur les images, et de les relier automatiquement par des primitives de connexion réglables (coudes, brides, réducteurs). Des valeurs catalogues sont gérées par l'atelier pour contraindre les dimensions des primitives.

Campagnes d'évaluation

Plusieurs campagnes d'évaluation ont été menées au fil de l'évolution du projet. Elles ont porté sur l'ergonomie de l'interface de Pyramide pour vérifier sa facilité de prise en main par un technicien non spécialiste de l'informatique et sur les performances atteintes en termes de précision du modèle et de temps d'obtention.

Modélisation d'une cellule de retraitement Modélisation d'une cellule de retraitement Dans le cadre d'une collaboration avec la société ESIC spécialisée en photogrammétrie, des expérimentations sur des images de sites très encombrés comportant des reflets importants ont mis en évidence un gain de temps appréciable par rapport aux solutions existantes et une très bonne réactivité pour un contexte en-ligne.

Le porteur développé dans le cadre du projet Teleman MESSINA L'écran de navigation du robot MESSINA basé sur Pyramide Le poste de pilotage du robot MESSINA L'aide au pilotage apportée par Pyramide a été évaluée sur différentes architectures mécaniques du CEA ou de ses partenaires: l'engin d'intervention à chenilles Centaure, le véhicule DATO (projet Eureka/AMR2), le robot grimpeur Ecureuil, le porteur à longue distance PML, le véhicule modulaire TLV du CEA et le prototype à 4 modules développé dans le cadre du projet européen Teleman MESSINA (cf. photos).

Campagne d'évaluation avec un bras industriel La caméra au bout du bras Modélisation de lignes de tuyauteries Le modè réalisé Pour connaître la précision délivrée par ce principe de modélisation, une replique d'un environnement industriel de dimensions 2m x 2m x 4m a été modélisée. Une caméra CCD standard munie d'un objectif de 8.5mm était fixée à l'extrémité d'un bras industriel (Staübli RX90) placé devant la maquette. La précision de modélisation relevée est de l'ordre de 0,5% à 1% de la distance de l'objet à la caméra.

Exploitation en-ligne en contexte robotique

Deux principes ont été validés expérimentalement pour exploiter Pyramide dans une application de robotique téléopérée: la commande à désignation d'objectifs et la modélisation orientée tâche.

Le robot quadrumane Ecureuil du CEA Recalage de l'Ecureuil avec Pyramide Contrôle de l'Ecureuil par commande à désignation d'objectif La commande à désignation d'objectif consiste en des cycles courts de modélisation, programmation, puis exécution. Les images de la caméra sont exploitées pour obtenir un modèle suffisant afin de programmer une action, puis de l'exécuter dans la foulée. Ce principe a été validé sur un robot quadrumane (l'Ecureuil du CEA) pour permettre son pilotage vers une échelle à crinoline puis la montée sur cette échelle.

Inspection d'une vanne: le site expérimental Inspection d'une vanne: dévissage du boulon Très souvent, la phase de modélisation est fortement découplée du travail à réaliser. On se fixe alors comme objectif un modèle le plus complet, détaillé et précis possible, au détriment du temps d'obtention. Le principe de modélisation orientée tâche vise à affecter un objectif de modélisation à chaque objet de l'environnement en fonction de son rôle pour la programmation et la supervision du système robotique. Il a été validé dans le cadre d'une expérimentation de mission de téléopération, où il s'agissait d'aller inspecter l'intérieur d'une vanne située dans un site encombré à l'aide du bras hydraulique Maestro.

Inspection d'une vanne: modèle orienté-tâche du site Trois niveaux de détail ont été retenus pour modéliser les objets de l'environnement. Les éléments servant à la navigation sont représentés avec une précision faible mais comportant des détails caractéristiques permettant de les reconnaître rapidement. Les obstacles, situés dans l'espace de travail du bras, sont représentés par des volumes englobants avec une précision compatible avec la distance de sécurité du module d'anticollision (de 5 à 10 cm).

Inspection d'une vanne: recalage de la vanne Inspection d'une vanne: exploitation du modèle pour dévisser un boulon de la vanne La vanne est représentée de façon beaucoup plus détaillée et précise pour produire des assistances à l'opérateur lors des phases de saisie des boulons, avec une structure modulaire pour tenir compte des parties démontables (boulons, capot).

Une solution souple pour des situations très contraintes

Modélisation d'une salle radioactive: vue générale Modélisation d'une salle radioactive: vue de la zone d'intérêt Modélisation d'une salle radioactive: modèle de la zone d'intérêt Dans le cadre d'une opération d'assainissement pilotée par l'UDIN (Unité de Démantèlement des Installations Nucléaires), l'outil Pyramide a été retenu pour réaliser un modèle 3D d'une salle radioactive. L'unique accès est un carottage de 7cm de diamètre dans le plafond, une dalle de 70cm de béton. La zone d'intérêt porte sur le voisinage d'une cuve dont le contenu doit être pompé. Il s'agissait de s'assurer de la possibilité de l'accès à cette cuve par un système robotique déployé depuis le plafond.

Un porteur articulé a été réalisé pour introduire une caméra CCD dans la salle. Le travail de modélisation comportait de nombreuses difficultés :
- des données a priori imprécises (un modèle reconstitué à partir d'une séquence vidéo avec un outil standard mal adapté), ou peu fiables (des plans de construction obsolètes),
- un déplacement de la caméra le long d'une droite à l'aplomb du trou d'accès (pas de possibilité de tourner autour des objets pour les modéliser),
- un éclairage annulaire autour de la caméra mettant en relief des détails différents en fonction du point de vue (peu de points homologues à exploiter),
- des images de mauvaise qualité (pour des raisons de sécurité, seule une source d'éclairage froide, peu puissante, pouvait être employée),
- des campagnes d'acquisition d'images limitées dans le temps en raison de la durée de vie réduite du capteur dans ce milieu.

La grande versatilité de Pyramide a permis de réaliser un modèle suffisamment précis de la salle pour s'assurer de l'accès possible à la cuve et localiser une zone d'intervention depuis la dalle.

Evaluation pour des applications architecturales

Pyramide a été concu pour des applications robotiques dans des environnements fortement structurés à caractère industriel. Son intérêt potentiel pour des applications architecturales a été évalué à partir du jeu d'images de référence du CIPA (Comité International de Photogrammétrie Architecturale). Il comporte une vingtaine de vues de l'Hôtel de Ville de Zurich, prises par deux appareils numériques différents complétées des modèles internes des appareils et d'un ensemble de points de calage sur le bâtiment.

Représentation filaire de l'Hotêl de Ville de Zurich superposé à une vue générale du bâtiment Représentation filaire de l'Hotêl de Ville de Zurich superposé à une vue de la façade nord Représentation filaire de l'Hotêl de Ville de Zurich superposé à une vue de la façade est Représentation filaire de l'Hotêl de Ville de Zurich superposé à une vue de la façade sud Représentation surfacique de l'Hotêl de Ville de Zurich superposé à une vue de la façade sud Vue d'ensemble du modèle 3D de l'Hotêl de Ville de Zurich

En dépit de primitives de modélisation mal adaptées à ce type d'application, un modèle très complet et hiérarchisé a été obtenu en 16 heures de travail à partir de seulement 4 images: une vue globale pour récupérer les proportions du bâtiment et 3 vues rapprochées pour détailler les façades. Ce travail expérimental nous a permis de confirmer les fortes capacités du principe de modélisation interative de Pyramide a répondre à des situations nouvelles avec de bonnes performances.

Bilan

Initié dès 1986, le projet Pyramide a progressé sous diverses formes, simples actions au sein d'autres projets ou bien projet de R&D à part entière, jusqu'à son achèvement en 2001. Au cours de ces 15 années, plusieurs permanents du CEA, 2 contractuels, 5 thésards et une vingtaine de stagiaires ont apporté leurs contributions.

Valorisé par plusieurs réalisations logicielles, un transfert industriel, et de nombreuses publications, Pyramide a été mis à disposition d'un programme de recherche national (Eureka AMR), de deux projets européens (Teleman LACWAP et Teleman MESSINA) et de six collaborations industrielles (Cogema, EDF, Cybernetics, Technicatome, UDIN, ESIC).

Durant toutes ces années, il a joué un rôle de pionnier pour la recherche dans le domaine de la modélisation 3D et reste un élément de référence pour les années à venir.

Plus de détails sur le projet Pyramide peuvent être trouvés dans mon mémoire de HDR.