Compression Images Par Ondelettes

download Compression Images Par Ondelettes

of 57

Transcript of Compression Images Par Ondelettes

  • 8/3/2019 Compression Images Par Ondelettes

    1/57

    02/02/2011

    Compression dimages par ondelettes

    SI 222 Techniques de Compression

    Frdric Dufaux

  • 8/3/2019 Compression Images Par Ondelettes

    2/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 2

    Table des matires

    Techniques de codage bases sur la T.O.Algorithme EZW Caractristiques

    AlgorithmeJPEG 2000 Caractristiques Algorithme: EBCOT Codage des ROI (region of interest) Exemples Parties II et III

  • 8/3/2019 Compression Images Par Ondelettes

    3/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 3

    Techniques de codage bases sur la T.O.

    Pourquoi utiliser la T.O. ? Limites de la TCD : reprsentation des contours

    faible dbits ; effets de bloc T.O. : bon modle du signal

    - bonne rsolution spatiale haute frquence- bonne rsolution frquentielle basse frquence

    Meilleure concentration de lnergie Absence deffets de blocs Description rsolutions multiples

  • 8/3/2019 Compression Images Par Ondelettes

    4/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 4

    Stratgies de codage

    Mthodes ne prenant pas en compte les spcificits de lAMR

    Allocation de bits entre les sous-bandes

    Quantification dans chaque sous-bande (quantificateuroptimal de Lloyd-Max adapt)Codage entropique (ex. : Huffmann), ventuellementcontextuel

    Avantage : corrlations intra-bande bien exploites (uneQV peut encore amliorer lefficacit !)Inconvnient : on nexploite pas les corrlations

    rsiduelles inter-bandes !

  • 8/3/2019 Compression Images Par Ondelettes

    5/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 5

    Stratgies de codage

    Mthodes exploitant les dpendances hirarchiques entre les coefficients : EZW ( Embedded Zerotrees of Wavelet coefficients ),

    SPIHT ( Set Partitioning in Hierarchical Trees )

    Mthodes bases sur une reprsentation par arbres des dpendances entre les sous-bandes

    Avantages : corrlations inter-bande bien exploites,faible complexitInconvnient : plus difficile obtenir la scalabilit en

    rsolution

  • 8/3/2019 Compression Images Par Ondelettes

    6/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 6

    Algorithme EZW

    Caractristiques principales

    Scalabilit en qualit, cest --dire reprsentationprogressiveCodage lossy-to-lossless Faible complexit

    Performance de compression bien meilleure que JPEG Trs vident aux faibles dbits

  • 8/3/2019 Compression Images Par Ondelettes

    7/57Dpartement TSI SI222 - Codage d'images par ondelettespage 7

    Reprsentation progressive descoefficients dondelette

    Chaque nouveau bit de codage donne le maximumdinformation

    cest --dire

    Chaque nouveau bit de codage rduit la distorsionde limage reconstruite le plus possible

    On transmet dabord les coefficients significatifs Problme: overhead de localisation

  • 8/3/2019 Compression Images Par Ondelettes

    8/57Dpartement TSI SI222 - Codage d'images par ondelettespage 8

    Exemple: un image et ses coefficientsdondelette

    TO

    Bande LL :approximation

    Bande HLDtails verticaux

    Bande LHDtails horizontaux Bande HH

    Dtails diagonaux

    encore

    2 niveaux

    ApproximationDtails verticaux

    Dtails diagonaux

    Dtails horizontaux

  • 8/3/2019 Compression Images Par Ondelettes

    9/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 9

    Reprsentation progressive: ordre dessous-bandes

  • 8/3/2019 Compression Images Par Ondelettes

    10/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 10

    Algorithme EZW

    Le seule ordre de bayalage des sous bandes nest passuffisant pour garantir que les coefficients plus grandssoient envoys en premiersIl faut localiser les coefficients significatifsProblme : Rduction de linformation de localisationIde : Exploiter la corrlation inter-bande pour prvoirles coefficients non-significatifs

    Si la prdiction est correcte, on conomise ladescription de beaucoup de coefficients

  • 8/3/2019 Compression Images Par Ondelettes

    11/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 11

    Arbre de coefficients dondelette

  • 8/3/2019 Compression Images Par Ondelettes

    12/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 12

    Arbre de coefficients dondelette

    cn,m

    descendants

    de c n,m

  • 8/3/2019 Compression Images Par Ondelettes

    13/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 13

    Arbre de coefficients dondelette

    cn,m descendantsde c n,m

  • 8/3/2019 Compression Images Par Ondelettes

    14/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 14

    Ide de EZW

    Quand un coefficients est petit (c.--d. sous seuil), ilest probable que tout ses descendants soient petitsaussiAlors on utilise un seul symbole de codage pourreprsenter un coefficient c tel que : c est non significatif tous ses descendant sont non significatifEn ce cas c est une racine darbre de zros (zero-treeroot)

    Avec un seul symbole (ZT) on code (1+4+4 2+4 N-n)coefficientsInformation de localisation implicite danslinformation de significativit

  • 8/3/2019 Compression Images Par Ondelettes

    15/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 15

    Schma de lalgorithme EZW

    k = 0n = floor(log 2 ( |c| max ))Tk = 2 n

    while (dbit < dbit disponible) Pas dominant Pas de raffinement Tk+1 Tk /2 k++end

  • 8/3/2019 Compression Images Par Ondelettes

    16/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 16

    Pas dominant

    Balayage des coefficientsSi | c | > T n Coefficient significatif Si c >0 on encode SP ( significant positive )

    Si c

  • 8/3/2019 Compression Images Par Ondelettes

    17/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 17

    Pas de raffinement

    On code un ultrieur bit pour tous les coefficientssignificatifsCest quivalent dire que on rduit de moiti lacellule de quantification des coefficientssignificatifs

  • 8/3/2019 Compression Images Par Ondelettes

    18/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 18

    Itration et terminaison

    Le pas dominant k permet de coder le k-me plande bit de la matrice des coefficients dondelette Au fait, dire que un coefficient est significatif est

    quivalent dire que 2 n < |c| < 2 n+1

    On rduit le seuil de moiti : on passe auprochaine plan de bit

    Lalgorithme termine quand on a puis le nombre de bit disponible ou quand on a cod tous les plans de bit (transforme

    en entire, codage sans perte)

  • 8/3/2019 Compression Images Par Ondelettes

    19/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 19

    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

    0 T 0-T0 2T0-2T 0

  • 8/3/2019 Compression Images Par Ondelettes

    20/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 20

    Quantification quivalente en EZW

    Pas de raffinement 1: Cellules de quantification rduites de moiti

    0 T 0-T0 2T0-2T 0

  • 8/3/2019 Compression Images Par Ondelettes

    21/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 21

    -T0 /2 T 0 /2

    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

    0 T 0-T0 2T0-2T 0

  • 8/3/2019 Compression Images Par Ondelettes

    22/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 22

    -T0 /2 T 0 /2

    Quantification quivalente en EZW

    Pas de raffinement 2: Cellules de quantification des coefficients signifiants

    rduites de moiti

    0 T 0-T0 2T0-2T 0

  • 8/3/2019 Compression Images Par Ondelettes

    23/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 23

    Algorithme EZW

    Codage par plan de bits : Au pas k on code le bit plane log 2TkDescription progressive : Chaque nouveau plan de bit permet de raffiner la

    quantification des coefficientsCodage entropique (Huffman ou arithmtique) dessymboles de significativitCodage lossless-to-lossy On utilise une transforme en entiers (tous

    coefficients entiers) Quand on code tous les plans de bit, on peut

    reconstruire parfaitement tous les coefficients

  • 8/3/2019 Compression Images Par Ondelettes

    24/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 24

    Le standard JPEG2000

    JPEG : Joint Photographic Experts GroupBut : compression numrique des images fixesOrganismes de standardisation : ISO et ITU-T

    Partie I : Core coding systemPartie II : Extensions (TCQ,images multi- composants,)Partie III : Motion JPEG2000

    Partie IV : ConformancePartie V : Reference SoftwarePartie VI : Compound images

    Partie VII : AbandonnePartie VIII : JPSECPartie IX : JPIPPartie X : JP3D

    Partie XI : JPWLPartie XII : ISO Base MediaFile Format / MPEG-4

  • 8/3/2019 Compression Images Par Ondelettes

    25/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 25

    Pourquoi un nouveau standard decompression dimages ?

    JPEG2000 vise des domaines o les standards courants nedonnent pas les meilleures performances :Compression bas dbit : qualit faible pour JPEG en dessous de

    0.25 bpp

    Codage Lossless-to-lossy : fournir un seul flux de donnes, pourdes qualits allant de sans perte une forte dgradationCompression dimages synthtiques : JPEG conu pour lacompression dimages naturelles et peu performant sur desimages de synthse

    Transmission dans des environnements bruits : la qualit duneimage JPEG se dgrade fortement quand des pertes de bitsinterviennent

  • 8/3/2019 Compression Images Par Ondelettes

    26/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 26

    Pourquoi un nouveau standard decompression dimages ?

    Documents composs : JPEG peu performant sur desdocuments binaires (texte)Accs alatoire : JPEG peu flexibleArchitecture ouverte : le systme peut tre optimispour diffrents types dimages et dapplicationsTransmission progressive en qualit et enrsolution

    En conclusion, JPEG2000, standard international (IS)depuis 2001, a pour objectif de complter et pas deremplacer le standard JPEG

  • 8/3/2019 Compression Images Par Ondelettes

    27/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 27

    Marchs et Applications

    1. Internet2. Mobiles3. Imprimantes

    4. Scanners5. e-commerce6. Camras numriques7. Fac-simile

    8. Librairies numriques9. Imagerie mdicale10. Imagerie satellitaire

  • 8/3/2019 Compression Images Par Ondelettes

    28/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 28

    Principales diffrences entre JPEG2000 etJPEG

    Nouvelles fonctionnalits : Codage des rgions dintrt Robustesse aux erreurs

    Scalabilit en qualit et en rsolution Tiling Capacit datteindre un dbit donn Du codage sans perte au codage avec perte

    dans un seul systmeMeilleure compression bas dbitComplexit plus leve

  • 8/3/2019 Compression Images Par Ondelettes

    29/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 29

    Description de lalgorithme

    Transformation en ondelettesPartition en blocsEBCOT: Quantification Codage entropique Allocation de dbit (optimisation RD)

    Ondelettes utilises : mode sans perte : biorthogonales 5/3 (lifting entiers

    vers des entiers) mode avec perte : Daubechies biorthogonales 9/7

  • 8/3/2019 Compression Images Par Ondelettes

    30/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 30

    Lalgorithme EBCOT (Embedded BlockCoding with Optimized Truncation)

    Chaque sous-bande est repartie enplusieurs blocs de mme taille

    exception possible : blocs surles bords

    Les blocs sont codsindpendamment, sans perte, avec uncodeur arithmtique : on gnre n trains binaires

    Pour chaque bloc, il est possibledestimer la courbe dbit -distorsionOndelettes orthogonales ?

  • 8/3/2019 Compression Images Par Ondelettes

    31/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 31

    Lalgorithme EBCOT (Embedded BlockCoding with Optimized Truncation)

  • 8/3/2019 Compression Images Par Ondelettes

    32/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 32

    Lalgorithme EBCOT (Embedded BlockCoding with Optimized Truncation)

  • 8/3/2019 Compression Images Par Ondelettes

    33/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 33

    Lalgorithme EBCOT (Embedded BlockCoding with Optimized Truncation)

    Pour obtenir un certain dbit total, les trains binairesdoivent tre coups

    Comment couper les trains binaires? R i = R T /N simple mais sous optimale Solution optimale ?

    Problme : minimisation de la distorsion totale avec

    contrainte sur le dbit

    i D D

    T iR R

  • 8/3/2019 Compression Images Par Ondelettes

    34/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 34

    Lalgorithme EBCOT (Embedded BlockCoding with Optimized Truncation)

    Mthode de Lagrange : minimisation de

    Le dbit de codage du bloc i est tel que :

    T ii R R D J .

    i

    i

    dR

    dD

  • 8/3/2019 Compression Images Par Ondelettes

    35/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 35

    Lalgorithme EBCOT (Embedded BlockCoding with Optimized Truncation)

    Loptimisation dbit -distorsion finale dtermine le pointde coupure de chaque flux binaire de bloc Bloc avec grandes valeurs Dbit plus

    important Les points de coupure optimaux sont des points

    o les courbes RD des blocs ont la mme pente On peut dterminer plusieurs points de coupure,

    correspondants plusieurs dbit totauxLe bitstream global est ainsi form dun ensemble decouches (layers)

    l h ( b dd d l k

  • 8/3/2019 Compression Images Par Ondelettes

    36/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 36

    Lalgorithme EBCOT (Embedded BlockCoding with Optimized Truncation)

    Layer 1, 1

    l h ( b dd d l k

  • 8/3/2019 Compression Images Par Ondelettes

    37/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 37

    Lalgorithme EBCOT (Embedded BlockCoding with Optimized Truncation)

    Layer 2, 2

  • 8/3/2019 Compression Images Par Ondelettes

    38/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 38

    Etapes de codage avec EBCOT

    Tier 1 : gnration des flux binaires progressifs parbloc, avec information RD Codeur arithmtique bas sur les contextesTier 2 : cration des couches de qualit et codage delinformation RD Optimisation RD

    Attention : Optimisation RD non normative !

  • 8/3/2019 Compression Images Par Ondelettes

    39/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 39

    Pourquoi un codage par bloc ?

    Exploite les variations locales, dun bloc lautre, descaractristiques statistiques de limageFacilite les applications ncessitant un accs alatoiredans limageRduit lutilisation mmoire dans limplantationmatrielle du codeur ou dcodeurPermet une implantation parallleEffet de bloc ?

  • 8/3/2019 Compression Images Par Ondelettes

    40/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 40

    Codage des rgions dintrt

    Certaines rgions de limage doivent avoir une meilleure qualit Statique : la rgion est dcide et encode ds le dbut,

    ct encodeur

    Dynamique : la rgion est dcide et peut tre dcode enligne partir dun seul bitstreamMasque de la rgion Masque binaire, dfinit les pixel de la ROI et du

    background La masque est dfinie sur limage dans le domaine spatial,

    mais selon le filtre utilis, on value sa forme dans ledomaine transform

  • 8/3/2019 Compression Images Par Ondelettes

    41/57

    Mth d d i l h ll ( l

  • 8/3/2019 Compression Images Par Ondelettes

    42/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 42

    Mthode de mise lchelle (generalscaling)

    Les coefficients dondelettes correspondant la ROI sontmultiplis par une constante s La distorsion associ alla ROI est artificiellement plus grande Un surplus de ressources est donn la ROILe background nest pas modifi

    On peut avoir plusieurs ROI, chacune avec son s Les valeurs de s sont stockes dans le bitstreamLa masque de la ROI est ncessaire au codage et au dcodage

  • 8/3/2019 Compression Images Par Ondelettes

    43/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 43

    Codage des rgions dintrt

    Mthode MAXSHIFT : tous les coefficients de la ROI sonttranslats au -dessus des coefficients du backgroundLa ROI est code avant tout autre rgionAu dcodeur un simple seuil est utilis pour reconnatre la ROI

    Aucune information sur la ROI doit tre insre dans le trainbinaire

  • 8/3/2019 Compression Images Par Ondelettes

    44/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 44

    Codage des rgions dintrt

    Mthode de mise lchelle (general scaling)Avantages : La qualit relative entre ROI et background peut tre

    choisie arbitrairement On peut utiliser plusieurs ROI avec diffrentes

    qualitsInconvnients : Seulement formes rectangulaire ou circulaire

    Ncessaire envoyer la forme de la ROI Complexit supplmentaire au dcodeur (dcodage

    de forme) Supporte seulement dans la partie II

  • 8/3/2019 Compression Images Par Ondelettes

    45/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 45

    Codage des rgions dintrt

    Mthode MAXSHIFTAvantages Pas besoin denvoyer linformation de forme Pas besoin de concevoir un encodeur/dcodeur de formes

    Forme de la ROI quelconqueInconvnients Une seule ROI On peut pas modifier la qualit relative de ROI et BG

    Augmentation du dbit avec MAXSHIFT par rapport non-ROI pour un codage sans perte : rgion rectangulaire : inf. 2% rgion circulaire 25% de limage : inf. 10%

  • 8/3/2019 Compression Images Par Ondelettes

    46/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 46

    Pondration psycho-visuelle

    Exploite la connaissance de la sensibilit du systme visuel,variable en fonction des frquences spatiales mesure par laCSF (Contrast Sensitivity Function)CSF dtermine par la frquence spatiale des coefficientsdondelettes : une valeur par sous -bandeLa pondration CSF est dtermine par lencodeur, mais dpenddes conditions de visualisation au dcodeurDeux situations : FVW (Fixed Visual Weighting) : CSF choisies en fonction

    des conditions de visualisation finales PVC (Progressive Visual Coding) : les pondrations

    visuelles sont changes au cours du processusdencodage

  • 8/3/2019 Compression Images Par Ondelettes

    47/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 47

    Robustesse aux erreurs

    Niveau du codage entropique Code blocks Rinitialisation du codeur chaque pas Symboles de synchronisationNiveau des paquets Petits paquets Symboles de synchronisation

  • 8/3/2019 Compression Images Par Ondelettes

    48/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 48

    Scalabilit en qualit

  • 8/3/2019 Compression Images Par Ondelettes

    49/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 49

    Scalabilit en qualit

  • 8/3/2019 Compression Images Par Ondelettes

    50/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 50

    Scalabilit en qualit

  • 8/3/2019 Compression Images Par Ondelettes

    51/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 51

    Scalabilit en qualit

  • 8/3/2019 Compression Images Par Ondelettes

    52/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 52

    Scalabilit en rsolution

  • 8/3/2019 Compression Images Par Ondelettes

    53/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 53

    Scalabilit en rsolution

  • 8/3/2019 Compression Images Par Ondelettes

    54/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 54

    Scalabilit en rsolution

  • 8/3/2019 Compression Images Par Ondelettes

    55/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 55

    Scalabilit en rsolution

  • 8/3/2019 Compression Images Par Ondelettes

    56/57

    Dpartement TSI SI222 - Codage d'images par ondelettespage 56

    Le standard JPEG2000 Partie II

    Trellis coded quantization Amliore les performances de compressionVisual masking Traitement non-lineaire qui exploite les effet de

    masquage visuelDcomposition ondelettes arbitraireFiltres ondelettes arbitraires

    Multiple component transform Pour image plusieurs composantesROI avec la mthode General Scaling

  • 8/3/2019 Compression Images Par Ondelettes

    57/57

    Le standard JPEG2000 Partie III

    Motion JPEG2000

    Chaque image de la vido est code indpendamment desautres avec JPEG2000 partie I

    Faible complexit par rapport codeurs vido bass sur laestimation/compensation du mouvement

    Performance de compression infrieure aux codeurs avec

    ME/MC

    Robustesse aux erreurs (pas de dpendance entre images)