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

Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 1 Master IMA M1 UE Signal et Image Partie 3 : Traitement de lInformation Application.

Présentations similaires


Présentation au sujet: "Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 1 Master IMA M1 UE Signal et Image Partie 3 : Traitement de lInformation Application."— Transcription de la présentation:

1 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 1 Master IMA M1 UE Signal et Image Partie 3 : Traitement de lInformation Application à la compression P. Courtellemont

2 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 2 Plan du cours I. Introduction Approche fréquentielle Signaux monodimensionnels périodiques Signaux quelconques Signaux numériques, discrétisation, échantillonnage Observation spectrale, TFD et TFD 2D Systèmes numériques Filtres numériques Produits de convolution. Cas 2D Sur et sous échantillonnage. Bancs de filtres Traitement des Images. Approches multi résolution II. Signaux aléatoires variables aléatoires Processus aléatoires. Stationnarité Processus MA, AR et ARMA Estimation des paramètres dun AR III. Traitement de linformation Application à la compression codage de source, entropie, compression sans perte : codages entropiques par dictionnaire, par prédiction… Codages par transformée La DCT et la compression JPEG Quantifications scalaire et vectorielle IV. Communications numériques Modulations numériques modulation par impulsions codées transmission du signal numérique Applications : RDS, NICAM… Détection et correction derreurs

3 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 3 I. Introduction. Approche intuitive de lInformation On ne peut pas prévoir lévolution ultérieure dun signal aléatoire ! La connaissance de sa valeur à linstant présent apporte donc un renseignement, on dit que le signal transporte de linformation. Cette grandeur, que lon perçoit de façon intuitive, nest pas facile à définir quantitativement, il est cependant naturel de lui attribuer certaines propriétés : - cest une grandeur toujours positive, - elle est additive, toute contribution du signal apporte une quantité dinformation qui sajoute à celle que lon possède déjà, - elle est liée à la probabilité associée à lévènement : la quantité dinformation doit être dautant plus grande que la probabilité est faible. Lidée principale de la théorie de linformation est de dire que si il ny a pas dincertitude vis à vis du message émis par la source, il ny a pas dinformation à la réception du message.

4 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 4 Remarque : information ou incertitude ? Il sagit bien de la même notion abordée dun point de vue différent : - a priori, par l'incertitude qui règne sur la réalisation dun événement E, - a posteriori, par l'information apportée par la réalisation de cet événement. On pourra parler dincertitude ou dinformation, ou encore de self-information. On appellera information mutuelle l'information apportée par un événement F sur un événement E. Cest la diminution de l'incertitude sur E lorsque F est réalisé. (égale aussi à linformation apportée par E sur F). Nous allons voir également que linformation peut être perçue comme le nombre déléments nécessaires à la codification de lévénement considéré, dans un code donné. (Par exemple, le nombre de bits nécessaires au codage de cet événement.

5 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 5 Définition de lunité dinformation Soit une variable aléatoire de loi de probabilité uniforme (cas des jeux de hasard : loterie, lancer de dés, choix dune carte dans un paquet,…). Soit n le nombre de résultats possibles. La connaissance de lun de ces résultats apporte une information I(n) qui ne dépend que de n. I(n) doit être une fonction monotone croissante de n. La connaissance du numéro gagnant de la Loterie nationale apporte une quantité dinformation I(10 6 ) alors quapprendre quun dé sest arrêté sur le 5 napporte que I(6) avec I(10 6 ) > I(6). Considérons maintenant une expérience dont le résultat est double : par exemple, le choix au hasard dune carte dans un paquet de 32 cartes, suivi du lancer dun dé. La quantité dinformation acquise au total est donc : I(32) + I(6) = I(n 1 ) + I(n 2 ). Si lon considère maintenant lexpérience globale, elle peut conduire à 32*6 = n 1 n 2 résultats différents, qui sont tous équiprobables. Un résultat complet transporte donc une quantité dinformation I(n1n2). Doù la relation I(n 1 n 2 ) = I(n 1 ) + I(n 2 ).

6 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 6 La fonction I doit être monotone croissante. Parmi les solutions possibles de cette équation fonctionnelle, la plus simple est : I(n) = log n (la solution générale est I(n)=b log(n)/log(a) avec b>0 et a>1) La base des logarithmes nest donc pas définie, à chaque choix correspond une unité de quantité dinformation : - en base 2 : I(n) = log 2 n, lunité est le bit, parfois appelé shannon ; 1 bit correspond à linformation associée à une partie de pile ou face (n = 2), (bit = binary unit ici et non binary digit, qui ne prend que des valeurs entières) - en base 10 : I(n) = log n, lunité est le decit ou hartley ; cest linformation associée à chaque chiffre (de 0 à 9) lors du tirage dun numéro gagnant par exemple ; - le nat, associé aux logarithmes naturels, na quun intérêt théorique. Passons à une deuxième situation : Abandonnons lhypothèse déquiprobabilité des résultats possibles. Pour cela, nous allons revenir au choix aléatoire dune carte dans un jeu, mais en divisant les résultats en deux groupes : - groupe 1 (tous les trèfles) de n 1 éléments (n 1 = 8) ; - groupe 2 (les autres cartes) de n 2 éléments (n 2 = 24).

7 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 7 On peut énoncer le résultat dun tirage en donnant deux renseignements successifs : - le numéro du groupe dans lequel se trouve le résultat ; - le numéro de lélément sorti dans le groupe. Par exemple, si une dame de trèfle est sortie, on annoncera que le résultat appartient au groupe 1 et est le sixième élément de ce groupe. Linformation étant additive, on doit avoir : Information totale = information sur groupe + information du n° dans le groupe Dans cette égalité, le terme de gauche vaut évidemment I (n = n 1 + n 2 ) car les n = n 1 + n 2 résultats possibles sont équiprobables. Le dernier terme à droite vaut I(n 1 ). On en déduit : Information sur le groupe = I(n)-I(n 1 ) = log(n) – log (n 1 ) = log(n 1 +n 2 )/n 1 ) = - log (n 1 /n 1 +n 2 ) = - log(P 1 ) avec P 1, la probabilité de tomber sur un résultat du groupe 1. Dune manière générale, la quantité dinformation apportée par la connaissance de la réalisation dun événement de probabilité P est ainsi : I = – log P

8 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 8 Entropie Les événements émis par une source ne sont généralement pas équiprobables, la quantité dinformation reçue est fonction de lévénement et ne peut donc caractériser la source. Pour obtenir ce résultat, il faut faire une moyenne sur tous les événements possibles : si Pi est la probabilité dun événement i, la quantité moyenne dinformation est : Cette quantité ne dépend que de la source, cest son entropie. Une source qui transmet les résultats obtenus par lancer de dés (Résultats équiprobables P(i)= 1/6 quelque soit i) a pour entropie :

9 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 9 L'entropie d'une variable aléatoire X à n valeurs possibles est maximum et vaut log(n) lorsque la loi de X est uniforme. (Lentropie dune source sera maximale lorsque tous les messages quelle émet seront équiprobables). Supposons le dé pipé. Les résultats ne sont plus équiprobables, on peut montrer alors que lentropie est plus faible : Supposons que le chiffre 2 a 1 chance sur 2 de sortir. Les probabilités sont alors P(1)=P(3)=P(4)=P(5)=P(6)=0.5/5=0.1 P(2)=0.5 et lentropie :

10 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 10 - Parenthèse - Entropie dans le cas dun signal analogique Pour un signal analogique dont le spectre est limité à une fréquence F max, le théorème déchantillonnage nous enseigne que toute linformation peut être retrouvée à partir de Fe = 2 F max échantillons prélevés chaque seconde. La quantité dinformation contenue dans le signal en une seconde est donc 2 F max fois celle contenue dans un échantillon. Considérons lun de ces échantillons. Cest une grandeur analogique dont lamplitude est comprise entre deux limites +/- A. Si nous la mesurons avec un pas de quantification q, il ne peut exister que 2A/q résultats possibles, dont chacun a une probabilité p(k). Nous sommes dans une situation discrète permettant la définition dune entropie : Soit P k =P(x) x, avec P(x) la densité de probabilité du signal analogique x défini dans lintervalle +/-A. Donc :

11 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 11 Il est naturel de définir lentropie dun signal analogique en faisant tendre x vers zéro, expression se scindant en 2 termes La convergence du deuxième terme pose un problème délicat mais pour un grand nombre de cas simples, il tend vers zéro, ce qui conduit à la définition suivante de lentropie : Lentropie dun signal est donc fonction de sa densité de probabilité, on doit donc pouvoir rechercher quel type de fonction p (x) donne un maximum pour H. En pratique, il faut ajouter une contrainte supplémentaire, par exemple imposer la puissance. Le problème est alors : à donné, chercher p (x) qui rend maximale lentropie H. La solution fait appel à une méthode variationnelle. On aboutit à :

12 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 12 Cest une distribution gaussienne de variance P. Doù le résultat fondamental : à puissance égale, le signal gaussien est celui qui transporte le maximum dinformation. Le signal gaussien étant celui qui transporte, à puissance égale, le plus dinformation, le bruit gaussien est celui qui dégrade le plus linformation transmise. En considérant que la somme de deux processus gaussiens est gaussienne et sa puissance est la somme des puissances, et en considérant les entropies dévènements liés (résultats issus de la formule de Bayes en Probabilités), on peut montrer finalement : et la capacité totale du canal est linformation portée par les 2 F max échantillons par seconde : Cest la formule de Shannon que nous avions déjà rencontrée (cours Interfaces – IUP1) - Fin de la parenthèse -

