Notes de cours DEA "Images et Calcul"
Transcription
Notes de cours DEA "Images et Calcul"
Systèmes de Recherche d’Information Systèmes d’Information et de Visualisation Notes de cours DEA Images et Calcul Patrice BOURSIER BASES DE DONNEES RELATIONNELLES "ETENDUES" 1. Introduction Pourquoi des SGBD “étendus” ? a) nouvelles applications, plus complexes que les applications de gestion traditionnelles b) SGBD relationnels insuffisants pour la modélisation des données et des traitements 2. Applications “nouvelles” • CAO (“Computer Aided Design”) : stockage et traitement de données techniques pour la conception -> bâtiments, avions, circuits intégrés, … • CFAO (“Computer Aided Manufacturing”) : CAO couplée avec production • Génie logiciel (“Computer Aided Software Engineering”) : idem CAO pour la conception de logiciels • Bureautique avancée (“Office Automation”) : bureautique étendue au traitement de documents multimédias, au courrier électronique, … • Applications scientifiques, par exemple “Systèmes d’Information Géographique (SIG)” ou “Géomatique” 3. Caractéristiques de ces applications • Nombreux types de données en petit nombre, contrairement aux BD conventionnelles (applications de gestion) • Objets complexes, par exemple avion, bâtiment, carte géographique, …, avec des objets composés d’autres objets • BD évolutives : la conception peut durer plusieurs semaines, mois ou années, avec des mises à jour en continu • Liens entre objets, impliquant des mises à jour “en cascade” • Conception évolutive, avec des “versions” d’objets P. Boursier Notes de cours DEA « Images et Calcul » Page 2 è maintien de plusieurs versions étant parfois nécessaire en simultané (par exemple pour la conception de moteurs de voitures ou d’ailes d’avions) • Possibilité d’avoir plusieurs équipes travaillant en même temps sur différentes parties d’objets éventuellement multi-versions è problèmes de maintien de la cohérence pour le “travail collaboratif” 4. Insuffisances des SGBD relationnels • Rappel : le modèle relationnel est fondé sur un modèle mathématique solide s’appuyant sur la logique des prédicats du premier ordre è il s’appuie sur des concepts simples qui font sa force en même temps que sa faiblesse • Modélisation des entités réelles : les relations ne correspondent pas toujours à des entités du monde réel (notamment pour les objets complexes) è le processus de normalisation et de décomposition des schémas relationnels entraîne la multiplication des relations, et par conséquent des opérations de jointure lors du traitement des requêtes • Surcharge sémantique : le modèle relationnel s’appuie sur un seul concept (la relation) pour modéliser à la fois les entités et les associations / relations entre ces entités è décalage entre la réalité et sa représentation abstraite • Contraintes d’intégrité : les SGBD relationnels sont limités à des contrôles de cohérence simples è difficile de modéliser des contraintes réelles correspondant aux données d’une entreprise. Ce problème n’est que partiellement résolu avec SQL-2 qui permet d’exprimer des contraintes dans la partie langage de définition • Types de données : ils sont limités à des types simples (entiers, réels, chaînes de caractères), les seuls types étendus se limitant à l’expression de dates ou de données financières, ainsi que des conteneurs binaires de grande dimension (“BLOB : Binary Large OBjects”) qui permettent de stocker des images ainsi que des fichiers audios ou vidéos P. Boursier Notes de cours DEA « Images et Calcul » Page 3 è les BLOBs ne sont pas suffisants pour représenter des données complexes (pas de structure), les mécanismes de contrôle BD sont inexistants, et le langage de requêtes (SQL) ne possède pas les opérateurs correspondant aux objets stockés dans ces BLOBs • Langage de manipulation : il est limité aux opérateurs de base du langage SQL, qu’il n’est pas possible d’étendre à de nouveaux opérateurs, même avec SQL-2 • Requêtes récursives : il est possible, avec des requêtes SQL imbriquées, de travailler sur des relations de type parent-enfant, mais il est impossible de travailler sur des relations de type ancêtre (nombre de niveaux inconnu) è pour traiter ce type de problème, les requêtes doivent être insérées dans un langage de programmation (“langage hôte”) • Incompatibilités de types (“impedance mismatch”) : elles apparaissent lors de l’utilisation de SQL dans un langage hôte (pour la représentation des nombres, par exemple) è des conversions sont nécessaires, coûteuses en temps et parfois difficiles à mettre en œuvre • Autre problème : traitement des “transactions de longue durée”, par exemple lors de la conception d’un moteur è le problème peut devenir encore plus complexe s’il s’avère nécessaire de modifier le modèle de données en cours de projet 5. SGBD relationnels étendus • Nombreuses approches proposées, mais toutes du type “relationnel-objet” • Standardisation à partir de la définition du langage SQL-3 : - Types Abstraits de Données (TAD) - Identité d’objet (OID : Object Identifer) - Sous-types et sur-types (héritage) P. Boursier Notes de cours DEA « Images et Calcul » Page 4 - Création de tables, mais aussi de types et d’objets - Langage de manipulation (SQL) étendu par des appels de méthodes P. Boursier Notes de cours DEA « Images et Calcul » Page 5 DONNEES MULTIMEDIAS 1. Types • Données numériques -> valeurs • Données textuelles -> textes scannés • Données graphiques -> plans, schémas, cartes “digitalisées” • Données images -> photos, cartes “scannées” • Données audio -> musique, commentaires sonores • Données vidéo -> dessin animé, séquences vidéo • … goûts, sensations, … ? 2. Caractéristiques • Gros volumes -> giga-octets, tera-octets, … => compression ! • Analogique + numérique -> vers le “tout-numérique” • Informatique + télécommunications + techniques audio-visuelles 3. Historique • Naissance dans les années 80 avec la “vidéo interactive” è stockage de sons, textes, images fixes et vidéo sur des vidéodisques entièrement analogiques • Lancement effectif avec Hypercard (Apple) è stockage d’informations multimédias (vidéo Quicktime première version) dans des “piles de cartes”, et manipulation / navigation par l’intermédiaire de boutons et d’icônes -> intuitif ! è possibilité de piloter des lecteurs de CD-ROM, des vidéodisques, des magnétoscopes, … • Systèmes hypertextes / hypermédias ou “systèmes-auteurs” è Toolbook, Director, Dreamweaver, … P. Boursier Notes de cours DEA « Images et Calcul » Page 6 MODELES DE DONNEES 1. Rappel Niveaux de définition / modélisation des données au sein d’un système d’information : Niveau externe (utilisateur) ê Niveau conceptuel (concepteur, administrateur) ê Niveau logique (SGBD) ê Niveau interne (système de fichiers) 2. Modèles conceptuels • Modèles sémantiques è modèle théorique de base = modèle entité-association (“entityrelationship”), avec de nombreuses variantes et versions commerciales (MERISE, SADT, AMC Designor, …) è insuffisant pour modéliser les applications complexes, notamment les applications multimédias • Modèles orientés-objets è plus riches, mais posent des problèmes de mise en œuvre 3. Modèles logiques (SGBD) • Modèles de première génération : hiérarchique, réseau • Modèle de deuxième génération : relationnel è modèle mathématique basé sur la théorie des ensembles et la logique des prédicats du premier ordre • Modèles de troisième génération : orienté-objet et relationnel-objet P. Boursier Notes de cours DEA « Images et Calcul » Page 7 è à base de types abstraits de données (TAD), concept issu des langages de programmation orientés-objets, à l’origine notamment des notions de classes, d’héritage et d’encapsulation 4. Modélisation des données graphiques Introduction Pour la représentation des contours -> représentation vectorielle (“vectorbased”) • Objets ponctuels, linéaires et surfaciques (points, lignes et polygones) au niveau conceptuel • Arcs et nœ uds au niveau logique • Points (plus système de référence) au niveau physique -> coordonnées (X, Y), plus éventuellement Z (3D) et T (dimension temporelle) Modèles applicatifs • • • Modèles CAO et synthèse d’image - modèle “fil de fer” (2D, 3D) -> modèle élémentaire - modèle BREP (“boundary representation”) -> modèle plus riche prenant en compte la topologie - modèle CSG (“constructive solid geometry”) -> modèle à base de volumes élémentaires Modèles cartographiques - modèle “spaghetti” -> modèle élémentaire - modèle topologique -> modèle plus riche prenant en compte la topologie - modèle réseau -> spécifique pour les données de type réseau Modèles bureautique - Postscript (Adobe) -> modèle de description de pages - Acrobat (Adobe) -> modèle de description de documents multimédias Formats de stockage (et d’échange) pour les données graphiques • DXF : • HP-GL : spécifique Hewlett-Packard P. Boursier standard CAO (Autocad) Notes de cours DEA « Images et Calcul » Page 8 • CGM : dérivé de GKS (normalisé) • IGES : plus complet que GKS • PHIGS : plus complet que GKS • PICT : format de base Apple • EPS : format Postscript Formats cartographiques • DIME : Etats-Unis • TIGER : Etats-Unis (USGS) • SDTS : Etats-Unis • VPF : Etats-Unis (militaires) • NTF : Grande-Bretagne • FEIV : France (IGN) • EdiGeo : Europe Plus les formats spécifiques des éditeurs de logiciels cartographiques : ESRI (Arc/Info), Intergraph, MapInfo, … Avantages de la représentation graphique • Richesse sémantique (représentation d’objets) • Compression “de fait” • Zoom logique / échelle variable Inconvénients de la représentation graphique • Traitements complexes, par exemple superposition de couches d’objets en cartographie • Multiplication des formats -> difficulté des conversions, et risque de perte d’information 5. Modélisation des données graphiques Introduction Pour la représentation des contenus -> représentation matricielle (“cell-based”) P. Boursier Notes de cours DEA « Images et Calcul » Page 9 • Image au niveau conceptuel • Pixels au niveau logique • Valeurs au niveau physique Modèles applicatifs • • Modèles CAO et traitement d’image - pixels -> modèle élémentaire - “quadtrees” -> 2D pyramidal - “octrees” -> 3D pyramidal Modèles géographiques - • Idem CAO pour photographies aériennes et images satellitales Modèles bureautique - Postscript (Adobe) -> modèle de description de pages - Acrobat (Adobe) -> modèle de description de documents multimédias Formats de stockage (et d’échange) pour les données images • PCX : Paintbrush • BMP : Microsoft Windows • GIF : Compuserve, puis Unisys • TIFF : complet, mais complexe • PICT : Apple • EPS : Postscript • FAX : télécopie, transmission de documents N/B Formats géographiques Formats spécifiques des distributeurs d’imagerie satellitale : SPOT, LANDSAT Avantages de la représentation image • Algorithmes de compression efficaces • Compression “de fait” • Zoom physique, simple P. Boursier Notes de cours DEA « Images et Calcul » Page 10 Inconvénients de la représentation graphique • Pauvreté sémantique • Multiplication des formats • Zoom physique, limité 6. Modélisation des images animées et de la vidéo Pas de modèle spécifique, mais des formats de stockage définis par les constructeurs / éditeurs : - Quicktime (fichiers MOV) pour Apple - Video for Windows (fichiers AVI) pour Microsoft Plus le codage MPEG, défini par le groupe d’experts du même nom (“Motion Picture Experts Group”), avec compression basée sur les différences de contenu entre images. 7. Modélisation des données audio Basée sur l’échantillonnage du signal -> codage en modulation par impulsions codées (MIC) ou “pulse code modulation (PCM)” è Codage binaire des valeurs obtenues par échantillonnage du signal (8 ou 16 bits / 11, 22 ou 44 kHz) Compression complémentaire avec des codages différentiels et adaptatifs -> “adaptive differential PCM”. P. Boursier Notes de cours DEA « Images et Calcul » Page 11 INDEXATION DES DONNEES MULTIMEDIAS 1. Données numériques et alpha-numériques Techniques d’indexation standard dans les SGBD è arbres-B (“B-trees”), hachage 2. Données textuelles / documentaires • Indexation manuelle è entrée des mots-clés au vu du texte (possibilité de sélection dans des listes) • Indexation automatique è analyse automatique du texte et sélection de mots-clés en fonction de la fréquence d’apparition des mots et/ou du contexte • Indexation hypertexte è structuration des documents en éléments de base (blocs, paragraphes, images, …), et pose de liens activables entre ces éléments permettant la navigation au sein des documents (analogie avec la recherche à partir du thésaurus dans les encyclopédies) => long travail de structuration et d’établissement des liens ! • Solution alternative à l’indexation : pas d’indexation è recherche en temps réel (en réponse à une requête) sur l’intégralité du texte (recherche “full text”) 3. Images fixes • Indexation manuelle è entrée des mots-clés au vu des photos, avec possibilité de sélection dans des listes (idem indexation du texte) • Indexation automatique è analyse automatique des photos, avec une phase initiale de reconnaissance des formes, puis une phase d’analyse de scène (comparaison à des modèles prédéfinis) permettant de sélectionner des mots-clés à partir d’une liste P. Boursier Notes de cours DEA « Images et Calcul » Page 12 ! • cette solution ne marche bien que dans des applications spécifiques, lorsque le contexte est connu et limité (ex : photos d’aéroports, choix de pièces dans un stock) Solution alternative à l’indexation : pas d’indexation è recherche en temps réel en réponse à une requête -> pas possible en l’état actuel des techniques disponibles et des capacités matérielles, sauf dans un contexte spécifique (cf. ci-dessus) 4. Images animées et vidéo Double indexation, par le contenu et par la durée : identification de séquences en fonction des objets apparaissant sur les images (cf. indexation d’images fixes) è encore du domaine de la recherche 5. Systèmes hypertextes / hypermédias Solution alternative à l’indexation. Structuration des documents en éléments de base (blocs, paragraphes, images, …), et pose de liens activables entre ces éléments : è manipulation interactive et intuitive à l’aide de boutons réactifs, avec navigation au sein des documents (analogie avec la recherche à partir du thésaurus dans les encyclopédies) => long travail de structuration et d’établissement des liens ! P. Boursier Notes de cours DEA « Images et Calcul » Page 13 INTERFACES - UTILISATEURS 1. Langages de requêtes • Langages de requêtes SGBD è SQL (Structured Query Language) è QBE (Query By Example) • Extension aux bases de données images è ISQL (Image SQL), QPE (Query by Pictorial Example) : langages définis pour des applications spécifiques, et manquant donc de généralité • Evolution du langage SQL : prise en compte des applications “complexes” et des approches de type objet è SQL-2 (1992), SQL-3 (1999 ?) • Langages de requêtes à objets è OQL (Object Query Language), normalisé par l’Object Management Group (OMG) 2. Langages visuels / graphiques Adaptation des langages de requêtes aux interfaces graphiques è interfaces de requêtes à base de fenêtres, icônes, souris, menus 3. Langage naturel Le plus facile à utiliser par le grand public, mais pas encore possible en dehors d’applications spécifiques où le contexte est connu et le vocabulaire limité. Pas toujours adapté aux applications multimédias, sauf en complément d’autres moyens d’interaction visuelle / graphique. 4. Réalité virtuelle • Origine : simulateurs de vol (dans les années 70) P. Boursier Notes de cours DEA « Images et Calcul » Page 14 • Principe : interface multimodale, destinée à placer l’utilisateur autant que possible (en fonction de la puissance des machines utilisées) dans un univers virtuel proche de l’application • Différents moyens d’interaction è gant sensitif, casque de vision et d’interaction visuelle, costumes équipés de capteurs • Potentiellement très puissant, mais limité par les besoins de calcul très importants pour atteindre un réalisme suffisant P. Boursier Notes de cours DEA « Images et Calcul » Page 15