42
1 Chapitre 2 : Codage de Source / Compression Transmission de l ’information - Cours de l ’EPU de Tours - DI 2 Codage de source Adapter la source au canal : - l'alphabet - le débit Utiliser la capacité du canal maximiser I(X,Y) Hyp : Source stationnaire, canaux sans perturbation Codeur de source Source initiale Source à entropie max Codeur de source supprimer la redondance

3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

1

Chapitre 2 :

Codage de Source / Compression

Transmission de l ’information - Cours de l ’EPU de Tours - DI 2

Codage de source

Adapter la source au canal : - l'alphabet - le débit

Utiliser la capacité du canal à maximiser I(X,Y)

� Hyp : Source stationnaire, canaux sans perturbation

Codeurde source

Sourceinitiale

Source àentropie max

Codeur de source à supprimer la redondance

Page 2: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

2

Transmission de l ’information - Cours de l ’EPU de Tours - DI 3

Pourquoi ?Pourquoi ?

ð Photo scannée (diapo 36*24mm) 1200*600 dpi et 4 octets par pixels : 3,24 Mo

ð 5*36 pauses = 1 CDROM

ð Vidéo 25 images par secondes en 640*480 et 16 millions de couleurs : 176,4 Go pour 1h30 (17 disques durs de taille moyenne, 260 CD)

Transmission de l ’information - Cours de l ’EPU de Tours - DI 4

Propriétés d'un codeur de source

* Régularité : messages ≠ codes ≠

* Déchiffrabilité : séparation des mots non ambiguë

• Mot-code[S]=[s1,s2, …, sN] [X]=[x1,x2, …, xD]

˜ [C]=[c1,c2, …, cN]• Exemple

Symbole Code A Code B Code C Code DS1 00 0 0 0S2 01 10 01 10S3 10 110 011 110S4 11 1110 0111 111

Page 3: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

3

Transmission de l ’information - Cours de l ’EPU de Tours - DI 5

Types de codage

n Code binaire = correspondance entre un ensemble d ’informations élémentaires (alphabet) et un ensemble de configurations binaires (mots codes)n souvent longueur fixe

n pour un texte :n 10 chiffres + 26 lettres + symboles + caractères de contrôle

n CCITT (UIT-T) a normalisé plusieurs codes :n CCITT-2 : 5 bits

n CCITT-5 : 7 bits ==> ASCII 7

n EBCDIC d ’IBM (8 bits)

Transmission de l ’information - Cours de l ’EPU de Tours - DI 6

Code ASCII 7

Page 4: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

4

Transmission de l ’information - Cours de l ’EPU de Tours - DI 7

Code ASCII 7

Transmission de l ’information - Cours de l ’EPU de Tours - DI 8

Code ASCII ANSI étendu

Page 5: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

5

Transmission de l ’information - Cours de l ’EPU de Tours - DI 9

Code à longueur variable / fixe

* Code à décodage unique : mot-code ó symbole unique

* Code séparable : pas de signe de démarcation entre les mots

* Code instantané ou irréductible : on détermine les mots-codes à mesure que l'on reçoit les lettres de l'alphabet du code. à Aucun mot-code n'est le préfixe d'un autre !

Code ASCII = 8 bits, pourtant dans un texte 2,5 bits / caractère suffiraient

Transmission de l ’information - Cours de l ’EPU de Tours - DI 10

Longueur moyenne d'un mot-code

∑==

N

iii lxpl

