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

Régulation de débit pour MPEG-4 SVC

Présentations similaires


Présentation au sujet: "Régulation de débit pour MPEG-4 SVC"— Transcription de la présentation:

1 Régulation de débit pour MPEG-4 SVC
Stratégies d’encodage pour codeur vidéo scalable Régulation de débit pour MPEG-4 SVC Yohann Pitrey Encadrement : M. Babel, O. Déforges IETR – Équipe Image et Télédétection UMR 6164 INSA de Rennes 16 Septembre 2009 00:00 00:30 Merci M. le Président, Mesdames et Messieurs les membres du jury, Bonjour, Je m’appelle Yohann Pitrey, Pendant le temps qui m’est imparti je vais vous présenter mes travaux de thèse, Qui portent sur les stratégies d’encodage pour un codeur vidéo scalable, Et traitent plus précisément de la régulation de débit pour le standard MPEG-4 SVC.

2 Problématique : Régulation de débit pour codage vidéo scalable
Plan Introduction Problématique : Régulation de débit pour codage vidéo scalable Outils et méthodologie Contributions Conclusion et perspectives 00:30 01:30 Ma présentation se divise en 5 parties : 1. Pour commencer, j’introduirai les notions clés de mon étude Que sont le codage vidéo, le codage vidéo scalable, ainsi que le concept de stratégie d’encodage. 2. Je procèderai ensuite à une analyse du problème de la diffusion de contenus vidéo dans un contexte actuel, Pour mettre en évidence la régulation de débit pour le codage vidéo scalable comme une problématique de première importance. 3. Je présenterai ensuite les outils utilisés pour réaliser mes travaux, Et les choix méthodologiques concernant la régulation de débit, justifiés par le contexte applicatif envisagé. 4. La quatrième partie de mon exposé se concentrera sur les différentes approches de régulation de débit pour le codage vidéo scalable que j’ai proposées, Afin de montrer comment j’ai contribué à cette problématique. 5. Je proposerai pour finir un bilan de mes contributions et présenterai les perspectives envisagées, En m ’appuyant sur quelques travaux préliminaires.

3 Transmission de vidéos :
Codage vidéo Objectif : Réduire le volume de données nécessaire pour représenter une séquence d’images Applications : Stockage de vidéos : 4.7 Go MPEG-4 AVC : 4 heures Sans codage : 5 minutes 704 x 576 pixels 25 img/seconde Transmission de vidéos : 01:30 02:15 L’objectif du codage vidéo est de réduire le volume de données nécessaire pour représenter une séquence d’images. Parmi ses nombreuses applications, on peut citer le stockage de vidéo sur des medias à capacité donnée tels qu’un disque DVD. Dans ce cas, les techniques de codage vidéo actuelles permettent d’entreposer plus de 4h de vidéo sur le support DVD, alors que le même support ne peut contenir que 5 minutes de la même vidéo avant codage. Le codage vidéo représente également un grand intérêt pour la transmission sur des réseaux de communication, En permettant de diffuser un contenu vidéo de bonne qualité malgré des capacités de transfert limitées.

4 Codage vidéo et cibles hétérogènes
Problème : Réseaux et terminaux hétérogènes Solution 1: simulcast (flux vidéo indépendants) 02:15 03:00 Depuis quelques années, on assiste à une diversification des moyens de transmettre et de lire les contenus vidéo. Les besoins et les capacités de ces cibles diffèrent En termes de vitesse de transfert pour les canaux de communications d’une part, En termes de taille d’écran et de qualité souhaitée pour les terminaux d’autre part. Il devient alors problématique de fournir un flux adapté à chacune de ces cibles. Une première solution, appelée simulcast, Consiste à multiplier les encodages en utilisant une technique de codage classique, Pour produire autant de flux indépendants qu’il y a de cibles à adresser.

5 Solution 2 : codage vidéo scalable (un flux unique)
Plusieurs couches scalabilité spatiale scalabilité en qualité scalabilité temporelle 03:00 04:00 Une seconde solution, appelée le codage vidéo scalable, Consiste à encoder un flux unique contenant un ensemble de couches de vidéos, Adaptés à chacune des cibles. Selon le principe de scalabilité, Une couche de base est d’abord encodée, puis augmentée par des couches d’amélioration. On distingue trois types de scalabilité : scalabilité spatiale, qui augmente la résolution des images scalabilité en qualité, qui augmente la qualité du flux encodé, scalabilité temporelle, qui augmente le nombre d’images par seconde. Le principal avantage du codage vidéo scalable par rapport à l’approche simulcast Est que les couches sont codées de manière conjointe, Ce qui permet de réaliser une économie de données sur le volume nécessaire pour coder l’ensemble des couches, En réutilisant une partie des données d’une couche pour représenter la couche suivante. Avantage : Codage conjoint des couches  économie de données

6 Stratégies d’encodage
Débit Qualité Amélioration du rapport qualité/débit Optimisation débit/distorsion Améliorer les outils de codage Augmenter le rapport qualité/débit Régulation de débit Choisir les paramètres d’encodage Respecter une consigne Débit Images Débit sans régulation Débit avec régulation consigne 04:00 05:00 Un concept lié à la problématique du codage vidéo est celui des stratégies d’encodage. Le but de ces stratégies est d’optimiser le codage à différents niveaux. Le premier aspect de ces stratégies est l’Optimisation débit / distorsion, Dont le but est d’améliorer les outils de codage Pour augmenter les performances en termes de débit et de qualité de la technique de codage. Le second aspect est l’optimisation des paramètres de l’encodage, Dont le principal exemple est la régulation de débit, Qui consiste à calculer les paramètres les mieux adaptés en fonction des données à coder, Pour respecter une consigne de débit donnée. De manière évidente, l’optimisation débit/distorsion est liée à la phase d’élaboration d’une technique de codage, et consiste à en améliorer les performances. À l’inverse, la régulation de débit tire parti d’une technique existante et a pour but d’optimiser son utilisation dans un contexte donné. C’est cette différence fondamentale qui justifie mon choix d’étudier les techniques de régulation de débit plutôt que l’optimisation débit/distorsion dans un contexte de codage vidéo scalable.

