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

Vidéo Numérique: Analyse et Codage Cours en Master ISM Partie I Jenny Benois -Pineau Université Bordeaux -1 Vidéo Numérique: Analyse et Codage Cours en.

Présentations similaires


Présentation au sujet: "Vidéo Numérique: Analyse et Codage Cours en Master ISM Partie I Jenny Benois -Pineau Université Bordeaux -1 Vidéo Numérique: Analyse et Codage Cours en."— Transcription de la présentation:

1 Vidéo Numérique: Analyse et Codage Cours en Master ISM Partie I Jenny Benois -Pineau Université Bordeaux -1 Vidéo Numérique: Analyse et Codage Cours en Master ISM Partie I Jenny Benois -Pineau Université Bordeaux -1

2 Programme du cours (I) 1. Introduction. Video dans des systèmes multimédia 2. Aspects technologiques –Formats, numérisation, résolution, couleur 3. Analyse et estimation du mouvement dans la vidéo 4. Notions de la théorie de linformation 5. Codage sans pertes des informations multimédia 6. Codage prédictif (MICD) et quantification des signaux visuels 7. Eléments de codage par QV 8. Transformées orthogonales et codage par transformées. Application au codage. JPEG, MJPEG

3 Programme du cours (II) 9. Normes et Standards de codage avec la compensation du mouvement et compression –Bases de larchitecture des standards MPEG1, MPEG2 –MPEG2 –H. 264 –MPEG4 - concept basé objet de codage vidéo 10(*). Eléments danalyse sur des flux codés

4 1.Introduction (I) Vidéo dans les systèmes multimédia (1)TV analogique et numérique TV numérique dhier/CDROM

5 1.Introduction (II) Vidéo dans les systèmes multimédia (2) TV numérique daujourdhui/DVD (3) TNT (télévision numérique terrestre) – DVB-T (1995) (4) TVHD, DVDHD

6 1.Introduction (III) Vidéo dans les systèmes multimédia (5) Vidéo sur IP

7

8 (4) Vidéo via réseau sans fil (5) Numérisation du patrimoine culturel – du bétacam au DVD (6) BD vidéo – archives demodemo (7) Production et post- production sous forme numérique 1.Introduction (IV) Vidéo dans les systèmes multimédia

9 2.Aspects technologiques Formats Historique : TV analogique Standard Résolution en pixels / LignesCadenceSecteur Géographique NTSC 640x480 (525) carré 720x480=704+ 1630 ips = 2x60 trames USA, Canada, Japon, Philippines, Moyen Orient PAL 720x576 (625), 768x57625 ips=2x50 trames UK, Chine, Singapour, Allemagne, Amérique du Sud SECAM720x576 (625),25 ips=2x50 trames France, Europe de l'EST (MESECAM) PAL/SECAM : la même résolution et la même fréquence NTSC : National Television System Committee PAL : Phase Alternation Line SECAM : Système Electronique Couleur Avec Mémoire, 1967

10 Tramage Formation dune image sur lécran de TV Trame impaire Trame paire Le spot lumineux « affiche » dabord les lignes de la trame « impaire » ( 1, 3, 5, …) en 1/50 de sec (PAL/SECAM) Ensuite les lignes de la trame paire ( 2, 4, …) Cette technologie a été conçue pour éviter le scintillement de limage sur des écrans cathodiques. La rémanence du phosphore et la persistance des impressions sur la rétine donnent lillusion dune image permanente

11 Tramage Trames paires des séquences CCIR601 (720x480:2), (720x576:2)

12 Tramage Effets gênants : en présence de mouvement fort on observe le décalage spatial des trames sur les contours verticaux des objets, dans des zones doccultation SFRS, Hiragasy

13 Tramage Illustration. Nécessité de filtres de désentrelacement lors de la conversion vers les formats progressifs

14 Formats analogique/numérique DV Amateur numériqueSéparément (Digital 8)

15 Technologies de la vidéo numérique MJPEG-2000,SVC H.264 MPEG4 V.10 AVC- vidéocoms IP,WAP

16 Chaîne d acquisition de la vidéo

17 Résolution des formats numériques SD – définition standard HD – haute définition

18 Résolution spatiale des formats progressifs Sub-QCIF - 128x96 QCIF - 176x144 CIF - 352x288 4CIF, 16CIF

19 Résolution spatiale des formats progressifs (II) QCIF - 176x144 CIF - 352x288

20 Formats HD Formats TVHD suggérés par lEUR (2005)

21 Formats HD 1080 psf Qualité de bande de base Séquence « Voiture extérieur » Compression MPEG4/DIVX « Voiture Extérieur »

22 Changement des formats Interpolation spatiale et temporelle Interpolation temporelle –sans compensation du mouvement –avec compensation du mouvement Interpolation temporelle sans compensation du mouvement

