Brevet FR2857204A1 — publié le 20050107

L'invention se rapporte à un dispositif et à un procédé de compression ou de décompression d'images numériques, notamment dans le cadre de la norme MPEG4. La compression d'une image numérique réduit la quantité de données nécessaires à, par exemple, sa transmission via un réseau de télécommunication comme le réseau Internet. Certaines normes de compression, telle que la norme MPEG4 (Motion Picture Expert Group), utilisent une compression dite multicouche telle qu'une image source est compressée au moyen d'une couche de base, codant une image dite de base, et d'une couche d'amélioration, codant l'écart ou le résidu entre l'image source et l'image de base. Plus précisément, la couche de base est obtenue au moyen d'un procédé de compression, utilisant un pas QP de quantification donné, tandis que la couche d'amélioration est obtenue par un simple codage du résidu entre l'image source et l'image de base. Par exemple, dans le cadre de la norme MPEG4, il est ainsi connu d'utiliser des procédés de compression du type h263 20 ou MPEG2 et un procédé de codage dit Variable Length Coding (VLC). Dans le cadre du codage vidéo multicouche, la transmission d'une image compressée s'effectue en transmettant, dans un premier temps, sa couche de base puis, dans un deuxième temps, sa couche d'amélioration, sous la forme de trains binaires. Le train binaire associé à la couche d'amélioration présente l'avantage de pouvoir être tronqué de telle sorte que, si sa transmission n'est effectuée que partiellement suite à, par exemple, une variation du débit de transmission dans le réseau, l'information transmise dans la partie du train binaire correctement reçue peut être utilisée pour améliorer l'image codée par la couche de base. Pour cela, le résidu 101 (figure 1), codant des 35 coefficients d'amélioration 1011, 1012, ...101 propres à chaque bloc de pixels formant l'image, est décomposé en différents plans MSB, MSB-1, MSB-2, MSB- 3 et LSB de bits classés par ordre de priorité. Ainsi, chaque plan MSB, MSB-1, MSB-2, MSB-3 ou LSB 5 regroupe des bits de même poids dans la décomposition du résidu de chaque bloc (tableau 102). Par la suite, on génère un train binaire 104, transmettant successivement les plans MSB, MSB-1, MSB-2, MSB-3 et LSB, qui peut être tronquée sans compromettre la transmission de l'ensemble du train. Par exemple, si la transmission du train 104 est perturbée lors de la transmission du plan MSB-3, l'ensemble des informations déjà transmises par les plans MSB, MSB1, MSB-2 et la partie transmise de MSB-3 sera prise en compte pour améliorer l'image. Après la réception des informations relatives à sa compression, une image peut être décompressée. Toutefois, lors de sa décompression, l'image peut présenter des anomalies de résolution caractérisées par l'accentuation des bords des blocs de pixels composant l'image, ces anomalies étant dues à une perte d'informations provoquée par une compression élevée de l'image. Pour réduire ces anomalies, le contraste de chrominance et/ou de luminance entre les frontières des blocs de pixels d'une image est réduit au moyen d'un filtrage effectué sur les pixels de l'image reconstruite. Un exemple de filtrage est décrit dans la publication MPEG-4 Video Verification Model , version 18.0, janvier 2001, pages 271 et 272. Ce filtrage requiert la connaissance d'un paramètre relatif à la compression pour déterminer si une forte compression a été effectuée, auquel cas un filtrage important sera appliqué, ou si une faible compression a été utilisée, auquel cas un faible filtrage sera appliqué. Par ailleurs, lors de cette opération, l'intensité du filtrage de type passe-bas est fonction de l'amplitude de gradients verticaux et horizontaux mesurés le long des frontières de blocs de pixels formant l'image. Concernant le procédé décrit dans ce document, seul le paramètre relatif au pas de quantification est concerné. Ainsi, dans le cadre de MPEG4, le pas QP de 5 compression de la couche de base est utilisé coltune paramètre de quantification. La présente invention résulte de la constatation que, lorsqu'une image est compressée au moyen d'un procédé multicouche tel que précédemment décrit, il n'existe pas de paramètre de compression permettant de déterminer l'intensité de la compression effectuée tel que le pas de quantification utilisé pour la couche de base. De fait, le filtrage actuellement utilisé est appliqué sur la couche de base et le paramètre de compression considéré est le pas de quantification utilisé pour générer cette couche de base. Or, dans le cadre d'une compression multicouche, ce pas de quantification de la couche de base n'est plus représentatif de la compression appliquée à une image puisque, en fonction de la quantité d'information transmise par la couche d'amélioration, l'image est compressée avec une quantité d'information variable pour un même pas de quantification de la couche de base. De ce fait, un filtrage tel que précédemment défini ne peut être effectué au niveau de la couche d'amélioration, ce qui réduit la qualité de l'image finale, tout particulièrement à bas et très bas débit. La présente invention remédie à cet inconvénient et permet de déterminer un paramètre de compression pour une image lorsqu'un procédé multicouche est utilisé pour sa compression, ce qui permet d'appliquer un filtrage à l'ensemble de l'image - couche de base et couche d'amélioration - pour diminuer les contrastes entre les blocs de pixels. Plus précisément, la présente invention se rapporte à 35 un dispositif de compression et/ou de décompression d'images 2857204 4 numériques codées au moyen d'une couche de base, générée par un procédé de compression utilisant un pas de compression, et au moyen d'une couche d'amélioration, générée en codant le résidu existant entre l'image compressée et l'image codée par la couche de base, caractérisé en ce qu'il comprend des moyens pour déterminer un pas de compression relatif à l'image codée par la couche de base et par la couche d'amélioration, et des moyens pour commander un filtrage de cette image codée en fonction de ce pas déterminé. En déterminant un pas de compression propre à l'image codée par la couche de base et par la couche d'amélioration, le dispositif conforme à l'invention permet d'utiliser ce pas comme paramètre de quantification pour contrôler l'intensité du filtrage effectué sur l'image décompressée. Dans une réalisation, le dispositif comprend des moyens pour déterminer le pas à l'aide d'un niveau attribué à chaque plan de bit formant la couche d'amélioration Selon une réalisation, le dispositif comprend des moyens pour déterminer le pas en fonction d'une formule telle 20 que: Qp = 2Niveau-x où x est une valeur entière. 5Dans une réalisation, le dispositif comprend des moyens pour déterminer le pas en fonction d'une formule telle Qde.t = Min (QP; Max (2niveau décodé - 2; ) ) que où min(a;b) vaut a si a est inférieur ou égale à b et vaut b autrement, tandis que max (a;b) vaut a si a est supérieur ou égale à b et vaut b autrement. Selon une réalisation, le dispositif comprend des 30 moyens pour traiter des images en format MPEG. L'invention concerne aussi un procédé de compression ou de décompression d'images numériques codées au moyen d'une 15 couche de base, générée par un procédé de compression utilisant un pas de compression, et au moyen d'une couche d'amélioration, générée en codant le résidu existant entre l'image compressée et l'image codée par la couche de base, caractérisé en ce qu'on détermine un pas de compression relatif à l'image codée par la couche de base et par la couche d'amélioration, et en ce qu'on commande un filtrage de cette image codée en fonction de ce pas déterminé. Selon une réalisation, le procédé détermine le pas à 10 l'aide d'un niveau attribué à chaque plan de bit formant la couche d'amélioration Dans une réalisation, le procédé détermine le pas en fonction d'une formule telle que: QP 2Niveau-x où x est une valeur entière. Selon une réalisation, le procédé détermine le pas en fonction d'une formule telle que Qd t = Min (QP; Max (2niveau décodé - 2;1) ) où min(a;b) vaut a si a est inférieur ou égale à b et vaut b autrement, tandis que max (a;b) vaut a si a est 20 supérieur ou égale à b et vaut b autrement. Dans une réalisation, le procédé traite des images en format MPEG. Selon une réalisation, le procédé effectue le filtrage lors d'une prédiction entre des images reconstruites, issues du décodage de la couche de base, et de diverses couches d'amélioration. D'autres caractéristiques et avantages de l'invention apparaîtront avec la description de l'invention effectuée ci-dessous, à titre d'exemples non limitatifs, en se référant aux figures ci-jointes sur lesquelles: -la figure 1, déjà décrite, représente un procédé de génération d'une couche d'amélioration, -les figures 2a et 2b représentent un codeur et un décodeur d'images numérique conformes à l'invention, et - les figures 3a et 3b représentent des évaluations de pas de quantification déterminés conformément à l'invention. Bien que l'invention concerne principalement un décodeur, la description de l'invention est effectuée dans un premier temps, au travers du codeur 210 (figure 2) pour introduire le principe de ce type de codage (en plusieurs couches). Par la suite, on décrira un décodeur, illustré en figure 2b, qui est conforme à l'invention, c'est-à-dire qu'il peut déterminer un pas Qaet de quantification relatif à une image compressée au moyen d'une couche de base et d'une couche d'amélioration pour transmettre ce pas Qaet de quantification à un décodeur adaptant le filtrage de l'image en fonction de ce pas. Le codeur 210 comprend un receveur 211 recevant un signal 212, codant une image à comprimer, afin de soustraire de ce signal 212 des informations déjà transmises pour une image précédente, dans le cadre du codage interimage. Cette opération est effectuée à l'aide d'un soustracteur 214 qui reçoit un signal 234 correspondant aux informations transmises pour les images précédentes. Ainsi, le signal 212 est transformé en un signal 21614, qui est dirigé vers un transformateur 218 qui transforme le signal 21614, défini dans le domaine spatial, en un signal 21618 défini dans le domaine fréquentiel. Cette opération, qui s'effectue sans perte d'information, est une transformée cosinus discrète ou DCT ("Discrete Cosinus Transform"). Les signaux 21618 sont transmis à un quantificateur 220 qui réduit la dynamique de ces signaux via l'opération de quantification. Cette quantification fait intervenir des approximations entraînant une perte d'informations non négligeable du signal 21618. L'information ainsi perdue lors de cette opération de quantification est appelée le résidu, tandis 2857204 7 que l'information conservée après quantification constitue la couche de base de l'image compressée. En d'autres termes, la couche de base comprend les données reçues par le codeur moins ce résidu, ce dernier étant codé par la couche d'amélioration comme décrit ultérieurement. A la sortie du quantificateur 220, le signal 21620 est aussi transmis à une boucle de soustraction qui comprend un quantificateur inverse 224 effectuant la fonction inverse du quantificateur 220. Cette opération de quantification inverse s'effectue sans nouvelle perte d'informations. On obtient alors un signal 21624 qui est appliqué à un convertisseur 226 effectuant la fonction inverse (IDCT) de celle réalisée par le transformateur 218, c'est-à-dire convertissant ce signal 21624 du domaine fréquentiel au domaine spatial, délivrant ainsi à sa sortie un signal 21626 qui est transmis vers une mémoire 228 puis vers un processeur 230 d'estimation/ compensation de mouvement, et finalement vers le soustracteur 214. Le signal 21624 est également transmis vers un soustracteur 236, faisant partie d'une branche 235 de génération de la couche d'amélioration, une seconde entrée du soustracteur 236 recevant le signal de sortie 21618 du transformateur DCT 218 et correspondant au signal image source après DCT. Ainsi, ce soustracteur 236 effectue la soustraction entre des signaux représentant les signaux reçus 21618 et émis 21624 de façon à obtenir le résidu 21636 en sortie du soustracteur 236. La branche 235 comporte une mémoire 238 qui mémorise les résidus (dans le domaine des fréquences spatiales) par trames et un dispositif 240 qui effectue la partition en plans d'amélioration du signal 21638 en sortie de la mémoire 238 suivant le procédé déjà décrit (figure 1). Sur la figure 2b est présenté un décodeur 260 recevant la couche de base 216, via des moyens 262 de décodage VLD, via des moyens 264 de quantification inverse et via des moyens 266 de DCT inverse (IDCT). En outre, dans le cadre du codage inter-image une mémoire 270 d'image ainsi qu'un compensateur 268 de mouvement sont utilisés afin de construire l'image de prédiction. Par ailleurs, le décodeur reçoit les couches d'amélioration 21640, via des moyens 272 de traitement VLO du signal afin de reconstruire l'image définitive correspondant à l'ajout des couches d'amélioration à la couche de base via l'additionneur 274 positionné en amont de la DCT inverse dédié aux couches d'amélioration. Le décodeur est doté d'un processeur 278 de post-filtrage (LPF: destiné à réduire les effets de blocs) qui reçoit l'estimation Dmt déterminée par un estimateur 280 de pas Qmt de quantification qui est associé à l'image compressée en fonction de la qualité d'informations transmise par la couche d'amélioration. Sur cette figure 2b, la sortie du décodeur de la couche de base comporte également un poste-filtrage 282, ce dernier correspondant au fonctionnement connu, visant à réduire des effets de blocs en utilisant directement le pas de quantification dédié à la couche de base pour la couche de base. Dans cette réalisation de l'invention, ce pas Qmt de quantification varie de façon analogue au pas QS de quantification de la couche de base dans le cadre d'une compression h263, un pas Qmt de 1 correspondant au pas de quantification le plus faible. Pour cela, on attribue aux plans de bits MSB, MSB-1, MSB-2, MSB-3 et LSB de la couche d'amélioration une valeur de niveau décodé valeur comprise entre 1 et 5. D'une façon générale, on peut considérer 1 à n niveaux décodés. Plan de bits Poids du plan de bits Niveau décodé MSB 24 5 MSB-1 23 4 MSB2 22 MSB-3 21 LSB 2 Puis, on détermine le pas Qmt de quantification au moyen de la formule suivante: Qp = 2niveau décodé - 2 où niveau décodé a la valeur du plus bas plan de bits décodé. Ainsi, par exemple, en considérant que le train binaire de la couche d'amélioration est tronqué de telle sorte que seuls les plans MSB, MSB-1 et MSB-2 sont transmis, le pas Qmt de quantification QdBt =23-2 = 2 (1) Cette première réalisation de l'invention présente l'avantage d'être particulièrement simple. Toutefois, elle présente l'inconvénient que le pas Qdet de quantification déterminé est indépendant du pas de quantification QP de la couche de base, ce qui peut être gênant si ce dernier varie. C'est pourquoi, selon une deuxième réalisation, on détermine le pas Qmt de quantification d'une image compressée au moyen de la formule (2) suivante: Qd = Min (QP; Max (2niveau décodé - 2;1 où mina;b) vaut a si a est inférieur ou égale à b et vaut b autrement, tandis que max (a;b) vaut a si a est supérieur ou égale à b et vaut b autrement. Ainsi, le pas Qmt de quantification ne peut pas être inférieur à 1 et, si le pas QP de quantification de la couche de base est supérieur au paramètre de quantification qui serait estimé au moyen de la formule (1), le pas Qmt déterminé est égalé au pas de quantification de la couche de base. En d'autres termes, on évite ainsi que le paramètre de 30 quantification n'indique une compression de qualité moindre que celle associée à la seule couche de base. 3 2 1 Par ailleurs, dans le cas où aucune information n'est transmise par la couche de base, le pas Qdét de quantification est égalé au pas maximal permis pour la couche de base, indiquant une faible transmission d'information. Dans le cas d'une quantification non linéaire de type MPEG-2, on peut considérer un coefficient Mtw correcteur dans l'estimation du paramètre QP de quantification en raison de la présence de matrices de pondération, par exemple au moyen d'une formule telle que: Qdét - Min (QP; Max( Mtw. 2niveau_décodé - 2;1)) Comme expliqué ci-dessous à l'aide des figures 3a et 3b, une valeur de Mtw = 0.95 est apparue comme optimale pour calculer le pas Qdét déterminé.. Sur ces figures 3a et 3b sont montrées les qualités (axe 300, en dB) estimées d'images compressées au moyen d'une unique couche de base (points 302) ou au moyen des formules (2) (figure 3a) ou (3) (figure 3b) décrites ci-dessus (courbe 304). A l'aide de ces figures 3a et 3b on constate que la qualité des images compressées au moyen d'une unique couche de base, utilisant un pas QP de quantification donné, correspond à la qualité d'une image générée au moyen d'une couche de base compressée avec une couche de base et une couche d'amélioration telles que le pas Qdét de cette image soit égal au pas QP de compression d'une couche de base. En d'autres termes, le pas (Qdét) déterminé conformément à l'invention est représentatif de la qualité, et donc de la compression, de l'image formée par la couche de base et la couche d'amélioration. Selon un autre mode de réalisation de l'invention, un procédé de filtrage conforme à l'invention est effectué au niveau du codeur dans la boucle de codage, c'est dire dans le processus de prédiction inter image (faisant appel à l'estimation et la compensation de mouvement). Ainsi, le post-filtrage selon le procédé est mis en uvre lors de la prédiction entre les images reconstruites issues du décodage de la couche de base et de diverses couches d'amélioration. REVENDICATIONS 1. Dispositif de compression (210) et/ou de décompression (260) d'images numériques (212) codées au moyen d'une couche (21622) de base, générée par un procédé de compression utilisant un pas (QP) de compression, et au moyen d'une couche d'amélioration (21640), générée en codant le résidu existant entre l'image compressée et l'image codée par la couche de base, caractérisé en ce qu'il comprend des moyens (278, 280, 282) pour déterminer un pas (Qdét)de compression relatif à l'image codée par la couche de base (21622) et par la couche d' amélioration (21640) , et des moyens pour commander un filtrage de cette image codée en fonction de ce pas déterminé (Qmt). 2. Dispositif selon la revendication 1 caractérisé en ce qu'il comprend des moyens pour déterminer le pas (Qdet) à l'aide d'un niveau (1, 2, 3, 4, 5, ..n) attribué à chaque plan (MSB, MSB-1, MSB-2, MSB-3, MBS-(n-1), LSB) de bit formant la couche d'amélioration 3. Dispositif selon la revendication 1 ou 2 caractérisé en ce qu'il comprend des moyens pour déterminer le pas (Qdt) en fonction d'une formule telle que: QP = 2Niveau-x où x est une valeur entière. 4. Dispositif selon la revendication 1, 2 ou 3, caractérisé en ce qu'il comprend des moyens pour déterminer le pas (Q,) en fonction d'une formule telle que Qdét - Min (QP; Max (2 niveau décodé - 2;1) ) où min(a;b) vaut a si a est inférieur ou égale à b et vaut b autrement, tandis que max (a; b) vaut a si a est supérieur ou égale à b et vaut b autrement. 5. Dispositif selon l'une des revendications précédentes caractérisé en ce qu'il comprend des moyens pour 30 traiter des images en format MPEG (Motion Picture Expert Group). 25 6. Procédé de compression ou de décompression d'images numériques codées au moyen d'une couche de base, générée par un procédé de compression utilisant un pas (QP) de compression, et au moyen d'une couche d'amélioration, générée en codant le résidu existant entre l'image compressée et l'image codée par la couche de base, caractérisé en ce qu'on détermine un pas (Q t)de compression relatif à l'image codée par la couche de base et par la couche d'amélioration, et en ce qu'on commande un filtrage de cette image codée en fonction de ce pas déterminé (Q t) 7. Procédé selon la revendication 6 caractérisé en ce qu'on détermine le pas (Qdét) à l'aide d'un niveau (1, 2, 3, 4, 5,... n) attribué à chaque plan (MSB, MSB-1, MSB-2, MSB-3, MBS-(n-l), LSB) de bit formant la couche d'amélioration 8. Procédé selon la revendication 6 ou 7 caractérisé en ce qu'on détermine le pas (Q,) en fonction d'une formule telle que QP = 2Nl"ea -X où x est une valeur (2) entière. 9. Procédé selon la revendication 8 caractérisé en ce qu'on détermine le pas (Qdet) en fonction d'une formule telle que Qde = Min (QP; Max (2niveau décodé - 2.1) ) où min(a;b) vaut a si a est inférieur ou égale à b et vaut b autrement, tandis que max (a;b) vaut a si a est supérieur ou égale à b et vaut b autrement. 10. Procédé selon la revendication 6, 7, 8 ou 9 25 caractérisé en ce qu'on traite des images en format MPEG (Motion Picture Expert Group). 11. Procédé selon l'une des revendications 6 à 10 caractérisé en ce que, le filtrage est mis en oeuvre lors d'une opération de prédiction entre les images reconstruites, issues du décodage de la couche de base, et de diverses couches d'amélioration.