Compression d images : pourquoi, comment? Aline ROUMY Chercheur, INRIA Rennes

Documents pareils
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

Chap17 - CORRECTİON DES EXERCİCES

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

TD : Codage des images

Multimedia. Systèmes, Communications et Applications. Ahmed MEHAOUA

ISO/CEI NORME INTERNATIONALE

2. Couche physique (Couche 1 OSI et TCP/IP)

Chapitre 13 Numérisation de l information

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.

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

H.323. Internet Multimédia. Sommaire

Outils permettant la diffusion de l information. Un point sur le droit numérique

Formats d images. 1 Introduction

Chapitre 22 : (Cours) Numérisation, transmission, et stockage de l information

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

Numérisation du signal

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

Tuto pour connecter une source RVB RGB à un moniteur Commodore / Amiga

FORMATS DE FICHIERS. Quels sont les différents types d informations numériques dans un document multimédia?

STI 20 Édition 3 /Novembre 2002

Chapitre 18 : Transmettre et stocker de l information

Enregistrement et transformation du son. S. Natkin Novembre 2001

Traitement numérique de l'image. Raphaël Isdant

JPEG, PNG, PDF, CMJN, HTML, Préparez-vous à communiquer!

Fête de la science Initiation au traitement des images

Analyse d images. Edmond.Boyer@imag.fr. Edmond Boyer UFRIMA 1

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

TP SIN Traitement d image

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

Errata et mises à jour

1 Introduction au codage

LES DIFFÉRENTS FORMATS AUDIO NUMÉRIQUES

DEVANT L UNIVERSITE DE RENNES 1

Maintenir un service de traitement de son ou d image d ordinateur

Ecran : Processeur : OS : Caméra : Communication : Mémoire : Connectique : Audio : Batterie : Autonomie : Dimensions : Poids : DAS :

Chaine de transmission

Etudier l influence de différents paramètres sur un phénomène physique Communiquer et argumenter en utilisant un vocabulaire scientifique adapté

CENTRALE DE SURVEILLANCE EMBARQUEE MULTIMEDIA

IPHONE BANNIÈRE CLASSIQUE DIMENSIONS. Standard : 320 x 53 (portrait) 20Ko Jpeg/Gif/Png. HD : 640 x 106 (portrait) 20Ko Jpeg/Gif/Png DESCRIPTION

Janvier 2013 AUDIO/VIDEO PLAYER AUDIO VIDEO OEM DIVERS

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

ADSL. Étude d une LiveBox. 1. Environnement de la LiveBox TMRIM 2 EME TRIMESTRE LP CHATEAU BLANC CHALETTE/LOING NIVEAU :

Technique de codage des formes d'ondes

Les images numériques. 1. Le dessin vectoriel

Chapitre 2 : communications numériques.

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

Pionnier des innovations

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

LE MICRO ORDINATEUR. Introduction Architecture Les supports amovibles Les composants Le système d exploitation Les portables

Transmission de données. A) Principaux éléments intervenant dans la transmission

Mesure agnostique de la qualité des images.

Géométrie discrète Chapitre V

Le Haut Débit en mobilité. Salon des Technologies de l information et de la communication CWTC - Baie Mahault le 28 nov 2008

1AN. e n 19" FicheS Techniques. PLV - Dynamique. caractéristiques techniques. dimensions dela structure

Fiche d identité produit

nom : Collège Ste Clotilde

Quantification Scalaire et Prédictive

Tarifs de Publicité. Présentation... 2 Tarifs. Bon de commande... 7 Conditions générales de vente... 8

Bandes Critiques et Masquage

Le poids et la taille des fichiers

Eternelle question, mais attention aux arnaques Question qui est souvent mise en premier plan => ce n est pas une bonne idée

INFO 2 : Traitement des images

Initiation à linfographie

Traitement bas-niveau

Spécifications Techniques - Tablettes

Le codage informatique