23 Changement de la cadence temporelle/ interpolation temporelle de la vidéo 1. Sur-échantillonnage temporel : interpolation basée pixel. Équivaut à linterpolation du signal 1D pour chaque pixel le long de laxe du temps. Interpolation du signal 1D : 2 étapes a) complément par ajout des zéros b) filtrage passe-bas du signal complété

24 Interpolation temporelle de la vidéo(2) a) Ajout des zéros Etant donné un signal s(n), le signal u(n) sur- échantillonné de facteur L est défini comme 0 1 2 3 4 5… n s(n) 0 1 2 3 4 5… n u(n) L=3

25 Interpolation temporelle de la vidéo(3) La transformée de Fourier pour les signaux discrets est Ainsi le spectre du signal complété est lié au spectre du signal dorigine par « compression » de laxe de fréquences. 01/2-1/2 1/2 1/6-1/6 fn fn – fréquence normalisé fn=f* t

26 Interpolation temporelle de la vidéo(4) b) Interpolation Filtre Idéal dinterpolation La réponse impulsionnelle est sinc 1/2 1/2L-1/2L fn 0 1 H(fn) U(fn) 1/2 1/2L-1/2L 0 1 fn

27 Interpolation temporelle de la vidéo(5) Le signal interpolé est donc obtenu par la convolution avec la réponse impulsionnelle du filtre La réponse impulsionnelle du filtre idéal dinterpolation a des propriétés : Ainsi à cause de ces zéros y(n)=s(n) dans les valeurs existantes et les valeurs non- nulles sont assignées aux zéros de complément.

28 Les filtres pratiques dinterpolation. Le filtre idéal dinterpolation ne peut pas être synthétisé car il a la réponse impulsionnelle infinie et il est non-causal. Sa mise en oeuvre demanderait un temps de délais infini. Ainsi plusieurs approximations sont possibles. Interpolation temporelle de la vidéo(5)

29 1.Interpolateur dordre zéro ( ex. pour L=3) : Engendre des effets daliasing. 2.Filtre dinterpolation linéaire Interpolation linéaire est obtenue par la somme pondérée des pixels voisins le long de laxe temporel. Interpolation temporelle de la vidéo(6) h(n) n 1 0 1 2 n h(n) 1 2/3 1/3 n 1 2/3 1/3 h(n-k) u(k) k

30 Décimation/sous-échantillonnage (1) Décimation du signal 1D de facteur M : 2 étapes a) multiplier par le train des impulsions pour remplacer M-1 valeurs par zéros entre chaque couple des valeurs distantes de M b) enlever les zéros pour obtenir le signal à la cadence plus faible a)Etant donnée le signal dentrée s(n) on définit un signal intermédiaire w(n) comme Alors le signal sous-échantilloné peut être exprimé comme

31 Décimation (2) Illustration pour un facteur de sous- échantillonnage de 2 n 0 1 2 3 4 5… s(n) n 0 1 2 3 4 5… w(n) 0 1 2 3 4 5… y(n) n

32 Décimation (3) La transformée de Fourier du signal intermédiaire w(n) : Ainsi le spectre du signal intermédiaire consiste des réplications du spectre du signal dorigine. Il y a M répliques dans linterval (de la fréquence normalisée (- 1/2, ½). Le spectre du signal décimé : étirement de laxe des fréquences

33 Décimation (4) Illustration ( pour la fréquence normalisée) M=2, spectre borné ( fc=1/4) 1/2 -1/2 0 1 S(f) f f 1/2-1/2 0 1 W(f) f 1/2-1/2 0 1 Y(f)

34 Décimation (5) Si la bande passante du signal dentrée est plus large que 1/(2M), alors les répliques se recouvriront et le signal sous- échantillonné comportera des effets daliasing. Ainsi un filtrage passe-bas avec la fréquence de coupure est nécessaire ( filtre danti-aliasage). f 1/2-1/2 0 1 f 1/2-1/2 0 1 f 1/2-1/2 0 1 S(f) W(f) Y(f)

35 Changement de la cadence déchantillonnage dun facteur rationnel Soit le facteur de changement est L/M Principe : sur-échantillonner de L, ensuite sous-échantillonner de M. Les filtres dinterpolation et danti-aliasage peuvent être regrouppés dans un seul filtre Avec les contraintes que les valeurs existantes doivent être préservées (Interp. linéaire) 1:L Filtrage Passe-bas M:1 s(n) u(n) w(n) y(n)

36 Systèmes couleur spécifiques à la vidéo (I) RGB – le système le plus proche au matériel : reproduction LCD, TV, scanner. http://www.tsi.enst.fr/enseignement/ressources/ Système additif C(x,y)=r(x,y)+v(x,y)+b(x,y) C=(r,v,b,) T – vecteur couleur

37 Systèmes couleur spécifiques à la vidéo (II) Le système RGB nest pas efficace selon le critère d«efficacité/compacité » de représentation. Les systèmes couleurs séparant la luminance et la chrominance le sont.

38 Systèmes couleur spécifiques à la vidéo RVBY Luminance UV Chrominance Quantification : 8 bits/pixel/composante Système - couleur : YUV(PAL) ou YCrCb, YIQ(NTSC) Echantillonnage spatial : 4:2:0, 4:2:2, 4:4:4 4:2:2

39 Représentation de la couleur dans le signal vidéo numérique (II) Production du signal numérique YCrCb à partir des signaux primaires analogiques E R,E G,E B Standard CCIR 601 : le standard international pour la numérisation des signaux analogiques NTSC, PAL et SECAM (NTSC est encodé en YIQ, PAL en YUV, CCIR601 - YCrCb

40 Représentation de la couleur dans le signal vidéo numérique (III) UVYUVY Image RVB après le filtrage scalaire YUV

41 3. Analyse et estimation du mouvement dans la vidéo Mouvement Apparent CERIMES © MPEG7 test set

42 Projection du mouvement rigide 3D dans le plan-image Hypothèse : le mouvement observé dans le plan image via changements de luminance correspond à la projection idéale du mouvement 3D des objets de la scène

43 Mouvement réel/mouvement apparent a) Insuffisance du gradient spatial MR - oui MA - non b) Changements dillumination extérieure MR - non MA - oui