7 Problématique : Régulation de débit pour le Codage vidéo scalable
Plan Introduction Problématique : Régulation de débit pour le Codage vidéo scalable Outils et méthodologie Contributions Conclusion et perspectives 05:00 05:15 Après avoir présenté les concepts de codage vidéo scalable et de stratégies d’encodage, Je vais maintenant définir la problématique de mes travaux et justifier son importance En analysant le contexte de diffusion de contenus vidéos sur des réseaux et terminaux hétérogènes.

8 Régulation de débit pour le Codage Vidéo Scalable
Cibles hétérogènes Contexte actuel de diffusion de vidéos : Contraintes de Transmission Transmission Décodage Contrainte de Latence faible Acquisition Lecture Encodage Contraintes : Décodage Codage vidéo scalable Régulation de débit : Fine Par couche Complexité faible en calculs 05:15 08:15 J’ai présenté en introduction les difficultés rencontrées pour diffuser des contenus vidéos dans le contexte actuel. Comme l’illustre ce schéma, on dispose d’une séquence vidéo Que l’on souhaite transmettre sur différents canaux, Pour la lire sur différents terminaux. Ce contexte applicatif conditionne fortement les choix qui doivent être faits pour fournir un contenu adapté à chaque cible. 1. Dans un premier temps, devant la présence de cibles hétérogènes, ayant des caractéristiques variables en termes de capacité de transfert, de taille d’écrans et de qualité souhaitée, L’utilisation du codage vidéo scalable apparaît comme la mieux adaptée. 2. Deuxièmement, la nécessité de transmettre les données vidéos sur des canaux de communication impose des contraintes en termes de débit. Le débit des données en sortie du processus d’encodage doit respecter les capacités du canal de communication de manière précise, de manière à assurer une transmission fluide. on a donc besoin d’une technique de régulation de débit permettant d’exercer une régulation fine sur le débit des données en sortie de l’encodeur. De plus, chaque couche du flux vidéo scalable étant transmise sur un canal différent, le débit de chacune d’entre elles doit être contrôlé séparément. 3. Enfin, pour pouvoir assurer une diffusion du contenu vidéo en temps réel, il est primordial de minimiser la latence, qui représente le délai entre l’acquisition de la vidéo et sa lecture. La complexité des techniques utilisées doit donc être prise en compte dans leur élaboration, et rester faible. Ainsi, à partir du contexte applicatif que je viens de décrire, Il est possible de mettre en évidence le besoin de méthodes de régulation de débit adaptées à la vidéo scalable, Permettant une régulation fine par couche de scalabilité, Et ayant une complexité faible en termes de calculs.

9 Problématique : Régulation de débit pour le Codage vidéo scalable
Plan Introduction Problématique : Régulation de débit pour le Codage vidéo scalable Outils et méthodologie MPEG-4 SVC Régulation de débit Contributions Conclusion et perspectives 08:15 08:45 Comme je l’ai évoqué plus tôt, la régulation de débit s’appuie sur une technique de codage existante, Et permet de calculer les paramètres de codage optimaux pour respecter une consigne donnée. Mon travail s’est appuyé sur la norme de codage vidéo scalable MPEG-4 SVC, qui constitue la solution la plus développée dans ce domaine à l’heure actuelle. Je vais maintenant vous présenter cette norme de codage, en commençant par introduire le schéma de codage vidéo monocouche MPEG-4 AVC sur lequel elle s’appuie.

10 Schéma de codage MPEG-4 AVC
Séquence d’images non compressée * = Codage entropique Prédiction Transformée Quantification Flux vidéo compressé 08:45 09:45 MPEG-4 AVC = ce qu’on a de mieux en matière d’efficacité de codage à l’heure actuelle. MPEG-4 AVC développé par le JVT : collaboration entre MPEG et l’ITU (2 organismes de référence dans le codage video) Le processus d’encodage permettant de passer d’une séquence d’images d’origine, À un flux de données codées, est composé de 4 étapes. 1 et 2. Les étapes de prédiction et de transformée ont pour but de retirer les redondances spatiales, temporelles et fréquentielles Contenues dans le signal de départ, afin d’en obtenir une représentation compacte. 3. l’étape de quantification provoque la perte des données les moins pertinentes, et occasionne une perte de qualité qu’il est possible de faire varier. 4. Enfin, l’étape de codage entropique se base sur des codes à longueur variable, pour retirer les redondances encore présentes dans le flux de données binaires. + =

11 Schéma de codage scalable MPEG-4 SVC
entropique Prédiction Transformée Quantification Couche de base Prédiction inter-couches Prédiction Transformée Quantification Rehaussement spatial Codage entropique Flux vidéo compressé Prédiction Transformée Quantification Rehaussement en qualité Codage entropique Prédiction Transformée Quantification Rehaussement temporel Codage entropique 09:45 10:30 Le schéma de codage de MPEG-4 SVC s’appuie sur celui de MPEG-4 AVC. Chaque couche de scalabilité est encodée en utilisant les mêmes outils que MPEG-4 AVC. Un nouveau mécanisme de prédiction inter-couches permet à une couche d’amélioration De réutiliser et de raffiner les informations de prédiction de la couche inférieure. Ainsi, une économie de données peut être réalisée sur le codage de l’ensemble des couches, Par rapport à un scénario d’encodage de chaque couche indépendamment.