Cahier des Clauses Techniques Particulières

Codage vidéo par block matching adaptatif

Projet Matlab : un logiciel de cryptage

Systèmes de communications numériques 2

Scanner de film numérique

Mesures en réception télévision

Dans la série Les tutoriels libres présentés par le site FRAMASOFT. <Handbrake> <Utilisation d'handbrake pour les débutants> Par <OLIVIER LECLERCQ>

CHAPITRE V. Théorie de l échantillonnage et de la quantification

PX8048 Convertisseur audio/vidéo VHS vers USB

SNC-RZ25P. Caméra réseau motorisée MJPEG / MPEG-4

DOSSIER ADSL. DEMARCHE DE TRAVAIL : Consultez rapidement le dossier avant de commencer Complétez le dossier en suivant les indications du document

Les tablettes. Présentation tablettes Descriptif Fournisseurs Caractéristiques Comparatifs Conseils Perspectives Démonstration

Conservation des documents numériques

Glossaire technique Veditec

SIGNAUX NUMERIQUES ET MODULATIONS NUMERIQUES

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

On distingue deux grandes catégories de mémoires : mémoire centrale (appelée également mémoire interne)

1. Présentation général de l architecture XDSL :

Structure de base d un ordinateur

Clé USB. Quel type de données peut contenir une clé USB?

Les images et les animations sur le web. Guérineau Chloé BTS2 Année 2001/2012

Q6 : Comment calcule t-on l intensité sonore à partir du niveau d intensité?

La conversion de données : Convertisseur Analogique Numérique (CAN) Convertisseur Numérique Analogique (CNA)

1. Fournir aux Entreprises des outils de télécommunications essentiels mais jusque alors inabordables pour les petites/moyennes structures,

Comparatif entre Matrox RT.X2 et Adobe Premiere Pro CS3 (logiciel seul)

ereader compact 9 et reproducteur multimédia portable

Découverte de l ordinateur. Partie matérielle

COLLEGE ADRIEN CERNEAU

Pack Fifty+ Normes Techniques 2013

xdsl Digital Suscriber Line «Utiliser la totalité de la bande passante du cuivre»

Spécifications techniques

Transcription:

Compression d images : pourquoi, comment? Aline ROUMY Chercheur, INRIA Rennes Juin 2013

SOMMAIRE 1. Pourquoi compresser une vidéo? 2. Comment compresser? 3. Compression avec pertes 4. Compression par transformation 5. Compression par prédiction 56-2

1 Pourquoi compresser une vidéo? 56-3

Définition Compression = stocker même image avec moins de bits Standards de compression : fournis par ITU International Telecommunication Union ISO International Organization for Standardization Joint teams: JVT Joint Video Team (H.264/MPEG-4-AVC en 2003) JCT-VC Joint Collaborative Team on Video Coding (adopté Janv. 2013, ITU-T H.265 Avril 2013) 56-4

Décomposition d une image couleur R V B (rouge vert bleu) YCbCr Y luminance = 0,3R + 0,6V + 0,1B Cb Cr chrominance Cb ~Y - B Cr ~Y R compatible TV noir et blanc oeil + sensible à Y que CbCr 56-5

Qu est ce qu une image numérique? image analogique image numérique de La Tour - Le nouveau né - Rennes pixel 56-6

Conversion analogique - numérique TV analogique (SECAM) conversion analogique numérique échantillonner + quantifier Recommandation ITU R Rec. 601 ITU-R Rec. (Recommendation) 601 Luminance : 13.5 M échantillons / seconde Chrominance : 6.75 M échantillons / seconde 8 bits par échantillon 56-7

