Compression d images par ondelettes

Documents pareils
Codage hiérarchique et multirésolution (JPEG 2000) Codage Vidéo. Représentation de la couleur. Codage canal et codes correcteurs d erreur

ISO/CEI NORME INTERNATIONALE

Technique de compression des images médicales 4D

Livrable 2.1 Rapport d analyse et de restructuration de code monothread des modules P, T, Q et F de l encodage MPEG-4 AVC

Approche par marquage pour l évaluation de la qualité d image dans les applications multimédias

DEVANT L UNIVERSITE DE RENNES 1

Transmission d informations sur le réseau électrique

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Projet de Traitement du Signal Segmentation d images SAR

Un schéma de compression avec pertes efficace pour les images médicales volumiques

Traitement bas-niveau

Contexte et motivations Les techniques envisagées Evolution des processus Conclusion

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

Chaine de transmission

Conversion d un entier. Méthode par soustraction

Chapitre 10 Arithmétique réelle

Compression scalable d'images vidéo par ondelettes 2D+t

Technique de codage des formes d'ondes

L analyse d images regroupe plusieurs disciplines que l on classe en deux catégories :

UE 503 L3 MIAGE. Initiation Réseau et Programmation Web La couche physique. A. Belaïd

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

Enregistrement et transformation du son. S. Natkin Novembre 2001

Communications immersives : Enjeux et perspectives

Groupe Eyrolles, 2000, 2004, ISBN :

Théorie et codage de l information

Bandes Critiques et Masquage

Quantification Scalaire et Prédictive

M1 Informatique, Réseaux Cours 9 : Réseaux pour le multimédia

Analyse de la vidéo. Chapitre La modélisation pour le suivi d objet. 10 mars Chapitre La modélisation d objet 1 / 57

Formats d images. 1 Introduction

Coup de Projecteur sur les Réseaux de Neurones

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

QoS et Multimédia SIR / RTS. Introduction / Architecture des applications multimédia communicantes

Systèmes de communications numériques 2

Université de La Rochelle. Réseaux TD n 6

LES DIFFÉRENTS FORMATS AUDIO NUMÉRIQUES

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

En DV (PAL ou NTSC), la largeur est toujours de 720 pixels, c'est la proportion du pixel qui change la proportion de l'image.

Logiciel Libre Cours 3 Fondements: Génie Logiciel

TP Modulation Démodulation BPSK

Optimisation de la compression fractale D images basée sur les réseaux de neurones

Les techniques de multiplexage

Systèmes de transmission

Information. BASES LITTERAIRES Etre capable de répondre à une question du type «la valeur trouvée respecte t-elle le cahier des charges?

Glossaire technique Veditec

Hiver 2013 IMN 259. Introduction à l analyse d images. Par Pierre-Marc Jodoin

ARBRES BINAIRES DE RECHERCHE

nom : Collège Ste Clotilde

1 Introduction au codage

La couche physique de l ADSL (voie descendante)

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

Principe de symétrisation pour la construction d un test adaptatif

Informatique Générale

Fiche technique CPU 314SC/DPM (314-6CG13)

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

Architecture des ordinateurs

Bases de programmation. Cours 5. Structurer les données

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

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

NORMES DE LIVRAISON DES MESSAGES PUBLICITAIRES ET MESSAGES D INTÉRÊT PUBLIC COMMERCIAUX APTN

Cinéma Numérique : État de l art d un point de vue Art et Essai

Ordonnancement temps réel

TABLE DES MATIÈRES. PRINCIPES D EXPÉRIMENTATION Planification des expériences et analyse de leurs résultats. Pierre Dagnelie

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

LES CARACTERISTIQUES DES SUPPORTS DE TRANSMISSION

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

«Le Dolby Digital 5.1 et les tests en champ libre par ordinateur»

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

Initiation à linfographie

ASR1 TD7 : Un microprocesseur RISC 16 bits


Cryptographie Quantique

Object Removal by Exemplar-Based Inpainting

0x700. Cryptologie Pearson France Techniques de hacking, 2e éd. Jon Erickson

