La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

10/2003 SB – NEXTAMP 1 Compression des images Compression des images et de la vidéo : principes Séverine Baudry

Présentations similaires


Présentation au sujet: "10/2003 SB – NEXTAMP 1 Compression des images Compression des images et de la vidéo : principes Séverine Baudry"— Transcription de la présentation:

1 10/2003 SB – NEXTAMP 1 Compression des images Compression des images et de la vidéo : principes Séverine Baudry

2 10/2003 SB – NEXTAMP 2 Compression des images Plan L image numérique Principes de la compression l Notions de théorie de l information l Le théorème du codage de source Compression sans perte l Codage de Huffman l Codage par plage l Codage LZW Compression avec perte l Quantification l Prédiction linéaire l Transformations linéaire l Compensation de mouvement

3 10/2003 SB – NEXTAMP 3 Compression des images L image numérique Une image numérique de taille NxM est représentée par un tableau de pixels [ I(x,y) ] 0 x

4 10/2003 SB – NEXTAMP 4 Compression des images Espace des couleurs Pixel (R,G,B) représenté par un point dans l espace des couleurs (3 dimensions) L espace RGB ne reflète pas l importance visuelle des composantes : décomposition en luminance et chrominance plus adaptée l luminance : très importante pour l œil (photos noir et blanc) l chrominance : moins importante Nouvel espace couleur, (Y,Cb,Cr) obtenu par transformation linéaire de (R,G,B)

5 10/2003 SB – NEXTAMP 5 Compression des images Espace des couleurs R G B Cr Y Cb Y : information de luminance Cb : information de chrominance bleue Cr : information de chrominance rouge* !!! Cb,Cr : pas d interprétation perceptuelle directe ( Y : version « noir et blanc »)

6 10/2003 SB – NEXTAMP 6 Compression des images Espace des couleurs (Y,Cb,Cr) : utilisé pour la représentation des signaux numériques (Y,U,V) : employé en analogique (TV PAL ou SECAM) l Y : identique l U,V : identiques à Cb,Cr à un facteur d échelle près Pour certaines normes de video (H261, MPEG), on utilise une version décalée réduite l Y =219/255*Y+16 l Cb =224/255*Cb+128 l Cr =224/255*Cr+128 Intérêt de la représentation (Y,Cb,Cr) l Décorrélation des composantes codage indépendant de chaque composante efficace l Y importante, Cb et Cr accessoires : compression de l information de chrominance

7 10/2003 SB – NEXTAMP 7 Compression des images Structures d échantillonnage Information de chrominance moins importante -> décimation horizontale et/ou verticale de Cb, Cr l 4:4:4 : pas de décimation l 4:2:2 : décimation horizontale des chrominances l 4:2:0 : décimation verticale des chrominances 4:4:44:2:24:2:0 (MPEG1) YCbCr

8 10/2003 SB – NEXTAMP 8 Compression des images Entrelacement Image TV analogique : 25 images / seconde (Europe) Acquisition : 1/2 image à une fréquence de 50 Hz Images entrelacées l Amélioration de la résolution temporelle, avec une résolution spatiale correcte Une image numérique (picture) entrelacée est constituée de 2 trames (field) (demi-images) l trame haute (top field) l trame basse (bottom field) 2 combinaisons possibles pour une image complète : l top field first : trame supérieure acquise en premier l bottom field first : trame inférieure acquise en premier

9 10/2003 SB – NEXTAMP 9 Compression des images Entrelacement et mouvement

10 10/2003 SB – NEXTAMP 10 Compression des images Tailles d images Image TV classique : format CCIR 601 Nombre de pixels de luminance : l 720 points sur 576 lignes (format européen) l 720 points sur 480 lignes (format US) Autres formats couramment employés : l CIF : chaque dimension est divisée par 2 (image 4x +petite) l QCIF : chaque dimension est divisée par 4 (image 16x +petite)

11 10/2003 SB – NEXTAMP 11 Compression des images Fréquences vidéo TV : l Européen : 25 images / seconde l Américain : 30 images / seconde Autres fréquences video utilisées (visioconférence….) l 15 im/s, 10 im/s, 7.5 im/s

12 10/2003 SB – NEXTAMP 12 Compression des images Quantités d information Image fixe niveaux de gris, taille 512x512; chaque pixel codé sur 8 bits l T = 2 9 *2 9 *2 3 = 2 21 bits = 256 ko Image fixe en couleur, sans décimation de la chrominance (24 bits/pixel) l T = 3*2 21 bits = 768 ko Débit TV couleur l taille : 720x576 l chrominance : 4:2:2 -> 2x8 bits par pixel l fréquence: 25 im/s l D = 720*576*16* Mbits/s l pour 1 image TV : T 6.6 Mbits Débit TV brut (video + infos de service, synchro…) : 216 Mbits/s

13 10/2003 SB – NEXTAMP 13 Compression des images Quantités d information Pour stocker un film TV d 1h30 sous format brut, il faudrait disposer de : l T = 90*60* Tbits !!! Nécessité de compresser les données pour les applications réalistes …. En pratique : l débit MPEG 2 pour TV (satellite...) : 1Mb/s < D < 4Mbs l Débits MPEG 2 professionnels (chaînes, post-production) 20Mb/s l Video bas débit (visioconférence) : 64 kb/s, 128 kb/s, 384 kb/s