Pourquoi compresser? i.e. transmettre même information avec moins de bits Nbre échantillons par sec Nbre bits par échantillons Débit Y luminance Cb Chrominance Cr Chrominance 13.5 M 6.75 M 6.75 M 8 bit 8 bit 8 bit 216 Mbps Quelques débits / stockage (qui évoluent au cours du temps) DVD 4.7 (1 face) à 17Go (2 faces) 18 à 78 s TNT 20 Mbps Ethernet/Fast Ethernet < 10 / 100 / 1000 Mbps DSL voie descendante 384 2048 kbps Tél portable (débit pratique 2G /3G) 9.05 384 kbps 56-8

SOMMAIRE 1. Pourquoi compresser une vidéo? 2. Comment compresser? 3. Compression avec pertes 4. Compression par transformation 5. Compression par prédiction 56-9

2 Comment compresser? 56-10

Le jeu du pendu Objectif = jouer en dévoilant votre stratégie _ 56-11

2 idées pour gagner 1. Fréquence d apparition des lettres probabilité 2. Corrélation entre les lettres successives dépendance 56-12

Analogie jeu du pendu - compression mot image joueur (qui cherche mot : lettre proposée reçoit oui/non). codeur (celui qui compresse : transforme l image en suite de bits) décodeur (qui cherche image : à partir des bits fournis par codeur) Objectif : proposer le moins de lettres possibles par mot Objectif : proposer le moins de bits possibles par image 56-13

Exploiter idée 1 : Utiliser la «non égalité» des probabilités Soit une course avec les chevaux: Nom A natole B arnabé C hef D arius Probabilité de gagner 1/4 1/2 1/8 1/8 A gagne 1 fois sur 4, etc Par exemple, la suite des vainqueurs peut être: ABBCBBDABCBABBCBBDAABABC Question : coder par une suite de bits la suite des vainqueurs et de manière efficace 56-14

Exploiter idée 1 : Utiliser la «non égalité» des probabilités Soit une course avec les chevaux: Nom A natole B arnabé C hef D arius Probabilité de gagner 1/4 1/2 1/8 1/8 Mot de code 00 01 10 11 Coder la suite des vainqueurs peut être: ABBCBBDABCBABBCBBDAABABC 00 01 01 10 01 01 etc Longueur moyenne 2 bits/course Peut on mieux faire? 56-15

Exploiter idée 1 : Utiliser la «non égalité» des probabilités Soit une course avec les chevaux: Nom A natole B arnabé C hef D arius Probabilité de gagner 1/4 1/2 1/8 1/8 Mot de code 10 0 110 111 Coder la suite des vainqueurs peut être: ABBCBBDABCBABBCBBDAABABC Longueur codage à longueur fixe 2 bits/course Longueur moyenne 2*1/4+1*1/2+3*1/8+3*1/8 1,75 bits/course Longueur optimale [théorie de l information48] 1,75 bits/course 56-16

Exploiter idée 2 : Utiliser la dépendance Supposons que les courses de chevaux sont dépendantes course 2 course 1 _A _B _C _D A_.25.5.125.125 B_.25.5.125.125 C_.25.5 0.25 D_.25.5.25 0 56-17

Exploiter idée 2 : Utiliser la dépendance _A _B _C _D longueur moyenne A_.25.5.125.125 codage optimal 10 0 110 111 1.75 1.75 B_.25.5.125.125 10 0 110 111 1.75 1.75 C_.25.5 0.25 10 0 11 1.5 1.5 D_.25.5.25 0 10 0 11 1.5 1.5 56-18

Exploiter idée 2 : Utiliser la dépendance _A _B _C _D longueur moyenne A_.25.5.125.125 codage optimal.25 10 0 110 111 1.75 1.75 B_.25.5.125.125.5 10 0 110 111 1.75 1.75 C_.25.5 0.25.125 10 0 11 1.5 1.5 D_.25.5.25 0.125 10 0 11 1.5 1.5 1.69 1.69 Complexité : taille du tableau à stocker croît exponentiellement avec le nbre de lettres traitées conjointement i.e. la mémoire de 4 à 16 =4² mots de code 56-19