Géométrie discrète Chapitre V

Codage vidéo par block matching adaptatif

Intérêt du découpage en sous-bandes pour l analyse spectrale

Comparaison de Relevés 3D issus de plusieurs Systèmes de Numérisation

Cours de Systèmes d Exploitation

Extrait des Exploitations Pédagogiques

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

Interception des signaux issus de communications MIMO

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

Transmission des signaux numériques

Echantillonnage Non uniforme

MÉTHODOLOGIE PROJET SYSTÈME D INFORMATION DÉCISIONNEL BI - BUSINESS INTELLIGENCE. En résumé :


Master IMA - UMPC Paris 6 RDMM - Année Fiche de TP

Chap17 - CORRECTİON DES EXERCİCES

Algorithmique et Programmation, IMA

1 THALES Land & Joint Systems, EDS/SPM WaveForm Design group

Création de maquette web

Communications numériques

La classification automatique de données quantitatives

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

Introduction à MATLAB R

Hiérarchie matériel dans le monde informatique. Architecture d ordinateur : introduction. Hiérarchie matériel dans le monde informatique

Représentation des Nombres

10ème Congrès Français d'acoustique Lyon, Avril 2010

Transcription:

Compression d images par ondelettes SI 222 Techniques de Compression Frédéric Dufaux 02/02/2011

Table des matières Techniques de codage basées sur la T.O. Algorithme EZW Caractéristiques Algorithme JPEG 2000 Caractéristiques Algorithme: EBCOT Codage des ROI (region of interest) Exemples Parties II et III page 2

Techniques de codage basées sur la T.O. Pourquoi utiliser la T.O.? Limites de la TCD : représentation des contours à faible débits ; effets de bloc T.O. : bon modèle du signal - bonne résolution spatiale à haute fréquence - bonne résolution fréquentielle à basse fréquence Meilleure concentration de l énergie Absence d effets de blocs Description à résolutions multiples page 3

Stratégies de codage Méthodes ne prenant pas en compte les spécificités de l AMR Allocation de bits entre les sous-bandes Quantification dans chaque sous-bande (quantificateur optimal de Lloyd-Max adapté) Codage entropique (ex. : Huffmann), éventuellement contextuel Avantage : corrélations intra-bande bien exploitées (une QV peut encore améliorer l efficacité!) Inconvénient : on n exploite pas les corrélations résiduelles inter-bandes! page 4

Stratégies de codage Méthodes exploitant les dépendances hiérarchiques entre les coefficients : EZW (Embedded Zerotrees of Wavelet coefficients), SPIHT (Set Partitioning in Hierarchical Trees) Méthodes basées sur une représentation par arbres des dépendances entre les sous-bandes Avantages : corrélations inter-bande bien exploitées, faible complexité Inconvénient : plus difficile obtenir la scalabilité en résolution page 5

Algorithme EZW Caractéristiques principales Scalabilité en qualité, c est-à-dire représentation progressive Codage lossy-to-lossless Faible complexité Performance de compression bien meilleure que JPEG Très évident aux faibles débits page 6

Représentation progressive des coefficients d ondelette Chaque nouveau bit de codage donne le maximum d information c est-à-dire Chaque nouveau bit de codage réduit la distorsion de l image reconstruite le plus possible On transmet d abord les coefficients significatifs Problème: overhead de localisation page 7

Exemple: un image et ses coefficients d ondelette Bande LL : approximation Bande HL Détails verticaux Approximation Détails verticaux TO encore 2 niveaux Bande LH Détails horizontaux Bande HH Détails diagonaux Détails horizontaux Détails diagonaux page 8

Représentation progressive: ordre des sous-bandes page 9

Algorithme EZW Le seule ordre de bayalage des sous bandes n est pas suffisant pour garantir que les coefficients plus grands soient envoyés en premiers Il faut localiser les coefficients significatifs Problème : Réduction de l information de localisation Idée : Exploiter la corrélation inter-bande pour prévoir les coefficients non-significatifs Si la prédiction est correcte, on économise la description de beaucoup de coefficients page 10