1).(

• Limite de la longueur moyenne

minlog)(

lDXH

l =≥

• Entropie - Efficacité - Redondance

DCH

log)(=η

DlXH

log.)(=η

D = nombre de symboles dans l ’alphabet du canal

lXHCH /)()( =

ηρ −=1

Page 6: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

6

Transmission de l ’information - Cours de l ’EPU de Tours - DI 11

Codes optimaux absolus

Codes dont l'efficacité est maximale : η= 1

DXH

lllog

)(min ==

Transmission de l ’information - Cours de l ’EPU de Tours - DI 12

Théorème des canaux sans bruit (codage de source)

" Par un codage approprié (codage par groupe de n symboles dela source), l'information moyenne par lettre de l'alphabet du codepeut être amenée aussi proche que l'on veut de la capacité ducode, c'est-à-dire qu'il existe toujours un codage optimalabsolu ."

Rq1 : à n fixé, le code qui donne ηmax<1 est dit 'optimal'

Page 7: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

7

Transmission de l ’information - Cours de l ’EPU de Tours - DI 13

Méthodes de Compression

n Compression = réduction des informationsn sans perte d ’information : réduction de la

redondancen avec perte d ’information : images ou sons,

restitution approximative de l ’original

n Méthodes :n analyse statistique générale : complexité élevéen heuristiques spécifiques : connaissances a priori

du type d ’informationn décomptaction par un programme externe ou

auto-décompactable

Transmission de l ’information - Cours de l ’EPU de Tours - DI 14

bananes et ananas

Page 8: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

8

Transmission de l ’information - Cours de l ’EPU de Tours - DI 15

Propriétés des compacteurs

n Compacteur => décompacteur

n Bijection ou non

n Pour tout compacteur , il existe un fichier non compactable

n plus il y a d ’heuristiques, plus il y a d ’efficacité

Transmission de l ’information - Cours de l ’EPU de Tours - DI 16

Quelques techniques primitives

n Codage des répétitions :

n succession de symboles identiques (RLE)

n Variantes par choix de la taille des symboles(bit, octet,…) ou de la manière de balayer le fichier (ligne, colonne, fenêtre)

n Utiliser sur les images : BMP, PCX

000001111100000000000000000 à 5w5b17w 000000000001111100000000000 à 11w5b11w

A B C C C C C C A B C A B C à A B !6C A B C A B C

Page 9: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

9

Transmission de l ’information - Cours de l ’EPU de Tours - DI 17

Quelques techniques primitives

n Codage topologique :

n topologie d ’une suite de bits dominanten par exemple Xn on utilise un octet topologique (bit à 1)pour

décrire la position des Xn ex : «aX19XXXXXXXaXXXX» (16octets)

«(01001111)a19(11101111)a»

n Il faut que la fréquence de X > 1/8 n Tc=T.(1+1/8-f)

Transmission de l ’information - Cours de l ’EPU de Tours - DI 18

Quelques techniques primitives

n Codage relatif :

n succession d ’octets avec faible amplitude de variation

n ex : 10101 101. 10101 000. 10101 110. 10101 001 (32b)

n 5(3b) 10101 4(8b) 101 000 110 001 (28b)

n Variante, on code les différences (c. à 2)n 10101101 1011 0001 1100 (poids faibles)

Page 10: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

10

Transmission de l ’information - Cours de l ’EPU de Tours - DI 19

Codage de Shannon-Fano

Algorithme de génération d'un codage optimal absolu , pourdes sources divisibles récursivement (jusqu'à un symbole parensemble) en deux sous-ensembles équiprobables.

Symboles ProbaMots-codes Longueur

sk p(sk) ck lk

s1 0.25 0 00 2s2 0.25 0 1 01 2s3 0.125 0 100 3s4 0.125 0 1 101 3s5 0.0625 0 1100 4s6 0.0625 0 1 1101 4s7 0.0625 0 1110 4s8 0.0625

11

1 1 1111 4

Transmission de l ’information - Cours de l ’EPU de Tours - DI 20

Exercice : Bananes et ananas

Page 11: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

11

Transmission de l ’information - Cours de l ’EPU de Tours - DI 21

Bananes et ananas

Transmission de l ’information - Cours de l ’EPU de Tours - DI 22

Codage binaire de Huffman (1952)

- Algorithme de génération d'un codage optimal symbole parsymbole.

- Longueur variable à codes longs pour probas faibles

Page 12: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

12

Transmission de l ’information - Cours de l ’EPU de Tours - DI 23

Codage binaire de Huffman (1952)

L'algorithme de création de l ’arbre :

•1° Evaluer les fréquences d'occurrence des symbole s du fichier

•2° Classer les symboles en ordre décroissant des f réquences d'apparition.

•3° Regrouper de façon séquentielle les paires de s ymboles de plus faible probabilité, en reclassant

•symboles et groupes si nécessaire.

•4° Calculer les codes avec retour en arrière en aj outant, dans chaque point de regroupement, un 0 à une branche et un 1 à l'autre branche.

