FR2867328A1 - Procede de decodage d'une sequence d'images codee avec echelonnabilite spatiale et temporelle - Google Patents

Procede de decodage d'une sequence d'images codee avec echelonnabilite spatiale et temporelle Download PDF

Info

Publication number
FR2867328A1
FR2867328A1 FR0450419A FR0450419A FR2867328A1 FR 2867328 A1 FR2867328 A1 FR 2867328A1 FR 0450419 A FR0450419 A FR 0450419A FR 0450419 A FR0450419 A FR 0450419A FR 2867328 A1 FR2867328 A1 FR 2867328A1
Authority
FR
France
Prior art keywords
motion
temporal
images
resolution
spatial
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.)
Pending
Application number
FR0450419A
Other languages
English (en)
Inventor
Edouard Francois
Guillaume Boisson
Jerome Vieron
Philippe Robert
Gwenaelle Marquant
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.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
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 Thomson Licensing SAS filed Critical Thomson Licensing SAS
Priority to FR0450419A priority Critical patent/FR2867328A1/fr
Priority to PCT/FR2005/050108 priority patent/WO2005086488A1/fr
Priority to JP2007501323A priority patent/JP4986842B2/ja
Priority to US10/590,332 priority patent/US20070171971A1/en
Priority to EP05728100A priority patent/EP1721471A1/fr
Priority to CN2005800062187A priority patent/CN1926876B/zh
Publication of FR2867328A1 publication Critical patent/FR2867328A1/fr
Pending legal-status Critical Current

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/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
    • H04N19/615Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding using motion compensated temporal filtering [MCTF]
    • 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/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy
    • 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/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets

Abstract

Le procédé est caractérisé en ce que la résolution choisie pour les informations de mouvement et la complexité des filtres d'interpolation utilisés, lors d'une opération de filtrage temporel compensé en mouvement, sont fonction d'un scénario de décodage, à savoir des résolutions spatiale, temporelle et du débit sélectionnés pour le décodage ou du niveau de décomposition temporelle correspondant ou d'une combinaison de ces paramètres.Les applications concernent les codeurs/décodeurs vidéo dits « scalables » par exemple dans le domaine de la vidéotéléphonie ou transmission vidéo sur internet.

Description