12 Extension de la norme MPEG-4 AVC
MPEG-4 SVC Extension de la norme MPEG-4 AVC Couche de base compatible avec MPEG-4 AVC Un encodeur de référence : JSVM Plan de vérification de la norme Comparaison des performances avec MPEG-4 AVC Configurations scalables types 10:30 11:30 MPEG-4 SVC est une extension de la norme MPEG-4 AVC, Elle constitue précisément l’annexe G de cette dernière. La couche de base d’un flux MPEG-4 SVC est compatible avec AVC, Si bien qu’un décodeur AVC peut lire le niveau de base d’une vidéo SVC. Le comité d’élaboration de la norme fournit un encodeur de référence, Le JSVM, pour Joint Scalable Video Model. C’est sur ce logiciel que je me suis appuyé pour mes travaux. En outre, on peut noter l’existence d’un plan de vérification du standard SVC, Élaboré pour comparer les performances de codage de SVC à celles d’AVC et évaluer l’intérêt de la nouvelle norme. Ce plan présente un ensemble de configurations susceptibles d’être rencontrées en pratique, Et a constitué une base solide pour l’évaluation de mes travaux sur la régulation de débit pour SVC.

13 Types et Groupes d’Images
Types d’images Différents outils de prédiction : Intra image Inter images, 1 image de référence Inter images, 2 images de référence Groupes d’images (GOP) hiérarchiques I Intra P Prédiction B Bi-prédiction Efficacité de codage Efficacité de codage B I P Images B hiérarchiques 11:30 13:00 Dans AVC et SVC, l’étape de prédiction utilise trois types d’outils pour retirer les redondances spatio-temporelles présentes dans les images d’origine. Ces outils donnent naissance à trois types d’image : 1. Les images I n’utilisent que la prédiction intra-image, 2. Les images P utilisent la prédiction inter-image 3. Et les images B utilisent la prédiction inter-images, avec deux images de référence. Du fait de l’efficacité croissante de ces trois outils de prédiction, les trois types d’image n’ont pas la même efficacité de codage. De plus, les flux vidéos sont structurés en groupes d’images (GOP), Ce qui permet … La structure de GOP utilisée par MPEG-4 SVC suit un modèle pyramidal basé sur deux images de référence, Sur lesquelles s’appuient des niveaux successifs d’images B hiérarchiques. Si cette structure permet d’assurer la scalabilité temporelle, Elle a également une influence sur l’efficacité de codage des niveaux d’images B hiérarchiques. En effet, la réduction de la distance entre une image B hiérarchique et ses images de référence fait elle aussi varier l’efficacité de codage en fonction du niveau de la pyramide. Ces variations dans l’efficacité de codage des différents types d’images et des différents niveaux hiérarchiques auront une influence sur la qualité du flux encodé et seront à prendre en compte dans les mécanismes de régulation de débit.

14 Problématique : Régulation de débit pour le Codage vidéo scalable
Plan Introduction Problématique : Régulation de débit pour le Codage vidéo scalable Outils et méthodologie MPEG-4 SVC Régulation de débit Contributions Conclusion et perspectives 13:00 13:30 Après avoir décrit la norme MPEG-4 SVC et les outils de codage qu’elle utilise, Je vais maintenant m’intéresser au processus de régulation de débit. S’il existe peu de travaux sur la régulation de débit adaptée au codage vidéo scalable, Les contributions pour la vidéo non scalable sont en revanche très nombreuses. C’est en me basant sur ces contributions et sur la problématique qui m’intéresse que je vais décrire l’approche de la régulation de débit que j’ai retenue.

15 Niveaux de régulation Niveau séquence Niveau GOP Niveau image
Finesse Complexité Niveau séquence Niveau GOP Niveau image Niveau macrobloc 13:30 14:30 La régulation de débit peut s’effectuer à différents niveaux. Plus le niveau est fin, plus la régulation peut se faire de manière précise, Au prix d’une complexité en termes de calculs qui augmente elle aussi. Les contraintes imposées par ma problématique me permettent d’éliminer la régulation au niveau de la séquence, Qui ne permet pas d’effectuer un contrôle précis du débit. Une régulation au niveau des GOP, en revanche, permet une plus grande précision et Fournit une certaine cohérence de la régulation dans le temps. La régulation peut ensuite être raffinée au niveau des images, qui représente un bon compromis entre finesse et complexité. La contrainte de complexité faible rend la régulation au niveau des macroblocs inadaptée, J’ai par conséquent fait le choix d’effectuer une régulation par GOP, couplée à une régulation au niveau des images.

16 nombre de bits souhaité
Répartition de budget Budget : nombre de bits souhaité Niveau GOP Budget constant par GOP Niveau image Budget constant par image ou Budget en fonction du type d’image 14:30 15:15 La première étape de la régulation de débit consiste à déterminer un budget à respecter, Qui représente le nombre de bits que l’on souhaite obtenir. Au niveau des GOP, un budget constant permet de satisfaire les contraintes liées à la transmission de la vidéo, En produisant un débit constant à une échelle proche de la seconde. Ce budget est ensuite réparti parmi les différentes images du GOP, Soit en utilisant une méthode de répartition simple consistant à affecter un budget constant par image, Soit à l’aide de politiques plus élaborées prenant en compte la structure de GOP hiérarchique et les différences entre les types d’images.

17 Niveau image : Respect du budget
Choix du paramètre de quantification (QP) : q = 0  quantification faible q = 51  quantification forte 1 -1 2 -4 5 -3 -2 -6 -26 Bloc transformé -1 2 -2 -10 Bloc quantifié 5 18 598 3 51 2 z j i QP 15:15 15:45 Une fois le budget déterminé, la seconde étape de la régulation consiste à calculer la valeur du paramètre de quantification, La mieux adaptée pour respecter ce budget. Ce paramètre, appelé QP, régit en effet la quantité de données perdues lors de l’étape de quantification, Et a une influence directe sur le débit obtenu en sortie de l’encodeur. Il prend des valeurs comprises entre 0 et 51, 0 représentant la quantification la plus faible et donc le débit le plus fort, 51 représentant la quantification la plus forte, et donc le débit le plus faible. Prédiction Transformée Quantification Codage entropique