Transmission de l ’information - Cours de l ’EPU de Tours - DI 24

Codage binaire de Huffman (1952)

• Exemple : •Chaîne à comprimer : "ABCFGABDDACEACG" (45 bits), représentée avec 3 bits/lettre.

• Classement des symboles :

Page 13: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

13

Transmission de l ’information - Cours de l ’EPU de Tours - DI 25

Codage binaire de Huffman (1952)

Transmission de l ’information - Cours de l ’EPU de Tours - DI 26

Codage binaire de Huffman (1952)

Page 14: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

14

Transmission de l ’information - Cours de l ’EPU de Tours - DI 27

Codage binaire de Huffman (1952)

* Extraction des probabilités * Création de l'arbre * Création de la table d'Huffman * Codage

* Lecture de la table d'Huffman * Création de l'arbre de décodage * Lecture séquentielle et décodage

On transmet la table + les codes en binaire :

• Codage :

Code séparable mais nécessité d ’avoir les codes employés => table

Transmission de l ’information - Cours de l ’EPU de Tours - DI 28

Codage binaire de Huffman (1952)

• La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

• codage des fréquences d ’apparition de chaque code (256)

• liste des codes avec leur taille

•Taux de compression et redondance :

• Ici on a travaillé avec k=8, on peut choisir k > 8

• D’où, un codage de Huffman est dit optimal si :

∑−==

256

1

log.0i

ii ppE 00 log ENR −= 264/1log.64/1864

10 =∑+≥

=i

R

∑≥∑i

iii

ii hpebp ..

Page 15: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

15

Transmission de l ’information - Cours de l ’EPU de Tours - DI 29

Bananes et ananas

Transmission de l ’information - Cours de l ’EPU de Tours - DI 30

Bananes et ananas

Page 16: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

16

Transmission de l ’information - Cours de l ’EPU de Tours - DI 31

Exercice : Comparaison Huffman / Fano

BANANES ET ANANAS

n bananes et ananas = 136 bits en asciin Avec Huffman = ?n On ajoute en-tête => 120 bits !!!

n Plus fichier grand => plus efficacité augmente

Transmission de l ’information - Cours de l ’EPU de Tours - DI 32

Algorithmes dynamiques

n Huffman :

n en tête + 2 lectures + statistique sur fichier entier

n Types de fichiers à codes spécifiques

n caractéristiques locales des fichiers

n Algorithmes sans en tète : n table des fréquences construire durant la lecture, code d ’un symboles varie au cours du temps. Au départ les codes proviennent d ’une table initiale connue par compacteur et décompacteur. Apres lecture de chaque symbole la table est reclassée en fonction de la fréquence : réattribution des codes aux symboles

n Algorithmes avec en tête :n idem mais les codes initiaux sont calculés au lieu d être pré-attribués => il faut envoyer la table finale = en-tète

Page 17: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

17

Transmission de l ’information - Cours de l ’EPU de Tours - DI 33

Bananes et ananas

Transmission de l ’information - Cours de l ’EPU de Tours - DI 34

Bananes et ananas

Page 18: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

18

Transmission de l ’information - Cours de l ’EPU de Tours - DI 35

Bananes et ananas

N=001

Transmission de l ’information - Cours de l ’EPU de Tours - DI 36

Algorithmes d ’ordre k > 0

n Ordre 0 : les symboles sont considérés indépendamment les uns des autres

n les redondances se manifestent aussi sur les sequencesde symboles :n les méthodes d ’ordre k tiennent compte des k-ième antécédents

de chaque symbolesn Algo proche de celui d ’Huffman : on crée une table pour chaque

antécédent n PB : plus k augmente => plus taille table (en-tète) augmente

Page 19: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

19

Transmission de l ’information - Cours de l ’EPU de Tours - DI 37

Algorithmes d ’ordre k > 0

n Exemple : chaîne « ACABBDDBAAA »

Transmission de l ’information - Cours de l ’EPU de Tours - DI 38

Huffman : exemples d ’utilisation

• CCITT, Fax groupe III ˜ Huffman sur les plages de 0 précédant les 1

• JPEG ˜ Huffman sur les plages de 0 précédant les coeff. DCT

Page 20: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

20

Transmission de l ’information - Cours de l ’EPU de Tours - DI 39

