Méthodes génériques de compression



Documents pareils
Formats d images. 1 Introduction

Compression Compression par dictionnaires

TD : Codage des images

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

note technique 1RWLRQVVXUODFRPSUHVVLRQ GHVGRQQpHVGDQV OHVDSSOLFDWLRQVPXOWLPpGLDV Direction de l'ingénierie éducative

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Chapitre 10 Arithmétique réelle

Chap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1

TS 35 Numériser. Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S


ELP 304 : Électronique Numérique. Cours 1 Introduction

Informatique Générale

GPA770 Microélectronique appliquée Exercices série A

Algorithme. Table des matières

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

Représentation d un entier en base b

Compression et Transmission des Signaux. Samson LASAULCE Laboratoire des Signaux et Systèmes, Gif/Yvette

CH.6 Propriétés des langages non contextuels

1 Introduction au codage

Le signal GPS. Les horloges atomiques à bord des satellites GPS produisent une fréquence fondamentale f o = Mhz

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est:

J AUVRAY Systèmes Electroniques TRANSMISSION DES SIGNAUX NUMERIQUES : SIGNAUX EN BANDE DE BASE

Représentation des Nombres

Chapitre IX. L intégration de données. Les entrepôts de données (Data Warehouses) Motivation. Le problème

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Continuité et dérivabilité d une fonction

Algèbre binaire et Circuits logiques ( )

Technique de compression des images médicales 4D

Equipement. électronique

Capacité d un canal Second Théorème de Shannon. Théorie de l information 1/34

Base de Connaissances SiteAudit. Utiliser les Rapports Planifiés. Sommaire des Fonctionnalités. Les Nouveautés

1 Introduction à l infrastructure Active Directory et réseau

Résolution d équations non linéaires

Les structures de données. Rajae El Ouazzani

Programmation C. Apprendre à développer des programmes simples dans le langage C

Chimie et physique informatiques

Evaluation des performances de programmes parallèles haut niveau à base de squelettes

IFT3245. Simulation et modèles

t 100. = 8 ; le pourcentage de réduction est : 8 % 1 t Le pourcentage d'évolution (appelé aussi taux d'évolution) est le nombre :

Codage d information. Codage d information : -Définition-

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Industrie des cartes de paiement (PCI) Norme de sécurité des données Récapitulatif des modifications de

RESEAUX TCP/IP: NOTIONS AVANCEES. Preparé par Alberto EscuderoPascual

Séries Statistiques Simples

Transmission d informations sur le réseau électrique

L utilisation d un réseau de neurones pour optimiser la gestion d un firewall

programmation S initier à la la Avec des exemples en C, C++, C#, Java et PHP Avec des exemples en C, C++, C#, Java et PHP Claude Delannoy

Quelques tests de primalité

Sauvegarde collaborative entre pairs Ludovic Courtès LAAS-CNRS

ISO/CEI NORME INTERNATIONALE

EP A1 (19) (11) EP A1 (12) DEMANDE DE BREVET EUROPEEN. (43) Date de publication: Bulletin 2011/26

Cours de Master Recherche

Initiation. àl algorithmique et à la programmation. en C

23. Interprétation clinique des mesures de l effet traitement

neobe Backup Tel service de télésauvegarde informatique LE PARTENAIRE SECURITE DE VOTRE ENTREPRISE

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Chapitre 7. Récurrences

ASR1 TD7 : Un microprocesseur RISC 16 bits

ALGORITHMIQUE ET PROGRAMMATION En C

Dérivation : cours. Dérivation dans R

La haute disponibilité

MATHÉMATIQUES DISCRÈTES (4) CRYPTOGRAPHIE CLASSIQUE

Logiciel de Base. I. Représentation des nombres

Fiche d animation n 1 : Pêle-mêle

Optimisation, traitement d image et éclipse de Soleil

Structure du format BMP, sa lecture, sa construction et son écriture

Gestion de données avec les bibliothèques Final Cut Pro X. Livre blanc Juin 2014

Programmation parallèle et distribuée

chapitre 4 Nombres de Catalan

Backup. Solution de sauvegarde en ligne pour les professionnels LE PARTENAIRE SECURITE DE VOTRE ENTREPRISE!

Oscillations libres des systèmes à deux degrés de liberté

Améliorez votre référencement

Cryptographie Quantique

Groupe Eyrolles, 2004, ISBN :