Arbre de coefficients d ondelette page 11

Arbre de coefficients d ondelette c n,m descendants de c n,m page 12

Arbre de coefficients d ondelette c n,m descendants de c n,m page 13

Idée de EZW Quand un coefficients est petit (c.-à-d. sous seuil), il est probable que tout ses descendants soient petits aussi Alors on utilise un seul symbole de codage pour représenter un coefficient c tel que : c est non significatif tous ses descendant sont non significatif En ce cas c est une racine d arbre de zéros (zero-tree root) Avec un seul symbole (ZT) on code (1+4+4 2 + 4 N-n ) coefficients Information de localisation implicite dans l information de significativité page 14

Schéma de l algorithme EZW k = 0 n = floor(log 2 ( c max )) T k = 2 n while (débit < débit disponible) Pas dominant Pas de raffinement T k+1 T k /2 k++ end page 15

Pas dominant Balayage des coefficients Si c > T n Coefficient significatif Si c>0 on encode SP (significant positive) Si c<0 on encode SN (significant negative) sinon, on compare tous les descendants de c avec le seuil si tous les descendants sont non-significatifs, c est codé comme zero-tree root (ZT) et ses descendants ne seront plut considérés à ce pas sinon le coefficient est codé comme isolated zero (IZ) page 16

Pas de raffinement On code un ultérieur bit pour tous les coefficients significatifs C est équivalent à dire que on réduit de moitié la cellule de quantification des coefficients significatifs page 17

Itération et terminaison Le pas dominant k permet de coder le k-me plan de bit de la matrice des coefficients d ondelette Au fait, dire que un coefficient est significatif est équivalent à dire que 2 n < c < 2 n+1 On réduit le seuil de moitié : on passe au prochaine plan de bit L algorithme termine quand on a épuisé le nombre de bit disponible ou quand on a codé tous les plans de bit (transformée en entière, codage sans perte) page 18

Quantification équivalente en EZW Pas dominant 1: coefficients entre -2T 0 e 2T 0 valeurs de reconstruction: - SP 3/2 T 0 - SN -3/2 T 0 - IZ, ZT 0-2T 0 -T 0 0 T 0 2T 0 page 19

Quantification équivalente en EZW Pas de raffinement 1: Cellules de quantification réduites de moitié -2T 0 -T 0 0 T 0 2T 0 page 20

Quantification équivalente en EZW Pas dominant 2: coefficients entre -T 0 e T 0 Seuil : T 0 /2 - SP 3/4 T 0 - SN -3/4 T 0 - IZ, ZT 0-2T 0 -T 0 -T 0 /2 0 T 0 /2 T 0 2T 0 page 21

Quantification équivalente en EZW Pas de raffinement 2: Cellules de quantification des coefficients signifiants réduites de moitié -2T 0 -T 0 -T 0 /2 0 T 0 /2 T 0 2T 0 page 22

Algorithme EZW Codage par plan de bits : Au pas k on code le bit plane log 2 T k Description progressive : Chaque nouveau plan de bit permet de raffiner la quantification des coefficients Codage entropique (Huffman ou arithmétique) des symboles de significativité Codage lossless-to-lossy On utilise une transformée en entiers (tous coefficients entiers) Quand on code tous les plans de bit, on peut reconstruire parfaitement tous les coefficients page 23

Le standard JPEG2000 JPEG : Joint Photographic Experts Group But : compression numérique des images fixes Organismes de standardisation : ISO et ITU-T Partie I : Core coding system Partie II : Extensions (TCQ, images multi-composants, ) Partie III : Motion JPEG2000 Partie IV : Conformance Partie V : Reference Software Partie VI : Compound images Partie VII : Abandonnée Partie VIII : JPSEC Partie IX : JPIP Partie X : JP3D Partie XI : JPWL Partie XII : ISO Base Media File Format / MPEG-4 page 24