14 10/2003 SB – NEXTAMP 14 Compression des images Plan L image numérique Principes de la compression l Notions de théorie de l information l Le théorème du codage de source Compression sans perte l Codage de Huffman l Codage par plage l Codage LZW Compression avec perte l Quantification l Prédiction linéaire l Transformations linéaire l Compensation de mouvement

15 10/2003 SB – NEXTAMP 15 Compression des images Principes de la compression Images et video fortement redondantes l zones homogènes dans les images l faible variation d une image à l autre dans une séquence Réduction de la redondance par un codage sans perte (entropique) Toute l information de l image n est pas pertinente l exemple : modification d un pixel non perceptible l Augmentation du taux de compression en introduisant des artefacts (distorsion) peu perceptibles dans le signal Codage à perte Définition :

16 10/2003 SB – NEXTAMP 16 Compression des images Principes de la compression X : signal à coder (image) Compression Y (signal compressé) décompression X (signal décompressé) X=X : codage sans perte X X : codage à perte Comparaison de performances des méthodes de compression : Taux de compression Distorsion visuelle introduite Complexité, temps de calcul (compression et décompression) Sensibilité des données codées aux erreurs

17 10/2003 SB – NEXTAMP 17 Compression des images Principes de la compression Théorie de linformation : cadre théorique général, indépendant du type de données (image, son, texte, données …) Adaptation au type de données : l Mesures de distorsion (modèles psycho-visuels, psycho- acoustiques, robustesse aux erreurs …) l Statistiques sur les données

18 10/2003 SB – NEXTAMP 18 Compression des images Qu est ce que l information ? Information = levée de l incertitude sur un événement Source : générateur d évènements aléatoires Destinataire : détermine avec le plus de précision possible (= le moins d erreurs) les évènements émis par la source, à partir de l observation (éventuellement bruitée) des évènements Paradigme de Shannon (modèle générique de communication) sourcecanal destinataire message perturbations

19 10/2003 SB – NEXTAMP 19 Compression des images Qu est ce que l information ? Mesure de la quantité dinformation apportée par un événement aléatoire : Conséquences : l un événement rare apporte « beaucoup » d information l un événement fréquent apporte « peu » d information (cas extrême : p(x)=1 : aucune information) l L information apportée par 2 évènements successifs indépendants est la somme des informations individuelles Unité : le bit ou Shannon Rappels : logarithme à base 2 :

20 10/2003 SB – NEXTAMP 20 Compression des images Entropie Entropie : mesure de l information moyenne d une source aléatoire Entropie d une variable aléatoire discrète x, à valeurs dans x, de loi de probabilité p(x) : Exemple : pile ou face, pièce non truquée l P(pile)=P(face)=1/2 l Pièce truquée (P(pile) ou P(face) <1/2 ) : entropie <1 incertitude sur le tirage plus faible Remarque : l entropie ne dépend que des probabilités des évènements (et pas de leur « valeur ») -> on utilisera H(p 1,..,p n ) plutôt que H(X)

21 10/2003 SB – NEXTAMP 21 Compression des images Entropie : quelques propriétés L entropie est toujours positive : L entropie est maximale (incertitude maximale) lorsque tous les évènements sont équiprobables :

22 10/2003 SB – NEXTAMP 22 Compression des images Entropie d une variable binaire

23 10/2003 SB – NEXTAMP 23 Compression des images Extension à des variables multidimensionnelles Entropie d une suite de variables {X 1,…X n } Cas particulier : symboles indépendants (source sans mémoire) Entropie moyenne (entropie par symbole) :

24 10/2003 SB – NEXTAMP 24 Compression des images Théorème du codage de source Codage : remplacement d un message par un autre message (mot de code) l code : ensemble de tous les mots de code Longueur moyenne d un code : Soit une source d entropie moyenne par symbole H. il existe un code tel que :

25 10/2003 SB – NEXTAMP 25 Compression des images Plan L image numérique Principes de la compression l Notions de théorie de l information l Le théorème du codage de source Compression sans perte l Codage de Huffman l Codage par plage l Codage LZW Compression avec perte l Quantification l Prédiction linéaire l Transformations linéaire l Compensation de mouvement

26 10/2003 SB – NEXTAMP 26 Compression des images Méthodes de compression réversibles Minimiser l moy sous la contrainte d invertibilité (message décodé = message originel) Théorème du codage de source L égalité est atteinte ssi : plus un événement est rare et plus son code est long : code à longueur variable En général, l égalité n est pas atteinte car log 2 (p(n i )) n est pas nécessairement entier

27 10/2003 SB – NEXTAMP 27 Compression des images Pourquoi des codes à longueur variable ? Événement fréquent représenté par un code court l exemple : abréviations, raccourcis clavier … Évènement rare représenté par un code long l surcoût momentané, mais rare …. Un exemple : Codage à longeur fixe : sur 3 bits Codage à longeur variable (de 1 à 5 bits):

28 10/2003 SB – NEXTAMP 28 Compression des images Intérêt des codes à longueur variable Codage à longeur fixe Longueur moyenne : Codage à longeur variable : Application : coder la chaîne : a a b a b f b a a b b a code à longueur fixe ; L = ? code à longueur variable : L= ? Gain en codage : Longueur moyenne : Entropie de la source ?

29 10/2003 SB – NEXTAMP 29 Compression des images Codes préfixés Code préfixé : un mot de code quelconque nest le début d aucun autre mot de code. Permet les codes à longueur variable sans besoin de synchronisation exemple : décodage d un train binaire : n4n4 n2n2 n1n1 n2n2 n5n5