18 Respect du budget : stratégies
Problème : Comment choisir le QP ? Deux types d’approches : Recherche exhaustive : Encoder l’image avec toutes les valeurs de QP possibles  Forte complexité Modèle de débit : Approximation de la relation R(q) par une fonction paramétrique  Faible complexité Budget à respecter : Rt Valeur de QP optimale : q R Relation entre débit et QP : 15:45 17:15 La valeur optimale du QP « qt » est celle qui génère le débit le plus proche du budget « Rt » à respecter. Pour calculer cette valeur, tout l’enjeu est de connaître le débit généré en fonction de la valeur de QP utilisée. Il existe deux types approches, 1. La première approche est la recherche exhaustive, qui consiste à encoder l’image avec toutes les valeurs de QP possibles, Ce qui permet de connaître de manière exacte les débits correspondant aux différents QP. Elle a bien entendu une complexité très élevée en termes de calculs et n’est pas applicable dans la problématique que j’ai définie. 2. La seconde approche consiste à construire un modèle de débit, qui est une approximation de la relation par une fonction paramétrique. Cette approche est donc tributaire de la précision de l’approximation et de l’estimation des paramètres, mais elle permet de minimiser le nombre d’encodages nécessaires pour trouver la valeur du QP optimale. Il existe plusieurs modèles de débit, plus ou moins précis et plus ou moins complexes, Et le choix parmi ces différentes approches conditionne fortement l’efficacité d’un mécanisme de régulation.

19 Problématique : Régulation de débit pour le Codage vidéo scalable
Plan Introduction Problématique : Régulation de débit pour le Codage vidéo scalable Outils utilisés Contributions Choix et validation d’un modèle de débit pour MPEG-4 SVC Régulation en deux passes Régulation et qualité d’image constante Régulation en une passe Conclusion et perspectives 17:15 17:45 Je vais à présent me concentrer sur les contributions que j’ai apportées à la problématique, En décrivant les approches de régulation de débit adaptées au codage vidéo scalable que j’ai développées. Je viens de présenter l’importance du choix du modèle de débit pour la régulation. Il y a peu d’études sur les modèles de débit adaptés au codage vidéo scalable. De plus, les contraintes de régulation fine et de complexité faible impliquent de bien choisir le modèle de débit utilisé. C’est pourquoi le choix d’un modèle de débit adapté et sa validation sur MPEG-4 SVC font l’objet de ma première contribution.

20 Un modèle de débit adapté : Le ρ-domaine
Définition : ρ = % de coefficients transformés annulés après quantification 1. Modèle linéaire de ρ(R) : Relation ρ  débit linéaire ρ Débit (kb) Calcul du QP optimal : 2. Relation ρ(q) : 17:45 20:45 Il existe plusieurs types de modèles de débit. Certains se basent sur un apprentissage pour s’adapter progressivement aux données à coder, D’autres utilisent des fonctions complexes de type quadratique pour exprimer le débit en fonction de la valeur du QP. Le rho-domaine est une autre approche, qui consiste à utiliser un paramètre intermédiaire entre le débit et le QP. Ce paramètre, appelé rho, correspond au pourcentage de coefficients transformés annulés après l’étape de quantification. Un fait remarquable à propos de ce paramètre, est que la relation qui le lie au débit est linéaire. Elle peut donc être modélisée par une droite dont l’équation est donnée par cette expression. Cette droite passe par le point (1;0), car lorsque rho vaut 1, tous les coefficients sont annulés et le débit est nul. L’expression dépend également d’un deuxième point de coordonnées (rho0; R0), dont les valeurs sont des paramètres du modèle. Le second fait remarquable est qu’il existe une relation entre rho et le QP, tirée de l’analyse du mécanisme de quantification. La fonction « z » est un indicateur valant 1 lorsqu’un coefficient est annulé par la quantification, et prend en paramètres les coefficients transformés de l’image ainsi que la valeur du QP. Pour calculer la valeur de rho, on somme les valeurs de « z » sur l’ensemble de l’image, que l’on divise par le nombre « M » total de coefficients dans l’image. À l’aide de ces deux relations, il est aisé de calculer la valeur optimale du QP, Qui est celle qui minimise l’écart entre la valeur de rho obtenue à partir du budget « Rt » et la valeur de rho obtenue à partir du QP. Le rho-domaine bénéficie donc de deux particularités intéressantes pour ma problématique. 1. Premièrement, il bénéficie d’une grande efficacité Grâce à la forte linéarité de la relation entre rho et le débit, et au fait que la relation entre rho et le QP est exacte. 2. Deuxièmement, il bénéficie d’une faible complexité en termes de calculs car ces deux relations sont simples à calculer. Cette approche a été introduite pour le codage vidéo MPEG-2, et a ensuite été validée pour MPEG-4 AVC. En revanche, elle n’a jamais été étudiée pour MPEG-4 SVC. Points clés : Corrélation ρ  R forte Relation ρ(q) exacte Précision élevée Complexité faible Relation ρ(R) linéaire Relation ρ(q) simple

21 Validation du ρ-domaine pour MPEG-4 SVC
Deux hypothèses à vérifier : relation ρ(q) valide relation ρ(R) linéaire Vérification expérimentale : Tracé R(ρ) pour configurations scalables représentatives Plan de Vérification MPEG-4 SVC Encodage avec q = 0,…,51 20:45 21:45 Dans un premier temps, j’ai vérifié la validité du rho-domaine pour MPEG-4 SVC, En vérifiant les deux hypothèses suivantes : La relation entre rho et le QP est toujours valide, La relation entre rho et le débit est toujours linéaire. La première hypothèse est facile à vérifier, puisque SVC utilise le même mécanisme de quantification que AVC. La relation entre rho et le QP est par conséquent toujours valide. Pour vérifier la seonde hypothèse, j’ai procédé à une étude expérimentale Durant laquelle j’ai encodé un ensemble de séquences d’images avec toutes les valeurs de QP possibles dans des configurations scalables type, tirées du plan de vérification de SVC. J’ai ensuite tracé la relation entre rho et le débit pour l’ensemble des images encodées.

22  Relation linéaire pour l’ensemble des configurations testées :
Relation R(ρ) pour SVC  Relation linéaire pour l’ensemble des configurations testées : Scalabilité spatiale Scalabilité en qualité Scalabilité temporelle 21:45 22:15 J’ai constaté que pour l’ensemble des configurations testées, la relation reste linéaire. J’en ai donc déduit que le rho-domaine est également valide sur MPEG-4 SVC.