13 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 13 Remarque : Avant daller au delà, distinguons : - la source dinformation qui émet des messages, - le canal de transmission qui assure lacheminement du message, - le récepteur qui, en fin de canal, exploite les informations. Le schéma dune communication peut être représenté ainsi : Codage sourceCodage canal Source Canal Décodage sourceDécodage canal Récepteur Le codage de source consiste à éliminer les redondances de la source afin d'en réduire le débit binaire. Le codage de canal a un rôle de protection contre les erreurs (dues à la transmission sur le canal) qui est assuré en ajoutant de la redondance (codes correcteurs d'erreurs). Les points de vue codage de source et codage de canal sont donc fondamentalement opposés.

14 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 14 II. Formalisation : quantité dinformation de source et entropie « codage de source » Généralement, on peut écrire : signal = information + redondance. Une partie de la redondance vient de la dépendance entre les événements consécutifs. Exemple : une suite de caractère lue à partir dun fichier ou dun canal de transmission quelconque est : Monsieu Le prochain caractère, r, est connu à lavance de façon certaine et possède une probabilité conditionnée aux sept précédents, égale à 1. Ainsi ce huitième caractère (on parlera en général de symbole), lorsquil apparaît (on parle dévénement), ne nous apprend rien dans la mesure où lon sy attendait sûrement ! Il napporte aucune information, on parle de redondance. Lorsque la production de symboles est conditionnée par les symboles précédents, on parle de source markovienne (ou de chaîne de Markov). Lorsque la corrélation sétend sur n symboles successifs, on dit que la source est markovienne dordre n.

15 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 15 Un exemple historique Si on considère les 26 lettres de lalphabet + lespace (27 symboles), lentropie vaut 4,75 dans le cas dune source émettant les caractères de manière équiprobable. Shannon a estimé les fréquences relatives des lettres dans un texte anglais (après lespace 0.182, la lettre « e » est la plus probable : 0.107, puis « t » avec 0.086… jusquà « z » avec Avec ces chiffres, lentropie tombe à 4,03. Si on tient compte des dépendances entre une lettre et la suivante (source markovienne dordre 2), par le calcul dentropie conditionnelle, on obtient 3,32 … La prise en compte de 8 lettres consécutives dans la langue anglaise donne une entropie conditionnelle de 1,86. Comme 1,86/4,75 = 40% environ, la notion dentropie (désordre) signifie quon est 40% aussi libre de choisir une lettre pour écrire en anglais quen tirant au hasard des lettres. Les 60% (=1-h) dus à la structure du langage représente la redondance. A titre de curiosité : XFOML RHKHJFFJUJ ZLPWCFWCKCYJFFJEYVKCQSGHYDQPAAMKBZAACIBZLHJQD est une séquence aléatoire, OCRO HLI RGWR NMIEL VIS EU LL NBNESEBYA TH EEI ALHENHTTPA OOBTTVA NAH BRL est une séquence respectant les fréquences dapparition des lettres de la langue anglaise.

16 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 16 Pour réaliser une séquence correspondant à un source markovienne dordre 2, il faut procéder ainsi : on met dans 27 urnes, des couples de lettres. Dans une urne donnée, tous les couples commencent par la même lettre, la seconde dans les proportions respectant lanalyse de la langue anglaise. Quand on tire un couple dans une urne, on choisi comme urne suivante celle contenant les couples commençant par la seconde lettre du 1er tirage et ainsi de suite. ON IE ANTSOUTINYS ARE T INCORE ST BE S DEAMY ACHIN DILONASIVE TUCOOWE AT TEASONARE FUSO TIZIN ANDY TOBE SEACE CTISBE est une séquence obtenue ainsi et IS NO IST LAT WHEY CRATICT FROURE BIRS GROCID PONDENOME OF DEMONSTRURES OF THE REPTAGIN IS REGOACTIONA OF CRE est une séquence respectant les probabilités de triplets de lettres (source markovienne dordre 3). On commence à pouvoir prononcer….

17 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 17 Lorsque la source est sans mémoire, chaque symbole est indépendant des précédents. On note alors la quantité dinformation propre apportée par la sortie dun nouveau symbole par : I(s i ) = log 2 (1/p(s i )) = - log 2 (p(s i )) avec s i, le ième symbole parmi les N symboles utilisés (les N symboles forment le code), p(s i ) la probabilité dapparition du ième symbole de lalphabet complet. Remarque : la grandeur précédente représente la quantité dinformation « exacte » portée par les symboles dun code donné, pour son codage (ou recodage), en base 2 ici. Exemple : le codage dun symbole issu des chiffres 0 à 9 donne : I = - log 2 (p(s i )) = log 2 (10)=3.32 bits. En pratique, on utilise 4 bits pour coder un chiffre décimal. Dans une suite de m événements, lorsque un symbole apparaît n fois dans le message, on appelle occurrence du symbole s i, le nombre de fois quapparaît s i, et la probabilité du symbole s i est alors n/m. Ces probabilités peuvent être alors différentes dun symbole à lautre. La moyenne des quantités dinformation est lentropie de la source. Exprimée en Shannons, H représente le nombre moyen de bits nécessaires à la codification binaire des différentes réalisations de la source. Pour le jeu de 32 cartes, H=5, cest aussi le nombre de bits nécessaire pour coder les numéros des cartes, de 0 à 31.

18 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 18 En physique, lentropie est une grandeur mesurant le « désordre ». En information, lentropie est nulle lorsquil ny a aucune incertitude, et maximale quand le signal est aléatoire : tous les symboles sont alors équiprobables. Cest le cas du codage des chiffres décimaux précédents (3.32 bits), ou du jeu de cartes. Pour un message donné, dont on connaît les occurrences des symboles, ce chiffre va baisser (et permettra un codage plus performant). Le rapport H r =H/log(N) est appelé entropie relative et r= 1-Hr est appelée redondance de la source. Cas dune image codée sur N=256 niveaux de gris. Ces 256 niveaux constituent les 256 symboles s i utilisés. Chaque pixel (cas équiprobable) porte une information I = log 2 (256) = 8. (cest la « profondeur » de limage). Pour une image donnée de m pixels, on peut calculer les occurrences o(s i ) des niveaux de gris (histogramme) et alors : I(s i ) = - log 2 (p(s i )) = - log 2 (o(s i )/m) = log 2 (m) – log 2 (o(s i )) Lentropie est alors :

19 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 19 Extension dune source Considérons une source S à N symboles constituant un alphabet A. Les événements de S peuvent être regroupés par blocs de m événements. Un bloc peut alors être considéré comme un nouveau symbole dun nouvel alphabet B (à N m symboles). La nouvelle source constituée sur B est appelée extension dordre m de S, et est notée S m. La probabilité dun symbole b j est donnée par : Lentropie dun événement de S m est lentropie dun bloc de m événements de S : H m =m*H.

20 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 20 Exemple : calculons lentropie dune source binaire avec une extension dordre 2. Solution : Soit S la source sur lalphabet A = {a 0 =0, a 1 =1}. a 0 et a 1 sont de probabilités respectives p 0 et p 1. On forme lalphabet B = {bj, j=0,3} = {00, 01, 10, 11}

21 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 21 III. Théorème du codage de source sans bruit Soit une source sur un alphabet A et une extension S m de cette source sur un alphabet B. On recode cette source en binaire (dune façon générale, ce pourrait être dans un 3ème alphabet à n symboles). Exemple : une image en niveaux de gris (N=256 symboles de lalphabet A), traitée par blocs de m=4 pixels voisins, à coder en binaire (n=2). Le codage consiste donc à associer à chaque symbole b j un mot code M(B j ) (écrit en binaire, ou constitué de symboles de lalphabet cible en général). Si L(B j ) est la longueur en bits du mot M(B j ), alors la longueur moyenne du code est finalement : pour le codage des blocs de m événements. La longueur moyenne par événement est donc L/m, ce qui mesure lefficacité du code choisi.

22 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 22 Théorème du codage de source sans bruit « 1er théorème de Shannon » Comme pour obtenir un nombre L(B j ) entier de bits. Pour les N m symboles B j : Comme H m =mH, Ainsi, Le théorème peut sénoncer ainsi :

23 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 23 Interprétation : Quelque soit le degré dextension m de la source, quel que soit le code M(B j ) utilisé, on peut toujours trouver un code permettant à la longueur moyenne de code de sapprocher encore plus de lentropie (sans jamais latteindre). Sapprocher de lentropie se fait au prix dune augmentation de lordre de lextension (et donc dune complexité plus grande). On retiendra simplement que lentropie constitue une borne inférieure absolue à la longueur moyenne dun code, quelque soit ce code. Conséquence : Supposons que lon ait un signal (par exemple un fichier de texte, composé de caractères codés sur 8 bits, ou dune image en niveaux de gris, codés également sur 8 bits). Si le nombre de caractères (pixels) du signal est N c, alors le signal occupera 8*N c bits. En connaissant la distribution de probabilités des symboles utilisés, le théorème de codage de source sans bruit nous assure de lexistence dun code de longueur moyenne L/m inférieure à 8 mais supérieure à H. Le signal occupera alors (L/m)*N c bits, dautant plus petit que m sera grand (on aura intérêt à travailler sur des blocs de limage par exemple). Même sans extension de source, il est possible de faire mieux que 8 bits à condition dadopter une longueur de code variable, fonction de loccurrence du symbole. On a tout intérêt à choisir un code court pour les symboles les plus fréquents, et réserver les longueurs plus importantes aux symboles apparaissant rarement.

24 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 24 - Applications – IV. Codes à longueur variables (codes « entropiques ») ou VLC (Variable Length Coding) Lidée précédente semble simple, mais elle soppose à une difficulté : lorsque tous les mots ont une longueur fixe (8 bits par exemple), le décodage ne pose pas de problème, chaque octet code un symbole. Lorsque les codes sont à longueur variable, il faut distinguer un symbole du suivant. Cette opération, appelée synchronisation, peut être faite par insertion dun caractère réservé, ce qui augmente la taille résultante. Lautre solution consiste à utiliser des codes préfixés. Chaque nouveau code ne peut être le début (= préfixe) dun code déjà existant. Chaque nouveau mot codé devient lui-même préfixe, et ne peut être utilisé. Aucun mot nest le début dun autre mot. Le tableau suivant donne 2 exemples de codes préfixés, comparés à un code à longueur fixe pour un code présentant une équiprobabilité des 6 symboles utilisés.

25 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 25 symboleCode lg. fixeVLC1VLC2 abcdefabcdef L moyenne 33,52,66 Dans ce cas équiprobable, le code VLC2 serait meilleur. Ce nest peut être pas le plus performant si les symboles ne sont plus équiprobables (et peut être que pour une distribution donnée, le code VLC1 serait le plus performant). Remarque : les codes préfixés (ou préfixes) sont des codes « uniquement déchiffrables » : codes pour lesquels toute suite de mots ne peut être déchiffrée que dune seule manière. Exemple : {0, 11, 010} est uniquement déchiffrable mais nest pas un code préfixé. Les théorèmes de Kraft et de Mac Millan permettent dassocier à tout code uniquement déchiffrable, un code préfixé équivalent.

26 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 26 Décodage (utilisation dun code préfixé) : Différents algorithmes permettent de déterminer des codes à longueurs variables pour une source donnée en garantissant ce « préfixage ». Le codage de Huffman et celui de Shannon-Fano sont les deux exemples les plus connus. Donner un 3ème code à longueur variable (mais non préfixé) ? Réponse : le morse, vrai code VLC

27 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 27 Algorithme de Huffman : Lalgorithme de Huffman est certainement le plus utilisé en raison de sa gratuité, sa simplicité et son efficacité. Un grand nombre de normes de compression dimages le préconisent. Cest le cas de JPEG et MPEG en particulier. Lalgorithme de Huffmann a été décrit pour la première fois en Lalgorithme crée des codes de longueurs variables en fonction des probabilités fournies par un modèle, ou la connaissance de la séquence complète. Les symboles sont dabord triés et classés en fonction de leur fréquence (occurrence). Un graphe est alors construit de la manière suivante : A partir des deux symboles présentant la fréquence la plus faible, un nœud est créé. Il lui est affecté un poids égal à la somme des fréquences des deux symboles. Le nœud créé remplace désormais les deux symboles dans la suite du processus. A ces derniers sont affectés respectivement les chiffres binaires 0 pour le plus fréquent et 1 pour le plus rare, (ou linverse, il sagit dune convention totalement arbitraire). La même démarche est reprise en considérant les deux symboles ou nœuds de poids le plus faible. Elle est renouvelée tant quil reste plus dun nœud libre.

28 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 28 Exemple : Soit un message de 36 caractères, composé des caractères A, B, C, D et E qui apparaissent selon les fréquences suivantes : Symboles : A B C D E Fréquences : Le graphe ci-dessous fait apparaître les symboles depuis le plus fréquent (D) jusquau moins fréquent (E). Les symboles C et E fusionnent vers un même nœud de poids 5+4=9

29 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 29 Puis les symboles ou nœuds de poids les plus faibles sont à nouveau considérés : il sagit ici de 2 symboles à nouveau : A et B Le processus est renouvelé avec le nœud de poids 9 et celui de poids 13. Il reste enfin à fusionner le nœud de poids 22 et le symbole restant, de poids 14 :

30 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 30 La deuxième phase de lalgorithme consiste à « redescendre » ce graphe binaire, en affectant à la branche conduisant au poids le plus faible, la valeur 0 par exemple, et 1 à lautre. On obtient :

31 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 31 Le codage obtenu est donc : D (occurrence =14) : 0 A (occurrence =7) : 111 B (occurrence =6) : 110 C (occurrence =5) : 101 E (occurrence =4) : 100 Le symbole le plus fréquent a obtenu le code le plus court, les autres ont, dans cet exemple, des longueurs équivalentes. Quelle est la longueur moyenne de code ? 1 bit pour D qui apparaît 14 fois dans le message, 3 bits pour les autres qui apparaissent 22 fois en tout. lm = (1*14 + 3*7+3*6+3*5+ 3*4)/36=80/36=2.22 Pouvait-on faire mieux ? La réponse est donnée par la valeur de lentropie du message : H = (14/36)*log2(36/14)+(7/36)*log2(36/7)+(6/36)*log2(36/6)+(5/36)*log2(36/5)+(4/36)*log 2(36/4) H = log2(36) - (1/36) * [ 14*log2(14) + 7*log2(7) + 6*log2(6) + 5*log2(5) + 4*log2(4) ] H = ln(36)/ln(2) - 1/(36*ln(2)) * [ 14*ln(14) + 7*ln(7) + 6*ln(6) + 5*ln(5) + 4*ln(4) ] H = = Nous voyons que la longueur moyenne de code donné par lalgorithme dHuffman est très proche du plancher théorique de lentropie.

32 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 32 Algorithme de Shannon-Fano (ou de Fano) : Lalgorithme de Shannon-Fano est le suivant : 1) on classe les symboles par ordre de probabilités décroissantes, 2) on partage lensemble des symboles en deux sous-ensembles, les 2 sous-ensembles devant être de probabilités aussi proches que possible, 3) on attribue à chaque sous-ensemble létat 0 ou 1, 4) on re-partage chaque sous-ensemble en deux sous-ensembles de probabilités aussi proches que possible, on attribue à chaque nouveau sous-ensemble létat 0 ou 1, etc. Lalgorithme est arrêté lorsque lon atteint des sous-ensembles ne comportant quun symbole. Prenons le même exemple : Symboles : A B C D E Fréquences : Une fois ordonnée par fréquences décroissantes, la liste de symboles est partagée en 2 ensembles de probabilités les plus proches (sommes des probabilités des symboles les composant) :