30 10/2003 SB – NEXTAMP 30 Compression des images Codage de Huffman Soit P m une source de taille m, dont les probabilités sont connues Principes : l On concatène les 2 symboles n i et n j de proba les plus faibles; on obtient une nouvelles source réduite P m-1 de taille m-1. On montre qu il existe un code pour P m-1 identique à celui de P m (hormis n i et n j ) l Les codes de n i et n j sont obtenus à partir de leur code dans P m-1, auquel on concatène 0 (n i ) et 1 (n j ) l Pour obtenir les codes de P m-1, on réitère le processus en prenant les 2 symboles de plus faible proba dans P m-1. l Une source à 2 symboles est codés par 0 et 1

31 10/2003 SB – NEXTAMP 31 Compression des images Codage de Huffman : exemple

32 10/2003 SB – NEXTAMP 32 Compression des images Codage de Huffman : exemple

33 10/2003 SB – NEXTAMP 33 Compression des images Codage de Huffman : exemple n1n1 n2n2 n3n3 n4n4 n5n5

34 10/2003 SB – NEXTAMP 34 Compression des images Codage de Huffman : exemple Entropie de la source : H(m) 2.29 Longueur moyenne : l m =2.3 > H(m) Un exemple avec H(m)=l m : Comparaison avec un code de taille fixe ?

35 10/2003 SB – NEXTAMP 35 Compression des images Codage par plage (RLC : Run Length Coding) Adapté au codage de zones homogènes (images binaires, DCT quantifiées …) Principe l rassembler les échantillons de même valeur : n échantillons l code : (n,valeur) Exemple (niveaux de gris) : l l code : (2,12) (1,5) (3,23) (4,30) (1,28)

36 10/2003 SB – NEXTAMP 36 Compression des images Codage Lempel Ziv Welch (LZW) Codage des images GIF (réversible) Compression des fichiers (.zip,.gz …) Efficace pour les images synthétiques (plages uniformes), dessins, graphiques, images NB … Pour les images naturelles, bruitées : compression à perte (JPEG) plus efficace.

37 10/2003 SB – NEXTAMP 37 Compression des images LZW : principes Codage des chaîne de caractères par leur adresse dans une table de traduction Construction dynamique de la table de traduction, en fonction du contenu à coder Adresse de taille fixe, codant des chaînes de taille variable L algorithme tend à chercher les chaînes les plus longues possibles (-> compression)

38 10/2003 SB – NEXTAMP 38 Compression des images LZW : codage A coder : chaîne de bits b 1 b 2 …b n Table de traduction : taille 2 m (adresse sur m bits) Initialisation : l stockage des chaînes 0 et 1 aux 2 premières adresses de la table (0…0 et 0…1) Régime établi : on a codé la chaîne b 1 …b i-1 1 b i dans la table de traduction ? => concaténation b i b i+1 2 b i b i+1 dans la table de traduction ? Si oui, concaténation b i b i+1 b i+2 aller en 2 Si non stocker b i b i+1 dans la table de traduction à la première adresse disponible coder b i par son adresse dans la table, recommencer en 1 avec b i+1

39 10/2003 SB – NEXTAMP 39 Compression des images LZW : décodage La table de traduction n est pas transmise, mais reconstituée au fur et à mesure du décodage Initialisation : similaire au codage Régime établi : on a décodé les adresses a 1 …a k-1 l lire l adresse a k, le mot décodé est la chaîne b k,1 …b k,i de la table de traduction l décoder a k+1 (chaîne b k+1,1 …b k+1,j ) l stocker b k,1 …b k,i,b k+1,1 à la première adresse libre

40 10/2003 SB – NEXTAMP 40 Compression des images LZW : exemple A coder : Table de traduction : adresses sur 4 bits initialisation :

41 10/2003 SB – NEXTAMP 41 Compression des images LZW : exemple A coder : Table de traduction code 0001

42 10/2003 SB – NEXTAMP 42 Compression des images LZW : exemple A coder : Table de traduction code

43 10/2003 SB – NEXTAMP 43 Compression des images LZW : exemple A coder : Table de traduction code

44 10/2003 SB – NEXTAMP 44 Compression des images LZW : exemple A coder : Table de traduction code

45 10/2003 SB – NEXTAMP 45 Compression des images LZW : exemple A coder : Table de traduction code

46 10/2003 SB – NEXTAMP 46 Compression des images LZW : exemple A coder : Table de traduction code

47 10/2003 SB – NEXTAMP 47 Compression des images LZW : mise en œuvre Dimensionnement de la table de traduction : en fonction de la taille du fichier à coder Nombre d adresses fixé à l avance -> débordement possible l remise à zéro de la table de traduction

48 10/2003 SB – NEXTAMP 48 Compression des images Plan L image numérique Principes de la compression l Notions de théorie de l information l Le théorème du codage de source Compression sans perte l Codage de Huffman l Codage par plage l Codage LZW Compression avec perte l Quantification l Prédiction linéaire l Transformations linéaire l Compensation de mouvement

49 10/2003 SB – NEXTAMP 49 Compression des images Méthodes irréversibles : motivation Compression sans perte : taux de compression faible (R 2.5) L œil est peu sensible à certaines modifications de l image Compression à perte : introduction d une distorsion dans l image codée ex : JPEG : R 20 pour une distorsion quasi-invisible. Fonction débit/distorsion : extension de l entropie pour les méthodes irréversibles