23 Problématique : Régulation de débit pour le Codage vidéo scalable
Plan Introduction Problématique : Régulation de débit pour le Codage vidéo scalable Outils utilisés Contributions apportées Choix et validation d’un modèle de débit pour MPEG-4 SVC Régulation en deux passes Régulation et qualité d’image constante Régulation en une passe Conclusion et perspectives 22:15 22:30 Fort de ce résultat, l’objet de ma seconde contribution est l’intégration du rho-domaine Dans un premier mécanisme complet de régulation de débit pour MPEG-4 SVC en deux passes.

24 Respect du budget : 2 passes
1ère passe : valeurs initiales Régulation de débit Valeurs initiales 22:30 23:00 Le mécanisme proposé ici est en deux passes. En effet, le rho-domaine nécessite l’initialisation de valeurs initales : « rho0 », « R0 » et les coefficients transformés de l’image. Ces valeurs sont obtenues en encodant l’image une première fois. Le calcul du QP optimal est alors effectué, puis l’image est encodée une seconde fois à l’aide cette valeur. 2ème passe : encodage final

25 Compensation des erreurs
Répartition de budget Niveau GOP Budget constant par GOP : Niveau image Budget constant par image : Cl = contrainte en bits par seconde Sl = taille d’un GOP de la couche l Fl = nb. d’img par sec. dans la couche l Compensation des erreurs 23:00 24:00 La répartition de bugdet est effectuée de manière indépendante pour chaque couche. Au niveau des GOPs, on affecte un budget constant, Calculé à partir d’une contrainte exprimée en kilobits par seconde « Cl », où « l » désigne une couche de scalabilité, que l’on convertit en kilobits par GOP « Gl », en se basant sur le nombre d’images dans le GOP « Sl » et le nombre d’images par seconde « Fl ». De plus, on ajoute un terme « E » permettant de compenser les erreurs effectuées sur les GOPs précédents, Et conserver un débit global relativement constant. Au niveau image, la répartition est faite de manière simple dans cette contribution, Avec l’affectation d’un budget constant « Rt » à chaque image, obtenu en divisant le budget du GOP par le nombre d’images dans le GOP.

26 Résultats expérimentaux
Débits par GOP 24:00 24:45 Je vous présente maintenant les résultats expérimentaux obtenus avec ce mécanisme de régulation simple. Cette figure représente les débits atteints par rapport à la contrainte formulée au niveau des GOP Sur un exemple de configuration scalable tirée du plan de vérification de SVC. Le flux contient trois couches : La couche de base en bleu, Une couche intermédiaire en magenta Et une couche supérieure en rouge. Pour chacune des couches, la contrainte apparaît en ligne discontinue noire. On observe une régulation très précise sur les trois couches, et les débits obtenus sont très proches des contraintes formulées. Il s’agit ici d’un exemple de résultats obtenus sur la séquence d’images HOCKEY en scalabilité spatiale, Et l’on observe un comportement similaire sur l’ensemble des configurations testées. Scalabilité spatiale - séquence HOCKEY

27 Résultats expérimentaux
Débits par image R(qt ) R(qt+1) Rt Budget réel Budget alloué 24:45 25:15 Au niveau des images, la régulation est également très précise. On peut remarquer que la contrainte au niveau des images n’est pas constante. Cela est dû au fait que la régulation de débit est effectuée au niveau image. Par conséquent, le budget alloué se trouve généralement entre deux valeurs de débit qu’il est effectivement possible d’atteindre en encodant l’ensemble de l’image avec un QP identique. La ligne discontinue représente donc ici le débit le plus proche du budget alloué que l’on peut atteindre,, aussi appelé budget réel. On constate donc que la précision de la régulation au niveau image est très bonne. Effet de seuil dû à la régulation niveau image : Scalabilité spatiale - séquence HOCKEY

28 Variations de la qualité
Effet de scintillement de la qualité : 25:15 25:45 Au niveau de la qualité du flux encodé, on constate des variations rapides, Qui provoquent des effets déplaisants de scintillement de la vidéo. Scalabilité en qualité - séquence CITY

29 Résultats : variations de la qualité
Scalabilité en qualité – séquence HARBOUR Scalabilité temporelle – séquence CITY P B1 B2 B3 Variations de qualité : PSNR images Efficacité de codage Origine des variations : 25:45 26:30 Si l’on observe les variations du PSNR au cours du temps, qui est une mesure objective de la qualité, calculée ici au niveau d’une image, On constate des variations très rapides, qui sont à l’origine de ces effets de scintillement. Si l’on observe plus précisément ces oscillations, on constate que le même motif se répète tout au long de la séquence. L’image P située au début du GOP a un PSNR plus faible que l’image B qui la suit, et le PSNR augmente en fonction du niveau temporel des images B hiérarchiques. La présence de ce motif est lié aux différences d’efficacité de codage entre les types et les niveaux d’images dans la structure de GOP hiérarchique.

30 Problématique : Régulation de débit pour le Codage vidéo scalable
Plan Introduction Problématique : Régulation de débit pour le Codage vidéo scalable Outils utilisés Contributions apportées Choix et validation d’un modèle de débit pour MPEG-4 SVC Régulation en deux passes Régulation et qualité d’image constante Régulation en une passe Conclusion et perspectives 26:30 26:45 C’est pourquoi dans la contribution suivante, Je me suis intéressé à une méthode de répartition de budget au niveau des images Basé sur l’efficacité de codage de chaque type pour obtenir un PSNR constant à l’intérieur d’un GOP.

31 Qualité constante par GOP
Objectif : Obtenir un PSNR constant sur toutes les images d’un GOP. Problème : Différences d’efficacité de codage entre les types et niveaux d’images. Efficacité de codage : Liée à la relation entre débit et qualité Relation difficile à caractériser Efficacité de codage 26:45 27:30 L’objectif de cette contribution est d’obtenir un PSNR constant sur l’ensemble d’un GOP. Le problème que l’on recontre alors est la différence d’efficacité de codage entre les différents types et niveaux d’images. Cette notion d’efficacité de codage est liée à la relation entre débit et qualité pour une image. Or cette relation est difficile à caractériser, du fait de sa forte non-linéarité. L’idée est donc d’essayer de décomposer le problème pour trouver une formulation plus simple de cette relation.

