Sous-sections
Participants : Toute
l'équipe.
Mots clés : intégration et
architecture logicielles, programmation orientée domaine,
environnement de programmation, temps réel, preuves
formelles, réalité augmentée, recalage .
Ce problème constitue l'une des premières étapes
nécessaires à la mise en oeuvre d'incrustation d'images pour
la réalité augmentée. Il s'agit de recaler les résultats de
la planification préopératoire en phase intra opératoire au
bloc. Des résultats préliminaires de recalage pré-opératoire
avaient été obtenus dans le cadre de travaux communs aux
projets Epidaure et RobotVis[BFAD95,Dev97,FA96]. Un premier stage a eu lieu en
1999 [14] pour intégrer les résultats de
stéréo-vision et de recalage surface/surface. Un nouveau
stage en collaboration Chir/Epidaure a eu lieu cette année et
a permis notamment de valider une solution matérielle
installée dans un bloc opératoire à l'Ircad, Strasbourg
(stage de Gérald Bianchi, co-encadré par G. Malandain et F.
Devernay). Ce stage se poursuit par la thèse de Stéphane
Nicolau au sein du projet Epidaure (co-encadré par F.
Devernay).
Le recalage intra-opératoire pose un problème nettement
plus difficile, puisque le chirurgien interagit avec
l'environnement, et notamment les organes du patient. Il est
donc nécessaire de tenir compte des déformations possibles
des organes pour effectuer le recalage des données acquises
par exemple par l'endoscope ou par une sonde à ultrasons
pendant l'opération. Fabien Mourgues a commencé une thèse sur
la réalité augmentée à partir d'images endoscopiques
stéréoscopiques, et les premiers résultats de reconstruction
3D montrent que l'endoscope stéréo permet une reconstruction
de la surface visible avec une précision raisonnable. Ces
reconstructions doivent ensuite être recalées par rapport aux
modèles déformables des organes, pour connaître précisément
la position de l'endoscope par rapport à la zone à opérer,
puis superposer ces informations dans les images
endoscopiques.
L'analyse de l'application dans son ensemble est effectuée
afin d'identifier les différents algorithmes utiles,
utilisables, disponibles pour l'exécution de la chaîne
d'intégration sûre (passage de la phase pré-opératoire à la
phase per-opératoire) de manière nominale et lors de
comportements dégradés. Les savoir-faire acquis lors du
développement
d'ORCCAD/MAESTRO
et de différentes applications industrielles interviennent
dans cette étape. Les résultats restent cependant encore
préliminaires mais s'enrichissent au fur et à mesure de la
disponibilité des briques et de la compréhension du problème
dans sa globalité. Potentiellement, l'environnement de
programmation
ORCCAD/MAESTRO
lui-même pourrait être réutilisé. L'analyse de faisabilité en
cours permettra de conclure. Mais son adéquation à des
applications de robotique/vision temps-réel est en cours de
tests et de validation.
En parallèle, un stage de DEA informatique [12] a proposé la définition d'un langage
permettant d'interpréter les résultats de la vérification
formelle effectuée sur un programme
MAESTRO. En effet, l'un des
inconvénients majeurs de l'approche adoptée est que
l'utilisateur du système programme les missions en
MAESTRO, mais qu'il doit effectuer les
vérifications sur le formalisme de destination
ESTEREL. L'étude a permis de :
- définir un langage d'expression de propriétés à
vérifier sur les programmes MAESTRO,
- traduire ces propriétés en observateurs
ESTEREL que l'on combine avec le programme
ESTEREL global pour appliquer les outils de
vérifications proposés par l'équipe
MEIJE,
- présenter le résultat de ces vérifications (un chemin
d'exécution mettant en défaut la propriété à vérifier), en
animant le programme source original.
Un prototype de ce langage
MAESTROVERIF a
été réalisé avec l'environnement CENTAUR
(projet Lemme avec la participation d'Yves Bertot). Il permet
d'effectuer des diagnostics sur ces résultats avec un haut
niveau d'abstraction, afin d'éclairer l'utilisateur sur les
modifications à apporter au programme source
MAESTRO en cas d'erreur.