50 10/2003 SB – NEXTAMP 50 Compression des images Fonction débit-distorsion Codeur de source Y Le débit R est atteignable pour une distorsion D ssi il existe une suite de codes (2 nR,n) tels que : X d(X;X )

51 10/2003 SB – NEXTAMP 51 Compression des images Fonction débit-distorsion Distorsion D Débit R Codage impossible Codage possible R=0 (on ne transmet pas l image !) 0 H(X) Compression sans perte

52 10/2003 SB – NEXTAMP 52 Compression des images Mesure de la distorsion Mesure de la distorsion très complexe sur les images l sensibilité de l œil variable suivant les fréquences spatiales l phénomènes de masquage l … Mesure simplifiée : EQM (Erreur Quadratique Moyenne) Rapport Signal à Bruit (SNR : Signal to Noise Ratio)(en dB)

53 10/2003 SB – NEXTAMP 53 Compression des images Mesures de distorsion Rapport Signal à Bruit Crête (PSNR : Peak Signal to Noise Ratio)(en dB)

54 10/2003 SB – NEXTAMP 54 Compression des images Distorsion : ordres de grandeur Exemple : image JPEG, niveaux de gris

55 10/2003 SB – NEXTAMP 55 Compression des images Exemple : distorsion après codage JPEG

56 10/2003 SB – NEXTAMP 56 Compression des images Caractéristiques du système visuel humain (SVH) Caractéristiques du SVH l perception de la luminance : l œil est plus sensible aux faibles intensités l sélectivité spatio-fréquentielle : l acuité varie suivant l orientation et la fréquence spatiale acuité forte aux basses et moyennes fréquences, faible aux hautes fréquences l sensibilité au contraste : l œil est plus sensible aux contrastes qu à la luminance absolue (modèle logarithmique) l Effet de masquage : la présence de signaux de forte amplitude peut masquer la présence des signaux voisins plus faibles Prise en compte des caractéristiques du SVH : suppression des informations auxquelles l œil est peu sensible -> compression

57 10/2003 SB – NEXTAMP 57 Compression des images Méthodes irréversibles : ingrédients Tous les systèmes de codage d image/video sont des systèmes hybrides : utilisent plusieurs techniques de réduction de l information Ingrédients : l Prédiction (spatiale, temporelle) l Décorrélation : à l aide d une transformée linéaire l Quantification : étape irréversible du codage l Codage entropique (voir méthodes réversibles)

58 10/2003 SB – NEXTAMP 58 Compression des images Quantification Quantification : étape irréversible passage d une information continue à une information discrète Exemple : représentation de nombres réels (nombre de décimales infinies) par des rationnels (représentation finie) quantification scalaire : appliquée sur une variable monodimensionnelle Quantification vectorielle : appliquée sur une variable multi- dimensionnelle

59 10/2003 SB – NEXTAMP 59 Compression des images Quantification scalaire Seuils de quantification niveaux de quantification Niveaux de quantification {y i } : représentent un intervalle de R Seuils de quantification {x i } : délimitent les intervalles de quantification Quantification uniforme : |x i -x i-1 | constant i Quantification non uniforme : ….

60 10/2003 SB – NEXTAMP 60 Compression des images Quantification scalaire : représentation graphique x1x1 x2x2 x3x3 x4x4 x5x5 Signal original Signal reconstruit y1y1 y2y2 y3y3 y4y4 y5y5 y6y6 x Q(x)=y 5

61 10/2003 SB – NEXTAMP 61 Compression des images Bruit de quantification Q(x)-x x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 y1y1 y2y2 y3y3 y4y4 y5y5 y6y6 x

62 10/2003 SB – NEXTAMP 62 Compression des images Bruit de quantification

63 10/2003 SB – NEXTAMP 63 Compression des images Bruit de quantification Hypothèse : y i milieu du segment [x i,x i+1 ] :

64 10/2003 SB – NEXTAMP 64 Compression des images Bruit de quantification : quantificateur uniforme

65 10/2003 SB – NEXTAMP 65 Compression des images Optimisation des quantificateurs But : minimiser l EQM du quantificateur (ou une autre mesure : SNR …), pour un nombre de niveaux de quantification n fixé Optimisation en fonction de la probabilité du signal p(x) Intuitivement : intervalle de quantification plus petit pour les valeurs les plus probables du signal. Application à la compression d images : quantificateurs avec ou sans « dead-zone » P(x)

66 10/2003 SB – NEXTAMP 66 Compression des images Choix des quantificateurs Algorithmes de calcul de quantificateurs optimaux l Max l Lloyd l … Codage du signal quantifié l N niveaux de quantifications codage sur log 2 (N) bits

67 10/2003 SB – NEXTAMP 67 Compression des images Quantification vectorielle Signal à quantifier = vecteur l exemple : bloc m x n de l image l Pixel couleur (R,G,B) : vecteur 3 composantes Niveaux de quantification = blocs d un dictionnaire (codebook) Quantification du vecteur w : l pour tous les vecteurs v i du dictionnaire, calcul de la distance (EQM) à w : |w-v i | 2 l sélection du v i minimisant l EQM dictionnaire de N vecteurs codage sur log 2 (N) bits À coder avec :

68 10/2003 SB – NEXTAMP 68 Compression des images Quantification vectorielle : représentation graphique Vecteur à 2 dimensions (x 1,x 2 ) x1x1 x2x2 « seuils de quantification » = Régions de Voronoï