33 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 33 Les autres découpages possibles présentent des disparités supérieures. Chaque sous-ensemble est décomposé selon le même principe. On aboutit à :

34 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 34 Chaque sous-ensemble ne contient quun symbole. Le processus est alors arrêté et le codage est effectué en partant du sommet de la hiérarchie obtenue, en choisissant 0 pour la probabilité la plus forte par exemple : Le codage obtenu est donc : D (occurrence =14) : 00 A (occurrence =7) : 01 B (occurrence =6) : 11 C (occurrence =5) : 100 E (occurrence =4) : 101

35 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 35 Les symboles les plus fréquents ont là encore obtenu les codes les plus courts. Quelle est la longueur moyenne de code ? 2 bits pour D, A et B qui apparaissent au total 27 fois dans le message, 3 bits pour les 2 autres qui apparaissent 9 fois en tout. lm = (2*27 + 3*9)/36=81/36=2.25 Le résultat est très proche de celui obtenu par Huffman. Les 2 sont proches de lentropie H = Les 2 codes sont bien préfixés : aucun code nest le début dun autre code. Le décodage pourra se faire sans ambiguïté. Il faut toutefois fournir la table de correspondance entre les codes obtenus et les symboles de départ : on parle de dictionnaire. Peut-on parler de compression ? Le taux de compression peut se définir comme le rapport entre la taille du message dans son code dorigine, et la taille du message après re- codage. Pour effectuer la comparaison, on peut considérer que les symboles sont des caractères, codés généralement sur 1 octet (8 bits). Mais sur cet exemple ne faisant appel quà 5 caractères différents, il est plus juste de considérer quun codage à taille fixe nécessiterait Ent [ log 2 (5) ]+1 = Ent[2.32 ]+1 = 3 bits pour chaque symbole, soit 3*36 = 108 bits pour le message complet. Le taux de compression obtenu est donc de 108/80 = 1.35

36 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 36 Si on considère quil faudrait ajouter le dictionnaire pour retrouver le format dorigine, la compression risque ici de ne pas être valable ! Elle devient intéressante pour des messages longs (la taille du dictionnaire devient négligeable) et des grandes disparités dans les occurrences. On appelle efficacité h dun codage le rapport : h = H/Lm et redondance du codage, la quantité : R = 1 – h Dans lexemple précédent le codage par Huffman donne h = 2.168/2.22 = et R = Intuitivement, on se rend compte que si les symboles étaient tous équiprobables, les techniques précédentes conduiraient à obtenir des codes dont les longueurs moyennes correspondent à celles dun code à longueur fixe. Dans le cas où le nombre de symboles à coder est une puissance de 2, le code à longueur fixe est alors optimal et il ny a aucune redondance à exploiter.