THM (take-home-message) On peut compresser des données numériques (texte, audio, image) en utilisant 1. Fréquence d apparition des lettres probabilité Les lettres les plus fréquentes sont codées avec moins de bits 2. Corrélation entre les lettres dépendance Coder une lettre en tenant compte du/des précédentes lettres Un codeur qui utilise ces 2 idées est un codeur entropique Complexité : Il faut stocker un tableau dont la taille croît exponentiellement avec la mémoire (2.) (durée du passé) Donc dépendance/mémoire traitée autrement 56-20

SOMMAIRE 1. Pourquoi compresser une vidéo? 2. Comment compresser? 3. Compression avec pertes 4. Compression par transformation 5. Compression par prédiction 56-21

3 Compression avec pertes 56-22

Compression en autorisant des «pertes» Supposons les lettres/pixels indépendants distorsion, pertes, dégradation = distance entre l image originale et celle encodée débit = nbre bits / pixel (ou lettre) distorsion D Cas usage : médical, transfert de fichiers/données R sans pertes débit 56-23

Mise en œuvre efficace de la compression avec pertes 3 2 1 0 63 127 191 255 quantification scalaire uniforme 56-24

Mise en œuvre efficace de la compression avec pertes 9 0 63 127 191 255 quantification scalaire uniforme 56-25

Mise en œuvre efficace de la compression avec pertes code entropique c= C(q) image x Quantif indices q bits c q= Q(y) A B C D 1/4 1/2 1/8 1/8 10 0 110 111 quantification scalaire uniforme + codage entropique optimal + 0.25 bits / pixel si pixels indépendants 56-26

SOMMAIRE 1. Pourquoi compresser une vidéo? 2. Comment compresser? 3. Compression avec pertes 4. Compression par transformation 5. Compression par prédiction 56-27

4 Données dépendantes la transformation 56-28

Où traiter la dépendance? code entropique c= C(q) image x Quantif indices q bits c q= Q(y) A B C D 1/4 1/2 1/8 1/8 10 0 110 111 Traiter la dépendance au niveau code entropique : trop complexe Schéma ci-dessus quasi-optimal si les pixels indépendants... 56-29

Ou traiter la dépendance? code entropique c= C(q) image x Transformée coefficients y Quantif indices q bits c y= T(x) q= Q(y) A B C D 1/4 1/2 1/8 1/8 10 0 110 111 Traiter la dépendance au niveau code entropique : trop complexe Schéma ci-dessus quasi-optimal si les pixels indépendants transformer les pixels pour les rendre indépendants 56-30

Exploitation de la dépendance des données (a,b,c,d) -> (m, b-m, c-m, d-m) : transformation a b c d m=(a+b+c+d)/4 inversible Dépendance = Pixels voisins ont des valeurs proches m b-m c-m d-m Différence à la moyenne : de faible amplitude casser la dépendance dans nouveau bloc? 56-31

Exploitation de la dépendance des données a c b d Cette transformation est un cas particulier : DCT transformée en cosinus discret (MPEG 1, 2, 4, futur) ondelettes (JPEG-2000, Dirac) m=(a+b+c+d)/4 m b-m c-m d-m 56-32

Original Lena (512 x 512 Pixels, 8-Bit Y/ pixel, 257Ko) 56-33

Gris = 0 car m-d codé en m-d+128 Reste de dépendance 56-34

Gris = 0 56-35

Gris = 0 exemple d ondelettes 56-36

Transformée utilisée dans JPEG 2000 Moins de corrélation que précédemment entre les 4 blocs mais il en reste encore 56-37

JPEG2000 code entropique c= C(q) image x Transformée coefficients y Quantif indices q bits c y= T(x) q= Q(y) A B C D 1/4 1/2 1/8 1/8 10 0 110 111 56-38

Résultats de compression JPEG2000 Original Carol (512 x 512 Pixels, 24-Bit RGB/pixel, Taille 786ko) 56-39

Résultats de compression JPEG2000 75:1, 10.6 ko 56-40