Pourquoi un nouveau standard de compression d images? JPEG2000 vise des domaines où les standards courants ne donnent pas les meilleures performances : Compression bas débit : qualité faible pour JPEG en dessous de 0.25 bpp Codage Lossless-to-lossy : fournir un seul flux de données, pour des qualités allant de sans perte à une forte dégradation Compression d images synthétiques : JPEG conçu pour la compression d images naturelles et peu performant sur des images de synthèse Transmission dans des environnements bruités : la qualité d une image JPEG se dégrade fortement quand des pertes de bits interviennent page 25

Pourquoi un nouveau standard de compression d images? Documents composés : JPEG peu performant sur des documents binaires (texte) Accès aléatoire : JPEG peu flexible Architecture ouverte : le système peut être optimisé pour différents types d images et d applications Transmission progressive en qualité et en résolution En conclusion, JPEG2000, standard international (IS) depuis 2001, a pour objectif de compléter et pas de remplacer le standard JPEG page 26

Marchés et Applications 1. Internet 2. Mobiles 3. Imprimantes 4. Scanners 5. e-commerce 6. Caméras numériques 7. Fac-simile 8. Librairies numériques 9. Imagerie médicale 10. Imagerie satellitaire page 27

Principales différences entre JPEG2000 et JPEG Nouvelles fonctionnalités : Codage des régions d intérêt Robustesse aux erreurs Scalabilité en qualité et en résolution Tiling Capacité d atteindre un débit donné Du codage sans perte au codage avec perte dans un seul système Meilleure compression à bas débit Complexité plus élevée page 28

Description de l algorithme Transformation en ondelettes Partition en blocs EBCOT: Quantification Codage entropique Allocation de débit (optimisation RD) Ondelettes utilisées : mode sans perte : biorthogonales 5/3 (lifting entiers vers des entiers) mode avec perte : Daubechies biorthogonales 9/7 page 29

L algorithme EBCOT (Embedded Block Coding with Optimized Truncation) Chaque sous-bande est repartie en plusieurs blocs de même taille exception possible : blocs sur les bords Les blocs sont codés indépendamment, sans perte, avec un codeur arithmétique : on génère n trains binaires Pour chaque bloc, il est possible d estimer la courbe débit-distorsion Ondelettes orthogonales? page 30

L algorithme EBCOT (Embedded Block Coding with Optimized Truncation) page 31

L algorithme EBCOT (Embedded Block Coding with Optimized Truncation) page 32

L algorithme EBCOT (Embedded Block Coding with Optimized Truncation) Pour obtenir un certain débit total, les trains binaires doivent être coupés Comment couper les trains binaires? R i = R T /N simple mais sous optimale Solution optimale? Problème : minimisation de la distorsion totale avec contrainte sur le débit D Di R i R T page 33

L algorithme EBCOT (Embedded Block Coding with Optimized Truncation) Méthode de Lagrange : minimisation de J Di R. i R T Le débit de codage du bloc i est tel que : dd dr i i page 34

L algorithme EBCOT (Embedded Block Coding with Optimized Truncation) L optimisation débit-distorsion finale détermine le point de coupure de chaque flux binaire de bloc Bloc avec grandes valeurs Débit plus important Les points de coupure optimaux sont des points où les courbes RD des blocs ont la même pente On peut déterminer plusieurs points de coupure, correspondants à plusieurs débit totaux Le bitstream global est ainsi formé d un ensemble de couches (layers) page 35

L algorithme EBCOT (Embedded Block Coding with Optimized Truncation) Layer 1, λ 1 page 36

L algorithme EBCOT (Embedded Block Coding with Optimized Truncation) Layer 2, λ 2 page 37

Etapes de codage avec EBCOT Tier 1 : génération des flux binaires progressifs par bloc, avec information RD Codeur arithmétique basé sur les contextes Tier 2 : création des couches de qualité et codage de l information RD Optimisation RD Attention : Optimisation RD non normative! page 38

Pourquoi un codage par bloc? Exploite les variations locales, d un bloc à l autre, des caractéristiques statistiques de l image Facilite les applications nécessitant un accès aléatoire dans l image Réduit l utilisation mémoire dans l implantation matérielle du codeur ou décodeur Permet une implantation parallèle Effet de bloc? page 39