32 Lien entre débit et qualité
Valeur d’un coefficient quantifié dans SVC : Terme de décalage constant q : valeur de QP utilisée Coefficient quantifié Coefficient transformé Relation PSNR(1/2q/6) Image 1 Image 2 Relation Débit(1/2q/6) Image 1 Image 2 b2 b1 PSNR constant 1/(2q1/6) 1/(2q2/6) 27:30 29:30 Pour simplifier le problème, je vais m’intéresser à l’expression d’un coefficient quantifié en fonction du coefficient transformé et du QP utilisé. Cette expression, qui est valable pour AVC et SVC, dit qu’un coefficient quantifié « Zij » est égal au coefficient transformé « Yij » multiplié par un terme de décalage constant « Cij », Divisé par « 2^q/6 », où « q » est la valeur de QP utilisée. Il est aisé de voir que le coefficient Zij est lié au débit en sortie de l’encodeur, et que ce débit va donc être davantage lié à « 1/2^q/6 » Plutôt qu’avec le QP directement. On s’interesse donc à la relation entre le PSNR et ce paramètre « 1/2^q/6 ». Pour rappeler le problème, on souhaite avoir un PSNR égal sur des images de types différent, comme l’image 1 et l’image 2 présentées sur la figure. Cette contrainte de PSNR constant impose le rapport entre les valeurs de 1/(2^q/6) pour les deux images. Comme cette relation est relativement linéaire, on peut dire que ce rapport est égal à une constante, qui dépend du comportement des deux images. Si on regarde du côté du débit, on observe une relation également linéaire (du moins localement). Comme on a cette relaiton linéaire, le fait d’avoir un rapport constant entre les valeurs de 1/(2^q/6) implique un rapport entre les débits Correspondants pour les deux images est lui aussi constant.

33 Approximation linéaire des relations
Approximation linéaire de PSNR(1/(2q/6)) : Approximation linéaire de Débit(1/(2q/6)) : Relation PSNR(1/2q/6) Image 1 Image 2 Relation Débit(1/2q/6) Image 1 Image 2 b2 b1 PSNR constant 1/(2q1/6) 1/(2q2/6) 29:30 30:15 Pour cela, je vais m’intéresser à la relation qui permet de calculer la valeur d’un coefficient quantifié en fonction de la valeur du coefficient transformé et du QP utilisé. Cette relation est la suivante, où « Zij » est le coefficient quantifié, et « Yij » est le coefficient transformé. « Cij » est une constante de décalage permettant de réaliser l’opération de quantification de manière plus rapide, En effectuant une division par une puissance de 2, qui se traduit par un simple décalage binaire. On peu remarquer que la valeur du coefficient transformé ne dépend pas directement du QP « q » utilisé, Mais du terme 2^q/6. Intuitivement, il est possible de voir que la valeur de « Zij » conditionne le débit en sortie de l’encodeur. En effet, entre l’étape de quantification et le débit final, on ne trouve que l’étape de codage entropique, Qui au niveau d’une image entière s’évère avoir des performances relativement constantes. Il est donc possible d’envisager une relation entre le débit et le terme 2^q/6.

34 Mesure d’efficacité de codage
Approximation linéaire de PSNR(1/(2q/6)) : Approximation linéaire de Débit(1/(2q/6)) : Mesure de l’efficacité de codage d’une image : Calculée après la 1ère passe : qf : QP utilisé pour la 1ère passe bf : débit obtenu par la 1ère passe Répartition de budget image : Valeur relative de Kf dans le GOP Budget du GOP Budget de l’image 30:15 31:00 Pour cela, je vais m’intéresser à la relation qui permet de calculer la valeur d’un coefficient quantifié en fonction de la valeur du coefficient transformé et du QP utilisé. Cette relation est la suivante, où « Zij » est le coefficient quantifié, et « Yij » est le coefficient transformé. « Cij » est une constante de décalage permettant de réaliser l’opération de quantification de manière plus rapide, En effectuant une division par une puissance de 2, qui se traduit par un simple décalage binaire. On peu remarquer que la valeur du coefficient transformé ne dépend pas directement du QP « q » utilisé, Mais du terme 2^q/6. Intuitivement, il est possible de voir que la valeur de « Zij » conditionne le débit en sortie de l’encodeur. En effet, entre l’étape de quantification et le débit final, on ne trouve que l’étape de codage entropique, Qui au niveau d’une image entière s’évère avoir des performances relativement constantes. Il est donc possible d’envisager une relation entre le débit et le terme 2^q/6.

35 Résultats : Comparaison visuelle
Budget constant par image : Budget selon l’efficacité de codage : 31:00 31:30 Visuellement, la différence entre une répartition simple du budget et la prise en compte de la complexité des images est évidente, Avec la suppression des effets de scintillement dans le deuxième cas.

36 Résultats : PSNR Budget constant par image :
Scalabilité spatiale – séquence SOCCER Scalabilité en qualité – séquence HARBOUR Budget selon l’efficacité de codage : Scalabilité spatiale – séquence SOCCER Scalabilité en qualité – séquence HARBOUR 31:30 32:00 Du point de vue du PSNR, l’effet est clairement identifiable, avec une atténuation très forte des variations locales.

37 Résultats : précision de la régulation
Débits par GOP Débits par image 32:00 32:30 Enfin, les résultats au niveau des débit par GOP et par image permettent de vérifier que la précision de la régulation est conservée. Au niveau des images, on remarque une répartition du budget en accord avec le comportement de la mesure de complexité, Avec un budget plus important pour l’image P en début de GOP, et une décroissance du budget en fonction du niveau d’image B hiérarchique. Scalabilité spatiale – séquence HARBOUR