Résultats de compression JPEG2000 150:1, 5.3 ko 56-41

Résultats de compression JPEG2000 300:1, 2.6 ko 56-42

Comparaison JPEG (1992) vs. JPEG2000 Lena, 256x256 RGB Baseline JPEG: 4572 octets Lena, 256x256 RGB JPEG-2000: 4572 octets 56-43

SOMMAIRE 1. Pourquoi compresser une vidéo? 2. Comment compresser? 3. Compression avec pertes 4. Compression par transformation 5. Compression par prédiction 56-44

5 Données dépendantes la prédiction 56-45

Il reste de la dépendance image x Transformée y= T(x) Quantif q= Q(y) code entropique c= C(q) bits c A B C D 1/4 ½ 1/8 1/8 10 0 110 111 Données dépendantes 56-46

Il reste de la dépendance image x Prédiction z= P(x) Transformée y= T(z) Quantif q= Q(y) code entropique c= C(q) bits c A B C D 1/4 ½ 1/8 1/8 10 0 110 111 Prédiction: pour mieux supprimer la redondance 56-47

Prédiction entre images Intra: image codée indépendamment des autres (synchro) Inter: (P/B) image codée en fonction d autres images Utilisé en MPEG-2, -4, HEVC 56-48

Prédiction entre images Très efficace: débit(inter) << débit (intra) Intra: image codée indépendamment des autres (synchro) Inter: (P/B) image codée en fonction d autres images Utilisé en MPEG-2, -4, HEVC 56-49

Prédiction Intra (MPEG4, Hevc) Si prédiction fiable, différence entre original et prédiction (résidu) : échantillons indépendants [théorie de l estimation] 56-50

6 Conclusion les messages à ramener à la maison 56-51

Take-home-message image x Prédiction z= P(x) Transformée y= T(z) Quantif q= Q(y) code entropique c= C(q) bits c A B C D 1/4 ½ 1/8 1/8 10 0 110 111 Transformation et prédiction : exploite dépendance des pixels Quantification : introduit pertes Codage entropique : exploite non égalité des probabilités des pixels 56-52

Quelques résultats en vidéo de MPEG-futur Vidéo BasketBallPass 416x240 pixels 50Hz (8 + (8+8)/4 bits) 60 Mbps Pas de quantification débit Taux compression non compressé 60 Mbps 22 1 Mbps 60:1 32 340 kbps 176:1 51 30 kbps 2000:1 original 60:1 56-53

Quelques résultats en vidéo de MPEG-futur Vidéo BasketBallPass 416x240 pixels 50Hz (8 + (8+8)/4 bits) 60 Mbps Pas de quantification débit Taux compression non compressé 60 Mbps 22 1 Mbps 60:1 32 340 kbps 176:1 51 30 kbps 2000:1 original 176:1 56-54

Quelques résultats en vidéo de MPEG-futur Vidéo BasketBallPass 416x240 pixels 50Hz (8 + (8+8)/4 bits) 60 Mbps Pas de quantification débit Taux compression non compressé 60 Mbps 22 1 Mbps 60:1 32 340 kbps 176:1 51 30 kbps 2000:1 original 2000:1 56-55

Le schéma de codage HEVC Les éléments grisés correspondent au décodeur (Overview of HEVC Standard, TCSVT Dec 2012) 56-56

merci www.inria.fr

Pour en savoir plus 1. Thomas Wiegand and Heiko Schwarz: Source Coding: Part I of Fundamentals of Source and Video Coding, Foundations and Trends in Signal Processing, vol. 4, no. 1-2, pp. 1-222, January 2011. http://iphome.hhi.de/wiegand/pubs.htm 2. Bernd Girod Image and Video Compression EE398A, University of Stanford, http://www.stanford.edu/class/ee368/ 56-58

7 Conclusion les mathématiques en compression 56-59

56-60

56-61

merci www.inria.fr