Brevet FR3041851A1 — publié le 20170331

Procédé d'allocation de débit, dispositif, codeur et programme d'ordinateur associés 1. Domaine de l'invention Le domaine de l'invention est celui du codage de séquences d'images numériques, en particulier de la régulation de débit entre plusieurs couches d'un schéma de codage échelonnable (pour « scalable », en anglais). L'invention peut notamment, mais non exclusivement, s'appliquer à la transmission de séquences d'images codées sur des canaux de transmission de capacités variées. 2. Présentation de l'art antérieur On considère un codeur scalable, qui permet d'encoder un contenu selon plusieurs niveaux hiérarchiques, le décodage d'un niveau nécessitant le décodage préalable des niveaux sous-jacents. Cette dépendance s'explique par le fait que le codage scalable exploite les corrélations existantes entre les différentes déclinaisons du signal afin de réduire d'avantage les redondances et d'améliorer la compression. Dans le cas particulier du codage vidéo 2D scalable, le signal d'entrée est décliné en plusieurs versions dont les caractéristiques s'améliorent pour chaque couche (par exemple : définition, frame-rate, SNR (pour « Signal to Noise Ratio », en anglais), Color-Gamut, Dynamique, etc...). La Figure 1 illustre un exemple de codeur scalable vidéo C, connu de l'homme de métier, permettant d'encoder le signal source S en deux niveaux de qualité S-0 et S-1 correspondant respectivement aux couches L-0 et L-1. Le codeur doit respecter des consignes de débit CD-0 pour la couche L-0 et CD-1 pour la couche L-1. Ces deux débits cibles additionnés constituent un débit global DG et sont associés à un ratio de débit RD=CD-0/DG. Une première unité de traitement T permet de transformer le signal S en autant de signaux S-0, S-1 d'entrée que de couches de scalabilité disponibles dans le codeur scalable. Dans ce cas, le bloc de traitement T est constitué d'un premier bloc T-1 qui génère le niveau le plus haut S-1, puis d'un second bloc T-0 qui dérive ensuite le niveau le plus bas S-0. Ces signaux d'entrée sont adaptés aux caractéristiques des couches de scalabilité. Par exemple, pour une scalabilité spatiale, un signal source au format UHD (« Ultra High Definition », en anglais) sera préalablement sous- échantillonné par un premier bloc de prétraitement T-0 pour créer un signal d'entrée HD (pour « High Definition », en anglais) S-0 adapté à la couche de base L-0. Pour une scalabilité 3041851 2 temporelle, un signal source à 120 images par seconde sera réduit en une déclinaison à 60 images par seconde. Pour une scalabilité en color gamut, un signal source placé dans un espace couleur BT.2020 sera décliné en une version Rec.709 à l'aide d'un algorithme de color-mapping. Pour une scalabilité en bit-depth, un signal dont les canaux sont représentés sur 10bits sera décliné en une 5 version 8bits. Pour une scalabilité en dynamique, un signal HDR sera transformé en un signal SDR à l'aide d'un opérateur de tone-mapping. On comprend que ces prétraitements, connus de l'homme du métier, sont adaptés au type de scalabilité mis en oeuvre par le codeur. Les signaux d'entrée S-0 et S-1 alimentent respectivement un codeur C-0 de la couche L-0 et le codeur C-1 de la couche L-1. Ces codeurs sont pilotés par deux unités de contrôle de débit 10 RC-0 pour le codeur de la couche L-0 et RC-1 pour le codeur de la couche L-1. Les codeurs et leurs unités de contrôle de débit communiquent en s'échangeant des informations de codage IRC-0 pour la couche L-0 et IRC-1 pour la couche L-1. Durant la compression de la couche L-0 des informations de codage IC-0 de la couche L-0 sont extraites et transmises à un bloc de traitement IT-0 qui va traiter afin de les rendre exploitables IC-1 par le codeur C-1. Ces informations de 15 codage comprennent par exemple une information de distribution des résidus, des paramètres de quantification, un multiplicateur lagrangien, des informations relatives au débit et/ou la qualité des données codées, les images de références provenant de la couche inférieure ou des vecteurs de mouvement. Le signal S-0 de la couche L-0, dite couche de base, est tout d'abord encodée par un 20 codeur C-0 qui produit un train binaire Bs-0 indépendamment décodable. Durant ce premier encodage, des informations inter-couches IC-0 sont extraites (ex : informations sur les modes de prédiction utilisés, les vecteurs de mouvement, l'image codée-décodée locale, etc...) puis éventuellement mises à l'échelle, traitées et enfin transmises au codeur C-1 de la couche supérieure L-1, dite couche d'amélioration ou de rehaussement. 25 Le codeur C-1 de la couche supérieure compresse à son tour le signal S-1 correspondant à la couche L-1 en exploitant ces informations inter-couches en plus des informations utilisées normalement. De la même façon, des informations inter-couches IC-1 sont extraites, traitées et transmises au codeur de la couche supérieure, le cas échéant. Le codeur C-1 produit un train binaire Bs-1. Le train binaire Bs-1 ne pourra être correctement décodé que si les informations 30 inter-couches ont été bien reconstruites au décodeur, donc uniquement si la couche inférieure a été décodée préalablement. Les deux trains binaires BS-0, Bs-1 peuvent être multiplexés par le bloc M afin de former un train binaire global BsT. 3041851 3 Ce processus d'encodage et la dépendance au décodage se répète pour toutes les couches supérieures existantes. Ce type de codeur fonctionne implicitement à un ratio de débit fixe, puisque les débits cibles CD-1 et CD-0 imposés aux couches sont associés à un certain ratio CD0/(CD-0+CD-1). 5 Ce procédé d'encodage évite le codage séparé, donc non-optimal, d'un signal en plusieurs niveaux d'informations. Les trains binaires ainsi produits peuvent être envoyés selon le besoin et la capacité de décodage et d'affichage du terminal final. On connait de la demande de brevet internationale publiée sous le numéro W02006/119436 un procédé de codage multi-couches et multi-passes qui ajuste la qualité de 10 codage de chacune des couches de façon à ce que le débit de codage de la couche de base et celui de la couche de rehaussement satisfassent une relation mathématique, telle que par exemple une valeur de ratio de débit. Une première passe permet de collecter des paramètres caractéristiques des données à coder puis d'estimer les débits à allouer à chaque couche à partir des paramètres collectés. La deuxième passe met en application les débits estimés. Un ratio de débit fixe est 15 imposé entre les couches. Par exemple, il est arbitrairement choisi égal à 1 :1. 3. Inconvénients de l'art antérieur Un inconvénient de cette solution est qu'elle n'explicite pas comment déterminer le ratio de débit. Au mieux, il est contraint par une valeur arbitraire fixée a priori. 20 4. Objectifs de l'invention L'invention vient améliorer la situation. L'invention a notamment pour objectif de pallier ces inconvénients de l'art antérieur. Plus précisément, un objectif de l'invention est de proposer une solution qui permette de 25 répartir un débit cible global de façon optimale entre les couches de scalabilité, de façon à maximiser la qualité de la séquence d'image codée. 5. Exposé de l'invention Ces objectifs, ainsi que d'autres qui apparaîtront par la suite, sont atteints à l'aide d'un procédé d'allocation de débit entre une première couche, dite couche de base et au moins une deuxième 3041851 4 couche, dite couche d'amélioration, d'un codeur scalable apte à coder une séquence d'images numériques, à un débit global cible. Le procédé selon l'invention est particulier en ce qu'il comprend les étapes suivantes, mises en oeuvre suite au codage d'un groupe d'images de la séquence : 5 - obtention d'une mesure de qualité de codage de la couche d'amélioration pour le groupe d'images courant à partir d'une métrique prédéterminée ; - obtention d'un coût de codage effectif de la couche de base et d'un coût de codage effectif de la au moins une couche d'amélioration pour le groupe d'images courant : - calcul d'un ratio de débit entre une dite couche d'amélioration et le débit global à partir des 10 coûts de codage estimés ; - estimation d'une fonction de performance au moins à partir du ratio de débit calculé, de la mesure de qualité obtenue pour le GOP courant et d'un modèle de courbe prédéterminé ; et - Détermination d'un ratio de débit optimal dans un intervalle de ratio prédéterminé, à partir 15 de la fonction de performance estimée et selon un critère de maximisation de la qualité de ladite au moins une couche d'amélioration. Avec l'invention, on estime à partir d'au moins un groupe d'images qui vient d'être encodé, l'évolution de la performance du codeur en fonction d'un ratio de débit entre les couches et on 20 détermine, à partir de cette estimation et en vue du codage du groupe d'images suivant, le ratio de débit qui optimise la qualité du codage pour le débit global fixé. Ainsi, l'invention repose sur une approche tout à fait nouvelle et inventive de l'allocation de débit qui ne fixe pas a priori le ratio de débit entre les couches de codage, mais modélise les performances de codage en fonction du ratio de débit obtenu sur des groupes d'images 25 précédemment encodés et en déduit la valeur optimale à mettre en oeuvre pour le groupe d'images suivant. Selon une caractéristique avantageuse de l'invention, l'étape d'estimation d'une fonction de performance comprend une détermination de paramètres du modèle de courbe prédéterminé à partir du ratio de débit calculé et de la mesure de qualité obtenue pour le groupe d'images courant 30 et d'une pluralité de couples de valeurs de mesures de qualité et de ratio de débit préalablement obtenues. 3041851 5 Par exemple les paramètres du modèle de courbe sont calculés selon une méthode de minimisation d'erreur de type moindres carrés. Le modèle de courbe utilisé peut être polynomial d'ordre 1 ou supérieur. Avantageusement, le modèle de courbe peut être choisi en fonction de résultats obtenus sur un ensemble représentatif de séquences de tests. 5 La pluralité de couples de valeurs peut être issue de l'encodage de groupes d'images précédents ou bien d'une table de correspondance, préalablement construite à partir d'un ensemble représentatif de séquences de tests. Selon un autre aspect de l'invention, le procédé d'allocation de débit comprend en outre une étape de détermination d'au moins un intervalle de ratios autorisés. 10 L'intervalle de ratios autorisés peut être fixe, pour une mise en oeuvre simple de l'invention. Selon un autre aspect de l'invention, le procédé comprend une étape de mise à jour d'un débit restant à partir des coûts de codage obtenus et du débit global cible et l'étape de détermination détermine un premier intervalle de ratio en fonction de contraintes de débit-qualité sur la couche de base et du débit restant calculé. 15 L'intervalle de débits autorisés peut varier au cours de l'encodage. Avantageusement, l'invention prend en compte des contraintes de débit et de qualité sur la couche de base et le débit cible restant pour déterminer l'intervalle de débits autorisé le plus adapté. Selon un autre aspect de l'invention, le procédé comprend une étape de mise à jour d'un débit restant à partir des coûts de codage obtenus et du débit global cible (DG), et l'étape de 20 détermination détermine un deuxième intervalle de ratio en fonction de contraintes de débit qualité sur une dite couche d'amélioration et du débit restant calculé. On procède de la même manière pour la ou les couches d'amélioration. Selon un autre aspect de l'invention, l'étape de détermination détermine une intersection du premier et du deuxième intervalles. 25 L'intervalle de ratio de débit global autorisé ainsi obtenu prend ainsi en compte les contraintes de toutes les couches de scalabilité. Selon un autre aspect de l'invention, l'étape de détermination d'un intervalle de ratio comprend : 3041851 6 - une estimation d'une fonction débit-qualité à partir d'un modèle de courbe prédéterminé, et d'au moins les mesures de qualité et les coûts de codage obtenus pour le groupe d'images courant ; - un calcul du débit associé à une dite contrainte de qualité à partir de la fonction débit 5 qualité estimée ; et - -un calcul du ratio de débit correspondant à ladite contrainte en fonction du débit restant calculé. A une contrainte de qualité, on fait correspondre un débit correspondant à l'aide d'une fonction 10 débit-qualité estimée au fil de l'eau et on en déduit la borne correspondante de l'intervalle de ratios de débit autorisé. Selon un autre aspect de l'invention, l'estimation d'une fonction débit-qualité comprend une détermination de paramètres du modèle de courbe prédéterminé à partir des mesures de débit et de qualité obtenues pour le groupe d'images courant et d'une pluralité de couples de valeurs de 15 mesures de qualité et de débit préalablement obtenues. Avantageusement, l'estimation de la fonction débit qualité, comme celle de la fonction de performance, exploite une pluralité de valeurs de qualité et de débits préalablement obtenues, soit suite à l'encodage de groupes d'images précédents de la séquence, soit à partir d'un ensemble représentatif de séquences de tests, soit les deux. Elle se raffine donc au fur et à mesure de la 20 progression de l'encodage. Les valeurs de qualité et débit collectées peuvent être stockées dans une mémoire de type buffer de taille prédéterminée ou bien dans une table de correspondance. L'un ou l'autre sont mis à jour au fur et à mesure de l'encodage. Selon encore un autre aspect de l'invention, le procédé comprend une étape de mise à jour d'un débit restant à partir des coûts de codage obtenus et du débit global cible et une étape de 25 calcul d'un débit cible de la couche de base et d'un débit cible de ladite au moins une couche d'amélioration pour un groupe d'image suivant en fonction du débit restant mis à jour et du ratio optimal de débit calculé. Dans un schéma mono-passe, le ratio optimal déterminé permet de calculer les consignes de débit à appliquer lors de l'encodage du GOP suivant. 3041851 7 Selon encore un autre aspect de l'invention, le procédé comprend une étape de calcul d'un débit cible de la couche de base et d'un débit cible de ladite au moins une couche d'amélioration pour le groupe d'image suivant en fonction du débit restant mis à jour suite à un premier encodage du groupe d'images suivant et du ratio optimal de débit calculé. 5 Dans un schéma multi-passes, lors de la deuxième passe, le ratio optimal calculé à partir des valeurs de qualité/débit obtenues suite à l'encodage du groupe d'images courant permet de calculer les consignes de débit à appliquer pour réencoder le GOP courant. Le procédé qui vient d'être décrit dans ses différents modes de réalisation est avantageusement mis en oeuvre par un dispositif d'allocation de débit entre une première couche, 10 dite couche de base et au moins une deuxième couche, dite couche d'amélioration, d'un codeur scalable apte à coder une séquence d'images numériques, à un débit global cible. Selon l'invention, un tel dispositif comprend les unités suivantes, apte à être mises en oeuvre suite au codage d'un groupe d'images de la séquence : - évaluation d'une mesure de qualité de codage de la couche d'amélioration pour le groupe 15 d'images courant à partir d'une métrique prédéterminée ; - obtention d'un coût de codage effectif de la couche de base et d'un coût de codage effectif de la au moins une couche d'amélioration pour le groupe d'images courant : - calcul d'un ratio de débit entre une dite couche d'amélioration et le débit global à partir des coûts de codage estimés ; 20 - estimation d'une fonction de performance à partir du ratio de débit calculé, de la mesure de qualité obtenue pour le groupe d'images courant et d'un modèle de courbe prédéterminé ; et - détermination d'un ratio de débit optimal dans un intervalle de ratio prédéterminé, à partir de la fonction de performance estimée et selon un critère de maximisation de la qualité de 25 ladite au moins une couche d'amélioration. Bien sûr, le dispositif d'allocation de débit selon l'invention peut être agencé pour mettre en oeuvre, de façon indépendante ou en combinaison, l'ensemble des modes de réalisation qui viennent d'être décrits pour le procédé d'allocation de débit. Corrélativement, l'invention concerne aussi un codeur scalable en couches, comprenant un 30 premier codeur apte à encoder une première couche, dite couche de base d'une séquence d'images 3041851 8 numérique à un premier débit et au moins un deuxième codeur apte à encoder une deuxième couche, dite couche d'amélioration de ladite séquence, à un deuxième débit, ledit codeur comprenant un premier module de contrôle de débit apte à contrôler le premier débit consommé par la couche de base et au moins un deuxième module de contrôle de débit apte à contrôler le 5 deuxième débit consommé par une dite couche d'amélioration, caractérisé en ce qu'il comprend en outre un dispositif d'allocation de débit selon l'invention apte à allouer le premier débit au premier module et le deuxième débit au deuxième module. L'invention concerne encore un programme d'ordinateur comportant des instructions pour la 10 mise en oeuvre des étapes d'un procédé d'allocation de débit tel que décrit précédemment, lorsque ce programme est exécuté par un processeur. Ce programme peut utiliser n'importe quel langage de programmation. Il peut être téléchargé depuis un réseau de communication et/ou enregistrés sur un support lisible par ordinateur. 15 L'invention se rapporte enfin à un support d'enregistrement, lisible par un processeur, intégré ou non au dispositif d'allocation de débit selon l'invention, éventuellement amovible, mémorisant respectivement un programme d'ordinateur mettant en oeuvre le procédé d'allocation de débit tel que décrit précédemment. 20 6. Liste des figures D'autres avantages et caractéristiques de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation particulier de l'invention, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels : - la Figure 1 (déjà décrite) présente de façon schématique un codeur scalable à deux 25 couches selon l'art antérieur ; - la Figure 2 présente, de façon schématique les étapes d'un procédé d'allocation de débit selon l'invention ; - La Figure 3 illustre le surcoût apporté par un schéma de codage scalable par rapport à un schéma de codage non scalable selon une métrique particulière ; 3041851 9 - la Figure 4 présente de façon schématique un codeur scalable à deux couches selon un premier mode de réalisation de l'invention ; - la Figure 5 présente de façon schématique les étapes d'un procédé d'allocation de débit selon un deuxième mode de réalisation de l'invention ; 5 les Figures 6A à 6D présentent des courbes de qualité globale en fonction du logarithme du débit pour trois séquences de tests ; - la Figure 7 présente de façon schématique un codeur scalable à deux couches selon un deuxième mode de réalisation de l'invention ; la Figure 8 présente de façon schématique un codeur scalable à deux couches selon un 10 troisième mode de réalisation, multi passes ; la Figure 9 présente un exemple de table de correspondance LUT d'une mesure de qualité de codage de la couche L-1 en fonction du débit selon un quatrième mode de réalisation de l'invention ; - les Figures 10A et 10B présentent des exemples de tables de correspondance de chacune 15 des couches de scalabilité, entre une mesure de qualité de codage d'une couche de scalabilité et une mesure du débit utilisé selon un cinquième mode de réalisation de l'invention ; - la Figure 11 illustre des résultats obtenus par le procédé d'allocation de débit selon le premier mode de réalisation de l'invention sur un jeu de 10 séquences UHD ; 20 - la Figure 12 illustre des résultats obtenus par le procédé d'allocation de débit selon le deuxième mode de réalisation de l'invention sur un jeu de 10 séquences UHD ; la Figure 13 illustre les contraintes de débit et de qualité imposées au codeur scalable selon le deuxième mode de réalisation de l'invention pour obtenir les résultats de la Figure 12 ; et 25 - la Figure 14 présente de façon schématique un exemple de structure matérielle d'un dispositif d'allocation de débit selon l'invention. 7. Description d'un mode de réalisation particulier de l'invention Le principe général de l'invention repose sur l'estimation d'une fonction de performance du 30 codage de la couche d'amélioration d'un codeur scalable pour au moins un groupe d'images GOP 3041851 10 encodé. Cette fonction relie la qualité de codage obtenue à un ratio de débit donné entre la couche de base et la couche d'amélioration. A partir de cette fonction, l'invention détermine, pour le groupe d'images suivant à encoder, le ratio qui, selon l'évolution de la fonction de performance estimée, contribuera à maximiser le niveau de performance du codage. 5 Afin d'illustrer le plus simplement et clairement possible les différents modes de réalisation de l'invention proposée, on considère le cas d'un codage vidéo 2D scalable à deux couches. Bien sûr l'invention n'est pas limitée à cet exemple et concerne tout codeur scalable, quel que soit le nombre de couches mis en oeuvre. On considère un signal source S représentatif d'une séquence de M images numériques, 10 avec M entier non nul. La séquence est découpée en groupes d'images (GOP pour « Group of Pictures », en anglais). Dans la suite de la description, on considère un groupe d'images GOP(i) courant du signal S, avant son encodage par le codeur scalable C. GOP(i,1) et GOP(i,2) sont les déclinaisons de ce GOP dans les signaux d'entrée correspondants aux deux couches. 15 En relation avec la Figure 2, on décrit un procédé d'estimation d'un ratio de débit cible pour l'encodage d'une séquence d'images, suite à l'encodage d'au moins un groupe d'images de cette séquence, selon un premier mode de réalisation de l'invention. Ce procédé est avantageusement mis en oeuvre par le codeur C de la Figure 4. Le codeur doit donc fournir deux trains binaires qui respectent un débit global DG tout en ayant le 20 degré de liberté de choisir, lors de l'encodage, des ratios de débit compris dans l'intervalle IR = IF. On considère un débit global DG alloué au codeur scalable C pour encoder la séquence S. Ce codeur comprend deux couches L-0 et L-1. Le débit global est donc défini comme la somme du débit obtenu dans les deux couches: (1) DG = DL_o DL_i avec DL_, débit atteint dans la couche L-0 et DL_ldébit atteint dans la couche L-1. 25 On définit un ratio de débit de la façon suivante : D RD -L-0 DG (2) On spécifie l'intervalle de ratio IR à respecter lors de l'encodage des couches L-0 et L-1, de la façon suivante : IR = [Rmin Rmaxl (3) 3041851 11 La valeur du ratio entre les couches L-0 et L-1 doit donc appartenir à cet intervalle. Dans ce premier mode de réalisation, l'intervalle est fixe. Par exemple, il est spécifié comme suit : IF = [0.35 - 25% , 0.35 + 25%] (4) La valeur 0.35 est proche de la valeur moyenne constatée en utilisant les conditions de test (« common test conditions » en anglais) spécifiées par le groupe de normalisation MPEG (pour 5 « Moving Picture Coding Expert Group », en anglais). De plus, c'est une valeur arbitraire communément utilisée dans l'industrie pour approximer le ratio de débit HD/UHD. Ici on laisse au codeur un degré de liberté de +-25% par rapport à ce ratio pour optimiser la compression. Dans de précédents travaux décrits dans un article intitulé « Toward Optimal Bitrate 10 Allocation in the Scalable HEVC Extension: Application to UHDTV », par Biatek et al, publié dans les Proceedings de la conférence ICCE-Berlin 2015, qui s'est tenue à Berlin du 6 au 9 Septembre 2015, l'inventeur a mis en évidence l'impact du ratio sur les performances de codage d'un schéma vidéo 2D scalable et le fait que le choix judicieux du ratio pouvait largement impacter les performances de codage. En effet, on peut observer sur la Figure 3 le surcoût apporté par le schéma scalable 15 HD/UHD par rapport à l'encodage UHD HEVC simple mesuré avec la métrique de Byintegaard (BD- BR et BD-PSNR) en fonction du ratio de débit, sur un jeu de 10 séquences. Ces courbes illustrent le potentiel de gain qu'un ajustement de ratio de débit peut apporter. Par exemple, pour la séquence « StudioDancer », le fait de choisir un ratio de 0.3 entraîne un surcoût de débit d'environ 20% alors qu'un ratio de 0.5 ramènerait ce surcoût autour des 10%. 20 Suite à l'encodage du groupe d'images courant GOP(i), on obtient en El une information Q1 représentative d'une mesure de qualité de codage du groupe d'images courant pour la couche L-1. Par exemple, cette mesure a été évaluée selon une métrique donnée (par exemple le PSNR, SSIM, etc...), connue de l'homme de métier. Cette mesure peut être faite localement par le 25 dispositif d'allocation de débit mettant en oeuvre le procédé selon l'invention ou obtenue d'un autre module du codeur scalable, tel que par exemple le codeur C-1. Au cours d'une étape E2, on obtient une mesure d'un coût BO de codage du GOP courant par le codeur C-0 et une mesure d'un coût B1 de codage du GOP courant par le codeur C-1. Ces coûts de codage s'expriment en nombre de bits consommés. 30 En E3, le ratio effectif du GOP courant est calculé de la façon suivante : BO Ri - BO + B1 (5) 3041851 12 En E4, on calcule le débit DR à appliquer aux images restantes qui permettra de respecter la contrainte de débit global DG. Ce débit est calculé en fonction du nombre de bit déjà consommés BC, du coût global BO+B1 engendré par le GOP courant, de la fréquence image F, du nombre total d'images à encoder NT et du nombre d'images restantes NI. DG x NT - (BC + BO + B1) x F DR = NI (6) 5 En E5, le nombre de bits à consommer pour le GOP suivant BG est calculé en fonction de DR et de la taille de ce GOP NG(i+1). DR BG = NG(i +1)x F (7) En E6, on estime une fonction de performance de codage Q(R), destinée à fournir une mesure de qualité Q du codage de la couche L-1 en fonction du ratio de débit effectif Ri. De nombreuses méthodes plus ou moins complexes peuvent être utilisées pour estimer cette 10 fonction. Dans ce premier mode de réalisation, une façon simple de modéliser cette fonction est d'exploiter les mesures de qualité et de débits obtenues après l'encodage du groupe d'images courant et des groupes précédents. Pour le i-ième groupe d'images codé, on considère donc la qualité effective Qi et le ratio effectif R calculés de la façon suivante : Qi-Q1 (8) R -B0/(B0+B1) (9) 15 Si l'on conserve en mémoire un buffer MP de K couples d'échantillons (Ri,Qi) avec K entier non nul, par exemple égal à 6 pour un buffer de 1 seconde et une fréquence de 48 images par seconde, mis à jour en E60 après l'encodage du groupe d'images courant, il est possible de modéliser la fonction de performance Q(R) en se basant sur ce buffer. Avantageusement, une façon simple de modéliser cette fonction est d'utiliser un modèle de courbe 20 polynomial, de degré 1 par exemple : Q(R)ActxR+b (10) En utilisant une méthode des moindres carrés totaux sur les mesures stockées en mémoire, il est possible d'estimer a et b en résolvant le système suivant : A x Y (11) 3041851 13 7IRf 110 (ab) - ) (12) ° I Plusieurs méthodes peuvent être utilisées pour résoudre ce système, par exemple utiliser une élimination de Gauss ou bien inverser la matrice A et calculer A-1Y. Au cours d'une étape E8, on exploite la fonction de performance obtenue Q(R) pour déterminer le point de la courbe qui maximise la qualité de codage de la couche L-1 dans l'intervalle de ratio IR 5 autorisé et récupéré en E7. Ce ratio optimal Ro est dont sélectionné de la façon suivante : Ro = max Q (R) (13) REIR Le procédé d'estimation de ratio est répété pour chaque nouveau groupe d'images encodé. En procédant de la sorte, le modèle décrit en Equation 10 peut être mis à jour après l'encodage d'un nouveau groupe d'images, au fil de l'eau, et le ratio optimal Ro à appliquer au groupe d'images suivant GOP(i+1) est calculé via l'Equation 13. 10 On comprend en effet que l'encodage d'un nouveau groupe d'images fournit un nouveau couple de valeurs (Ri, Qi), par exemple stocké dans le buffer MP, qui contribue à raffiner l'estimation de la fonction de performance et donc la détermination du ratio optimal Ro à appliquer lors de l'encodage du GOP suivant GOP(i+1). En E9, on calcule les consignes de débits ou débits cibles JRC-0 et JRC-1 du groupe d'image 15 suivant GOP(i+1) pour chacune des couches L-0 et L-1. Les budgets attribués à chacune des couches sont d'abord calculés en multipliant le budget total alloué pour le prochain GOP BG, obtenu à partir du débit global DG alloué pour le codage de la séquence et du débit déjà consommé pour les groupes d'images précédents, par le ratio optimal estimé Ro pour obtenir le budget attribué à la couche L-0 et par (1-Ro) pour obtenir le budget attribué à la couche L-1. Puis, ces budgets sont 20 multipliés par la fréquence image F et divisé par le nombre d'images NG(i+1) du GOP(i+1) afin d'obtenir les débit JRC-0 et JRC-1 en bits/seconde : RoxBG JRC-0 x F NG(i+1) JRC-1 = (1-Ro)xBG x F NG (i+1) Ces deux cibles de débit sont transmises aux modules de contrôle de débit RC-0, RC-1 de chacune des couches. En relation avec la Figure 4, on a représenté un codeur scalable C comprenant une unité de 25 contrôle de débit joint JRC mettant en oeuvre le procédé d'estimation de ratio de débit selon le premier mode de réalisation de l'invention. Un débit global à respecter DG et un intervalle de ratio (14) (15) 3041851 14 fixe IF sont spécifiés comme consignes pour l'unité de contrôle de débit joint JRC. L'unité JRC communique avec les deux unités de contrôle de débit, RC-0 pour la couche L-0 et RC-1 pour la couche L-1 via les informations JRC-0, DO, JRC-1, Q1 et Dl. Un avantage de ce premier mode de réalisation est qu'il permet d'optimiser le ratio de débit 5 entre les couches du codeur pour un intervalle de valeurs de ratios de débit fixé a priori. Une application possible est par exemple un codage de type « meilleur possible » (ou « besteffort coding» en anglais) pour la scalabilité ou l'on souhaite assurer la meilleure performance de codage possible, sans pour autant imposer une qualité minimale sur la couche de base. On fixe alors l'intervalle de ratios de débit en fonction du degré de liberté que l'on souhaite laisser lors du 10 codage. Selon un deuxième mode de réalisation de l'invention, l'intervalle de ratio de débit autorisé n'est plus fixé a priori, mais il est soumis à des contraintes de qualité et de débit pour chacune des couches de scalabilité. 15 Ces différentes contraintes de qualité et de débit pour les deux couches prennent par exemple la forme d'intervalles de valeurs autorisées IQO, IQ1, IDO et ID1. On notera que ces contraintes peuvent varier dynamiquement au cours du temps. Par exemple, en cas de panne partielle sur le réseau de diffusion des trains binaires, elles peuvent être assouplies temporairement. Les contraintes sont spécifiées de la façon suivante : IQO = [Q0 min 2 °maxi (16) IQ1 = [(2 lmin Q1 maxi (17) IDO = [Do min 'Do maxi (18) ID1min,maxi (19) 20 De la même façon que pour le premier mode de réalisation, une fonction d'estimation de la performance est construite. L'étape El obtient des mesures de la qualité de codage Q1 obtenue dans la couche L-1 pour le groupe d'images courant et l'étape E10 obtient une mesure de qualité de codage QO de la couche de base L-0. L'étape E2 collecte les coûts de codage BO et Bl. Ces mesures et coûts obtenus sont destinés à être exploités par des étapes ultérieures du procédé 25 selon l'invention, telles que les étapes E60, E70, E71, E12 et E13 qui vont être détaillées ci-après. 3041851 15 Comme pour le premier mode de réalisation, le ratio effectif est toujours calculé en E3 (Equations 8 et 9). Un buffer MP est également mis à jour en E60 et la fonction de performance Q(R) est estimée à partir de ce buffer en E6 (Equation 11 et 12). Le débit DR à imposer pour le codage des images restantes afin de respecter la contrainte de débit global DG est toujours calculé en E4. Ce 5 débit est calculé en fonction du nombre de bits déjà consommés, des coûts de codage BO et B1 (recueillis en E2) du GOP courant GOP(i), de la fréquence image F, et du nombre d'images restantes NI. En E5, le nombre BG de bits à consommer pour le GOP suivant GOP(i+1) est calculé en fonction du débit restant DR et de la taille NG(i+1) de ce GOP. Dans ce mode de réalisation, l'intervalle de ratio global IR doit respecter à la fois les contraintes de 10 la couche L-0 et de la couche L-1. Soit IRO et IR1 les intervalles respectivement définis respectivement par les contraintes des couches L-0 et L-1, alors l'intervalle global IR est défini comme l'intersection de ces deux intervalles : IR = IRO n IR1 (20) Les intervalles des deux couches IRO et IR1 peuvent être également calculés comme étant l'intersection de sous-intervalles liés aux contraintes de qualité et de débit : IRO = SIQO n SIDO (21) IR1 = SIQln SID1 (22) 15 Le calcul d'IRO est réalisé en E70 et le calcul d'IR1 en E71. On suppose que F0(D) et F1(D) sont les fonctions débit-qualité des deux couches liant la qualité Q évaluée pour une métrique donnée, par exemple : PSNR, SSIM, etc, au débit D. Il est possible d'exprimer les sous-intervalles de la façon suivante : SIQO = [RO_Qmin, RO_Qmaxl (23) SIQ1 = [RIAmin, Rl_Qmaxl (24) SIDO = [RODmin, RODmaxl (25) SID1 = RiDmax] (26) Avant l'encodage d'un groupe d'images suivant GOP(i+1), les intervalles IQO', IQ1', IDO' et ID1' à 20 respecter en débit et qualité sont recalculés en fonction de la qualité des images déjà codées dans chaque couche pour les groupes d'images précédents, des débits effectifs associés et des contraintes initialement fixées IQO, IQ1, IDO et ID1. Les nouvelles bornes des intervalles de qualité 3041851 16 et de débit contraints pour la suite de l'encodage, en particulier pour le groupe GOP(i+1), sont calculées de la façon suivante : Qo min x NT - (NT - NI) x QMO Voman - NI (27) china), x NT - (NT - NI) x QMO omax - NI (28) Qi min X NT - (NT - NI) x QM1 iman = NI (29) Qi max X NT - (NT - NI) x QM1 (2' max - NI (30) Do min X NT - BCO x F = NI (31) Do max X NT - BCO x F NI (32) Dl_min X NT - BC1x F NI (33) D1maxXNT-BC1XF NI (34) Avec QMO, QM1 les qualités moyennes atteintes à ce stade du codage pour les couches L-0 et L-1 et BCO et BC1 les bits déjà consommés dans les couches L-0 et L-1. Cette étape de mise à jour des 5 intervalles de contraintes est réalisée en E70 pour la couche L-0 et en E71 pour la couche L-1. Ces intervalles sont donc les suivants : IQ0' = [Q' 0 1 (35) min , IQ1' - [Q'1 min (36) IDO' = -'0 _min o_maxi (37) ID1' = i_maxi (38) Une fois ces intervalles mis à jour, il est possible de calculer les bornes des sous-intervalles de ratios de débit spécifiés dans les Equations 21 à 22 de la façon suivante : Fo-1(Q'o min) R°-Qmin = DR FO-1(Q' max) R°-Qmax = DR D' 0 min Ra_Dmax DR F1-1 (Q' min) = 1 DR F1-1(Q' max) Ri_Qmax = 1 DR = 1 D' linin DR D'o max - D1min= D' max - Ra_Dmin = DR D'a max (39) (40) (41) (42) (43) (44) (45) 3041851 17 D1 max RlDmax = 1 DR (46) avec Q0= F0(D), Q1= F1(D) des fonctions qui lient la qualité au débit pour les couches L-0 et L-1. De la même façon que pour la fonction de performance Q(R), les fonctions F0(D) et F1(D) doivent être estimées lors de l'encodage. Si l'on considère par exemple le PSNR comme métrique de qualité, de nombreuses méthodes et modèles plus ou moins complexes peuvent être utilisés pour 5 estimer cette fonction. Avantageusement, une façon simple de procéder est de garder en mémoire deux buffers MO et M1 de K couples d'échantillons et (Qi,i,Dti) associés respectivement aux couches L-0 et L-1 avec K entier, par exemple égal à 6 pour un buffer de 1 seconde et une fréquence de 48 images par seconde : Q0, = Q0 (47) BO (48) Do = N G (i) X F (49) Q1 (50) B1 = N G (i) X F 10 où QO, BO, Q1 et B1 désignent les mesures de qualité, débit obtenues pour le GOP courant GOP(i) dans les couches L-0 et L-1 et NG(i) le nombre d'images du GOP courant. Ces deux buffers sont construits respectivement en E12 et E13 pour les couches L-0 et L-1, grâce aux informations recueillies en El et E2. En se basant sur ces deux buffers, il est possible d'estimer les fonctions débit-distorsion des deux couches F0(D) et F1(D). Des modélisations exponentielles et 15 quadratiques peuvent être utilisées. Une façon simple de procéder est d'estimer ces fonctions comme étant affines sur un intervalle donné en échelle logarithmique. Sur la Figure 6, on peut observer la précision d'une estimation affine sur des intervalles de 5Mbps, pour trois séquences vidéo 2D en Ultra-Haute Définition (UHD). Une approche simple est donc de définir les fonctions débits qualité de la façon suivante : FO(D) A cto x log(D) + Léo (51) F1(D) A a1 x log(D) + b1 (52) 20 De la même façon que pour la fonction de performance, les paramètres des modèles utilisés peuvent être estimés via la méthode des moindres carrés totaux en résolvant les systèmes d'équations suivants : 3041851 18 x (Z) = Yo (53) 1109(Do,i)1 x ° = (109(Do,i)1Qo,i) Ilog(Doi)° I (54) Al x =171 (55) Ilog(Dtif x (10g(Di,i)1(21,i (56) O ) (6Q1,i 1) = Les estimations des fonctions F0(D) et F1(D) sont réalisés dans les étapes E14 et E15. Les fonctions débits-distorsions définies en Equations 51 et 52 peuvent être facilement inversées et utilisées pour déterminer les sous-intervalles SIQO, SIDO, SIQ1, SID1 définis dans les Equations 23 à 26, puis les intervalles de couches IRO, IR1 définis dans les Equation 21 et 22 et enfin l'intervalle 5 global IR défini dans l'Equation 20. Une fois cet intervalle global estimé, on procède de la même manière que dans le premier mode de réalisation, c'est-à-dire qu'on détermine d'abord en E8 le ratio de débit Ro qui maximise la fonction de performance Q(R) sur cet intervalle IR puis qu'on l'applique au budget alloué BG en E9 (Equation 14 et 15). On obtient ainsi les consignes de débit JRC-0, JRC-1 pour le groupe d'images GOP(i+1). 10 En relation avec la Figure 7, on présente un codeur scalable dont l'unité de contrôle de débit joint JRC met en oeuvre le deuxième mode de réalisation de l'invention. Selon ce mode, l'unité JRC prend en entrée, en plus de la consigne de débit global cible DG, les contraintes de qualité et de débits IQO, IDO, IQ1, ID1 associées à chacune des couches de scalabilité. Un avantage du deuxième mode de réalisation est qu'il permet d'imposer des contraintes 15 de qualité et/ou de débit à une ou plusieurs des couches de scalabilité. Il est possible de spécifier des contraintes à l'encodeur et donc de faire correspondre les trains binaires de données qu'il génère à la configuration visé. Par exemple, si l'on souhaite remplir un espace de stockage d'un volume ayant une capacité de B bits avec une vidéo de N images déclinée en deux versions HD (L-0) et UHD (L-1) 20 avec une fréquence de F images par seconde, en garantissant une qualité minimale Q sur le service HD et une qualité maximale du service UHD, le procédé selon l'invention spécifiera les paramètres de débit global DG = (B*F/N) et de qualité minimale pour la couche de base Qo min = Q, en vue d'obtenir un encodage optimisé respectant ces contraintes. En particulier, la couche de rehaussement L-1 occupera tout l'espace laissé disponible après le codage de la couche de base L- 25 0. 7Ilog 3041851 19 Dans d'autres cas d'usages hybrides pour lesquelles la diffusion des trains binaires se fait en partie sur un réseau de diffusion classique type TNT (pour Télévision Numérique Terrestre) pour la couche HD (L-0) et via le réseau internet pour la couche UHD (L-1), l'invention permet introduire d'autres contraintes. Par exemple, lorsque l'opérateur du service a la possibilité de garantir une 5 qualité de service constante pour la HD, comprise entre Qmin/Qmax, tout en restreignant le débit de l'UHD dans une bande passante Dmin/Dmax afin de toucher la plus large audience possible via le réseau internet. Les modes de réalisation qui viennent d'être présentés proposent une estimation du ratio de débit « au fil de l'eau », c'est-à-dire qui s'appuie sur des informations issues de l'encodage d'au 10 moins un groupe d'images précédent. On comprend que la modélisation de la fonction de performance s'affine au fur et à mesure que l'on acquiert plus d'échantillons de mesure de qualité en fonction du ratio de débit réel. En revanche, lors d'un changement de scène, une réinitialisation s'effectue et il faut plusieurs GOP successifs pour optimiser la modélisation de la fonction de performance. 15 En relation avec la Figure 8, on décrit maintenant un procédé d'estimation d'un ratio de débit selon un troisième mode de réalisation de l'invention. Ce troisième mode de réalisation est basé sur une approche multi-passes. Autrement dit, une première mise en oeuvre du procédé selon l'invention AD(i+1) est réalisée suite à l'encodage d'un groupe d'images GOP(i) et en vue de 20 l'encodage d'un groupe d'images suivant GOP(i+1) selon le deuxième mode de réalisation qui vient d'être décrit. Suite à l'encodage du groupe d'image courant GOP(i), les intervalles relatifs aux contraintes de la couche L-0 et L-1 sont tout d'abord calculés avec les fonctions débit-qualité courantes. Puis l'intersection de ces deux intervalles est calculée et produit l'intervalle global IR qui respecte toutes les contraintes. Le ratio optimal Ro est ensuite déterminé en minimisant la fonction 25 d'estimation de la performance courante sur l'intervalle global. Les consignes de débit JRC-0 pour la couche L-0 et JRC-1 pour la couche L-1 sont déterminées et transmises aux unités de contrôle de débit RC-0, RC-1 des deux couches. Le groupe d'images suivant GOP(i+1) est ensuite pré-encodé e par les codeurs C-0 et C-1 en respectant les consignes de débit JRC-0, JRC-1. Le nombre de bits consommés BO et B1 pour la première passe d'encodage de chaque couche du groupe 30 GOP(i+1) est évalué ainsi que la qualité de l'encodage QO, Q1. Ces valeurs sont exploitées au cours d'une deuxième mise en oeuvre AD(i+1)' du procédé d'allocation de débit selon le deuxième mode de réalisation de l'invention pour mettre à jour les étapes d'estimation des fonctions FO(D) et F1(D) liant les intervalles de contraintes de qualité au débit, ainsi que la fonction de performance 3041851 20 Q(R). On comprend que de cette manière, on peut modéliser plus précisément ces fonctions. Avantageusement, les buffers MP, MO et M1 sont mis à jour avec les nouvelles valeurs QO, BO, Q1 et B1 obtenues lors de la première passe d'encodage du GOP(i+1). Le ratio de débit optimal R0' est ensuite réévalué à partir de la fonction de performance mise à jour. Des consignes de débit JRC-0', 5 JRC-1' sont calculées. Le groupe d'images GOP(i+1) est encodé une deuxième fois, à partir des nouvelles consignes calculées. Un avantage de ce mode multi-passes est qu'il ne requiert pas d'initialisation du modèle puisque les bons paramètres sont calculés pour le GOP courant lors de la première passe et appliqués lors de la deuxième. Ce mode est donc plus robuste aux changements de scène. 10 En relation avec la Figure 9, on décrit un quatrième mode de réalisation de l'invention. Ce mode vise à améliorer la précision de l'estimation de la fonction de performance, en particulier dans le cas d'un mode mono-passe. Dans ce quatrième mode de réalisation, la fonction Q(R) n'est plus estimée à partir des couples de 15 valeurs ratio de débit, qualité d'un buffer MP, mais à partir d'une table de correspondance ou LUT (pour « Look Up Table », en anglais). Dans ce mode, la LUT permet de lier un nombre fini de valeurs de ratio de débit aux valeurs de qualité correspondante dans la couche L-1. Par exemple, les valeurs stockées dans la LUT au début de l'encodage ont été préalablement établies à partir des statistiques de codage d'un ensemble représentatif de séquences de test. Une 20 façon de procéder est, par exemple pour un ensemble de séquences encodées, d'établir des statistiques de débit de groupes d'images en fonction de la qualité, et de les exploiter pour ensuite choisir le modèle de fonction (et ses paramètres) le plus proche de ces statistiques, toutes séquences confondues. En particulier, un avantage est de garantir de disposer des échantillons (Qi, Ri) répartis 25 équitablement sur une gamme de valeurs de ratio beaucoup plus large, donc incluant l'intervalle de ratios autorisés IR. En estimant la fonction Q(R) sur cette gamme de ratios, on obtient alors une estimation beaucoup plus fidèle au comportement réel de la fonction. Après l'encodage d'un groupe d'images GOP(i), le ratio effectif Ri est utilisé pour calculer l'index de la table de correspondance, puis la qualité effective mesurée Qi remplace l'ancienne valeur localisée à cet index. En se basant 30 sur ce nouvel ensemble d'échantillon, la fonction d'estimation de la performance peut être mise à jour. Autrement dit, elle est remise à l'échelle de la séquence courante. 3041851 21 Dans ce mode de réalisation, un modèle quadratique décrit dans l'Equation 47 est utilisé, contrairement à celui des modes de réalisation 1 et 2. Ce modèle quadratique permet d'avoir une modélisation plus précise de la fonction de performance et il est plus adapté à une estimation basée sur un ensemble plus large d'échantillons. Q(R)ActxR2+bxR+c (57) 5 De la même façon que dans le mode de réalisation 1, les paramètres du modèle quadratique peuvent être estimés en résolvant le système matriciel décrit dans les équations 58 et 59. A x[1= Y (58) Ri Ri Ri x[61= IR, Qi (59) - Ce quatrième mode de réalisation permet de modéliser la fonction de performances sur une gamme de ratios de débit beaucoup plus large, et donc de réaliser une modélisation beaucoup plus fine et fidèle à la courbe réelle que l'on souhaite estimer. En utilisant cette modélisation, 10 l'estimation du ratio sera donc plus précise. Selon un cinquième mode de réalisation de l'invention, les fonctions FO(D) et D1(D) ne sont plus estimées à partir des buffers MO et Ml, mais à partir de deux tables de correspondance LUT-0, LUT-1, illustrées respectivement par les Figures 10A et 10B. Dans ce mode, les LUTs permettent de lier un nombre fini de valeurs de débits aux valeurs de qualité correspondante dans chacune des 15 couche L-0 et L-1. En particulier, un avantage est de garantir d'avoir des échantillons (120,i,Do,i) et (Q",Dti) répartis équitablement sur une gamme de valeurs de débit beaucoup plus large. En estimant les fonctions FO(D) et F1(D) sur ces gammes de débits étendues, on obtient alors des estimations beaucoup plus fidèles au comportement réel de ces fonctions. Les valeurs présentes en début d'encodage dans ces LUTs peuvent être établies par exemple à partir des statistiques de 20 codage d'un ensemble représentatif de séquences de test. Après l'encodage de chaque groupe d'images les qualités effectives des couches L-0 et L-1, QO et Q1 sont utilisées pour calculer les index des tables de correspondance LUTO, LUT1, puis les coûts binaires effectifs BO et B1. Les nouvelles valeurs obtenues viennent remplacer les anciennes valeurs localisées à cet index. En se basant sur ces nouveaux ensembles d'échantillons, les 25 fonctions Débit-Qualité peuvent être mises à jour. Dans ce mode de réalisation, on utilise avantageusement un modèle du 3ème ordre décrit dans les Equations 60 et 61 plutôt que le 3041851 22 modèle du deuxième mode de réalisation, car ce genre de modèle, plus complexe mais plus précis, correspond à celui utilisé pour modéliser les fonctions débit-qualité utilisées par la métrique de Bjontegaard. FO(D) A ao x log (D)3 + bo x log (D)2 + co x log (D) + do (60) F1(D) A a1 x log (D)3 + b1 x log (D)2 + c1 x log(D) + d1 (61) De la même façon que dans le mode de réalisation 1, les paramètres des deux modèles peuvent 5 être estimés en résolvant les systèmes matriciels décrits dans les équations 62 à 65. [Eil A0 x h° = Y0 c, ci; (62) log (Do,i)6 log(Do,i)5 log(Do,i)4 log(Do,i)3 log(Dtir log(Dtir log (Do,i)5 log (Do,i)4 log (Do,i)3 log (Do,i)2 lOg(Dtir lOg(Dtir lOg(Dti)2 [ Ai x b1 - yi Cl c-ii togpo,i)4 togpo,i)3 togpo,i)3 togpo,i)2 togpo,i)2 togpoy togpo,i)1 togpo,i)° togpi,i)4 1 togpi,i)3 togpi,i)3 1 togpi,i)2 togpi,i)2 togpi,i)1 togpi,i)1 togpLir b0 log (Do,i)3 tog(Do,i)2 tog(Do,i)1 1120,i x 1121,i C0 él; (63) (64) (65) Ce cinquième mode de réalisation permet de modéliser des fonctions débit-qualité sur une gamme de débits beaucoup plus large, et donc d'avoir une modélisation beaucoup plus fine et fidèle à la courbe réelle. En utilisant cette modélisation, l'estimation d'un débit associé à une qualité sera alors plus précise. 10 On notera que l'invention qui vient d'être décrite, peut être mise en oeuvre au moyen de composants logiciels et/ou matériels. Dans cette optique, les termes « module » et « entité », utilisés dans ce document, peuvent correspondre soit à un composant logiciel, soit à un composant matériel, soit encore à un ensemble de composants matériels et/ou logiciels, aptes à mettre en oeuvre la ou les fonctions décrites pour le module ou l'entité concerné(e). 3041851 23 En relation avec la Figure 11, on présente les performances du premier mode de réalisation sur un jeu de 10 séquences UHD (EBU UHD-1 data set). Ici la compression scalable SHVC (pour « Scalable High Efficiency Video Coding », en anglais) est comparée à l'encodage HEVC simple de la couche la plus haute (ici UHD). Dans ce cas de figure, la compression scalable apporte un 5 surcout, du fait du service supplémentaire transmis via la couche de base. L'augmentation de débit apportée par notre méthode au sens du BD-BR est notée G -ARC- apportée par l'encodage à ratio fixe est notée GRef. La réduction de pertes apportée par notre méthode est calculée de la façon suivante : Go = G"C) * 100 (56) GR, f Enfin la réduction de débit de notre méthode par rapport à l'encodage ratio fixe est notée Gx . On 10 observe que la méthode proposée dans le mode de réalisation 1 permet de réduire en moyenne les pertes de 20%, avec un gain BD-BR de 4.25%. La méthode est plus efficace que le ratio fixe 9 fois sur 10 séquences testées. En relation avec la figure 12, on présente les performances du mode de réalisation 2 amélioré par les modes de réalisations 4 et 5 (basés LUT). Dans ce cas, nous fixons les contraintes 15 décrites dans la figure 13. Dans ce cas d'utilisation, une qualité minimale est fixée sur la couche 0 et un intervalle de débit est contraint dans la couche 1. Les mêmes indicateurs de performances que ceux en relation avec la figure 11, et décrits précédemment, sont utilisés. L'encodage ratio fixe choisi est le premier dont l'encodage permet de respecter toutes ces contraintes. On observe dans la figure 12 que notre méthode permet, dans ce cas d'usage, de diminuer les pertes d'environ 26% 20 par rapport à l'encodage a ratio fixe, tout en respectant les mêmes contraintes. Le gain BD-BR constaté est d'environ 10%. Notre méthode est également plus performante 9 fois sur 10 séquences. En relation avec la figure 14, on présente maintenant un exemple de structure simplifiée d'un dispositif 100 d'allocation de débit entre les couches d'un codeur scalable selon l'invention. Le 25 dispositif 100 met en oeuvre le procédé d'allocation de débit selon l'invention qui vient d'être décrit en relation avec les Figures 2 et 5. Par exemple, le dispositif 100 comprend une unité de traitement 110, équipée d'un processeur pl, et pilotée par un programme d'ordinateur Pgl 120, stocké dans une mémoire 130 et mettant en oeuvre le procédé de selon l'invention. L'augmentation de débit 3041851 24 A l'initialisation, les instructions de code du programme d'ordinateur Pgi 120 sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 110. Le processeur de l'unité de traitement 110 met en oeuvre les étapes du procédé décrit précédemment, selon les instructions du programme d'ordinateur 120. 5 Dans cet exemple de réalisation de l'invention, le dispositif 100 comprend au moins une unité GET Q d'obtention d'informations Q0, Q1 représentatives de mesures de qualité de codage du GOP pour chacune des couches L-0 et L-1, une unité GET B d'obtention de mesure de débit BO, B1 pour l'encodage du GOP courant par les couches L-0 et L-1, une unité d'obtention d'un intervalle IR de ratios de débits autorisés, une unité de détermination du ratio ri de débit effectif obtenu suite au 10 codage du GOP(i) courant, une unité d'estimation EST Q(R) d'une fonction de performance Q(R) et une unité DET Ro de détermination du ratio Ro optimal à partir de la fonction estimée. Avantageusement, le dispositif 100 comprend en outre une unité CALC JRC-0, JRC-1 de calcul des débits JRC-0 et JRC-1 à allouer aux couches L-0 et L-1 pour le codage du GOP suivant GOP(i+1). Le dispositif 100 comprend en outre une première unité MP de stockage, par exemple de 15 type buffer, d'une pluralité N de groupes d'images encodés et au moins une deuxième unité de stockage MO, M1 des tables de correspondance mises en oeuvre dans les quatrième et cinquième modes de réalisation de l'invention. Ces unités sont pilotées par le processeur p..1 de l'unité de traitement 110. De façon avantageuse, un tel dispositif 100 peut être intégré à un codeur scalable 10. Un tel 20 codeur scalable peut lui-même être intégré à un équipement ET de type terminal d'utilisateur ou serveur. Le dispositif 100 est alors agencé pour coopérer au moins avec les modules suivants du codeur scalable : - un codeur C-0 de la première couche L-0 ; - un codeur C-1 de la deuxième couche L-1 ; 25 - un module RC-0 de contrôle du débit alloué à la couche L-0 ; - un module RC-1 de contrôle du débit alloué à la couche L-1. L'invention peut trouver de nombreuses applications et scénarios. Par exemple pour optimiser la compression scalable d'une séquence vidéo destinée à être stockée sur un support de dimension donnée. En fixant comme débit total le débit correspondant à la capacité du stockage, et en réglant 30 des niveaux minimal de qualité souhaités sur les couches nous pouvons utiliser la méthode proposée. Dans ce cas, l'invention permet de remplir le support de stockage de façon optimale. 3041851 25 L'invention peut être utilisée dans le cas d'une utilisation type broadcast, ou l'on souhaite introduire un nouveau service de qualité supérieur tout en conservant la compatibilité avec les récepteurs existants. Dans ce cas, on souhaite limiter le surcout introduit par l'ajout d'un service scalable, tout en maximisant la qualité du nouveau service, et en conservant la qualité du service à transmettre 5 au parc existant. Dans ce cas de figure, l'invention proposée permet de répondre à ces problématiques de façon optimale, sans nécessiter la mise en place d'un encodage simulcast, plus coûteux. On peut également penser au cas de la diffusion hybride HD/UHD par exemple. Dans ce cas le service HD est transmis via la couche de niveau le plus bas, sur un canal classique (TNT, Satellite). 10 Le service UHD est apporté par la scalabilité, et notamment par la couche de niveau le plus haut qui serait transmis via le réseau IP. Si l'on considère qu'une qualité de service minimale veut être délivrée aux utilisateurs non-premium (HD), et que le diffuseur souhaite toucher la plus large audience possible via un réseau de télécommunications de type « broadband » (bande-passante moyenne de 80% de ses clients par exemple), l'invention peut être alors utilisée pour optimiser la 15 compression des services proposés. Enfin l'invention peut également être mise en oeuvre dans le cas de la vidéo-conférence, sur certains réseaux ou un canal de communications à capacité fixe est attribué, puis disséminé vers des réseaux de capacités potentiellement moins importantes qui ne peuvent pas gérer toutes les couches. Dans ce cas, l'invention proposée peut tenir compte de toutes ces contraintes, couplées à 20 des contraintes de qualité pour proposer un service de vidéo-conférence scalable optimisé délivrant le meilleur service possible, quel que soit la capacité en bande-passante du client. Il va de soi que les modes de réalisation qui ont été décrits ci-dessus ont été donnés à titre purement indicatif et nullement limitatif, et que de nombreuses modifications peuvent être 25 facilement apportées par l'homme de l'art sans pour autant sortir du cadre de l'invention. Ils peuvent avantageusement être combinés entre eux. Par exemple, suite à un changement de plan de la séquence d'images, l'invention permet de réaliser un pré-codage pendant une certaine durée, de façon à estimer la fonction de performance sur x secondes, puis à faire une deuxième passe une fois que les bons paramètres ont été déterminés sur un intervalle de ratio de débit suffisant. On 30 comprend que l'allocation de débit ne sera nnulti-passes que pendant une durée déterminée suite à la détection d'un changement de plan, puis qu'elle redevient mono-passe à l'issue de cette durée. En outre, le procédé d'allocation de débit qui vient d'être décrit peut s'appliquer à un codeur scalable comprenant plus de deux couches de scalabilité. Si par exemple le codeur comprend trois 3041851 26 couches de scalabilité L-0, L-1, L-2, alors la fonction de performance devient multi-variables et lie la qualité de la couche L-2 la plus haute aux ratios de débit RO-DO/DG et R1-D1/DG des deux couches inférieures. La modélisation de cette fonction est mise en oeuvre à l'aide d'un modèle de courbe et d'un 'ensemble d'échantillons mesurés. Le calcul de l'intervalle de ratio reste inchangé, 5 mais peut être exprimé de deux façons en fonction de la couche de scalabilité dans laquelle on se place pour calculer le ratio : /RL° = IRO n IR1 n 1R2 si l'on se place dans la couche L-0 (57) IRL1 = IRO n IR1 n 1R2 si l'on se place dans la couche L-1 (58) Les sous-intervalles existent toujours, et leur représentation diffère également en fonction de la couche dans laquelle on se place. Le problème d'optimisation à résoudre deviendrait alors : (Rot Ro2) = max_ Q (RO, R1) ROEIRL RIEIRLI (62) 10 REVENDICATIONS1. Procédé d'allocation de débit entre une première couche (L-0), dite couche de base et au moins une deuxième couche (L-1), dite couche d'amélioration, d'un codeur scalable apte à coder une séquence d'images numériques, en fonction d'un débit global cible (DG), caractérisé en ce qu'il comprend les étapes suivantes, mises en oeuvre suite au codage d'un groupe d'images de la séquence (GOP(i)) : - obtention (El, EH) d'une mesure de qualité de codage (Q1) de la couche d'amélioration pour le groupe d'images courant à partir d'une métrique prédéterminée ; - obtention (E2) d'un coût de codage effectif de la couche de base et d'un coût de codage effectif de la au moins une couche d'amélioration pour le groupe d'images courant : - calcul (E3) d'un ratio de débit entre une dite couche d'amélioration et le débit global à partir des coûts de codage estimés ; - estimation (E6) d'une fonction de performance au moins à partir du ratio de débit calculé, de la mesure de qualité obtenue pour le GOP courant et d'un modèle de courbe prédéterminé ; et - Détermination (E8) d'un ratio de débit optimal (Ro) dans un intervalle de ratio prédéterminé (IF, IR), à partir de la fonction de performance estimée et selon un critère de maximisation de la qualité de ladite au moins une couche d'amélioration. 2. Procédé d'allocation de débit selon la revendication 1, caractérisé en ce que l'étape d'estimation d'une fonction de performance comprend une détermination de paramètres du modèle de courbe prédéterminé à partir du ratio de débit calculé et de la mesure de qualité obtenue pour le groupe d'images courant et d'une pluralité de couples de valeurs de mesures de qualité et de ratio de débit préalablement obtenues. 3. Procédé d'allocation de débit selon l'une des revendications précédentes, caractérisé en ce qu'il comprend en outre une étape (E7) de détermination d'au moins un intervalle de ratios autorisés. 4. Procédé d'allocation de débit selon l'une des revendications précédentes, caractérisé en ce qu' il comprend une étape (E10) d'obtention d'une mesure de qualité de codage (QO) de la couche de base, une étape (E4) de mise à jour d'un débit restant (DR) à partir des coûts de codage obtenus et du débit global cible (DG), et en ce que l'étape (E7) de détermination détermine un 3041851 28 premier intervalle de ratio en fonction de contraintes de débit qualité sur la couche de base, des mesures de qualité, des coûts de codage et du débit restant calculé. 5. Procédé d'allocation de débit selon l'une des revendications précédentes, caractérisé en ce qu' il comprend une étape (E4) de mise à jour d'un débit restant (DR) à partir des coûts de 5 codage obtenus et du débit global cible (DG), et en ce que l'étape de détermination détermine un deuxième intervalle de ratio en fonction de contraintes de débit qualité sur une dite couche d'amélioration et du débit restant calculé. 6. Procédé d'allocation de débit selon les revendications 4 et 5, caractérisé en ce que l'étape de détermination détermine une intersection du premier et du deuxième intervalles. 10 7. Procédé d'allocation de débit selon l'une des revendications 4 à 6, caractérisé en ce que l'étape de détermination (E7) d'un intervalle de ratio comprend une estimation (E14, E15) d'une fonction débit-qualité à partir d'un modèle de courbe prédéterminé et d'au moins les mesures de qualité (QO, Q1)des couches, les coûts de codage obtenus pour le groupe d'images courant, un calcul du débit associé à une dite contrainte de qualité à partir de la 15 fonction débit qualité estimée et un calcul du ratio de débit correspondant à ladite contrainte en fonction du débit restant (DR) calculé. 8. Procédé d'allocation de débit selon la revendication 7, caractérisé en ce que l'estimation (E14, E15) d'une fonction débit-qualité comprend une détermination de paramètres du modèle de courbe prédéterminé à partir des mesures de débit et de qualité obtenues pour le groupe 20 d'images courant et d'une pluralité de couples de valeurs de mesures de qualité débit préalablement obtenues. 9. Procédé d'allocation de débit selon l'une des revendications précédentes, comprenant une étape (E4) de mise à jour d'un débit restant (DR) à partir des coûts de codage obtenus et du débit global cible (DG), caractérisé en ce qu'il comprend en outre une étape (E9) de calcul 25 d'un débit cible (JRC-0) de la couche de base et d'un débit cible (JRC-1) de ladite au moins une couche d'amélioration pour un groupe d'image suivant (GOP(i+1) en fonction du débit restant (DR) mis à jour et du ratio optimal (R0) de débit calculé. 10. Procédé d'allocation de débit selon l'une des revendications précédentes, caractérisé en ce qu'il comprend une étape (E4') de calcul d'un débit cible de la couche de base et d'un débit cible de 30 ladite au moins une couche d'amélioration pour le groupe d'image suivant en fonction du débit restant mis à jour suite à un premier encodage du groupe d'images suivant et du ratio optimal (R0') de débit calculé. 3041851 29 11. Dispositif (100) d'allocation de débit entre une première couche, dite couche de base et au moins une deuxième couche, dite couche d'amélioration, d'un codeur scalable apte à coder une séquence d'images numériques (S), à un débit global cible (DG), caractérisé en ce qu'il comprend les unités suivantes, apte à être mises en oeuvre suite au codage d'un groupe 5 d'images de la séquence (GOIP;) : - évaluation (GET Q) d'une mesure de qualité de codage de la couche d'amélioration pour le groupe d'images courant à partir d'une métrique prédéterminée ; - estimation (GET B) d'un coût de codage effectif de la couche de base et d'un coût de codage effectif de la au moins une couche d'amélioration pour le groupe d'images courant : 10 - calcul (CALC) d'un ratio de débit entre une dite couche d'amélioration et le débit global à partir des coûts de codage estimés ; - estimation (EST Q(Ri)) d'une fonction de performance au moins à partir du ratio de débit calculé, de la qualité mesurée et d'un modèle de courbe prédéterminé ; et - Détermination (DET R0) d'un ratio de débit optimal dans un intervalle de ratio 15 prédéterminé, à partir de la fonction de performance estimée et selon un critère de maximisation de la qualité de ladite au moins une couche d'amélioration. 12. Codeur (10) scalable en couches, comprenant un premier codeur (C-0) apte à encoder une première couche, dite couche de base d'une séquence d'images numérique, à un premier débit et au moins un deuxième codeur (C-1) apte à encoder une deuxième couche, dite couche 20 d'amélioration de ladite séquence, à un deuxième débit, ledit codeur comprenant un premier module (RC-0) de contrôle de débit apte à contrôler le premier débit consommé par la couche de base et au moins un deuxième module (RC-1) de contrôle de débit apte à contrôler le deuxième débit consommé par une dite couche d'amélioration, caractérisé en ce qu'il comprend en outre un dispositif (100) d'allocation de débit selon la revendication 11 apte à 25 allouer le premier débit au premier module et le deuxième débit au deuxième module. 13. Programme d'ordinateur (Pgi) comprenant des instructions pour la mise en oeuvre du procédé d'allocation de débit selon l'une des revendications 1 à 10, lorsqu'il est exécuté par un processeur. 14. Support d'enregistrement lisible par un processeur, caractérisé en ce qu'il est apte à 30 mémoriser le programme d'ordinateur selon la revendication 13.