69 10/2003 SB – NEXTAMP 69 Compression des images Quantification vectorielle dans l espace des couleurs Images « palette » : remplacement d une couleur par une autre « proche » dans le dictionnaire (palette) l couleur « vraie » (true color) : 16 millions ( ) l palette de ou 256 couleurs vecteur (R,V,B) : espace à 3 dimensions R G B

70 10/2003 SB – NEXTAMP 70 Compression des images Plan L image numérique Principes de la compression l Notions de théorie de l information l Le théorème du codage de source Compression sans perte l Codage de Huffman l Codage par plage l Codage LZW Compression avec perte l Quantification l Prédiction linéaire l Transformations linéaire l Compensation de mouvement

71 10/2003 SB – NEXTAMP 71 Compression des images Prédiction linéaire Idée : un pixel (i,j) est souvent de teinte « proche » de celle des pixels voisins. Fonction d autocorrélation de l image fortement décroissante loin de l origine Prédiction : f(x i-1,j, x i-1,j-1, x i,j-1,...) Erreur de prédiction (ou innovation) : e=x i,j -f(x i-1,j,…)

72 10/2003 SB – NEXTAMP 72 Compression des images Fonction d autocorrélation à 2 dimensions

73 10/2003 SB – NEXTAMP 73 Compression des images Exemple : signal AR(1) Prédiction optimale : f(x n )=ax n Erreur de prédiction : e(n)=x n -ax n-1 =u n Décorrélation de l erreur de prédiction : u n : bruit blanc gaussien, centré, variance u 2, indépendant de x n-1

74 10/2003 SB – NEXTAMP 74 Compression des images Prédiction linéaire : intérêts Intérêts : l Mise en œuvre très simple, complexité très réduite l Bonne qualité Inconvénients : l taux de compression généralement faible l évolution des statistiques du signal (autocorrélation) nécessité dune mise à jour du prédicteur, méthode adapative Exemple d utilisation : l DPCM : f(x n )=x n (simplicité) l MPEG 2 : coefficients DC codés par prédiction

75 10/2003 SB – NEXTAMP 75 Compression des images Plan L image numérique Principes de la compression l Notions de théorie de l information l Le théorème du codage de source Compression sans perte l Codage de Huffman l Codage par plage l Codage LZW Compression avec perte l Quantification l Prédiction linéaire l Transformations linéaire l Compensation de mouvement

76 10/2003 SB – NEXTAMP 76 Compression des images Transformations linéraires : pourquoi ? Définition : l A u,v;x,y : : coefficients de transformation l A : matrice de transformation l : coefficients transformés Décorrélation du signal = compaction Energie du signal concentrée sur quelques coefficients l « beaucoup » de coefficients nuls -> quantifiés à 0

77 10/2003 SB – NEXTAMP 77 Compression des images Transformations linéaires particulières Transformations orthogonales (unitaires) : l Inversibles, inverse facile à calculer l Conservation de lénergie dans le domaine transformé (EQM spatiale = EQM transformée) Transformations séparables : l calcul des coefficients par 2 transformations successives monodimensionnelles

78 10/2003 SB – NEXTAMP 78 Compression des images Transformée de Karhunen-Loève But : décorréler totalement les coefficients Rappel : matrice dautocovariance : Propriétés : l C hermitienne : l C diagonalisable, matrice de passage A unitaire D : matrice diagonales des valeurs propres de C A : matrice des vecteurs propres de C l C diagonale (X i ;X j ) décorrélés (i,j)

79 10/2003 SB – NEXTAMP 79 Compression des images Transformée de Karhunen-Loève Matrice de transformation : A (transfo inverse : Ā T ) Propriétés des coefficients transformés : E(X 2 ) diagonal : coefficients décorrélés

80 10/2003 SB – NEXTAMP 80 Compression des images Transformée de Karhunen-Loève Coefficients transformés décorrélés Energie du signal concentrée dans quelques coefficients (forte disparité des valeurs propres de D) l beaucoup de coefficients très faibles -> quantifiés à 0 Transformation linéaire optimale mais … l Nécessite de connaître a priori la matrice dautocorrélation -> non universel l A nest généralement pas séparable -> pas dalgorithme rapide pour la transformation l Problèmes de calcul numérique (précision lors de la diagonalisation de C) Non utilisée dans la pratique

81 10/2003 SB – NEXTAMP 81 Compression des images Transformée de Fourier discrète (TFD) Matrice de transformation : Propriétés : l transformation unitaire, donc inversible l transformation séparable l interprétation physique : fréquences spatiales (périodicités dans limage …) Bonne décorrélation des composantes (proche de Karhunen- Loève)

82 10/2003 SB – NEXTAMP 82 Compression des images Transformée de Fourier discrète Inconvénients : l Complexité ~n log(n) (FFT) : augmente plus vite que la taille de l image l Image à support fini : TFD sur l image périodisée -> introduction de discontinuités aux bords de l image spectre symétrique : hautes fréquences (=basses fréquences) de forte énergie, fréquences moyennes de faible énergie compression : suppression des fréquences de faible énergie Or, sensibilité du SVH décroissante avec la fréquence -> introduction d artefacts visibles

83 10/2003 SB – NEXTAMP 83 Compression des images fréquence Sensibilité de l œil Énergie des coefficients de Fourier Quantification des coeff. Moyenne fréquence EQM faible distorsion visuelle forte