L'invention concerne un procédé de codage et de décodage vidéo d'une
séquence d'image codée avec échelonnabilité spatiale et temporelle, par analyse temporelle hiérarchique exploitant le filtrage temporel compensé en mouvement.
Le domaine est celui de la compression vidéo basée sur des schémas à échelonnabilité spatiale et/ou temporelle dits aussi scalables . Il s'agit par exemple d'un codage en ondelettes 2D+t comportant un filtrage temporel compensé en mouvement.
Une chaîne de codage-extraction-décodage échelonnable est illustrée sur la figure 1.
Les images source sont transmises à un circuit de codage vidéo scalable 1. Le train binaire originel obtenu est traité par un extracteur 2 pour donner un train binaire extrait. Ce dernier est décodé par le circuit de décodage 3 qui fournit en sortie la vidéo décodée.
L'échelonnabilité ou scalabilité permet de générer un train binaire originel duquel on peut extraire des sous trains binaires adaptés à des ensembles donnés, débit, résolution spatiale, fréquence temporelle... Par exemple, si le train binaire scalable originel a été généré à partir d'une séquence vidéo à 25Hz, de résolution 720*480 pixels et sans contrainte de débit, il est possible, après avoir extrait de ce train binaire les donnés adéquates, d'obtenir un sous-train binaire, par exemple de paramètres 1 Mb/s, 12,5Hz, 360*240 pixels, lui-même scalable. Le décodage de ce sous-train binaire extrait génère une vidéo à 12,5Hz, de taille 360*240 pixels.
Dans les approches existantes de compression vidéo scalables, le codage et le décodage procèdent de façon identique, sans prise en compte de conditions de fonctionnement telles que le niveau de décomposition temporelle, le débit, la résolution spatiale de la vidéo décodée... En particulier, si le décodage implique de la compensation de mouvement entre images, cette compensation est appliquée de façon identique, sans tenir compte de la taille des images, ni du débit de la vidéo à décoder. Cela résulte en une qualité d'images dégradée, en particulier lorsque la résolution d'images devient petite par rapport à la taille des filtres d'interpolation utilisés pour la compensation de mouvement.
L'invention a pour but de pallier les inconvénients précités.
Un des objets de l'invention est un procédé de décodage d'une séquence d'images codée avec échelonnabilité spatiale et temporelle, les données codées comportant des informations de mouvement, comprenant une étape de synthèse temporelle hiérarchique effectuant un filtrage temporel compensé en mouvement, ou MCTF, d'images d'un niveau de décomposition en fréquence à partir des dites informations de mouvement, pour fournir des images d'un niveau de décomposition inférieur, caractérisé en ce que, lors d'une opération de filtrage temporel compensé en mouvement, la résolution choisie pour l'exploitation des informations de mouvement et la complexité des filtres d'interpolation utilisés sont fonction d'un scénario de décodage, à savoir des résolutions spatiale, temporelle et du débit sélectionnés pour le décodage ou bien du niveau de décomposition temporelle correspondant ou d'une combinaison de ces paramètres.
Selon une mise en oeuvre particulière, le nombre de coefficients du filtre d'interpolation utilisé pour la compensation en mouvement dépend du scénario de décodage ou du niveau de décomposition temporelle.
Selon une mise en oeuvre particulière, l'étape de synthèse temporelle hiérarchique est un décodage de coefficients ondelettes avec filtrage 20 compensé en mouvement.
L'invention concerne également un procédé de codage d'une séquence d'images de résolution spatiale donnée, avec échelonnabilité spatiale et temporelle, comprenant une étape d'analyse temporelle hiérarchique effectuant un filtrage temporel compensé en mouvement, ou MCTF, d'images d'un niveau de décomposition en fréquence, à partir d'informations de mouvement entre ces images, pour donner des images d'un niveau de décomposition supérieur, caractérisé en ce que, lors d'une opération de filtrage temporel compensé en mouvement, la résolution choisie pour l'exploitation des dites informations de mouvement et la complexité des filtres d'interpolation utilisés sont fonction de la dite résolution spatiale des images source ou du niveau de décomposition temporelle correspondant.
Le procédé, selon une mise en oeuvre particulière, comporte une étape d'estimation de mouvement calculée entre deux images d'un niveau de décomposition donné pour réaliser la compensation de mouvement et en ce que la précision de calcul de l'estimation de mouvement est fonction du niveau de décomposition temporelle ou de la dite résolution spatiale des images sources.
L'étape d'analyse temporelle hiérarchique est par exemple un codage en ondelettes avec filtrage compensé en mouvement.
L'invention concerne également un décodeur pour la mise en oeuvre du procédé de décodage précédemment décrit, caractérisé en ce qu'il comporte un circuit de choix de configuration de mouvement pour déterminer la résolution du mouvement et le filtre d'interpolation à utiliser dans la compensation en mouvement pour le filtrage compensé en mouvement, en fonction du scénario de décodage, à savoir des résolutions spatiale et temporelles et du débit sélectionnés pour le décodage ou du niveau de décomposition temporelle correspondant ou d'une combinaison de ces paramètres.
L'invention concerne également un codeur pour la mise en oeuvre du procédé de codage précédemment décrit, caractérisé en ce qu'il comporte un circuit de choix de configuration de mouvement pour déterminer le filtre d'interpolation à utiliser par le circuit d'analyse temporelle pour la compensation de mouvement en fonction de la dite résolution spatiale des images source ou du niveau de décomposition temporelle correspondant.
Selon un mode de réalisation particulier, le codeur est caractérisé en ce qu'il comporte un circuit de choix de configuration de mouvement pour déterminer la précision du mouvement calculé par le circuit d'estimation de mouvement, en fonction de la dite résolution spatiale des images source ou du niveau de décomposition temporelle correspondant.
La précision du mouvement et les filtres d'interpolation utilisés pour la compensation de mouvement dans le processus de codage et de décodage sont adaptés en fonction de différents paramètres, tels que le niveau de décomposition temporelle sur lequel on procède. Ces filtres sont adaptés, pour le décodage, au débit du flux décodé, à la résolution spatiale ou temporelle de la vidéo décodée.
Grâce à cette compensation en mouvement adaptative, la qualité des images est améliorée, la complexité des traitements est réduite.
D'autres particularités et avantages de l'invention ressortiront mieux de la description suivante donnée à titre d'exemple non limitatif et faite en regard des figures annexées qui représentent: - la figure 1, une chaîne de codage selon l'art antérieur, - la figure 2, un schéma de codage simplifié, - la figure 3, un filtrage temporel d'un GOP, - la figure 4, un filtrage temporel sur deux images, - la figure 5, un circuit de décodage, - la figure 6, un organigramme de choix de configuration de mouvement, la figure 7, un deuxième organigramme de choix de configuration de mouvement.
On considère un schéma de codage/décodage basé ondelettes 2D+t, opérant une analyse/synthèse ondelettes le long des trajectoires de mouvement. Le système opère sur des groupes d'images ou GOPs. L'architecture globale du codeur est décrite en figure 2.
Les images sources sont transmises à un circuit d'analyse temporelle 4 qui effectue une analyse temporelle compensée en mouvement ou MCTF, acronyme de l'anglais motion compensated temporal filtering, pour obtenir les différentes bandes temporelles fréquentielles. Les images sont transmises à un circuit d'estimation de mouvement 7 qui calcule les champs de mouvement. Ces champs sont transmis à un circuit de pruning 10 qui effectue un élagage ou une simplification des informations de mouvement calculées par le circuit d'estimation de mouvement pour contrôler le coût du mouvement. Les champs de mouvement ainsi simplifiés sont transmis au circuit d'analyse temporelle afin de définir les filtres d'analyse. Ils sont aussi transmis à un circuit de codage 11 qui effectue le codage des champs de mouvement simplifiés.
Les images résultantes de l'analyse temporelle sont transmises à un circuit d'analyse spatiale 5 qui réalise un codage sous-bande de l'image bande basse et des images bandes hautes obtenues par l'analyse temporelle. Les coefficients ondelettes spatio-temporels ainsi obtenus sont finalement codés par un codeur entropique 6. Ce codeur fournit en sortie un ensemble de paquets binaires correspondant aux couches de scalabilités superposées, à la fois en qualité, en résolutions spatiales et temporelles. Un paquetiseur 12 effectue la fusion de ces paquets binaires avec les données de mouvement provenant du circuit de codage 11 pour fournir le train binaire échelonnable final.
Les images aux différents niveaux de décomposition temporelle sont transmises par le circuit d'analyse temporelle 4 vers le circuit d'estimation de mouvement 7 comportant un premier circuit de choix de configuration de mouvement. Ce circuit, non représenté sur la figure, définit les conditions de fonctionnement du circuit d'estimation de mouvement en fonction des différents niveaux de décomposition des images. De manière optionnelle, les informations de mouvement, une fois simplifiées via le circuit de pruning 10, sont transmises au circuit d'analyse temporelle à travers un circuit de commutation de mode 9.
Ce circuit permet de tester la qualité de l'estimation de mouvement en testant par exemple le nombre de pixels connectés entre l'image courante et l'image précédente, à un niveau de décomposition donné, et peut imposer au circuit d'analyse temporelle un codage en mode intra ou un codage en mode prédictif, c'est à dire un filtrage de l'image courante avec l'image suivante et non précédente, lorsque cette qualité de mouvement est insuffisante. Le choix entre le mode intra et prédictif dépend par exemple de la qualité de l'estimation de mouvement entre l'image courante et l'image suivante. Le circuit d'analyse temporelle comporte un deuxième circuit de choix de configuration de mouvement, également non représenté sur la figure, qui détermine, en fonction des niveaux de décomposition des images et/ou de la résolution spatiale des images sources, la configuration à adopter pour la compensation de mouvement utilisée dans cette analyse temporelle.
La figure 3 représente de manière synthétique les opérations de filtrage temporel compensé en mouvement réalisées par le circuit d'analyse temporelle 4, avec une décomposition à 4 niveaux pour des GOPs comportant, dans cet exemple, 16 images représentées en traits gras.
Le mode de filtrage utilisé est appelé lifting . Au lieu d'utiliser un filtrage complexe pour le codage en ondelettes, exploitant un filtre linéaire de longueur importante, dans notre exemple le filtrage serait effectué sur un groupe de 16 images, ce procédé de filtrage consiste, de manière connue, à factoriser le filtre en exploitant des filtres de longueur limitée, par exemple deux si l'on choisit de filtrer les échantillons deux à deux, ce filtrage étant reconduit pour chaque niveau de décomposition. On considère donc le cas où le filtrage dans le sens du mouvement est effectué sur des paires d'images. Le filtrage basse fréquence et haute fréquence, sur chacune des paires du GOP, produit respectivement, au premier niveau de décomposition temporelle, 8 images de fréquence temporelle basse (t-L) et 8 images de fréquence temporelle haute (t-H).
Les images de fréquence temporelle basse sont ensuite décomposées à nouveau selon le même procédé. Le filtrage passe bas de ces images fournit 4 nouvelles images de fréquence temporelle basse t-LL et le filtrage passe-haut de ces mêmes images fournit 4 images de fréquence temporelle haute t-LH. Le troisième niveau de décomposition fournit 2 images de fréquence temporelle basse t-LLL et 2 images de fréquence temporelle haute t-LLH. Le quatrième et dernier niveau fournit une image de fréquence temporelle basse t-LLLL et une image de fréquence temporelle haute t-LLLH.
Cette décomposition temporelle est une décomposition 5 bandes temporelles qui génère donc 1 image t-LLLL, 1 image t-LLLH, 2 images t-LLH, 4 images t-LH, et 8 images t-H par GOP de 16 images. Les images t-L, t-LL, t-LLL et bien sûr les images originales sont ignorées pour le codage en aval puisqu'elles sont à l'origine de la décomposition en sous-bandes pour fournir les images décorrélées à chaque niveau. Cette décomposition permet donc une nouvelle répartition de l'énergie en générant une image utile de fréquence temporelle basse t-LLLL, qui représente une moyenne de l'ensemble du GOP et dans laquelle est concentrée l'énergie, et quatre niveaux d'images de fréquence temporelle haute de faible énergie, soit 5 bandes de fréquence. Ce sont ces images qui sont transmises au circuit d'analyse spatiale pour une décomposition spatiale en sous-bandes.
Pour réaliser les filtrages, un champ de mouvement est estimé entre chaque paire d'images à filtrer et cela pour chaque niveau. C'est la 20 fonction de l'estimateur de mouvement 7.
Le filtrage d'une paire d'images source A et B consiste par défaut à générer une image basse fréquence temporelle L et une image haute fréquence temporelle H, selon les équations suivantes: JL = (B +MC(A))/-H =(A-MC(B))/J où MC(I) correspond à l'image I compensée en mouvement.
La somme concerne le filtrage passe-bas, la différence, le filtrage passehaut.
La figure 4 est une illustration simplifiée du filtrage temporel des deux images successives A et B, l'image A étant la première image selon l'axe des temps et selon l'ordre d'affichage, donnant une image basse fréquence L et une image haute fréquence H. L'estimation de mouvement se fait par rapport à une image de 35 référence, de l'image courante vers l'image de référence. On cherche pour chaque pixel de l'image courante, son correspondant, s'il existe, dans l'image 2867328 7 de référence, et on lui affecte le vecteur mouvement correspondant. Le pixel de l'image de référence est alors dit connecté.
L'obtention de l'image L nécessite une compensation en mouvement de l'image A. Cette compensation se fait par estimation de mouvement de l'image B vers l'image A en prenant A comme image de référence, un mouvement et donc un vecteur étant alors affecté à chaque pixel de l'image B. La valeur d'un pixel de L est égale, au facteur de forme prés, à la somme de la luminance du pixel correspondant de l'image B et de la luminance du pixel ou sous-pixel de A pointé par le vecteur mouvement attribué au pixel correspondant de l'image B. Une interpolation est nécessaire lorsque ce vecteur ne pointe par sur un pixel de l'image A. Il s'agit ici de prédiction anticipée à partir d'une image de référence passée et d'un calcul de vecteurs mouvements anticipés ou forward vectors en anglais, en se référant à la norme MPEG.
L'obtention de l'image H nécessite une compensation en mouvement de l'image B. Cette compensation se fait par estimation de mouvement de l'image A vers l'image B en prenant B comme image de référence, un mouvement et donc un vecteur étant alors affecté à chaque pixel de l'image A. La valeur d'un pixel de H est égale, au facteur de forme prés, à la différence de la luminance du pixel correspondant de l'image A et de la luminance du pixel ou sous-pixel de B pointé par le vecteur mouvement attribué au pixel correspondant de l'image A. Une interpolation est nécessaire lorsque ce vecteur ne pointe par sur un pixel de l'image B. II s'agit de prédiction différée à partir d'une image de référence postérieure et d'un calcul de vecteurs mouvements différés ou backward vectors en anglais, en se référant à la norme MPEG.
D'une manière pratique, seul un champ de vecteurs mouvement est calculé, de A vers B ou de B vers A. L'autre champ de vecteurs mouvement est déduit du premier, générant des pixels non connectés, c'est à dire non affectés d'un vecteur mouvement et correspondant à des trous dans le champ de vecteurs mouvement inverse.
D'une manière pratique, les images de fréquence basse et haute sont calculées comme suit: B - MCA,-B (A) L = J.A + MCÂLB (H) Ce filtrage, équivalent à celui précédemment décrit, consiste à calculer d'abord l'image H. Cette image est obtenue par différence point à point de l'image B et de l'image A compensée en mouvement. Ainsi, on retranche à un pixel de B une certaine valeur, interpolée le cas échéant, pointée par le vecteur déplacement dans A, vecteur mouvement calculé lors de l'estimation de mouvement de l'image B vers l'image A. L'image L est ensuite déduite à partir de l'image H et non plus de l'image B, par addition de l'image A à l'image H compensée en mouvement inverse. MCA-É-B (H) correspond à une décompensation en mouvement de l'image (H). Ainsi, on ajoute, à un pixel de A ou plus exactement à une valeur normalisée de la luminance du pixel, une certaine valeur, interpolée le cas échéant, située, dans l'image H, à la base d'un vecteur déplacement de B vers A et pointant le pixel de A. Un même raisonnement peut être tenu au niveau d'un bloc 15 d'image au lieu d'un pixel.
Le circuit d'estimation de mouvement 7 exploite par exemple un algorithme d'estimation de mouvement par appariement de blocs plus connu sous l'appellation anglaise de block matching . Un bloc d'image courant est corrélé aux blocs d'une fenêtre de recherche dans l'image de référence pour déterminer le vecteur de mouvement correspondant à la meilleure corrélation. Cette recherche est effectuée non seulement sur les blocs de la fenêtre de recherche obtenus par déplacements successifs d'un pixel en horizontal et vertical mais également sur des blocs interpolés si la précision recherchée est inférieure au pixel. Cette interpolation consiste à calculer les valeurs de luminance des sous-pixels, pour la génération de blocs d'images obtenus par déplacements successifs d'une valeur inférieure à la distance entre deux pixels. Par exemple pour une précision du quart de pixel, un test de corrélation est effectué tous les quarts de pixels, en horizontal et en vertical. Cette interpolation exploite des filtres appelés filtres d'interpolation de l'estimation de mouvement.
Les images pour lesquelles un filtrage temporel compensé en mouvement est à effectuer sont transmises à l'estimateur de mouvement 7 pour qu'il estime le mouvement entre deux images. Ce circuit comporte un premier circuit de choix de configuration de mouvement qui reçoit, en plus de l'information de niveau de décomposition des images, d'autres informations telles que la résolution spatiale des images sources. Ce circuit décide de la configuration de mouvement en fonction de ce niveau et/ou de la résolution spatiale. Ainsi, par exemple, la précision dans le calcul des vecteurs mouvement dépend du niveau de décomposition temporelle des images traitées. Cette précision est d'autant plus faible que le niveau de décomposition est grand. Les filtres d'interpolation de l'estimateur de mouvement sont configurés pour être adaptés à cette précision de mouvement. Un exemple de configuration est donné par la suite.
Le circuit d'analyse temporelle 4, comme on l'a indiqué plus haut, réalise des compensations de mouvement pour le filtrage temporel des images.
Ces opérations de compensations en mouvement nécessitent des opérations d'interpolation utilisant des filtres d'interpolation, et cela pour chaque niveau de décomposition. Le deuxième circuit de choix de configuration de mouvement, dans ce circuit d'analyse temporelle, qui peut être différent du premier, met en oeuvre un algorithme de traitement adaptant la précision du mouvement et la complexité du filtre d'interpolation pour la compensation de mouvement en fonction du niveau de décomposition temporelle des images à compenser en mouvement. Comme pour le premier circuit de choix de configuration de mouvement, ces différentes adaptations ou configurations peuvent également dépendre de la résolution spatiale des images sources traitées.
Bien évidemment, un codeur ne comportant qu'un seul de ces circuits de choix de configuration est du domaine de l'invention.
Un décodeur selon l'invention est décrit en figure 5. Le flux binaire reçu par le décodeur est transmis à l'entrée d'un circuit de décodage entropique 13 qui réalise les opérations inverses du circuit de codage entropique du codeur. II décode entre autres les coefficients ondelettes spatio- temporels et, le cas échéant, les modes de codage. Ce flux binaire est transmis en parallèle à l'entrée d'un circuit de décodage du mouvement 14 qui décode les champs de mouvement reçus dans le flux binaire pour les transmettre au circuit de synthèse temporelle. Le circuit de décodage entropique 13 est relié à un circuit de synthèse spatiale 15 qui reconstruit les images correspondant aux différentes sous-bandes temporelles. Les coefficients ondelettes temporels provenant du circuit de synthèse spatiale sont transmis à un circuit de synthèse temporelle 16 qui reconstruit les images de sortie à partir de filtres de synthèse temporelle. Le circuit de synthèse temporelle comporte un circuit de choix de configuration de mouvement, non représenté sur la figure, qui détermine, en fonction des conditions du décodage et/ou des niveaux de décomposition des images, la configuration à adopter pour la compensation de mouvement utilisée dans cette synthèse temporelle. Le circuit de synthèse temporelle est relié à un circuit de post-traitement 17 dont la sortie est la sortie du décodeur. II s'agit par exemple de post-filtrage permettant de réduire les artéfacts tels que les effets de bloc.
Dans le cas ou le codeur exploite d'autres mode de codages que le mode MCTF, par exemple le mode intra et le mode prédictif, un circuit de commutation de filtre temporel est utilisé pour recevoir ces informations de mode de codage provenant du circuit de décodage entropique 13 et pour les transmettre au circuit de synthèse temporelle 16 qui effectue en conséquence les commutations de filtres.
Le circuit de choix de configuration de mouvement reçoit les informations de débit, de résolution spatiale et temporelle et les niveaux de décomposition temporelle. A partir de ces informations ou d'une de ces informations, il choisit, pour la synthèse temporelle, une configuration de compensation de mouvement. Le circuit de synthèse temporelle adapte le filtre d'interpolation en fonction de cette configuration choisie.
Le débit du flux binaire reçu par le décodeur correspond au train binaire extrait. Le codeur scalable transmets généralement le débit le plus élevé qui est le train binaire originel, comme on l'a vu précédemment, et l'extracteur, qui peut être commandé par le décodeur, extrait le train binaire correspondant aux résolutions souhaitées. Les informations de débit reçu sont disponibles au décodeur.
Les informations de résolution spatiale, temporelle et de débit définissent un scénario de décodage. Ce scénario est fonction par exemple de l'afficheur exploité par le décodeur, du débit disponible pour la réception des données. C'est à partir de ces informations et/ou du niveau de décomposition temporelle que le circuit de synthèse temporelle est configuré quant aux filtres d'interpolation.
Un exemple d'adaptation de la précision du mouvement et du filtre d'interpolation qui dépend de cette précision est donné ci-dessous, pour les opérations d'estimation de mouvement au codeur ou les opérations de compensation de mouvement au codeur ou décodeur: configuration précision du mouvement filtres d'interpolation 1 1/4 de pixel Bilinéaire 2 1/8 de pixel '/4 pixel par interpolation FIR 8 coefficients, puis 1/8 pixel par interpolation bilinéaire Le filtre de la configuration 2 est très similaire de celui utilisé dans la norme MPEG-4 partie 10 (référence ITU-T Rec. H.264 ISOIIEC 14496-10 AVC).
La figure 6 représente un organigramme de décision mis en oeuvre par le circuit de choix de configuration de mouvement appartenant au circuit d'analyse temporelle.
L'étape 20 détermine si la résolution de l'image source fournie au codeur est inférieure à celle du format QCIF, de l'anglais Quarter Common Intermediate Format et correspondant à 176 colonnes, 120 lignes. Dans l'affirmative, l'étape suivante est l'étape 23 qui décide la configuration 1.
Dans la négative, l'étape suivante est l'étape 21 qui vérifie le niveau de décomposition temporelle. Si ce niveau est strictement supérieur à 2, l'étape suivante est l'étape 23, la configuration 1 est choisie. Sinon, l'étape suivante est l'étape 22 qui décide la configuration 2.
La figure 7 représente un organigramme de décision pour le décodeur.
L'étape 24 détermine si la résolution de l'image fournie par le décodeur et correspondant au flux binaire extrait est inférieure à celle du format QCIF, 176 colonnes, 120 lignes. Dans l'affirmative, l'étape suivante est l'étape 26 qui choisit la configuration 1.
Dans la négative, l'étape suivante est l'étape 25 qui vérifie le niveau de décomposition temporelle. Si ce niveau est strictement supérieur à 2, l'étape suivante est l'étape 26, la configuration 1 est utilisée. Sinon, l'étape suivante est l'étape 27. Cette étape 27 détermine si la résolution de l'image à décoder est égale à celle du format SD, de l'anglais Standard Definition, 720 colonnes, 480 lignes et si le débit du flux binaire reçu est inférieur à 1,5 Mb/s. Dans l'affirmative, l'étape suivante est l'étape 26 qui décide la configuration 1.
Dans la négative, l'étape 28 est l'étape suivante. Cette étape 28 détermine si la résolution de l'image à décoder est égale à celle du format Cl F, 352 colonnes, 240 lignes et si le débit est inférieur à 700 kbits/s. Dans l'affirmative, l'étape suivante est l'étape 26 qui impose la configuration 1.
Dans la négative, la configuration 2 est imposée aux circuits de filtrage temporel.
Le filtre d'interpolation est par exemple du type FIR 8 coefficients, acronyme de l'anglais Finite Impulse Response. Le filtrage est effectué par convolution, en prenant donc en compte les luminances des 4 pixels précédents et suivants le sous-pixel à calculer.
Pour différentes positions au sous-pixel s à 1/4, '/2, et %, on peut utiliser trois filtres d'interpolation différents du type précédent. La valeur d'un coefficient n est donné par la formule: 4 sin9L n+s m f(n+s)= E h(m) z(+s m) )' 0<s <1. m=-4
s est la position sous-pixel, s = , '/, ou %, n est le numéro du coefficient et h(m) le filtre d'atténuation ou fenêtre de Hamming.
On peut déduire des filtres FIR, par pondération par une fenêtre de Hamming et troncation de ces filtres pondérés.
Pour s = 1, les coefficients sont: 4 [-0.0110 0.0452 -0.1437 0.8950 0.2777 -0.0812 0.0233 -0.0053] Pour s = 2, les coefficients sont: [-0.0053 0.0233 -0.0812 0.2777 0.8950 -0.1437 0.0452 -0.0110] Pour s = 4, les coefficients sont: [-0.0105 0.0465 -0.1525 0.6165 0.6165 -0.1525 0.0465 -0.0105] Avec ces filtres, on peut interpoler au %, 'A et 3 de pixel. L'interpolation se fait d'abord selon la dimension horizontale, puis verticale.
L'interpolation au 1/8 de pixel est effectuée ensuite par une interpolation bilinéaire à partir des positions aude pixel.
L'exemple d'adaptation donné ci-dessus au niveau du codeur peuts'appliquer de la même manière au niveau du décodeur.
D'une manière générale, le principe est d'utiliser une précision de mouvement limitée et des filtres d'interpolation simples quand on opère à des qualités d'image limitées, c'est-à-dire à bas débit, sur des images de petite taille et à des niveaux de décomposition temporelle élevés. A l'inverse, quand on traite des images de bonne qualité, résolution spatiale grande, débits élevés, niveaux de décomposition temporelle bas, on utilise une grande précision de mouvement et des filtres d'interpolation sophistiqués. La justification de ce principe est que lorsque les images à filtrer sont pauvres en contenu fréquentiel ou de résolution limitée, il n'est pas utile d'employer des filtres d'interpolation très évolués ni une précision de mouvement très grande.
Les applications de l'invention concernent les codeurs/décodeurs vidéo dits scalables utilisés pour la compression/décompression de données, par exemple dans le domaine de la vidéotéléphonie ou transmission vidéo sur internet.