44 Détection du mouvement(1) Modèle des scènes : la caméra statique, les objets en mouvement Méthodes « dordre 0 »

45 Détection du mouvement(2) I(x,y,t) - fonction dintensité lumineuse Instants de temps : t, t-dt (1)La difference temporelle absolue Détection : Si alors le pixel (x,y) est en mouvement Inconvénients : difficultés dapprentissage du seuil, présence du bruit. (Jain, 79)

46 Détection du mouvement(3) (2) Prise en compte du bruit et de variations de luminance: -Pour chaque pixel (x,y) apprentissage pendant de - -Pour le couple d images calcul de - Détection dun « pixel en mouvement » si (Haritaoglu98)

47 (3) Détection par test des hypothèses statistiques Approche par max de vraisemblance. Considérons 2 fenêtres centrées sur le pixel (x,y) Détection du mouvement (4) (x,y ) tt+dt A1A1 A2A2

48 Détection du mouvement (5) Hypothèses: H0 : les distributions de la luminance des deux fenêtres possèdent les mêmes caractéristiques statistiques en t et t+dt H1 : les distributions sont différentes. Modèle de luminance : Modèle constant : (A) I(x,y) N(µ, ) H0: pour tout point (x,y) dans A 1 et A 2 I(x,y) N(µ 0, ) H1: pour tout point (x,y) dans A 1 I(x,y) N(µ 1, ), pour tout pixel (x,y) dans A 2 I(x,y) N(µ 2, ),

49 Détection du mouvement(6) Les fonctions de vraisemblance associées

50 Détection du mouvement (7) Test au maximum de vraisemblance : Rapport logarithmique de vraisemblances

51 Détection du mouvement(8) Pour simplifier (méthode de P. Bouthemy et F. Lalande).

52 Hypothèse dinvariance de luminance x y Une séquence vidéo en labsence de bruit: I(x, y, t) = I(x+dx, y+dy, t+Δt) d=(dx, dy) T, la projection du déplacement réel 3D dans le plan image. I(x,y,t) - fonction dintensité lumineuse Le champ vectoriel D(x,y)= {(dx, dy) T } est appelé le champ dense de déplacement I(x, y, t) t

53 Flot optique Le vecteur de vitesse au point (x,y) correspond à dt près au vecteur de déplacement Le champ vectoriel (x,y) est appelé le flot optique ou encore champ de vitesse Par l hypothèse dinvariance de luminance OFE/ECMA Le problème d estimation du FO est mal posé.

54 ECMA (I) Comme alors u v ECMA sous forme vectorielle Lestimation du mouvement est un problème mal posé. Seul le flot optique normal est observable Sous forme vectorielle Décomposons, est parallèle au gradient local : flot optique normal est orthogonale

55 Une autre vue Si u,v sont supposées indépendantes, alors une seule équation pour deux inconnues – (1)Problème dunicité de la solution – problème douverture (2)Problème du bruit dacquisition (3)Problème doccultation ECMA (II)

56 ( 1) Illustration du « problème douverture » Zone découverte : pas de correspondance des pixels avec limage précédente flot optique normal flot optique réel (3) Illustration du « problème doccultation » ECMA (III)