84 10/2003 SB – NEXTAMP 84 Compression des images Transformée en cosinus discrets (DCT : Discrete Cosine Transform) Idée : utiliser les avantages de la TFD (décorrélation) sans les inconvénients (hautes fréquences fortes, inadéquation avec le SVH) Principe : TFD sur l image symétrisée et périodisée l symétrisation = pas de discontinuité sur les bords de l image

85 10/2003 SB – NEXTAMP 85 Compression des images DCT : interprétation graphique

86 10/2003 SB – NEXTAMP 86 Compression des images DCT Matrice de transformation : Matrice de la transformation inverse : Propriétés : l coefficients transformés réels (symétrie signal pair) l séparable

87 10/2003 SB – NEXTAMP 87 Compression des images Codage des coefficients DCT Energie concentrée dans les coefficients basse-fréquence Œil peu sensible aux hautes fréquences Pas de quantification variable suivant les fréquences spatiales : matrice de quantification Inconvénients : l la quantification introduit des discontinuités sur les bords des blocs : « effets de blocs » Complexité de calcul : l En pratique : calcul de la DCT sur des blocs 8x8 l Complexité pour 1 bloc : n.log(n) (avec n=64) l sur une image : C = N*M*log(64) = 6*N*M

88 10/2003 SB – NEXTAMP 88 Compression des images Transformation en ondelettes Limite des transformations de type Fourier : l Domaine fréquentiel : perte de l information de localisation l Domaine spatial : perte de l information fréquentielle Analyse de signaux transitoires l Analyseur à large bande : bonne décomposition fréquentielle, mais incertitude sur la localisation l Analyseur à bande étroite : bonne localisation de l événement mais analyse fréquentielle approximative Image : l information fréquentielle importante (variation de sensibilité de l œil) l information spatiale importante (localisation « d évènements » : contours) Approche « mixte » spatio-fréquentielle plus adaptée à la nature du signal image (et du SVH)

89 10/2003 SB – NEXTAMP 89 Compression des images Transformation continue en ondelettes (1D) Famille d ondelettes : b : facteur de localisation : ( (t-b)) centré autour de b : facteur d échelle grand : ( (t-b)) plus étroit, localisé en temps (plus étalé en fréquence, fréquences hautes) petit : ( (t-b)) plus large, étalé en temps (localisé en fréquence, fréquences basses) Transformation en ondelettes :

90 10/2003 SB – NEXTAMP 90 Compression des images Exemple : chapeau mexicain Ondelette mère : =1, b=0 =2, b=-4 =0.25, b=1

91 10/2003 SB – NEXTAMP 91 Compression des images Représentation temps fréquence (t) d énergie finie (t) tend vers 0 quand t tend vers (f) tend vers 0 quand f tend vers On peut déterminer les intervalles [- t; t] et [- f; f] tels que : [- t; t] contienne 90% de l énergie de la fonction [- f; f] contienne 90 % de l énergie de la fonction [- t; t] et [- f; f] représentent un pavé dans l espace temps fréquence t f b0b0 b1b1 1 f 0 f t 1 1 f 0 f t 0

92 10/2003 SB – NEXTAMP 92 Compression des images Reconstruction (transformée inverse) Représentation redondante : signal réel 1D -> coefficients réels 2D non adapté à la compression représentation compacte du signal : analyse multi-résolution

93 10/2003 SB – NEXTAMP 93 Compression des images But : représenter le signal (image) par des approximations successives l exemple : série de zoom progressifs sur une image On cherche à représenter les signaux de L 2 (R) : espace vectoriel des signaux à énergie finie AMR : suite de sous-espaces vectoriels {V i } (i Z) de L 2 (R) telle que : Analyse Multi-résolution (AMR) (t) : ondelette père i : niveau de résolution

94 10/2003 SB – NEXTAMP 94 Compression des images Propriétés de l AMR Propriétés : Équation à 2 échelles (niveau 0 et niveau 1) Équation à 2 échelles (niveau i et niveau i+1) h 0 : filtre passe-bas

95 10/2003 SB – NEXTAMP 95 Compression des images Base orthonormale d ondelettes approximation détails Propriétés : Équation à 2 échelles (niveau i et niveau i+1) H 1 : filtre passe-haut

96 10/2003 SB – NEXTAMP 96 Compression des images Décomposition en ondelettes But : on veut connaître, à un niveau de résolution i, l approximation du signal s(t) ainsi que ses détails Approximation : Détails :

97 10/2003 SB – NEXTAMP 97 Compression des images Décomposition en ondelettes L équation à 2 échelles nous permet de connaître la décomposition (approximation, détail) à un niveau de résolution i directement à partir de la décomposition du niveau i-1. On peut montrer que : Les coefficients d approximation et de détail au niveau i sont obtenus directement à partir du coefficient d approximation du niveau i-1.

98 10/2003 SB – NEXTAMP 98 Compression des images Décomposition en ondelettes : mise en œuvre Calcul de a i [k] : filtrage de a i-1 [] par h 0 [], puis décimation par 2 Calcul de c i [k] : filtrage de a i-1 [] par h 1 [], puis décimation par h1h1 h0h0 a 3 [k] c 3 [k] a 2 [k ] 2 2 h1h1 h0h0 a 1 [k ] 2 2 h1h1 h0h0 a 0 [k ] c 2 [k] c 1 [k]