Claims (8)

14 REVENDICATIONS
1 Procédé de décodage d'une séquence d'images codée avec échelonnabilité spatiale et temporelle, les données codées comportant des informations de mouvement, comprenant une étape de synthèse temporelle hiérarchique (16) effectuant un filtrage temporel compensé en mouvement, ou MCTF, d'images d'un niveau de décomposition en fréquence à partir des dites informations de mouvement, pour fournir des images d'un niveau de décomposition inférieur, caractérisé en ce que, lors d'une opération de filtrage temporel compensé en mouvement, la résolution choisie pour l'exploitation des informations de mouvement et la complexité des filtres d'interpolation utilisés sont fonction d'un scénario de décodage, à savoir des résolutions spatiale, temporelle et du débit sélectionnés pour le décodage ou bien du niveau de décomposition temporelle correspondant ou d'une combinaison de ces paramètres.
2 Procédé selon la revendication 1, caractérisé en ce que le nombre de coefficients du filtre d'interpolation (16) utilisé pour la compensation en mouvement dépend du scénario de décodage ou du niveau de décomposition temporelle.
3 Procédé selon la revendication 1, caractérisé en ce que l'étape de synthèse temporelle hiérarchique (16) est un décodage de coefficients 25 ondelettes avec filtrage compensé en mouvement.
4 Procédé de codage d'une séquence d'images de résolution spatiale donnée, avec échelonnabilité spatiale et temporelle, comprenant une étape d'analyse temporelle hiérarchique (4) effectuant un filtrage temporel compensé en mouvement, ou MCTF, d'images d'un niveau de décomposition en fréquence, à partir d'informations de mouvement entre ces images (7), pour donner des images d'un niveau de décomposition supérieur, caractérisé en ce que, lors d'une opération de filtrage temporel compensé en mouvement (4), la résolution choisie pour l'exploitation des dites informations de mouvement et la complexité des filtres d'interpolation utilisés (9) sont fonction de la dite résolution spatiale des images source ou du niveau de décomposition temporelle correspondant.
Procédé selon la revendication 4, caractérisé en ce qu'il comporte une étape d'estimation de mouvement (7) calculée entre deux images d'un niveau de décomposition donné pour réaliser la compensation de mouvement (4) et en ce que la précision de calcul de l'estimation de mouvement (7) est fonction du niveau de décomposition temporelle ou de la dite résolution spatiale des images sources.
6 Procédé selon la revendication 4, caractérisé en ce que l'étape d'analyse temporelle hiérarchique (4) est un codage en ondelettes avec filtrage compensé en mouvement.
7 Décodeur pour la mise en oeuvre du procédé selon la revendication 1, caractérisé en ce qu'il comporte un circuit de choix de configuration de mouvement (16) pour déterminer la résolution du mouvement et le filtre d'interpolation à utiliser dans la compensation en mouvement (16) pour le filtrage compensé en mouvement, en fonction du scénario de décodage, à savoir des résolutions spatiale et temporelles et du débit sélectionnés pour le décodage ou du niveau de décomposition temporelle correspondant ou d'une combinaison de ces paramètres 8 Codeur pour la mise en oeuvre du procédé selon la revendication 4, caractérisé en ce qu'il comporte un circuit de choix de configuration de mouvement (4) pour déterminer le filtre d'interpolation à utiliser par le circuit d'analyse temporelle pour la compensation de mouvement (4) en fonction de la dite résolution spatiale des images source ou du niveau de décomposition temporelle correspondant.
9 Codeur pour la mise en oeuvre du procédé selon la revendication 4, caractérisé en ce qu'il comporte un circuit de choix de configuration de mouvement (7) pour déterminer la précision du mouvement calculé par le circuit d'estimation de mouvement (7), en fonction de la dite résolution spatiale des images source ou du niveau de décomposition temporelle correspondant.
FR0450419A 2004-03-02 2004-03-02 Procede de decodage d'une sequence d'images codee avec echelonnabilite spatiale et temporelle Pending FR2867328A1 (fr)