57 Estimation du mouvement (x+dx, y+dy) (x, y) (dx, dy) DFD(x, y, d) = I(x, y, t) - I(x+dx, y+dy, t+Δt) On cherche d=d(θ β ) (β modèle du mouvement 2D, θ ses paramètres) tel que DFD(x, y, d) soit minimum. - Méthodes basées sur l ECMA (différentielles) - Méthodes basées sur la minimisation directe de la DFD ou d une mesure basée DFD - Méthode directes/méthodes paramétriques

58 Estimation du mouvement dans les algorithmes normalisés (I) Approche : mise en correspondance (basée bloc) Critères à optimiser : MAD= avec MSE = Fenêtre F Bloc B I(t) I(t-dt)

59 Estimation par bloc Objectif : obtenir le champ de déplacement épars Le FO est supposé constant à lintérieur dun bloc Le critère à minimiser : ou I t-dt ItIt F B

60 Méthode de recherche exhaustive Estimation « au pixel près » I t- dt ItIt Linconvénient majeur : coût opératoire Limitations : les dimensions trop faibles de la fenêtre de recherche ne permettent pas destimer correctement le vecteur de déplacement F B

61 Méthodes de recherche accélérée Estimation « au pixel près » 1.Recherche à 3 pas, 2.Recherche logarithmique, 3.Recherche « une à la fois » 4.Recherche à 4 pas ……. – méthodes sous-optimales : Fortes conséquences sur la possibilité dinterprétation du flot optique par bloc;

62 Recherche à trois pas (Koga81) Principe : laffinage du pas de recherche 1.Pas=4. Evaluer MAD aux pixels « 0 » et « 1 » Si min(MAD) =MAD(0) – alors bloc stationnaire Sinon 2. Pas=Pas/2. Evaluer MAD aux pixels « 2 » 3. Pas=Pas/2. Evaluer MAD aux pixels « 3 » Fenêtre de recherche + 7 pels 0 1 2 1 1 1 1 1 1 1 222 2 3 222 3 3 3 33 3 3

63 Recherche à trois pas (Koga81) Le vecteur de déplacement optimal Modifications : - Comparaison de min(MAD) avec un seuil T - Si min(MAD)<T alors arrêt - Sinon recherche autour de la position courante avec le pas/2 (recherche « logarithmique »). 0 1 2 1 1 1 1 1 1 1 222 2 3 222 3 3 3 33 3 3

64 Recherche en croix (Ghanbari90) Le pas de recherche est réduit si - loptimum se trouve au centre de la croix ou - sur le bord de la fenêtre de recherche 0 2 1 1 1 1 2 2 5 4 3 3 3 4 5 5

65 Recherche en diamant (Zhu, Ma, MPEG4 VS) première recherche si loptimum se trouve au centre de la croix sur le bord de la fenêtre de recherche

66 Estimation du mouvement dans les algorithmes normalisés (II) Méthode d estimation : recherche exhaustive Précision d estimation : - « au pixel près » - « au demi-pixel près » Estimation au pixel près : Estimation au demi pixel près :

67 Approches multi-résolution multi-échelle 1) Construction des pyramides Gaussiennes pour 2) Estimation des paramètres de mouvement en commençant par le niveau le plus élevé 3) Propagation -le facteur de sous- échantillonnage

68 Estimation du mouvement dans les algorithmes normalisés (III) Problèmes spécifiques à la méthode: - mauvaise approximation des mouvements complexes; - lissage du champ de déplacement au travers des contours doccultation; - « effet de bloc » et coût important de codage de lerreur dans des schémas du codage avec la compensation du mouvement.

69 - Le signal vidéo numérique représente des volumes dinformation énormes: TV numérique ordinaire (4/3) 576x720 CCIR601 4:2:2, 25:2 ips composante de luminance Y, Fe = 13,5 MHz composantes de chrominance Cr, Cb Fe= 6.675 MHz profondeur : 8bits par pixel/composante volume dinformation 216Mbit/s TV numérique HD (aspect 16/9 = (4/3) 2 ) 50 ips, HDP 1250x1920 volume dinformation 2,304 Gbit/sec WEB TV, TV ANYTIME ???? - Pour économiser les ressources de stockage et réduire la bande passante requise lors de la transmission on cherche à comprimer le signal vidéo. 4. Notions de la théorie de linformation

70 Soit S une source d informations et x i (symboles dun alphabet) les valeurs possibles de linformation. On peut le modéliser par une variable aléatoire X dont les réalisations sont x i avec une loi de probabilité Lentropie de la variable aléatoire : Quantité dinformation associée au symbole x i : Ainsi lentropie représente linformation propre moyenne associée à un processus (source). Quantité dinformation

71 Propriétés : * alors *supposons que lalphabet est fini et contient K symboles alors Légalité étant obtenue si la variable aléatoire X est équiprobable Propriétés de lEntropie

