FR2904494A1 - Procede et dispositif de compression d'image, systeme de telecommunication comportant un tel dispositif et programme mettant en oeuvre un tel procede - Google Patents
Procede et dispositif de compression d'image, systeme de telecommunication comportant un tel dispositif et programme mettant en oeuvre un tel procede Download PDFInfo
- Publication number
- FR2904494A1 FR2904494A1 FR0653129A FR0653129A FR2904494A1 FR 2904494 A1 FR2904494 A1 FR 2904494A1 FR 0653129 A FR0653129 A FR 0653129A FR 0653129 A FR0653129 A FR 0653129A FR 2904494 A1 FR2904494 A1 FR 2904494A1
- Authority
- FR
- France
- Prior art keywords
- image
- quality level
- compressed
- coding
- quality
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/34—Scalability techniques involving progressive bit-plane based encoding of the enhancement layer, e.g. fine granular scalability [FGS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/164—Feedback from the receiver or from the transmission channel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/187—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
- H04N19/29—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding involving scalability at the object level, e.g. video object layer [VOL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Le procédé de compression d'images comporte, pour au moins une partie d'une image à compresser :- une étape d'obtention d'au moins une valeur de paramètre représentative du fonctionnement d'au moins un dispositif de décompression d'image compressée ;- une étape de sélection d'un niveau de qualité en fonction d'au moins une dite valeur de paramètre ;- une étape d'estimation d'au moins un vecteur de mouvement entre une partie de l'image à compresser et une partie d'une image de référence reconstruite au niveau de qualité sélectionné et- une étape de codage d'au moins ladite partie d'image à compresser en mettant en oeuvre chaque vecteur de mouvement estimé.Dans des modes de réalisation, au cours de l'étape d'obtention, un paramètre pour est représentatif d'un débit utilisé et, au cours de l'étape de sélection, on détermine, parmi une pluralité de plages de valeurs du débit, celle dans laquelle se trouve la majorité, au moins relative, des valeurs du débit utilisées et on sélectionne un niveau de qualité correspondant, de manière prédéterminée, à cette plage de valeurs.
Description
1 La présente invention concerne un procédé et un dispositif de
compression d'images, un système de télécommunication comportant un tel dispositif et un programme mettant en oeuvre un tel procédé. Elle s'applique, en particulier, aux systèmes de compression vidéo capables de fournir différents niveaux de qualité, dans la dimension SNR (acronyme de Signal to Noise Ratio pour rapport signal à bruit). Le futur système de compression scalable émergeant SVC (acronyme de Scalable Video Coding pour codage vidéo adaptable ou hiérarchique), extension du standard de compression vidéo H264/AVC, est en cours de normalisation. L'objectif de cette nouvelle norme est de fournir une représentation compressée adaptable (en anglais scalable ) ou hiérarchique d'une séquence vidéo numérique. SVC prévoit de supporter une scalabilité, ou adaptabilité, selon les trois axes suivants: scalabilité temporelle, spatiale et en qualité. Concernant la scalabilité en qualité, celle-ci peut prendre deux formes différentes dans la spécification SVC actuelle. En effet, une couche de raffinement en qualité peut être de type CGS (acronyme de Coarse Grain Scalability pour adaptabilité à gros grain) ou bien FGS (acronyme de Fine Grain Scalability pour adaptabilité à fine granularité). Une couche de raffinement de type CGS contient, à la fois, des données de raffinement, des données de mouvement et des données de texture. Une couche de qualité CGS combine, d'une part, la prédiction temporelle compensée en mouvement et, d'autre part, le codage prédictif des données de mouvement et de texture depuis sa couche de base. Une couche de raffinement de type FGS contient des données de raffinement progressif des informations de texture. Une ou plusieurs couches de qualité FGS successives peuvent être codées au dessus de la couche de base ou d'une couche de scalabilité spatiale ou de type CGS. Typiquement, des moyens de quantification emboîtée et de codage progressif des coefficients 2904494 2 DCT (acronyme de Discrete Cosine Transform pour transformation en cosinus discrète) permet de fournir un train binaire FGS emboîté, apte à être tronqué à une position quelconque et augmentant progressivement la qualité de l'ensemble de l'image considérée. 5 Dans la contribution technique JVT-P059 présentée à la réunion de JVT (acronyme de Joint Video Team pour équipe vidéo conjointe) de Poznan, Juillet 2005: "Comparison of MCTF and closed-loop hierarchical B pictures", il est montré une comparaison de l'efficacité de codage obtenue en appliquant l'estimation de mouvement en boucle ouverte, c'est à dire entre 10 images originales de la séquence à coder, et en boucle fermée, c'est à dire en utilisant comme images de référence les versions reconstruites des images au plus haut niveau de débit FGS. Cette contribution montre que les meilleures performances sont obtenues à l'aide de l'estimation en mouvement en boucle fermée. 15 La contribution technique JVT-P057 présentée à la réunion de JVT (Joint Video Team) de Poznan, Juillet 2005: "Implementation of close-loop coding in JSVM" aboutit à une conclusion similaire. Cependant, les inventeurs ont observé que la couche de qualité FGS la plus importante pour un utilisateur n'est pas la couche de qualité FGS 20 maximale mais la couche qu'il reçoit effectivement après transmission. Ainsi, un codage effectué avec une estimation de mouvement prenant, comme référence, une reconstruction de l'image de référence du niveau de qualité maximal, ne sera pas optimal, au sens de l'efficacité de compression, si l'utilisateur reçoit un flux SVC à un niveau de qualité intermédiaire, inférieur au 25 niveau de qualité maximal. L'invention a ainsi pour but d'optimiser l'efficacité de codage pour le niveau de qualité de type FGS le plus important pour l'utilisateur, par exemple le niveau de qualité correspondant au niveau, ou intervalle, de débit le plus demandé par un ensemble de clients à un instant donné. 30 A cet effet, selon un premier aspect, la présente invention vise un procédé de compression d'une séquence d'images, qui comporte, pour au moins une partie d'une image à compresser : 2904494 3 - une étape d'obtention d'au moins une valeur de paramètre représentative du fonctionnement d'au moins un dispositif de décompression d'image compressée ; - une étape de sélection d'un niveau de qualité en fonction d'au 5 moins une dite valeur de paramètre ; - une étape d'estimation d'au moins un vecteur de mouvement entre une partie de l'image à compresser et une partie d'une image de référence reconstruite au niveau de qualité sélectionné et - une étape de codage d'au moins ladite partie d'image à 10 compresser en mettant en oeuvre chaque vecteur de mouvement estimé. Ainsi, la présente invention permet une sélection dynamique du niveau de qualité des images de référence en fonction de la demande exprimée par les utilisateurs, afin d'optimiser la qualité de l'image rendue pour la majorité de ces utilisateurs. 15 Entre autres avantages de la présente invention, on observe que l'utilisation de ce procédé de compression vidéo au sein du codeur, ou du dispositif associé, ne nécessite pas de modification du procédé et du dispositif de décodage. Selon des caractéristiques particulières, au cours de l'étape 20 d'obtention d'au moins une valeur de paramètre, un paramètre pour lequel on obtient au moins une valeur est représentatif d'un débit utilisé pour au moins une transmission de données comprimées à destination d'au moins un dispositif de décompression d'image compressée. Ainsi, la présente invention permet une sélection dynamique du 25 niveau de qualité des images de référence en fonction des différents niveaux de débit utilisés par les utilisateurs des dispositifs de décompression, afin d'optimiser la qualité de l'image rendue pour la majorité de ces utilisateurs. Selon des caractéristiques particulières, au cours de l'étape de sélection d'un niveau de qualité, on détermine, parmi une pluralité de plages de 30 valeurs d'un paramètre prédéterminé, celle dans laquelle se trouve la majorité, au moins relative, des valeurs dudit paramètre utilisée par des dispositifs de 2904494 4 décompression d'image compressée et on sélectionne un niveau de qualité correspondant, de manière prédéterminée, à ladite plage de valeurs. Selon des caractéristiques particulières, au cours de l'étape d'obtention d'au moins une valeur de paramètre, au moins un paramètre pour 5 lequel on obtient au moins une valeur est représentatif d'un niveau de qualité mis en oeuvre par un dispositif de décompression d'image compressée. Selon des caractéristiques particulières, au cours de l'étape de sélection d'un niveau de qualité, on sélectionne le niveau de qualité qui réalise une optimisation débit-distorsion du choix des vecteurs de mouvement et des 10 images de référence reconstruites utilisées pour l'estimation de mouvement. Selon des caractéristiques particulières, chaque dite partie d'image est un macrobloc, l'étape de sélection du niveau de qualité étant réalisée individuellement pour chaque macrobloc d'au moins une image de la séquence d'images. 15 Grâce à ces dispositions, l'optimisation est effectuée macrobloc par macrobloc, ce qui améliore la qualité des images décompressées. Selon des caractéristiques particulières, au cours de l'étape de codage, on effectue un codage SVC. Selon des caractéristiques particulières, au cours de l'étape de 20 codage, on effectue un codage d'une couche dite de base et d'au moins une couche de qualité de type adaptabilité à fine granularité, ou FGS. Grâce à chacune de ces dispositions, la présente invention s'applique pour optimiser l'efficacité de compression du codeur SVC, pour les couches de qualité correspondant aux plages de débits majoritairement 25 demandées par les différents clients multicast , c'est-à-dire recevant le même média. Pour l'utilisateur qui reçoit un flux SVC au niveau de qualité intermédiaire sélectionné, le codage pourra être plus optimal à ce niveau de qualité, au sens de l'efficacité de compression, puisque l'estimation de 30 mouvement prend alors comme référence la version de l'image de référence qui est effectivement reconstruite au niveau du décodeur de cet utilisateur. 2904494 5 Selon un deuxième aspect, la présente invention vise un dispositif de compression d'une séquence d'images, qui comporte un moyen d'obtention d'au moins une valeur de paramètre représentative du fonctionnement d'au moins un dispositif de décompression d'image compressée et, pour au moins 5 une partie d'une image à compresser : - un moyen de sélection d'un niveau de qualité en fonction d'au moins une dite valeur de paramètre ; - un moyen d'estimation d'au moins un vecteur de mouvement entre une partie de l'image à compresser et une partie d'une image de référence 10 reconstruite au niveau de qualité sélectionné et un moyen de codage d'au moins ladite partie d'image à compresser en mettant en oeuvre chaque vecteur de mouvement estimé. Selon des caractéristiques particulières, le moyen d'obtention d'au moins une valeur de paramètre est adapté à ce qu'un paramètre pour lequel il 15 obtient au moins une valeur soit représentatif d'un débit utilisé pour au moins une transmission de données comprimées à destination d'au moins un dispositif de décompression d'image compressée. Selon des caractéristiques particulières, le moyen de sélection d'un niveau de qualité est adapté à déterminer, parmi une pluralité de plages de 20 valeurs d'un paramètre prédéterminé, celle dans laquelle se trouve la majorité, au moins relative, des valeurs dudit paramètre utilisée par des dispositifs de décompression d'image compressée et à sélectionner un niveau de qualité correspondant, de manière prédéterminée, à ladite plage de valeurs. Selon des caractéristiques particulières, le moyen d'obtention d'au 25 moins une valeur de paramètre est adapté à ce qu'au moins un paramètre pour lequel il obtient au moins une valeur soit représentatif d'un niveau de qualité mis en oeuvre par un dispositif de décompression d'image compressée. Selon des caractéristiques particulières, le moyen de sélection d'un niveau de qualité est adapté à sélectionner le niveau de qualité qui réalise une 30 optimisation débit-distorsion du choix des vecteurs de mouvement et des images de référence reconstruites utilisées pour l'estimation de mouvement. 2904494 6 Selon des caractéristiques particulières, chaque dite partie d'image est un macrobloc, le moyen de sélection étant adapté à sélectionner un niveau de qualité individuellement pour chaque macrobloc d'au moins une image de la séquence d'images. 5 Selon des caractéristiques particulières, le moyen de codage st adapté à effectuer un codage SVC. Selon des caractéristiques particulières, le moyen de codage est adapté à effectuer un codage d'une couche dite de base et d'au moins une couche de qualité de type adaptabilité à fine granularité, ou FGS. 10 Selon un troisième aspect, la présente invention vise un système de télécommunication comprenant une pluralité de dispositifs terminaux reliés par l'intermédiaire d'un réseau de télécommunication, caractérisé en ce qu'il comprend au moins un dispositif terminal équipé d'un dispositif de compression tel que succinctement exposé ci-dessus et au moins un dispositif terminal 15 équipé d'un dispositif de décompression adapté à reconstruire des images à partir des données issues dudit dispositif de compression. Selon un quatrième aspect, la présente invention vise un programme d'ordinateur chargeable dans un système informatique, ledit programme contenant des instructions permettant la mise en oeuvre du procédé de 20 compression tel que succinctement exposé ci-dessus, lorsque ce programme est chargé et exécuté par un système informatique. Les avantages, buts et caractéristiques particulières de ce procédé de compression, de ce système de télécommunication et de ce programme d'ordinateur étant similaires à ceux du dispositif de compression tel que 25 succinctement exposé ci-dessus, ils ne sont pas rappelés ici. D'autres avantages, buts et caractéristiques de la présente invention ressortiront de la description qui va suivre, faite, dans un but explicatif et nullement limitatif en regard des dessins annexés, dans lesquels : - la figure 1 représente, sous forme d'un schéma bloc, un mode de 30 réalisation particulier d'un dispositif de compression d'image objet de la présente invention, - la figure 2 représente, schématiquement, une organisation 2904494 7 multicouche possible avec SVC, - la figure 3 illustre la représentation SVC hiérarchique de la figure 2, dans laquelle ont été ajoutées des couches de raffinement de type FGS, 5 - la figure 4 représente, schématiquement, un décodeur vidéo classique, typiquement représentatif du standard de compression vidéo H264/AVC, - la figure 5 représente, schématiquement, l'insertion de fonctions de décodage de couches de raffinement FGS dans le décodeur illustré en 10 figure 4, - la figure 6 représente, schématiquement, des niveaux de qualité d'affichage liés au codage et au décodage d'une séquence d'images avec incrémentation du niveau de qualité, - la figure 7 représente, sous forme d'un schéma fonctionnel, un 15 encodeur de l'art antérieur, - la figure 8 représente des qualités obtenues après décodage, en fonction du niveau de qualité de l'image de référence utilisée au codage, - la figure 9 représente, sous forme d'un schéma fonctionnel, un mode de réalisation particulier du dispositif d'encodage objet de la présente 20 invention, - la figure 10 représente, sous forme d'un logigramme, des étapes mises en oeuvre dans un mode de réalisation particulier du procédé de compression objet de la présente invention et - la figure 11 représente, sous forme d'un logigramme, des 25 étapes mises en oeuvre pour effectuer l'une des étapes illustrées en figure 10. Avant de décrire la présente invention, on rappelle, ci-dessous, en regard des figures 2 à 6, les principes des représentations multicouches d'une séquence vidéo avec codage vidéo à échelle variable (SVC). 30 Dans toute la description, les termes résidu et erreur de prédiction désignent, indifféremment, la même entité. De même, les termes codage et compression désignent les mêmes fonctions qui 2904494 8 s'appliquent à une image et les termes décodage , reconstruction et décompression sont équivalents entre eux. Dans la suite, nous désignons par couche de base la couche de base compatible avec la norme H264, une couche de scalabilité spatiale ou 5 encore une couche de scalabilité CGS. Le système de compression vidéo SVC prévoit des hiérarchies, ou scalabilités, dans les dimensions temporelle, spatiale et qualitative. La scalabilité temporelle est obtenue par la mise en oeuvre d'images de type B-hiérarchiques dans la couche de base, ou bien grâce à la MCTF 10 (acronyme de Motion Compensated Temporal Filtering pour filtrage temporel compensé en mouvement), non développée ici, dans les couches de raffinement. La scalabilité en qualité, ou SNR , existe sous deux formes. La scalabilité SNR grossière ou CGS est fournie par le 15 codage d'une couche (connue en anglais sous le nom de layer ) dans laquelle soit une décomposition temporelle en images de type B hiérarchique, soit un filtrage temporel compensé en mouvement MCTF est effectué indépendamment de la couche inférieure. Une couche de scalabilité SNR grossière est prédite depuis la couche directement 20 inférieure. Enfin, la scalabilité spatiale est obtenue par codage prédictif d'une couche dans laquelle un filtrage temporel compensé en mouvement MCTF est effectué indépendamment de la couche inférieure. Le codage d'une couche de raffinement spatial est similaire à celui d'une couche 25 CGS, à ceci près qu'il sert à compresser la séquence d'images vidéo à un niveau de résolution supérieur par rapport à celui de la couche inférieure. Le codage inclut, notamment, une étape de sur-échantillonnage spatial dans les deux dimensions spatiales (largeur et hauteur) dans le processus de prédiction inter couches. 30 La scalabilité SNR fine, ou adaptabilité à fine granularité, notée FGS , est obtenue par quantification progressive. Les couches FGS codées en raffinement d'une couche donnée ne transportent que des 2904494 9 informations de raffinement de texture. Elles réutilisent les vecteurs de mouvement transportés par la couche de base. Dans l'implémentation de référence actuelle du codeur SVC, cette estimation de mouvement est réalisée soit entre l'image originale à compresser et les images de référence 5 reconstruites à leur plus haut niveau de qualité FGS (estimation de mouvement en boucle fermée), ou bien entres images originales (estimation de mouvement en boucle ouverte). Par conséquent, l'estimation des vecteurs de mouvement, et donc l'efficacité de codage, se trouvent optimisées pour le niveau de qualité FGS maximal. 10 Un raffinement progressif de type FGS apporte donc un raffinement des valeurs des échantillons de texture représentant une erreur de prédiction spatiale ou temporelle. Notons qu'aucun raffinement des informations de mouvement n'est transporté par une couche de qualité FGS. Les vecteurs de mouvement associés à chaque macrobloc prédit temporellement sont 15 transportés par la couche de base au dessus de laquelle sont ajoutées les couches FGS. Autrement dit, pour reconstruire un macrobloc prédit temporellement, le vecteur de mouvement utilisé lors de la compensation en mouvement par le décodeur est inchangé quelque soit le niveau de qualité auquel le décodeur considéré opère. 20 Par conséquent, le codeur est en charge de générer un champ de mouvement unique qui sera ensuite utilisé pour la compensation en mouvement dans la couche de base (couche de base H264, spatiale, ou CGS), ainsi que dans toutes les couches FGS au-dessus de cette couche de base. La figure 2 illustre un exemple d'organisation multicouche 25 possible avec le système de compression SVC. La couche de base 200 représente la séquence d'images à son plus bas niveau de résolution spatiale, compressée de façon compatible avec la norme H264/AVC. Comme illustré en figure 2, la couche de base 200 est composée d'images de type I, P et B hiérarchiques. 30 Les images de type B hiérarchiques constituent un moyen de générer une couche de base scalable, c'est-à-dire adaptable, dans la dimension temporelle. Elles sont notées Bi, i > 1, et suivent la règle 2904494 10 suivante : une image de type Bi peut être prédite temporellement à partir des images d'ancrage, images de référence de type I ou P qui apparaissent en frontières du groupe d'images traité (en anglais Group of Pictures noté GOP ), l'entourant, ainsi que des images Bj, j < i, 5 localisées dans le même intervalle d'images d'ancrage I ou P. On observe qu'entre les images d'ancrage, se trouvent des images de type B. On observe aussi qu'une image B1, c'est-à-dire la première image d'une séquence, ne peut être prédite qu'à partir des images d'ancrage I ou P l'entourant puisqu'il n'y a pas d'image Bj avec j<i. 10 Dans toute la suite de la description, on se limite au cas où l'image de référence est constituée de l'image reconstruite précédente. Cependant, sur la base de la description qui va suivre, l'homme du métier sait mettre en oeuvre la présente invention dans d'autres cas dans lesquels la ou les images de références sont différentes de l'image reconstruite précédente, notamment si 15 une pluralité d'images de référence est utilisée. La portée de la présente invention n'est donc pas limitée à ce dernier cas. La présente invention couvre également le cas de listes d'images de références multiples utilisées pour la prédiction temporelle. En figure 2, deux couches de raffinement spatial, 205 et 210, 20 sont illustrées. La première couche de raffinement spatial 205 est codée de façon prédictive par rapport à la couche de base 200, et la deuxième couche de raffinement spatial 210 est prédite depuis la première couche de raffinement spatial 205. Une étape de sur-échantillonnage spatial qui sur-échantillonne avec un facteur égal à deux intervient au cours de ces 25 prédictions entre couches, aussi nommée prédiction inter layer , si bien qu'une couche supérieure contient des images dont les définitions sont, dans chaque dimension, doubles de celles de la couche immédiatement inférieure. La figure 3 illustre la représentation SVC hiérarchique de la figure 2, dans laquelle ont été ajoutées des couches de raffinement de type FGS 30 300 à 325. Une couche de raffinement FGS consiste en un raffinement en qualité de l'information de texture. Cette information de texture correspond soit à une erreur, ou résidu, de prédiction temporelle, soit 2904494 11 une erreur, ou résidu, de prédiction spatiale, soit une texture codée en Intra , sans prédiction. Une couche de scalabilité de type FGS fournit un raffinement en qualité des informations de textures concernées, par rapport à la couche inférieure. Ce raffinement en qualité est progressif, c'est à dire 5 que le segment de train binaire issu du codage FGS peut être tronqué en un point quelconque. Le résultat de cette troncature demeure décodable et fournit une représentation de l'ensemble de l'image considérée à un niveau de qualité augmentant avec la longueur du train binaire décodé. On dit également que le train binaire généré par le codage FGS est progressif en 10 qualité ou encore emboîté . Ces deux propriétés intéressantes du codage FGS (raffinement en qualité et progressivité du train binaire) sont obtenues grâce aux deux outils de codage suivants: - la quantification progressive : le paramètre de quantification 15 attribué à une couche de raffinement FGS donnée est tel que le pas de quantification appliqué sur les coefficients DCT est divisé par deux par rapport à la couche inférieure ; - - le codage cyclique des coefficients DCT des différents blocs d'une image : l'ordre de codage des coefficients DCT d'une image est 20 fonction de l'amplitude des différents coefficients DCT. Les coefficients de plus grande amplitude apparaissent en premier dans le train binaire. En effet, une passe de signifiance (en anglais significance pass ) signale des coefficients significatifs par rapport à un seuil d'amplitude. Ensuite, une passe de raffinement d'amplitude permet de coder des raffinements de 25 valeurs d'amplitude des coefficients déjà codés comme significatifs. Les macroblocs n'apparaissent donc plus dans le train binaire selon leur ordre de parcours naturel, comme dans le codage des autres couches SVC. Au contraire, les coefficients DCT des différents blocs sont entrelacés et leur ordonnancement est fonction de leur amplitude respective. Ce codage 30 cyclique, désigné sous le terme de raffinement progressif , assure la propriété d'emboîtement du train binaire FGS, c'est à dire la possibilité de le tronquer à n'importe quel point, tout en le laissant capable d'être décodé, 2904494 12 chaque couche de qualité supplémentaire fournissant un incrément de qualité couvrant spatialement l'ensemble de l'image considérée. Les figures 4 et 5 illustrent comment s'intègre le traitement des couches de raffinement SVC de type FGS au sein d'un algorithme de 5 décodage vidéo. La figure 4 illustre un décodeur vidéo classique 400, typiquement représentatif du standard de compression vidéo H264/AVC. Un tel décodeur inclut, de façon connue, l'application sur chaque macrobloc des fonctions successives de décodage entropique, bloc fonctionnel 405, de quantification inverse, bloc fonctionnel 410, de transformation inverse, bloc 10 fonctionnel 415. L'information résiduelle issue des ces trois premières opérations est ensuite ajoutée à un macrobloc de référence pour sa prédiction spatiale ou temporelle. L'image issue de cette prédiction passe enfin un filtre de réduction des effets de bloc (en anglais deblocking filter ) 420 réduisant les effets de blocs. L'image ainsi reconstruite est apte à être 15 affichée, d'une part, et à être stockée dans une liste 450 d'images de référence, d'autre part. Elle est, en effet, amenée à servir d'image de référence pour la prédiction temporelle, bloc fonctionnel 425, pour des prochaines images à décoder du train binaire compressé, l'image résultant de la prédiction temporelle 425 étant ajoutée à l'image issue de la transformation 20 inverse 415 par le biais d'un additionneur 435. La figure 5 illustre l'insertion des fonctions de décodage des couches de raffinement FGS dans un décodeur 500 comportant toutes les fonctions du décodeur 400 illustré en figure 4. Comme illustré en figure 5, le décodage de couches de raffinement progressif de type FGS, blocs 25 fonctionnels 505, 510 et 515, se trouve entre la fonction de quantification inverse 410 et la fonction de transformation inverse 415, et est successivement appliquée à tous les macroblocs de l'image courante en cours de décodage. Le décodage FGS apporte, sur l'ensemble de l'image, un raffinement des valeurs des échantillons après quantification inverse. Par 30 conséquent, comme illustré en figure 5, le décodage FGS fournit un raffinement progressif de l'erreur de prédiction spatiale ou temporelle. Cette erreur de prédiction raffinée passe ensuite par les mêmes fonctions que dans 2904494 13 le décodeur 400 de la figure 4. Un raffinement progressif de type FGS apporte donc un raffinement des valeurs des échantillons de texture représentant une erreur de prédiction spatiale ou temporelle. On observe qu'aucun raffinement des informations de 5 mouvement n'est transporté par une couche de qualité FGS. Les vecteurs de mouvement associés à chaque macrobloc prédit temporellement sont transportés par la couche de base au dessus de laquelle sont ajoutées les couches FGS. Autrement dit, pour reconstruire un macrobloc prédit temporellement, le vecteur de mouvement utilisé lors de la compensation en 10 mouvement par le décodeur est inchangé quelque soit le niveau de qualité auquel le décodeur considéré opère. Par conséquent, le codeur est en charge de générer un champ de mouvement unique qui sera ensuite utilisé pour la compensation en mouvement dans la couche de base (couche de base H264/AVC, spatiale, ou 15 CGS), ainsi que dans toutes les couches FGS au-dessus de cette couche de base. La figure 6 représente les interdépendances entre les différentes couches FGS des différentes images d'un GOP (acronyme de group of pictures pour groupe d'images) donné dans un flux vidéo SVC. La figure 6 20 illustre, d'une part, une couche de base 605, qui représente une couche SVC de scalabilité spatiale, CGS ou la couche de base compatible H264/AVC. Les images de cette couche de base sont notées lpbase Bnbase et Pnbase dans lesquels l'indice n représente l'indice de l'image, l'exposant base indique la couche à laquelle l'image appartient, et 1, P ou B représentent le type de 25 l'image. Par ailleurs, des couches de raffinement FGS 610, 615 et 620, ainsi que les images originales 625 sont également illustrées sur la figure 6. Les images de ces couches FGS sont notées 1,;, 8ä et P,;, notations dans lesquelles l'indice n représente l'indice de l'image, l'exposant i indique la couche FGS à laquelle l'image appartient, et 1, P ou B représentent le type de 30 l'image Lors du processus de prédiction temporelle des macroblocs d'une image de type P ou B, le codeur réalise une estimation de mouvement. Si on 2904494 14 prend l'exemple du codage de l'image PBbase illustrée en figure 6, l'estimation de mouvement fournit, pour chaque macrobloc de l'image PBbase, un vecteur de mouvement le liant à un macrobloc de référence appartenant à l'image 103, c'est-à-dire l'image de référence reconstruiteau niveau de qualité maximum. 5 Ce vecteur de mouvement est ensuite utilisé dans l'étape de compensation en mouvement afin de générer un macrobloc d'erreur de prédiction, également appelé résidu ou macrobloc résiduel. Ce macrobloc résiduel est ensuite codé par quantification, transformation et codage entropique. De plus, l'image n est codée par raffinement de la quantification appliquée sur les macroblocs 10 résiduels de l'image P31, avant que soit effectué un codage cyclique. Plusieurs stratégies peuvent être employées par le codeur pour l'estimation de mouvement utilisée, sans pour autant modifier l'algorithme de décodage. Les stratégies suivantes ont été explorées au sein du comité de standardisation SVC : 15 - l'estimation de mouvement en boucle ouverte consiste à estimer, pour chaque macrobloc d'une image originale à coder, un vecteur de mouvement entre ce macrobloc et un macrobloc d'une image de référence dans sa version originale. L'estimation de mouvement en boucle ouverte travaille donc entre images originales de la séquence à compresser ; 20 - l'estimation de mouvement en boucle fermée consiste à estimer des vecteurs de mouvement entre une image originale et une version reconstruite de l'image de référence utilisée. Dans des contributions techniques au comité de standardisation SVC, il est proposé d'utiliser l'image de référence reconstruite au plus haut niveau de qualité FGS pour réaliser 25 l'estimation de mouvement en boucle fermée. Des études montrent que de meilleures performances sont obtenues en réalisant l'estimation de mouvement en boucle fermée, entre l'image originale à coder et la ou les image(s) de référence(s) décodée(s) au plus haut niveau de débit FGS. En effet, travailler en boucle fermée permet de prendre en 30 compte les distorsions introduites lors de la quantification des images de références. 2904494 15 On observe, de plus, que l'une de ces contributions conduit à la conclusion que les meilleures performances de compression sont obtenues en réalisant la compensation en mouvement également en boucle fermée au codeur. La compensation en mouvement en boucle fermée consiste à calculer 5 les macroblocs d'erreur de prédiction temporelle en calculant la différence entre un macrobloc original à coder et le macrobloc de référence reconstruit au même niveau de qualité FGS. Cette configuration du codeur FGS conduit aux meilleures performances pour l'ensemble des niveaux de qualité FGS. La présente invention concerne principalement le processus 10 d'estimation de mouvement en boucle fermée. Les inventeurs ont observé que l'estimation de mouvement faite en prenant en compte la version reconstruite de l'image originale dans le plus haut niveau de qualité FGS conduit à une optimisation des performances de compression pour la couche de qualité FGS la plus haute. En effet, l'estimation de mouvement prend alors en compte les 15 distorsions introduites dans l'image de référence lors de la compression de cette dernière. Le fait d'employer les versions reconstruites des images de référence au plus haut débit FGS implique donc que le codeur prenne en compte les distorsions introduites lorsque toutes les couches FGS sont décodées. 20 La présente invention vise à réaliser l'estimation de mouvement par rapport à des images de référence reconstruites à des niveaux intermédiaires pour optimiser le codage pour ces niveaux de qualité intermédiaires. La mise en oeuvre de la présente invention permet de choisir un niveau de qualité, parmi les niveaux de qualité de base et FGS, comme niveau de reconstruction des 25 images de référence pour réaliser l'estimation de mouvement, notamment en boucle fermée. Dans des modes de réalisation de la présente invention, le choix du niveau de qualité utilisé pour l'estimation de mouvement est effectué en fonction d'une valeur d'importance relative attribuée à chacun des niveaux de 30 qualité pouvant être délivré par le codeur. Par exemple, dans le mode de mise en oeuvre privilégié de l'invention, cette valeur d'importance est définie en 2904494 16 fonction de la proportion des clients recevant, à chaque instant, chaque couche de qualité FGS au cours d'une transmission vidéo multi-point. Préférentiellement, on effectue le choix dynamique d'un niveau de qualité FGS pour la reconstruction d'images de référence utilisées ensuite pour 5 estimer les vecteurs de mouvement, en fonction de l'importance relative de ce niveau de qualité FGS dans la transmission effectuée. On observe que le fait de changer dynamiquement le niveau de qualité pour la reconstruction des images de référence ne nécessite pas de modifier l'algorithme de décodage vidéo. Celui-ci est inchangé, quelque soit la 10 stratégie d'estimation de mouvement utilisée du côté du codeur. On observe, en figure 1, un dispositif 100 objet de la présente invention, ou codeur, et différents périphériques adaptés à implémenter la présente invention. Dans le mode de réalisation illustré en figure 1, le dispositif 100 est un micro-ordinateur de type connu connecté, par le biais 15 d'une carte graphique 104, à un moyen d'acquisition ou de stockage d'images 101, par exemple une caméra numérique ou un scanner, adapté à fournir des informations d'images animées à compresser. Le dispositif 100 comporte une interface de communication 118 reliée à un réseau 134 apte à transmettre, en entrée, des données 20 numériques à compresser ou, en sortie, des données compressées par le dispositif. Le dispositif 100 comporte également un moyen de stockage 112, par exemple un disque dur, et un lecteur 114 de disquette 116. La disquette 116 et le moyen de stockage 112 peuvent contenir des données à compresser, des données compressées et un programme informatique 25 adapté à implémenter le procédé objet de la présente invention. Selon une variante, le programme permettant au dispositif de mettre en oeuvre la présente invention est stocké en mémoire morte ROM (acronyme de read only memory pour mémoire non réinscriptible) 106. Selon une autre variante, le programme est reçu par l'intermédiaire du 30 réseau de communication 134 avant d'être stocké. Le dispositif 100 est relié à un microphone 124 par l'intermédiaire d'une carte d'entré/sortie 122 qui permet d'associer des données audio 2904494 17 aux données d'images à coder. Ce même dispositif 100 possède un écran 108 permettant de visualiser les données à décompresser (cas du client) ou de servir d'interface avec l'utilisateur pour paramétrer certains modes d'exécution du dispositif 100, à l'aide d'un clavier 110 et/ou d'une souris par 5 exemple. Une unité centrale CPU (acronyme de central processing unit ) 103 exécute les instructions du programme informatique et de programmes nécessaires à son fonctionnement, par exemple un système d'exploitation. Lors de la mise sous tension du dispositif 100, les programmes stockés 10 dans une mémoire non volatile, par exemple la mémoire morte 106, le disque dur 112 ou la disquette 116, sont transférés dans une mémoire vive RAM (acronyme de random access memory pour mémoire à accès aléatoire) 105 qui contiendra alors le code exécutable du programme implémentant le procédé objet de la présente invention ainsi 15 que des registres pour mémoriser les variables nécessaires à sa mise en oeuvre. Bien entendu, la disquette 116 peut être remplacée par tout support d'information amovible, tel que disque compact, clé ou carte mémoire. De manière plus générale, un moyen de stockage d'information, lisible par un 20 ordinateur ou par un microprocesseur, intégré ou non au dispositif, éventuellement amovible, mémorise un programme mettant en oeuvre le procédé de codage objet de la présente invention. Un bus de communication 102 permet la communication entre les différents éléments inclus dans le dispositif 100 ou reliés à lui. La représentation, en figure 1, du bus 102 25 n'est pas limitative et notamment l'unité centrale 103 est susceptible de communiquer des instructions à tout élément du dispositif 100, directement ou par l'intermédiaire d'un autre élément du dispositif 100. Par l'exécution du programme implémentant le procédé objet de la présente invention, l'unité centrale 103 réalise les fonctions illustrées en figure 9 30 et les étapes illustrées en figures 10 et 11 et constitue les moyens suivants : - un moyen d'obtention d'au moins une valeur de paramètre représentative du fonctionnement d'au moins un dispositif de décompression 2904494 18 d'image compressée - et, pour au moins une partie d'une image à compresser, ici chacun des macroblocs d'images à compresser : - un moyen de sélection d'un niveau de qualité en fonction d'au 5 moins une dite valeur de paramètre ; - un moyen d'estimation d'au moins un vecteur de mouvement entre une partie de l'image à compresser et une partie d'une image de référence reconstruite au niveau de qualité sélectionné et - un moyen de codage d'au moins ladite partie d'image à 10 compresser en mettant en oeuvre chaque vecteur de mouvement estimé. Dans des modes de réalisation particuliers, le moyen de codage est adapté à effectuer un codage SVC à codage de couches de qualité de type FGS. Dans des modes de réalisation, le moyen de sélection détermine l'importance relative de différents niveaux de débit, en déterminant à quel 15 niveau de débit se trouvent la majorité des utilisateurs ou en déterminant une valeur médiane ou une moyenne des niveaux de débit mis en oeuvre par les utilisateurs, éventuellement en mettant en oeuvre une moyenne pondérée, chaque niveau de débit et/ou chaque utilisateur possédant un poids relatif, par exemple en relation avec une différence de distorsion entre les mises en oeuvre 20 de différents niveaux de qualité pour reconstruire les images de référence. En variante, on met en oeuvre une fonction de coût représentant la perte de qualité correspondant à un choix ou un autre de niveau de qualité d'image reconstruite pour déterminer des vecteurs de mouvement et on recherche le minimum de cette fonction de coût, étant entendu que les utilisateurs peuvent ne pas avoir, 25 tous, la même influence sur la fonction de coût utilisée. Le diagramme fonctionnel de la figure 7 constitue le pendant, côté codeur, de l'algorithme de décodage illustré figure 5. On observe, en figure 7, un codeur vidéo 700 générant des niveaux de qualité FGS selon l'état de l'art. Le codeur vidéo 700 comporte une entrée vidéo fournissant des séquences 30 d'images à compresser, une fonction de transformation 705, une fonction de quantification 710 et trois fonctions de raffinement progressif FGS 715 à 725, respectivement pour les niveaux FGS1 à FGS3. Le raffinement progressif des 2904494 19 données de texture de qualité maximal, issu de la fonction de raffinement progressif FGS 3 725, est utilisé par une fonction de quantification inverse 730, suivie d'une fonction de transformation inverse 735, pour reconstruire une image d'erreur de prédiction ou résiduelle au niveau de qualité maximale. 5 Le raffinement progressif des données de texture de qualité maximale, issu de la fonction de raffinement progressif FGS3 725, est fourni, d'une part, à un codeur entropique 745, qui fournit, en sortie, les images compressées codées. L'image de référence, provenant du commutateur 750 est sommée à 10 cette image résiduelle reconstruite et transmise à un filtre de réduction des effets de bloc (en anglais "deblocking filter") 740. L'image reconstruite qui résulte de ce filtre 740 constitue l'image courante reconstruite dans sa version définitive, prête à l'affichage. Cette image reconstruite est d'autre part stockée dans une liste d'images de références 770. 15 L'image de référence stockée dans l'espace mémoire 770 est mise en oeuvre par une fonction d'estimation de mouvement 765 qui détermine, pour chaque macrobloc de l'image courante, un vecteur de mouvement et le fournit, d'une part, au codeur entropique 745 et, d'autre part, à une fonction de compensation de mouvement 760 qui utilise, par ailleurs, l'image de référence 20 provenant de la mémoire 770. L'étape de compensation en mouvement 760 fournit un macrobloc de référence pour la prédiction temporelle de chaque macrobloc de l'image courante. De plus, l'étape de prédiction intra-image 755 détermine, pour
chaque bloc du macrobloc courant en cours de traitement, un bloc de référence pour sa 25 prédiction spatiale. Le rôle du commutateur 750 est ensuite de choisir le mode de codage, parmi la prédiction temporelle, la prédiction spatiale et le codage INTRA, qui fournit les meilleures performances de compression pour le macrobloc courant. Ce choix de mode optimisé au sens débit-distorsion fournit donc le macrobloc de référence utilisé pour prédire chaque macrobloc de 30 l'image courante. Il en résulte une image de prédiction de l'image courante. Comme indiqué par la figure 7, la différence entre l'image originale courante et cette image de prédiction est calculée, et constitue l'image d'erreur de 2904494 20 prédiction à coder. Ce codage est opéré par les étapes de transformation, quantification et codage entropique mentionnées précédemment. Ainsi, le codeur vidéo 700 génère une couche de base et plusieurs couches de raffinement progressif FGS au-dessus de cette couche de base. Le 5 schéma fonctionnel de la figure 7 illustre typiquement un codeur vidéo classique de type H264/AVC, dans lequel des fonctions de génération de niveaux de qualité de type FGS 715 à 725 ont été ajoutées. Ces raffinements FGS viennent progressivement augmenter la quantification de la couche de base, en divisant par deux le pas de quantification d'un niveau de qualité FGS donné par 10 rapport au niveau de qualité précédent. Les indices de quantification des coefficients transformés dans la couche de base, de même que les éléments de raffinement de quantification des couches FGS sont fournies au codeur entropique 745 en charge de générer le train binaire compressé scalable dans la dimension SNR.
15 En parallèle, une reconstruction est réalisée par les fonctions 730 à 740, pour former une image de référence qui sert pour l'estimation et pour la compensation en mouvement effectuées par les fonctions 760 et 765. La figure 8 montre un avantage de la mise en oeuvre de la présente invention, en termes de performances de compression. On observe, en figure 8, 20 les différentes courbes débit-distorsion 805, 810, 815 et 820 que l'on peut envisager d'obtenir lorsque l'estimation de mouvement est effectuée en utilisant successivement les différents niveaux de qualité de base et FGS pouvant être délivrés par le codeur. Sur chacune de ces courbes, plus faible est la distorsion, représentée en ordonnée, et meilleure est la qualité de l'image. La figure 8 25 illustre le fait que prendre, comme références pour l'estimation de mouvement, les images reconstruites à un niveau de qualité donné conduit à une optimisation du codage pour la plage de débit correspondant à ce niveau de qualité. Par exemple, choisir le niveau de qualité FGS maximal, ici FGS3, 30 pour reconstruire les images de référence servant pour l'estimation de mouvement en boucle fermée correspond à une courbe débit distorsion 820 en dessous des autres courbes 805 à 815, c'est-à-dire à une image reconstruite de 2904494 21 meilleure qualité, pour la plage de débit correspondant précisément à ce niveau de qualité, à droite de la figure. Par ailleurs, la figure 8 montre un histogramme hypothétique 825 des différentes valeurs de débit effectivement reçus par un ensemble de clients 5 dans un arbre de transmission multicast, ces valeurs de débit étant des valeurs représentatives du fonctionnement des dispositifs clients. Il apparaît, sur cet exemple, que la plage de débit la plus importante, c'est-à-dire la plus "demandée" par l'ensemble des clients, correspond à une plage de débit compatible avec le deuxième niveau de qualité FGS, appelé FGS2.
10 Grâce à la mise en oeuvre de certains modes de réalisation de la présente invention, on optimise le codage SVC pour ce niveau de qualité. Dans d'autres modes de réalisation de la présente invention, on optimise le codage SVC pour le niveau de qualité correspondant à un minimum d'une fonction de coût représentant la perte de qualité correspondant, pour 15 l'ensemble des utilisateurs, au choix d'un niveau de qualité d'image reconstruite pour déterminer des vecteurs de mouvement. On observe que le principe de l'invention s'applique également dans le cas pratique d'une transmission vidéo point à point, c'est à dire depuis un serveur vidéo vers un unique client. Dans ce cas, la plage de débit pertinente 20 ou importante correspond au débit effectivement reçu par le client unique. Cette bande passante correspond à une couche de qualité de type FGS donnée. Conformément à la présente invention, on optimise les performances de codage pour ce niveau de qualité FGS, et on effectue donc l'estimation de mouvement en utilisant comme images de référence des images reconstruites 25 précisément à ce niveau de qualité utilisé par le client. Ainsi, conformément à la présente invention, on adapte le niveau de qualité de reconstruction des images de référence pour l'estimation de mouvement en fonction d'au moins une valeur d'au moins un paramètre représentative du fonctionnement d'au moins un dispositif de décompression 30 d'image compressée, par exemple les valeurs des débits ou de niveaux de qualité utilisés à la décompression.
2904494 22 On observe, en figure 9, un schéma fonctionnel d'un mode de réalisation particulier d'un codeur FGS 900 mettant en oeuvre la présente invention. Comme le codeur vidéo 700 illustré en figure 7, le codeur vidéo 900 génère une couche de base, compatible H264/AVC, ainsi que des couches de 5 raffinement progressif de type FGS, en fonction d'un niveau de qualité sélectionné. On retrouve donc, en figure 9, les mêmes blocs fonctionnels que dans le codeur illustré en figure 7. Cependant, à ces blocs fonctionnels, s'ajoute un mécanisme 905 de choix adaptatif du niveau de qualité FGS auquel sont reconstruites les images de référence qui servent à l'estimation de mouvement 10 en boucle fermée, en fonction du niveau de qualité d'importance maximale. Ce mécanisme 905, représenté sous la forme d'un commutateur transmettant les coefficients transformés quantifiés dans l'un des quatre niveaux de qualité possibles (base, FGS1, FGS2 ou FGS3) à la fonction de quantification inverse 730, prend en compte des informations provenant du 15 réseau de transmission et indiquant la proportion de clients recevant chacune des couches de qualité parmi la couche de base et les couches de raffinement FGS dans le mode de mise en oeuvre décrit ici. D'une manière générale, les informations provenant du réseau contiennent des valeurs de paramètres représentatives du fonctionnement des dispositifs clients, aptes à recevoir et 20 décompresser l'image compressée. Par exemple, un mécanisme de retour d'information des clients vers le codeur rassemble les valeurs des débits reçus par les clients reliés audit réseau. Le serveur vidéo associé au codeur 900 est par ailleurs capable de déterminer les plages de débit correspondant à chacun des niveaux de qualité 25 délivrés par le codeur et transmis aux clients. Par exemple, en mettant en oeuvre l'enseignement du document Text of ISO/IEC 14496 Advanced Video Coding 3rd Edition de G. Sullivan, T. Wiegand et A. Luthra, disponible auprès de ISO/IEC/JTC 1/SC 29/WG 11, Redmond, WA, USA, on établit une correspondance entre les longueurs des NAL (acronyme de Network 30 Abstraction Layer , pour couche d'abstraction réseau) units, ou unités de transfert du train binaire, correspondant à chaque couche de qualité et les 2904494 23 débits indiqués par ces messages de retour depuis le réseau. Ce mécanisme est décrit plus bas, en regard de la figure 11. Cette mise en correspondance permet au codeur de déterminer la proportion de clients recevant chacun des niveaux de qualité disponibles en 5 sortie du codeur et transmis par le serveur vidéo. Cette proportion de clients est utilisée pour définir l'importance relative de chaque couche de qualité générée par le codeur vidéo. Cette importance relative est utilisée pour effectuer le choix du niveau de qualité de base ou FGS pour la reconstruction d'images de référence au sein de la boucle de prédiction temporelle mise en oeuvre par les 10 fonctions de quantification inverse et de transformation inverse de la compression vidéo. Ainsi, le codeur 900 utilise, comme images de référence, dans son estimateur de mouvement 765, les images reconstruites et affichées par une majorité, au moins relative, de clients de l'application multicast envisagée. Ceci optimise donc la qualité vidéo vue par cette majorité de clients.
15 La figure 10 représente, sous forme d'un logigramme, les étapes mises en oeuvre dans un mode de réalisation particulier du procédé objet de la présente invention, pour réaliser le codage d'une séquence d'images, avec une couche de base et une ou plusieurs couches de raffinement progressif au-dessus de la couche de base.
20 Au cours d'une étape 1005, on reçoit une image originale à compresser, ainsi que des informations d'importance relative de chaque niveau de qualité, calculées et fournies par le procédé illustré en figure 11. Au cours de l'étape 1005, pour chaque macrobloc de l'image originale courante, on effectue une estimation de mouvement après avoir 25 recherché, de manière connue en soi, dans une image de référence, un macrobloc qui lui ressemble le plus au sens d'un critère débit-distorsion. Le macrobloc ainsi trouvé sert de macrobloc de référence pour la prédiction temporelle du macrobloc original courant. La différence entre les deux macroblocs représente le signal d'erreur de prédiction, qui est compressé via 30 les étapes de transformation 1012, quantification, étape 1015, et codage entropique, étape 1055.
2904494 24 Afin de former les couches de raffinement FGS, l'étape de quantification 1015 est suivie de plusieurs quantifications successives avec un pas de quantification divisé par deux entre deux niveaux de qualité FGS successifs, au cours d'une étape 1020. Le résultat de ces quantifications 5 successives est mis en oeuvre au cours de l'étape de codage entropique 1055 pour générer un train binaire représentant la séquence vidéo sous forme compressée. Par ailleurs, chaque macrobloc d'erreur de prédiction ainsi compressé est ensuite reconstruit. Pour cela il subit tout d'abord une étape de 10 quantification inverse 1025. Cette quantification inverse est opérée au niveau de qualité d'importance relative maximale déterminé par ailleurs par le procédé illustré, sous forme de logigramme, en figure 11. Au cours de l'étape 1025, une quantification inverse est ainsi progressivement appliquée sur l'image jusqu'à atteindre le niveau de qualité d'importance relative maximale. Ensuite, les 15 coefficients transformés obtenus après quantification inverse, étape 1025, subissent une transformation inverse, étape 1030. Chaque macrobloc d'erreur de prédiction ainsi reconstruit est ajouté à son macrobloc de référence, étape 1035, pour donner un macrobloc reconstruit. Ces étapes étant appliquées à chaque macrobloc de l'image, l'image courante est donc complètement 20 reconstruite au niveau de qualité d'importance maximale. Cette image reconstruite subit ensuite un filtrage de réduction des effets de bloc 1037 (deblocking filter), puis est stockée dans une liste d'images de référence, au cours d'une étape 1040. Au cours d'une étape 1045, on détermine si l'image traitée 25 correspond à la dernière image de la séquence d'images à coder. Si oui, on met fin au procédé, étape 1060. Sinon, au cours d'une étape 1050, on passe à la prochaine image de la séquence d'images à coder et on retourne à l'étape 1005. L'image stockée reconstruite au niveau de qualité sélectionné sert d'image de référence pour l'estimation de mouvement appliquée sur les futures 30 images à coder. L'étape de reconstruction précédemment détaillée est donc effectuée de telle manière que l'estimation de mouvement pour les prochaines images de 2904494 25 la séquence est effectuée en référence à des images reconstruites au niveau de qualité le plus important, par exemple le niveau majoritairement perçu par les clients. La figure 11 représente, sous forme d'un logigramme, des étapes 5 mises en oeuvre pour la sélection du niveau de qualité d'importance relative maximale, parmi la couche de base et l'une des couches de type FGS délivrées par le codeur vidéo considéré. Au cours d'une étape 1105, on obtient des informations en provenance du réseau, concernant les débits reçus par l'ensemble des clients 10 de l'arbre de transmission multicast considéré. Dans le mode de réalisation particulier décrit ici, cette information prend la forme d'un nombre de clients recevant un débit donné. L'ensemble des débits est quantifié et réduit à un nombre limité d'intervalles de débits possibles. L'information retournée par le réseau est donc représentée par un tableau de nombres de clients 15 NbClients[Rk] pour chaque débit d'indice k, débit noté Rk, de l'ensemble des débits possibles. On observe que des mécanismes existent pour récupérer cette information synthétisant les conditions de réception de chaque client, et ne sont pas détaillés ici. Les étapes suivantes illustrées en figure 11, visent à calculer les 20 valeurs d'importance relative pour chaque niveau de qualité q dans le groupe {base, FGS1, FGS2, FGS3}. Dans le mode de réalisation du procédé objet de la présente invention illustré en figures 10 et 11, l'importance de chaque niveau de qualité est définie comme la proportion de clients qui reçoivent le niveau de qualité considéré. Cette importance est tout d'abord initialisée à 0 pour chaque 25 niveau de qualité au cours d'une étape 1110. Au cours d'une étape 1115, pour chaque débit Rk, avec les niveaux de qualité (de base ou FGS) générés par le codeur vidéo et délivrés par le serveur vidéo, on calcule la quantité d'information pour chaque niveau de qualité délivré par le serveur par unité de temps, sur une fenêtre temporelle glissante. Cette quantité d'information est 30 calculée en sommant les longueurs des NAL units (ou unité de transfert du train binaire SVC) émises par le serveur vidéo sur la durée de la fenêtre temporelle considérée. Ces longueurs de NAL units sont connues par le serveur vidéo, 2904494 26 puisque les NAL units sont précisément générées et transmises par ce même serveur vidéo. Cette quantité d'information calculée fournit un débit émis pour chaque niveau de qualité. On détermine alors, pour un débit Rk donné, la couche de qualité la plus haute, en partant de la couche de base, concernée 5 par cette valeur de débit, au cours d'une étape 1117. Ceci est donné par : FGS3 Q = Arg min length(q) Rk qe{base,FGS1,FGS2,FGS3} q=base où length(q) représente la longueur totale des NAL units émises pour le niveau de qualité q. Autrement dit, la valeur du débit Rk reçu par certains clients concerne un certain nombre de niveaux de qualité à partir du niveau de 10 base. Au cours d'une étape 1120, pour le niveau de qualité maximal concerné par la valeur de débit Rk, on met à jour la valeur d'importance relative de ce niveau de qualité. Cette mise à jour prend la forme suivante : IQ * IQ + NbClients [Rk 15 En effet, l'importance du niveau de qualité le plus haut concerné Q est augmentée d'autant qu'il y a de clients qui reçoivent le débit Rk. Au cours d'une étape 1125, on détermine si Rk est le dernier intervalle de débit à considérer. Si oui, on passe à l'étape 1135. Sinon, au cours d'une étape 1130, on passe au prochain intervalle de débit et on retourne à 20 l'étape 1115. Au cours de l'étape 1135, on normalise chaque valeur d'importance en la divisant parla somme des valeurs d'importance calculées. Ceci permet d'avoir une valeur d'importance relative comprise entre 0 et 1 pour chaque débit Rk. Enfin, le niveau de qualité de plus grande importance relative est 25 sélectionné au cours d'une étape 1140. Ce niveau le plus important est ensuite pris en compte à partir de l'étape 1025, illustrée en figure 10, pour la reconstruction de l'image de référence. La suite de la description introduit un autre mode de réalisation 30 particulier du procédé objet de la présente invention. Les entrées de ce mode de réalisation consistent en les différents intervalles de débits Rk reçus par les 2904494 27 différents clients multipoints. On détermine alors l'intervalle de débit le plus important, c'est-à-dire qui correspond à un débit reçu par une majorité de clients. Ce débit d'importance maximale est donc déterminé par la simple expression suivante: 5 R = max {Rk } . k Cette valeur de débit R d'importance maximale parmi les différents débits reçus par les différents clients est alors prise en compte dans l'algorithme d'estimation de mouvement contenu dans le processus de prédiction temporelle du codeur vidéo considéré. Dans le mode de réalisation 10 particulier décrit ici, le processus d'estimation de mouvement utilise un algorithme d'optimisation débit distorsion, connu de l'homme du métier et inclus dans le logiciel de référence SVC, pour estimer les vecteurs de mouvement liant les bloc de l'image courante à coder à leur blocs de référence. On modifie donc l'algorithme d'optimisation débit distorsion mis en 15 place dans le logiciel de référence SVC, appelé JSVM (acronyme de Joint Scalable Video Model pour modèle vidéo adaptable unifié), qui a pour but de fournir un logiciel de référence commun aux membres du comité JVT pour évaluer les performances des outils de compression proposés par les membres du comité. En effet, pour chaque partition de sous-macrobloc d'une partition P 20 d'un macrobloc d'une image de type B à coder, l'estimation de mouvement consiste à rechercher un bloc de référence dans une image de référence qui minimise le lagrangien suivant: mon(ron) = Arg min DsAD(P,ron,mon)+2sAD[R(ro,)+R(mon)j} (1) -.Es où la distorsion DSAD, pour une partition de macrobloc ou de sous- 25 macrobloc P, est donnée par l'expression suivante: DSAD(P,rO/1,m0/1) 1 Iorig[, l Iref,0/1[1+M0/1,x , .~+m0/1,y] (2) (i, j)EP Dans l'équation 2, long représente l'ensemble des échantillons de l'image originale en cours de codage et Iref,O/1 représente les échantillons de 30 l'image de référence utilisée pour la recherche du meilleur prédicteur du macrobloc courant. Le symbole 0/1 modélise le fait que la recherche est 2904494 28 effectuée successivement sur les listes indicées 0 et 1 d'images de référence, la liste d'indice 0 contenant les images de référence dans le passé (Lo), utilisées pour la prédiction avant, et la liste d'indice 1 contenant des images futures, utilisées pour la prédiction arrière (L1). Dans l'équation (1), 5 S est l'espace de recherche pour les vecteurs de mouvement. Les termes R(rom) et R(moä) spécifient le coût (nombre de bits) lié au codage des index roä et des composantes du vecteur de mouvement mO/,. Une fois obtenus les vecteurs de mouvement candidats pour chaque partition de sous-macrobloc Pi, i étant l'indice de partition de sous-macrobloc 10 dans la partition de macrobloc P, dans chacune des images de référence des listes Lo et L,, on sélectionne les images de références ro dans Ro et r, dans R,, et les vecteurs de mouvement associés mo et m, qui minimisent le lagrangien suivant : rois = Arg min T1(DsAD(Pi ,roii,monn(ro, 1,i)))+2sAD xR(mo~i(roi))+2sAD xR(ro1i) ron ERoii iEP lEt 15 (3) Pour introduire la notion d'importance relative de chaque niveau de qualité FGS dans les mécanismes de sélection, on modifie la définition de la mesure de distorsion DSAD, comme indiqué par l'équation (4) ci-dessous. DsAD (P, roi, ,level, moi ) = Importance(level) x lori, [a, j ] ù lref,o,i,ievei [i + moii,x , :1+ moii,y (i,j)EP 20 (4) où Importance(level) e [0,1] représente la mesure d'importance relative calculée en mettant en oeuvre les étapes illustrées en figure 11. lmportance(level) est mesurée pour chaque niveau de qualité level dans L = [base, fgsi, fgs2, fgs3}. Par conséquent, Iref,O/1,iew représente l'ensemble des 25 échantillons d'une image de référence candidate reconstruite au niveau de qualité level. Enfin, la dernière étape de sélection de l'image de référence, conformément à l'équation (3), est également modifiée. En effet, elle inclut, en plus, la sélection du niveau de qualité utilisé auquel est décodée l'image de référence utilisée pour la partition de macrobloc courante P. Cette étape de 30 sélection prend à présent la forme de l'équation (5): 2904494 29 (roli,level) = Arg min ~1(D SAD(Pj,roll,level,moli(roli,i )+2sAD xR(moli(roli,i +2sAD xR(roli) ronERoii jEP lEL (5) Ainsi, une optimisation débit-distorsion du choix des vecteurs de mouvement et des images de référence reconstruites utilisées pour l'estimation 5 de mouvement en boucle fermée est effectuée. Ce mode de réalisation de l'invention donne des résultats supérieurs au précédant, du point de vue des performances de compression, dans la mesure où le contenu effectif des images de référence reconstruites à chacun des niveaux de qualité FGS est pris en compte.
10 De plus, dans ce mode de réalisation, le choix du niveau de qualité FGS du bloc de référence pour l'estimation de mouvement est réalisé de façon adaptative pour chaque macrobloc de l'image courante en cours de compression. Ainsi, le processus d'estimation de mouvement est effectué en 15 utilisant comme image(s) de référence une ou plusieurs images reconstruites au niveau de qualité FGS sélectionné en fonction des conditions pratiques de transmission, par exemple la bande passante, dans un environnement multipoint donné. La qualité vidéo perçue est optimisée pour un débit, ou un niveau de qualité, requis par une majorité, au moins relative, de clients.
20 Ainsi, le contexte pratique de transmission des flux scalables ù typiquement les différentes valeurs de bandes passantes disponibles dans le réseau multicast considéré ù est pris en compte pour déterminer l'importance relative d'une couche de qualité FGS parmi un ensemble de plusieurs couches de qualité FGS délivrées par le codeur SVC.
25 La mise en oeuvre de la présente invention permet d'optimiser dynamiquement l'efficacité de compression du codeur SVC pour les couches de qualité correspondant aux besoins effectifs des différents clients multicast. Ainsi, la présente invention offre la fonctionnalité de codage progressif de l'information de texture et s'applique, en particulier, au cas du 30 système SVC en cours de standardisation, mais aussi à tout codeur ayant la capacité de coder des échantillons représentatifs d'un signal de façon 2904494 30 progressive et emboîtée, ou hiérarchisé, par exemple par utilisation de techniques de quantification emboîtée et codage par plans de bits. On observe que l'utilisation du procédé ou du dispositif objets de la présente invention, au niveau du codeur, ne nécessite pas de modification du 5 système ou du procédé de décodage.
Claims (18)
1 Procédé de compression d'une séquence d'images, caractérisé en ce qu'il comporte, pour au moins une partie d'une image à compresser : - une étape d'obtention d'au moins une valeur de paramètre représentative du fonctionnement d'au moins un dispositif de décompression d'image compressée ; - une étape de sélection d'un niveau de qualité en fonction d'au moins une dite valeur de paramètre ; - une étape d'estimation d'au moins un vecteur de mouvement entre une partie de l'image à compresser et une partie d'une image de référence reconstruite au niveau de qualité sélectionné et - une étape de codage d'au moins ladite partie d'image à compresser en mettant en oeuvre chaque vecteur de mouvement estimé.
2. Procédé selon la revendication 1, caractérisé en ce que, au cours de l'étape d'obtention d'au moins une valeur de paramètre, un paramètre pour lequel on obtient au moins une valeur est représentatif d'un débit utilisé pour au moins une transmission de données comprimées à destination d'au moins un dispositif de décompression d'image compressée.
3. Procédé selon l'une quelconque des revendications 1 ou 2, caractérisé en ce que, au cours de l'étape de sélection d'un niveau de qualité, on détermine, parmi une pluralité de plages de valeurs d'un paramètre prédéterminé, celle dans laquelle se trouve la majorité, au moins relative, des valeurs dudit paramètre utilisée par des dispositifs de décompression d'image compressée et on sélectionne un niveau de qualité correspondant, de manière prédéterminée, à ladite plage de valeurs.
4. Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce que, au cours de l'étape d'obtention d'au moins une valeur de paramètre, au moins un paramètre pour lequel on obtient au moins une valeur est représentatif d'un niveau de qualité mis en oeuvre par un dispositif de décompression d'image compressée. 2904494 32
5. Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce que, au cours de l'étape de sélection d'un niveau de qualité, on sélectionne le niveau de qualité qui réalise une optimisation débit-distorsion du choix des vecteurs de mouvement et des images de référence reconstruites 5 utilisées pour l'estimation de mouvement.
6. Procédé selon l'une quelconque des revendications 1 à 5, caractérisé en ce que chaque dite partie d'image est un macrobloc, l'étape de sélection du niveau de qualité étant réalisée individuellement pour chaque macrobloc d'au moins une image de la séquence d'images. 10
7. Procédé selon l'une quelconque des revendications 1 à 6, caractérisé en ce que, au cours de l'étape de codage, on effectue un codage SVC.
8. Procédé selon la revendication 7, caractérisé en ce que, au cours de l'étape de codage, on effectue un codage d'une couche dite de base et 15 d'au moins une couche de qualité de type adaptabilité à fine granularité, ou FGS.
9. Dispositif de compression d'une séquence d'images, caractérisé en ce qu'il comporte un moyen d'obtention d'au moins une valeur de paramètre représentative du fonctionnement d'au moins un dispositif de décompression 20 d'image compressée et, pour au moins une partie d'une image à compresser : - un moyen de sélection d'un niveau de qualité en fonction d'au moins une dite valeur de paramètre ; - un moyen d'estimation d'au moins un vecteur de mouvement entre une partie de l'image à compresser et une partie d'une image de 25 référence reconstruite au niveau de qualité sélectionné et - un moyen de codage d'au moins ladite partie d'image à compresser en mettant en oeuvre chaque vecteur de mouvement estimé.
10. Dispositif selon la revendication 9, caractérisé en ce que le moyen d'obtention d'au moins une valeur de paramètre est adapté à ce qu'un 30 paramètre pour lequel il obtient au moins une valeur soit représentatif d'un débit utilisé pour au moins une transmission de données comprimées à destination d'au moins un dispositif de décompression d'image compressée. 2904494 33
11. Dispositif selon l'une quelconque des revendications 9 ou 10, caractérisé en ce que le moyen de sélection d'un niveau de qualité est adapté à déterminer, parmi une pluralité de plages de valeurs d'un paramètre prédéterminé, celle dans laquelle se trouve la majorité, au moins relative, des 5 valeurs dudit paramètre utilisée par des dispositifs de décompression d'image compressée et à sélectionner un niveau de qualité correspondant, de manière prédéterminée, à ladite plage de valeurs.
12. Dispositif selon l'une quelconque des revendications 9 à 11, caractérisé en ce que le moyen d'obtention d'au moins une valeur de paramètre 10 est adapté à ce qu'au moins un paramètre pour lequel il obtient au moins une valeur soit représentatif d'un niveau de qualité mis en oeuvre par un dispositif de décompression d'image compressée.
13. Dispositif selon l'une quelconque des revendications 9 à 12, caractérisé en ce que le moyen de sélection d'un niveau de qualité est adapté à 15 sélectionner le niveau de qualité qui réalise une optimisation débit-distorsion du choix des vecteurs de mouvement et des images de référence reconstruites utilisées pour l'estimation de mouvement.
14. Dispositif selon l'une quelconque des revendications 9 à 13, caractérisé en ce que chaque dite partie d'image est un macrobloc, le moyen 20 de sélection étant adapté à sélectionner un niveau de qualité individuellement pour chaque macrobloc d'au moins une image de la séquence d'images.
15. Dispositif selon l'une quelconque des revendications 9 à 14, caractérisé en ce que le moyen de codage st adapté à effectuer un codage SVC. 25
16. Dispositif selon la revendication 15, caractérisé en ce que le moyen de codage est adapté à effectuer un codage d'une couche dite de base et d'au moins une couche de qualité de type adaptabilité à fine granularité, ou FGS.
17. Système de télécommunication comprenant une pluralité de 30 dispositifs terminaux reliés par l'intermédiaire d'un réseau de télécommunication, caractérisé en ce qu'il comprend au moins un dispositif terminal équipé d'un dispositif de compression selon l'une quelconque des 2904494 34 revendications 9 à 16 et au moins un dispositif terminal équipé d'un dispositif de décompression adapté à reconstruire des images à partir des données issues dudit dispositif de compression.
18. Programme d'ordinateur chargeable dans un système 5 informatique, ledit programme contenant des instructions permettant la mise en oeuvre du procédé selon l'une quelconque des revendications 1 à 8, lorsque ce programme est chargé et exécuté par un système informatique.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0653129A FR2904494B1 (fr) | 2006-07-26 | 2006-07-26 | Procede et dispositif de compression d'image, systeme de telecommunication comportant un tel dispositif et programme mettant en oeuvre un tel procede |
US11/778,917 US20080025399A1 (en) | 2006-07-26 | 2007-07-17 | Method and device for image compression, telecommunications system comprising such a device and program implementing such a method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0653129A FR2904494B1 (fr) | 2006-07-26 | 2006-07-26 | Procede et dispositif de compression d'image, systeme de telecommunication comportant un tel dispositif et programme mettant en oeuvre un tel procede |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2904494A1 true FR2904494A1 (fr) | 2008-02-01 |
FR2904494B1 FR2904494B1 (fr) | 2008-12-19 |
Family
ID=38006792
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0653129A Expired - Fee Related FR2904494B1 (fr) | 2006-07-26 | 2006-07-26 | Procede et dispositif de compression d'image, systeme de telecommunication comportant un tel dispositif et programme mettant en oeuvre un tel procede |
Country Status (2)
Country | Link |
---|---|
US (1) | US20080025399A1 (fr) |
FR (1) | FR2904494B1 (fr) |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7379849B2 (en) * | 2004-05-21 | 2008-05-27 | Bea Systems, Inc. | Diagnostic image |
US7376534B2 (en) * | 2004-05-21 | 2008-05-20 | Bea Systems, Inc. | Watches and notifications |
US7395458B2 (en) * | 2004-05-21 | 2008-07-01 | Bea Systems, Inc. | Diagnostic instrumentation |
US8490064B2 (en) | 2004-05-21 | 2013-07-16 | Oracle International Corporation | Hierarchical debug |
US7359831B2 (en) * | 2004-05-21 | 2008-04-15 | Bea Systems, Inc. | Diagnostic context |
FR2889004B1 (fr) * | 2005-07-22 | 2007-08-24 | Canon Kk | Procede et dispositif de traitement d'une sequence d'images numeriques a scalabilite spatiale ou en qualite |
FR2895172A1 (fr) * | 2005-12-20 | 2007-06-22 | Canon Kk | Procede et dispositif de codage d'un flux video code suivant un codage hierarchique, flux de donnees, procede et dispositif de decodage associes |
FR2897741B1 (fr) * | 2006-02-17 | 2008-11-07 | Canon Kk | Procede et dispositif de generation de donnees representatives d'un degre d'importance de blocs de donnees et procede et dispositif de transmission d'une sequence video encodee |
US8340179B2 (en) * | 2006-03-21 | 2012-12-25 | Canon Kabushiki Kaisha | Methods and devices for coding and decoding moving images, a telecommunication system comprising such a device and a program implementing such a method |
US7714838B2 (en) * | 2006-04-27 | 2010-05-11 | Research In Motion Limited | Handheld electronic device having hidden sound openings offset from an audio source |
KR100809301B1 (ko) * | 2006-07-20 | 2008-03-04 | 삼성전자주식회사 | 엔트로피 부호화/복호화 방법 및 장치 |
FR2907575B1 (fr) * | 2006-10-18 | 2009-02-13 | Canon Res Ct France Soc Par Ac | Procede et dispositif de codage d'images representant des vues d'une meme scene |
US8875199B2 (en) | 2006-11-13 | 2014-10-28 | Cisco Technology, Inc. | Indicating picture usefulness for playback optimization |
US20080115175A1 (en) * | 2006-11-13 | 2008-05-15 | Rodriguez Arturo A | System and method for signaling characteristics of pictures' interdependencies |
US20090180546A1 (en) * | 2008-01-09 | 2009-07-16 | Rodriguez Arturo A | Assistance for processing pictures in concatenated video streams |
US8416859B2 (en) * | 2006-11-13 | 2013-04-09 | Cisco Technology, Inc. | Signalling and extraction in compressed video of pictures belonging to interdependency tiers |
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 |
FR2910211A1 (fr) * | 2006-12-19 | 2008-06-20 | Canon Kk | Procedes et dispositifs pour re-synchroniser un flux video endommage. |
US8958486B2 (en) * | 2007-07-31 | 2015-02-17 | Cisco Technology, Inc. | Simultaneous processing of media and redundancy streams for mitigating impairments |
US8804845B2 (en) * | 2007-07-31 | 2014-08-12 | Cisco Technology, Inc. | Non-enhancing media redundancy coding for mitigating transmission impairments |
CN101904170B (zh) * | 2007-10-16 | 2014-01-08 | 思科技术公司 | 用于传达视频流中的串接属性和图片顺序的方法和*** |
US8718388B2 (en) * | 2007-12-11 | 2014-05-06 | Cisco Technology, Inc. | Video processing with tiered interdependencies of pictures |
US8416858B2 (en) * | 2008-02-29 | 2013-04-09 | Cisco Technology, Inc. | Signalling picture encoding schemes and associated picture properties |
FR2931025B1 (fr) * | 2008-05-07 | 2010-05-21 | Canon Kk | Procede de determination d'attributs de priorite associes a des conteneurs de donnees, par exemple dans un flux video, procede de codage, programme d'ordinateur et dispositifs associes |
US8886022B2 (en) | 2008-06-12 | 2014-11-11 | Cisco Technology, Inc. | Picture interdependencies signals in context of MMCO to assist stream manipulation |
US8971402B2 (en) * | 2008-06-17 | 2015-03-03 | Cisco Technology, Inc. | Processing of impaired and incomplete multi-latticed video streams |
US8705631B2 (en) * | 2008-06-17 | 2014-04-22 | Cisco Technology, Inc. | Time-shifted transport of multi-latticed video for resiliency from burst-error effects |
US8699578B2 (en) | 2008-06-17 | 2014-04-15 | Cisco Technology, Inc. | Methods and systems for processing multi-latticed video streams |
WO2009158550A2 (fr) * | 2008-06-25 | 2009-12-30 | Cisco Technology, Inc. | Support pour bloquer des opérations de mode truqué |
US8320465B2 (en) * | 2008-11-12 | 2012-11-27 | Cisco Technology, Inc. | Error concealment of plural processed representations of a single video signal received in a video program |
FR2939593B1 (fr) * | 2008-12-09 | 2010-12-31 | Canon Kk | Procede et dispositif de codage video |
US9118944B2 (en) * | 2009-02-05 | 2015-08-25 | Cisco Technology, Inc. | System and method for rate control in a network environment |
WO2010096767A1 (fr) * | 2009-02-20 | 2010-08-26 | Cisco Technology, Inc. | Signalisation de sous-séquences décodables |
US8782261B1 (en) | 2009-04-03 | 2014-07-15 | Cisco Technology, Inc. | System and method for authorization of segment boundary notifications |
US8949883B2 (en) | 2009-05-12 | 2015-02-03 | Cisco Technology, Inc. | Signalling buffer characteristics for splicing operations of video streams |
EP2257073A1 (fr) * | 2009-05-25 | 2010-12-01 | Canon Kabushiki Kaisha | Procédé et dispositif pour transmettre des données vidéo |
EP2265026A1 (fr) * | 2009-06-16 | 2010-12-22 | Canon Kabushiki Kaisha | Procédé et dispositif pour débloquer le filtrage de flux vidéo de type SVC pendant le décodage |
US8279926B2 (en) | 2009-06-18 | 2012-10-02 | Cisco Technology, Inc. | Dynamic streaming with latticed representations of video |
EP2285122B1 (fr) * | 2009-07-17 | 2013-11-13 | Canon Kabushiki Kaisha | Procédé et dispositif pour reconstruire une séquence de données vidéo après la transmission dans un réseau |
FR2955995B1 (fr) * | 2010-02-04 | 2012-02-17 | Canon Kk | Procede et dispositif de traitement d'une sequence video |
US20110222837A1 (en) * | 2010-03-11 | 2011-09-15 | Cisco Technology, Inc. | Management of picture referencing in video streams for plural playback modes |
US8792745B2 (en) * | 2011-12-06 | 2014-07-29 | Sony Corporation | Encoder optimization of adaptive loop filters in HEVC |
JP6636615B2 (ja) * | 2015-08-24 | 2020-01-29 | ホアウェイ・テクノロジーズ・カンパニー・リミテッド | 動きベクトル場の符号化方法、復号方法、符号化装置、および復号装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050117641A1 (en) * | 2003-12-01 | 2005-06-02 | Jizheng Xu | Enhancement layer switching for scalable video coding |
US20050129123A1 (en) * | 2003-12-15 | 2005-06-16 | Jizheng Xu | Enhancement layer transcoding of fine-granular scalable video bitstreams |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6614936B1 (en) * | 1999-12-03 | 2003-09-02 | Microsoft Corporation | System and method for robust video coding using progressive fine-granularity scalable (PFGS) coding |
US7042944B2 (en) * | 2000-09-22 | 2006-05-09 | Koninklijke Philips Electronics N.V. | Single-loop motion-compensation fine granular scalability |
US6940905B2 (en) * | 2000-09-22 | 2005-09-06 | Koninklijke Philips Electronics N.V. | Double-loop motion-compensation fine granular scalability |
US6996172B2 (en) * | 2001-12-21 | 2006-02-07 | Motorola, Inc. | Method and structure for scalability type selection in digital video |
US7072394B2 (en) * | 2002-08-27 | 2006-07-04 | National Chiao Tung University | Architecture and method for fine granularity scalable video coding |
JP2005260912A (ja) * | 2004-02-10 | 2005-09-22 | Matsushita Electric Ind Co Ltd | 映像通信装置および映像通信方法 |
WO2006061794A1 (fr) * | 2004-12-10 | 2006-06-15 | Koninklijke Philips Electronics N.V. | Systeme et procede de transcodage en temps reel de video numerique pour une extensibilite a granularite fine |
KR20070038396A (ko) * | 2005-10-05 | 2007-04-10 | 엘지전자 주식회사 | 영상 신호의 인코딩 및 디코딩 방법 |
US8315308B2 (en) * | 2006-01-11 | 2012-11-20 | Qualcomm Incorporated | Video coding with fine granularity spatial scalability |
-
2006
- 2006-07-26 FR FR0653129A patent/FR2904494B1/fr not_active Expired - Fee Related
-
2007
- 2007-07-17 US US11/778,917 patent/US20080025399A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050117641A1 (en) * | 2003-12-01 | 2005-06-02 | Jizheng Xu | Enhancement layer switching for scalable video coding |
US20050129123A1 (en) * | 2003-12-15 | 2005-06-16 | Jizheng Xu | Enhancement layer transcoding of fine-granular scalable video bitstreams |
Non-Patent Citations (2)
Title |
---|
WINKEN M ET AL: "Adaptive motion refinement for FGS slices", JOINT VIDEO TEAM (JVT) OF ISO/IEC MPEG & ITU-T VCEG (ISO/IEC JTC1/SC29/WG11 AND ITU-T SG16 Q6), XX, XX, 14 October 2005 (2005-10-14), pages 1 - 5, XP002419224 * |
XIAOYAN SUN ET AL: "Macroblock-based progressive fine granularity scalable (PFGS) video coding with flexible temporal-SNR scalablilities", PROCEEDINGS 2001 INTERNATIONAL CONFERENCE ON IMAGE PROCESSING. ICIP 2001. THESSALONIKI, GREECE, OCT. 7 - 10, 2001, INTERNATIONAL CONFERENCE ON IMAGE PROCESSING, NEW YORK, NY : IEEE, US, vol. VOL. 1 OF 3. CONF. 8, 7 October 2001 (2001-10-07), pages 1025 - 1028, XP010563941, ISBN: 0-7803-6725-1 * |
Also Published As
Publication number | Publication date |
---|---|
US20080025399A1 (en) | 2008-01-31 |
FR2904494B1 (fr) | 2008-12-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FR2904494A1 (fr) | Procede et dispositif de compression d'image, systeme de telecommunication comportant un tel dispositif et programme mettant en oeuvre un tel procede | |
FR2906433A1 (fr) | Procedes et dispositifs de codage et de decodage d'images, programme d'ordinateur les mettant en oeuvre et support d'informaton permettant de les mettre en oeuvre | |
FR2939593A1 (fr) | Procede et dispositif de codage video | |
FR2894421A1 (fr) | Procede et dispositif de decodage d'un flux video code suivant un codage hierarchique | |
FR2932637A1 (fr) | Procede et dispositif de codage d'une sequence d'images | |
FR2889004A1 (fr) | Procede et dispositif de traitement d'une sequence d'images numeriques a scalabilite spatiale ou en qualite | |
FR2951345A1 (fr) | Procede et dispositif de traitement d'une sequence video | |
EP2633686B1 (fr) | Codage video echelonnable a partir d'un epitome hierarchique | |
EP2761871B1 (fr) | Estimation de mouvement au niveau du décodeur par mise en correspondance de modèles | |
FR2858741A1 (fr) | Dispositif et procede de compression d'images numeriques | |
EP2716045B1 (fr) | Procédé de codage et de décodage d'images, dispositif de codage et de décodage d'images et programmes d'ordinateur correspondants | |
FR3026261A1 (fr) | Procede de codage et de decodage d'images integrales, dispositif de codage et de decodage d'images integrales et programmes d'ordinateur correspondants | |
FR2955995A1 (fr) | Procede et dispositif de traitement d'une sequence video | |
FR2956789A1 (fr) | Procede et dispositif de traitement d'une sequence video | |
FR2959093A1 (fr) | Procede et dispositif de prediction d'une information de complexite de texture contenue dans une image | |
FR2957744A1 (fr) | Procede de traitement d'une sequence video et dispositif associe | |
WO2008049628A1 (fr) | Procede et dispoitif d'optimisation de la compression d'un flux video | |
FR3041851A1 (fr) | Procede d'allocation de debit, dispositif, codeur et programme d'ordinateur associes | |
EP2494782A1 (fr) | Procédés et dispositifs de codage et de décodage d'images, et programmes d'ordinateur correspondants | |
FR2913844A1 (fr) | Procede et dispositif d'allocation de debit dans une sequence video | |
EP4029252A1 (fr) | Prédiction ai pour compression vidéo | |
WO2020161413A1 (fr) | Procédés et dispositifs de codage et de décodage d'un flux de données représentatif d'au moins une image | |
FR3107383A1 (fr) | Procédé et dispositif de traitement de données de vidéo multi-vues | |
FR2956552A1 (fr) | Procede de codage ou de decodage d'une sequence video, dispositifs associes | |
EP3815366A1 (fr) | Procédés et dispositifs de codage et de décodage d'un flux de données représentatif d'au moins une image |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ST | Notification of lapse |
Effective date: 20140331 |