Priority Applications (6)

Application Number Priority Date Filing Date Title
FR0450419A FR2867328A1 (fr) 2004-03-02 2004-03-02 Procede de decodage d'une sequence d'images codee avec echelonnabilite spatiale et temporelle
PCT/FR2005/050108 WO2005086488A1 (fr) 2004-03-02 2005-02-21 Procede de codage et de decodage d'une sequence d'images codee avec echelonnabilite spatiale et temporelle
JP2007501323A JP4986842B2 (ja) 2004-03-02 2005-02-21 空間的及び時間的スケーラビリティを以て符号化された画像シーケンスの符号化及び復号化の方法
US10/590,332 US20070171971A1 (en) 2004-03-02 2005-02-21 Method for coding and decoding an image sequence encoded with spatial and temporal scalability
EP05728100A EP1721471A1 (fr) 2004-03-02 2005-02-21 Procede de codage et de decodage d'une sequence d'images codee avec echelonnabilite spatiale et temporelle
CN2005800062187A CN1926876B (zh) 2004-03-02 2005-02-21 空间和时间可扩展编码的图像序列的编码和解码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0450419A FR2867328A1 (fr) 2004-03-02 2004-03-02 Procede de decodage d'une sequence d'images codee avec echelonnabilite spatiale et temporelle