72 Distribution équiprobable :. Propriétés de lEntropie

73 Taux de compression - Lopération de numérisation et de compression du signal est aussi appelée « codage de source ». - Le codage des signaux multimédia nécessite de connaître les limites atteignables des taux de compression. - Taux de compression : Limites atteignables Le théorème de codage de la source établit quil existe un débit binaire (quantité dinformation) vers laquelle on peut tendre sans pouvoir comprimer la source davantage. Dans le cas dun codage sans perte cette limite est donnée par lentropie de la source.

74 Codage Entropique Codage de la source : la source X prend ses valeurs dans le dictionnaire C. On appelle codage de la source X une application de C dans lensemble des suites finies de lalphabet {0,1}. Le code : Le mot de code : La longueur moyenne : Théorème : pour toute source discrète sans mémoire, il existe un code instantané représentant exactement la source et uniquement décodable vérifiant Où H(X) est lentropie de la source et est la longueur moyenne du code, exprimés en bit par symbole.

75 5. Codage sans pertes des informations multimédia Codage entropique (statistique) La source S discrète dinformations est caractérisée par son entropie H - Codage de Shannon-Fano - Codage de Huffman - Codage arithmétique Codage par comptage (RLC) Codage avec dictionnaire (LZSS,LZW)

76 Codage Entropique de Shannon-Fano (I) 1)Pour tous les symboles du message développer une liste correspondante des probabilité expérimentales (occurrences) 2)Trier la liste dans lordre décroissant des probabilités expérimentales (occurrences) Exemple : Message ABEABABABCDCDBAEAAAEAAAABAA CACDBDEEDCCDE Liste triée Symbole A BCDE Occurrences15 7 6 6 5

77 Codage Entropique de Shannon-Fano (II) 3)Diviser la liste en deux parties, le total des compteurs doccurrence de la moitié supérieure devant être aussi proche que possible du total de al moitié inférieure 4)Affecter le chiffre binaire 0 à la moitié supérieure de la liste, et le chiffre 1 à la moitié inférieure de la liste SymboleOccurrenceSommeCode A150 B7 220 ------------------------------------------------------------- C61 D61 E5 171

78 Codage Entropique de Shannon-Fano (III) 5)Appliquer de façon récursive les étapes 3 et 4 à chacune des deux moitiés, jusquà ce que chaque symbole soit devenu une feuille SymboleOccurrenceSommeCode A1500 -------------------------------------------------------- II B7 2201 --------------------------------------------------------- I C610 -------------------------------------------------------- III D6110 -------------------------------------------------------- IV E5 17111

79 Codage Entropique de Shannon-Fano (IV) Représentation sous forme darbre binaire AB C DE Racine 0 0 0 0 1 1 1 SymboleOccurrenceQuantité infBits TotalTaille Sh-FBits Sh-F A151,3820,7230 B72,4817,36214 C62,7016,20212 D62,7016,20318 E52,9614,8315

80 Codage Entropique de Huffmann (I) 1952. Algorithme optimal pour construire un code entropique. On peut montrer quil nexiste pas dautre code uniquement décodable de longueur moyenne inférieure pour une source discrète sans mémoire. Principe : construire progressivement larbre binaire en partant des feuilles de larbre précédent. Initialisation de larbre : -Tous les symboles sont les nœuds-feuilles -Chaque noeud a comme poids la probabilité du symbole (occurrence). -Liste des nœuds libres contient tous les nœuds

81 Codage Entropique de Huffmann (II) Construction de larbre : 1)Sélectionner les deux symboles-noeuds les moins probables. 2)Créer le père de ces deux nœuds. Poids(père) :=Poids(FilsGauche)+Poids(FilsDroit) 3)Ajouter le nœud-père dans la liste des nœuds libres et supprimer les nœuds-fils de la Liste. 4)Étiquetage. Un des fils reçoit 0, lautre 1 5)Si card(Liste)=1 alors arrêt. Le seul noeud devient la racine

82 Exemple : 1)1576 6 5 A BCDE 2) 1576 6 5 A B CDE … Codage Entropique de Huffmann (III) 11 01 01 01 13

83 15 7 66 5 A B CDE 0100101110111 … Codage Entropique de Huffmann (IV) 24 01 11 01 01 13 39 01

84 Codage Entropique de Huffmann (V) Comparaison avec le codage de Shannon-Fano Quantité dinformation théorique NbrBits SFNbrBits H 82,258987 Nécessite la transmission de la table des codes

85 Codage Arithmétique Rissanen 1976 Principe : un code nest plus associé à chaque symbole constituant le message, mais plutôt au message constitué de la suite des différents symboles. Soit lensemble des messages pouvant être émis par la source avec les lois de probabilité dapparition. On peut définir une suite dintervalles recouvrant lintervalle et ayant les longueurs respectives Le principe de codeur arithmétique : définir pour chaque intervalle un nombre compris entre 0 et 1 et ayant une représentation binaire finie