99 10/2003 SB – NEXTAMP 99 Compression des images Synthèse Transmission : coefficient d approximation a n et coeff. de détails {c 1,…c n } Opération duale : l interpolation d un facteur 2 (insertion de 0) l filtrage : par h 0 (pour l approximation a) ou h 1 (pour l approximation c) 2 2 h1h1 h0h0 a 3 [k] c 3 [k] a 2 [k ] 2 2 h1h1 h0h0 a 1 [k ] 2 2 h1h1 h0h0 a 0 [k ] c 2 [k] c 1 [k]

100 10/2003 SB – NEXTAMP 100 Compression des images Exemple : ondelettes de Haar h0h0 h1h1

101 10/2003 SB – NEXTAMP 101 Compression des images Bases d ondelettes à 2 dimensions Construction d une base d ondelettes 2D séparable à partir d une base d ondelette 1D détails verticaux détails horizontauxdétails diagonaux Fonctions de base associées : Filtrage passe-bas dans les 2 directions passe-bas dans dir. verticale, passe-haut dans dir. horizontale passe-bas dans dir. horizontale, passe-haut dans dir. verticale Filtrage passe-haut dans les 2 directions

102 10/2003 SB – NEXTAMP 102 Compression des images Décomposition en ondelettes 2D Ondelettes séparables : traitement successif des 2 dimensions Même principe que ondelettes 1D : filtrage, décimation 1,2 h1h1 h0h0 2,1 h1h1 h0h0 a 0 [x,y] a 1 [x,y] 1,2 h1h1 h0h0 c 1 H [x,y] c 1 V [x,y] c 1 D [x,y]

103 10/2003 SB – NEXTAMP 103 Compression des images Exemple : décomposition en ondelettes d une image

104 10/2003 SB – NEXTAMP 104 Compression des images Application au codage d image Meilleure concentration de l énergie compression plus efficace l choix de la base d ondelette : h 0 long (régions homogènes) h 1 court (localisation des contours) Effets de blocs atténués Décomposition multi-résolution : scalabilité spatiale Prise en compte des corrélations entre coefficients de bandes différentes : algorithme EZW

105 10/2003 SB – NEXTAMP 105 Compression des images Algorithme EZW (Embedded Zero-Tree Coding) Définitions : C o i (x,y) parent de C o i+k (x,y) C o i+k (x,y) descendant de C o i (x,y) arbre de coefficients Si un coefficient d ondelette donné est non significatif (d énergie faible), alors, ses descendants sont le plus souvent non significatifs (zero-tree) on ne code pas les coefficients non significatifs gain en compression

106 10/2003 SB – NEXTAMP 106 Compression des images Algorithme EZW Aglorithme itératif, avec un ensemble de pas de quantification {q 0,…q n } décroissants A l itération k : l Quantification des coefficients C k (x,y) par q k l Codage des coefficients quantifiés par zero-tree l Nouveaux coefficients : C k+1 (x,y)= C k (x,y)-Q ( C k (x,y) ) Codage par zero-tree du coefficient C i (x,y) : l code P si C i (x,y) est significatif et positif l code N si C i (x,y) est significatif et négatif l code AZ (arbre de zéros) si C i (x,y) est non significatif et tous ses descendants sont non significatifs l code ZI (zéro isolé) si C i (x,y) est non significatif et s il a au moins un descendant significatif

107 10/2003 SB – NEXTAMP 107 Compression des images Algorithme EZW : avantages Compression efficace Scalabilité de qualité : on transmet d abord une approximation grossière des coefficients (forte quantification), puis des raffinements Permet d obtenir un code enfoui (embedded code) l lorsque une image est codée à un débit D, le code contient de façon ordonnée tous les codes correspondant aux débits inférieurs l Ex. : codage par plan de bits Utilisation dans les normes JPEG 2000 et MPEG 4.

108 10/2003 SB – NEXTAMP 108 Compression des images Plan L image numérique Principes de la compression l Notions de théorie de l information l Le théorème du codage de source Compression sans perte l Codage de Huffman l Codage par plage l Codage LZW Compression avec perte l Quantification l Prédiction linéaire l Transformations linéaire l Compensation de mouvement

109 10/2003 SB – NEXTAMP 109 Compression des images Codage du mouvement Idée : prendre en compte la redondance entre images successives de la vidéo. Extension des méthodes de transformation linéaire l 3 dimensions : (x,y,t) l Transformation 3D : {Î} u,v,w =A.{I} x,y,t l Ex : transformée de Fourier 3D : interprétation : basses fréquences temporelles éléments statiques de la vidéo hautes fréquences objets en mouvement En pratique les transformations linéaires ne sont pas efficaces pour décorréler la vidéo l vidéo = projection sur un plan d une scène 3D l objets en mouvement : pas d interprétation directe fréquentielle

110 10/2003 SB – NEXTAMP 110 Compression des images Compensation de mouvement Principe : prédire limage courante à partir de linformation de(s) image(s) antérieure(s) Ex : scène avec fond statique (caméra immobile), objets se déplaçant dans un plan parallèle au plan de la caméra (translation pure) l codage du fond : image fixe l codage de la texture de chaque objet l pour chaque image, transmission uniquement du déplacement de chaque objet par rapport à l image précédente Prédiction non linéaire : pas de combinaison linéaire des pixels de I j pour obtenir ceux de I j+1