INTRODUCTION A L ELECTRONIQUE NUMERIQUE ECHANTILLONNAGE ET QUANTIFICATION I. ARCHITECTURE DE L ELECRONIQUE NUMERIQUE

Enregistrement et transformation du son. S. Natkin Novembre 2001

Limites finies en un point

Tout savoir sur le matériel informatique

TIC. Tout d abord. Objectifs. L information et l ordinateur. TC IUT Montpellier

Sur trois couches, on obtient donc 2563 = de couleurs, soit 24bpp (Bit Per Pixel).

UML Diagramme de communication (communication diagram) Emmanuel Pichon 2013

USTL - Licence ST-A 1ère année Codage de l information TP 1 :

Chapitre 13 Numérisation de l information

1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :

MIS 102 Initiation à l Informatique

Chapitre 5 : Flot maximal dans un graphe

Programmation parallèle et distribuée

Développement itératif, évolutif et agile

La mémoire. Un ordinateur. L'octet. Le bit

Sécuristation du Cloud

Evolutions du guichet de la fédération et gestion des métadonnées SAML

Découverte de réseaux IPv6

Architecture de l ordinateur

Système binaire. Algèbre booléenne

L assurance de la qualité à votre service

Transcription:

Méthodes génériques de compression 1/28 Méthodes génériques de compression Théorie des réseaux nils.schaefer@sn-i.fr

Méthodes génériques de compression 2/28 Intérêt de la compression Facteur économique Temps, espace de stockage et transfert Exemple Dictionnaire Représentation du mot par le signe ~ Antécédents historiques Suppression des voyelles sur les parchemins

Méthodes génériques de compression 3/28 Méthodes conservatives Méthodes de compression qui permettent une restitution totale de l information compressée Absolument aucune perte d information Méthodes génériques qui peuvent être utilisée sur tous les types de données Plus ou moins efficace

Méthodes génériques de compression 4/28 Principe simple Méthode RLE (1) Remplacement d une série de n symboles s par le couple (n,s) Exemple 255, 255, 255, 166, 189, 189, 189, 189 (3, 255), (1,166), (4,189) Adapté aux images dont la profondeur de couleur est relativement faible

Méthodes génériques de compression 5/28 Méthode RLE (2) Méthode rarement efficace sur des fichiers quelconques Exemple défavorable 245, 123, 45, 68, 56, 123, 56, 68 (1, 248), (1, 123), (1, 45), (1, 68), (1, 56), (1, 123), (1, 56), (1, 68)

Méthodes génériques de compression 6/28 Méthode de Huffman (1) Inventée en 1952 par David Huffman Méthode basée sur l inégalité des fréquences d apparition des données dans un fichier Codage des données apparaissant souvent avec un code court et des données rares avec un code long

Méthodes génériques de compression 7/28 Méthode de Huffman (2) Algorithme de compression Etablir une table des fréquences d apparition Construire l arbre de Huffman Prise en compte des symboles Prise en compte des fréquences d apparition Codage du fichier Remplacement de l ancien code des symboles par le nouveau obtenu grâce à l arbre de Huffman

Méthodes génériques de compression 8/28 Méthode de Huffman (3) Exemple Considérons la chaîne de caractères suivante AABCAABADBACAAB (15 caractères) Chaque caractère est codé sur 2 bits A : 00 B : 01 C : 10 D : 11 Codage de la chaîne de caractère 00 00 01 10 00 00 01 00 11 01 00 10 00 00 01

Méthodes génériques de compression 9/28 Exemple (suite) Méthode de Huffman (4) On calcule les fréquences d apparition 8 occurrences pour le A 4 occurrences pour le B 2 occurrences pour le C 1 occurrence pour le D Construction de l arbre de Huffman

Méthodes génériques de compression 10/28 Exemple (suite) Méthode de Huffman (5) Il faut relier les deux caractères de plus petites fréquences

Méthodes génériques de compression 11/28 Exemple (suite) Méthode de Huffman (6) On obtient finalement notre arbre de Huffman

Méthodes génériques de compression 12/28 Exemple (suite) Méthode de Huffman (7) Déduction du code des caractères Parcours depuis la racine jusqu au caractère

Méthodes génériques de compression 13/28 Exemple (suite) Méthode de Huffman (8) Codage des caractères A : 0 B : 10 C : 110 D : 111 Codage de la chaîne 0 0 10 110 0 0 10 0 111 10 0 110 0 0 10 25 bits au lieu de 30 bits