86 tombe sans ambiguïté dans lintervalle soit, et« code » la source. On peut trouver une famille de valeurs avec des longueurs de représentation binaire vérifiant (propriété de quasi optimalité du code). Alors plus le message est long, plus la performance du codage est grande. Codage Arithmétique (II)

87 Codage Arithmétique Algorithme du Codeur (I) Codage : Soit les limites hautes et basses du message à la j-ème itération. SymboleP(s)Intervalle l(s) h(s) E1/50.00<=r<0.20 J1/50.20<=r<0.40 N2/50.40<=r<0.80 Y1/50.80<=r<1.00 Jenny

88 Codage Arithmétique Algorithme du Codeur (II) Codage : J alors Jenny Nouveau Symbole Limite basse Limite haute 0.001.00 J0.20.4 E0.200.24 N0.2160.232 N0.22240.2288 Y0.227520.22880

89 Codage Arithmétique Algorithmes du Décodeur (I) Décodage : (1)Trouver le symbole qui possède lintervalle de message : J (2)Soustraire la limite basse :0.02752 (3)Diviser par la longueur de r(s) : 0.1376 (4)Aller à (1) jusquà atteindre 0 Réalisation pratique : utilisation de larithmétique binaire (sur 32 bits par exemple)

90 Codage par plages (RLC) Principe : (1) Comptage du nombre dapparitions consécutives dun mot de message à coder. (2) Codage à longueur fixe de la valeur des mots et de nombre dapparitions (3) Variante : introduction de bit-flag « codé-non-codé ». Exemple : Message : 1 1 1 1 7 7 7 7 7 255 7 1 8 8 8 Code : 1 4 1 1 5 7 0 3 255 7 1 1 3 8 Débit initial : 15 *8 =120 bits Débit final : 1 + 3 + 8 + 1 + 3+ 8+1 + 3 + 3*8 + 1 + 3 + 8 = 64 bits Adapté aux images sans bruit ou aux valeurs quantifiées grossièrement.

91 6. Quantification des signaux visuels. Codage prédictif (MICD) Codage MIC Principe : chaque pixel est codé indépendamment des autres (représentation canonique des images numériques) Images monochromes : quantification sur 2 k niveaux usuellement (vidéo k=8, binaire k=1, k=12 images médicales) Images vidéo couleurs : quantification de chaque composante spectrale Y, Cr, Cb en 8 bits Réduction du débit : - par réduction du nombre de niveaux, - par codage entropique

92 Quantification (I) Quantification : opération fondamentale dun système de conversion analogique / numérique A) « Analogique – numérique » Entrée : variable aléatoire continue, « analogique » Sortie : entier appartenant à un ensemble fini Quantificateur scalaire : une application Q de R dans un ensemble fini C appelé « dictionnaire », Card(C)=L B) « Numérique – numérique » Entrée : variable aléatoire discrète A – lalphabet dentrée, Card(A)>Card(C) Exemples : TV analogique Y – variable continue, on la représente par un alphabet {0, 1,…, 255} Binarisation dune image monochrome : A={0,1,…,255}, C={0,1}.

93 Quantificateur scalaire uniforme : Adapté pour une source de distribution uniforme: Les intervalles de quantification : Quantification uniforme entière : Exemple : x={11,13,21,27,39,-43},q=10 Q(x)={10,10,20,30,40,-40} Quantification (II) x Q(x)

94 Distorsion : Pour un quantificateur uniforme Bruit : Distorsion dun quantificateur

95 Bruit : a)Bruit granulaire – à lintérieur du quantificateur b)Bruit de surcharge – amplitude du signal dentrée est à lextérieur du quantificateur. Bruit de Quantification x Q(x) Zone granulaire Zones de surcharge

96 Quantification Scalaire Optimale Codage MICD Quantification optimale : pour la source donnée (1) Connaissant la partition (en intervalles) trouver le dictionnaire qui minimise la distorsion de quantification (2) Connaissant le dictionnaire trouver la partition qui minimise la distorsion. Quoi quantifier (?) : signal analogique -> numérique, Signal dorigine numérique -> pour réduire le débit Signal derreur de prédiction dans les codecs image/vidéo Codage Décodage Schéma générique du codage avec prédiction Prédiction + -

97 Codage prédictif MICD Principe : On code en MIC la différence entre la valeur du signal au point à coder et une prédiction qui en est faite à partir des valeurs déjà codées. On utilise 2 fonctions essentielles : - Fonction de prédiction ; - Fonction de quantification. Le taux de compression est lié à la qualité de prédiction.