111 10/2003 SB – NEXTAMP 111 Compression des images Compensation de mouvement Problèmes : l déplacements + complexes (rotation, zoom …) l objets déformables l occlusion, recouvrement l variation d éclairage l … A résoudre : l Détermination du contour des objets (segmentation) l Calcul du vecteur de mouvement pour chaque objet et du mouvement interne de l objet (rotation autour de son axe …) l Codage de l information d erreur : objet prédit - objet réel (variation d éclairage…)

112 10/2003 SB – NEXTAMP 112 Compression des images Compensation de mouvement En pratique : l Segmentation de l image en blocs de taille fixe ou variant en fonction du contenu (ex : H26L). Le plus souvent, blocs 8x8 ou 16x16 l Calcul d un vecteur de mouvement par bloc (différentes méthodes) l Codage du vecteur de mouvement et de l erreur de prédiction Calcul du mouvement : l Appariement de blocs (block matching) l Gradient spatio-temporel l Segmentation spatio-temporelle

113 10/2003 SB – NEXTAMP 113 Compression des images Calcul du vecteur de mouvement par block matching Principe : l découpage de l image à coder en blocs B i,j l Pour chaque bloc B i,j, recherche dans l image de référence du bloc B i,j « le plus ressemblant » l vecteur de mouvement = (i-i,j-j ) ItIt I t-1 B i,j V=(i-i,j-j ) Bloc d erreur : B i,j -B i,j

114 10/2003 SB – NEXTAMP 114 Compression des images Mesure de ressemblance entre blocs EQM : rappel EAM : Erreur Absolue Moyenne l plus rapide à calculer que EQM (pas d élévation au carré) l ressemblance forte EQM, EAM faible Coefficient d intercorrélation l coûteux en calcul l ressemblance forte F CN élevé

115 10/2003 SB – NEXTAMP 115 Compression des images Méthode de recherche des blocs Recherche exhaustive : calcul de l EQM avec tous les blocs de l image de référence l sélection de bloc optimale l très coûteux en temps de calcul ! Recherche limitée l en pratique, le déplacement d un objet d une image sur l autre est relativement faible l zone de recherche autour du bloc courant : limitation de l amplitude du vecteur de mouvement Minimisation du temps de calcul : l sélectionner dans la zone de recherche des blocs ne se recouvrant pas : « quantification » des vecteurs de mouvement l ordonner la recherche : vecteur de faible amplitude -> vecteur de forte amplitude

116 10/2003 SB – NEXTAMP 116 Compression des images Détails sur la recherche de blocs Certaines normes vidéo (MPEG 2,4, H26L) autorisent des coordonnées non-entières pour les vecteurs de mouvement l appariement sub-pixellique sur l image de référence interpolée l erreur plus faible mais temps de calcul important ! Dans les implémentations, la compensation de mouvement est généralement l étape la plus gourmande en temps de calcul (>50% du temps)

117 10/2003 SB – NEXTAMP 117 Compression des images Codage de l information de mouvement Information (vecteur de mouvement + bloc d erreur) à transmettre Corrélation entre vecteurs de blocs proches l codage différentiel (prédiction linéaire) l codage entropique Blocs d erreur normalement d énergie faible : l transformation DCT l quantification (pas de quantification grand) l codage entropique Lorsque la taille de linformation à coder est trop importante (EQM forte) l codage du bloc sans compensation de mouvement (bloc Intra)

118 10/2003 SB – NEXTAMP 118 Compression des images Exemple : la compensation de mouvement dans MPEG 3 types d images codées l images Intra (I): codées de façon autonome (sans compensation de mouvement) peuvent servir d image de référence pour les images P ou B l images prédites (P) : blocs codés par compensation de mouvement à partir de l image de référence précédente peuvent servir d image de référence pour les images P ou B l images bidirectionnelles (B) : blocs prédits par compensation de mouvement simple avant, à partir de l image de référence précédente (I ou P) compensation de mouvement simple arrière, à partir de l image de référence suivante (I ou P) double compensation de mouvement ; à partir de l image de référence précédente et suivante; le bloc sera obtenu par moyennage des 2 prédictions ne sont pas des images de référence

119 10/2003 SB – NEXTAMP 119 Compression des images Images B : double compensation de mouvement d01d01 d21d21

120 10/2003 SB – NEXTAMP 120 Compression des images La compensation de mouvement dans MPEG Répartition des différents types d image : libre (non fixé par la norme) GOP (Group Of Picture) : groupe d images commençant obligatoirement par une image I l décodable de façon autonome

121 10/2003 SB – NEXTAMP 121 Compression des images Intérêts et inconvénients de la compensation de mouvement Intérêt : l compression efficace de l information vidéo Inconvénients l vidéo en continu (TV) : nécessité d attendre une image I pour commencer à décoder -> latence Equilibrage de la taille du GOP : en pratique, GOP de taille 12 le plus souvent (1/2 seconde) l sensibilité aux erreurs : une erreur sur une image de référence est répercutée sur les images suivantes l utilisant comme prédiction ex : vidéoconférence sur mobile : canal fortement bruité protection inégale derreurs : code correcteur fortement redondant sur les images de référence, faiblement redondant sur les images prédites error resilience : marqueurs de synchronisation … l Inadéquation lorsque la dissimilarité entre images est trop forte (changement de plan) codage Intra (par bloc ou par image)


Télécharger ppt "10/2003 SB – NEXTAMP 1 Compression des images Compression des images et de la vidéo : principes Séverine Baudry"

Présentations similaires


Annonces Google