FR2913844A1 - Procede et dispositif d'allocation de debit dans une sequence video - Google Patents

Procede et dispositif d'allocation de debit dans une sequence video Download PDF

Info

Publication number
FR2913844A1
FR2913844A1 FR0753872A FR0753872A FR2913844A1 FR 2913844 A1 FR2913844 A1 FR 2913844A1 FR 0753872 A FR0753872 A FR 0753872A FR 0753872 A FR0753872 A FR 0753872A FR 2913844 A1 FR2913844 A1 FR 2913844A1
Authority
FR
France
Prior art keywords
image
quality
rate
signals
fragments
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR0753872A
Other languages
English (en)
Other versions
FR2913844B1 (fr
Inventor
Leannec Fabrice Le
Patrice Onno
Xavier Henocq
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to FR0753872A priority Critical patent/FR2913844B1/fr
Publication of FR2913844A1 publication Critical patent/FR2913844A1/fr
Application granted granted Critical
Publication of FR2913844B1 publication Critical patent/FR2913844B1/fr
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/34Scalability techniques involving progressive bit-plane based encoding of the enhancement layer, e.g. fine granular scalability [FGS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/188Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Pour allouer du débit à des signaux de passage d'un niveau de qualité donné d'une image appartenant à une séquence vidéo codée suivant un codage hiérarchique, vers un ou plusieurs niveaux de qualité supérieurs au niveau donné, on applique (726, 728, 730) un mécanisme d'allocation de débit aux signaux de passage en fonction du résultat d'une allocation de débit (722) préalablement effectuée sur les niveaux de qualité de l'image.

Description

La présente invention se rapporte à un procédé et à un dispositif
d'allocation de débit dans une séquence vidéo. Elle s'applique en particulier à la compression vidéo hiérarchique ou "scalable", dans la dimension SNR (rapport signal sur bruit, en anglais "Signal to Noise Ratio") et offrant la fonctionnalité de codage progressif de l'information de texture. La présente invention s'applique donc en particulier au cas du système SVC (codage vidéo à échelle variable, en anglais "Scia/able Video Coding") en cours de normalisation. Elle s'applique aussi au codage vidéo hiérarchique comprenant la possibilité de codage des échantillons représentatifs de la texture de façon progressive et emboîtée, via des technologies de quantification emboîtée et codage par plans de bits, par exemple. La future norme de compression vidéo connue sous le nom de "SVC" prévoit de fournir une représentation vidéo hiérarchique, ou "scalable", c'est-à-dire à différents niveaux évalués selon trois critères ou dimensions : le rapport signal/bruit, connu sous le nom de SNR, qui définit la qualité du codage pixel à pixel, la résolution temporelle, c'est-à-dire le nombre d'images par seconde représentées par les données codées et la résolution spatiale, c'est-à-dire le nombre de pixels représentés par les données codées.
Concernant la scalabilité SNR, une couche de raffinement, ou rehaussement, de type SNR contient des données utiles pour décomprimer une séquence vidéo à un niveau de qualité supérieur à celui de la couche inférieure dans la hiérarchie de représentation vidéo. Une couche de raffinement SNR peut prendre deux formes : - une couche de raffinement de type CGS (scalabilité à grains grossiers, en anglais "Coarse Grain Scalability') contient à la fois des données de raffinement des données de mouvement et des données de raffinement des données de texture. Une couche de qualité CGS combine, d'une part, la prédiction temporelle compensée en mouvement au sein de cette couche et, d'autre part, le codage prédictif des données de mouvement et de texture depuis sa couche de base ; et - une couche de raffinement de type FGS (scalabilité à grains fins, en anglais "Fine Grain Scalabilit)r') contient également des données de raffinement des données de mouvement et des données de raffinement progressif des informations de texture. Une ou plusieurs couches de qualité FGS successives peuvent être codées au-dessus de la couche de base, d'une couche de scalabilité spatiale ou d'une couche CGS. La différence entre une couche de type CGS et une couche de type FGS réside dans le codage des informations de raffinement de texture. Typiquement, dans le cas de couches FGS, des moyens de quantification emboîtée et de codage progressif des coefficients DCT (transformée en cosinus discret, en anglais "Discrete Cosine Transform") permettent de fournir un train binaire FGS emboîté, apte à être tronqué à une position quelconque et augmentant progressivement la qualité de l'ensemble de l'image considérée. En effet, le pas de quantification qui était attribué aux données de texture de la couche de qualité précédente est divisé par deux et les données associées sont requantifiées avec le nouveau pas de quantification de la couche FGS courante. De plus, le codage FGS produit des portions de train binaire (en anglais "bitstream") comprimé aptes à être tronquées en n'importe quel endroit. Le segment de train binaire ainsi tronqué est toujours décodable et son 20 décodage restitue un raffinement de la qualité de l'ensemble des images considérées. Cette propriété résulte du codage cyclique des coefficients DCT des différents macroblocs employé dans la technologie FGS. La technologie FGS fournit un moyen pratique et efficace pour réaliser un contrôle de débit dans un système de transmission SVC : lorsque la 25 bande passante disponible entre un codeur et un décodeur le permet, le codeur peut émettre les données d'un niveau supplémentaire de qualité. Inversement, lorsqu'on souhaite réduire la bande passante consommée, le codeur n'émet plus les données représentatives du niveau de qualité le plus élevé. Dans les demandes de brevet français de numéro de dépôt 06 30 50974 et 06 11332, on décrit deux méthodes différentes de codage de signaux de passage d'une couche SVC initiale vers une (dans la demande n 06 50974) ou plusieurs (dans la demande n 06 11332) couches de qualité de type FGS.
Ces signaux de passage, appelés "switchs FGS" dans la suite de la présente description, permettent à un décodeur SVC de passer d'un niveau de qualité initial à un niveau de qualité quelconque codé au-dessus du niveau initial en maintenant une bonne synchronisation entre le décodeur et le codeur.
En effet, lors du codage de couches de raffinement en qualité de type FGS, le processus de prédiction temporelle utilisé inclut une étape de compensation en mouvement dans laquelle l'image de référence utilisée pour prédire l'image courante en cours de codage est formée en combinant l'image de référence codée puis reconstruite au niveau de qualité courant et l'image de référence reconstruite au niveau de qualité de base. Cette combinaison est pondérée et permet d'ajuster un compromis entre performance de compression de la couche FGS courante et contrôle de la dérive temporelle lors du décodage partiel de la couche FGS considérée. Cette technique de combinaison pondérée pour former l'image de référence pour la compensation en mouvement est appelée AR-FGS ("Adaptive Reference Fine Granular Scalability') ou AR-PR ("Adaptive Reference Progressive Refinement"). La dérive temporelle mentionnée ci-dessus consiste en la baisse de qualité des images décodées d'une séquence vidéo par rapport à la qualité obtenue lors du codage, lorsque les images de référence respectivement utilisées par le codeur et le décodeur lors de la compensation en mouvement sont différentes. Cela se produit donc en cas de perte de synchronisation entre le codeur et le décodeur dans la boucle de prédiction temporelle compensée en mouvement. Cette perte de synchronisation peut par exemple survenir lors du décodage partiel de couches de qualité type FGS. Cependant, lorsque des variations de débit ont lieu lors d'une session de transmission vidéo mettant en oeuvre la technologie FGS à des fins de contrôle de débit, une augmentation significative du débit transmis peut par exemple entraîner l'augmentation du nombre de couches FGS transmises d'un serveur vers un client. Dans ce dernier cas, la technique de prédiction AR-PR ci-dessus limite la désynchronisation entre le codeur et le décodeur, mais ne la supprime pas. Dans ce dernier cas, les switchs FGS permettent d'augmenter la rapidité de rafraîchissement de la qualité du côté du décodeur. Dans le reste de la description, on désigne indifféremment les signaux de passage ou switchs FGS par les expressions "slices de type SPR", "slices SPR" ou "slices de passage". Par ailleurs, les expressions "niveau de qualité" et "couche de qualité" sont synonymes. L'intérêt des signaux de passage ou slices de type SPR ("Switching Progressive Refinemene') a été démontré lors de contributions techniques au groupe de normalisation JVT ("Joint Video Team"). Par ailleurs, les switchs FGS ou signaux de passage sont codés conformément à la syntaxe de codage des tranches d'image (en anglais "slices") de type PR (ou FGS) classiques. Par conséquent, ils héritent de la propriété de granularité fine des tranches de type PR. Ainsi, lorsque des données de type PR sont partiellement tronquées à des fins de contrôle de débit, les signaux de passage doivent aussi subir un processus de contrôle de débit, de façon à fournir des signaux de passage entre couches FGS adaptés à permuter vers une couche FGS partiellement transmise. La méthode couramment employée pour tronquer des signaux de passage consiste simplement à couper les signaux de passage de façon proportionnelle à la troncature appliquée sur les tranches de type PR.
L'inconvénient de cette méthode est qu'elle n'est pas optimale au sens débit-distorsion. Le document US-A-6 996 173 décrit une méthode de passage entre différents flux vidéo scalables représentant la même séquence vidéo. Cependant, ce document ne mentionne ni la possibilité de tronquer un signal de passage à une position quelconque, ni un processus d'allocation de débit qui serait appliqué sur de tels signaux de passage. La contribution technique JVT-P031 au comité de normalisation JVT mentionné plus haut propose l'introduction de fragments de tranches de raffinement progressif ainsi que l'attribution d'un indice de couche de qualité à chaque unité de transfert élémentaire d'un train binaire H264/AVC ou SVC, appelée "NAL unit" (NAL étant l'acronyme pour "Network Abstract Layer"), qui contient une tranche de raffinement progressif (c'est-à-dire de type PR) ou un fragment de tranche de raffinement progressif. La division des tranches PR et les valeurs de couche de qualité attribuées aux NAL units contenant cette tranche ou ce fragment de tranche sont optimisées au sens débit-distorsion. Cependant, aucune allocation de débit sur des signaux de passage 5 n'est mentionnée dans cette contribution technique. De plus, l'allocation de débit optimisée au sens débit-distorsion effectuée dans cette contribution ne peut pas être appliquée telle quelle sur des signaux de passage. La présente invention a pour but de remédier aux inconvénients ainsi qu'aux lacunes précités de l'art antérieur.
Dans ce but, la présente invention propose un procédé d'allocation de débit à des signaux de passage d'un niveau de qualité donné d'une image appartenant à une séquence vidéo codée suivant un codage hiérarchique, vers un ou plusieurs niveaux de qualité supérieurs au niveau donné, ce procédé étant remarquable en ce qu'il consiste à appliquer un mécanisme d'allocation de débit aux signaux de passage en fonction du résultat d'une allocation de débit préalablement effectuée sur les niveaux de qualité de l'image. Ainsi, l'invention utilise le résultat d'une optimisation préalablement effectuée sur l'image courante en cours de codage pour effectuer l'allocation de débit d'un autre type de slice dans la même image courante.
Le décodage des signaux de passage fournit alors une image reconstruite aussi proche que possible de l'image P reconstruite via les données régulières de type PR au point de troncature visé, tout en respectant la contrainte de débit fixée pour chaque signal de passage et/ou fragment de signaux de passage lors de l'allocation de débit, laquelle est optimisée par exemple au sens débit-distorsion. La présente invention fournit une stratégie simple d'allocation de débit pour des signaux de passage, particulièrement bien adaptée à des applications de transmission où des sous-flux scalables sont extraits sur une base de NAL units.
Dans un mode particulier de réalisation dans lequel les niveaux de qualité comportent des tranches et des fragments de tranches de l'image, le procédé est remarquable en ce que le mécanisme d'allocation de débit comporte des étapes consistant à : - définir un nombre de points de décodage des signaux de passage égal au nombre total de tranches et fragments de tranches de l'image, de façon 5 à former une pluralité de fragments de signaux de passage ; et - déterminer la quantité de données utiles codées à associer à chaque fragment de la pluralité de fragments de signaux de passage en fonction d'un critère d'optimisation prédéterminé. Ainsi, pour chacun des tranches et/ou fragments de tranches de 10 l'image qui sont codés et insérés dans une NAL unit qui lui est propre, on engendre et on associe exactement une NAL unit contenant une portion de signal de passage menant à une restitution de l'image aussi proche que possible de sa version reconstruite via le décodage des tranches et/ou fragments de tranches codés. 15 Dans ce mode de réalisation, selon une caractéristique particulière, le mécanisme d'allocation de débit comporte en outre une étape consistant à attribuer à chaque fragment de signaux de passage un indice de niveau de qualité égal à l'indice des fragments de tranches correspondants de l'image. Ainsi, les NAL units des tranches et fragments de tranches contenant 20 des données codées régulières et les NAL units contenant le signal de passage qui leur est associé possèdent exactement le même indice de niveau de qualité du fichier de l'image codée suivant le codage hiérarchique considéré (par exemple SVC). Par conséquent, un agent d'extraction de sous-flux (par exemple, un sous-flux SVC) qui opérerait des troncatures du train binaire en 25 frontière de NAL unit adopterait le même comportement d'extraction sur les NAL units de données régulières et les NAL units de données de passage qui leur sont associées. Selon une caractéristique particulière, le critère d'optimisation prédéterminé est un critère débit-distorsion. 30 Ce critère permet de prendre en compte une contrainte sur le débit alloué aux tranches et fragments de tranches contenant un signal de passage. Ainsi, l'étape précitée de détermination de la quantité de données utiles codées à associer à chaque fragment de la pluralité de fragments de signaux de passage fournit une quantité de données utiles permettant d'approcher au mieux l'image reconstruite qui est visée, tout en respectant une contrainte sur le débit alloué à ces données de passage.
Selon une caractéristique particulière, l'étape de définition des points de décodage comporte des étapes consistant à : - calculer le débit moyen correspondant à un sous-flux de données d'image extrait à un niveau de qualité courant ; - calculer une contrainte de débit pour ce niveau de qualité ; - former un ensemble de points d'une courbe débit-distorsion avec une quantité de données variant entre zéro et la contrainte de débit ; - rechercher le point de décodage compris entre zéro et la contrainte sur la courbe précitée et donnant la distorsion minimale. Cela constitue une façon particulière de réaliser la recherche du 15 point de décodage des données de passage optimal au sens débit-distorsion et de fournir ce point de décodage. Dans un mode particulier de réalisation, le codage hiérarchique est conforme à la norme SVC (Scalable Video Coding). On améliore ainsi les performances d'un système de transmission de 20 séquences vidéo codées préalablement à l'étape de transmission et contenant des couches de raffinement en qualité de type FGS, dans le cas où des variations de débit surviennent durant la transmission et que le contrôle de débit est réalisé par le serveur en faisant varier la quantité de données de raffinement de type FGS transmises vers le client. 25 Dans le même but que celui indiqué plus haut, la présente invention propose également un dispositif d'allocation de débit à des signaux de passage d'un niveau de qualité donné d'une image appartenant à une séquence vidéo codée suivant un codage hiérarchique, vers un ou plusieurs niveaux de qualité supérieurs au niveau donné, ce dispositif étant remarquable en ce qu'il 30 comporte des moyens pour appliquer un mécanisme d'allocation de débit aux signaux de passage en fonction du résultat d'une allocation de débit préalablement effectuée sur les niveaux de qualité de l'image. 8
Toujours dans le même but, la présente invention propose également un système de télécommunications comprenant une pluralité de dispositifs terminaux reliés à travers un réseau de télécommunications, comprenant au moins un dispositif terminal équipé d'un dispositif d'allocation de débit tel que succinctement décrit ci-dessus. Toujours dans le même but, la présente invention vise aussi un moyen de stockage d'informations lisible par un ordinateur ou un microprocesseur conservant des instructions d'un programme informatique, remarquable en ce qu'il permet la mise en oeuvre d'un procédé d'allocation de débit tel que succinctement décrit ci-dessus. Dans un mode particulier de réalisation, ce moyen de stockage est partiellement ou totalement amovible. Toujours dans le même but, la présente invention vise aussi un produit programme d'ordinateur pouvant être chargé dans un appareil programmable, comportant des séquences d'instructions pour mettre en oeuvre un procédé d'allocation de débit tel que succinctement décrit ci-dessus, lorsque ce programme est chargé et exécuté par l'appareil programmable. Les caractéristiques particulières et les avantages du dispositif d'allocation de débit, du système de télécommunications, du moyen de stockage d'informations et du produit programme d'ordinateur étant similaires à ceux du procédé d'allocation de débit, ils ne sont pas répétés ici. D'autres aspects et avantages de l'invention apparaîtront à la lecture de la description détaillée qui suit d'un mode particulier de réalisation, donné à titre d'exemple non limitatif. La description se réfère aux dessins qui l'accompagnent, dans lesquels : - la figure 1 représente schématiquement un mode particulier de réalisation d'un appareil susceptible de mettre en oeuvre la présente invention ; - la figure 2 représente schématiquement un exemple d'organisation multicouche possible d'une séquence vidéo conforme à la norme SVC ; - la figure 3 représente schématiquement l'insertion de couches de raffinement FGS dans une représentation multicouche du type de la figure 2 ; - la figure 4 illustre les différents passages possibles entre couches de qualité proposés simultanément par les signaux de passage mis en oeuvre dans un procédé d'allocation de débit conforme à la présente invention, dans un mode particulier de réalisation ; - la figure 5 est un graphique illustrant le problème technique résolu par la présente invention ; - la figure 6 illustre le principe de la solution proposée par la présente invention ; - la figure 7 est un organigramme illustrant un algorithme global de 10 codage d'une image P d'une séquence vidéo comprenant une couche de base et une ou plusieurs couches de raffinement progressif au-dessus de la couche de base, dans un mode particulier de réalisation ; - la figure 8 illustre le principe de la procédure d'optimisation débit-distorsion mise en oeuvre dans l'algorithme de la figure 7 ; 15 - la figure 9 est un organigramme illustrant les principales étapes de la procédure d'optimisation débit-distorsion mise en oeuvre dans l'algorithme de la figure 7, dans un mode particulier de réalisation ; la figure 10 illustre le principe d'un signal de passage de type "switch FGS", comme décrit dans la demande de brevet français de numéro de 20 dépôt 06 50974 ; et - la figure 11 illustre le principe de passage d'un signal de passage de type "switch FGS" d'un niveau de qualité donné à un ou plusieurs niveaux de qualité supérieurs quelconques, comme décrit dans la demande de brevet français de numéro de dépôt 06 11332. 25 Comme représenté sur la figure 1, un dispositif mettant en oeuvre l'invention est par exemple un micro-ordinateur 10 connecté à différents périphériques, par exemple une caméra numérique 101 (ou un scanner, ou tout moyen d'acquisition ou de stockage d'image) reliée à une carte graphique et fournissant des informations à comprimer selon l'invention. 30 Le dispositif 10 comporte une interface de communication 118 reliée à un réseau 113 apte à transmettre des données numériques à comprimer ou à transmettre des données comprimées par le dispositif.
Le dispositif 10 comporte également un moyen de stockage 112 tel qu'un disque dur. Il comporte aussi un lecteur 114 de disques 116. Ce disque 116 peut être une disquette, un CD-ROM, ou un DVD-ROM, par exemple. Le disque 116 comme le disque 112 peuvent contenir des données comprimées selon l'invention ainsi que le ou les programmes mettant en oeuvre l'invention qui, une fois lus par le dispositif 10, seront stockés dans le disque dur 112. En variante, le ou les programmes permettant au dispositif de mettre en oeuvre l'invention pourront être stockés en mémoire morte 104 (appelée ROM sur le dessin). Dans une autre variante, ce ou ces programmes pourront être reçus pour être stockés de façon identique à celle décrite précédemment par l'intermédiaire du réseau de communication 113. Le dispositif 10 possède un écran 108 permettant de visualiser les données à traiter ou de servir d'interface avec l'utilisateur qui peut ainsi paramétrer certains modes de traitement, à l'aide du clavier 110 ou de tout autre moyen (souris par exemple). L'unité centrale 103 (appelée CPU sur le dessin) exécute les instructions relatives à la mise en oeuvre de l'invention, instructions stockées dans la mémoire morte 104 ou dans les autres éléments de stockage. Lors de la mise sous tension, les programmes de traitement stockés dans une mémoire non volatile, par exemple la ROM 104, sont transférés dans la mémoire vive RAM 106 qui contiendra alors le code exécutable de l'invention ainsi que des registres pour mémoriser les variables nécessaires à la mise en oeuvre de l'invention. De façon plus générale, un moyen de stockage d'information, lisible par un ordinateur ou par un microprocesseur, intégré ou non au dispositif, éventuellement totalement ou partiellement amovible, mémorise un programme mettant en oeuvre le procédé d'allocation de débit. Le bus de communication 102 permet la communication entre les différents éléments inclus dans le micro-ordinateur 10 ou reliés à lui. La représentation du bus 102 n'est pas limitative et notamment l'unité centrale 103 est susceptible de communiquer des instructions à tout élément du micro- 11
ordinateur 10 directement ou par l'intermédiaire d'un autre élément du micro-ordinateur 10. Le système de compression vidéo SVC prévoit des scalabilités dans les dimensions temporelle, spatiale et SNR (en qualité). La scalabilité temporelle est obtenue via les images B hiérarchiques dans la couche de base et dans les couches de raffinement. La scalabilité SNR existe sous deux formes : la scalabilité SNR fine, notée FGS, est obtenue par quantification progressive des tranches (en anglais "slices"). La scalabilité SNR grossière ou CGS est fournie par le codage d'une couche (en anglais "laye') dans laquelle une décomposition temporelle en images de type B hiérarchique est effectuée indépendamment de la couche inférieure, et qui est prédite depuis la couche directement inférieure. Enfin, la scalabilité spatiale est obtenue par codage prédictif d'une couche dans laquelle une décomposition temporelle en images B hiérarchiques est effectuée indépendamment de la couche inférieure. Le codage d'une couche de raffinement spatial est similaire à celui d'une couche CGS, à ceci près qu'il sert à comprimer la séquence vidéo à un niveau de résolution supérieur par rapport à la couche inférieure. II inclut notamment une étape de sur-échantillonnage spatial dans les deux dimensions spatiales (largeur et hauteur) dans le processus de prédiction inter-couches. La figure 2 illustre un exemple d'organisation multicouche possible avec la norme SVC. La couche de base 200 représente la séquence d'images à son plus bas niveau de résolution spatiale, comprimée de façon compatible à la norme H264/AVC. Comme l'illustre la figure 2, la couche de base est composée d'images de type I, P et B hiérarchiques, leurs versions améliorées étant notées respectivement El, EP et EB. Les images B hiérarchiques constituent un moyen d'engendrer une couche de base scalable dans la dimension temporelle. Elles sont notées B;, i>_1, et respectent la règle suivante : une image de type B; peut être prédite temporellement à partir des images d'ancrage, images de référence de type I ou P qui apparaissent en frontières du groupe d'images (en anglais "Group Of Pictures") traité, l'entourant, ainsi que des images Bi, j<i, localisées dans le même intervalle d'images d'ancrage I ou P. On observe qu'entre les images d'ancrage se trouvent des images de type B. On observe aussi qu'une image BI, c'est-à-dire la première image d'une séquence, ne peut être prédite qu'à partir des images d'ancrage l'entourant puisqu'il n'y a pas d'image Bi avec j<1.
Sur la figure 2, deux couches de raffinement spatial 205 et 210 sont illustrées. La première couche de raffinement spatial 205 est codée de façon prédictive par rapport à la couche de base 200 et la deuxième couche de raffinement spatial 210 est prédite depuis la première couche de raffinement spatial 205. Une étape de sur-échantillonnage spatial consistant à sur- échantillonner avec un coefficient 2 intervient au cours de ces prédictions entre couches (en anglais "inter-layer"), de sorte qu'une couche supérieure contient des images dont les définitions sont, dans chaque dimension, doubles de celles de la couche immédiatement inférieure. La figure 3 illustre la représentation hiérarchique de la figure 2, dans laquelle ont été ajoutées des couches 300 et 305 de raffinement de type FGS. Une couche de raffinement FGS consiste en le raffinement en qualité de l'information de texture. Cette information de texture correspond soit à une erreur, ou résidu, de prédiction temporelle, soit une erreur, ou résidu, de prédiction spatiale, soit une texture codée en INTRA sans prédiction.
Une couche de scalabilité de type FGS fournit un raffinement en qualité des informations de texture concernées, par rapport à la couche inférieure. Ce raffinement en qualité est progressif, c'est-à-dire que le segment de train binaire issu du codage FGS peut être tronqué en un point quelconque. Le résultat de cette troncature demeure décodable et fournit une représentation de l'ensemble de l'image considérée à un niveau de qualité augmentant avec la longueur du train binaire décodé. On dit également que le train binaire engendré par le codage FGS est progressif en qualité ou encore emboîté. Ces deux propriétés intéressantes du codage FGS (raffinement en qualité et progressivité du train binaire) sont obtenues grâce aux deux outils de codage suivants : - la quantification progressive : le paramètre de quantification attribué à une couche de raffinement FGS donnée est tel que le pas de 13
quantification appliqué sur les coefficients DCT est divisé par deux par rapport à la couche inférieure ; - le codage cyclique des coefficients DCT des différents blocs d'une image : l'ordre de codage des coefficients DCT d'une image est fonction de l'amplitude des différents coefficients DCT. Les coefficients de plus grande amplitude apparaissent en premier dans le train binaire. En effet, une "passe de signifiance" signale les coefficients signifiants par rapport à un seuil d'amplitude, c'est-à-dire supérieurs à ce niveau d'amplitude. Ensuite, une passe de raffinement d'amplitude permet de coder des raffinements de valeurs d'amplitude des coefficients déjà codés comme signifiants. Les macroblocs n'apparaissent donc plus dans le train binaire selon leur ordre de parcours naturel, comme dans le codage des autres couches SVC. Au contraire, les coefficients DCT des différents blocs sont entrelacés et leur ordonnancement est fonction de leur amplitude respective. Ce codage cyclique, désigné sous le terme de "raffinement progressif' dans le projet de norme SVC, assure la propriété d'emboîtement du train binaire FGS, c'est-à-dire la possibilité de le tronquer à n'importe quel point, tout en le laissant capable d'être décodé, chaque couche de qualité supplémentaire fournissant un incrément de qualité couvrant spatialement l'ensemble de l'image considérée.
La figure 4 illustre les différentes possibilités de passages respectivement décrites dans les demandes de brevet français n S 06 50974 et 06 11332. Le premier niveau de qualité, appelé couche de base, est lacouche de base compatible H.264/AVC inhérente à tout train binaire codé SVC. Puis trois couches de raffinement progressif de type PR, codées au-dessus de la couche de base, fournissent un raffinement en qualité progressif à grain fin. Les trois ensembles de signaux de passage illustrés sur la gauche de la figure correspondent à la méthode de codage de signaux de passage proposée dans la demande de brevet français n 06 50974. Chaque "pile" ou "hiérarchie" de signaux de passage parmi ces trois ensembles permet de passer d'un niveau de qualité de départ vers un unique niveau supérieur cible. La hiérarchie de signaux de passage sur la droite de la figure 4 illustre la méthode de codage proposée dans la demande de brevet français 14
n 06 11332. Elle engendre une pile de signaux de passage qui permettent de permuter à partir d'un niveau de qualité vidéo de départ vers plusieurs niveaux de qualité supérieurs au niveau de départ. Dans l'exemple pratique illustré sur la droite de la figure 4, la série de signaux de passage permet de passer de la couche de base à n'importe quelle couche de raffinement de type PR au-dessus de la couche de base. Le graphique de la figure 5 illustre le problème technique résolu par la présente invention. Les couches d'augmentation de qualité de type raffinement progressif (PR) possèdent la propriété suivante : elles peuvent être tronquées à n'importe quelle position dans le train binaire SVC et le résultat de cette troncature demeure décodable. De plus, une portion tronquée d'une tranche (ou "slice") de type PR fournit un rehaussement de qualité visuelle qui couvre une zone spatiale 15 correspondant à la totalité de la tranche considérée. Cette propriété de granularité fine des tranches PR peut être utilisée à des fins de contrôle de débit. En effet, le débit de sortie d'un serveur vidéo qui délivrerait un flux SVC pré-codé contenant des couches d'augmentation de qualité de type PR peut être adapté en ajustant dynamiquement la troncature et 20 l'extraction appliquées sur les données comprimées de type PR, en fonction de la bande passante variable disponible sur le réseau de transmission. D'autre part, comme les signaux de passage entre couches de raffinement progressif sont codés de façon compatible avec la syntaxe de codage des tranches de type PR, les signaux de passage héritent de la 25 propriété de granularité fine des tranches PR. Par conséquent, lorsque des sous-ensembles de tranches de type PR sont extraits et décodés à des fins de contrôle de débit, il convient d'appliquer également un contrôle de débit approprié sur les signaux de passage. En particulier, il convient d'adapter un tel contrôle de débit sur les signaux de passage aux cas pratiques où des 30 passages vers une couche de raffinement de type PR partiellement tronquée sont requis. Le besoin d'un tel contrôle de débit approprié aux signaux de passage dans ce dernier cas pratique est mis en évidence par les résultats expérimentaux présentés sur la figure 5. L'expérience menée consiste à coder une séquence vidéo avec une couche de base compatible H.264/AVC et une couche de raffinement progressif au-dessus de la couche de base. Ensuite, la couche type PR est tronquée de façon à extraire un sous-flux de débit 376 kbit/s de la séquence codée initiale. Le résultat du décodage de ce sous-flux extrait, en l'occurrence, l'amplitude maximale du rapport signal sur bruit (en anglais PSNR, "Peak Signal to Noise Ratio"), est illustré par la courbe Cl de la figure 5.
L'étape suivante de l'expérience consiste à supprimer la NAL unit (c'est-à-dire l'unité élémentaire de transfert du flux H.264/AVC et SVC) contenant une tranche de type PR toutes les 16 images de la séquence comprimée considérée. Le résultat du décodage du sous-flux extrait en supprimant une tranche de type PR toutes les 16 images est illustré par la courbe C2 sur la figure 5. Ensuite, les trois courbes de qualité restantes illustrent les résultats obtenus en décodant le signal de passage dans chaque image suivant directement une image dans laquelle une tranche de type PR a été supprimée. Les trois courbes C3, C4 et C5 correspondent respectivement à l'application des trois stratégies de troncature suivantes appliquées sur les signaux de passage: - la courbe C3 correspond à la troncature des signaux de passage avec la même stratégie que la stratégie de troncature des tranches PR. Plus précisément, cet algorithme de troncature est le suivant. Le débit d'extraction demandé correspond à un certain pourcentage du débit total contenu dans le train binaire SVC initial. Ce pourcentage est utilisé pour tronquer les données de type PR contenues dans chaque image de la séquence. Par exemple, dans le cas présent, où on a une tranche de type PR par image, si le débit d'extraction demandé correspond à 60 % du débit total contenu dans le train binaire SVC, alors chaque tranche de type PR est réduite à une taille égale à 60 % de sa taille initiale. Dans l'expérience correspondant à la courbe C3, chaque signal de passage est également réduit à une taille égale à 60 % de sa taille initiale ; - dans l'expérience correspondant à la courbe C4, le facteur de réduction des signaux de passage est considérablement réduit par rapport à la 5 courbe C3. Plus précisément, la quantité de données codées qui sont supprimées pour la courbe C3 est réduite de 90 % ; - la courbe C5 correspond à un processus de troncature des signaux de passage où le facteur de réduction est également réduit par rapport à la courbe C3. Pour cette courbe, la quantité de données SPR qui étaient 10 élaguées du signal de passage pour la courbe C3 a été réduite de 70 %. Comme l'objectif des signaux de passage est de rétablir la synchronisation entre le codeur et le décodeur aussi rapidement que possible, le meilleur résultat obtenu sur la figure 5 lorsque des tranches PR sont ignorées toutes les 16 images correspond à la courbe C5. De plus, cette courbe 15 correspond à une stratégie de troncature des signaux de passage différente de la stratégie qui était utilisée par défaut (courbe C3). Ces expériences démontrent le besoin d'une régulation de débit spécifiquement dédiée aux signaux de passage. La figure 6 illustre schématiquement le principe de la solution 20 proposée par la présente invention pour réaliser l'allocation de débit pour des signaux de passage ou slices de type SPR. La solution proposée suppose que le processus de codage SVC comprend une étape d'allocation de débit pour les couches de raffinement progressif de type PR, qui attribue des identifiants de couches de qualité aux 25 NAL units contenant des données de type PR. En effet, un indice de couche de qualité peut être attribué à chaque NAL unit du train binaire SVC. Cet indice de couche de qualité consiste en une valeur entière comprise entre 0 et 63, qui peut être déterminée via un algorithme d'optimisation débit-distorsion. Dans ce cas, l'identifiant de couche 30 de qualité d'une NAL unit correspond à une pente débit-distorsion qui représente physiquement la baisse de distorsion liée au décodage de la totalité de la NAL unit considérée. Intuitivement, cette pente correspond donc à la contribution de la NAL unit considérée à la qualité de la séquence vidéo à laquelle elle appartient. Les identifiants de couches de qualité peuvent être écrits, soit dans un message de type SEI ("Supplemental Enhancement Information") nommé 5 "quality_layer_info" et décrivant les couches de qualité contenues dans un train binaire SVC, soit dans les en-têtes des NAL units. Dans ce dernier cas, les valeurs de couches de qualité prennent la forme d'un champ de l'en-tête de NAL unit appelé "simple_priority_id". L'attribution d'indices de couches de qualité aux NAL units est 10 adaptée à des cas d'application où l'extraction de sous-flux est effectuée en tronquant le train binaire à des positions correspondant à des frontières de NAL units. De plus, si une granularité plus fine que les frontières de NAL units est requise pour effectuer des adaptations de débit, alors des fragments de 15 tranches de type PR peuvent être définis. Ces fragments se voient alors également attribuer une valeur de couche de qualité optimisée au sens débit-distorsion. Cette dernière configuration permet de fournir un niveau de granularité moyen, appelé MGS (en anglais "Medium Grain Scalability'), introduit dans la contribution technique au comité de normalisation SVC 20 mentionnée en introduction. La figure 6 fournit un exemple d'organisation d'un flux SVC scalable muni de fragments de tranches PR. Sur le dessin sont représentées deux images P successives d'une séquence vidéo dans laquelle sont codées une couche de base compatible 25 H.264/AVC et une couche de raffinement progressif de la couche de base. La première image P sert d'image de référence pour la prédiction temporelle compensée en mouvement de la deuxième image P. Dans la suite de la description, la deuxième image P de la figure 6 est considérée comme l'image courante en cours de traitement par la présente invention. 30 Entre l'image P de référence et l'image courante P prédite sont représentées des données de passage entre couches de raffinement progressif. De plus, la figure 6 illustre des fragments de tranches PR qui ont été 18
formés, de même que les identifiants de couches de qualité (notés "pid" sur le dessin) qui ont été attribués à chaque NAL unit et fragment de NAL unit des deux images P. L'algorithme d'allocation de débit aux signaux de passage proposé cherche à déterminer le nombre de points d'extraction de signaux de passage à signaler dans l'image P courante, les identifiants de couche de qualité à attribuer à chaque fragment de signaux de passage correspondant à ces points d'extraction, ainsi que la quantité de données codées de signaux de passage à insérer dans chaque fragment de signaux de passage.
Les entrées de l'algorithme sont les suivantes : - nombre de fragments de tranches de type PR décidé par le processus d'optimisation débit-distorsion des couches de qualité appliqué sur les données de raffinement progressif dans l'image courante, pour laquelle des données de signaux de passage doivent être engendrées et écrites dans le train binaire SVC ; - identifiants de couches de qualité respectivement attribués à chaque NAL unit contenant une tranche ou un fragment de tranche de type PR dans l'image P courante. Les sorties de l'algorithme sont les suivantes : - nombre de fragments de signaux de passage formés ; - identifiants de couches de qualité attribués à chacun des fragments des signaux de passage formés ; - quantité de données codées à écrire dans le corps de chaque fragment de signaux de passage formé.
II est à noter que même si les tranches de type PR ne sont pas fragmentées, les signaux de passage peuvent quand même être fragmentés, en fonction du résultat de l'optimisation débit-distorsion des longueurs des portions de données de signaux de passage à écrire dans les NAL units contenant des données de signaux de passage.
En effet, l'algorithme d'allocation de débit aux signaux de passage conforme à l'invention détermine, pour chaque point de décodage des données de type PR dans l'image courante, le point de décodage des données de signaux de passage le mieux adapté pour cibler le point de décodage de données PR. Il se peut que le point de décodage de données de signaux de passage trouvé ne se situe pas en frontière de signal de passage, auquel cas un fragment de signaux de passage est formé.
Supposons qu'un ensemble de tranches et/ou fragments de tranches de type PR optimisé au sens débit-distorsion a été calculé, de même que les indices de couches de qualité associés. Cela fournit à l'algorithme d'allocation de débit les deux paramètres d'entrée mentionnés ci-dessus. L'algorithme d'allocation de débit consiste alors en les trois étapes principales suivantes : 1. Le nombre de points de décodage des données de signaux de passage à déterminer est fixé égal au nombre de tranches et/ou fragments de tranches de type PR présents dans l'image courante P. 2. Les identifiants de couches de qualité qui seront attribués aux différentes tranches et/ou fragments de tranches correspondant à chacun des points de décodage des données de signaux de passage à déterminer sont choisis égaux aux identifiants de couches de qualité décidés pour les tranches et/ou fragments de tranches de type PR de l'image courante. Cela est illustré sur la figure 6, où les valeurs du champ "simple_priority_id" des fragments de tranches PR de l'image P courante sont reproduites à l'identique dans les fragments de signaux de passage de l'image courante. L'intérêt de cette stratégie est qu'un agent d'extraction de sous-flux SVC qui travaillerait sur une base de NAL units procéderait de façon identique pour les tranches et/ou fragments de tranches PR et pour les signaux de passage et/ou fragments de signaux de passage. 3. La dernière étape de l'algorithme proposé consiste à déterminer la quantité de données comprimées de type signaux de passage à introduire dans le corps de chaque signal de passage ou fragment de signaux de passage. Cette détermination met en oeuvre une procédure d'optimisation débit-distorsion de la position dans le train binaire de chaque point de décodage de données de signaux de passage décidé dans la première étape ci-dessus. Cette optimisation débit-distorsion est décrite en détail plus loin en liaison avec les figures 8 et 9. L'organigramme de la figure 7 illustre les principales étapes d'un algorithme global de codage d'une image P d'une séquence vidéo comprenant une couche de base et une ou plusieurs couches de raffinement progressif au-dessus de la couche de base. Cet algorithme comprend notamment des étapes relatives à la formation de signaux de passage et de tranches de signaux de passage optimisés au sens débit-distorsion conformément à la présente invention.
Les entrées de l'algorithme sont les suivantes : - la séquence vidéo à coder S ; - le nombre de couches de raffinement progressif (de type PR) à coder. Une première phase consiste à coder chaque image de la séquence vidéo à comprimer fournie en entrée de l'algorithme. Pour cela, lors d'une étape 700, on se positionne à la première image, notée idx, de la séquence et on teste si l'image est de type P (test 702). Si ce n'est pas le cas, la couche de base et les couches de raffinement sont codées, pour l'image courante, conformément à la spécification de la norme SVC (étape 704).
Si au contraire l'image couramment traitée est de type P, le codage de cette image comprend le codage de la couche de base (étape 706), des couches de raffinement progressif (étape 708 d'initialisation d'un indice i de couche de raffinement progressif et étape 710 de codage de la couche d'indice i) ainsi que le codage des signaux de passage entre niveaux de qualité (étape 712). Le codage des signaux de passage décrit dans les demandes de brevet français n S 06 50974 et 06 11332 est particulièrement adapté aux images de type P. De même, le mode particulier de réalisation de l'invention décrit ici en détail traite des images P, même si une généralisation aux images bi-directionnelles B est possible, bien que plus complexe. Le codage conforme à la norme SVC de la couche courante (d'indice i) de raffinement progressif fournit une tranche de type PR, correspondant au 21
codage de l'image P courante dans la couche de raffinement progressif courante d'indice i. L'étape 712 consiste à coder, par exemple comme décrit dans la demande de brevet français n 06 11332, un signal de passage entre la couche de base et la couche de raffinement progressif courante. Ce signal de passage est noté S(n_10),(n,,) , ce qui indique qu'il permet le passage de l'image de référence reconstruite dans la couche de base, à l'image de type P courante au niveau de qualité d'indice i. La figure 10 illustre le principe d'un signal de passage de type "switch FGS" décrit dans la demande de brevet français de numéro de dépôt 06 10 50974. Le traitement relatif à la génération d'un signal de passage de type "switch FGS" est exécuté uniquement par le codeur, tandis que l'algorithme de décodage vidéo associé demeure inchangé. Ils consistent à engendrer un signal de raffinement de texture conforme à la spécification de la technologie 15 FGS dans la norme SVC, mais permettant de reconstruire une image P à un niveau de qualité FGS donné (l'image Pn 2 sur la figure 10) à partir d'une image de référence reconstruite à un niveau de qualité inférieur. Pour ce faire, le signal de raffinement de texture est calculé par le codeur de façon à permettre de reconstruire une image d'erreur de prédiction 20 temporelle qui, une fois ajoutée à l'image de référence reconstruite au niveau inférieur, restitue une image reconstruite (Pr22+2) aussi proche que possible de celle qui serait reconstruite si la prédiction temporelle était effectuée avec l'image de référence (P1) reconstruite au niveau FGS courant. Par conséquent, le codeur doit d'abord coder puis décoder l'image 25 courante (Pn 2 sur la figure 10) au niveau de qualité courant, en utilisant l'image de référence normalement destinée à cet effet, notée P +, , qui apparaît sur la figure 10 mais est supposée non disponible côté décodeur. Ensuite, le codeur reconstruit le résidu de prédiction temporelle en décodant les données de texture de l'image d'indice temporel n+2 jusqu'au niveau de qualité FGS d'indice 30 1. Le signal d'erreur de prédiction issu de ce dernier décodage est noté En'+2. De plus, le codeur reconstruit l'image de référence P~+1 jusqu'au niveau de 22
qualité FGS d'indice 1. II reste ensuite au codeur à calculer la différence entre l'image reconstruite P,2+2 et la somme de l'image de référence reconstruite Pn'+, et du signal d'erreur de prédiction En+2 , pour connaître le raffinement de texture qui doit être codé dans le signal de raffinement FGS Pn 2.
Ainsi, le signal différentiel correspondant à la différence calculée ci-dessus permet au décodeur de reconstruire un signal d'erreur de prédiction temporelle qui, ajouté à l'image de référence reconstruite Pn1+1 , permet de reconstruire l'image Pn 2 proche de sa version reconstruite côté codeur. Ainsi, la synchronisation entre le décodeur et le codeur est maintenue en dépit de l'augmentation du nombre de couches de raffinement FGS décodées en cours de séquence. Le signal différentiel ainsi codé, ou "switch FGS", est noté S(n+,,,),(n+2,2) , illustrant qu'il permet de passer de l'image de référence reconstruite PP+1 à l'image courante reconstruite Pn 2. La figure 11 illustre le principe de passage d'un niveau de qualité 15 donné à un ou plusieurs niveaux de qualité supérieurs quelconques, décrit dans la demande de brevet français de numéro de dépôt 06 11332. Par exemple, la première hiérarchie de switchs FGS illustrée sur la gauche de la figure 11 représente une suite de trois switchs FGS permettant le passage de la couche de base vers n'importe quelle couche FGS parmi les trois 20 couches FGS codées au-dessus de la couche de base. Pour ce faire, on code tout d'abord un premier signal de type switch FGS, afin de permettre le passage de la couche de base vers la première couche de raffinement FGS au-dessus de la couche de base. Ce premier étage de la hiérarchie de switchs FGS est illustré en traits pointillés sur la figure 11 et 25 est noté S(n,base)ù>(n+1,1) Ensuite, les switchs FGS supérieurs de la hiérarchie, illustrés en traits pleins, sont codés comme suit. Pour coder le premier switch FGS illustré en traits pleins, on reconstruit l'image ciblée par le switch FGS précédemment codé en décodant ce dernier. L'image reconstruite est donc une approximation de l'image suivante Pn+1 qui serait reconstruite en décodant la couche FGS régulière notée FGS 1 sur la figure 11. Le codage du prochain signal de type switch FGS consiste à prendre désormais comme image cible l'image reconstruite Pn 1, c'est-à-dire l'image suivante reconstruite au prochain niveau de qualité FGS. On forme donc la différence entre cette nouvelle image cible et l'image reconstruite via le décodage du dernier switch FGS codé S(n,base)_>(n+1,1) • Cette différence constitue alors le nouveau signal résiduel à comprimer. Sa compression est opérée en mettant en oeuvre un codage conforme à la syntaxe FGS. Le signal ainsi codé, 10 noté S(n,base) (n+1,2) , est inséré dans le train binaire SVC comme un raffinement du signal de texture codé dans le switch FGS précédent S(n,base)_>(n+1,1) • II est donc codé avec un pas de quantification divisé par deux par rapport au pas de quantification utilisé dans le signal de switch S(n,base)_(n+1,1) . L'opération de codage ci-dessus, fournissant le signal de passage 15 entre couches FGS S(n,base)-+(n+1,2) , est ensuite réitérée de façon analogue pour coder le troisième signal de passage S(n.base)-*+1,3) de la suite de switchs FGS en cours de construction. En retournant à la figure 7, une fois que la tranche de type PR et le signal de passage pour l'image courante au niveau de qualité courant i ont été 20 codés, on passe au niveau de qualité suivant. Ainsi, lors d'un test 714, on vérifie si l'indice i est égal à NbFGSLayers - 1 (la variable NbFGSLayers désignant le nombre total de niveaux de qualité). Si tel est le cas, on vérifie lors d'un test 716 si idx est la dernière image à coder. Si tel est le cas, on passe à la seconde partie de l'algorithme (partie droite de la figure 7). Sinon, on passe à 25 l'image idx suivante (étape 718) et on retourne à l'étape 706. Si le test 714 est négatif, on incrémente la variable i d'une unité (étape 720) et on retourne à l'étape 710. Ainsi, les deux étapes de codage successif de tranches de type PR et de signaux de passage sont répétées pour chaque couche de raffinement 30 progressif désirée au-dessus de la couche de base. 24
La seconde partie de l'algorithme consiste ensuite à effectuer l'allocation de débit aux tranches de type PR et aux signaux de passage contenus dans la séquence vidéo codée. On effectue tout d'abord l'allocation de débit à toutes les tranches de type PR de la séquence vidéo (étape 722). Cette allocation de débit est connue de l'homme du métier et n'est donc pas détaillée ici. Elle résulte en la division éventuelle de certaines tranches de type PR en fragments de tranches PR et en l'attribution d'un indice de couche de qualité à chaque tranche et/ou fragment de tranche PR.
Cet indice de couche de qualité est optimisé au sens débit-distorsion et est écrit, soit dans le champ "simple_priority_id" de l'en-tête de la NAL unit contenant la tranche ou le fragment de tranche considéré, soit dans un message SEI "quality_layer_info" spécifié dans la norme SVC. Il est à noter que l'ensemble des NAL units possédant la même valeur d'indice de couche de qualité constituent une couche de qualité optimisée au sens débit-distorsion du flux SVC considéré. Les résultats de l'allocation de débit effectuée sur les tranches PR sont les suivants. Pour chaque image idx contenue dans la séquence vidéo codée, nbPRFragments[idx] représente le nombre de tranches et/ou fragments de tranches PR engendrés par l'allocation de débit. Pour chaque image idx, le tableau PRQid[0,...,nbPRFragments[idx]-1][idx] désigne l'indice de couche de qualité attribué aux tranches et/ou fragments de tranches PR contenus dans l'image idx. La suite de l'algorithme de la figure 7 consiste à effectuer l'allocation de débit aux signaux de passage telle que proposée par la présente invention. Pour cela, on effectue un parcours de toutes les images de type P contenues dans la séquence vidéo codée. Pour chaque image P de type P de la séquence, les trois étapes principales de la méthode d'allocation de débit proposée (désignées plus haut par 1., 2. et 3. lors de la description de la figure 6) sont exécutées. Ainsi, on commence par se positionner à la première image de type P de la séquence (étape 724). 25
Puis, lors d'une étape 726, le nombre de points de décodage à déterminer pour les signaux de passage de l'image courante est fixé égal au nombre de tranches et/ou fragments de tranches de type PR issus du processus d'allocation de débit sur les tranches PR, soit nbSPRPoints[P] = nbPRFragments[P]. De plus, à l'issue du processus d'allocation de débit aux signaux de passage dans l'image courante P, chaque point de décodage donnera lieu à la formation d'un signal de passage ou fragment de signaux de passage dans le train binaire SVC final. L'identifiant de couche de qualité qui sera associé à chacun de ces signaux de passage ou fragments de signaux de passage est fixé égal à la valeur de couche de qualité de la tranche ou du fragment de tranche PR vers lequel la portion de données de signaux de passage permettra de permuter. On affecte donc les valeurs de couches de qualité aux futurs fragments de signaux de passage comme suit : V .e E [0,...,nbSPRPoints[P]-1], SPRQid[ L ] = PRQid[ e ]. L'étape suivante 728 consiste à déterminer la quantité de données codées à insérer dans chaque signal de passage et/ou fragment de signaux de passage en cours de formation. Cette longueur de données à déterminer pour chaque signal de passage ou fragment de signaux de passage correspond à la position de chacun des points de décodage décidés précédemment. Cette étape de détermination met en oeuvre un processus d'optimisation débit-distorsion décrit en détail plus loin en liaison avec les figures 8 et 9. Le résultat de cette optimisation débit-distorsion prend la forme du tableau suivant de longueurs de portions de données codées de signaux de passage : SPRLength[0,...,nbSPRPoints[P]-1]. Autrement dit, pour chaque point de décodage .e E [0,...,nbSPRPoints[P]-1], SPRLength[2] représente le nombre d'octets dans le signal de passage ou fragment de signaux de passage d'indice .e formé dans l'image courante P.
L'étape suivante 730 consiste à écrire dans le corps de chaque signal de passage ou fragment de signaux de passage la quantité de données déterminée précédemment. Cette étape comprend en outre l'écriture, dans le 26
train binaire, des NAL units contenant les signaux de passage et/ou fragments de signaux de passage engendrés. Ces NAL units sont formées en concaténant un en-tête de NAL unit et un corps. En particulier, lors de l'écriture de l'en-tête de NAL unit, le champ "simple_priority_id" se voit attribuer la valeur de couche de qualité attribuée à l'étape 726 au signal ou fragment de signal de passage considéré. Enfin, le corps de NAL unit contient une portion de signal de passage d'une taille (en octets) égale à la longueur du signal ou fragment de signal de passage considéré, déterminée à l'étape 728. En variante, les valeurs de couches de qualité peuvent également être inscrites dans le message SEI "quality_layer_info" mentionné précédemment et spécifié dans la norme SVC. Enfin, comme le montre la figure 7, à l'issue de l'étape 730, on vérifie lors d'un test 732 si l'image courante P est la dernière image de type P à traiter. Si c'est le cas, l'algorithme se termine. Sinon, on passe à l'image suivante à coder (étape 734) et on retourne à l'étape 724.
Le graphique de la figure 8 illustre le principe de la procédure d'optimisation débit-distorsion destinée à déterminer les positions des points de décodage des signaux de passage contenus dans l'image P courante en cours de traitement dans l'algorithme de la figure 7. La figure 8 montre une courbe débit-distorsion particulière. L'axe des abscisses correspond à la quantité de données (nombre d'octets) extraites et décodées de l'ensemble des signaux de passage contenus dans l'image Pcourante. Par conséquent, l'abscisse 0 correspond au décodage d'aucun octet de la pile de signaux de passage contenus dans l'image courante et la valeur Bmax correspond au nombre total d'octets contenus dans l'ensemble des signaux de passage de l'image courante. L'axe des abscisses représente donc l'ensemble des positions possibles, en nombre d'octets, dans la portion de train binaire résultant de la concaténation de tous les signaux de passage de l'image courante. L'axe des ordonnées représente la distorsion issue du décodage d'une portion des données de signaux de passage de l'image courante. Cette distorsion est calculée entre, d'une part, l'image P courante reconstruite en décodant la portion de données de signaux de passage considérée et, d'autre 27
part, l'image P courante reconstruite en décodant une tranche ou un fragment de tranche de type PR dans l'image courante, à un niveau de qualité PRQid[2] particulier décidé dans l'algorithme de la figure 7. Par conséquent, la mesure de distorsion considérée ici correspond intuitivement à la distance entre la courbe Cl de la figure 5 et l'une des autres courbes de la figure 5 obtenue via le décodage de données de signaux de passage. Au vu de la figure 5, il apparaît clairement qu'une distorsion minimale entre l'image ciblée par les données de signaux de passage et l'image décodée via ces données de signaux de passage est obtenue en décodant une quantité d'informations de signaux de passage intermédiaire entre le minimum (débit nul) et la totalité des données de signaux de passage contenues dans l'image. Cela explique pourquoi la courbe débit-distorsion de la figure 8 est décroissante entre 0 et un certain débit, puis croissante entre son minimum global et le nombre total d'octets contenus dans les données de signaux de passage.
Sur la figure 8 apparaît également la contrainte de débit fixée pour les données de signaux de passage pour l'image courante reconstruite au niveau de qualité PRQid[ 2 ]. Cette contrainte de débit est calculée en fonction des paramètres suivants : - le débit moyen Rtarget correspondant au sous-flux extrait au niveau de qualité PRQid[.e ] considéré. Ce débit moyen est calculé en sommant les longueurs des NAL units possédant une valeur de couche de qualité inférieure ou égale à PRQid[e ] ; - le délai entre la demande de la part du client d'augmentation du débit du flux vidéo SVC reçu et l'instant auquel les données additionnelles requises parviennent effectivement au client. Le délai d'aller-retour RTT (en anglais "Round Trip Time") entre le client et le serveur est utilisé comme estimation de ce délai dans la suite de la description ; - la fréquence d'image F de la séquence vidéo S transmise du serveur vers le client.
Comme le client s'attend à recevoir un débit augmenté à partir du moment où il transmet sa requête au serveur et qu'un délai entre ces deux instants existe en pratique, la quantité de données qui ne sont pas effectivement transmises au client pendant cet intervalle de temps transitoire peuvent être considérées comme disponibles pour les données de passage entre le niveau de qualité précédemment reçu et le nouveau niveau de qualité reçu.
Par conséquent, le budget ou contrainte de débit alloué aux données de signaux de passage pour passer de l'image précédente reconstruite dans la couche de base vers l'image courante reconstruite au niveau de qualité PRQid[2] peut être écrit comme suit : R Bconstraint[ ] = target + Rtarget x RTT = Rtarget x F + RTT II apparaît sur l'exemple de la figure 8 que le minimum global de la courbe débit-distorsion correspond à une abscisse inférieure à la contrainte de débit Bconstraint[f]• Par conséquent, il est possible de choisir le point de décodage fournissant la distorsion minimale pour la portion de train binaire de données de signaux de passage en cours de formation pour la couche de qualité courante d'indice SPRQid[2]. La figure 8 montre l'expression de la recherche du point de décodage optimal sous la contrainte de budget de débit alloué pour les données de signaux de passage au niveau de qualité courant : B[ ] = Argmino<B<-8.5.[e](DsPR(B)) où DsPR(B) représente la distorsion mesurée comme expliqué précédemment en fonction du nombre d'octets B de données de signaux de passage décodées dans l'image courante. Il est à noter que si le minimum de la courbe débit-distorsion avait été placé au-delà de la contrainte de débit fixée, le point de décodage pour la couche de qualité courante aurait été choisi égal à la contrainte de débit. En résumé, la recherche du point de décodage de données de signaux de passage optimal au niveau de qualité courante SPRQid[I comprend donc les étapes suivantes : - calcul du débit moyen correspondant au sous-flux SVC extrait au niveau de qualité PRQid[ e ] ; - calcul de la contrainte de débit Bconstraint[ e ] pour la couche de qualité SPRQid[ e ] ; formation d'un ensemble de points débit-distorsion DsPR(B) avec la quantité de données B variant entre 0 et Bconstraine] - recherche du point de décodage BU] ] compris entre 0 et Bconstraint[I et donnant la distorsion minimale. L'organigramme de la figure 9, qui comprend les étapes ci-dessus, illustre les principales étapes d'un algorithme d'optimisation débit-distorsion des longueurs des signaux de passage et/ou fragments de signaux de passage dont le nombre et les valeurs de couches de qualité ont été décidés par l'algorithme de la figure 7, et qui seront insérés dans les NAL units du train binaire SVC en cours de formation. Les entrées de l'algorithme sont les suivantes : - l'image de type P courante notée P, codée et dont les signaux de passage et fragments de signaux de passage sont en cours de formation ; - l'ensemble des identifiants des couches de qualité qui ont été attribués aux tranches de type PR dans l'image courante : PRQid[0,...,nbPRFragments - 1] ; - la fréquence d'image (en Hz) de la séquence vidéo S considérée.
L'algorithme de la figure 9 traite successivement tous les niveaux de qualité qui ont été décidés pour les tranches et fragments de tranches PR et pour les signaux de passage et fragments de signaux de passage de l'image courante. Ces niveaux de qualité sont notés PRQid[0,...,nbPRFragments - 1], suivant la notation introduite en référence à la figure 7. Pour ce faire, on fait varier un indice de couches de qualité 2 entre 0 et (nbPRFragments - 1) (étape 900 d'initialisation de l'indice de couche de qualité, test 902 pour déterminer si .e est la dernière couche de qualité et étape 904 d'incrémentation de l'indice de couche de qualité n. Pour chacun des niveaux de qualité ainsi envisagés, on reconstruit l'image courante en décodant les tranches de type PR jusqu'au niveau de qualité courant PRQid[ e ] inclus (étape 906). Cette image reconstruite constitue alors l'image reconstruite ciblée par les données de signaux de passage qui vont être déterminées pour le niveau de qualité courant PRQid[.2 ].
L'étape suivante 908 consiste à calculer le débit moyen correspondant au sous-flux SVC extrait jusqu'au niveau de qualité courant PRQid[2]. Ce débit moyen est facilement obtenu en sommant les longueurs de toutes les NAL units contenant des données de types différents de SPR et dont l'identifiant de couche de qualité est inférieur ou égal à PRQid[ 2 ], puis en divisant cette somme par la durée de la séquence vidéo.
L'étape suivante 910 a pour objet de calculer la contrainte de débit à fixer pour les données de signaux de passage de l'image courante, au niveau de qualité courant PRQid[.e ]. Comme on l'a vu précédemment, cette contrainte de débit BconstraintU] est donnée par l'expression suivante : 1 Bconstraint[e ] = Rtarget x F + RTT
où RTT correspond à une estimation d'un délai aller-retour entre le client et le serveur représentatif des scénarii pratiques de transmission envisagés. Ce délai aller-retour peut par exemple être estimé en début de transmission puis être mis à jour périodiquement au cours de la transmission.
L'étape suivante 912 consiste à calculer la fonction débit-distorsion liant les signaux de passage codés pour l'image courante et la version précédemment reconstruite de l'image courante au niveau de qualité courant PRQid[ e ].
II s'agit d'engendrer un ensemble de points débit-distorsion avec un débit correspondant à un nombre d'octets de données de signaux de passage de l'image courante, et variant entre 0 et Bconstraint[2]. De plus, une mesure de distorsion adaptée aux données de signaux de passage est utilisée.
Comme décrit plus haut, cette distorsion est mesurée entre, d'une part, l'image courante reconstruite à l'étape 906 au niveau de qualité PRQid[2 ] en décodant les tranches et fragments de tranches PR de l'image courante jusqu'au niveau de qualité courant, et d'autre part, l'image courante obtenue en reconstruisant l'image courante via le décodage des données de signaux de passage contenues dans l'image courante.
Pour engendrer la fonction débit-distorsion DSPR(B), avec B variant de 0 à Bconstraint[Q ], on décode donc de façon incrémentale une quantité de données grandissante des signaux de passage de l'image courante et on reconstruit ainsi une multitude de versions de l'image courante, pour chaque quantité B de données de signaux de passage décodées. Cela fournit un ensemble de points débit-distorsion DSPR(B), V B E [0,...,Bconstraint[l]• Une fois ces points débit-distorsion obtenus, il reste à rechercher, à l'étape 914, le point correspondant à une distorsion minimale. Ce point de décodage optimal, noté BU], ], est donné par l'expression suivante : B[2] = ArgminosBSB..,[e1(DspR(B)) Plusieurs méthodes de recherche connues peuvent être mises en oeuvre pour trouver ce point, la plus simple consistant à les parcourir tous et à sélectionner celui qui fournit la distorsion minimale. Le point optimal ainsi trouvé correspond alors au point d'extraction qui devra être utilisé par un extracteur souhaitant extraire une portion de données codées de signaux de passage pour le niveau de qualité courant SPRQid[ e ] = PRQid[ 2 ]. Par conséquent, la tranche de données de signaux de passage comprises entre les positions B[2-1] et B[.e] constitue la contribution des données codées de signaux de passage de l'image courante au niveau de qualité couramment considéré SPRQid[ e ]. Ainsi, à l'étape suivante 916, une NAL unit contenant un fragment de signaux de passage est formée, et les données utiles de cette NAL unit consistent en les octets compris entre les positions BU-1] et B[.e] de la portion de train binaire correspondant à l'ensemble des signaux de passage de l'image courante. Une telle NAL unit est donc créée et écrite dans le train binaire SVC en cours de construction et elle est munie de l'identifiant de couche de qualité SPRQid[ e ]. On procède ensuite au test 902 décrit plus haut et, s'il est négatif, à l'étape d'incrémentation 904, laquelle ramène à l'étape de décodage 906.
Ainsi, les étapes précédentes, depuis l'étape de reconstruction de l'image courante via le décodage de tranches et fragments de tranches PR jusqu'au niveau de qualité courant, sont répétées pour tous les niveaux de qualité des tranches et fragments de tranches PR codés pour l'image courante P. Lorsque tous les niveaux de qualité ont ainsi été traités, la procédure se termine.

Claims (16)

REVENDICATIONS
1. Procédé d'allocation de débit à des signaux de passage d'un niveau de qualité donné d'une image appartenant à une séquence vidéo codée suivant un codage hiérarchique, vers un ou plusieurs niveaux de qualité supérieurs au niveau donné, ledit procédé étant caractérisé en ce qu'il consiste à appliquer (726, 728, 730) un mécanisme d'allocation de débit auxdits signaux de passage en fonction du résultat d'une allocation de débit (722) préalablement effectuée sur les niveaux de qualité de ladite image.
2. Procédé selon la revendication 1, dans lequel lesdits niveaux de qualité comportent des tranches et des fragments de tranches de ladite image, ledit procédé étant caractérisé en ce que ledit mécanisme d'allocation de débit comporte des étapes consistant à : - définir (726) un nombre de points de décodage desdits signaux de passage égal au nombre total de tranches et fragments de tranches de ladite image, de façon à former une pluralité de fragments de signaux de passage ; et - déterminer (728) la quantité de données utiles codées à associer à chaque fragment de ladite pluralité de fragments de signaux de passage en fonction d'un critère d'optimisation prédéterminé.
3. Procédé selon la revendication 2, caractérisé en ce que ledit mécanisme d'allocation de débit comporte en outre une étape consistant à attribuer (726) à chaque fragment de signaux de passage un indice de niveau de qualité égal à l'indice des fragments de tranches correspondants de l'image.
4. Procédé selon la revendication 2, caractérisé en ce que ledit critère d'optimisation prédéterminé est un critère débit-distorsion.
5. Procédé selon la revendication 4, caractérisé en ce que l'étape (726) de définition des points de décodage comporte des étapes consistant à : -calculer le débit moyen correspondant à un sous-flux de données d'image extrait à un niveau de qualité courant ; - calculer une contrainte de débit pour ledit niveau de qualité ; - former un ensemble de points d'une courbe débit-distorsion avec une quantité de données variant entre zéro et ladite contrainte de débit ; - rechercher le point de décodage compris entre zéro et ladite contrainte sur ladite courbe et donnant la distorsion minimale.
6. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que ledit codage hiérarchique est conforme à la norme SVC (Scalable Video Coding).
7. Dispositif d'allocation de débit à des signaux de passage d'un niveau de qualité donné d'une image appartenant à une séquence vidéo codée suivant un codage hiérarchique, vers un ou plusieurs niveaux de qualité supérieurs au niveau donné, ledit dispositif étant caractérisé en ce qu'il comporte des moyens pour appliquer un mécanisme d'allocation de débit auxdits signaux de passage en fonction du résultat d'une allocation de débit préalablement effectuée sur les niveaux de qualité de ladite image.
8. Dispositif selon la revendication 7, dans lequel lesdits niveaux de qualité comportent des tranches et des fragments de tranches de ladite image, ledit dispositif étant caractérisé en ce que lesdits moyens d'application dudit mécanisme d'allocation de débit sont adaptés à : -définir un nombre de points de décodage desdits signaux de passage égal au nombre total de tranches et fragments de tranches de ladite image, de façon à former une pluralité de fragments de signaux de passage ; et -déterminer la quantité de données utiles codées à associer à chaque fragment de ladite pluralité de fragments de signaux de passage en fonction d'un critère d'optimisation prédéterminé.
9. Dispositif selon la revendication 8, caractérisé en ce que lesdits moyens d'application dudit mécanisme d'allocation de débit sont en outre adaptés à attribuer à chaque fragment de signaux de passage un indice de niveau de qualité égal à l'indice des fragments de tranches correspondants de l'image.
10. Dispositif selon la revendication 8, caractérisé en ce que ledit critère d'optimisation prédéterminé est un critère débit-distorsion.
11. Dispositif selon la revendication 10, caractérisé en ce que les moyens d'application du mécanisme d'allocation de débit sont en outre adaptés à: - calculer le débit moyen correspondant à un sous-flux de données d'image extrait à un niveau de qualité courant ; - calculer une contrainte de débit pour ledit niveau de qualité ; - former un ensemble de points d'une courbe débit-distorsion avec une quantité de données variant entre zéro et ladite contrainte de débit ; - rechercher le point de décodage compris entre zéro et ladite contrainte sur ladite courbe et donnant la distorsion minimale.
12. Dispositif l'une quelconque des revendications 7 à 11, caractérisé en ce que ledit codage hiérarchique est conforme à la norme SVC (Scalable Video Coding).
13. Système de télécommunications comprenant une pluralité de dispositifs terminaux reliés à travers un réseau de télécommunications, caractérisé en ce qu'il comprend au moins un dispositif terminal équipé d'un dispositif d'allocation de débit selon l'une quelconque des revendications 7 à 12.
14. Moyen de stockage d'informations lisible par un ordinateur ou un microprocesseur conservant des instructions d'un programme informatique, caractérisé en ce qu'il permet la mise en oeuvre d'un procédé d'allocation de débit selon l'une quelconque des revendications 1 à 6.
15. Moyen de stockage d'informations selon la revendication 14, caractérisé en ce qu'il est partiellement ou totalement amovible.
16. Produit programme d'ordinateur pouvant être chargé dans un appareil programmable, caractérisé en ce qu'il comporte des séquences d'instructions pour mettre en oeuvre un procédé d'allocation de débit selon l'une quelconque des revendications 1 à 6, lorsque ce programme est chargé et exécuté par l'appareil programmable.
FR0753872A 2007-03-16 2007-03-16 Procede et dispositif d'allocation de debit dans une sequence video Expired - Fee Related FR2913844B1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR0753872A FR2913844B1 (fr) 2007-03-16 2007-03-16 Procede et dispositif d'allocation de debit dans une sequence video

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0753872A FR2913844B1 (fr) 2007-03-16 2007-03-16 Procede et dispositif d'allocation de debit dans une sequence video

Publications (2)

Publication Number Publication Date
FR2913844A1 true FR2913844A1 (fr) 2008-09-19
FR2913844B1 FR2913844B1 (fr) 2009-06-05

Family

ID=38894108

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0753872A Expired - Fee Related FR2913844B1 (fr) 2007-03-16 2007-03-16 Procede et dispositif d'allocation de debit dans une sequence video

Country Status (1)

Country Link
FR (1) FR2913844B1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9027046B2 (en) 2009-06-30 2015-05-05 Thomson Licensing Method and apparatus for peer-to-peer streaming of layered content

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1458196A2 (fr) * 2003-03-10 2004-09-15 Microsoft Corporation Mise en paquets d'un flux binaire vidéo FGS/PFGS
WO2006119436A2 (fr) * 2005-05-03 2006-11-09 Qualcomm Incorporated Commande de vitesse pour conception video a couches multiples

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1458196A2 (fr) * 2003-03-10 2004-09-15 Microsoft Corporation Mise en paquets d'un flux binaire vidéo FGS/PFGS
WO2006119436A2 (fr) * 2005-05-03 2006-11-09 Qualcomm Incorporated Commande de vitesse pour conception video a couches multiples

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
JIAN ZHOU ET AL: "FGS enhancement layer truncation with minimized intra-frame quality variation", MULTIMEDIA AND EXPO, 2003. PROCEEDINGS. 2003 INTERNATIONAL CONFERENCE ON 6-9 JULY 2003, PISCATAWAY, NJ, USA,IEEE, vol. 2, 6 July 2003 (2003-07-06), pages 361 - 364, XP010650651, ISBN: 0-7803-7965-9 *
KUI GAO ET AL: "Imprecise computation scheduling on scalable media stream delivery", INFORMATION, COMMUNICATIONS AND SIGNAL PROCESSING, 2003 AND FOURTH PACIFIC RIM CONFERENCE ON MULTIMEDIA. PROCEEDINGS OF THE 2003 JOINT CONFERENCE OF THE FOURTH INTERNATIONAL CONFERENCE ON SINGAPORE 15-18 DEC. 2003, PISCATAWAY, NJ, USA,IEEE, vol. 3, 15 December 2003 (2003-12-15), pages 1351 - 1355, XP010702299, ISBN: 0-7803-8185-8 *
LE LEANNEC F ET AL.: "CE3 response: switching between FGS layers", JOINT VIDEO TEAM (JVT) OF ISO/IEC MPEG & ITU-T VCEG (ISO/IEC JTC1/SC29/WG11 AND ITU-T SG16 Q6), 20TH MEETING, KLAGENFURT, AUSTRIA, 15-21 JULY 2006, 15 July 2006 (2006-07-15), ISO, GENEVA, CH, pages 1 - 32, XP030006516 *
LE LEANNEC F ET AL: "CE2 response: switching PR slices", JOINT VIDEO TEAM (JVT) OF ISO/IEC MPEG & ITU-T VCEG (ISO/IEC JTC1/SC29/WG11 AND ITU-T SG16 Q6), 20TH MEETING, KLAGENFURT, AUSTRIA, 15-21 JULY 2006, 15 July 2006 (2006-07-15), ISO, GENEVA, CH, pages 1 - 23, XP030006683 *
MIHAELA VAN DER SCHAAR ET AL: "A Hybrid Temporal-SNR Fine-Granular Scalability for Internet Video", IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, IEEE SERVICE CENTER, PISCATAWAY, NJ, US, vol. 11, no. 3, March 2001 (2001-03-01), XP011014178, ISSN: 1051-8215 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9027046B2 (en) 2009-06-30 2015-05-05 Thomson Licensing Method and apparatus for peer-to-peer streaming of layered content

Also Published As

Publication number Publication date
FR2913844B1 (fr) 2009-06-05

Similar Documents

Publication Publication Date Title
FR2904494A1 (fr) Procede et dispositif de compression d&#39;image, systeme de telecommunication comportant un tel dispositif et programme mettant en oeuvre un tel procede
FR2894421A1 (fr) Procede et dispositif de decodage d&#39;un flux video code suivant un codage hierarchique
FR2906433A1 (fr) Procedes et dispositifs de codage et de decodage d&#39;images, programme d&#39;ordinateur les mettant en oeuvre et support d&#39;informaton permettant de les mettre en oeuvre
FR2880743A1 (fr) Dispositif et procedes de codage et de decodage echelonnables de flux de donnees d&#39;images, signal, programme d&#39;ordinateur et module d&#39;adaptation de qualite d&#39;image correspondants
FR2894740A1 (fr) Dispositif de codage, procede de codage, systeme de decodage procede de decodage de donnees video
FR2932637A1 (fr) Procede et dispositif de codage d&#39;une sequence d&#39;images
EP2491719B1 (fr) Procédé d&#39;encapsulation de sous-flux de données, procédé de désencapsulation et programmes d&#39;ordinateur correspondants
FR2948845A1 (fr) Procede de decodage d&#39;un flux representatif d&#39;une sequence d&#39;images et procede de codage d&#39;une sequence d&#39;images
EP3707900B1 (fr) Procédé de formation d&#39;une séquence d&#39;images de sortie à partir d&#39;une séquence d&#39;images d&#39;entrée, procédé de reconstruction d&#39;une séquence d&#39;images d&#39;entrée à partir d&#39;une séquence d&#39;images de sortie, dispositifs, equipement serveur, equipement client et programmes d&#39;ordinateurs associés
FR3008840A1 (fr) Procede et dispositif de decodage d&#39;un train scalable representatif d&#39;une sequence d&#39;images et procede et dispositif de codage correspondants
FR2932050A1 (fr) Procede et dispositif de transmission de donnees video
EP1969854A1 (fr) Procede de codage et de decodage d&#39;une image ou d&#39;une sequence d&#39;images, dispositifs, programmes d&#39;ordinateur, et signal correspondants
FR2913163A1 (fr) Procede et dispositif de transmission de donnees video
EP2761871B1 (fr) Estimation de mouvement au niveau du décodeur par mise en correspondance de modèles
EP2716045B1 (fr) Procédé de codage et de décodage d&#39;images, dispositif de codage et de décodage d&#39;images et programmes d&#39;ordinateur correspondants
FR3026261A1 (fr) Procede de codage et de decodage d&#39;images integrales, dispositif de codage et de decodage d&#39;images integrales et programmes d&#39;ordinateur correspondants
FR2913844A1 (fr) Procede et dispositif d&#39;allocation de debit dans une sequence video
WO2012056148A1 (fr) Codage video echelonnable a partir d&#39;un epitome hierarchique
WO2020157413A1 (fr) Procédé et dispositif de codage et de décodage de données correspondant à une séquence vidéo
WO2009087331A2 (fr) Procede de decodage a complexite variable d&#39;un signal d&#39;images, terminal de decodage, procede de codage, dispositif de codage, signal et programmes d&#39;ordinateur correspondants
FR2910773A1 (fr) Procede et dispositif de codage de donnees video.
WO2011051596A1 (fr) Procédés et dispositifs de codage et de décodage d&#39;images, et programmes d&#39;ordinateur correspondants
FR3041851A1 (fr) Procede d&#39;allocation de debit, dispositif, codeur et programme d&#39;ordinateur associes
FR2899053A1 (fr) Procedes et dispositifs de codage et de decodage d&#39;images animees, systeme de telecommunication comportant un tel dispositif et programme mettant en oeuvre un tel procede
WO2020002795A1 (fr) Procédés et dispositifs de codage et de décodage d&#39;un flux de données représentatif d&#39;au moins une image

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20141128