37 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 37 Dans le cas général, le principe de la synthèse dun code compact consiste donc à ramener le codage dune série de symboles dune source S au codage de deux symboles ou de deux groupes de symboles ayant des probabilités démission les plus égales possible. C'est sur ce principe que reposent les algorithmes de Huffman ou de Fano. En règle générale, ces 2 codages sont concurrents et le plus efficace des 2 dépend de la source. Sous la forme donnée précédemment, ces algorithmes nécessitent de connaître les occurrences de tous les symboles, donc dacquérir la totalité du message (signal ou image) avant codage. Il existe une forme récursive de lalgorithme de Huffman permettant la mise à jour du graphe à chaque nouvel événement qui modifie les fréquences. Remarque : Les algorithmes précédents sont-ils adaptés à la compression des images ? On peut remarquer que lhypothèse dune source sans mémoire nest pas respectée, une première redondance existe et il faut la diminuer. Il est possible de sapprocher de lhypothèse dune source sans mémoire, si sur chaque ligne dune image, on calcule simplement lerreur entre le niveau de gris du pixel courant s(x,y) et celui du précédent sur la ligne s(x-1,y) : e(x,y) = s(x,y) – s(x-1,y). On peut sen convaincre par les histogrammes de limage suivante et de limage différence.

38 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 38 On se rapproche des hypothèses précédentes. On peut montrer que toute source dinformation qui présente une loi de probabilité décroissante peut être codée à laide dun codage compact (codage entropique). Dans la pratique, les algorithmes de codage entropique ne sont pas utilisés directement sur les valeurs des pixels de limage, mais sur des grandeurs obtenues après transformation des valeurs des pixels (comme la DCT par exemple). Une autre technique consiste à utiliser les corrélations de l'image en cherchant à appliquer le principe dextension de source évoquée précédemment. Comme il est difficile de prévoir la longueur de blocs de pixels voisins uniformes (qui donnerait lordre de lextension), cest sous une forme légèrement différente que le principe dextension de source est adopté : il sagit du codage par longueur de plages.

39 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 39 V. Autres codages sans perte Codages par longueur de plages La solution adoptée dans la méthode appelée RLE (Run Length Encoding) ou RLC (Run Length Coding) consiste à créer une extension en changeant le support dinformation. On forme, en lisant limage ligne par ligne, des couples {longueur de plage, intensité}, où la longueur de plage est le nombre de pixels consécutifs ayant la valeur intensité. Cest une méthode très simple si limage comporte de nombreuses « plages » de valeurs identiques : il est alors avantageux de coder la longueur (le nombre de symboles identiques) et la valeur de chaque plage. Cst particulièrement vrai dans le cas dimages avec « aplats » (Ex. logos, images graphiques), ou le codage des coefficients DCT quantifiés dans lalgorithme de type JPEG. Exemple 1 : soit la suite suivante, correspondant à des niveaux de gris prélevés dans une ligne dimage : 11, 11, 15, 16, 16, 16, 16, 25, 25, 25, 31, 31, 31, 31, 31, 8 Le codage par plage dun tel signal donne la suite des paires de nombres suivantes : (2, 11), (1, 15), (4, 16), (3, 25), (5, 31), (1, 8) fournissant un nouveau codage de la ligne :

40 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 40 Exemple 2 : soit la suite des coefficients d'une DCT suivante : 15 0 –2 –1 – … 0 (64 coefficients au total) Un codage légèrement modifié par rapport au précédent, qui serait {nombre de zéros qui précédent une valeur donnée, valeur} donne : –2 0 –1 0 –1 3 1 EOB (End of Block : la suite ne comprend plus que des zéros) Dans tous les cas, retenir que linformation codée nest plus la source originale, mais on utilise les propriétés spécifiques aux images pour décorréler la source, ce qui permet dextraire et concentrer linformation. Les méthodes de type RLE correspondent aux schémas les plus courants de compression des images (dans les formats BMP, TGA, TIFF, SGI, PICT, …). Efficace dans les images « simples », il devient mauvais sur les images complexes (scènes naturelles). Parfois les méthodes de type RLE sont associées à des lectures par plans de bits. Chaque octet est considéré selon leurs n° de bits : on considère tous les bits de rang 7, tous les bits de rang 6 etc. Les techniques RLE sont alors plus efficaces et sont généralement combinées à des techniques destructrices, par la suppression des bits de poids faibles, ce qui dans le cas des images, ne provoque pas de modification visuelle. Pour profiter pleinement de longueurs de plages, il faut éviter les transitions (comme entre 7 : 0111 et 8 : 1000 en binaire, par lutilisation de codes adjacents comme le Gray réfléchi).

41 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 41 Méthodes à base de dictionnaires Dans les codages entropiques précédents, les sources étudiées étaient considérées comme aléatoires, ou tout au mieux, qualifiées de markoviennes dordre L (plages de longueur L). Dans la pratique, les sources ne sont pas purement aléatoires, et on peut observer des corrélations qui sétendent au delà de plages consécutives : un motif peut réapparaître plus loin par exemple. Dans les méthodes précédentes, un tel motif serait à nouveau codé, ce qui conduit à coder de linformation inutile. Les codages par dictionnaire sont fondés sur la constitution dune suite de motifs, apparaissant dans le flux du message. Ces motifs remplissent un dictionnaire, où ils sont indexés, et lorsque les motifs réapparaissent, ils sont simplement codés par leur index dans ce dictionnaire. Ils se rapprochent des algorithmes à extension de source (dans laquelle la notion dextension est élargie) et seront efficaces pour les sources longues, codés sur des alphabets restreints, ce qui permet denvisager la présence de motifs récurrents. Les codages de ce type les plus connus appliquent les algorithmes de type LZ ou lune de ses nombreuses variantes (LZ77, LZ78, LZW, LZSS…). Ces noms viennent de celui de leurs auteurs : Lempel, Ziv, Welch, ou de ceux leur ayant apporté des améliorations (Storer et Szymanski).

42 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 42 La seule manière pour un algorithme à dictionnaire dêtre efficace est dutiliser un dictionnaire dynamique ou adaptatif, c'est-à-dire construit selon la source à coder. Cest le principe de lalgorithme LZ et de ses variantes : Dans lalgorithme LZ78, chaque élément transmis par le codeur comprend un index (c'est-à- dire une adresse dans la table qui constitue le dictionnaire), ainsi que le code du caractère suivant. Si le dictionnaire comporte par exemple 4096 entrées, lindex est codé sur 12 bits, et le caractère suivant sur 8 bits par exemple. La concaténation de la chaîne trouvée et du nouveau caractère est entrée en fin de dictionnaire et est donc disponible comme nouveau motif. Lalgorithme LZW permet de coder un motif par un simple index sans avoir à transmettre le caractère suivant, mais il faut remplir le dictionnaire par tous les caractères isolés dabord. Le principe de lalgorithme peut sénoncer ainsi : Avant de commencer tout codage, une initialisation remplit les premiers emplacements mémoires de la table de traduction avec toutes les chaînes élémentaires possibles (les symboles de lalphabet). Lobjectif du codeur est de construire la plus longue chaîne en concaténant les caractères successifs entrant dans le codeur et en vérifiant que tout nouveau caractère associé constitue une chaîne déjà présente dans la table.

43 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 43 Un motif courant B (buffer) est initialisé à vide. Le caractère suivant C est concaténé à droite pour former un motif BC, recherché dans le dictionnaire. Sil sy trouve déjà, BC devient le nouveau motif courant B=BC et on concatène avec un nouveau caractère. Lorsque le motif nest pas trouvé, la dernière chaîne reconnue est codée par son adresse dans la table : on transmet (codage) lindex de B et le nouveau motif BC est ajouté au dictionnaire : le dernier caractère qui fait que la chaîne nest pas présente en table (caractère innovant) est concaténé à la dernière chaîne reconnue (qui a donné lieu à lémission de son code dadresse) et lensemble constitue une nouvelle chaîne stockée au premier emplacement libre de la table de traduction. La construction reprend à partir du caractère innovant : on commence alors avec un nouveau motif courant B=C. Exemple : Soit la chaîne dentrée utilisant 3 caractères : a b a c b a c b a b a b a a a a a a a La table des chaînes préfixes correspondantes est la suivante : a : 1 b : 2 c : 3 (symboles élémentaires), puis : ab : 4 ba : 5 ac : 6 cb : 7 bac : 8 cba : 9 aba : 10 abaa : 11 aa : 12 aaa : 13 aaaa : 14 La chaîne codée devient donc : , liste qui sera codée en binaire.

44 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 44 Décodage : Le décodeur fonctionne de manière symétrique : il doit conserver en mémoire le contenu de 2 motifs (LZ78) : le motif courant et le précédent. Ainsi, en recevant le code suivant, il lui est toujours possible den extraire le 1er caractère et de le concaténer à droite du motif précédent pour former un nouveau motif qui sera intégré au dictionnaire qui se reconstruit dynamiquement. LZ77 est utilisé dans les outils de compression de type ZIP : gzip sous linux, pkzip sous DOS, winzip sous windows, stuffit sous MacIntosh… LZW est souvent plus efficace et fait lobjet dune norme pour les images (formats GIF et TIFF). LZW nest plus gratuit depuis janvier 1995, et cela après une longue période de liberté qui avait favorisé son utilisation. Cet algorithme est couvert par un brevet américain détenu par Unisys. Une licence de Unisys est obligatoire pour toute utilisation. Les images au format PNG (Portable Network Graphics) utilise une variante de lalgorithme LZ77 ; ce format a été spécifié par le consortium W3C qui lui octroie un certain nombre davantages par rapport à GIF et JPEG. On notera que le format PNG (et lalgorithme LZ77) est dans le domaine public.

