Traitement et éléments du codage vidéo Jenny Benois -Pineau Université Bordeaux -1 C3
3. Notions de la théorie de l’information Le signal vidéo numérique représente des énormes volumes d’information : TV numérique ordinaire (4/3) 576x720 CCIR601 4:2:2, 25:2 ips composante de luminance Y, Fe = 13,5 MHz composantes de chrom Cr, Cb Fe= 6.675 MHz profondeur : 8bits par pixel/composante volume d ’information 216Mbit/s TV numérique HD (aspect 16/9 = (4/3)2) 50 ips, HDP 1250x1920 volume d ’information 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.
Quantité d’information Soit S une source d ’informations et xi (symboles d’un alphabet) les valeurs possibles de l ’information. On peut le modéliser par une variable aléatoire X dont les réalisations sont xi avec une loi de probabilité L’entropie de la variable aléatoire : Quantité d’information associée au symbole xi : Ainsi l’entropie représente l’information propre moyenne associé à un processus (source).
Propriétés de l’Entropie * alors *supposons que l’alphabet est fini et contient K symboles alors L’égalité étant obtenue si la variable aléatoire X est équiprobable
Propriétés de l’Entropie Distribution équiprobable : *Dénotons . Le produit est maximal si Ce qui correspond au cas de la distribution équiprobable. Donc .
Taux de compression Opération de numérisation et de compression du signal est aussi appelé « 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 qu’il existe un débit binaire (quantité d’information) vers laquelle on peut tendre sans pouvoir comprimer la source d’avantage. Dans le cas d’un codage sans perte cette limite est donnée par l’entropie de la source.
Codage Entropique Codage de la source : Source X prends ses valeurs dans le dictionnaire C. On appelle codage de la source X une application de C dans l’ensemble des suites finies de l’alphabet {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 l’entropie de la source et est la longueur moyenne du code, exprimés en bit par symbole.
4. Compression sans pertes de l’information vidéo-image Codage entropique (statistique) Source S discrete d ’informations est caractérisée par son entropie H - Codage de Shannon-Fano - Codage de Huffman - Codage arithmétique Codage par comptage (RLC) Applications : (1)Pratiquement jamais directement sur le signal vidéo/image numérique car une forte variabilité (2)Dans les standards de codage avec la compression vidéo il est appliqué aux informations avec une corrélation importante
Codage Entropique de Shannon-Fano (I) Pour tous les symboles de message développer une liste correspondante des probabilité expérimentales (occurrences) 2) Trier la liste dans l’ordre décroissant des probabilités expérimentales (occurrences) Exemple : Message ABEABABABCDCDBAEAAAEAAAABAACACDBDEEDCCDE Liste triée Symbole A B C D E Occurrence 15 7 6 6 5
Codage Entropique de Shannon-Fano (II) 3) Diviser la liste en deux parties, le total des compteurs de’occurrence de la motié 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 Symbole Occurrence Somme Code A 15 0 B 7 22 0 ------------------------------------------------------------- C 6 1 D 6 1 E 5 17 1
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 Symbole Occurrence Somme Code A 15 00 -------------------------------------------------------- II B 7 22 01 --------------------------------------------------------- I C 6 10 -------------------------------------------------------- III D 6 110 -------------------------------------------------------- IV E 5 17 111
Codage Entropique de Shannon-Fano (IV) Représentation sous forme d’arbre binaire A B C D E Racine 1 Symbole Occurrence Quantité inf Bits Total Taille Sh-F Bits Sh-F A 15 1,38 20,7 2 30 B 7 2,48 17,36 14 C 6 2,70 16,20 12 D 3 18 E 5 2,96 14,8
Codage Entropique de Huffmann (I) 1952. Algorithme optimal pour construire un code entropique. On peut montrer qu’il n’existe pas d’autre code uniquement décodablede longueur moyenne inférieure pour une source discrète sans mémoire. Principe : construire progressivement l’arbre binaire en partant des feuilles de l’arbre précédent. Initialisation de l’arbre : - Tous les symboles sont les nœuds –feuilles Chaque noeud a comme poids la probabilité de symbole ( occurrence). Liste des nœuds libres contient tous les nœuds
Codage Entropique de Huffmann(II) Construction de l’arbre : Sélectionner les deux symboles – noeuds les moins probables. Créer le père de ces deux nœuds. Poids(père) :=Poids(FilsGauche)+Poids(FilsDroit) Ajouter le nœuds-père dans la liste des nœuds libres et supprimer les nœuds – fils de la Liste. Étiquetage. Un des fils reçoit 0, l’autre 1 Si card(Liste)=1 alors arrêt. Le seul noeud devient la racine
Codage Entropique de Huffmann(III) 1 Exemple : 1)15 7 6 6 5 A B C D E 2) 15 7 6 6 5 A B C D E … 11 1 1 13 11
Codage Entropique de Huffmann(III) 24 1 11 13 39 15 7 6 6 5 A B C D E 0 100 101 110 111 …
Codage Entropique de Huffmann Comparaison avec le codage de Shannon-Fano Quantité d’information théorique NbrBits SF NbrBits H 82,25 89 87 Nécessite la transmission de la table des codes
Codage par plages (RLC) Principe : (1)Comptage du nombre d’apparitions consécutives d’un mot de message à coder. (2)Codage à longueur fixe de la valeur des mots et de nombre d’apparitions (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 les valeurs quantifiées grossièrement.
5. Estimation et compensation du mouvement Pourquoi : - interpolation de la vidéo basée mouvement; - analyse et segmentation -codage hybride : utilisation de la redondance temporelle
Projection du mouvement rigide 3D dans le plan-image Hypothèse : le mouvement observée dans le plan image via changements de luminance correspond à la projection idéale du mouvement 3D des objets de la scène
Mouvement réel/mouvement apparent a)Insuffisance du gradient spatial MR - oui MA - non b)Changements d’illumination extérieure MR - non MA - oui
Hypothèse d ’invariance de luminance x y Une séquence vidéo I(x, y , t) t I(x,y,t) - fonction d ’intensité lumineuse en l ’absence 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. Le champs vectoriel D(x,y)= {(dx, dy)T } est appelé le champs dense de déplacement
Flot optique Vecteur de vitesse au point (x,y) correspond au dt près au vecteur de déplacement Le champ vectoriel W(x,y) est appelé le flot optique ou encore champs de vitesse Par l ’hypothèse d ’invariance de luminance OFE/EQMA Problème d ’estimation du FO est mal posé
Estimation du mouvement(4) Sous forme vectorielle Comme alors u v ECMA Décomposons , est parallèle au gradient local est orthogonale Estimation du mouvement est un problème mal posé. Uniquement le flot optique normal est observable
Estimation du mouvement(5) Une autre vue Si u,v sont supposées indépendantes, alors une seule équation pour deux inconnues – problème d’unicité de la solution – “problème d’ouverture” Problème du bruit d’acquisition Problème d’occultation
Estimation du mouvement(4) (1)Illustration du « problème d’ouverture » flot optique normal flot optique réel (3) Illustration du « problème d’occultation » Zone découverte : pas de correspondance des pixels avec l’image précédente
Estimation du mouvement -Méthodes basées sur l ’EQMA (différentielles) -Méthodes basée sur la minimisation directe de la DFD ou d ’une mesure basée DFD - Méthode directes/méthodes paramétriques (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.
Estimation du mouvement dans les algorithmes normalisés(I) Approche : mise en correspondance (basée bloc) Critères à optimiser : MAD= avec MSE = I(t-dt) I(t) Bloc B Fenêtre F
Estimation par bloc Objectif : obtenir le champ de déplacement éparse Le FO est supposé constant à l’intérieur d’un bloc Le critère à minimiser : ou F B It It-dt
Méthode de recherche exhaustive Estimation « au pixel près » F B It-dt It L’inconvénient majeur : coût opératoire – diverses opimisations
Méthodes de recherche accélérée Estimation « au pixel près » Recherche à 3 pas, Recherche logarithmique, Recherche à 4 pas ……. – méthodes sous-optimales L’inconvénient majeur : le risque d’atteindre le minimum local de la fonctionnelle de l’énergie.
Recherche à trois pas (Koga’81) Principe : l’affinage du pas de recherche 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 » 1 2 3 Fenêtre de recherche + 7 pels
Recherche à trois pas (Koga’81) 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 »). 1 2 3 Le vecteur de déplacement optimal
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 :
Approches multi-résolution-multi-échelle 1)Construction des pyramides Gaussiennes pour 2) Estimation des paramètres de mouvement commençant par le niveau le plus élevé 3) Propagation r -le facteur de sous-échantillonnage