Conception de systèmes d'interprétation d'image
Patrice DALLE
Modélisation
Les approches classiques décrivent les opérateurs de manière
fonctionnelle. Cela pose des problèmes lorsque l'on cherche à
automatiser la sélection des opérateurs pour construire une
application : on devrait spécifier l'objectif général
en termes de fonctions et donc avoir déjà effectué
le processus de résolution. Pour éviter cela, on peut attacher
à chaque opérateur une expertise sur ses cas d'utilisation
(liaisons but - opérateur). Cependant, la très grande diversité
des contexte d'utilisation rend très difficiles la formalisation
de cette expertise et sa validation.
Nous avons cherché à privilégier la notion d'information
présente dans les données et à décrire les opérateurs
à partir des transformations d'information qu'ils effectuent sur
ces données. Ainsi on ne fait pas d'hypothèse a priori
sur l'utilisation des opérateurs et on peut décrire l'effet
d'une chaîne de traitements. Dans cette approche, la formulation d'un
objectif se fait en terme d'information (description des concepts du domaine
d'application), ce qui est plus proche des modes de raisonnement de l'utilisateur.
Notre modélisation du traitement d'image (TI) comporte trois éléments :
- un modèle symbolique de données de TI.
Il décrit de façon très précise les différentes composantes des
données manipulées par une chaîne de TI, en intégrant la double nature
géométrique et radiométrique de l'image.
- un modèle d'opérateur de TI.
Il décrit la transformation d'information à partir des opérations d'indexation,
de mesure, de partition, de codage et de regroupement réalisées sur les champs de
la donnée. Ce modèle permet de décrire la propagation des transformations
réalisées par une combinaison d'opérateurs.
Une base d'opérateurs élémentaires a été
décrite à partir desquels on peut représenter les
macro-opérateurs d'une bibliothèque de TI.
- un langage de description de concepts.
Il permet de représenter formellement le concept associé
à une donnée produite par un traitement. On peut ainsi
formuler un problème en décrivant, en termes d'indices visuels,
l'objectif de traitement d'image à atteindre ou inversement
décrire le résultat produit par une chaîne d'opérateurs
particulière.
(description détaillée des modèles et du langage)
Construction d'une application
Planification
Une première exploitation de ces modèles a été
mise en oeuvre pour construire des applications, selon une approche "planification"
(projet ExTI).
L'environnement ExTI comporte trois modules :
- une interface de formulation du but (système SATI)
- un moteur de planification symbolique.
Utilisant un mécanisme original de réutilisation de plans,
il construit le graphe d'opérateurs symboliques à appliquer
pour parvenir au résultat visé en décrivant l'information
présente à chaque noeud de ce graphe et en la comparant à l'expression du but.
- un module d'exécution du plan, utilisant les opérateurs
réels d'une bibliothèque de traitement d'image.
(description détaillée du projet ExTI)
L'exploitation de ce système a mis en évidence les difficultés
de formulation de l'objectif.
Une analyse de son fonctionnement a permis de dégager trois critiques principales :
- le planifieur est un module "passif" ; il faut donc lui spécifier la totalité de l'objectif,
ce qui est difficile à faire sans introduire des éléments
de solution, ou construire cet objectif de manière incrémentale
en résolvant les buts intermédiaires, ce qui est trop contraignant.
- le formalisme d'expression du but doit être masqué à l'utilisateur
- les échanges utilisateur-système doivent être de haut niveau (niveau "conceptuel").
Environnement de développement
Nos travaux actuels en interprétation sont basés sur une
conception plus symétrique des rôles de l'utilisateur et du
système. Chacun des deux acteurs cherche à élaborer
des concepts et à les décrire sous une forme compréhensible
par son partenaire. L'utilisateur connaît les concepts du domaine
d'application et il cherche à en donner une formulation basée
sur des indices visuels. Le système dispose d'une certaine autonomie;
il élabore des "concepts artificiels", en trouvant des régularités
dans les description des entités qu'il peut construire par analyse
d'image. Utilisateur et système échangent leurs points de
vue, via un langage visuel. Le système est considéré
comme configuré lorsqu'il y a accord, c'est-à-dire lorsqu'il
n'y a plus besoin de communiquer.
Ce système est en cours de développement. Il est basé
sur trois composants principaux :
- Un système multi-agent d'analyse d'image
(système primaire) : chaque opérateur de TI est encapsulé
par un agent. Un agent est relié (accointances) aux agents dont les
opérateurs sont compatibles avec le sien. Les agents ont un
comportement social basé sur la coopération. Aussi les liaisons
entre agents sont affectées de poids traduisant la notion d'utilité.
Les poids sont constamment mis à jour en fonction des réponses
de l'environnement aux actions des agents, réponses dépendant
des données traitées, de l'objectif visé et des réactions
du système secondaire. L'implémentaion des modèles
d'opérateur et de donnée (travaux en cours) permet de représenter
formellement le résultat de chaque enchaînement d'opérateurs
(description
détaillée du système primaire).
- Un système d'élaboration de
concepts (système secondaire) : ce système, en cours
d'étude, observe l'évolution du système primaire en
vue d'y détecter des régularités et de les décrire
(processus de généralisation). Ces concepts artificiels sont
présentés à l'utilisateur afin de déterminer
s'ils sont pertinents pour l'application envisagée. Selon les indications
de l'utilisateur, le système cherche à modifier ses propres
concepts, ce qui se traduit par des influences exercées sur le système
primaire pour le faire évoluer.
- Un module de dialogue basé sur un langage visuel.
Ce module propose à l'utilisateur d'exprimer
sa connaissance du domaine sous la forme des propriétés des
concepts recherchés. Un langage visuel a été défini
pour lui permettre de caractériser, au moyen de descripteurs, des
entités remarquables, instances de ces concepts dans les images
(indices visuels). Pour cela, nous organisons l'espace des descripteurs
et présentons les entités en plusieurs niveaux de structuration.
Pour chaque descripteur de propriété, le langage visuel propose
des interacteurs spécifiques permettant de préciser son domaine
(description
d'une première maquette de cette interface).