45 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 45 Codages arithmétiques Les algorithmes de Shannon-Fano ou de Huffman ont des limitations même dans leur domaine de prédilection. Ils fournissent un nombre entier de bits quand la valeur optimale de longueur de code prévue par la théorie peut être réelle. Dans les formats de compression classiques, les codages arithmétiques remplacent de plus en plus le codage de Huffman. Lidée générale consiste à représenter lensemble de la source sous la forme dun seul nombre réel. Comme dans lalgorithme de Huffman, on commence par considérer les probabilités des symboles. A chaque symbole, est alors associé un sous-intervalle de [0,1[ de longueur égale à la probabilité pi du symbole i. Les intervalles sont construits de la manière suivante : I0 = [0,p0[, I1 = [p0,p0+p1[, … Le codage consiste à générer la suite dintervalles emboîtés convergeant vers un réel R de ]0,1[ qui codera la source complète.

46 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 46 Exemple : Soit la séquence S = ABACBACA On calcule les occurrences : A(4), B(2), C(2) et donc les probabilités : p(A)=0.5, p(B)=0.25, p(C)=0.25. Les sous-intervalles sont donc : IA=[0, 0.5[, IB=[0.5,0.75[, IC=[0.75,1[ Séquence : A : on considère lintervalle [0,0.5[ B : dans lintervalle précédent, on considère le sous-intervalle IB=[0.5,0.75[ construit dans lintervalle précédent, donnant le nouvel intervalle [0.25,0.375[ A : dans lintervalle précédent ( [0.25,0.375[ ), on considère le sous-intervalle IA=[0, 0.5[ donnant ainsi [0.25,0.3125[, Ainsi de suite jusquau dernier symbole A : le réel codant la séquence sera le début du dernier sous-intervalle : En pratique, comme on ne peut pas coder sans arrondi une valeur réelle sur un nombre fini de bits, les décimales sont extraites au fur et à mesure pour un codage de leur valeur en arithmétique entière.

47 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 47 Décodage : il est symétrique au codage. Il faut connaître les intervalles initiaux associés à chaque symbole. Exemple précédent. I A =[0, 0.5[, I B =[0.5, 0.75[, I C =[0.75, 1[ Le réel est CODE= CODE= est compris dans lintervalle I A : A est le premier symbole. Alors : CODE= ( CODE – Inf(I A ) ) / longueur(I A ) Ici CODE devient : 0, qui appartient à lintervalle I B. Donc B est le 2 ème symbole et CODE= ( CODE – Inf(I B ) ) / longueur(I B ) On trouve : CODE = 0, /0.25 = 0, qui appartient à I A et ainsi de suite…

48 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 48 VI. Compression avec perte : application au codage des images 1. Mesures de la distorsion Il existe un grand nombre dapplications pour lesquelles il nest pas nécessaire de garantir un décodage parfait. Ce sont, pour lessentiel, les applications qui traitent les signaux destinés à nos sens : le son et limage en particulier, si une part de linformation initiale ne nous est pas perceptible. Nos sens sont mal commodes pour mesurer objectivement la distorsion. Et pourtant, le seul instrument vraiment capable dapprécier la qualité dune image [son] est bien loeil [oreille] lui [elle]-même. Il existe des mesures dites « objectives », parfois appelés critères de qualité. Leur inconvénient majeur est dêtre discutables dans la mesure où aucun de ces critères ne correspond exactement à ce que ressent loeil [oreille] ou plutôt lensemble du système visuel [auditif].

49 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 49 Parmi les critères objectifs, on peut retenir lErreur Quadratique Moyenne (EQM) : avec sc i, valeur décodée de léchantillon s i. On utilise préférentiellement un dérivé de lEQM, plus «physiologique» : le rapport signal crête sur bruit (PSNR, Peak Signal Noise Ratio), en dB, défini par : Avec par exemple S i la valeur des niveaux de gris des pixels dune image, et max(S i )=255 si ce niveau de gris est présent (le max des présents sinon). On estime quun PSNR inférieur à 30 dB conduit à une image décodée dont les différences avec loriginale sont visibles à lœil nu. Encore faut-il disposer de limage originale et dun système de visualisation de qualité suffisante pour apprécier ce résultat.

50 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 50 Dautres mesures de distorsion peuvent être introduites. La définition de lEQM précédente est liée à la distance Tandis que lon peut définir : On peut définir : En imposant une valeur maximale à la distorsion, on sassure que l'erreur commise n'est grande en aucun point, ce qui est adéquat quand le risque consiste en une erreur élevée commise localement (exemple : cartes de températures prises par les satellites météo)

51 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 51 Dans les méthodes de compression avec distorsion appliquées à des images, on peut trouver: - des techniques de quantification (scalaire ou vectorielle), - des techniques de prédiction, - des méthodes de transformation, - des méthodes fractales… Les méthodes fractales reposent sur le principe dhomothétie interne des objets, cest à dire que les objets peuvent être constitués dobjets identiques à eux mêmes après des transformations simples (affines). Les objets ne sont pas tous fractals, une approximation est donc faite. Les avantages des approches fractales résident dans la multi-résolution (adaptation à laffichage), à de meilleurs résultats à très fort taux de compression et à un décodage rapide. Mais les inconvénients (temps de calcul au codage importants, absence de norme, qualité pas plus élevée aux taux de compression usuels…) mettent en retrait cette approche par rapport aux méthodes utilisant des transformations (DCT – algorithme JPEG – et ondelettes – algorithme JPEG 2000 ). Les méthodes de prédiction reposent sur la grande corrélation des pixels voisins dune image, ou sur les échantillons successifs dun signal. Pour prédire de nouveaux échantillons, on utilise des coefficients optimisés par une technique de moindres carrés. Les méthodes de prédiction sutilisent également dans le cas des séquences dimages (vidéo) : la prédiction est alors temporelle.

52 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 52 Plusieurs des méthodes précédentes semploient souvent successivement dans un même schéma de compression. Les méthodes de prédiction et de transformation cherchent à supprimer une première redondance et passer dans un espace où la compression pourra sopérer en respectant des critères psychoacoustiques ou psychovisuels. Quelle sapplique aux données directement ou indirectement, cest très souvent une phase de quantification qui correspond à la partie destructrice de la compression. Souvent, une quantification non uniforme permet de réduire la longueur des mots binaires et le nombre de bits du signal. Elle permet une compression supérieure, en réduisant le nombre de niveaux de quantification et pourtant sans modification de lEQM. En quantification vectorielle, on travaille sur des petits blocs de limage qui sont remplacés par des valeurs issues dun dictionnaire, et non sur des pixels isolés. Quantification non linéaire : loi mu (loi ) et loi A Rapports signal/bruit dune loi linéaire et dune loi non linéaire :

53 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image Les méthodes de transformation Elles sont utilisées sur les signaux acoustiques comme sur les images. Ces transformations sopèrent sur des blocs. Transformations linéaires, elles sécrivent à laide dune matrice de passage, calculant à partir déchantillons n i, des composantes transformées, ou coefficients transformés n u. Après transformation, les blocs perdent leur nature initiale et leur sens psychophysique. La transformation est donc provisoire, et doit être réversible. On montre quil est possible de trouver des transformations linéaires qui, quelles que soient les valeurs n i, celles des n u deviennent très différentes les unes des autres. Si les valeurs de n u sont très grandes pour certaines, lannulation des plus petites nentraîne quune distorsion réduite : la compression est labandon dun certain nombre de composantes. La compression peut également utiliser une quantification non uniforme des n u.

54 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 54 Il existe des transformées qui garantissent : - une grande disparité entre les valeurs de ses composantes, (diminution de lentropie !) - une importance psychophysique réduite pour les plus petites des composantes transformées. La DCT (Discret Cosin Transform) présente ces avantages, plus quelques autres (coefficients réels, parité évitant des discontinuités…) par rapport à dautres transformées possibles (KLT, Fourier). La distorsion introduite par cette méthode est issue : - de lannulation des composantes les plus petites, - de la quantification des autres : les composantes obtenues n u sont réelles (même si les n i sont des entiers). Les composantes sont quantifiées par division puis arrondies et les coefficients diviseurs sont différents pour chaque composante : ils tiennent compte à la fois du taux de compression voulu, et de limpact psychophysique de chaque composante.

55 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image Transformées unitaires Partons dun exemple. Cherchons à remplacer une portion s(x) dune ligne dimage, définie sur un intervalle [-A/2, +A/2] par une combinaison linéaire de fonctions orthogonales. Rappelons que la base de fonctions m (x) est orthogonale si : La combinaison linéaire approximant s(x) est alors : Les coefficients a m sont les échantillons décorrélés représentatifs du signal s(x). Ils sont obtenus par : Un cas particulier que nous connaissons bien correspond à lanalyse de Fourier…

56 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 56 Pour une image numérique, s(x) représente les niveaux de gris dune série de N pixels adjacents, séparés de x. Les N coefficients distincts a m sont donnés par : * est appelé noyau de la transformation. Les transformations linéaires les plus intéressantes sont celles utilisant des noyaux dits séparables pouvant se mettre sous la forme : *(u,v,m,n)=a 1 (u,m)a 2 (v,n) Le calcul peut alors se faire en 2 étapes : Considérons une transformation orthogonale à 2 dimensions. Soit s(m,n) la matrice de dimension N*N dont les éléments sont les niveaux de gris dun bloc de N*N pixels. La combinaison linéaire peut être écrite :

57 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 57 La première étape calcule la matrice P(u,n) par : Soit :P = A 1 S G = P A 2 G = A 1 S A 2 Un cas très courant correspond à A 1 = A 2 T = A = A T (matrice symétrique). Rappelons quune matrice unitaire est définie par A -1 = A* T (A *T : matrice adjointe ou trans-conjuguée. Si A est réelle, mat. adjointe = matrice transposée) Pour une transformation unitaire orthogonale, cest-à-dire une matrice unitaire à coefficients réels, on a A -1 = A T. La seconde étape donne :

58 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 58 Quelles transformations ? A partir des valeurs s des pixels, on calcule donc des « coefficients de la transformée » ou « composantes transformées » G. On recherche les transformées qui fournissent des coefficients très petits. Ce seront ces coefficients qui seront abandonnés dans la phase de compression. Cet abandon correspond à leur remplacement par 0, pour utiliser la transformation matricielle inverse. Le problème est donc de formuler les transformations qui permettent de garantir lobtention de très petits coefficients transformés, et de contrôler la distorsion causée par labandon des plus petits. La mesure de lEQM (ou MSE) dans le domaine spatial ou dans le domaine transformé par une transformation orthogonale est la même. En effet, lEQM est, à un coefficient près, égale à la distance définie dans lespace vectoriel des blocs, et lalgèbre linéaire établit que les distances sont conservées dans le cas des transformations unitaires. LEQM est à un facteur 1/MN près, la somme des erreurs quadratiques effectuées sur chacune des composantes. Ainsi, labandon dun coefficient supplémentaire entraîne une augmentation de lEQM égale au carré du module de ce coefficient divisé par MN. Il nest donc pas nécessaire de décoder limage pour connaître lEQM produit.

59 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 59 En conséquence, plus le nombre de coefficients annulés est grand, et plus lEQM est grande, et pour un nombre fixé de coefficients annulés, il faut prendre les plus petits. Existe-t-il des transformations permettant de disproportionner les coefficients transformés de sorte que certains dentre eux soient les plus petits possibles, quelque soient les blocs considérés ? Nous devons nous intéresser à lEQM moyenne sur un ensemble de blocs E(EQM). On montre facilement que : Avec 2 et les variance et moyenne des différences entre valeurs avant et après compression, et, indicés par T, les mêmes grandeurs dans le domaine transformé, sur les seules composantes abandonnées.

60 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 60 Supposons que les valeurs initiales soient centrées (en JPEG, on soustrait la moitié de la dynamique – 128, en MPEG, après recherche des vecteurs mouvement, ce sont les différences qui sont codées spatialement ou encore, après une séparation YC1C2, les chrominances sont centrées). Une combinaison linéaire de variables aléatoires centrées est une variable aléatoire centrée : si les blocs sont centrés, ils le restent par une transformation linéaire. Si après transformation, on annule une partie des composantes, les niveaux de gris des blocs obtenus après transformation et compression, restent centrés. Ainsi, si on souhaite minimiser E(EQM), il faut trouver une transformation qui réduise au maximum la variance des coefficients supprimés. Il faut donc trouver la transformation qui compacte la puissance moyenne sur le plus petit nombre de composantes possibles (car la variance totale ne peut être que constante – conservation de lénergie). La transformation qui répond exactement à la problématique est la transformée de Karhunen-Loève.

61 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 61 La transformée de Karhunen-Loève est optimale en terme de compactage de lénergie. Alors que les pixels de limage dentrée sont corrélés, les coefficients transformés tendent à être décorrélés. Les éléments en dehors de la diagonale de la matrice de covariance R=E[(G-m G )(G-m G )* T ] tendent à devenir faibles par rapport aux éléments de la diagonale. Rappelons le principe de la KLT : Soient 2 vecteurs aléatoires X={x(0),…,x(N)} et Y={y(0),…,y(N)} dont les composantes sont des variables aléatoires. Les composantes de X sont corrélées entre elles. Posons Y=U T X (ou X=UY) tel que les composantes y soient orthogonales. (Rappel : y(l) et y(k) sont orthogonales si E[y(l)y(k)]=0 pour tout k différent de l. Elles sont décorrélées si E[y(l)y(k)]=E[y(l)]E[y(k)] pour tout l différent de k. Si elles sont décorrélées et à valeur moyenne nulle, elles sont orthogonales.) Soit Rx = E[XX T ] la matrice dautocorrélation engendrée par X. La matrice de KL réduisant Rx à sa forme diagonale sexprime par U=(u 1 … u k ). Les vecteurs u i sont les vecteurs propres normalisés de la matrice symétrique Rx rangés dans un ordre décroissant :

62 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 62 Les i sont les valeurs propres associées. La forme diagonale de Rx est donnée par : Les i sont égales aux variances des composantes transformées. Les composantes du vecteur transformé Y sont orthogonales car la matrice E[YY T ] se réduit à une matrice diagonale déléments i : E[y(k)y(l)] = k (k-l) Mais la KLT nest quun instrument de laboratoire : elle dépend des données et ne se prête pas à un calcul rapide. (elle nest pas séparable, il ny a pas de double transformation monodimensionnelle équivalente). Le calcul de la matrice dautocorrélation suppose les statistiques des blocs connus, ce qui nest pas possible en image.

63 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 63 La Transformée de Fourier Discrète TFD ou DFT La TFD permet de compacter linformation sur un petit nombre de composantes. La matrice na pas à être calculée, elle est issue de la définition et indépendante du bloc considérée. La transformation est séparable, elle permet décrire la transformation par le produit de 2 matrices. Enfin, les coefficients transformés ont une signification simple. Inconvénients : - les coefficients sont complexes (mais il ny a pas 2 M.N coefficients différents pour autant car la TF est hermitienne : la partie réelle est paire et la partie imaginaire est impaire). - Linconvénient principal est la périodisation implicite des blocs dimage due à la TFD. Lorsquon recopie des blocs, on fait apparaître généralement des discontinuités aux frontières : elles correspondent à des hautes fréquences. Ainsi, les coefficients les plus petits ne sont pas ceux qui correspondent aux fréquences les plus élevées car ces derniers sont relevés pour cette raison. Il ny a donc pas coïncidence entre coefficients les plus petits et phénomènes les moins importants perceptuellement. Leur suppression correspond à un minimum dEQM mais pas un minimum de perception visuelle.

64 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 64 De la TFD à la Transformée en Cosinus Discrète DCT La DCT est une transformation qui permet dobtenir certains coefficients plus petits que les plus petits coefficients obtenus avec une TFD. Les coefficients les plus petits sont localisés dans une « zone » dacuité visuelle minimale. Les coefficients sont réels. Les autres avantages sont issus de la TF dont elle découle : séparabilité et « explication » fréquentielle des coefficients. Cest labsence de discontinuités aux frontières qui expliquent des coefficients plus petits. La matrice dautocovariance des coefficients transformés possède des valeurs hors diagonale plus petits quavec la TFD, la puissance moyenne est plus compactée. De toutes les transformations unitaires, la DCT donne les résultats les plus proches de la KLT optimale. Lexpression de la DCT provient dune TFD modifiée dans la manière dont les blocs sont périodisés. La DCT est issue de la TF dune image fictive périodique et paire en recopiant dans toutes les directions un bloc de base, - de dimension double du bloc considéré, - composé de 4 blocs construits de la manière suivante :

65 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 65 Du bloc B, - B1 est identique à B, - B2 est symétrique de B par rapport à son axe vertical central, - B3 est symétrique de B par rapport à son axe horizontal central, - B4 est symétrique de B par rapport à son centre. B1B2 B3B4 Limage obtenue est ainsi réelle et paire, et elle ne présente plus les discontinuités aux frontières. Nous allons décrire les grandes étapes aboutissant à lexpression de la DCT. Notons que lorigine de la DCT sur un bloc de taille M.M permet denvisager son calcul par lutilisation dune TFD sur 2M points. (ce qui est fait dans certains logiciels de calcul). Dans la pratique, on utilise la DCT sur des blocs de 8*8 pixels où son calcul est optimisé. = Bd

66 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 66 Limage précédente est périodique de période 2M*2N. La TFD sécrit : avec : Limage nest pas exactement paire car le pixel n(-1,-1) est égal à n(0,0). Le centre de symétrie nest pas défini, il faut faire un décalage de -1/2 dans les 2 directions en déphasant les coefficients transformés : (on a simplifié ici en prenant N=M correspondant aux cas pratiques)

67 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 67 La suite sobtient en considérant la double somme précédente comme la somme de 4 doubles sommes pour : i:0 à M-1, j:0 à M-1 (terme A) i:0 à M-1, j:M à 2M-1 (terme B) i:M à 2M-1, j:0 à M-1 (terme C) i:M à 2M-1, j:M à 2M-1 (terme D) Par changements de variables, les termes B, C et D peuvent sexprimer sous la forme de sommes sétendant pour i:0 à M-1, j:0 à M-1. En posant 1=2 (i+1/2)u/2M et 2=2 (j+1/2)v/2M, on obtient ainsi : qui donne, en développant :

68 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 68 On voit que dans lexpression obtenue, seules les valeurs de u et v comprises entre 0 et M-1 servent à définir complètement N(u,v). Les coefficients de la transformation obtenue sont donc : avec : Les coefficients sont donc réels, et décroissants jusquà la valeur M-1 pour u ou v. La transformation ainsi obtenue nest pas unitaire. Pour trouver les coefficients de normalisation, il faut considérer les cas suivants : 1) u et v égaux à 0 : la norme du vecteur ligne est égale à 2, on normalise donc les 2 termes par 1/racine(2), 2) u et v différents de 0 : déjà normé, 3) u=0 et v différent de 0 (ou le contraire), la norme du vecteur ligne vaut racine(2).

69 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 69 Finalement, on introduit les constantes c(u) et c(v) donnant les coefficients suivants : avec : La transformation DCT bidimensionnelle sécrit finalement : La DCT est unitaire : A* T.A=I et ses coefficients sont réels. Ainsi, A -1 = A T, permettant décrire la DCT inverse par lexpression :

70 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image JPEG et la compression des images fixes Petite histoire du format JPEG Lhistoire commence à la fin des années 80, lorsque deux importants groupes de normalisation, le CCITT (Consultative Committe for International Telegraph and Telephone) et lISO (Organisation Internationale de Standardisation) appuyés par divers groupes industriels et universitaires, décident de créer une norme internationale pour la compression des images fixes. La mise en place dun standard international était devenue nécessaire pour archiver ou pour faciliter léchange des images dans des domaines aussi variés que les photos satellites, limagerie médicale, la télécopie couleur, ou la cartographie… Cest ainsi que fut créé le groupe JPEG (Joint Photographic Experts Group) à lorigine de la norme qui porte son nom. Cette norme comprend des spécifications pour les codages de limage, sans et avec distorsion. Le groupe JPEG avait retenu les contraintes dexploitation suivantes : - possibilité daffichage séquentiel ou progressif, - possibilité de modes de compression sans dégradation, - possibilité dimplémentation hard ou soft, - utilisation compatible avec les performances des réseaux de type Numéris.

71 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 71 Les objectifs étaient ambitieux : on imposait dobtenir avec : bits/pixel : une image visuellement identique à loriginale, bit/pixel : une image de qualité excellente, bit/pixel : une image de qualité visuelle moyenne, bit/pixel : une image encore reconnaissable ! Des algorithmes candidats ont été comparés sur 5 images couleur 16 bits. 3 techniques ont été pré-retenues en La technique à base de DCT a été retenue en La norme parut en 1993 ! La qualité de limage doit être paramétrable. Les données sont dautant plus compressées que la qualité exigée est faible. La norme JPEG nimpose pas de format aux images. Le processus de compression est applicable en principe à toutes les sources dimages numérisées. Les spécifications nindiquent pas la dimension de limage et le nombre de pixels, ni le type de codage des données représentant la couleur.

72 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 72 On peut noter que lœil est beaucoup plus sensible à de faibles variations dintensité lumineuse (luminance) quà celles de la couleur (chrominance) : les informations sur la couleur peuvent donc être davantage compressées que celles sur la luminance. Ainsi si limage initiale est codée sous une forme RVB, une séparation luminance-chrominance peut être dabord effectuée. On utilise une transformation conduisant à un codage YC 1 C 2 : Y=0.299R+0.587V+0.114B C r =R-Y et C b =B-Y avec une quantification plus importante sur ces plans. La compression opère de la même manière sur les 3 plans obtenus. Si cette conversion préalable est réalisée, le décodeur doit être informé.

73 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 73 La transformation DCT La transformation est réalisée, non pas sur limage entière, mais sur des blocs de 8 x 8 pixels. En effet, les matrices doivent être carrées et une taille plus grande serait trop coûteuse en temps de calcul. A partir des valeurs n(i,j) du bloc considéré de MxM pixels, la transformation calcule les coefficients N(u,v) par : avec :

74 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 74 La transformation inverse sécrit : Le calcul de la DCT se réalise aisément en sécrivant sous une forme matricielle : Considérons la matrice S des valeurs des pixels : On considère la matrice A, formée par les éléments a ij :

75 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 75 Cette matrice A sécrit : La transformation sobtient par : M = A t x S x A Les factorisations et développements spécifiques au cas 8x8 permettent deffectuer la transformation en 40 multiplications et 56 additions (le calcul direct donne 512 multiplications et autant dadditions).

76 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 76 La DCT est donc effectuée sur chaque matrice 8x8 de valeurs de pixels, et elle donne une matrice 8x8 de coefficients significatifs de fréquences spatiales : lélément (0,0) est représentatif de la valeur moyenne du bloc et est appelé coefficient DC, les autres (coefficients AC) fournissent la puissance spectrale selon chaque fréquence 2D spatiale. La DCT est conservatrice si on ne prend pas en compte les erreurs darrondis quelle introduit. La matrice C transformée par DCT présente la propriété de regrouper les valeurs les plus élevées dans le coin supérieur gauche de la matrice (les valeurs devenant dautant plus faibles que lon sapproche du coin inférieur droite, donc que lon se situe dans les " hautes fréquences "). Ainsi le maximum dinformation sur limage se trouve concentré sur la partie supérieure gauche de la matrice et la compression de limage sera facilitée.

77 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 77

78 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 78 Exemple : On considère la Matrice S des valeurs s(i,j) des pixels dun bloc : S =

79 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 79 On obtient après transformation la matrice des composantes transformées, (après un arrondi destiné à obtenir des entiers : M=

80 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 80 La quantification La quantification représente la phase non conservatrice du processus de compression JPEG. Elle réduit le nombre de bits nécessaires : chaque valeur de la matrice DCT est divisée par un nombre (quantum), fixé par une table (mémorisée sous la forme dune matrice 8 x 8) de quantification, puis arrondie à lentier le plus proche. La valeur du quantum est dautant plus élevée que lélément correspondant de la matrice DCT contribue peu à la qualité de limage, donc quil se trouve éloigné du coin supérieur gauche. Cest pourquoi les matrices de quantification comportent généralement des valeurs constantes selon des diagonales ascendantes mais croissantes dune diagonale à la suivante : cet accroissement constitue le pas du quantum, ou le " facteur de qualité ", car la perte de précision sera dautant plus grande que ce pas sera élevé. Les matrices de quantification doivent être connues du décodeur donc transmises avec limage. Cela ne permet pas dajuster la matrice de quantification au bloc à traiter. Dans la norme JPEG, seules 4 matrices de quantification peuvent être transmises dans 1 image. Des jeux de matrices ont été proposées par les membres du comité JPEG et sont publiés dans une recommandation. Les matrices dépendent du logiciel utilisé. Un exemple de matrice de quantification Q est donné ci-dessous :

81 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 81 16*Q= La matrice quantifiée devient donc (arrondie ici en nombres entiers) : MQ=

82 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 82 Ce sont les éléments de cette matrice qui vont être codés par lalgorithme. On remarque la grande valeur du premier coefficient (1,1) de cette matrice. Ce coefficient exprime la valeur moyenne des valeurs de niveau gris du bloc de limage (après transformation). Sur un bloc uniforme, cest la seule valeur non nulle des coefficients. Cette valeur est souvent très proche dun bloc au suivant dans limage : ce coefficient sera codé dune manière différente de tous les autres, par un codage différentiel : le coefficient DC dun bloc est corrélé avec le coefficient DC du bloc précédent. E(k)=DC(k)-DC(k-1). Il sagit dun codage de type « Differential Pulse Code Modulation » (DPCM). Il sagit donc dun codage de type prédictif. La suite des coefficients DC subit alors un codage de type Huffman. Les autres coefficients (coefficients AC) vont être codés en parcourant les éléments dans lordre imposé par une séquence particulière en zigzag :

83 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 83 Cette lecture en zigzag est justifiée par les valeurs proches des coefficients le long des diagonales ascendantes. Elle a pour but de rapprocher des valeurs identiques et de reporter le maximum de valeurs nulles vers la fin de la séquence. Dans lexemple précédent, on obtient : Cette séquence est alors codée en utilisant un codage de type RLC (de type {longueur plage nulle, valeur} ) auquel est appliqué un codage de Huffman

84 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 84 Dans lexemple précédent, plusieurs sources de distorsion sont prévisibles : - lorsquon a arrondi les coefficients de la matrice M pour obtenir des entiers. A partir de M, on peut calculer la transformation DCT inverse. On obtient sur cet exemple : et la différence à la matrice originale est donc :

85 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image La distorsion vient essentiellement de la quantification volontaire appliquée aux coefficients (matrice MQ) de lexemple. Appliquons la transformée inverse. Nous obtenons :

86 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 86 La différence à loriginale est donc : Lorsquon souhaite des taux de compression élevés (généralement, les logiciels proposent une qualité de limage sur une échelle de 0 à 10 ou 0 à 100), la matrice de quantification supprime plus encore de coefficients en partant du coin inférieur droit. Au taux de compression le plus élevé (qualité la plus faible), seul le coefficient DC est conservé : le bloc de 8x8 pixels est remplacé par la valeur moyenne des valeurs du bloc.

87 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 87

88 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 88 Remarques : - Cest aux frontières des blocs que la compression devient de plus en plus visible lorsque le taux de compression devient plus élevé. - lalgorithme de compression nécessite une puissance de traitement égale pour la compression et la décompression (due en grande partie à la transformation DCT ou DCT inverse), - la norme JPEG nimpose pas de format de fichier.

89 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 89 Le principe de compression JPEG se prête bien à un affichage progressif, important dans le cas de débit faible, pour transmettre dabord linformation importante de limage puis les détails. Lorsque cette fonctionnalité nest pas utilisée, on parle de JPEG baseline. Les solutions peuvent reposer sur plusieurs principes : – Transmettre dabord les coefficients correspondant aux basses fréquences puis les coefficients correspondant aux hautes fréquences : cela est possible grâce à la méthode adoptée (DCT) : La DCT inverse est appliquée aux coefficients DC puis à des sous matrices (par ex 4x4). – Transmettre dabord les bits de poids forts puis les bits de poids faible. Il sagit du mode appelé « approximation successive » : toutes les composantes de la DCT sont concernées, mais seulement les bits de poids fort de chaque valeur. - Utiliser les 2 méthodes précédentes de façon mixée. La norme JPEG prévoit tous ces modes progressifs.

90 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 90 Des bancs de filtres aux ondelettes Rappelons nous quelques conclusions de lanalyse de signaux par Transformée de Fourier. La TF à fenêtre permet dapporter une analyse dans le domaine fréquentiel en maintenant la connaissance des instants auxquels ont lieu les événements temporels. La limitation vient dune résolution en fréquence constante, comme l'est la résolution en temps, puisque la fenêtre et sa transformée ont un support de largeur fixe (ceci est particulièrement évident si la fenêtre est gaussienne, puisque la fonction de Gauss est égale à sa transformée)... Conséquence que lon perçoit très bien intuitivement : pour étudier des basses fréquences, un long temps d'observation est nécessaire ; réciproquement, pour étudier de hautes fréquences seul un court temps d'exposition est nécessaire. Le principe dincertitude dHeisenberg conclut à l'impossibilité d'obtenir des résolutions arbitrairement grandes à la fois en temps et en fréquences.

91 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 91 Une manière de contourner les contraintes contradictoires imposées par l'inégalité d'Heisenberg consiste à choisir des filtres d'analyse (les fenêtres) dont la largeur de bande est proportionnelle à leur fréquence centrale, ce qui permet de créer un banc de filtres d'analyse avec des largeurs de fenêtre différentes. Cette approche est aussi appelée analyse à facteur de qualité constant, car on maintient Q=cste= f/f. En utilisant de tels filtres en image, on peut maintenir bonne la résolution spatiale aux hautes fréquences et la résolution fréquentielle aux basses fréquences. Ces bancs de filtres correspondent aux bases dondelettes. La transformation en ondelettes continue est dans son principe semblable à la TF : une décomposition sur une base de fonctions qui forment ici lensemble des fonctions translatées et dilatées dune fonction mère : où et a représentent respectivement les facteurs de décalage et déchelle.

92 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 92 Les fonctions doivent satisfaire certaines conditions pour être des ondelettes, comme être de moyenne nulle, à support temporel et fréquentiels bornés, elle doivent changer de signe au moins 1 fois, etc… Londelette la plus simple est la fonction proposée par Haar en 1909 : la différence entre 2 échelons. On peut citer londelette « chapeau mexicain », dérivée seconde dune gaussienne : La transformée en ondelettes consiste à faire le produit scalaire entre londelette analysante et le signal. La transformée en ondelettes a une résolution temps-fréquence qui dépend de l'échelle s.

93 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 93 La transformée en ondelettes se calcule par une transformée en ondelettes rapide. Celle-ci peut effectuer une transformée discrète par des convolutions circulaires, elles-mêmes calculées par FFT. Pour accélérer les calculs, on utilise souvent des « ondelettes dyadiques » (a=2 m ). Les ondelettes dyadiques sont des ondelettes dont la dilatation vérifie une propriété spécifique qui permet d'implémenter les transformées par des bancs de filtres. La définition des ondelettes dyadiques est fondée sur celle des approximations multirésolutions. Le découpage de l'espace fréquentiel apporté par le banc de filtres permet d'introduire la notion d'analyse multi-résolutions, c'est-à-dire que le fait de permettre d'analyser à la fois des niveaux grossiers (peu riches en détails ou basses fréquences) et des niveaux fins (riches en détails ou hautes fréquences).

94 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 94 Rappel du cours (partie 1) : G 0 (z) 2G 00 (z) 2 G 01 (z) 2 G 1 (z) 2 G 000 (z) 2 G 001 (z) 2 Approximation a Détails d

95 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 95 Cette stratégie sétend au domaine 2D :

96 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 96 Application à la compression des images : JPEG2000 Historique : un appel à propositions a été lancé en 97 par lISO et lITU pour couvrir un champ plus large dapplications que JPEG, des images binaires aux images multicomposantes. JPEG2000 spécifie un grand nombre de critères dont : - Accroître de 30% les performances de JPEG en termes de distorsion/débit, - Permettre de compresser des images multicomposantes par exemple, comportant des sous-images binaires par exemple, - Permettre des modes avec et sans perte, - Une transmission progressive, - Définir des ROI, - Respect des tatouages de limage, etc…

97 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 97 Schéma de compression 1. Etapes de prétraitements Limage est décomposée en blocs mais qui ne sont plus de taille imposée comme en JPEG (8*8). On parle de tuiles généralement de taille 64*64 ou 128*128. Limage est aussi ramenée à des entiers signés par lintroduction dun biais égal à la mi-échelle. Si limage est multicomposante (ex, image couleur), JPEG2000 définit 2 transformations possibles : - RCT (Reversible Color Transform), réversible car concernant des entiers, - ICT (Irreversible Color Transform), correspondant à la tansformation en YUV classique.

98 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 98 Transformation RCT : Y = ¼ ( R + 2G + B) C b = B – G C r = R - G La transformation inverse sobtient par : G = Y – ¼ (C b + C r ) R = C r + G B = C b + G Transformation ICT : Y = 0.299( R – G ) C r = ( R – Y ) C b = ( B – Y ) soit :

99 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image Transformation en ondelettes La DCT de JPEG est donc remplacée par une DWT, appliquée à chacune des tuiles issues de létape précédente. Notons que 2 méthodes sont utilisables selon la norme : - La méthode de convolution : produits scalaires entre filtre et données. Les filtres à coefficients réels retenus sont les filtres 9.7 de Daubechies. - Le « lifting » : méthode dans laquelle les échantillons de rang pair sont remplacés par une somme pondérée des échantillons de rang impair et réciproquement. La méthode est plus rapide quune DCT ! En 2D, la pyramide produit 4 sorties, par filtrage passe-bas (L) et passe-haut (H) dans les 2 directions horizontale et verticale. On note les 4 sorties : LL, HL, LH et HH. Limage de sortie LL ne traduit pas dinformation directionnelle. Elle permet de poursuivre la construction de la pyramide. Chaque image à un niveau n+1 représente en taille un quart de limage à la résolution n. Les images LH et HL contiennent les détails horizontaux et verticaux, limage HH, les gradients diagonaux.

100 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 100

101 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 101

102 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 102

103 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 103 Filtre 9.7 de Daubechies :

104 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image Quantification Notons une première différence avec le quantificateur scalaire « standard » : le quantificateur est ici uniforme, mais avec zone morte (« dead zone ») dune largeur double (par exemple) du pas de quantification autour de 0. Une autre différence avec JPEG, consiste dans un codage par plans de bits, du MSB au LSB. La raison tient dans un objectif de « scalabilité » par transmission progressive par amélioration de la qualité du pixel.

105 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 105

106 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image Codage arithmétique adaptatif Chaque plan de bits est codé à laide dun codage arithmétique adaptatif selon le « contexte ». Le choix dun codage arithmétique plutôt que Huffman vient du fait que Huffman est mal employé sur des données par plans de bits (il ne permet pas datteindre moins d1bit par symbole). Lestimation des probabilités du codage arithmétique évolue en fonction du contexte, cest-à-dire du voisinage du symbole. Le contexte est obtenu à partir des valeurs des 8 voisins connectés au bit examiné. Cela permet un encodage en 3 passes (selon quun bit est jugé significatif ou non, fonction de son voisinage) là encore pour des raisons de scalabilité (organisation du flux par couches (layers) ). Enfin, une étape importante est le regroupement en code_blocs (généralement 32*32) des sous-images, codes blocs qui seront codés de manière indépendante, permettant daccéder à une zone spatiale de manière aléatoire, ou encore de paralléliser les calculs.

107 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 107

108 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image basse résolution, haute précision SNR scalabilité

109 Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 109 JPEG2000 vs JPEG 2 images à 0.25 bits/pixel


Télécharger ppt "Signal et Image Pierre Courtellemont – Master IMA – Signal et Image 1 Master IMA M1 UE Signal et Image Partie 3 : Traitement de lInformation Application."

Présentations similaires


Annonces Google