Table d'Huffman FAX III

Transmission de l ’information - Cours de l ’EPU de Tours - DI 40

Codage de type dictionnaire (1977)

1977 : LZ (Lempel & Ziv) ð 1984 : LZW (Welch)

Dictionnaire de symboles incrémenté dynamiquement ˜ apprentissage donc pas d’en-tete

Fichier codé = suite des adresses des mots du dico

! Gérer l'incrément des bits d'adresse

• Dictionnaire = tableau dans lequel sont rangés des séquences desymboles de taille variables• Remplacer les symboles/séquences par leur adresse dans le tableau

Page 21: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

21

Transmission de l ’information - Cours de l ’EPU de Tours - DI 41

Compression LZW

• Si le compresseur observe un séquence déjà rencontrée il utilise le code correspondant.

• Grandes étapes (S: séquence, P: Préfixe, C: symbole courant) :• P = LireFichier• C = LireFichier• On construit S = P + C• Si S est dans la Table alors P = S • Sinon seul P est dans la Table alors

• on inscrit le code correspondant (à P) dans le fichier compressée

• on ajoute S dans la table• on pose P = C

• Répéter

Transmission de l ’information - Cours de l ’EPU de Tours - DI 42

Compression LZW

Pos 1 2 3 4 5 6 7 8 9Char A B B A B A B A C

(1) A

(2) B

(3) C

Dictionnaireinitial

Code (index)

Step Pos Dictionary Output

1. 2 (4) A B (1)

2. 3 (5) B B (2)

3. 4 (6) B A (2)

4. 5,6 (7) A B A (4)

5. 7,8 (8) A B A C (7)

6. -- -- (3)

DictionnaireÉtape

http://www.rasip.fer.hr/research/compress/algorithms/index.html

Page 22: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

22

Transmission de l ’information - Cours de l ’EPU de Tours - DI 43

Décompression LZW

(1) A

(2) B

(3) C

Dictionnaireinitial

Step Code Output Dictionary

1. (1) A --

2. (2) B (4) A B

3. (2) B (5) B B

4. (4) A B (6) B A

5. (7) A B A (7) A B A

6. (3) C (8) A B A C

DictionnaireÉtape

Code: (1)(2)(2)(4)(7)(3)

Transmission de l ’information - Cours de l ’EPU de Tours - DI 44

Algorithme LZSS

n SS = Storer et Szymanskin Idem LZW mais avec un buffer circulairen Fichier à comprimer mis dans buffer

n lecture caractère n si répétition :

n on stocke 0 + position relative + longueur seqn sinon

n on stocke 1 + caractère lu

n Détection plus rapide des séquences répétitives maximales

n PB = taille tampon + taille du champs longueurn + contenu initial du buffer

Page 23: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

23

Transmission de l ’information - Cours de l ’EPU de Tours - DI 45

Algorithmes à dictionnaire

n Faible complexité des calculsn Rapiden Contenu initial du dictionnaire ou buffer ?

n Pkzip, GIF, TIFF utilisent LZW ou variantes

n Algorithmes mixtes : n Huffman + LZWn LZW + Huffman

Transmission de l ’information - Cours de l ’EPU de Tours - DI 46

Compression avec pertes

n Images, vidéos, sons à Pertes acceptées

n Systèmes sensoriels humains insensibles

n Applications : Visioconférences, mp3, ...

Page 24: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

24

Transmission de l ’information - Cours de l ’EPU de Tours - DI 47

Compression d ’images

n Image = Matrice 2D de pixelsn Pixel = entier, plusieurs entiers, adresse dans table, …n œil perçoit 24 millions de couleurs (24b), lissage des

contours

n La compression se fait par filtrage des hautes frequenceset de celles de faible amplitude

Transmission de l ’information - Cours de l ’EPU de Tours - DI 48

Compression et filtrage

n Techniques de Filtrage :n direct : Walsh-Hadamard

avec comme condition initiale

Wh(Vk) = H2k.Vk avec Vk vecteur ligne ou colonne

Ce calcul est fait sur les lignes de l ’image puis sur les colonnes de la nouvelle matrice

n par transformation :n Transformée de Fourriern Transformée en cosinus discret

−=

nn

nnn HH

HHH2

−=