Codage des régions d intérêt Certaines régions de l image doivent avoir une meilleure qualité Statique : la région est décidée et encodée dès le début, côté encodeur Dynamique : la région est décidée et peut être décodée en ligne à partir d un seul bitstream Masque de la région Masque binaire, définit les pixel de la ROI et du background La masque est définie sur l image dans le domaine spatial, mais selon le filtre utilisé, on évalue sa forme dans le domaine transformé page 40

Codage des régions d intérêt page 41

Méthode de mise à l échelle (general scaling) Les coefficients d ondelettes correspondant à la ROI sont multipliés par une constante s La distorsion associé alla ROI est artificiellement plus grande Un surplus de ressources est donné à la ROI Le background n est pas modifié On peut avoir plusieurs ROI, chacune avec son s Les valeurs de s sont stockées dans le bitstream La masque de la ROI est nécessaire au codage et au décodage page 42

Codage des régions d intérêt Méthode MAXSHIFT : tous les coefficients de la ROI sont translatés au-dessus des coefficients du background La ROI est codée avant tout autre région Au décodeur un simple seuil est utilisé pour reconnaître la ROI Aucune information sur la ROI doit être insérée dans le train binaire page 43

Codage des régions d intérêt Méthode de mise à l échelle (general scaling) Avantages : La qualité relative entre ROI et background peut être choisie arbitrairement On peut utiliser plusieurs ROI avec différentes qualités Inconvénients : Seulement formes rectangulaire ou circulaire Nécessaire envoyer la forme de la ROI Complexité supplémentaire au décodeur (décodage de forme) Supportée seulement dans la partie II page 44

Codage des régions d intérêt Méthode MAXSHIFT Avantages Pas besoin d envoyer l information de forme Pas besoin de concevoir un encodeur/décodeur de formes Forme de la ROI quelconque Inconvénients Une seule ROI On peut pas modifier la qualité relative de ROI et BG Augmentation du débit avec MAXSHIFT par rapport à non- ROI pour un codage sans perte : région rectangulaire : inf. à 2% région circulaire 25% de l image : inf. à 10% page 45

Pondération psycho-visuelle Exploite la connaissance de la sensibilité du système visuel, variable en fonction des fréquences spatiales mesurée par la CSF (Contrast Sensitivity Function) CSF déterminée par la fréquence spatiale des coefficients d ondelettes : une valeur par sous-bande La pondération CSF est déterminée par l encodeur, mais dépend des conditions de visualisation au décodeur Deux situations : FVW (Fixed Visual Weighting) : CSF choisies en fonction des conditions de visualisation finales PVC (Progressive Visual Coding) : les pondérations visuelles sont changées au cours du processus d encodage page 46

Robustesse aux erreurs Niveau du codage entropique Code blocks Réinitialisation du codeur à chaque pas Symboles de synchronisation Niveau des paquets Petits paquets Symboles de synchronisation page 47

Scalabilité en qualité page 48

Scalabilité en qualité page 49

Scalabilité en qualité page 50

Scalabilité en qualité page 51

Scalabilité en résolution page 52

Scalabilité en résolution page 53

Scalabilité en résolution page 54

Scalabilité en résolution page 55

Le standard JPEG2000 Partie II Trellis coded quantization Améliore les performances de compression Visual masking Traitement non-lineaire qui exploite les effet de masquage visuel Décomposition ondelettes arbitraire Filtres ondelettes arbitraires Multiple component transform Pour image à plusieurs composantes ROI avec la méthode General Scaling page 56

Le standard JPEG2000 Partie III Motion JPEG2000 Chaque image de la vidéo est codée indépendamment des autres avec JPEG2000 partie I Faible complexité par rapport à codeurs vidéo basés sur la estimation/compensation du mouvement Performance de compression inférieure aux codeurs avec ME/MC Robustesse aux erreurs (pas de dépendance entre images) page 57