38 Résultats : temps d’encodage
Temps moyen d’encodage par image 32:30 32:45 L’inconvénient majeur du mécanisme est sa complexité en termes de calculs. La présence de deux passes sur chaque image est en effet à l’origine d’une forte augmentation du temps d’encodage.

39 Problématique : Régulation de débit pour le Codage vidéo scalable
Plan Introduction Problématique : Régulation de débit pour le Codage vidéo scalable Outils utilisés Contributions apportées Choix et validation d’un modèle de débit pour MPEG-4 SVC Régulation en deux passes Régulation et qualité d’image constante Régulation en une passe Conclusion et perspectives 32:45 33:00 L’objet de ma contribution suivante est donc de remplacer la première passe d’initialisation par un mécanisme moins coûteux en calculs, De manière à minimiser la complexité de l’approche en proposant un mécanisme de régulation en une passe.

40 Initialisation du modèle de débit
Besoin d’une phase d’initialisation Modèle de débit : ρ0, R0, coefficients transformés Mesure d’efficacité de codage Kf : qf et bf Exploitation dépendances temporelles entre images : GOP précédent GOP courant B P B P 33:00 34:30 Dans le mécanisme précédent, une première passe était requise pour initialiser le modèle de débit, En obtenant les valeurs de rho0, R0 et les coefficients transformés de l’image, Ainsi que pour le calcul de la complexité de codage de l’image. Or, les dépendances temporelles entre images proches permettent d’imaginer que cette phase d’initialisation pourrait se baser sur les données obtenues sur une image précédente. Il est évidemment primordial de choisir une image ayant des caractéristiques proches comme image de référence. Du fait de la structure hiérarchique de GOP utilisée dans SVC, l’image la plus proche en termes de comportement n’est pas l’image précédente, Mais la dernière image encodée ayant le même type et le même niveau que l’image en cours dans la même couche. C’est donc cette image qui est utilisée pour l’initialisation du modèle de débit. On obtient par conséquent un mécanisme n’encodant chaque image qu’une fois, ce qui permet de réduire de moitié sa complexité en calculs. ... ... Image courante Image de référence pour la régulation de débit

41 Résultats : débits par image
Débits par image (2 passes) Débits par image (1 passe) 34:45 35:30 Sur les séquences contenant une forte activité en revanche, La régulation est moins précise, du fait de l’initialisation du modèle de débit avec des données issues d’une image éloignée. Cette perte d’efficacité s’observe de manière plus franche encore sur des GOP de grande taille, Car la distance entre l’image en cours et son image de référence pour la régulation augmente. Néanmoins, les performances de la régulation restent élevées, avec un débit par image proche du budget alloué. SOCCER – scalabilité en qualité

42 Résultats : PSNR 2 passes 2 passes 1 passe 1 passe 35:30 36:00
Au niveau du PSNR, on constate que le mécanisme en une passe ne parvient pas à d’aussi bons résultats Qu’avec l’approche en deux passes. En effet, la complexité d’une image est calculée à partir des données de l’image de référence, dont les caractéristiques diffèrent. La répartition du budget du GOP se fait donc à partir de données obsolètes et ne prend pas en compte les changements récents d’activité. SOCCER – scalabilité en qualité HARBOUR – scalabilité spatiale

43 Résultats : temps d’encodage
Temps moyen d’encodage par image 36:00 36:30 L’apport majeur de cette contribution se trouve dans sa faible complexité en termes de calculs, Traduite par un temps d’encodage moyen très faiblement supérieur à un encodage sans régulation. L’augmentation du temps d’encodage est inférieure à 6%, ce qui est négligeable en comparaison avec la durée d’un encodage.

44 Problématique : Régulation de débit pour le Codage vidéo scalable
Plan Introduction Problématique : Régulation de débit pour le Codage vidéo scalable Outils utilisés Contributions apportées Choix et validation d’un modèle de débit pour MPEG-4 SVC Régulation en deux passes Régulation et qualité d’image constante Régulation en une passe Conclusion et perspectives 36:30 36:45 Il est maintenant temps pour moi de faire le bilan de mes contributions, Suite à quoi je vous présenterai quelques perspectives appuyées par des travaux préliminaires.

45 Bilan des contributions :
Conclusion Objectif : Développer un schéma de régulation de débit adapté à un codage vidéo scalable MPEG-4 SVC Contraintes applicatives fortes Bilan des contributions : Validation d’un modèle de débit sur MPEG-4 SVC Régulation fine Faible complexité Qualité constante 36:45 37:45 Je vais commencer par rappeler l’objectif de mes travaux, Qui était de développer des mécanismes de régulation de débit adaptés au codage vidéo scalable MPEG-4 SVC, Dans un contexte impliquant des contraintes fortes, liées à la diffusion de vidéos pour des cibles hétérogènes. Pour faire un bilan de mes contributions, J’ai tout d’abord procédé à la validation d’un modèle de débit basé sur le rho-domaine pour MPEG-4 SVC, Suite à quoi j’ai pu proposer trois approches de la régulation de débit Capables d’exercer une régulation fine au niveau des GOP et des images, Tout en bénéficiant d’une complexité faible en termes de calculs, Et en permettant d’obtenir une qualité constante par GOP.

46 Problématique : Régulation de débit pour le Codage vidéo scalable
Plan Introduction Problématique : Régulation de débit pour le Codage vidéo scalable Outils utilisés Contributions apportées Choix et validation d’un modèle de débit pour MPEG-4 SVC Régulation en deux passes Régulation et qualité d’image constante Régulation en une passe Conclusion et perspectives 37:45 38:00 Il est maintenant temps pour moi de faire le bilan de mes contributions, Suite à quoi je vous présenterai quelques perspectives appuyées par des travaux préliminaires.