Méthodes génériques de compression 14/28 Exemple (suite) Méthode de Huffman (9) On obtient une compression de (30-25)/30=16,67% Le taux de compression est de 30/25=1,2 Il faut toutefois inclure l arbre de Huffman dans le fichier compressé pour pouvoir réaliser la décompression

Méthodes génériques de compression 15/28 Méthode de Huffman (10) Algorithme de décompression Reconstruction de l arbre de Huffman Données présentes dans l en-tête du fichier Lecture séquentielle des bits du fichier compressé en parcourant l arbre de Huffman en réalisant le remplacement des séquences

Méthodes génériques de compression 16/28 Méthode de Huffman (11) Méthode de compression statistique Différentes adaptations Méthode de Huffman non adaptative Basée sur une arbre de Huffman fixe Peu utilisée Méthode de Huffman semi-adaptative Table des fréquences Utilisation sur des fichiers Méthode de Huffman adaptative Evolution de l arbre au cours de la compression Utilisable sur des flux de données

Méthodes génériques de compression 17/28 Compression arithmétique (1) Méthode de compression statistique basée sur l utilisation des réels Méthode basée sur l utilisation récursive d un intervalle partitionné en fonction des fréquences d apparition des symboles Un nombre réel va permet de coder toute une suite de symboles

Méthodes génériques de compression 18/28 Exemple Compression arithmétique (2) Considérons la chaîne de caractères suivante XYXZXTXYXTXZXYXY (16 caractères) Fréquences d apparition 8 occurrences pour le X 4 occurrences pour le Y 2 occurrences pour le Z 2 occurrences pour le T

Méthodes génériques de compression 19/28 Compression arithmétique (3) Exemple (suite) On peut donc considérer l intervalle suivant Le premier caractère de la suite sera codé en fonction de cet intervalle Le réel devra être entre 0 et 0,5 pour un X Le réel devra être entre 0,5 et 0,75 pour Y Le réel devra être entre 0,75 et 0,875 pour Z Le réel devra être entre 0,875 et 1 pour T

Méthodes génériques de compression 20/28 Compression arithmétique (4) Exemple (suite) Le premier caractère est un X, on obtient donc l intervalle suivant Le deuxième caractère est un Y

Méthodes génériques de compression 21/28 Compression arithmétique (5) Exemple (suite) Le troisième caractère est un X Il faut continuer ainsi pour toute la suite On obtiendra à la fin un intervalle très étroit Il faudra prendre une valeur au choix dans cet intervalle

Méthodes génériques de compression 22/28 Compression arithmétique (6) D un point de vue théorique il est possible coder une infinité de symboles avec un seul réel D un point de vue pratique il faut prendre en considération la précision des nombres réels utilisés

Méthodes génériques de compression 23/28 Méthode LZ (1) Inventée en 1978 par Lempel et Ziv Méthode basé sur le remplacement d une souschaîne de caractères par un pointeur sur une chaîne déjà existante [retour_arrière,symboles_à_recopier] Cette méthode se base sur la redondance de suite de caractères

Méthodes génériques de compression 24/28 Exemple Méthode LZ (2) Considérons la chaîne de caractères suivante DES_BARS_ET_DES_BARBARES Le codage va se dérouler progressivement DES_BARS_ET_ La chaîne DES_BAR existe déjà DES_BARS_ET_[12,7] La chaîne BAR existe déjà DES_BARS_ET_[12,7][3,3]ES

Méthodes génériques de compression 25/28 Méthode LZW (1) Inventée en 1984 par Welch Basée sur la méthode LZ Construction d un dictionnaire de manière automatique Le dictionnaire n a pas besoin d être présent dans le fichier compressé Possibilité d avoir un dictionnaire de grande taille

Méthodes génériques de compression 26/28 Exemple Méthode LZW (2) /WED/WE/WEE/WEB/WET

Méthodes génériques de compression 27/28 Implémentation Les méthodes de compression ont été abordées de manière théorique L implémentation des ces différentes méthodes sur un système informatique pose des problèmes supplémentaires Codage des informations Réglage des paramètres

Méthodes génériques de compression 28/28 Quelle méthode utiliser? Choix en fonction des besoins en place Taux de compression élevé (Archivage) Choix en fonction des besoins en temps Temps de compression faible (Temps réel) Choix en fonction des objets à compresser Fichiers ou flux de données