Résumé Ce rapport traite du problème de la définition d’une ontologie d’événements vidéos utilisablespar une plate-forme d’interprétation automatique de séquences vidéos.. Table des figu
Trang 1Mémoire de fin d’études
Ontologie d’événements vidéos pour un système automatique d’interprétation vidéo
Réalisé par
PHAM Le Son
Sous la direction de
Monique THONNAT Nicolas MAILLOT
Sophia-Antipolis, Septembre 2004
Trang 2Je tiens à remercier Monique Thonnat et Nicolas Maillot qui m’ont accueilli dans leur équipe
et m’ont encadré pendant mon stage avec enthousiasme
Je tiens à remercier toutes les personnes de l’équipe ORION, particulièrement Thinh Vu Van,François Brémond, Florent Fusier, Julien Canet, Christophe Tornieri et Alberto Avanzi pourleurs aides et les discussions qui ont fait progresser mon travail
Merci également à Thanh Le Bach et Fabient Gandon de l’équipe ACACIA pour leurs conseilsprécis et les discussions intéressants que j’ai eu avec eux
Enfin, je tiens à remercier l’Institut de la Francophonie pour l’informatique – IFI qui m’a aidé
à effectuer mon stage de fin d’étude à l’INRIA Sophia Antipolis
Trang 3Résumé
Ce rapport traite du problème de la définition d’une ontologie d’événements vidéos utilisablespar une plate-forme d’interprétation automatique de séquences vidéos Une grande difficultédans la construction d’une telle otologie est qu'il n'y a pas encore une plateforme standard.Pour résoudre ce problème, les ontologies sont formalisées dans le langage VERL (VideoEvent Representation Language) Au lieu d’utiliser XML pour représenter les ontologiescomme l’auteur de VERL, nous avons transformé des expressions de VERL sur OWL (WebOntology Language) Grâce à cela, l'ontologie a un sémantique clair et peut être plusfacilement partagée et réutilisée entre des communautés Nous avons créé également un outilgraphique d'acquisition de connaissance, utilisant cette ontologie, pour aider les experts àdéfinir des événements d'intérêt dans des domaines d’application spécifiques A l’aide del’ontologie d’événements vidéos, un expert peut créer, gérer et manipuler des événementscomplexes relatifs à son domaine Cette 'outil est utilisé pour définir les événements vidéosdans l'application de la surveillance en agence bancaire Malgré des résultats prometteurs, ilreste encore des problèmes non résolus, par exemple, comment enfoncer l'ontologie dans lesmoteurs d'inférence disponibles dans les cadres standard de représentation tels que SWRL(Semantic Web Rule Language)
Mots clés
Ontologie, événement vidéo, OWL, VERL, représentation de connaissances, acquisition deconnaissances
Trang 4In the thesis, we propose an event ontology that can be used for an Automatic VideoInterpretation system The main obstacle is that there is no standard framework for definingevent ontologies To solve this issue, we first use the VERL (Video Event RepresentationLanguage) to describe the ontology as a formalization step Then, these concepts aretransformed in OWL (Web Ontology Language), a standard language of ontology So, theontology not only has a clear semantic but also can be shared and reused among communitieseasily We also introduce a graphical ontology-based knowledge acquisition tool which allowsthe domain experts to understand, manage and manipulate events of interest for videointerpretation The tool is used to define video events in the banking monitoring application.Despite of promising results, however, there are still open problems needed further researches,for example, how to embed the ontology in the inference engines available in standardrepresentation frameworks such as SWRL (Semantic Web Rule Language)
Key words
ontology, video event, OWL, VERL, knowledge representation, knowledge acquisition
Trang 55 Table des matières
CHAPITRE 1: INTRODUCTION 8
1.1 Contexte du travail 8
1.2 VSIP : Un système automatique d'interprétation vidéo 8
1.3 Langage de Description de Scénarios de l’équipe ORION 9
1.4 Objectifs 10
1.5 Contenu du rapport 10
CHAPITRE II: ETAT DE L’ART 11
2.1 L'ontologie 11
2.1.1 La notion d’ontologie 11
2.1.2 Pourquoi construire des ontologies ? 11
2.1.3 Le processus de création d’une ontologie 12
2.1.4 Vue d'ensemble des langages d'ontologie 14
2.2 La représentation d’événements vidéos 16
2.2.1 Revue de la bibliographie de la représentation d’événements vidéos 16
2.2.2 VERL : Une langage de la représentation d’événements vidéos 17
2.3 Conclusion 18
CHAPITRE 3 : ONTOLOGIE D’EVENEMENTS VIDEOS 19
3.1 Vue d’ensemble de la méthodologie 19
3.2 Conceptualisation du domaine 19
3.2.1 Des objets physiques 19
3.2.2 Relations spatiales 20
3.2.3 Etats et événements vidéo 21
3.2.4 Relations temporelle 21
3.3 Représentation des événements sur VERL 21
3.3.1 Définition hiérarchique des concepts 22
3.3.2 Représentation des états et événements sur VERL 22
3.4 L’implémentation de l’ontologie sur OWL 23
CHAPITRE 4 : UN OUTIL D’ACQUISITION DE CONNAISSANCES 26
4.1 Structure de l’outil 26
4.2 Fonctionnalités de l’outil 26
4.3 Etude de cas : la représentation de l’événement de l’attaque en agence bancaire 27
4.4 Résultat obtenu 29
CHAPITRE 5: CONCLUSION & PERSPECTIVES 30
5.1 Conclusion 30
Trang 65.2 Perspectives 30
BIBLIOGRAPHIE 31
ANNEX : REPRESENTATION DE L’ONTOLOGIE SUR VERL 33
Trang 7Table des figures
Figure 1 : Structure simplifiée d’une plate-forme d’interprétation vidéo 8
Figure 2 : Structure du système automatique d'interprétation vidéo VSIP 9
Figure 3 : Le cycle de vie d’une ontologie 12
Figure 4 : Exemple de représentation XML 14
Figure 5 : Exemple de représentation RDF 14
Figure 6 : Représentation d’un graphe de triplets 15
Figure 7 : Exemples d’objets physiques 20
Figure 8 : Exemple des relations spatiales 20
Figure 9 : L’arbre des objets physiques (a) et l’arbre des relations spatiales et temporelles (b) .26
Figure 10 : La fenêtre principale de l’outil 27
Figure 11 : Définition d’un objet physique 27
Figure 12 : Définition d’un composant 28
Figure 13 : Définition une contrainte 28
Figure 14 : Détection de l'événement de l’attaque en agence bancaire utilisant des scénarios définis par l’outil graphique 29
Figure 15 : L’événement vidéo attaque en agence bancaire obtenu grâce à l’outil d’acquisition de connaissances 29
Trang 8CHAPITRE 1: INTRODUCTION
1.1 Contexte du travail
Depuis plusieurs années, une partie de l'équipe Orion de l'Inria Sophia-Antilolis concentre ses
efforts sur la construction d’une plate-forme d'interprétation automatique de séquences vidéos
pour la reconnaissance de comportements humains (ex situation de violence, attaque en
agence bancaire) Une version simplifiée d’une plate-forme d'interprétation automatique de
séquences vidéos est donnée dans la figure 1 L’objectif de ce système est de reconnaître des
événements vidéos définis à priori à partir d’un flux vidéo
Figure 1 : Structure simplifiée d’une plate-forme d’interprétation vidéo.
Lors de la construction d’une plate-forme d’interprétation vidéo, un des problèmes rencontré
est celui de la représentation et de la définition d’événements vidéos d’intérêt
Dans la plate-forme de l’équipe (VSIP), la définition d’événements vidéos se fait actuellement par
le biais d’un langage de description qui n’est facile d’accès pour un non informaticien Pour
faciliter ce processus d’acquisition de connaissances, l’équipe s’intéresse à la construction
d'ontologies pour représenter les concepts utiles pour la définition d’événements vidéos Il s’agit de
construire une ontologie d'événements vidéos fournissant une base sémantique et un vocabulaire
conceptuel consensuel utile pour définir des événements vidéos complexes Cette ontologie
d'événements vidéos permet à l'utilisateur de comprendre les termes employés pour décrire des
événements vidéos sans être concerné par la problématique du traitement d'image
De plus, l’ontologie d'événements vidéos facilite la communication entre les experts d’un
domaine (ex experts de la sécurité en agence bancaire), et les développeurs de systèmes de
interprétation automatique de séquences vidéos Une telle ontologie est également utile pour
partager et réutiliser des modèles d’événements
Enfin, cette ontologie d'événements vidéos est utile pour évaluer les systèmes d'interprétation
automatique de séquences vidéos et pour comprendre quels types d'événements ces systèmes
sont capable de reconnaître
1.2 VSIP : Un système automatique d'interprétation vidéo
Nous avons introduit nos intérêts sur la construction d’une plate-forme d'interprétation
automatique de séquences vidéos pour la reconnaissance de comportements humains Dans
cette section, nous allons présenter notre système automatique d’interprétation vidéo
VSIP, le système automatique d'interprétation vidéo de l’équipe ORION est décrit dans la figure
Trang 92 Le système prend comme entrée les connaissances à priori comprenant des événements vidéosd’intérêt prédéfinis par des experts, l'information géométrique 3D et la sémantique relative à l’environnement.
En cours d’utilisation du système, le flux vidéo acquis par une camera constitue une entrée du système Lesortie du système est l'ensemble des événements
Trang 10vidéos identifiés (ex attaque en agence bancaire) Le module de reconnaissance de scénario
est décrit dans [Vu et al 2003]
Notre objectif est de proposer une ontologie d’événements vidéos ainsi qu’un outil
d’acquisition de connaissances afin de faciliter la définition d’événements vidéos d’intérêt Les
chapitres 3 et 4 de ce rapport présentent respectivement une ontologie d’événements vidéos et
un outil d’acquisition de connaissances
La connaissance à priori
Figure 2 : Structure du système automatique d'interprétation vidéo VSIP
1.3 Langage de Description de Scénarios de l’équipe ORION
Des événements vidéos sont représentes par le Langage de Description de Scénarios développé
dans l’équipe ORION
Il y a deux types principaux de concepts : les objets physiques observés dans la scène et les
événements vidéos apparaissant dans la scène
• Un objet physique peut être un objet statique (ex bureau) ou un objet mobile (ex personne,
voiture)
• Un événement vidéo peut être un état primitif, état composite, événement primitif ou événement
composite Les états primitifs sont des atomes nécessaires pour la construction d’événements complexes
utilisables par la plate-forme d’interprétation automatique de séquences vidéos de l’équipe ORION
Un même événement peut être regardé à différentes granularités spatiales et temporelles Par
exemple, un homme courant dans un Marathon peut être vu comme un état (il court) ou comme
événement composé La granularité choisie indique les propriétés d'intérêt pour l'utilisateur
La syntaxe pour définir un état ou un événement se compose trois parties :
Trang 11PhysicalObjects: déclare les objets physiques concernant le concept Seulement les objets qui peuvent changer entre les occurrences de concept doivent être déclarés.
Trang 12Components: déclare tous les composants constituant l’événement vidéo.
Constraints: déclare toutes les relations entre les sub-concepts (objets physiques et
composants) du concept
L’exemple ci-dessous illustre la représentation de l’état Inside_zone dans le Langage de
Description de Scénarios de l’ORION :
PrimitiveState Inside_zone PhysicalObjects
((p : Person), (z : Zone))
Constraints
(p in z)
Un autre exemple, l’événement Changes_zone est définit en utilisant des états
Inside_zone comme ses composants :
PrimitiveEvent Changes_zone PhysicalObjects
((p : Person), (z1 : Zone), (z2 : Zone))
Une de limitations de l’ontologie actuellement proposée par l’équipe Orion [Bremond at al.,
2004] est que certains concepts (ex relations spatiales entre les objets physiques) ne sont pas
définis formellement De plus, le langage de description de scénarios de l’équipe ORION n'est
pas un langage standard de représentation de connaissances Notre objectif est de pouvoir
partager l’ontologie d’événements vidéos C’est pourquoi l’objectif principal de ce stage est de
représenter cette ontologie dans un langage standardisé
Le but de ce stage de DEPA est d’améliorer le travail de l'équipe Orion sur l’ontologie
d'événements vidéos:
• Premièrement, il s’agit d’étendre et d’implémenter dans un langage standard l’ontologie
d'événements vidéos existante
• Deuxièmement, il s’agit de construire un outil graphique d'acquisition de connaissances basé surl’ontologie d’événements vidéos afin de permettre à des experts de comprendre, de contrôler et de manipulerdes événements d'intérêt pour leurs domaines d’application
1.5 Contenu du rapport
Ce rapport est organisé comme suit Le chapitre 2 introduit une vue d’ensemble du domaine de
l’ontologie ainsi que le problème de la représentation et la définition d’événements vidéos
Une ontologie d’événements vidéos est proposée dans la chapitre 3 Le chapitre 4 présente un
outil graphique d'acquisition de connaissances destiné à aider les experts d’un domaine à
définir des événements d’intérêts Enfin, nous concluons et donnons des perspectives de travail
dans le chapitre 5
Trang 13Comme nous l’avons expliqué dans l’introduction de ce rapport, notre objectif est de faciliter
la définition d’événements vidéos par l’utilisation d’une ontologie d’événements vidéos L’état
de l’art proposé dans ce chapitre est structuré en deux parties Une introduction au domaine del’ontologie est d’abord proposée Ensuite, nous donnons un aperçu des approches existantesdans le domaine de la représentation d’événements vidéos
2.1 L'ontologie
Durant la dernière décennie, l’ingénierie ontologique est devenu un thème de recherche trèspopulaire [Roche, 2003] et joue un rôle de plus en plus important dans différents domaines telsque la recherche intelligente sur le Web, le partage, la gestion et la réutilisation deconnaissances
2.1.1 La notion d’ontologie
En informatique, une ontologie a pour but de représenter formellement l’existant Lareprésentation formelle des connaissances est basée sur une étape de conceptualisation La
conceptualisation consiste à identifier un ensemble de concepts ainsi que les relations qui les
relient Une spécification explicite de cette conceptualisation s'appelle une ontologie [Gruber,1993] Formellement, une ontologie se compose des termes, de ses définitions, des relations etdes axiomes [Gruber, 1993]
Selon [Roche, 2003] l’ingénierie ontologique repose sur une approche multidisciplinaire:
• linguistique, comme nous employons des mots pour communiquer;
• théorie de la connaissance, puisque les mots se rapportent à la connaissance qui définit leur signification;
• logique, afin de garantir de la concordance;
• représentation de la connaissance afin d’adresser le problème de la compréhension d’un domaine
2.1.2 Pourquoi construire des ontologies ?
Quelles sont les raisons de développer des ontologies? L’une des motivations principales est
de permettre la communication et partager la compréhension commune d’un domaine Ceci,entre des personnes ou des agents de logiciel
Une autre raison importante qui inspire la recherche sur les ontologies est que des ontologiespermettent la réutilisation de la connaissance Par exemple, dans le cadre de la représentationd’événements vidéos, plusieurs approches permettent de représenter la notion du temps Ils’agit par exemple des notions d’intervalles de temps, points de temps, mesures relatives dutemps Si un groupe de chercheurs développe une telle ontologie, d'autres peuvent simplement
la réutiliser pour d’autres applications
Trang 14Finalement, l'analyse ontologique clarifie la structure de la connaissance [Chandrasekaran et
al., 1999] Plus qu’un vocabulaire spécialisé pour un domaine, les ontologies fournissent les
conceptualisations des termes du domaine De plus, l'analyse formelle des termes est
extrêmement importante pour la réutilisation ou de l’extension d’ontologies existantes
2.1.3 Le processus de création d’une ontologie
Le processus de création d’une ontologie doit être considéré comme un projet Les méthodes de
gestion de projet peuvent donc s'appliquer [ Gandon, 2002 ] Un cycle de vie d’une ontologie est
proposé dans [Lopez et al, 2000] Trois types d’activités sont identifiés (Figure 3):
Integration & Evaluation & Documentation
Figure 3 : Le cycle de vie d’une ontologie
L’activité de construction est la partie centrale du cycle, au cours duquel les activités de
gestion et de support participent La construction se compose quatre étapes :
Spécification :
La construction d’une ontologie commence par la définition d’un domaine et de sa portée
C’est à dire, il faut trouver des réponses a des questions comme [Noy et McGuinness, 2001] :
• Quel est le domaine que l'ontologie couvrira?
• Quels sont les buts de l'utilisation de l'ontologie?
Trang 15• D’identifier des concepts, des attributs, et des valeurs dans un Dictionnaire Glossaire.
• De classifier des groupes de concepts dans des Arbres de Concepts.
• De construire une Table des Relations.
• De construire une Table des Instances d’Attributs.
• De définir des constantes dans un Table des Constantes.
• De construire une Table de Formules.
Formalisation :
Une fois le modèle conceptuel structuré, il faut le traduire dans un formalisme formel orinformel Grâce à la formalisation, les définitions des concepts sont plus explicites et précises.L’objectif est de faciliter l'interprétation de l’ontologie [Uschold et Jasper, 1999] ont proposéquatre niveaux de formalismes d’une ontologie, du haut niveau informel au niveau formelrigoureux Le niveau du formalisme d’une ontologie est choisi selon les besoins et selon lelangage d’implémentation de l’ontologie Par exemple, si l’ontologie est un framework pour lacommunication entre des personnes alors la représentation d’une ontologie peut êtreinformelle Cependant, si l’ontologie est utilisée par les outils logiciels, la représentation doitêtre plus formelle
Parmi les nombreux langages de formalisation des ontologies, il y a trois grandes familles: leslangages à base de frames, les modèles des graphes contextuels et les logiques de description.Dans les langages à base de frames, les frames représentent les catégories d’objets et sontdotées d’attributs (slots) Les slots peuvent prendre différentes valeurs Une instance de classe,qui a un identifiant et des attributs uniques est liée à sa classe par le lien « is - a » Les classessont structurées par un lien hiérarchique « a-kind-of » Flogic [Kifer et al., 1995] est unexemple connu de formalisme qui intègre les langages à base de frames, les formalismesorientés objet et la logique du premier ordre
Dans le modèle des graphes conceptuels [Chein et Mugnier, 1992] on distingue des niveauxdifférents Au niveau conceptuel, il peut servir de base à un langage spécialisé decommunication entre les spécialistes de différentes disciplines impliquées dans un travailcognitif commun Au niveau d'exécution, il peut servir de base à un outil commun dereprésentation employé par plusieurs modules d'un système complexe
Les logiques de description sont basées sur la logique prédicat, les réseaux sémantiques et leslangages à base de frame Dans le formalisme des logiques de description, les connaissancessont représentées sous forme de concepts, de rôles et d’individus Un concept est une entitégénérale d’un domaine d’application Les rôles sont des relations binaires entre concepts et lesindividus sont les instances des concepts Les propriétés des concepts, rôles et individus sontexprimées en logique des prédicats
Implémentation :
Finalement, on doit l’implémenter l’ontologie sur un langage Le langage choisit doitcorrespondant avec le modèle de formalisation Une introduction brève des langagesd’ontologie est présentée dans la session suivante
Trang 162.1.4 Vue d'ensemble des langages d'ontologie
Pour implémenter des ontologies, de nombreux langages ont été utilisés La plupart sont baséssur XML et les logiques de description Dans cette section, nous présenterons brièvementXML, XML Schema, RDF, RDF Schema et OWL qui sont les langages le plus populaires
Figure 4 : Exemple de représentation XML
XML fournit seulement une structure syntaxique pour des documents [Klein, 2004] XML nepermet pas une interprétation sémantique des données
» Ce type de données pour données s'appelle des metadonnées Les choses sont des ressourcesdans le vocabulaire de RDF [Klein, 2004]
RDF est basée sur la notion d'URI (Uniform Resource Identifiers), en décrivant des ressources
en termes de propriétés et de valeurs de propriétés
Trang 17Le modèle de base de données de RDF comporte quatre types d'objets:
Les ressources sont toutes les choses décrites par des expressions de RDF Une ressource
peut varier d’une page entière de Web à un élément d’un document XML
Une propriété est un aspect, une caractéristique, un attribut, ou une relation spécifique
employée pour décrire une ressource
La notion de literal est employée pour identifier des valeurs telles que des nombres et des
dates au moyen d'une représentation lexicographique
Un statement se compose d'une ressource spécifique ainsi que d’une propriété plus la valeur
de cette propriété pour cette ressource
Chaque statement est représenté par un triplet qui est se compose d'un sujet (une ressource),
d'un attribut (une propriété) et d'un objet (ressource ou un literal) Un ensemble de tels triplets
s'appelle un graphe de RDF La figure 5 représente l’exemple précédant sous la forme d’un
graphe de triplets
Comme XML, un modèle RDF ne définit pas (à priori) la sémantique d'un domaine
d'application Il fournit seulement un mécanisme d’intermédiaire pour décrire des
meta-données Pour définir les propriétés spécifiques d’un domaine ainsi que leur sémantique, il est
nécessaire d’utiliser des éléments additionnels
RDF schema fournit un système de type pour RDF Il fournit un mécanisme pour définir des
propriétés associées à des classes ainsi que leurs ranges et leurs domaines
http://www.test.org/
created_by
phone_number name
Figure 6 : Représentation d’un graphe de triplets
Les primitives pour construire un schéma pour un domaine spécifique sont :
• Les définitions de classe (rdf:Class) de statements rdf:subClassof qui permettent la définition
Trang 19Un Langage basé sur les logiques de descriptions et XML : OWL
Une autre famille de langages de représentation de connaissances est construite sur XML et leslogiques de descriptions Ces langages sont ainsi compatibles avec des normes standardexistantes du Web et en même temps offrent la sémantique des logiques de description Leprincipal représentant de cette famille de langages est OWL OWL est devenu unerecommandation de W3C en février 2004 (*)
OWL est divisé en trois sous-langages, OWL Lite, OWL DL, et OWL Full Ces langagesvisent différents groupes d'utilisateurs
• OWL Lite fournit une base pour les utilisateurs qui ont besoin principalement d’une hiérarchie
de classification et de contraintes simples
• OWL DL s’adresse aux utilisateurs qui veulent plus d’expressivité tout en conservant la décidabilité des raisonnements
• OWL Full est destiné aux utilisateurs qui veulent une expressivité maximale et la liberté syntaxique de RDF mais sans garanties dans la complexité des raisonnements
2.2 La représentation d’événements vidéos
2.2.1 Revue de la bibliographie de la représentation d’événements vidéos
Dans la communauté de la vision par ordinateur, il a y eu beaucoup de recherches destinées àdéfinir et à représenter des événements vidéos Par exemple, les auteurs de [Nagel, 1998]utilisent une hiérarchie de verbes de mouvements, contenant jusqu'à neuf niveaux d'abstraction
de verbes tels que : « changement », « événement », « verbe-phrase », « phase », « historique
» Ils proposent également d'utiliser un diagramme de transition à chaque niveau d'abstractionpour représenter la succession des verbes [Nevatia et al, 2003] propose une décompositionhiérarchique des événements et suggèrent l'utilisation des terminologies « single thread » et «multiple thread »
Concernant les ontologies d'événements vidéos, peu de travaux ont été menés En 2003,l'objectif de trois workshops organisés dans le contexte du programme ARDA (**) était deproposer une ontologie d'événement vidéo pour le domaine de la sécurité Pendant cesworkshops, des chercheurs venus de la communauté de la vision par ordinateur et del'administration américaine ont travaillé ensemble pour proposer une structure d'ontologied'événements vidéos pour faciliter la construction d’ontologies consacrées aux domainesspécifiques de la sécurité Les chercheurs de la communauté de la vision par l'ordinateur ontproposé six ontologies consacrées à des applications spécifiques de sécurité telles que lasurveillance de croisement de chemin de fer L’équipe ORION a participé à ces workshops et aproposé deux ontologies pour la surveillance de banque et de métro [Bremond et al 2004] Cesontologies ont été définies de manière incrémentale par une interaction avec des utilisateurs,comme par exemple des opérateurs de surveillance de métros et de banques
A la suite des workshops du programme ARDA, Les auteurs de [Nevatia et al., 2004] ontproposé un langage formel de représentation d’événements vidéos ainsi que des ontologiesspécifiques pour le domaine de la sécurité Le langage formel proposé s’appelle VERL que on
va voir en détail dans la session suivant
_-( http://www.w3.org/TR/owl-ref/ (**) http://www.ic-arda.org/