Publications (1)

Publication Number Publication Date
FR2867328A1 true FR2867328A1 (fr) 2005-09-09

Family

ID=34855193

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0450419A Pending FR2867328A1 (fr) 2004-03-02 2004-03-02 Procede de decodage d'une sequence d'images codee avec echelonnabilite spatiale et temporelle

Country Status (6)

Country Link
US (1) US20070171971A1 (fr)
EP (1) EP1721471A1 (fr)
JP (1) JP4986842B2 (fr)
CN (1) CN1926876B (fr)
FR (1) FR2867328A1 (fr)
WO (1) WO2005086488A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006109135A2 (fr) * 2005-04-11 2006-10-19 Nokia Corporation Procede et appareil assurant les etapes d'actualisation du codage video par un filtrage temporel a compensation de mouvement

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2909474B1 (fr) * 2006-12-04 2009-05-15 Canon Kk Procede et dispositif de codage d'images numeriques et procede et dispositif de decodage d'images numeriques codees
JP2008160398A (ja) * 2006-12-22 2008-07-10 Matsushita Electric Ind Co Ltd 動画像符号化装置および動画像符号化方法
WO2008125900A1 (fr) * 2007-04-13 2008-10-23 Nokia Corporation Codeur vidéo
KR100939435B1 (ko) * 2007-10-29 2010-01-28 에스케이 텔레콤주식회사 영상 분석 장치 및 방법
KR20090097015A (ko) 2008-03-10 2009-09-15 삼성전자주식회사 스케일러블 영상 부호화장치 및 스케일러블 영상복호화장치
CN102742270B (zh) * 2010-02-05 2016-02-03 瑞典爱立信有限公司 用于子像素插值的改进的方法和设备
US9667964B2 (en) 2011-09-29 2017-05-30 Dolby Laboratories Licensing Corporation Reduced complexity motion compensated temporal processing
US9955176B2 (en) * 2015-11-30 2018-04-24 Intel Corporation Efficient and scalable intra video/image coding using wavelets and AVC, modified AVC, VPx, modified VPx, or modified HEVC coding
US10602187B2 (en) * 2015-11-30 2020-03-24 Intel Corporation Efficient, compatible, and scalable intra video/image coding using wavelets and HEVC coding
US10783392B1 (en) * 2017-05-16 2020-09-22 SIF Codec, LLC Motion compensation in system and method for processing digital signals based on compression of hierarchical pyramid
JP7125594B2 (ja) 2018-04-27 2022-08-25 富士通株式会社 符号化装置、符号化方法、及び符号化プログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6674911B1 (en) * 1995-09-14 2004-01-06 William A. Pearlman N-dimensional data compression using set partitioning in hierarchical trees
JPH09322175A (ja) * 1996-05-30 1997-12-12 Sony Corp 動画像復号化方法及び装置
CN1205818C (zh) * 2000-04-11 2005-06-08 皇家菲利浦电子有限公司 视频编码和解码方法
JP4129374B2 (ja) * 2001-09-18 2008-08-06 松下電器産業株式会社 画像符号化方法および画像復号化方法
JP3936335B2 (ja) * 2001-11-30 2007-06-27 株式会社エヌ・ティ・ティ・ドコモ 動画像符号化装置、動画像復号化装置、動画像符号化方法、動画像復号化方法、プログラム及びプログラムを記憶したコンピュータ読み取り可能な記録媒体
JP4102973B2 (ja) * 2002-04-24 2008-06-18 日本電気株式会社 動画像の符号化方法および復号化方法、これを用いた装置とプログラム
JP4120301B2 (ja) * 2002-04-25 2008-07-16 ソニー株式会社 画像処理装置およびその方法
AU2003246987A1 (en) * 2002-07-09 2004-01-23 Nokia Corporation Method and system for selecting interpolation filter type in video coding
JP2006503518A (ja) * 2002-10-16 2006-01-26 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 高度にスケーラブルな3次元オーバコンプリート・ウェーブレット・ビデオ符号化
EP1455534A1 (fr) * 2003-03-03 2004-09-08 Thomson Licensing S.A. Codage et décodage échelonnables pour des signaux vidéo numériques entrelacés
US8107535B2 (en) * 2003-06-10 2012-01-31 Rensselaer Polytechnic Institute (Rpi) Method and apparatus for scalable motion vector coding

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
TURAGA D S ET AL: "Content-adaptive filtering in the UMCTF framework", 2003 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING. PROCEEDINGS. (ICASSP). HONG KONG, APRIL 6 - 10, 2003, IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING (ICASSP), NEW YORK, NY : IEEE, US, vol. VOL. 1 OF 6, 6 April 2003 (2003-04-06), pages III621 - III624, XP010639149, ISBN: 0-7803-7663-3 *
VAN DER SCHAAR M ET AL: "Unconstrained motion compensated temporal filtering (umctf) framework for wavelet video coding", 2003 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING. PROCEEDINGS. (ICASSP). HONG KONG, APRIL 6 - 10, 2003, IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING (ICASSP), NEW YORK, NY : IEEE, US, vol. VOL. 1 OF 6, 6 April 2003 (2003-04-06), pages III81 - III84, XP010639014, ISBN: 0-7803-7663-3 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006109135A2 (fr) * 2005-04-11 2006-10-19 Nokia Corporation Procede et appareil assurant les etapes d'actualisation du codage video par un filtrage temporel a compensation de mouvement
WO2006109135A3 (fr) * 2005-04-11 2007-01-25 Nokia Corp Procede et appareil assurant les etapes d'actualisation du codage video par un filtrage temporel a compensation de mouvement