47 Travaux préliminaires
Régulation inter-couches Initialisation du modèle de débit avec l’image de la couche de base Problème de mise à l’échelle Image courante Même image dans la couche de base Image précédente de même type dans la même couche Corrélations des QP entre les couches : 38:00 39:00 Le mécanisme en 1 passe manque de précision pour les séquences contenant une forte activité et les GOPs de grande taille, Car les différences de contenu entre l’image en cours de régulation et l’image utilisée comme référence Ne permettent pas d’avoir une bonne initialisation du modèle de débit. Dans ce cas, l’image correspondante dans la couche de base représente une meilleure initialisation. Comme le montrent ces figures, il existe une relation assez linéaire entre le QP choisi dans la couche de base et celui choisi dans les couches d’amélioration. On peut donc envisager d’utiliser le QP de la couche de base pour réguler le débit de la couche d ’amélioration. Cependant, les informations de la couche de base ne sont pas exploitables telles quelles, et il faut procéder à une étape de conversion pour passer de l’une à l’autre.

48 Travaux préliminaires
Régulation en une passe Régulation inter-couches 39:00 40:00 Je présente ici des résultats préliminaires pour montrer la viabilité d’une approche de régulation intercouches. Les résultats obtenus avec le mécanisme en une passe sur deux couches de scalabilité sont présentés sur la figure du haut, Et comparés aux résultats obtenus en utilisant la QP de la couche de base pour la couche d ’amélioration, après conversion par régression linéaire. On constate que la régulation de la couche d’amélioration est assez précise, malgré la grand simplicité du mécanisme utilisé. Ces premiers résultats sont donc encourageants, et la combinaison de l’approche en une passe avec un mécanisme intercouches Est une piste intéressante sur laquelle je vais continuer à travailler.

49 Travaux préliminaires
Budget image adaptatif Comparaison de la qualité a posteriori Correction de la répartition de budget niveau image Répartition et selon efficacité de codage HARBOUR – qualité Répartition après correction 40:00 41:00 L’idée du budget adaptatif au niveau image est de corriger les erreurs de répartition Effectuées par le mécanisme en une passe, En comparant la qualité entre les types d’images a posteriori, Pour apprendre au fur et à mesure la répartition optimale entre les types d’images. Sur la figure de gauche, le PSNR obtenu par le mécanisme en une passe est présenté par couche et par type d’image. On observe que les PSNR ne sont pas tous identiques, notamment pour les images P qui ont un PSNR plus élevé que le reste des images. L’idée du budget adaptatif est de compenser cette différence de qualité en corrigeant la répartition a posteriori. Je présente ici des résultats préliminaires, montrant l’atténuation réalisée par cette méthode. On constate que tous les types d’images ont un PSNR équivalent, Ce qui laisse apparaître l’intérêt d’un mécanisme de contrôle de la qualité comme celui-ci.

50 Prise en compte du buffer de transmission
Perspectives Prise en compte du buffer de transmission Étude de différentes politiques de contrôle de buffer Interdépendances des données inter-couches Mesures perceptuelles de qualité 41:00 42:00

51 Régulation de débit pour MPEG-4 SVC
Stratégies d’encodage pour codeur vidéo scalable Régulation de débit pour MPEG-4 SVC Yohann Pitrey IETR – Equipe Image et Télédétection UMR 6164 INSA de Rennes 16 Septembre 2009

52

53 Prise en compte du buffer de transmission
Perspectives Prise en compte du buffer de transmission  Contrainte : niveau d’occupation du buffer Étude de différentes politiques de contrôle de buffer Local à chaque couche : Global à toutes les couches : Encodage Transmission Décodage Buffer

54 Validation du ρ-domaine
Pourquoi la relation rho(R) aurait pu changer dans SVC? Prédiction inter-couches  Force de la quantification peut avoir un impact sur l’efficacité prédiction inter-couches Nature de cet impact : constant ( relation toujours linéaire)?

55 Scalabilité spatiale

56 Scalabilité en qualité
+ +

57 Scalabilité temporelle
Structure de gop hiérarchique (importante pour explication qualité constante) B P

58 Codage Vidéo Scalable Simulcast Économie de débit Codage scalable

59 Codage Vidéo Scalable Simulcast Codage scalable

60 Arrêt pendant chargement
Régulation de débit Transmission de vidéos Trop de données Arrêt pendant chargement Images Débit (kbits) trop élevé Trop de pertes Qualité sous optimale trop faible Contrainte de débit constant  Régulation fine  Impact sur la qualité

61 Groupes d’Images (GOP)
Structure courante pour MPEG-4 AVC : Structure hiérarchique de MPEG-4 SVC : I B B P B B P B B Efficacité de la prédiction B B B P P

62 Répartition de budget Niveau image Budget égal pour chaque image :
Budget restant pour le GOP Budget alloué à l’image Position de l’image dans le GOP

63 Mécanisme en deux passes
+ coeffs 1ère passe 2ème passe Calcul QP qt

64 Mécanisme en une passe Calcul QP Encodage image précédente
courante

65 Choix d’un modèle de débit pour SVC
Exemples d’approches sur SVC : [Liu 2008] Modèle linéaire pour R(q) Apprentissage complexe Sensible aux changements brusques [Xu 2007] Modèle complexe Apprentissage Mélange répartition budget et calcul du QP

66 Mesure de complexité de codage
Comportement de Kf dans un GOP : P B1 B2 B3 B4 Complexité relative de l’image dans le GOP Calcul du budget image : 1 minute 30 Expérimentalement, on constate que « Kf » a le comportement attendu, Car les images P ont une complexité plus élevée que les images B, Et l’on constate une diminution de la complexité en fonction du niveau hiérarchique des images B. Finalement, le budget au niveau image est calculé en fonction de la complexité relative de chaque image par rapport aux reste des images du GOP. Budget du GOP

67 Résultats expérimentaux
Erreur de débit par image et par couche écart type moyenne 30 secondes Cette observation est confirmée par l’erreur de débit moyenne par image et par couche, qui ne dépasse pas 9% du budget affecté. L’écart type de cette erreur est lui inférieur à 13, ce qui traduit une erreur relativement constante sur l’ensemble de la séquence. Scalabilité spatiale - séquence HOCKEY


Télécharger ppt "Régulation de débit pour MPEG-4 SVC"

Présentations similaires


Annonces Google