98 Codage prédictif MICD (II) x(t) b(t) + + y(t) y(n) t=t n Q MIC y q (n)+ - d(n) Quantificateur des différences Prédicteur d q (n)++ + + Codeur MICD Décodeur MICD

99 Codage prédictif MICD (III) La fonction de prédiction Fournit une estimation a priori (prédiction) de x(k,l) à partir de voisinage causal (déjà décodé) du point (k,l). Principe : utilisation de la corrélation entre le point à (k,l) et ses voisins « passés ». Le voisinage peut être spatio-temporel. Ex. pour (k,l,t) : (k, l, t-dt), (k-i,l-j,t)... si - Prédiction linéaire fixe - Prédiction non-linéaire (ex. filtrage médian entre 3 prédictions linéaires fixes; - Prédiction adaptative

100 Fonctions de prédiction (I) Voisinage spatial causal Prédicteurs linéaires simples EBCDF XA X

101 Fonctions de prédiction (II) Prédicteurs linéaires fixes optimisés : minimisation au sens des moindres carrés soit minimiser est supposée centrée Si le signal dimage est supposé stationnaire au second ordre, alors Les coefficients dépendent donc de la corrélation

102 Fonctions de prédiction (III) Si on considère un processus de Markov à corrélation séparable - valeur moyenne de signal - variance - coefficient de corrélation horizontale - coefficient de corrélation verticale - déplacement horizontal - déplacement vertical

103 Quantification en MICD Quantification de lerreur de prédiction de la loi de probabilité p e (e) Q e Lerreur quadratique moyenne de quantification est Avec Dans le cas dun nombre très grand de niveaux L, la densité de probabilité p e (e) peut être considérée constante sur chaque intervalle pour L intervalles (*)

104 Quantification (I) Alors Quantificateur optimal de Max Dans le cas où le nombre de niveaux de quantification nest plus très grand a) b)

105 Quantification n(III) b) En annulant cette dérivée ou bien a) En annulant cette dérivée Ainsi la minimisation de lerreur quadratique moyenne de quantification implique et (*b) (*a)

106 Quantification (IV) Dans ces conditions lerreur quadratique minimale de quantification devient ((*a)->(*)) Cas particulier : loi uniforme Le quantificateur optimal est linéaire

107 Quantification scalaire : luminance dun pixel, luminance et chrominance séparément, coefficients DCT,… Quantification vectorielle : luminance dun bloc dans le plan-image (signal derreur), vecteurs-couleurs,… 7.Eléments de codage par QV

108 Quantificateur vectoriel (L,n) est une application de vers C, Card (C)=L. C est appelé le dictionnaire ou « code-book » Un quantificateur vectoriel est complètement défini pas la connaissance du dictionnaire C et dune partition de lespace en n régions - classes. Règle de plus proche voisin : - régions de Voronoï Quantification Vectorielle

109 Partitition T irrégulière – dictionnaire non structuré Partition T régulière – dictionnaire structuré

110 Plusieurs méthodes : - par apprentissage; - quantification arborescente; - quantification sur des treillis (algébrique)… Méthodes par apprentissage – utilisent la base dapprentissage composée dun grand nombre M de vecteurs représentatifs de la source. GLA/LBG – Algorithme de Lloyd Généralisé; Split-LBG Construction du dictionnaire

111 Split-LBG -L=2 N ; Principe : (a)« découpage » de chaque vecteur en (b) optimisation de la partition par LBG Construction du dictionnaire

112 Algorithme de K- moyennes(I) J. MacQueen, Some methods for classification and analysis of multivariate observations, Proc. Of the Fifth Berkley Symposium on Math. Stat. And Prob., pp. 281 – 296, 1967 Principe : CNS avec le nombre des classes connus a priori. Paramètre : le nombre k de classes entrée : un échantillon de M vecteurs x 1,... x M. (1) Choisir k centres initiaux y 1,... y k (2). Pour chacun des M vecteurs, l'affecter à la classe k* dont le centre y k* est le plus proche (3). Si aucun élément ne change de classe alors arrêt. (4). Calculer les nouveaux centres : pour tout k, y k est la moyenne des éléments de la classe i (5). Aller en 2

113 Algorithme LBG Linde Buzo Gray (1980) 1. Critère de plus proche voisin affecter les vecteurs au centres les plus proches -calculer la distorsion (moyenne) de quantification critère darrêt 2. Condition du centroïde recalculer les centres de chaque classe et aller à 1.

114 Recherche du représentant dans le dictionnaire: Le débit (par composante de vecteur ou par pixel – images monochromes) : (code à longueur fixe) Si lapprentissage est bon et la séquence est représentative, lentropie de C est maximale (= distribution uniforme) Quantification

