Brevet FR2880744A1 — publié le 20060714

Procédé et dispositif de quantification progressive, procédé et dispositif de décodage, programmes informatiques, signaux et supports de données correspondants. 1. domaine de l'invention L'invention concerne le codage de données numériques, et plus particulièrement la quantification de données numériques, exprimées par exemple sous la forme d'un ensemble de coefficients à transmettre ou à stocker. L'invention concerne également, bien sûr, le décodage et la restitution des données ainsi quantifiées. Plus précisément, l'invention concerne la quantification progressive, permettant une reconstruction progressive des données, tout d'abord sous une forme basique, puis de plus en plus précise, ou raffinée. Cette technique est connue notamment sous le nom de compression scalable . Elle permet à un utilisateur de prendre connaissance des données (sous la forme basique) avant que l'ensemble des données soit reçu et/ou traité, et d'adapter la qualité requise au type de terminal et/ou aux besoins de l'utilisateur. L'invention trouve notamment des applications dans le codage de signaux vidéo, et en particulier pour le codage de coefficients obtenus par ondelettes 3D. On peut alors obtenir une compression de séquences vidéo sous forme scalable très efficace. Par la suite, on considère plus particulièrement le contexte d'un codeur vidéo scalable développé au sein du programme de développement MPEG21-SVC. Toutefois, la présente invention ne se limite pas à ce seul contexte d'un codeur vidéo, mais à tout codeur scalable, par exemple pour le codage de signaux audio, et plus généralement de tous signaux pour lesquels une quantification progressive présente un intérêt. 2. les systèmes vidéo scalables Actuellement, la plupart des codeurs vidéo génèrent un seul flux compressé correspondant à l'intégralité de la séquence codée. Si plusieurs clients 30 souhaitent exploiter le fichier compressé pour décodage et visualisation, ils devront pour cela télécharger (ou streamer ) le fichier compressé complet. Or dans un système hétérogène (par exemple Internet), tous les clients ne disposent pas du même type d'accès aux données: la bande passante, les capacités de traitement, les écrans des différents clients peuvent être très différents (par exemple, sur un réseau Internet, un des clients pourra disposer d'un débit ADSL à 1024 kb/s et d'un micro- ordinateur puissant alors qu'un autre ne bénéficiera que d'un accès modem et d'un assistant personnel électronique (PDA)). Une solution évidente à ce problème consiste à générer plusieurs flux compressés correspondant à différents débits/résolutions de la séquence vidéo. Cette technique est connue sous le nom de simulcast . Cette solution est bien sûr sous-optimale puisque les mêmes informations sont encodées plusieurs fois. Plus récemment sont apparus des algorithmes de codage vidéo dit scalables (à qualité adaptable et résolution spatio-temporelle variable) pour lesquels le codeur génère un flux compressé en plusieurs couches, chacune de ses couches étant emboîtée dans la couche de niveau supérieur. De tels codeurs sont très utiles pour toutes les applications pour lesquelles la génération d'un seul flux compressé, organisé en plusieurs couches de scalabilité, peut servir à plusieurs clients de caractéristiques différentes, et par exemple: - services de vidéo à la demande (en anglais video on demand , ou VOD), pour des terminaux de type UMTS, PC ADSL, TV ADSL... mobilité de session (reprise sur un PDA d'une session vidéo commencée sur un téléviseur; ou sur un mobile UMTS d'une session commencée sur le réseau GPRS) ; - continuité de session (partage de la bande passante avec une nouvelle application) ; télévision haute définition (encodage unique pour servir des clients à une définition standard (SD) ou à une haute définition (HD) ; visioconférence (encodage unique pour des clients UMTS et des clients 30 Internet). Dans ce cadre, les algorithmes basés sur les transformations par ondelettes se sont imposés. Ils sont ainsi aujourd'hui en cours d'adoption par MPEG21. Plus précisément, le modèle qui a été retenu récemment par MPEG-21 SVC (décrit notamment dans le document "Scalable Video Model 3.0", par J. Reichel, M. Wien, H. Schwarz, ISO/IEC JTC 1/SC 29/ WG 11/N6716, October 2004, Palma de Mallorca, Spain) est basé sur un codeur scalable fortement orienté vers des solutions de type AVC. Cette nouvelle norme sera capable de fournir des flux scalables à grain moyen dans les dimensions temporelle, spatiale, et en qualité. Selon cette approche, on distingue les informations de mouvement et les informations de texture. Afin de réaliser une adaptation en débit, les informations de texture sont codées à l'aide d'un schéma progressif: codage d'un premier niveau de qualité minimale (appelé "Base Layer" en anglais, ou Couche de Base) - codage de niveaux de raffinement progressif (appelés Enhancement Layer en anglais, ou Couche de Réhaussement). La technique la plus courante pour coder de façon progressive une information est de réaliser un codage par plan de bit. Une autre approche, retenue dans le SVM de MPEG21-SVC, est de réaliser des quantifications successives sur le signal. Dans un premier temps (n=0), un signal S est quantifié à l'aide d'un pas de quantification Q(0) puis les informations de quantification sont codées. Sa version reconstruite à l'aide des informations de quantification est Rec(0). On effectue ensuite une série d'itérations (n>0). On dispose pour cela de la 25 reconstruction obtenue à l'étape précédente de quantification: Rec(n-1). On définit alors un résidu Res(n) = S-Rec(n-1). Ce résidu est quantifié par le pas de quantification Q(n) puis les informations de quantification sont codées. La version reconstruite DR(n) du signal de résidu est alors ajouté à la reconstruction précédente Rec(n1) pour définir le nouveau signal reconstruit: Rec(n) = Rec(n-1) + DR(n). L'évolution des pas de quantification Q(n) peut être libre, mais de façon pratique, on prend usuellement Q(n) = Q(n-1)/2. La quantification d'une valeur s'effectue par la formule suivante: + signe(x) * f * Q Quantif: x H Quantif (x,Q) Q où f E [o,,}4] est un paramètre pour définir une dead-zone autour de la valeur 0, de façon à favoriser l'attribution d'une valeur 0, et l j représente l'opération d'arrondi à l'entier inférieur le plus proche (c'est-à-dire l'opérateur de partie entière), et signe(x) vaut 1 si x>0, vaut -1 si x La quantification inverse s'effectue à partir de la formule suivante: 10 InvQuantif: i H InvQuantif (i,Q) = i * Q La figure 1 illustre le principe d'un tel schéma de codage par quantification successive. Du fait du nombre de valeurs limitées lors d'une requantification (typiquement avec une décroissance par deux du pas de quantification), un raffinement utilise des valeurs -1, 0 ou 1, et un codage pour un signifiant utilise les valeurs -1, 0, 1. De même que pour le codage par plan de bits, on peut astucieusement regrouper les informations de codage des informations de raffinement de quantification en passe de signifiance et en passe de raffinement. 3. Inconvénients de la technique antérieure La solution utilisée actuellement est un système de codage par quantification successive des résidus avec un pas de quantification qui est divisé par deux à chaque itération. L'utilisation du paramètre f utilisé pour définir une deadzone induit alors des défauts dans la quantification effectuée. On peut ainsi voir sur la figure 1 que, lors du raffinement d'un coefficient, on utilise des valeurs de reconstruction qui sont liées à des intervalles plus grand que les intervalles de la quantification précédente. Il n'y a donc pas d'emboîtement des intervalles de quantification. Il s'ensuit une perte d'efficacité : la valeur reconstruite pour un intervalle n'est pas optimale puisqu'elle ne correspond pas à la valeur la plus probable. Par ailleurs, on peut voir sur cette même figure 1 que pour certains coefficients certaines valeurs ne sont pas probables (par exemple le raffinement 11 en -1 dans certains cas). Les inventeurs ont observé que ces problèmes ont deux origines: les intervalles de quantification successive ne sont pas emboîtés; l'utilisation du paramètre de dead-zone pour la quantification fait déplacer les points de reconstruction qui servent de centre pour la quantification ultérieure et peut rendre improbables certains états. 4. objectifs de l'invention 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 fournir une technique de codage progressif d'un coefficient, par quantification successive, qui soit plus efficace, en termes de qualité et/ou débit, que les techniques connues. Un autre objectif de l'invention est de fournir une telle technique, qui n'introduise pas de complexité particulière, ni de traitements importants. Notamment, un objectif de l'invention est de permettre un décodage simple et efficace des données quantifiées. Un objectif particulier de l'invention est de fournir une telle technique, qui soit adaptée à un codeur et à un décodeur de type MPEG21- SVC. 5. caractéristiques principales de l'invention Ces objectifs, ainsi que d'autres qui apparaîtront plus clairement par la suite, sont atteints à l'aide d'un procédé de quantification progressive de coefficients, par raffinements de quantification successifs comprenant, après une étape de quantification initiale réalisée sur chacun desdits coefficients avec un pas de quantification prédéterminé et délivrant des données quantifiées, au moins une itération des étapes suivantes: - classement de signifiance des coefficients, affectant à chacun desdits coefficients une information contextuelle comprenant un type dit non signifiant, lorsque lesdites données quantifiées sont nulles, et un type dit signifiant; détermination d'un résidu, correspondant à une différence entre un coefficient et une valeur reconstruite à l'aide des données quantifiées aux étapes de quantification précédentes; - raffinement, par quantification dudit résidu, avec un pas de quantification inférieur à celui utilisé à l'étape de quantification précédente, affectant une des trois valeurs -1, 0 ou 1, Selon l'invention, un coefficient est dit raffiné lors d'une itération donnée si ladite valeur attribuée lors de ladite étape de raffinement est non nulle. Pour chaque itération courante, au moins jusqu'à l'avant-dernière itération, et pour chaque coefficient raffiné de ladite itération courante, lors de l'itération suivante: l'étape de classement affecte audit coefficient le type signifiant; - les étapes suivantes de détermination d'un résidu et de raffinement ne sont pas mises en oeuvre. De façon avantageuse, on affecte à un coefficient raffiné un troisième type, dit signifiant raffiné. Ainsi, selon l'invention, on réalise un codage par quantification progressive en prenant en compte une information contextuelle de Signifiant Raffiné permettant de ne pas coder d'information de raffinement successivement à une passe où un coefficient a déjà été raffiné. Comme on le verra par la suite, cela permet d'optimiser, le codage, mais également le décodage. Notamment, au niveau du décodage, on prendra en compte l'information contextuelle de Signifiant Raffiné, ce qui permettra de ne pas avoir à lire d'information de raffinement successivement à une passe où un coefficient a déjà été raffiné. Dans un premier mode de réalisation de l'invention, lors de la dernière itération, aucun traitement n'est effectué. Le coefficient reste donc du type signifiant raffiné. Selon un second mode de réalisation, pour chaque coefficient raffiné de l'avant-dernière itération donnée, l'étape de classement affecte également audit coefficient le type signifiant lors de la dernière itération. Selon une caractéristique avantageuse de l'invention, lesdites étapes de quantification mettent une procédure tendant à favoriser l'affectation d'une valeur 0. En d'autres termes, on peut créer des zones d'attraction ( dead- zone ) en anglais) qui attire la valeur 0, moins coûteuse dans le codage. La mise en oeuvre de cette zone d'attraction peut être sélective. Ainsi, selon un mode de réalisation préférentiel de l'invention, lesdites 10 étapes de quantification mettent en oeuvre une équation de quantification telle que: Quantif: x H Quantif (x, Q)= lx + signe(x) * f * Q [p-, où f E {0,%}, définit, si f=0, ou non, si f=1/2, une plage d'attraction à la valeur 0, Q est un facteur de quantification, x est un coefficient ou un résidu à quantifier, signe(x) vaut 1 si x>0, vaut -1 si x De façon avantageuse, ladite étape de détermination d'un résidu comprend une étape de quantification inverse, pour déterminer ladite valeur reconstruite à 20 l'aide de l'équation suivante: R(i),S(i) H i* (1 f)* 3Q où R(i) est le résidu de l'itération concernée, S(i) est une information de signifiance pour l'itération concernée, i vaut -1, O ou 1. On notera que cette valeur 2j est différente de celles utilisées classiquement en quantification progressive. L'invention concerne également un dispositif de codage de coefficients numériques, comprenant des moyens de quantification progressive mettant en oeuvre le procédé décrit ci-dessus. L'invention concerne encore un procédé de décodage de coefficients quantifiés de façon progressive par raffinements de quantification successifs, comprenant une étape de quantification inverse initiale réalisée sur des données de reconstruction de coefficients avec un pas de quantification prédéterminé et délivrant un coefficient reconstruit et une information contextuelle, et au moins une itération des étapes suivantes: - quantification inverse d'un résidu, correspondant à une différence entre un coefficient et une valeur reconstruite à l'aide de données complémentaires de reconstruction; - mise à jour dudit coefficient reconstruit, en fonction dudit résidu, si celui-ci est non nul. Selon l'invention, chaque itération comprend une étape d'affectation d'une information contextuelle à chaque coefficient, choisie parmi les types suivants: - un type dit non signifiant, lorsque ledit symbole reconstruit est nul; - un type dit signifiant raffiné, lorsque ledit résidu de l'étape courante est non nul; et - un type dit signifiant, sinon. Pour chaque itération courante, au moins jusqu'à l'avant-dernière itération, et pour chaque coefficient de type signifiant raffiné de ladite itération courante, 20 lors de l'itération suivante: - l'étape de classement affecte audit coefficient le type signifiant; les étapes suivantes de quantification inverse d'un résidu et de mise à jour ne sont pas mises en oeuvre. De façon avantageuse, lorsque toutes les itérations ont été effectuées, on 25 affecte un décalage sélectif audit coefficient reconstruit, ledit décalage étant fonction du type dudit coefficient reconstruit. Cela permet d'améliorer la qualité de reconstruction. L'invention concerne également un dispositif de décodage de coefficients quantifiés de façon progressive par raffinements de quantification successifs, comprenant des moyens de quantification inverse mettant en oeuvre le procédé de décodage décrit ci-dessus. L'invention concerne également des programmes informatiques comprenant des instructions de code de programme pour l'exécution des étapes des procédés de quantification et de décodage décrit ci-dessus, lorsqu'ils sont exécutés par un microprocesseur. L'invention concerne encore un signal de données quantifiées selon un procédé de quantification progressive de coefficients décrit ci-dessus, comprenant des données permettant une première reconstruction de coefficients et des données de résidus permettant d'affiner ladite reconstruction. Un tel signal comprend une information contextuelle pour à chaque coefficient, choisie parmi les types suivants: - un type dit non signifiant: un type dit signifiant raffiné ; - un type dit signifiant. Enfin, l'invention concerne les supports de données portant au moins un signal de données tel que décrit ci-dessus. 6. liste des figures D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation préférentiel de l'invention, donnée à titre de simple exemple illustratif et non limitatif, et des dessins annexés parmi lesquels: la figure 1, discutée en préambule, illustre le principe d'un codage par quantification successive; la figure 2 présente la structure générale d'un dispositif de quantification selon l'invention; les figures 3 et 4 sont des diagrammes d'états illustrant l'attribution des informations contextuelles selon que f vaut 0 (figure 3) ou 1/2 (figure 4) ; la figure 5 est un organigramme simplifié du procédé de quantification mis en oeuvre par le dispositif de la figure 2; la figure 6 est un organigramme précisant le codage d'un résidu de la figure 4; la figure 7 présente la structure générale d'un dispositif de décodage 5 selon l'invention; la figure 8 est un organigramme simplifié du procédé de décodage mis en oeuvre par le dispositif de la figure 7; la figure 9 est un organigramme précisant la quantification inverse d'un résidu de la figure 8; la figure 10 représente schématiquement la reconstruction adaptée des niveaux de reconstruction adaptée des niveaux de reconstruction suite au décodage progressif des coefficients. 7. Description d'un mode de réalisation particulier 7.1 principes généraux Le présent mode de réalisation est destiné au codage vidéo, et plus précisément à MPEG-21. Elle vise donc à améliorer la technique décrite en préambule, tout en s'appuyant sur celle-ci. L'invention propose donc une technique de quantification successive avec introduction d'un contexte supplémentaire (Signifiant Raffiné) afin d'améliorer les 20 performances d'un codage progressif. Comme on le verra par la suite, outre (et grâce à) la prise en compte de ce nouveau contexte, l'invention propose les spécificités suivantes: utilisation d'intervalles de quantification emboîtés adaptatifs et utilisation d'un mécanisme de dead-zone ; et reconstruction adaptée au sein des intervalles de quantification. L'utilisation d'intervalles de quantification emboîtés adaptatifs permet d'améliorer les performances en compression en limitant les symboles autorisés au minimum nécessaire. L'utilisation d'une dead-zone permet d'augmenter l'efficacité de 30 compression en favorisant l'apparition de coefficient nuls. L'utilisation d'une reconstruction adaptée au sein des intervalles permet de prendre en compte la statistique non uniforme au sein des intervalles de quantification et ainsi d'améliorer la qualité de reconstruction. Selon une caractéristique particulière de l'invention, on prévoit en outre un déplacement de la valeur de reconstruction associée à un intervalle de quantification par ajout au décodeur d'une valeur de déplacement de la valeur reconstruite, cette valeur de déplacement dépendant de l'état du coefficient (NS (non signifiant), S (signifiant), SR (signifiant raffiné)). 7.2 quantification, ou codage. progressif Le codeur se base sur un codage par quantification successive. La structure de base d'un tel codeur est illustré en figure 2. Ce codeur comprend des moyens de traitement 21, recevant des coefficients à coder 22 (représentatifs de la texture du signal vidéo), et délivrant des données de quantification 23 permettant une quantification inverse progressive. Le procédé de codage est stocké dans une mémoire de programme 24. Une mémoire vive 25 permet la mémorisation des données intermédiaires et des données à transmettre ou à stocker. Dans le présent mode de réalisation, le codeur utilise les mêmes modes de quantification que ceux utilisés dans AVC ( Advanced Video Coding (décrit notamment dans le document ITU-T et ISO/IEC JTC1, "Advanced Video Coding for Generic Audiovisual Services", ITU-T Recommendation 11.264 ISO/IEC 14496-10 AVC, 2003)), et mis en oeuvre dans MPEG-21 SVC. Cela permet une réutilisation maximale d'outils déjà existants. Ainsi, la quantification au codeur utilisée est la suivante: x + signe(x) * f * Q Quantif: x i > Quant if (x, Q)= el, mais avec f E {o, 3.} Lors de chaque itération, on reconstruit le coefficient de l'itération précédente, par quantification inverse, de la façon suivante: - dans la première étape de quantification: InvQuantif: i H InvQuantif (i, Q) - (i + signe(i) * () - f)) * Q, +1 sii>0 avec signe(i) _ 0 si i = 0 -1sii Par rapport aux approches connues fonctionnant par passes de signifiance et de raffinement, on constate que dans la passe de raffinement, le raffinement peut être omis ( skip ) Si le type du coefficient est SR ( Signifiant Raffiné ). L'évolution du type de coefficient est définie par les diagrammes d'état présentés sur les figures 3 et 4. On distingue trois états (types) possibles: NS: non signifiant; S: signifiant; SR: signifiant raffiné. L'introduction du type SR (Signifiant Raffiné) permet ainsi d'utiliser des intervalles de quantification emboîtés et d'avoir une efficacité en compression grâce à la définition de la syntaxe nécessaire suivant les modes des coefficients. Dans le cas f=0 (figure 3) on part de la quantification initiale 31 pour atteindre soit le type NS (si le coefficient quantifié considéré vaut 0), soit le type SR (si le coefficient quantifié considéré est non nul). Lorsque le type est NS, et que l'on code (32) une autre valeur 0, le type reste NS. En revanche, si on code un nouveau signifiant (33), le type devient SR. Lors de l'itération suivante (sauf éventuellement s'il s'agit de la dernière), le type devient S (opération de saut, ou skip 34). Lorsque le type est S, deux situations sont possibles: si le raffinement à coder vaut 0 (35), le type reste S; si le raffinement à coder vaut 1 ou -1 (36), le type devient SR. Le tableau ci-après récapitule les différents cas possibles. e SR SR RI) RI) 9 S sll I s 4t) I s q.el s I't àTI S0 e el SA ROI s}a IRP Rfe) s *l) SR s fe g l p R 5 1 S S sR!ô SR S S S SR S S SR S sR S La démarche est la même dans le cas où f=1/2, comme illustré en figure 4, si ce n'est que, partant de la quantification initiale, on atteint le type S (au lieu de SR) si le coefficient quantifié est non nul. Le tableau ci-après récapitule les différents cas possibles. S i1 s s É É1 RTL_ É +1 R É1 R N S SR SR SR S SR NS SR S S SR S SR S S SR S SR S Un diagramme bloc de l'encodage progressif est illustré en figure 5. On traite un coefficient initial x 51. Pour cela: étape 52: on initialise le niveau courant n à 0 ainsi que le pas de quantification utilisé à une valeur Q0. Cette valeur est un paramètre du codeur permettant de définir le débit (qualité) minimal(e) de reconstruction; étape 53: on réalise une quantification du coefficient à l'aide de la formule: x Q Quantif: x H Quant if (x,Q) + signe(x) * f * a - Q et l'on définit alors la valeur reconstruite par: InvQuantif: i H InvQuantif (i,Q) = (i + signe(i) * (V2 f)) * Q où i est l'indice de quantification. L'indice de quantification est alors envoyé au module de codage 25 entropique. type Caced Type Caded Type Le type de chaque coefficient est alors défini comme étant: - f=0. Si l'indice de quantification est 0, le type du coefficient est NS, sinon, il est SR; - f=1/2. Si l'indice de quantification est 0, le type du coefficient est 5 NS, sinon, il est S. étape 54: on itère le processus: incrémentation de 1 de n, et division par 2 du pas de quantification étape 55: on réalise la quantification du résidu, c'est-à-dire la différence entre le coefficient original et le coefficient reconstruit, par la même formule de quantification. On ajoute ensuite à la valeur reconstruite du coefficient la valeur reconstruite correspondant au raffinement calculé ; ensuite, on effectue l'itération suivante (56), jusqu'à un critère d'arrêt prédéterminé (nombre d'itérations ou niveau de qualité par exemple). La figure 6 illustre de façon plus précise la quantification du résidu. Les informations en entrée 61 sont le coefficient original, le coefficient reconstruit et le type du coefficient. On effectue les opérations suivantes: Si le type du coefficient est SR (62), son nouveau type est S (63) et l'on 20 passe alors à l'itération suivante (64). Sinon on quantifie le résidu (65) ; - La quantification 65 du résidu se fait à l'aide de la formule x+ signe(x) * f *Q Quantif: x H Quantif (x, Q) = De par la construction, les seules valeurs possibles pour l'indice de quantification i sont -1, 0 ou 1; Si le type du coefficient est S (66), on envoie (67) alors au codeur entropique le symbole R(i). Sinon, on envoie (68) le symbole S(i) Le type du coefficient est remis à jour: - Le type du coefficient est S: si i=0 (69), le type devient S (610), sinon il devient SR (611) ; Le type du coefficient n'est pas S (donc du type NS) : si i=0 (612), le type devient NS (613), sinon il devient SR (614) ; Le coefficient reconstruit est remis à jour (615) via l'ajout du raffinement de quantification: R(i)S(i) H> i* (1 f) * 3Q 2 - Itération suivante 64: on incrémente n, et on divise Q par deux. 7.3 décodeur, ou quantification inverse, progressif Le décodeur fonctionne comme un décodeur d'un système de codage par quantification successive, en utilisant les évolutions de mode présentées dans la section précédente. La figure 7 illustre schématiquement un tel décodeur. Ce codeur comprend des moyens de traitement 71, recevant des coefficients à décoder 72, et délivrant des données de reconstruction 73 permettant une quantification inverse progressive. Le procédé de décodage est stocké dans une mémoire de programme 74. Une mémoire vive 75 permet la mémorisation des données intermédiaires et des données de reconstruction du signal original. On notera que les évolutions selon l'invention ne nécessitent pas, dans ce mode de réalisation, une modification du format binaire des flux générés, mais seulement d'adapter la grammaire d'encodage et de décodage par prise en compte du nouveau contexte SR introduit. En effet dans le cas d'un contexte SR aucune information n'est écrite ou lue dans le flux binaire. Les étapes principales de la reconstruction d'un coefficient sont illustrées sur la figure 8. Les informations relatives au coefficient à reconstruire 81 sont introduites, puis: On initialise i à 0, et le pas de quantification Q à Qo (82) ; La quantification inverse initiale 83 est effectuée dans un premier temps. Suivant la valeur de f, les types de coefficients sont initialisés: Si, 0: si le coefficient reconstruit est nul, son type est NS, sinon il est SR; - Si J1/2: si le coefficient reconstruit est nul, son type est NS, sinon il est S; On passe à l'étape suivante 84: n est incrémenté, et le pas de quantification Q est divisé par 2; La quantification inverse 85 du résidu est effectuée et le coefficient reconstruit est mis à jour 86. Les étapes de quantification inverse des résidus et de mise à jour du coefficient reconstruit sont illustrées sur la figure 9: On initialise 91 le système avec le coefficient reconstruit suite au mode de quantification initial, son type, ainsi que le pas de quantification courant; Si le type du coefficient est SR (92), alors son type devient S (93), et on passe à l'itération suivante 94; Sinon, on teste le type (95) pour savoir s'il s'agit du type S ou NS. Pour chaque cas respectif, on lira alors un symbole R(i) (96) ou bien S(i) (97) ; Si le symbole lu est nul (98, 910), on met à jour le type à s (911) ou NS (912) respectivement. Sinon, on met à jour le coefficient reconstruit à l'aide de l'incrément de résidu (913, 914) définit par: R(i) S(i) i > i * _ f) * , Q, le type devient SR (915, 916) et on passe à l'itération suivante 94. Pour l'itération suivante 94, on incrémente n, et l'on divise le pas de quantification Q par 2. Selon un mode de réalisation avantageux de l'invention, et afin d'améliorer le niveau de reconstruction au décodage, un affinage des valeurs de reconstruction peut être effectué comme illustré en figure 10, en ajoutant au coefficient reconstruit: 0 si le coefficient reconstruit est nul; - fd * signe(coeff) * Q1 si le coefficient reconstruit est non nul et de type S(101); fd * signe(coeff) * Q2 si le coefficient reconstruit est non nul et de type SR (102) où Q, représente la valeur du pas de quantification utilisée dans la dernière passe de décodage, et fd représente un paramètre de positionnement du niveau de reconstruction. Le paramètre fd prend ses valeurs dans l'intervalle [0, 1]. La figure 10 illustre la reconstruction ainsi obtenue, avec f=0 etfd=0,5. 7.4 applications Comme déjà mentionné, l'invention s'applique avantageusement au codage vidéo, notamment dans le cadre de MPEG-21. Dans ce cadre, l'invention s'applique au codage et au décodage, mais également au stockage, à la transmission et à la réception de signaux scalables, ainsi qu'à ces signaux en eux-mêmes (caractérisés par la présence de la troisième information contextuelle) et aux supports de données (par exemple les CD et DVD, les supports magnétiques, les mémoires, les serveurs de données,...) portant de tels signaux. Par ailleurs, l'approche de l'invention peut être mise en oeuvre pour d'autres types de codage progressifs, et par exemple pour des signaux audio. 1$ REVENDICATIONS 1. Procédé de quantification progressive de coefficients, par raffinements de quantification successifs comprenant, après une étape de quantification initiale (31; 41; 53) réalisée sur chacun desdits coefficients avec un pas de quantification prédéterminé et délivrant des données quantifiées, au moins une itération (56) des étapes suivantes: - classement de signifiance (55) des coefficients, affectant à chacun desdits coefficients une information contextuelle comprenant un type dit non signifiant, lorsque lesdites données quantifiées sont nulles, et un type dit signifiant; détermination d'un résidu (55), correspondant à une différence entre un coefficient et une valeur reconstruite à l'aide des données quantifiées aux étapes de quantification précédentes; - raffinement (55), par quantification dudit résidu, avec un pas de quantification inférieur à celui utilisé à l'étape de quantification précédente, affectant une des trois valeurs -1, 0 ou 1, caractérisé en ce qu'un coefficient est dit raffiné lors d'une itération donnée si ladite valeur attribuée lors de ladite étape de raffinement est non nulle, et en ce que, pour chaque itération courante, au moins jusqu'à l'avant-dernière itération, et pour chaque coefficient raffiné de ladite itération courante, lors de l'itération suivante: l'étape de classement affecte audit coefficient le type signifiant (34; 63) ; les étapes suivantes (65, 66, 67, 68, 69, 610, 611, 612, 613, 614, 615) de détermination d'un résidu et de raffinement ne sont pas mises en oeuvre. 2. Procédé de quantification selon la revendication 1, caractérisé en ce que pour chaque coefficient raffiné de ladite avant- dernière itération, lors de la dernière itération, l'étape de classement affecte également audit coefficient le type signifiant. 3. Procédé de quantification selon l'une quelconque des revendications 1 et 2, caractérisé en ce que lesdites étapes de quantification (65) mettent une procédure tendant à favoriser l'affectation d'une valeur 0. 4. Procédé de quantification selon la revendication 3, caractérisé en ce que lesdites étapes de quantification mettent en oeuvre une équation de quantification telle que: Quantif: x a Quant if (x, Q) = x + signe(x) * f * Q où f E {0,12}, définit, si f=0, ou non, si f=1/2, une plage d'attraction à la valeur 0, Q est un facteur de quantification, x est un coefficient ou un résidu à quantifier. 5. Procédé de quantification selon la revendication 4, caractérisé en ce que ladite étape de détermination d'un résidu (55) comprend une étape de quantification inverse, pour déterminer ladite valeur reconstruite à l'aide de l'équation suivante: R(iS(i)a i* (1 f)* 3Q où R(i) est le résidu de l'itération concernée, S(i) est une information de signifiance pour l'itération concernée, i vaut -1, 0 ou 1. 6. Dispositif de quantification progressive de coefficients numériques, par raffinements de quantification successifs comprenant des moyens de quantification initiale de chacun desdits coefficients avec un pas de quantification prédéterminé, délivrant des données quantifiées, des moyens de raffinement (21) réalisant au moins une itération des étapes suivantes: - classement de signifiance des coefficients, affectant à chacun desdits coefficients une information contextuelle comprenant un type dit non signifiant, lorsque lesdites données quantifiées sont nulles, et un type dit signifiant; détermination d'un résidu, correspondant à une différence entre un coefficient et une valeur reconstruite à l'aide des données quantifiées aux étapes de quantification précédentes; raffinement, par quantification dudit résidu, avec un pas de quantification inférieur à celui utilisé à l'étape de quantification précédente, affectant une des trois valeurs -1, 0 ou 1, un coefficient étant dit raffiné si ladite valeur est non nulle, caractérisé en ce que lesdits moyens de raffinement (21) associe à un coefficient une information de coefficient raffiné lors d'une itération donnée si la valeur attribuée lors de ladite étape de raffinement est non nulle et, pour chaque itération courante, au moins jusqu'à l'avant-dernière itération, et pour chaque coefficient raffiné de ladite itération courante, lors de l'itération suivante: affectent audit coefficient le type signifiant; ne mettent pas en oeuvre les étapes suivantes de détermination d'un résidu et de raffinement. 7. Procédé de décodage de coefficients quantifiés de façon progressive par raffinements de quantification successifs, comprenant une étape de quantification inverse initiale (83) réalisée sur des données de reconstruction de coefficients avec un pas de quantification prédéterminé et délivrant un coefficient reconstruit et une information contextuelle, et au moins une itération (87) des étapes suivantes: quantification inverse d'un résidu (85), correspondant à une différence entre un coefficient et une valeur reconstruite à l'aide de données complémentaires de reconstruction; - mise à jour dudit coefficient reconstruit (86), en fonction dudit résidu, si celui-ci est non nul; caractérisé en ce que chaque itération comprend une étape d'affectation d'une information contextuelle à chaque coefficient, choisie parmi les types suivants: un type dit non signifiant (912), lorsque ledit symbole reconstruit est nul; - un type dit signifiant raffiné (915), lorsque ledit résidu de l'étape courante est non nul; et 2880744 et un type dit signifiant (911, 93), sinon, et en ce que, pour chaque itération courante, au moins jusqu'à l'avant-dernière itération, et pour chaque coefficient de type signifiant raffiné de ladite itération courante (92), lors de l'itération suivante: l'étape de classement affecte audit coefficient le type signifiant (93); les étapes suivantes (95, 96, 97, 98, 99, 910, 911, 912, 613, 914, 915, 916) de quantification inverse d'un résidu et de mise à jour ne sont pas mises en oeuvre. 8. Procédé de décodage selon la revendication 7, caractérisé en ce que, lorsque toutes les itérations ont été effectuées, on affecte un décalage sélectif (101, 102) audit coefficient reconstruit, ledit décalage étant fonction du type dudit coefficient reconstruit. 9. Dispositif de décodage de coefficients quantifiés de façon progressive par raffinements de quantification successifs, comprenant des moyens de quantification inverse initiale réalisée sur des données de reconstruction de coefficients avec un pas de quantification prédéterminé et délivrant un coefficient reconstruit et une information contextuelle, et des moyens (71) de reconstruction effectuant au moins une itération des étapes suivantes: quantification inverse d'un résidu, correspondant à une différence entre un coefficient et une valeur reconstruite à l'aide de données complémentaires de reconstruction; mise à jour dudit coefficient reconstruit, en fonction dudit résidu, si celui-ci est non nul; caractérisé en ce que, à chaque itération, lesdits moyens (71) de reconstruction 25 mettent en oeuvre une étape d'affectation d'une information contextuelle à chaque coefficient, choisie parmi les types suivants: - un type dit non signifiant, lorsque ledit symbole reconstruit est nul; un type dit signifiant raffiné, lorsque ledit résidu de l'étape courante est non nul; et - un type dit signifiant, sinon, 2880744 22 et en ce que, pour chaque itération courante, au moins jusqu'à l'avant- dernière itération, et pour chaque coefficient de type signifiant raffiné de ladite itération courante, lors de I'itération suivante, lesdits moyens de reconstruction: affecte audit coefficient le type signifiant; ne mettent pas en oeuvre les étapes suivantes de quantification inverse d'un résidu et de mise à jour. 10. Programme informatique comprenant des instructions de code de programme pour l'exécution des étapes du procédé de quantification selon l'une quelconque des revendications 1 à 4 lorsque ledit programme est exécuté dans ou par un microprocesseur. 11. Programme informatique comprenant des instructions de code de programme pour l'exécution des étapes du procédé de décodage selon l'une quelconque des revendications 7 et 8 lorsque ledit programme est exécuté par un microprocesseur. 12. Signal de données quantifiées selon un procédé de quantification progressive de coefficients selon l'une quelconque des revendications 1 à 4, comprenant des données permettant une première reconstruction de coefficients et des données de résidus permettant d'affiner ladite reconstruction, caractérisé en ce qu'il comprend une information contextuelle pour chaque 20 coefficient, choisie parmi les types suivants: un type dit non signifiant: - un type dit signifiant raffiné ; - un type dit signifiant. 13. Support de données portant au moins un signal de données quantifiées selon un procédé de quantification progressive de coefficients selon l'une quelconque des revendications 1 à 4, comprenant des données permettant une première reconstruction de coefficients et des données de résidus permettant d'affiner ladite reconstruction, caractérisé en ce qu'il comprend une information contextuelle pour chaque coefficient, choisie parmi les types suivants: z3 un type dit non signifiant: un type dit signifiant raffiné ; un type dit signifiant.