Upload
helene-billet
View
106
Download
2
Embed Size (px)
Citation preview
Une approche sémantique pour la réutilisation et l’adaptation de données 3D
Thèse défendue le 19 décembre 2007par Ioan Marius BILASCO
Claude Chrisment, U. Toulouse III – rapporteurMohand-Saïd Hacid, U. Lyon I – rapporteur
Jacques Le Maître, U. Sud Toulon-Var – examinateurHervé Martin, U. Grenoble – directeur de thèse
Marlène Villanova-Oliver, U. Grenoble – encadrant
Laboratoire d’Informatique de Grenoble Equipe STEAMER
2
Contexte
Engouement autour de 3D Villes virtuelles, visites virtuelles, e-commerce
IntroductionEtat de l’art PropositionExpérimentationConclusions
ContexteProblématiqueObjectifs
3
IntroductionEtat de l’art PropositionExpérimentationConclusions
ContexteProblématiqueObjectifsX3D
Contexte
Donnée 3D Géométrie Texture StructureStructure …… SémantiqueSémantique
Scène
M1 R1P1A
A1 A2
T1 F1 T2 F2
maison
arbre
feuillage
tronc
M1
R1
P1
T1
F1
T2
F2
4
Contexte
Réalisme de la visualisation
Ouverture au monde Web VRML, X3D, U3D, COLLADA, 3D XML, …
Dispositifs 3D hétérogènes Nouveaux domaines d’applications
Gestion de l’information 3D Integration, Filtrage, Transformation, ...
vers un 3D symboliqueIntroductionEtat de l’art PropositionExpérimentationConclusions
ContexteProblématiqueObjectifs
5
Problématique
Applications
Web
Un musée
?
Une maison à acheter
?
Bâtiments à
risque ?
Comment satisfaire
leurs attentes ?
Comment assembler des
nouvelles scènes ?
Plus court
chemin ?
Quoi et comment montrer ?
Sémantique
Comment
associer?
Com
ment
exploiter?
GéométrieApparenceStructure
Adap
ter
Adapter
Réutiliser
Comment exploiter?
6
Adaptation Réutilisation
Problématique
Application 1
Application 2 Application 4
Application 5
domaine du risque domaine touristique
Application 3
RDF
MPEG-7…
Sémantique
X3D
VRML
…
Données 3D
Exploitation
7
Problématique
Ouvrir le monde 3D aux concepteurs Produire de nouvelles données 3D
Réutilisation Diffuser les données 3D
Adaptation Exploiter la sémantique
Solutions déclaratives + documentaires
IntroductionEtat de l’art PropositionExpérimentationConclusions
ContexteProblématiqueObjectifs
8
Objectifs
Décrire les données 3D Localiser les objets Caractériser les objets
Réutiliser Catégories d’objets Apport sémantique
Adapter Adaptation différenciée
IntroductionEtat de l’art PropositionExpérimentationConclusions
ContexteProblématiqueObjectifs
9
Plan
Introduction État de l’art
Sémantique Recherche et réutilisation Adaptation Synthèse
Proposition Expérimentation Conclusion
10
La sémantique dans les documents 3D
Caractéristiques de l’objet représentétype : bibliothèquenombre d’étages : 3 risque sismique : normalcoord. géo. : (45°11’32’’N, 5°46’11’’E)
[Halabala, 03], [Polys, 04], [Albertoni, 05], [Cruz, 05], [Gutierrez, 05], [Hetherington, 04], [Mansouri, 05],
[Otto, 05], [Oliverio, 07], [Pittarello, 05]
Géométriepoints : 91lignes : 84…
[Albertoni, 05]
Apparencecouleur dominante : gris
[Albertoni, 05], [Mansouri, 05]
Topologie isContained by Campus
… [Mansouri, 05], [Pittarello, 05]
Caractéristiques médiataille : 15 Koencodage : XML/X3D
[Albertoni, 05]
IntroductionEtat de l’art PropositionExpérimentationConclusions
SémantiqueRechercheRéutilisationAdaptationSynthèse
11
Interne : métadonnées [Polys, 04], [Hetherington, 04], [Cruz, 05], [Pittarello, 05]
Externe OWL/RDF : [Albertoni, 05], [Otto, 05], [Oliverio,07] MPEG-7 : [Halabala, 03], [Mansouri, 05] Autres modalités de représentation
[SEDRIS, 98], [Active3D, 05], [Gutierrez, 05]
Caractérisation partielle + Encodages spécifiques
La sémantique dans les documents 3D
<Transform ...> …<MetadataSet name="caracteristiques"><MetadataString name="categorie" value="maison"/><MetadataString name="hauteur" value="5m"/>
</MetadataSet>…<Shape DEF="M1"> ... </Shape>
</Transform>
IntroductionEtat de l’art PropositionExpérimentationConclusions
SémantiqueRechercheRéutilisationAdaptationSynthèse
M1
12
Recherche
Recherche à base d’exemples Descripteurs au niveau signal [Zaharia, 03],
[Kazdhan, 03], [Koubaroulis, 01], [Hillaga, 01], … Mesure de similarité
Recherche à base de caractéristiques Analyse des métadonnées [Funkhouser, 03] Sémantique externe RDF, MPEG-7
Solutions spécifiques par représentation
IntroductionEtat de l’art PropositionExpérimentationConclusions
SémantiqueRechercheRéutilisationAdaptationSynthèse
13
Intégration de données dans nouveaux contenus Mécanismes internes au langage X3D
DEF/USE, PROTOs
Génération à base de templates [Kleinermann, 05], [Bosca, 07], [Oliverio, 07] Trois étapes
spécification – indiquer les entités à inclure mise en correspondance – choisir les templates adéquats génération – instanciation des templates
À base d’identifiants + Systèmes fermés
Réutilisation
IntroductionEtat de l’art PropositionExpérimentationConclusions
SémantiqueRechercheRéutilisationAdaptationSynthèse
ARBRE
RANGEE
PARCELLE
RANGEE
ARBRE Transform Transform Transform
RANGEE Transform Transform Transform
Scene
TransformPARCELLE
RANGEE
ARBRE Transform Transform Transform
RANGEE Transform Transform Transform
Scene
Transform<Group DEF=‘PARCELLE’><Group DEF='RANGEE'><Group DEF='ARBRE'>…</Group><Transform … > <Group USE='ARBRE'/> </Transform>…
</Group> <Transform …> <Group USE=‘RANGEE’/> </Transform> …<Group>
14
Adaptation
Adaptation par dimension Géométrie – techniques de simplification
[Kim, 06], [To, 99], ...
Apparence – techniques d’adaptation 2D [Chen, 03], [Lee, 01], ...
Structure logique – techniques de réorganisation et substitution
[Mulloni, 07], [Marvie, 04], [Dachselt, 06], [Estalayo, 2004], …
Techniques d’adaptation par scène ou par objet
IntroductionEtat de l’art PropositionExpérimentationConclusions
SémantiqueRechercheRéutilisationAdaptationSynthèse
15
Synthèse
Réutilisation
Exploitation
RDFMPEG-7
…
Sémantique
A2
A3
Données 3D
A1
Ad
apta
tio
n
Arbres
Couche d’accès à la sémantique R2
R1
App1 App2
propriétés
relations
catégories
Aperçu de la proposition
IntroductionEtat de l’art PropositionExpérimentationConclusions
SémantiqueRechercheRéutilisationAdaptationSynthèse
16
Aperçu de la proposition
Application 1
Application 2 Application 4
Application 5
domaine du risque domaine touristique
Application 3
Modèle d’annotations sémantiques 3D3DSEAM
Plate-forme d’accès à la sémantique3DAF
Plate-forme de réutilisation
3DSDL Plate-forme d’adaptationAdapt3D
RDF
MPEG-7…
Sémantique
X3D
VRML
…
Données 3D
17
Modèle de description de données 3D Approche à base d’annotations
Localiser une donnée Repères spatio-structurels
Caractériser une donnée à trois niveaux Fragment Entité du monde Sémantique : locale, applicative, générale
S’affranchir d’un encodage spécifique
IntroductionEtat de l’art PropositionExpérimentationConclusions
3DSEAM3DAF3DSDLADAPT3D
18
Modèle de description de données 3D Modèle objet
Évolution indépendante de la sémantique Niveau générique multimédia 2D/3D
LogicalStructure
GeneralSemantics
MediaInstance
MMFragmentMediaLocator
Entity
SceneSemantics
MediaProfile
LocalSemantics
IntroductionEtat de l’art PropositionExpérimentationConclusions
3DSEAM3DAF3DSDLADAPT3D
19
Modèle de description de données 3D Niveau spécifique 3D
Une dimension = liste de descripteurs Variabilité des descripteurs Modèle de descripteurs
Nom, type, associé à un concept d’une ontologieIntroductionEtat de l’art PropositionExpérimentationConclusions
3DSEAM3DAF3DSDLADAPT3D
20
Modèle de description de données 3D Profils sémantiques
répertorier les propriétés et relations selon domaine
IntroductionEtat de l’art PropositionExpérimentationConclusions
3DSEAM3DAF3DSDLADAPT3D
21
ScèneRéelle:3DObject
G1:3DObject
B1:3DObject
G13:3DObject
G10:3DObject
reel.x3d, xpath://Group[@id=‘BLEU’]:StructuralLocator
:SpatioStructuralLocator
reel.x3d, xpath://child::*[@id=‘GRIS’]:StructuralLocator
reel.x3d, Box(C(0,-3,0), L(12), H(1),W(2)):SpatialLocator
locaux.x3d, xpath://X3D:StructuralLocator
reel.x3d, xpath://Group[@id=‘GRIS’]:StructuralLocator
…
P:3DObject
P1:3DObject
P3:3DObject
reel.x3d, xpath://Group[@id=‘Passerelles’]/Transform[position()=1]
:StructuralLocator…
ENSIMAG_E:Entity
ENSIMAG_D:Entity
ENSIMAG_D0:Entity
ENSIMAG_D3:Entity
Catégorisationcatégorie=bâtiment
…
:Semantics
Passerelle_1e:Entity
Passerelle_3e:Entity
BC
Sémantique
BC
Entités
BC
Fragments multimédia
…
Catégorisationcatégorie=bâtiment
…
:Semantics
Catégorisationcatégorie=etage
…
:Semantics
Catégorisationcatégorie=etage
…
:Semantics
Catégorisationcatégorie=passerelle
…
:Semantics
Catégorisationcatégorie=passerelle
…:Semantics
reel.x3d, xpath://Group[@id=‘Passerelles’]/Transform[position()=3]
:StructuralLocator
Modèle de description de données 3D
reel.x3d, xpath://child::*[@id=‘GRIS’]:StructuralLocator
reel.x3d, Box(C(0,-3,0), L(12), H(1),W(2)):SpatialLocator
Exemple de description
22
Plan
Introduction État de l’art Proposition
Modèle de description de données 3D (3DSEAM) Une gestion générique des entrepôts 3DSEAM (3DAF) Exploitation de la sémantique dans la réutilisation (3DSDL) Adaptation différenciée des données 3D (ADAPT3D)
Expérimentation Conclusion
23
Plate-forme de gestion d’entrepôts Gérer les entrepôts 3DSEAM Indépendance entre représentation et accès à
l’information
Géométrie
Apparence
Topologie
Profil Media
Sémantique
3DSEAM
RDF MPEG-7 SRCOmeta
donnéesX3D
SGBD
Requête
IntroductionEtat de l’art PropositionExpérimentationConclusions
3DSEAM3DAF3DSDLADAPT3D
24
Plate-forme de gestion d’entrepôts
Architecture
Entrepôt d’annotations 3DSEAMGestionnaired’annotations
EntitésBC
sem
an
tiqu
e
en
tité
s
fra
gm
en
ts
EntitésSemantique
3D Objets
Requête 3DSEAM
OQL
add
remove
update
select
results
Plate-forme d’annotations 3D
(3DAF)
Profils
Sémantique locale
Gestionnairede requêtes
Fragments
SémantiqueBC
Fragmentsmultimédia
BC
IntroductionEtat de l’art PropositionExpérimentationConclusions
3DSEAM3DAF3DSDLADAPT3D
25
Plate-forme de gestion d’entrepôts OQL [Cattel, 94] Extension spécifique 3DSEAM
Opérations de jointures fonctionnellesSemantics(obj3d) sem
Propriétés complexesSemantics.gpsCoord.latitude prop
Profils sémantiquesSemantics!Geospatial.altitude prop
IntroductionEtat de l’art PropositionExpérimentationConclusions
3DSEAM3DAF3DSDLADAPT3D
26
Plate-forme de gestion d’entrepôts Exemple de requête 3DSEAM OQL
Trouver tous les objets de couleur grise, leur profil géospatial et leur catégorie.
SELECT obj3d, s!Geospatial, s!Catégorisation.catégorie
FROM Object3D obj3d,
Semantics(obj3d) s,
Appearence(obj3d) app
WHERE (app.dominantColor=GRAY)
IntroductionEtat de l’art PropositionExpérimentationConclusions
3DSEAM3DAF3DSDLADAPT3D
27
<items><item>
<element type="Semantics!Catégorisation.catégorie">bâtiment
</element></item>…
</items>
<items><item>
<element type="Semantics!Catégorisation.catégorie">bâtiment
</element></item>…
</items>
Plate-forme de gestion d’entrepôts Résultats auto-descriptifs « à la XML »
Encodage XML d’une instance
Encodage XML d’une propriété
Encodage XML d’un profil sémantique
SELECT obj3d, s!Geospatial,s!Catégorisation.catégorie
FROM Object3D obj3d, Semantics(obj3d) s,Appearance(obj3d) app
WHERE (app.dominantColor=GRAY)
<items> <item> <element type="Object3D">
<element type=“Object3D.id”>G1</element><element type=“Object3D.relEntity”>ENSIMAG_D</element><element
type=“Object3D.relMediaLocator”>G1_ML</element>…
</element>
<element type="Semantics!Geospatial"><element type=“Semantics!Geospatial.gpsCoord">
<element type=“Semantics!Geospatial.gpsCoord.latitude”>
45°11’35’’N</element><element type=“Semantics!
Geospatial.gpsCoord.longitude”>5°46’06’’S
</element></element><element type=“Semantics!Geospatial.altitude”>
230</element>
</element></element>
<element type=“Semantics!Catégorisation.catégorie”>bâtiment
</element></item>
…</items>
28
Plan
Introduction État de l’art Proposition
Modèle de description de données 3D (3DSEAM) Une gestion générique des entrepôts 3DSEAM (3DAF) Exploitation de la sémantique dans la réutilisation Adaptation différenciée des données 3D (ADAPT3D)
Expérimentation Conclusion
29
Exploitation de la sémantique dans la réutilisation Processus de réutilisation sémantique
Récupération des repères (3DAF) Récupération de la sémantique (3DAF) Extraction des fragments Ajout des métadonnées Inclusion au sein de la nouvelle scène
Réutilisation par catégories d’objets
IntroductionEtat de l’art PropositionExpérimentationConclusions
3DSEAM3DAF3DSDLADAPT3D
30
SELECT obj3d{id,MediaLocator}FROM Object3D obj3d, Appearance(obj3d) appWHERE app.dominantColor=GRAY
SELECT obj.id,sem!Geospatial.gpsCoord,
FROM Object3D obj, Semantics(obj) semWHERE obj.id in ($OBJ_IDs)
Exploitation de la sémantique dans la réutilisation Réutilisation par catégorie d’objets
Critères d’appartenance
Apport sémantique
Génération de requêtes 3DSEAM OQL
{[Appearance!dominantColor=GRAY]}
{[Semantics!Geospatial.gpsCoord]}
IntroductionEtat de l’art PropositionExpérimentationConclusions
3DSEAM3DAF3DSDLADAPT3D
31
Exploitation de la sémantique dans la réutilisation Extraction de fragments
X3D - langage pivot Ajout d’informations sémantiques
Utilisation des nœuds Metadata[Set, String…]
<Group DEF=“BUS”> <MetadataSet name=“3dseam_annotations”>
<MetadataSet name=“Semantics!Geospatial.gpsCoords“><MetadataString name=“Semantics!Geospatial.gpsCoords.longitude”
value=“5°46’11’’E”/><MetadataString name=“Semantics!Geospatial.gpsCoords.latitude”
value=“45°11’32’’N”/></MetadataSet>
</MetadataSet> … <!-- geometry and appearance --></Group>
<Group DEF="BUS"> <!-- geometry and appearance --></Group>
<items> <item> <element type=“Object3D.id”
value=“BUS”/>
<element type=“Semantics…”>
….</element>
</item> …</items>
XS
LT
IntroductionEtat de l’art PropositionExpérimentationConclusions
3DSEAM3DAF3DSDLADAPT3D
32
Interface de communication
Plate-forme de réutilisationRécupérationde propriétés
Récupérationde repères
Attachement dela sémantique
Assemblagede scène
Extraction defragments 3D
Contrôleur de réutilisation
ID et repèresd’objets
par Catégories
Propriétéssémantiques
Fragments3D
Extraction(objID,Locator)
{[Crite
ria1],[Crite
ria2]…}
{[prop_list; ids_list]…}
Ajout sémantique(objID1,…,
objIDN)
AssemblageobjID1,..,
objIDN
1
2
3
4
5
4
6
7
5
7
8
9
11
10
{BUS, xpath://doc(‘campus.x3d’)
//group[DEF=‘BUS’]}
{BUS, gpsCoord}
gpsCoord
{[Appearance!dominantColor=GRAY]} {[Semantics!Geospatial.gpsCoord]}
33
Plan
Introduction État de l’art Proposition
Modèle de description de données 3D (3DSEAM) Une gestion générique des entrepôts 3DSEAM (3DAF) Exploitation de la sémantique dans la réutilisation (3DSDL) Adaptation différenciée des données 3D (ADAPT3D)
Expérimentation Conclusion
34
Adaptation différenciée de données 3D Méthodes d’adaptation
Description au niveau documentaire Catégories d’objets Combiner différentes techniques
dégradation, filtrage, substitution, …
Adaptation à base de règles
IntroductionEtat de l’art PropositionExpérimentationConclusions
3DSEAM3DAF3DSDLADAPT3D
35
Adaptation différenciée de données 3D Règles d’adaptation
Étendue Opérations ensemblistes sur les catégories d’objets
Technique d’adaptation Ensemble extensible de modules d’adaptation
Paramètres d’adaptation
Exemples (Arbres, SUBSTITUTE, [url =“arbres_simples.x3d”] ) (Bâtiments diff UFR, ALTER, [color =$User.preferredColor ])
IntroductionEtat de l’art PropositionExpérimentationConclusions
3DSEAM3DAF3DSDLADAPT3D
36
Adaptation différenciée de données 3D Une architecture extensible (ADAPT3D)
Modèle dedescripteurs
Moteursd’adaptation
Moteurbasique
d’adaptation
autres…
Gestionnaire de documents
X3D
autres…
...
Extraction de fragments
Gestionnairesde documents
<X3D>
Transformationde scène
Adaptation d’objets
Interface de communication
id scène
règles
Interface d’interrogation 3DAF
Contrôleurd’adaptation
Récupérationd’objets
OQL
3DSEAM
Stratégied’adaptation
Stratégieséquentielle
autres…
IntroductionEtat de l’art PropositionExpérimentationConclusions
3DSEAM3DAF3DSDLADAPT3D
37
Plan
Introduction État de l’art Proposition Expérimentation Conclusion
38
for $obj in doc("fragments.mpeg7.xml")//Multimedia["_3DObjectType“= @xsi:type)]
let $loc : = $obj/MediaLocatorlet $s := doc("entities.mpeg7.xml")//Object[@id=$obj/@entity_id] let $categ:=$s/Label[contains(Name/text(),”Catégorisation”)]/Term[contains(Name/text(),”catégorie”)]
where (contains($categ/Definition/text(),‘bâtiment') return <item type=“_3dseam::Object3D.MediaLocator">{$loc}</item>
Expérimentation
Scénario : Modélisation de scènes urbaines Représentation des entrepôts 3DSEAM
Extension de MPEG-7 : pour la localisation 3D Nouveau Description Schema pour Object3D Semantic Base DS pour Semantics
Traduction de 3DSEAM OQL en XQuery
IntroductionEtat de l’art PropositionExpérimentationConclusions
SELECT loc FROM Object3D obj,
MediaLocator(obj) loc, Semantics(obj) s
WHERE s!Catégorisation.catégorie="bâtiment"
39
Expérimentation
Interface de réutilisation et d’adaptationDégradation de type BBOX Dégradation de type SPHERE
Dégradation de type FLAT_2D Dégradation de type FLAT_3D
IntroductionEtat de l’artPropositionExpérimentationConclusions
40
Expérimentation
Catégories d’objets
Category Arbres := {[Semantics!Catégorisation.catégorie="arbre"]}Category Bâtiments := {[Semantics!Catégorisation.catégorie="bâtiment"}
Règles d’adaptation pour l’exclusion des arbres (a)
a) {[ Arbres ], [ EXCLUDE ], [ ]}
IntroductionEtat de l’artPropositionExpérimentationConclusions
41
Expérimentation
Catégories d’objets
Category Arbres := {[Semantics!Catégorisation.catégorie="arbre"]}Category Bâtiments := {[Semantics!Catégorisation.catégorie="bâtiment"}
Règles d’adaptation pour l’exclusion des arbres (a) et la substitution géométrique par la boîte englobante des bâtiments (b)
a) {[ Arbres ], [ EXCLUDE ], [ ]} étendue méthode paramètres b) {[ Bâtiments ], [ DEGRADE_GEOM ], [ type=“BBOX” ]}
IntroductionEtat de l’artPropositionExpérimentationConclusions
42
Plan
Introduction État de l’art Proposition Expérimentation Conclusion
Rappels Bilan Perspectives
43
Conclusion
Rappel des objectifs Espace de partage de données 3D Réutilisation et adaptation déclarative
Rappel des manques de l’EA Sémantique
Caractérisation partielle de données 3D Liée à un type d’encodage spécifique
Réutilisation Individuelle à base d’identifiants
Adaptation Homogène ou à base d’identifiants
IntroductionEtat de l’art PropositionExpérimentationConclusions
RappelsBilanPerspectives
44
Conclusion
Bilan 3DSEAM
L’ensemble de dimensions d’une donnée 3D 3DAF
Indépendance du choix d’encodage 3DSDL
Réutilisation à base de catégories ADAPT3D
Adaptation différenciée suivant les catégories d’objets Expérimentation
Réutilisation et adaptation de scènes 3D urbaines
IntroductionEtat de l’art PropositionExpérimentationConclusions
RappelsBilanPerspectives
45
Conclusion
Perspectives Implémentation
Validation dans contextes différents Passage à l’échelle
Sémantique Règles d’équivalence
Réutilisation Patrons de conception de haut-niveau
Adaptation Calcul des stratégies d’adaptation
IntroductionEtat de l’art PropositionExpérimentationConclusions
RappelsBilanPerspectives
46
Merci pour votre attention!