115 Mesures de qualité dans les schémas de codage avec pertes Mesures objectives (1) EQM – lerreur quadratique moyenne du codage - image en t codée et décodée (2) PSNR – Peak Signal to Noise Ratio (dB) Mesures objectives : 2 schémas principalement Double stimulus et Simple stimulus.

116 Mesures de qualité (II) Séquence vidéo dorigine Codeur vidéo Décodeur Vidéo Affichage A ou B Une séquence est celle dorigine, lautre codée et décodée. Lordre daffichage est aléatoire; Léchelle de notation – 5 niveaux – intervalles de qualité continue. DSCQS – double stimulus continuity quality scale Le résultat – le moyennage de plusieurs expériences – le score normalisé carctérisant la qualité relative. Recommandation IUT-R BT.500-11, 2002

117 8. Transformées Orthogonales et Codage par transformées Concepts : Recherche de représentations du signal dimages aboutissant à une non- corrélation du signal dans lespace transformé -> représentations orthogonales des images. Sélection et codage des composantes les plus significatives dans cet espace de représentation, les autres composantes ne sont pas transmises. Du fait de la non-stationarité du signal – image, la transformation est effectuée dans une zone locale (blocs). Le codage par transformation en vidéo est appliqué en mode intra- et inter- image. La transformée utilisée dans les standards actuels est la TCD

118 Transformées discrètes Transformée de Fourier discrète Transformée de Fourier inverse Les indices (u,v) sont appelés « fréquences spatiales »

119 Transformées discrètes (II) Propriétés 1) Composante spectrale aux fréquences (0,0) Avec -la valeur moyenne de l image 2) Périodicité Pour que le développement en série de Fourier soit valide, limage doit être considérée périodique : la partie droite voisine la partie gauche, le haut voisine le bas

120 Transformée en cosinus discrète (I) Transformée de Fourier dun signal continue réel et symétrique ne contenant que les coefficients réels correspondant aux termes cos de la série Fourier; Soit limage formée par la réflexion de limage initiale par rapport à ses bords est symétrique par rapport au Or est réel et symétrique

121 Transformée en cosinus discrète (II) - transformée en cosinus discrète « paire » appliquée aux blocs d image 8x8 dans les standards vidéo MPEG1,2,4 pour le codage de limage en mode intra-image ou de l erreur de compensation du mouvement. Ici f(x,y) est le signal centré avec g 0 = 128 coefficent « DC » vs « AC »

122 Transformée en cosinus discrète (III) Image d origine Image DC par blocs 8x8

123 Discrete Cosine Transform (III) Fonctions de base pour N=8 http://www.cs.sfu.ca/CourseCentral/365/li/material/notes/Chap4/Chap4.2/Ch ap4.2_prev.html Noyau DCT u=0, v=0

124 Standard JPEG Joint Photographic Expert Group 1992 Système de base et système étendu Découpage en blocs 8x8 DCT par bloc Quantification Balayage Zig-Zag Codage Entropique Image compressée Image

125 DCT par bloc Bloc dans limage Les composantes Y UV (4:2:2) sont traitées séparément Bloc des coefficients DCT f(x,y) = I(x,y) –128, F(u,v)=DCT[f(x,y)]

126 Quantification des coefficients (I) Les coefficients DCT des composantes YUV sont quantifiés séparément avec les matrices de quantification Psychovisuelles -quantification entière - matrice de quantification Matrice pour la composante Y 1611101624405161 12 141926586055 1413162440576956 1417222951878062 182237586810910377 243555648110411392 49647887103121120101 7292959811210010399

127 Quantification des coefficients (II) Matrice pour les composantes U et V Contrôle par le facteur de qualité q appliqué aux matrices. 17182447999 1821266699 24265699 476699

128 Codage dans le domaine DCT a 00 Arrangement des coefficients quantifiés dans lordre de balayage zig-zag – coefficients DC (a 00 ) et AC Codage entropique (Huffman) de e

129 1ère phase : codage des paires de coefficients et du nombre de zéros qui les précèdent. 1 2 3 4 5 6 7 8 9 10 11 12 13 … 64 808 412 0 0 -23 9 0 0 0 0 0 6 0 … 0 808, (0,412), (2, -23), (0,9), (5,6), … EOB 2ème phase : codage entropique (Huffman) de cette information Codage des coefficients AC 10 01 1011412 0 0 …

130 Une bonne qualité visuelle avec 1 bps Influence du facteur de qualité : Performances q = 6 ; 3 Ko q = 84 ; 24 Ko 288x230 195 Ko RVB


Télécharger ppt "Vidéo Numérique: Analyse et Codage Cours en Master ISM Partie I Jenny Benois -Pineau Université Bordeaux -1 Vidéo Numérique: Analyse et Codage Cours en."

Présentations similaires


Annonces Google