Also Published As

Publication number Publication date
JP4986842B2 (ja) 2012-07-25
CN1926876B (zh) 2012-05-09
EP1721471A1 (fr) 2006-11-15
CN1926876A (zh) 2007-03-07
JP2007535834A (ja) 2007-12-06
US20070171971A1 (en) 2007-07-26
WO2005086488A1 (fr) 2005-09-15

Similar Documents

Publication Publication Date Title
EP1721471A1 (fr) Procede de codage et de decodage d&#39;une sequence d&#39;images codee avec echelonnabilite spatiale et temporelle
EP1721470B1 (fr) Procede de codage et de decodage d&#39;une sequence d&#39;images par analyse temporelle hierarchique
JP5364820B2 (ja) フィルタを選択する装置及び方法
US8682089B2 (en) Image processing apparatus, image processing method, program and semiconductor integrated circuit
WO2007020230A2 (fr) Procede de codage et de decodage d&#39;images video avec echelonnabilite spatiale
JP2007150432A (ja) 動画像符号化/復号化方法および装置
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
FR2820255A1 (fr) Procedes de codage et de decodage d&#39;images, dispositifs, systemes, signaux et applications correspondants
FR2886787A1 (fr) Procede et dispositif de codage et de decodage d&#39;une sequence d&#39;images
WO2007077178A1 (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
FR2887711A1 (fr) Procede de codage et decodage hierarchique
FR2852179A1 (fr) Procede de codage d&#39;une image video
EP0691065B1 (fr) Codage/decodage compatibles sous-bandes d&#39;images de television
EP1636996A1 (fr) Procede de codage et/ou de decodage de groupes d&#39;images
FR2873246A1 (fr) Procede d&#39;estimation du mouvement pour le codage d&#39;une sequence d&#39;images avec echelonnabilite spatiale et temporelle
FR3041851A1 (fr) Procede d&#39;allocation de debit, dispositif, codeur et programme d&#39;ordinateur associes
FR2820256A1 (fr) Procedes de codage et de decodage d&#39;images, dispositifs, systemes signaux et applications correspondantes
FR2956552A1 (fr) Procede de codage ou de decodage d&#39;une sequence video, dispositifs associes
WO2007020278A2 (fr) Procede de codage et de decodage d&#39;images progressives a haute resolution et entrelacees a basse resolution
EP1708508A1 (fr) codage et décodage vidéo avec filtrage temporel compensé en mouvement
Nakachi et al. A study on non-octave scalable coding using motion compensated inter-frame wavelet transform
FR2915048A1 (fr) Procede de sur-echantillonnage pour le codage et/ou le decodage d&#39;un flux de donnees echelonnable, produits programme d&#39;ordinateur et dispositifs correspondants.
FR2878384A1 (fr) Compression video par modification de quantification par zones d&#39;images