11

11

21

2H

Page 25: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

25

Transmission de l ’information - Cours de l ’EPU de Tours - DI 49

Transformée de Fourier

n un signal périodique quelconque peut être décomposé en une suite de fonctions périodiques sinusoïdales: les harmoniques.

n f =1/T fréquence fondamentalen an; bn amplitudes des composantes harmoniquesn Un signal rectangle est composé d’un nombre infini de

composantes sinusoïdales avec une fréquence fondamentale f et les multiples 3f; 5f; . . .

Transmission de l ’information - Cours de l ’EPU de Tours - DI 50

Fourier

Page 26: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

26

Transmission de l ’information - Cours de l ’EPU de Tours - DI 51

Transformée de Fourier

Transmission de l ’information - Cours de l ’EPU de Tours - DI 52

Transformée de Fourier

Page 27: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

27

Transmission de l ’information - Cours de l ’EPU de Tours - DI 53

Transformée Cosinus Discrète

+⋅∑ ∑

+⋅=

=

= N

vy

N

uxvuCyxf

N

n

N

m

211

0

1

0

21

coscos),(),( ππ

=

=

=

=

+π⋅

+π⋅= ∑∑

=

=

sinon 2

0 vsi 1

sinon 2

0u si 1

21

211

0

1

0

21

21

N

N)v(k

N

N)u(k

N

yvcos

N

xucos)y,x(f)v(k)u(k)v,u(C

N

x

N

y

Transmission de l ’information - Cours de l ’EPU de Tours - DI 54

JPEG (Joint Photographic Experts Group)

ð 4 méthodes de compression couplées :

ð traduction de RVB à YUV, On conserve Y et on attribue la moyenne des chrominance à tout groupes de 4 pixels

ð Découpage en 8*8, puis DCT (tranfo variation de luminosité en fréquences). Les 64 valeurs sont simplifiées en fonction de l ’indice de compression

ð RLE

ð Huffman

Page 28: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

28

Transmission de l ’information - Cours de l ’EPU de Tours - DI 55

JPEG (Joint Photographic Experts Group)

n Compression forte MAIS avec perte (25:1)n Transformée cosinus discrète rapide (FDCT) 2D de sous-

images 8 x 8

Transmission de l ’information - Cours de l ’EPU de Tours - DI 56

JPEG (Joint Photographic Experts Group)

n Compression par DCT sur luminance, chrominance U et V :

Page 29: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

29

Transmission de l ’information - Cours de l ’EPU de Tours - DI 57

JPEG (Joint Photographic Experts Group)

n Bloc de 64 pixels : 100 155 131 116 151 135 131 211

120 135 127 88 155 131 155 179

120 135 151 100 179 116 155 167

120 155 151 108 191 112 155 179

135 151 135 120 197 112 179 179

120 151 155 151 151 116 179 179

135 151 167 167 151 151 167 171

120 151 179 151 151 131 155 167

Transmission de l ’information - Cours de l ’EPU de Tours - DI 58

JPEG (Joint Photographic Experts Group)

n - 128 puis transformation DCT :

145 -84 34 -69 4 -66 -35 72

-45 -28 28 19 10 -54 5 15

0 -2 -8 -15 -9 0 30 -41

9 -14 15 -11 5 8 -12 -32

1 1 3 -11 7 -23 -4 0

18 4 -17 -10 4 -10 7 -10

-5 1 -7 -20 1 -1 -3 5

3 1 1 9 2 7 2 -2

Page 30: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

30

Transmission de l ’information - Cours de l ’EPU de Tours - DI 59

JPEG (Joint Photographic Experts Group)

n Quel est l’intérêt de cette transformation ?

n coefficients de forte valeur absolue sont situés en haut et à gauche

n l’importance des coefficients pour la reconstitution de l’image diminue quand on se déplace en diagonale du haut à gauche vers le bas à droite.

n Quantification

Transmission de l ’information - Cours de l ’EPU de Tours - DI 60

JPEG (Joint Photographic Experts Group)

n De quoi s’agit-il ? n Pas de quantification = Perte de l’information « astucieuse »

n le pas de quantification dont dépend la précision de l’image restituée va dépendre de la position de la valeur dans la matrice.

n pas relativement petit pour les valeurs importantes (en haut à gauche)

n pas de plus en plus grand quand on descend vers le bas et la droite.

n L’ensemble des pas constituent une matrice de quantification.

n construites en fonction de critères psycho-visuels, ...

n nous allons en fabriquer une avec une petite formule :

Q (i,j) = 1 + (1 + i + j) x Fq

Page 31: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

31

Transmission de l ’information - Cours de l ’EPU de Tours - DI 61

JPEG (Joint Photographic Experts Group)

n Nous prendrons Fq = 5 . Il s’agit d’un facteur de qualité :

6 11 16 21 26 31 36 41

11 16 21 26 31 36 41 46

16 21 26 31 36 41 46 51

21 26 31 36 41 46 51 56

26 31 36 41 46 51 56 61

31 36 41 46 51 56 61 66

36 41 46 51 56 61 66 71

41 46 51 56 61 66 71 76

Transmission de l ’information - Cours de l ’EPU de Tours - DI 62

JPEG (Joint Photographic Experts Group)

n Division des valeurs de la matrice de données par les valeurs de la matrice de quantification :

24 -7 2 -3 0 -2 0 1

-4 -1 1 0 0 -1 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

Page 32: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

32

Transmission de l ’information - Cours de l ’EPU de Tours - DI 63

JPEG (Joint Photographic Experts Group)

n Huffmann ou RLE sur les 0 :

Transmission de l ’information - Cours de l ’EPU de Tours - DI 64

JPEG (Joint Photographic Experts Group)

n Décompression :

Page 33: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

33

Transmission de l ’information - Cours de l ’EPU de Tours - DI 65

JPEG (Joint Photographic Experts Group)

n décodage statistique + déquantification (xMq):

144 -77 32 -63 0 -62 0 41

-44 -16 21 0 0 -36 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

Transmission de l ’information - Cours de l ’EPU de Tours - DI 66

JPEG (Joint Photographic Experts Group)

n DCT inverse et ajouter 128 :

112 145 137 107 149 130 139 124

114 145 139 110 149 131 141 183

117 145 143 116 151 133 144 181

121 145 148 124 152 135 148 179

126 145 153 132 154 137 152 177

130 145 158 139 155 139 156 175

133 145 162 145 157 141 159 173

135 146 164 148 157 142 161 172

Page 34: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

34

Transmission de l ’information - Cours de l ’EPU de Tours - DI 67

JPEG (Joint Photographic Experts Group)

112 145 137 107 149 130 139 124

114 145 139 110 149 131 141 183

117 145 143 116 151 133 144 181

121 145 148 124 152 135 148 179

126 145 153 132 154 137 152 177

130 145 158 139 155 139 156 175

133 145 162 145 157 141 159 173

135 146 164 148 157 142 161 172

100 155 131 116 151 135 131 211

120 135 127 88 155 131 155 179

120 135 151 100 179 116 155 167

120 155 151 108 191 112 155 179

135 151 135 120 197 112 179 179

120 151 155 151 151 116 179 179

135 151 167 167 151 151 167 171

120 151 179 151 151 131 155 167

Transmission de l ’information - Cours de l ’EPU de Tours - DI 68

JPEG : IllustrationsJPEG : Illustrations

ð Image BMP initiale : 144 Ko

ð JPEG indice 20 : 5,18 Ko ð 28:1

ð JPEG indice 50 : 2,97 Ko ð 48,5:1

Page 35: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

35

Transmission de l ’information - Cours de l ’EPU de Tours - DI 69

JPEG : IllustrationsJPEG : Illustrations

ð JPEG indice 92 : 1,05 Koð 137:1

ð JPEG indice 99 : 0,694 Koð 207:1

Transmission de l ’information - Cours de l ’EPU de Tours - DI 70

Compression FractaleCompression Fractale

Page 36: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

36

Transmission de l ’information - Cours de l ’EPU de Tours - DI 71

Compression FractaleCompression Fractale

ð Idée :

ð image décrite par un ensemble de motifs identiques en nombre limités, transformés par translations, rotations…ð coder : décrire les motifs et les transformationð codage indépendant de la tailleð codage long (plusieurs minutes)

ð Différent du JPEG : zoom = flou (non pas pixélisation)

ð Possibilité de zoomer

Transmission de l ’information - Cours de l ’EPU de Tours - DI 72

Compression par Compression par OndelettesOndelettes

• Une transformation par ondelettes consiste à décomposer un signal en une tendance grossière accompagnée de détails de plus en plus fins.

• Ainsi, pour reconstituer le signal avec une précision donnée, il suffira de connaître la tendance et les détails correspondant au niveau de précision recherché et de négliger les autres.

• La transformée par ondelettes est la décomposition d'un signal par une ondelette mèrequi sera translatée et dilatée.

Page 37: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

37

Transmission de l ’information - Cours de l ’EPU de Tours - DI 73

Compression par Compression par OndelettesOndelettes

Transmission de l ’information - Cours de l ’EPU de Tours - DI 74

Compression par Compression par OndelettesOndelettes

Page 38: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

38

Transmission de l ’information - Cours de l ’EPU de Tours - DI 75

Compression par Compression par OndelettesOndelettes

Transmission de l ’information - Cours de l ’EPU de Tours - DI 76

OndelettesOndelettes et quantificationet quantification

ð Les images d ’erreurs inférieures à un niveau donné sont éliminées

ð Compression destructive

ð Utilisation d ’une méthode non destructive pour le reste

ð En-tête plus compact

ð Avantage sur le JPEG flou pas pixelisation

ð Indice de 20 conseillé

Page 39: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

39

Transmission de l ’information - Cours de l ’EPU de Tours - DI 77

OndelettesOndelettes et indiceet indice

ð Original : 144 Ko

ð Indice 20 : 3,5 Ko = 41:1 : qualité excellente

ð Indice 30 : 1,7 Ko = 82:1 : flou artistique

ð Indice 50 : 805 o = 183:1 : Brume

ð Indice 92 : 171 o = 862:1

Transmission de l ’information - Cours de l ’EPU de Tours - DI 78

MPEGMPEG

ð Pour la vidéo

ð Compression dans les plans spatial et temporelð spatial : MJPEG (gros)

ð MPEG 2

ð I,B,Pð I toutes les 12 images en JPGð On compare les autres à I et on code les différences

ð Découpage en blocs 16*16, on essai de trouver un bloc identique dans l ’image précédente.

ð Compression dépend donc du mouvement

Page 40: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

40

Transmission de l ’information - Cours de l ’EPU de Tours - DI 79

Compression MPEG

n La séquence vidéo est alors reconstruite avec

− les images de référence, − des images prédites (P) qui sont construites par rapport

à l'image I ou P précédente grâce aux vecteurs de déplacement et

− des images interpolées (B) reconstituées à partir des images I et P suivantes et précédentes.

13121110987654321

I B B P B B P B B P B B I

NB : MPEG4, 7 ...

Transmission de l ’information - Cours de l ’EPU de Tours - DI 80

Comparaison des compressionsComparaison des compressions

ð Image originale 144 Ko

ð JPEG indice 20 : 5,18 Ko : compression 28:1

ð Ondelettes indice 20 : 3,50 Ko : compression 41:1

ð LZW : 32 Ko : compression 4,5:1

Page 41: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

41

Transmission de l ’information - Cours de l ’EPU de Tours - DI 81

Compression des sons

n Echantillonnage CD 44KHz sur 16 bits n Système auditif :

n sensibilité => filtre passe banden 2 sons simultanée avec fréquence proche => on entend

que le plus fort

Transmission de l ’information - Cours de l ’EPU de Tours - DI 82

Compression des sons

n Méthode PASC (Precision Adaptative Sub band Coding):

n Division spectrale en 32 bandes de 750 Hzn Calcul du niveau moyen sur chaque banden Elimination de certaines bandesn Pour chaque bande retenue => division en sous bandesn codage sur nb de bits variable en fonction du nombre de sous

bandes et du niveau moyen de la bande

n Taux de compression autour de 3 ou 4

Page 42: 3 codage source - RFAI · Codage binaire de Huffman (1952) • La table de correspondance ou table des fréquences des codes employés est incluse dans l ’en tête du fichier :

42

Transmission de l ’information - Cours de l ’EPU de Tours - DI 83

Conclusion sur le codage de source

Supprime la redondance à Sensibilité au bruit

à Codage de canal