FR2944936A1 - Procedes de codage et de decodage d'un bloc de donnees images, dispositifs de codage et de decodage implementant lesdits procedes - Google Patents

Procedes de codage et de decodage d'un bloc de donnees images, dispositifs de codage et de decodage implementant lesdits procedes Download PDF

Info

Publication number
FR2944936A1
FR2944936A1 FR0952667A FR0952667A FR2944936A1 FR 2944936 A1 FR2944936 A1 FR 2944936A1 FR 0952667 A FR0952667 A FR 0952667A FR 0952667 A FR0952667 A FR 0952667A FR 2944936 A1 FR2944936 A1 FR 2944936A1
Authority
FR
France
Prior art keywords
block
coefficient
prediction
xsrc
xpred
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.)
Withdrawn
Application number
FR0952667A
Other languages
English (en)
Inventor
Philippe Borded
Anita Orhand
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 FR0952667A priority Critical patent/FR2944936A1/fr
Priority to US13/138,901 priority patent/US9094716B2/en
Priority to EP10700023A priority patent/EP2422523A1/fr
Priority to PCT/EP2010/050106 priority patent/WO2010121842A1/fr
Priority to TW099100859A priority patent/TWI498005B/zh
Publication of FR2944936A1 publication Critical patent/FR2944936A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440254Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering signal-to-noise parameters, e.g. requantization
    • 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/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods 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 an image region, e.g. an object
    • H04N19/176Methods 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 an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

L'invention concerne un procédé de codage d'un bloc de données image. Le procédé comprend les étapes suivantes : déterminer (100) un coefficient de prédiction d'un coefficient DC du bloc à partir d'un coefficient DC d'au moins un bloc de référence préalablement reconstruit ; déterminer (110), pour chaque pixel du bloc, une valeur de prédiction de telle sorte que la moyenne des valeurs de prédiction soit proportionnelle à un coefficient de proportionnalité près au coefficient de prédiction; calculer (120), pour chaque pixel du bloc, une valeur résiduelle en soustrayant de la donnée image du pixel la valeur de prédiction du pixel; transformer (130) le bloc de valeurs résiduelles par une première transformée en un premier bloc de coefficients ; remplacer (140), dans le premier bloc de coefficients, le coefficient DC par la différence entre le produit du coefficient de proportionnalité et de la moyenne des données images du bloc et le coefficient de prédiction; et quantifier et coder (150) le premier bloc de coefficients.

Description

PROCEDES DE CODAGE ET DE DECODAGE D'UN BLOC DE DONNEES IMAGES, DISPOSITIFS DE CODAGE ET DE DECODAGE IMPLEMENTANT LESDITS PROCEDES 1. Domaine de l'invention L'invention se rapporte au domaine général de la compression et du codage d'images. L'invention concerne plus particulièrement un procédé de codage, sous la forme d'un flux de données codées, d'un bloc d'une image et un procédé de décodage d'un tel flux en vue de la reconstruction de ce bloc.
L'invention concerne également un dispositif de codage et un dispositif de décodage implémentant lesdits procédés.
2. Etat de l'art Un dispositif de transcodage est utilisé pour modifier le coût de codage d'une séquence d'images. En effet, il est parfois nécessaire de transférer un flux de données codées représentatif d'une séquence d'images d'un premier réseau de bande passante B1 à un second réseau de bande passante B2, avec B1 > B2. A cet effet, un dispositif de transcodage est utilisé pour modifier le coût de codage de ladite séquence d'images, i.e. le nombre de bits utilisés pour la coder. Un tel dispositif de transcodage permet également d'adapter un flux de données codées aux ressources d'un terminal ou bien d'insérer un tel flux dans un multiplex. Un dispositif de transcodage 1 de type FPDT selon l'état de l'art est représenté sur la figure 1. Il est notamment décrit par G.J. Keesman, dans le document intitulé Multi-program Video Data Compression , Thesis Technische Universitât Delft. ISBN 90-74445-20-9, 1995. Un tel dispositif de transcodage 1 reçoit en entrée un premier flux de données codées S1 représentatif d'une séquence d'images. L'entrée du dispositif de transcodage est reliée à un module de décodage entropique VLD, lui-même relié à un premier module de quantification inverse I01. Le module de décodage VLD décode une partie du premier flux de données codées en des données image courantes I qui sont alors déquantifiées par le premier module de déquantification IQ1 en des données déquantifiés ID avec un premier pas de quantification. Ce premier pas de quantification est lui-même décodé du flux S1. Généralement les données image I se présentent sous la forme de blocs de coefficients. Le module de quantification inverse IQ1 est relié à une première entrée d'un premier module de calcul Cl. Le premier module de calcul Cl est adapté pour calculer des données résiduelles R. A cet effet, le premier module de calcul Cl effectue la différence entre les données déquantifiés courantes ID et des données de prédiction PT transmises sur une deuxième entrée du premier module de calcul Cl. La sortie du premier module de calcul Cl est reliée à l'entrée d'un module de quantification Q2 adapté pour quantifier les données résiduelles R en des données résiduelles quantifiées RQ avec un second pas de quantification. Le second pas de quantification est déterminé en fonction du débit B2 souhaité. Ces données résiduelles quantifiées RQ sont alors transmises à un module de codage entropique VLC pour générer une partie du second flux de données codées S2. Elles sont également transmises à un second module de déquantification 102 opérant une quantification inverse de celle opérée par le module de quantification Q2 et générant des données résiduelles déquantifiées RD. Ces données résiduelles déquantifiées RD sont alors transmises sur une première entrée d'un second module de calcul C2. Le second module de calcul C2 est adapté pour calculer des données d'erreurs de requantification E. A cet effet, le second module de calcul C2 effectue la différence entre les données résiduelles déquantifiés RD et les données résiduelles R correspondantes transmises sur une deuxième entrée du second module de calcul C2. La sortie du second module de calcul C2 est reliée à l'entrée d'un premier module de transformation IDCT appliquant une première transformée sur les données d'erreurs de requantification E pour générer des erreurs de requantification dans le domaine spatial également appelé domaine pixel, dites données d'erreurs de requantification transformées EP. Le module IDCT opère préférentiellement une transformée inverse en cosinus discrète ( Inverse Discrete Cosine Transform ). Les données d'erreurs de requantification transformées EP sont stockées dans une mémoire MEM. La mémoire MEM est également reliée à un module de prédiction PRED adapté pour générer des données de prédiction intermédiaires P à partir des données d'erreurs de requantification transformées EP mémorisée dans la mémoire MEM. Le module de prédiction PRED met, par exemple, en oeuvre une prédiction temporelle par compensation de mouvement à l'aide de vecteurs de mouvements MVs décodés du flux de données codées S1 dans le cas où les données déquantifiées courantes ID sont en mode INTER. Il peut également mettre en oeuvre une prédiction spatiale par exemple dans le cas où les données déquantifiées courantes ID sont des données en mode INTRA tel qu'il est défini dans la norme de codage vidéo H.264. Les données de prédiction intermédiaires P sont alors transmises en entrée d'un second module de transformation DCT qui applique une seconde transformée sur lesdites données de prédiction intermédiaires P pour générer les données de prédiction PT. Le module DCT opère préférentiellement une transformée en cosinus discret ( Discrete Cosine Transform ). Un tel dispositif de transcodage 1 présente l'inconvénient d'entrainer un effet de dérive ( drift en anglais) temporelle ou spatiale. En effet, l'estimation des erreurs de requantification commises en transcodant des données images qui servent de référence temporelle ou spatiale à d'autres données images n'est pas parfaite. On introduit un biais qui se cumule le long d'un groupe d'images connu sous l'acronyme de GOP ( Group Of Pictures en anglais) au sein même des images dans le cas de la prédiction INTRA entrainant une dégradation progressive de la qualité desdites images jusqu'au transcodage d'une image de type INTRA.
3. Résumé de l'invention L'invention a pour but de pallier au moins un des inconvénients de l'art antérieur. A cet effet, l'invention concerne un procédé de codage d'un bloc d'une image appartenant à une séquence d'images. Ce bloc comprend des pixels à chacun desquels est associée au moins une donnée image. Le procédé de codage comprend les étapes suivantes : a) déterminer un coefficient de prédiction d'un coefficient DC du bloc à partir d'un coefficient DC d'au moins un bloc de référence préalablement 30 reconstruit ; b) déterminer, pour chaque pixel du bloc, une valeur de prédiction de telle sorte que la moyenne des valeurs de prédiction soit proportionnelle à un coefficient de proportionnalité près au coefficient de prédiction; c) calculer, pour chaque pixel du bloc, une valeur résiduelle en soustrayant de la donnée image du pixel la valeur de prédiction du pixel; d) transformer le bloc de valeurs résiduelles par une première transformée en un premier bloc de coefficients; e) remplacer, dans le premier bloc de coefficients, le coefficient DC par la différence entre le produit du coefficient de proportionnalité et de la moyenne des données images du bloc et le coefficient de prédiction; et f) quantifier et coder le premier bloc de coefficients. Le coefficient de proportionnalité dépendant de la première transformée.
Selon un aspect particulier de l'invention, les étapes a), b), c), d) et e) sont appliquées sur une pluralité de blocs spatialement voisins et le procédé comprend, avant l'étape de quantification et de codage, une étape de transformation par une seconde transformée d'au moins une partie des coefficients des premiers blocs de coefficients en un second bloc de coefficients. Dans le cas particulier où le bloc est un bloc INTRA, les valeurs de prédiction des pixels du bloc sont déterminées comme suit : Xpred = Xn û R*Avg(Xn) + DCpred où : - R est le coefficient de proportionnalité ; - Xn sont les valeurs préalablement reconstruites des pixels de blocs voisins utilisés pour la prédiction du bloc; - Avg(.) est la fonction moyenne ; et - DCpred est le coefficient de prédiction (DC pred).
Dans le cas particulier où le bloc est un bloc INTER, lesdites valeurs de prédiction (Xpred) des pixels du bloc sont déterminées comme suit : Xpred = MV(Xref) û R*Avg(MV(Xref))+ DCpred où : - Xref sont les valeurs préalablement reconstruites des pixels de blocs référence utilisés pour la prédiction du bloc; - MV(.) est une fonction de compensation de mouvement ; et - Avg(.) est la fonction moyenne.
L'invention se rapporte également à un procédé de décodage d'un flux de données codées représentatives d'un bloc d'une image appartenant à une séquence d'images en vue de la reconstruction du bloc. Le procédé comprend les étapes suivantes : - déterminer un coefficient de prédiction d'un coefficient DC du bloc à partir d'un coefficient DC d'au moins un bloc de référence préalablement reconstruit ; - décoder les données codées représentatives du bloc pour reconstruire des coefficients; - quantification inverse des coefficients du bloc en des coefficients déquantifiés; - transformation inverse par une transformée inverse des coefficients déquantifiés en des valeurs résiduelles; - déterminer une valeur de prédiction pour chacun des pixels du bloc de telle sorte que la moyenne des valeurs de prédiction du bloc soit proportionnelle à un coefficient de proportionnalité près au coefficient de prédiction, le coefficient de proportionnalité dépendant de la transformée; et - reconstruire pour chaque pixel du bloc une donnée image en sommant pour le pixel la valeur de prédiction et la valeur résiduelle correspondant au pixel. 20 En outre l'invention concerne un dispositif de codage d'une séquence d'images, chaque image de la séquence étant divisée en blocs de pixels à chacun desquels est associée au moins une donnée image. Le dispositif de codage comprend : 25 - un module de prédiction apte à déterminer un coefficient de prédiction d'un coefficient DC d'un bloc d'une image de la séquence à partir d'un coefficient DC d'au moins un bloc de référence préalablement reconstruit et une valeur de prédiction de telle sorte que la moyenne des valeurs de prédiction soit proportionnelle à un coefficient de proportionnalité près au coefficient de 30 prédiction; - un module de calcul apte à calculer, pour chacun des pixels du bloc, une valeur résiduelle en soustrayant de la donnée image du pixel la valeur de prédiction du pixel; - un module apte à transformer le bloc de valeurs résiduelles par une première transformée en un premier bloc de coefficients, apte à remplacer, dans le premier bloc de coefficients, le coefficient DC par la différence entre le produit du coefficient de proportionnalité et de la moyenne des données images du bloc et le coefficient de prédiction, et apte à quantifier le premier bloc de coefficients ; et - un module de codage apte à coder le premier bloc de coefficients ; le coefficient de proportionnalité dépendant de la première transformée.
Par ailleurs, l'invention concerne également un dispositif de décodage d'un flux de données codées représentatives d'une séquence d'images, chaque image étant divisée en blocs de pixels à chacun desquels est associée au moins une donnée image. Le dispositif de décodage comprend : - un module de décodage apte à décoder les données codées représentatives d'un bloc d'une image de la séquence pour reconstruire des coefficients; - un module apte à appliquer une quantification inverse et une transformation inverse sur lesdits coefficients pour générer des valeurs résiduelles; - un module de prédiction apte à déterminer un coefficient de prédiction d'un coefficient DC du bloc à partir du coefficient DC d'au moins un bloc de référence préalablement reconstruit et une valeur de prédiction de telle sorte que la moyenne des valeurs de prédiction soit proportionnelle à un coefficient de proportionnalité près au coefficient de prédiction, le coefficient de proportionnalité dépendant de la transformée; et - un module de reconstruction apte à reconstruire pour chaque pixel du bloc une donnée image en sommant pour le pixel la valeur de prédiction et la valeur résiduelle correspondant au pixel.
4. Listes des figures L'invention sera mieux comprise et illustrée au moyen d'exemples de modes de réalisation et de mise en oeuvre avantageux, nullement limitatifs, en référence aux figures annexées sur lesquelles : - La figure 1 représente un dispositif de transcodage selon l'état de l'art ; - La figure 2 représente un diagramme du procédé de codage selon un premier mode de réalisation de l'invention ; - La figure 3 représente un diagramme du procédé codage selon un second mode de réalisation de l'invention ;
- La figure 4 illustre les étapes de transformation du procédé de codage selon un second mode de réalisation de l'invention ; - La figure 5 illustre le procédé de prédiction spatiale selon un premier mode de codage INTRA ;
- La figure 6 illustre le procédé de prédiction spatiale selon un deuxième mode de codage INTRA ;
- La figure 7 illustre le procédé de prédiction spatiale selon un troisième mode de codage INTRA ;
- La figure 8 illustre le procédé de prédiction spatiale selon un quatrième mode de codage INTRA ;
- La figure 9 illustre le procédé de prédiction temporelle selon un mode de codage INTER ; - La figure 10 représente un diagramme du procédé de décodage selon l'invention ;
- La figure 11 représente un dispositif de codage selon l'invention; et
- La figure 12 représente un dispositif de décodage selon l'invention. 5. Description détaillée de l'invention
Soit un bloc Xsrc de N pixels ou points image appartenant à une image. A chaque pixel i du bloc Xsrc est associée au moins une donnée image Xsrc(i), p.ex. une valeur de luminance et/ou des valeurs de chrominance.
Supposons que les données image soient transformées par une transformée T, alors on a:
T(Xsrc) = Coef(i)i=0,... N-1 = {DC, AC(i)i=1,...N-1}
Où DC est la composante continue et AC(i) sont les composantes dites alternatives ou non continues.
Dû à une propriété remarquable de T , la relation est vérifiée : N-1 DC = R' * IXsrc(i)=R'*N*Avg(Xsrc)=R *Avg(Xsrc) i=o R est un coefficient de proportionnalité qui dépend de la transformée T. Par exemple si T est la transformée DCT 4x4 (acronyme anglais de Discrete Cosine Transform ), R=16. La figure 2 représente un procédé de codage d'un tel bloc Xsrc de N 5 pixels ou points image appartenant à une image d'une séquence d'images selon un premier mode de réalisation de l'invention. A l'étape 100, un coefficient de prédiction DCpred est déterminé pour le bloc Xsrc. Ce coefficient de prédiction DCpred est apte à prédire le coefficient DC ou composante continue du bloc Xsrc. Plus précisément 10 DCpred est déterminé à partir de coefficients DC de blocs de référence préalablement codés et reconstruits, notés DCrec. En effet, le bloc Xsrc est un bloc prédit soit spatialement s'il est en mode INTRA ou temporellement s'il en mode INTER à partir de blocs de référence préalablement codés et reconstruits. Dans le cas du mode INTRA, les blocs de référence sont des 15 blocs voisins spatialement du bloc Xsrc. Ils appartiennent donc à la même image que le bloc Xsrc. Dans le cas du mode INTER, les blocs de référence sont des blocs localisés dans d'autres images de la séquence que celle à laquelle appartient le bloc Xsrc. A l'étape 110, une valeur de prédiction Xpred(i) est déterminée pour 20 chaque pixel i du bloc Xsrc, i variant de 0 à N-1. Les valeurs Xpred(i) sont déterminées de telle sorte que leur moyenne sur le bloc Xsrc soit proportionnelle à un coefficient de proportionnalité R près au coefficient de prédiction DCpred déterminé à l'étape 100, i.e. DCpred=R*Avg(Xpred). Le coefficient de proportionnalité R dépend de la première transformée T utilisée 25 par le procédé de codage à l'étape 130. A l'étape 120, une valeur résiduelle Xres(i) est calculée pour chaque pixel i du bloc Xsrc comme suit : Xres(i)= Xsrc(i)- Xpred(i). Le bloc composé des valeurs résiduelles Xres(i) associée à chaque pixel i du bloc Xsrc est appelé bloc résiduel et est noté Xres. 30 A l'étape 130, le bloc résiduel Xres est transformé par une première transformée T en un premier bloc de coefficients AC(i) ;=o,... N-1. Le coefficient AC(0) est la composante continue et correspond au coefficient DC. A l'étape 140, le coefficient AC(0) est remplacé par la différence DCres suivante : (DCsrc-DCpred), où DCsrc est égal à R*Avg(Xsrc). Avg(Xsrc) est égale à la moyenne des données images du bloc Xsrc, i.e. Avg(Xsrc) = N-1 ù 1 Xsrc(i) Ni=o A l'étape 150, le bloc de coefficients AC(i) ;=o,... N-1 après l'étape de remplacement 140 est quantifié en un bloc de coefficients q(AC(i)) puis codé.
Selon une première réalisation chaque coefficient du bloc est divisé par un pas de quantification prédéfini, p.ex. fixé par un module de régulation de débit, ou bien encore fixé a priori. Les coefficients quantifiés sont ensuite codé par codage entropique, p.ex. en utilisant des tables de code VLC (acronyme anglais de Variable Length Coding ).
Selon une variante de réalisation, cette étape met en oeuvre le procédé de quantification et de codage décrit dans le document ISO/IEC 14496-10 intitulé Advanced Video Coding et plus précisément dans les sections 8.5 (pour ce qui concerne la quantification) et 9 (pour ce qui concerne le codage entropique). L'homme de l'art peut également se référer au livre de lain E Richardson intitulé H.264 and MPEG-4 Video Compression publié en septembre 2003 par John Wiley & Sons. Toutefois, l'invention n'est aucunement liée à cette norme qui est citée à simple titre d'exemple. A noter que pour coder d'autres blocs, la valeur DCrec=DCpred+dq(q(DCres)) est calculée pour le bloc courant Xsrc, où dq(.) est la fonction quantification inverse de la fonction de quantification q(.) appliquée à l'étape 150. Un second mode de réalisation du procédé de codage selon l'invention est décrit en référence à la figure 3. Sur cette figure, les étapes du procédé identiques à celles du procédé selon le premier mode de réalisation sont identifiées à l'aide des mêmes références numériques et ne sont pas décrites davantage. Le procédé de codage selon ce second mode de réalisation comprend toutes les étapes du procédé décrit en référence à la figure 2. Les étapes 100 à 140 sont réitérées sur plusieurs blocs Xsrc spatialement voisins. Sur la figure 4, 16 blocs voisins sont représentés. Chaque carré noir représente la composante continue du bloc après l'étape 140 de remplacement, i.e. la valeur DCsrc-DCpred.
Le procédé comprend en outre une étape 145 de transformation des coefficients DCres=(DCsrc-DCpred) des blocs voisins. A cet effet, en référence à la figure 4, un bloc de coefficients (DCsrc-DCpred) est formé à partir des coefficients correspondants dans les blocs voisins. Ce bloc de coefficients (DCsrc-DCpred) est transformé par une seconde transformée en un second bloc de coefficients.
A l'étape 150, les coefficients du second bloc de coefficients et les coefficients des blocs voisins différents du coefficient (DCsrc-DCpred), i.e. AC(i)i=1,... N-1, sont quantifiés puis codés.
Les procédés de codage décrits en référence aux figures 2 à 4 s'appliquent à tout type de méthode de codage. Dans le cas particulier de la norme de codage vidéo H.264 décrite dans le document ISO/IEC 14496-10 ainsi que das le livre de lain E Richardson intitulé H.264 and MPEG-4 Video Compression publié en septembre 2003 par John Wiley & Sons, plusieurs mode de codage sont décrits pour prédire un bloc de pixels Xsrc. Ces différents mode de codage définissent la manière dont est déterminé, pour un bloc Xsrc, le bloc de prédiction correspondant Xpred. Selon l'invention, ces modes sont modifiés pour tenir compte de la contrainte fixée à l'étape 110, à savoir que les valeurs Xpred(i) sont déterminées de telle sorte que leur moyenne sur le bloc Xsrc soit proportionnelle à un coefficient de proportionnalité R près au coefficient de prédiction DCpred déterminé à l'étape 100. La norme H.264 définit des modes de prédiction spatiale utilisés pour prédire un bloc Xsrc en mode INTRA. Selon l'invention, les modes de prédiction spatial sont modifiés de telle sorte Xpred=Xn-DCn+DCpred, où DCn=R*Avg(Xn) et où Xn sont des pixels reconstruits, voisins du bloc Xsrc utilisés dans la cadre de la norme H.264 pour prédire les pixels du bloc Xsrc. Dans ce cas, la contrainte fixée à l'étape 110 est nécessairement vérifiée. Parmi ces modes figurent le mode de prédiction horizontal représenté sur la figure 5. Sur cette figure, le bloc Xsrc est un bloc de 4x4 pixels représenté en grisé. Dans ce mode les pixels de la première ligne du bloc Xsrc sont prédit à partir du pixel I, les pixels de la deuxième ligne sont prédits à partir du pixel J, les pixels de la troisième ligne sont prédits à partir du pixel K et les pixels de la quatrième ligne sont prédits à partir du pixel L, avec I, J, K, L qui appartiennent au bloc situé à gauche du bloc Xsrc. Selon l'invention, le mode de prédiction horizontal est modifié comme suit : - les pixels de la première ligne du bloc Xsrc sont prédit à partir de la valeur suivante : I-R*(I+J+K+L+2)/4+DCLett, - les pixels de la deuxième ligne sont prédits à partir du pixel J - R* (I+J+K+L+2)/4+D C Left, - les pixels de la troisième ligne sont prédits à partir du pixel KR*(I+J+K+L+2)/4+DCLeft et - les pixels de la quatrième ligne sont prédits à partir du pixel K- R*(I+J+K+L+2)/4+DCLeft. Dans ce cas DCpred=DCLeft. De la même manière, en référence à la figure 6, le mode de prédiction vertical de H.264 est modifié comme suit : - les pixels de la première colonne du bloc Xsrc sont prédit à partir de la valeur suivante : A-R *(A+B+C+D+2)/4+DCup, - les pixels de la deuxième colonne sont prédits à partir du pixel B-R*( A+B+C+D+2)/4+DCup, - les pixels de la troisième colonne sont prédits à partir du pixel C-R*( A+B+C+D+2)/4+DCup et - les pixels de la quatrième colonne sont prédits à partir du pixel D-R*( A+B+C+D+2)/4+DCup. Dans ce cas DCpred=DCUp. Parmi ces modes figurent le mode de prédiction dit DC représenté sur la figure 7. Sur cette figure, le bloc Xsrc est un bloc de 4x4 pixels représenté en grisé. Dans ce mode tous les pixels du bloc Xsrc sont prédits à partir des pixels A, B, C, D, I, J, K et L. Selon l'invention, le mode de prédiction DC est modifié de telle sorte que les pixels du bloc Xsrc sont prédits à partir de la valeur suivante : V i, Xpred(i)= DCpred Dans ce cas DCpred=(DCLeft+DCUp)/2. Parmi ces modes figurent des modes de prédiction diagonal tel le mode de prédiction représenté sur la figure 8 connu sous la terminologie anglaise de mode diagonal down-right . Sur cette figure, le bloc Xsrc est un bloc de 4x4 pixels représenté en grisé. Dans ce mode les pixels du bloc Xsrc sont prédit à partir des pixels A, B, C, D, I, J, K, L et M. Selon l'invention, le mode de prédiction diagonal orienté vers le bas à droite est modifié de telle sorte que les pixels du bloc Xsrc sont prédits à partir de la valeur suivante : Xpred(i)= Xn-R*(c+2B+3A+4M+31+2J+K+8)/16+ 2*(DCLeft+DCup+DCup_ Lett+3)/6; avec Xn qui est la valeur de prédiction définie par la norme H.264. Par exemple pour les 4 pixels de la diagonale DO de Xsrc Xpred(i)= M-R*(c+2B+3A+4M+31+2J+K+8)/16+ 2*(DCLeft+DCup+DCup-Lett+3)/6 Pour les 3 pixels de la diagonale D1: Xpred(i)= A-R*(c+2B+3A+4M+31+2J+K+8)/16+ 2*(DCLett+DCup+DCup_Left+3)/6 Pour les 2 pixels de la diagonale D2: Xpred(i)= B-R*(c+2B+3A+4M+31+2J+K+8)/16+ DCLett+DCup+DCup-Lest Pour le pixel de la diagonale D3: Xpred(i)= C-R*(c+2B+3A+4M+31+2J+K+8)/16+ 2*(DCLett+DCup+DCup_Left+3)/6 Pour les 3 pixels de la diagonale D4: Xpred(i)= 1-R*(c+2B+3A+4M+31+2J+K+8)/16+ 2*(DCLeft+DCup+DCup_Left+3)/6 Pour les 3 pixels de la diagonale D5: Xpred(i)= J-R*(c+2B+3A+4M+31+2J+K+8)/16+ 2*(DCLeft+DCup+DCup_Left+3)/6 Pour le pixel de la diagonale D6: Xpred(i)= K-R*(c+2B+3A+4M+31+2J+K+8)/16+ 2*(DCLett+DCup+DCup_Left+3)/6 Dans ce cas DCpred=(DCLeft+DCup+DCup-Lett)/3. Toutefois, toute combinaison linéaire de DCLeft, DCup, DCup_Left peut être utilisée pour DCpred. Les autres modes diagonal de la norme H.264 peuvent être modifiés de la même manière que le mode représenté sur la figure 8, dans la mesure où 25 Xpred=Xn-DCn+DCpred. La norme H.264 définit également des modes de prédiction temporelle utilisés pour prédire un bloc Xsrc en mode INTER. Selon l'invention, les modes de prédiction temporel sont modifiés, en référence à la figure 9, de telle sorte Xpred=MV(Xref)-DCmv+DCpred, où DCmv=R*Avg(MV(Xref)) et où 30 MV(Xref) sont des pixels reconstruits du ou des bloc(s) de référence utilisé(s) dans la cadre de la norme H.264 pour prédire les pixels du bloc Xsrc. Dans ce cas, la contrainte fixée à l'étape 110 est nécessairement vérifiée. Par exemple, DCpred= (xa.ya)DC1+(xb.ya)DC2+(xa.yb)DC3+(xb.yb)DC4 (xa + xb)( ya + yb) où : - DC1, DC2, DC3 et DC4 sont les coefficients DC de bloc de référence préalablement codés et reconstruits ; et - (xa.ya) est la surface de Xsrc prédite par le bloc de référence dont le coefficient DC est égale à DC1 ; - (xb.ya) est la surface de Xsrc prédite par le bloc de référence dont le coefficient DC est égale à DC2 ; - (xa.yb) est la surface de Xsrc prédite par le bloc de référence dont le coefficient DC est égale à DC3 ; et - (xb.yb) est la surface de Xsrc prédite par le bloc de référence dont le coefficient DC est égale à DC1. Dans ce cas particulier, les blocs de référence en question appartiennent à une image de référence différente de celle à laquelle appartient le bloc Xsrc. Selon un mode particulier de réalisation, seuls les modes INTRA modifiés peuvent être utilisés avec les modes INTER non modifiés. Selon une variante, seuls les modes INTER modifiés peuvent être utilisés avec les modes INTRA non modifiés. Selon une autre variante, les modes INTRA et INTER modifiés sont utilisés.
Les procédés de codage selon les modes de réalisation précédents offrent l'avantage d'éviter le phénomène de dérive lorsque le flux de données codés qu'ils génèrent est transcodé à l'aide du procédé de transcodage FPDT. La prédiction de bloc Xsrc est légèrement modifiée en ce qui concerne les coefficients DC alors qu'elle reste identique pour les coefficients AC par rapport à la prédiction telle que définit dans la norme d'origine, en l'occurrence H.264. Dès lors, la performance en termes de taux compression n'est que faiblement impactée alors qu'en cas de transcodage par FPDT, la qualité du flux transcodé est améliorée par suppression de l'effet de dérive. Par ailleurs, de tels procédés prédisent les coefficients DC indépendamment des coefficients AC, en l'occurrence uniquement à partir des coefficients DC de blocs de référence précédemment codés et reconstruits, lesdits blocs de référence appartenant à des images de référence dans le cas INTER ou à l'image courante dans la cas INTRA. Ceci a comme autre avantage de permettre une reconstruction d'une séquence d'images à basse résolution sans appliquer aucune transformée (DCT) inverse en ne reconstruisant que les coefficients DC. Dans le cas classique, lorsque les coefficients AC et DC sont prédits ensembles, la reconstruction d'une image basse résolution à partir des seuls coefficients DC n'est possible qu'à la condition de décoder également les coefficients AC.
En référence à la figure 10, l'invention concerne un procédé de décodage d'un flux de données codées représentatives d'un bloc Xsrc d'une image appartenant à une séquence d'images en vue de la reconstruction de ce bloc Xsrc. A l'étape 200, un coefficient de prédiction DCpred est déterminé pour le bloc Xsrc. Ce coefficient de prédiction DCpred est apte à prédire le coefficient DC, ou composante continue du bloc Xsrc. Plus précisément DCpred est déterminé à partir de coefficients DC de bloc de référence préalablement reconstruits, notés DCrec. En effet, le bloc Xsrc est un bloc prédit soit spatialement s'il est en mode INTRA ou temporellement s'il en mode INTER à partir de bloc de référence préalablement codés et reconstruits. Dans le cas du mode INTRA, les blocs de référence sont des blocs voisins spatialement du bloc Xsrc. ils appartiennent donc à la même image que le bloc Xsrc. Dans le cas du mode INTER, les blocs de référence sont des blocs localisés dans d'autres images de la séquence que celle à laquelle appartient le bloc Xsrc. A l'étape 210, les données codées {bk} représentatives du bloc Xsrc sont décodées pour reconstruire des coefficients q(AC(i)). L'étape 210 est une étape de décodage entropique. Elle correspond à l'étape de codage entropique 150 du procédé de codage. A l'étape 220, les coefficients sont déquantifiés par quantification inverse en des coefficients déquantifiés dq(q(AC(i))). Elle correspond à l'étape de quantification 150 du procédé de codage. Plus précisément, elle met en oeuvre l'inverse du procédé de quantification appliqué à l'étape 150 du procédé de codage. A l'étape 230, les coefficients déquantifiés (dq(q(AC(i)))) sont transformés en des valeurs résiduelles Xresid' par une transformation inverse de celle appliquée à l'étape 130 du procédé de codage. A titre d'exemple, si l'étape 130 du procédé de codage met en oeuvre une transformation DCT alors l'étape 230 met en oeuvre une transformation IDCT (acronyme anglais de Inverse Discrete Cosine Transform ). Bien entendu l'invention n'est aucunement limité par le type de transformée utilisée. D'autres transformée peuvent être utilisées, p.ex. transformée de Hadamard. A l'étape 240, une valeur de prédiction Xpred(i) est déterminée pour chaque pixel i du bloc Xsrc, i variant de 0 à N-1. Les valeurs Xpred(i) sont déterminées de telle sorte que leur moyenne sur le bloc Xsrc soit proportionnelle à un coefficient de proportionnalité R près au coefficient de prédiction DCpred déterminé à l'étape 200. Le coefficient de proportionnalité R dépend de la transformée T-1 utilisée par le procédé de décodage à l'étape 230, et donc par voie de conséquence dépend de la transformée T utilisée par le procédé de codage à l'étape 130.
A l'étape 250, une donnée image Xrec(i) est reconstruite pour chaque pixel du bloc Xsrc en sommant la valeur de prédiction Xpred(i) et la valeur résiduelle Xresid'(i) correspondant au pixel i. A noter que pour reconstruire d'autres blocs, la valeur DCrec=DCpred+dq(q(AC(0))) est calculée pour le bloc courant Xsrc.
Le procédé de décodage a comme avantage de permettre une reconstruction d'une séquence d'images à basse résolution en ne reconstruisant que les coefficients DC. Dans le cas classique, lorsque les coefficients AC et DC sont prédits ensembles, la reconstruction d'une image basse résolution à partir des seuls coefficients DC n'est possible qu'à la condition de décoder également les coefficients AC. En effet, dans le cas présent, les coefficients DC sont prédits indépendamment des coefficients AC, en l'occurrence uniquement à partir des coefficients DC de blocs de référence précédemment reconstruits.
L'invention concerne en outre un dispositif de codage 12 décrit en référence à la figure 11. Le dispositif de codage 12 reçoit en entrée des images I appartenant à une séquence d'images. Chaque image est divisée en blocs de pixels à chacun desquels est associée au moins une donnée image. Le dispositif de codage 12 comprend notamment un module de calcul 1200 apte à soustraire pixel à pixel d'un bloc courant Xsrc, selon l'étape 120 du procédé de codage, un bloc de prédiction Xpred pour générer un bloc de données image résiduelles ou bloc résiduel noté Xres. Il comprend en outre un module 1202 apte à transformer puis quantifier le bloc résiduel Xres en des données quantifiées. La transformée T est par exemple une transformée en cosinus discret (ou DCT acronyme anglais de Discrete Cosine Transform ). Le module 1202 met notamment en oeuvre l'étape 130 du procédé de codage. Il met également en oeuvre les étapes de remplacement 140 et de quantification 150. Le module de codage 12 comprend en outre un module de codage entropique 1204 apte à coder les données quantifiées en un flux F de données codées. Le module de codage entropique 1204 met en oeuvre l'étape de codage 150 du procédé de codage. Il comprend en outre un module 1206 effectuant l'opération inverse du module 1202. Le module 1206 effectue une quantification inverse IQ suivie d'une transformation inverse IT. Le module 1206 est relié à un module de calcul 1208 apte à additionner pixel à pixel le bloc de données issu du module 1206 et le bloc de prédiction Xpred pour générer un bloc de données image reconstruites qui sont stockées dans une mémoire 1210. Le dispositif de codage 12 comprend en outre un module d'estimation de mouvement 1212 apte à estimer au moins un vecteur de mouvement entre le bloc Xsrc et une image de référence stockée dans la mémoire 1210, cette image ayant été précédemment codée puis reconstruite. Selon une variante l'estimation de mouvement peut être faite entre le bloc courant Xsrc et l'image de référence originale. Selon une méthode bien connue de l'homme du métier, le module d'estimation de mouvement 1212 recherche dans l'image de référence un vecteur de mouvement de telle sorte à minimiser une erreur calculée entre le bloc courant Xsrc et un bloc de référence Xref dans l'image de référence identifié à l'aide dudit vecteur de mouvement. Les données de mouvement sont transmises par le module d'estimation de mouvement 1212 à un module de décision 1214 apte à sélectionner un mode de codage pour le bloc Xsrc dans un ensemble prédéfini de modes de codage. Le terme donnée de mouvement est à prendre au sens large, i.e. vecteur de mouvement et éventuellement un indice d'image de référence identifiant l'image de référence dans la séquence d'images. Les modes de codage de l'ensemble prédéfini de modes de codage sont définis de telle sorte que la contrainte définie à l'étape 110 du procédé de codage soit vérifiée. Le mode de codage retenu est par exemple celui qui minimise un critère de type débit-distorsion. Toutefois l'invention n'est pas limitée à cette méthode de sélection et le mode retenu peut être sélectionné selon un autre critère par exemple un critère de type a priori. Le mode de codage sélectionné par le module de décision 1214 ainsi que les données de mouvement, p.ex. la ou les données de mouvement, dans le cas du mode de prédiction temporelle ou mode INTER, sont transmis à un module de prédiction 1216. Le mode de codage et éventuellement la ou les données de mouvement sélectionnés sont en outre transmis au module de codage entropique 1204 pour être codés dans le flux F. Le module de prédiction 1216 détermine le bloc de prédiction Xpred selon les étapes 100 et 110 du procédé de codage à partir notamment des images de référence Ir précédemment reconstruites et stockées dans la mémoire 1210, des coefficients DC reconstruits de blocs de référence également stockés dans la mémoire 1210, du mode de codage et éventuellement de la ou des données de mouvement sélectionnés par le module de décision 1214. A noter que le coefficient DCrec du bloc Xsrc est également reconstruit et stocké dans la mémoire 1210 en vue de la reconstruction d'autres blocs. Les modules 1200, 1202, 1204, 1206, 1210, 1214 forment un groupe de modules appelé module de codage.
L'invention concerne en outre un dispositif de décodage 13 décrit en référence à la figure 12. Le module de décodage 13 reçoit en entrée un flux F de données codées représentatives d'une séquence d'images. Le flux F est par exemple généré et transmis par un dispositif de codage 12. Le dispositif de décodage 13 comprend un module de décodage entropique 1300 apte à générer des données décodées, p.ex. des modes de codage et des données décodées relatives au contenu des images. A cet effet, le module de décodage entropique 1300 met en oeuvre l'étape 210 du procédé de décodage. Le dispositif de décodage 13 comprend en outre un module de reconstruction de données de mouvement. Selon un premier mode de réalisation, le module de reconstruction des données de mouvement est le module de décodage entropique 1300 qui décode une partie du flux F représentatif desdits vecteurs de mouvement. Selon une variante non représentée sur la figure 13, le module de reconstruction des données de mouvement est un module d'estimation de mouvement. Cette solution de reconstruction de données de mouvement par le dispositif de décodage 13 est connu sous le terme anglais de template matching . Les données décodées relatives au contenu des images qui correspondent aux données quantifiées issues du module 1202 du dispositif de codage 12 sont alors transmises à un module 1302 apte à effectuer une quantification inverse suivie d'une transformation inverse. Le module 1302 met notamment en oeuvre l'étape de quantification inverse 220 et l'étape de transformation inverse 230 du procédé de décodage. Le module 1302 est identique au module 1206 du module de codage 12 ayant généré le flux codé F. Le module 1302 est relié à un module de calcul 1304 apte à additionner pixel à pixel, selon l'étape 250 du procédé de décodage, le bloc issu du module 1302 et un bloc de prédiction Xpred pour générer un bloc de données image reconstruites qui sont stockées dans une mémoire 1306. Le dispositif de décodage 13 comprend en outre un module de prédiction 1308 identique au module 1216 du dispositif de codage 12. Le module de prédiction 1308 détermine le bloc de prédiction Xpred selon les étapes 200 et 240 du procédé de décodage à partir notamment des images de référence Ir précédemment reconstruites et stockées dans la mémoire 1306, des coefficients DC reconstruits de blocs de référence également stockée dans la mémoire 1306, du mode de codage et éventuellement de la donnée de mouvement décodés pour le bloc courant Xsrc par le module de décodage entropique 1300. A noter que le coefficient DCrec du bloc Xsrc est également reconstruit et stocké dans la mémoire 1306 en vue de la reconstruction d'autres blocs.
Les modules 1302, 1304, 1306 forment un groupe de modules appelé module de reconstruction. Sur les figures 11 et 12, les modules représentés sont des unités fonctionnelles, qui peuvent ou non correspondre à des unités physiquement distinguables. Par exemple, ces modules ou certains d'entre eux peuvent être regroupés dans un unique composant, ou constituer des fonctionnalités d'un même logiciel. A contrario, certains modules peuvent éventuellement être composés d'entités physiques séparées. A titre d'exemple, le module 1202 peut être implémentés par deux composants séparés l'un effectuant une transformation et l'autre une quantification.
Bien entendu, l'invention n'est pas limitée aux exemples de réalisation mentionnés ci-dessus. En particulier, l'homme du métier peut apporter toute variante dans les modes de réalisation exposés et les combiner pour bénéficier de leurs différents avantages. Notamment, l'invention n'est aucunement limitée à une norme particulière de codage d'images. La seule condition est que les modes de prédiction vérifient les contraintes suivantes : Cas INTRA : Xpred=Xn-DCn+DCpred Cas INTER : Xpred=MV(Xref)-DCmv+DCpred avec DCpred qui est déterminé à partir des coefficients DC de blocs de référence préalablement reconstruits.20

Claims (7)

  1. Revendications1. Procédé de codage d'un bloc (Xsrc) d'une image appartenant à une séquence d'images, ledit bloc comprenant des pixels à chacun desquels est associée au moins une donnée image ledit procédé étant caractérisé en ce qu'il comprend les étapes suivantes : a) déterminer (100) un coefficient de prédiction (DCpred) d'un coefficient DC dudit bloc à partir d'un coefficient DC (DC) d'au moins un bloc de référence (Bref) préalablement reconstruit ; b) déterminer (110), pour chaque pixel dudit bloc (Xsrc), une valeur de prédiction (Xpred) de telle sorte que la moyenne desdites valeurs de prédiction (Xpred) soit proportionnelle à un coefficient de proportionnalité (R) près audit coefficient de prédiction (DCpred); c) calculer (120), pour chaque pixel dudit bloc (Xsrc), une valeur résiduelle (Xres) en soustrayant de la donnée image (Xsrc) dudit pixel la valeur de prédiction (Xpred) dudit pixel; d) transformer (130) ledit bloc de valeurs résiduelles (Xres) par une première transformée en un premier bloc de coefficients; e) remplacer (140), dans ledit premier bloc de coefficients, le coefficient DC par la différence entre le produit dudit coefficient de proportionnalité (R) et de ladite moyenne des données images (Avg(Xsrc)) dudit bloc (Xsrc) et ledit coefficient de prédiction (DCpred) ; et f) quantifier et coder (150) ledit premier bloc de coefficients ; ledit coefficient de proportionnalité dépendant de ladite première transformée.
  2. 2. Procédé de codage selon la revendication 1, dans lequel lesdites étapes a), b), c), d) et e) étant appliquées sur une pluralité de blocs spatialement voisins, ledit procédé comprend, avant l'étape (150) de quantification et de codage, une étape de transformation (145) par une seconde transformée d'au moins une partie desdits coefficients desdits premiers blocs de coefficients en un second bloc de coefficients.
  3. 3. Procédé selon la revendication 1, dans lequel le bloc étant un bloc INTRA, lesdites valeurs de prédiction (Xpred) desdits pixels du bloc sont déterminées (110) comme suit : Xpred = Xn ù R*Avg(Xn) + DCpred où: - R est ledit coefficient de proportionnalité ; - Xn sont les valeurs préalablement reconstruites des pixels de blocs voisins utilisés pour la prédiction dudit bloc; - Avg(.) est la fonction moyenne ; et - DCpred est ledit coefficient de prédiction (DC pred).
  4. 4. Procédé selon la revendication 1, dans lequel le bloc étant un bloc INTER, lesdites valeurs de prédiction (Xpred) desdits pixels du bloc sont déterminées (110) comme suit : Xpred = MV(Xref) ù R*Avg(MV(Xref))+ DCpred où : - Xref sont les valeurs préalablement reconstruites des pixels de blocs référence utilisés pour la prédiction dudit bloc; - MV(.) est une fonction de compensation de mouvement ; et - Avg(.) est la fonction moyenne.
  5. 5. Procédé de décodage d'un flux de données codées représentatives d'un bloc (Xsrc) d'une image appartenant à une séquence d'images en vue de la reconstruction dudit bloc (Xsrc), ledit bloc comprenant des pixels à chacun desquels est associée au moins une donnée image ledit procédé étant caractérisé en ce qu'il comprend les étapes suivantes : - déterminer (200) un coefficient de prédiction (DCpred) d'un coefficient DC dudit bloc à partir d'un coefficient DC (DC) d'au moins un bloc de référence (Bref) préalablement reconstruit ; - décoder (210) les données codées représentatives dudit bloc pour reconstruire des coefficients; - quantification inverse (220) des coefficients dudit bloc en des coefficients déquantifiés (dq(q(AC(i))));- transformation inverse (230) par une transformée inverse des coefficients déquantifiés en des valeurs résiduelles (Xresid') ; - déterminer (240) une valeur de prédiction (Xpred) pour chacun des pixels du bloc de telle sorte que la moyenne desdites valeurs de prédiction (Xpred) dudit bloc soit proportionnelle à un coefficient de proportionnalité près audit coefficient de prédiction (DCpred), ledit coefficient de proportionnalité dépendant de ladite transformée; et - reconstruire (250) pour chaque pixel dudit bloc une donnée image en sommant pour ledit pixel ladite valeur de prédiction (Xpred) et ladite valeur résiduelle (Xresid') correspondant audit pixel.
  6. 6. Dispositif de codage (12) d'une séquence d'images, chaque image de ladite séquence étant divisée en blocs (Xsrc) de pixels à chacun desquels est associée au moins une donnée image, caractérisé en ce qu'il comprend : - un module de prédiction (1216) apte à déterminer un coefficient de prédiction (DCpred) d'un coefficient DC d'un bloc d'une image de ladite séquence à partir d'un coefficient DC (DC) d'au moins un bloc de référence (Bref) préalablement reconstruit et une valeur de prédiction (Xpred) de telle sorte que la moyenne desdites valeurs de prédiction (Xpred) soit proportionnelle à un coefficient de proportionnalité (R) près audit coefficient de prédiction (DCpred); - un module de calcul (1200) apte à calculer, pour chacun des pixels dudit bloc (Xsrc), une valeur résiduelle (Xres) en soustrayant de la donnée image (Xsrc) dudit pixel la valeur de prédiction (Xpred) dudit pixel; - un module (1202) apte à transformer ledit bloc de valeurs résiduelles (Xres) par une première transformée en un premier bloc de coefficients, apte à remplacer, dans ledit premier bloc de coefficients, le coefficient DC par la différence entre le produit dudit coefficient de proportionnalité (R) et de ladite moyenne des données images (Avg(Xsrc)) dudit bloc (Xsrc) et ledit coefficient de prédiction (DCpred), et apte à quantifier ledit premier bloc de coefficients ; et - un module de codage (1204) apte à coder ledit premier bloc de coefficients ; ledit coefficient de proportionnalité dépendant de ladite première transformée.
  7. 7. Dispositif de décodage (13) d'un flux de données codées représentatives d'une séquence d'images, chaque image étant divisée en blocs de pixels à chacun desquels est associée au moins une donnée image, caractérisé en ce qu'il comprend : - un module de décodage (1300) apte à décoder les données codées représentatives d'un bloc d'une image de ladite séquence pour reconstruire des coefficients; - un module (1302) apte à appliquer une quantification inverse et une transformation inverse sur lesdits coefficients pour générer des valeurs 10 résiduelles (Xresid') ; - un module de prédiction (1308) apte à déterminer un coefficient de prédiction (DCpred) d'un coefficient DC dudit bloc à partir du coefficient DC (DC) d'au moins un bloc de référence (Bref) préalablement reconstruit et une valeur de prédiction (Xpred) de telle sorte que la moyenne desdites valeurs de 15 prédiction (Xpred) soit proportionnelle à un coefficient de proportionnalité (R) près audit coefficient de prédiction (DCpred), ledit coefficient de proportionnalité dépendant de ladite transformée; et - un module de reconstruction (1304) apte à reconstruire pour chaque pixel dudit bloc une donnée image en sommant pour ledit pixel ladite valeur de 20 prédiction (Xpred) et ladite valeur résiduelle (Xresid') correspondant audit pixel.
FR0952667A 2009-04-23 2009-04-23 Procedes de codage et de decodage d'un bloc de donnees images, dispositifs de codage et de decodage implementant lesdits procedes Withdrawn FR2944936A1 (fr)

Priority Applications (5)

Application Number Priority Date Filing Date Title
FR0952667A FR2944936A1 (fr) 2009-04-23 2009-04-23 Procedes de codage et de decodage d'un bloc de donnees images, dispositifs de codage et de decodage implementant lesdits procedes
US13/138,901 US9094716B2 (en) 2009-04-23 2010-01-07 Methods for coding and decoding a block of picture data, devices for coding and decoding implementing said methods
EP10700023A EP2422523A1 (fr) 2009-04-23 2010-01-07 Procédés de codage et de décodage d'un bloc de données d'image, dispositifs de codage et de décodage mettant en uvre lesdits procédés
PCT/EP2010/050106 WO2010121842A1 (fr) 2009-04-23 2010-01-07 Procédés de codage et de décodage d'un bloc de données d'image, dispositifs de codage et de décodage mettant en oeuvre lesdits procédés
TW099100859A TWI498005B (zh) 2009-04-23 2010-01-14 屬於一序列圖像的圖像段寫碼方法和碼式資料連流之解碼方法及其裝置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0952667A FR2944936A1 (fr) 2009-04-23 2009-04-23 Procedes de codage et de decodage d'un bloc de donnees images, dispositifs de codage et de decodage implementant lesdits procedes

Publications (1)

Publication Number Publication Date
FR2944936A1 true FR2944936A1 (fr) 2010-10-29

Family

ID=41092211

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0952667A Withdrawn FR2944936A1 (fr) 2009-04-23 2009-04-23 Procedes de codage et de decodage d'un bloc de donnees images, dispositifs de codage et de decodage implementant lesdits procedes

Country Status (5)

Country Link
US (1) US9094716B2 (fr)
EP (1) EP2422523A1 (fr)
FR (1) FR2944936A1 (fr)
TW (1) TWI498005B (fr)
WO (1) WO2010121842A1 (fr)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2661893B1 (fr) 2011-01-04 2020-11-25 BlackBerry Limited Codage de données résiduelles dans une compression prédictive
CA2822929C (fr) 2011-01-04 2016-07-12 Research In Motion Limited Codage de donnees residuelles dans une compression predictive
KR102074600B1 (ko) 2012-02-29 2020-02-06 소니 주식회사 화상 처리 장치 및 방법, 및 기록 매체
US11206395B2 (en) * 2019-09-24 2021-12-21 Mediatek Inc. Signaling quantization matrix

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1289304A2 (fr) * 1996-05-28 2003-03-05 Matsushita Electric Industrial Co., Ltd. Prédiction de blocs intratrame avec utilisation de blocs adjacents
US20060109911A1 (en) * 2004-10-22 2006-05-25 Humax Co., Ltd. Selective prediction encoding and decoding methods and selective prediction encoding and decoding devices
FR2908259A1 (fr) * 2007-02-16 2008-05-09 Thomson Licensing Sas Procede de reduction de debit d'un premier flux de donnees video codees en un deuxieme flux
EP1995973A1 (fr) * 2006-03-10 2008-11-26 NEC Corporation Procede de selection de mode de prevision interne, procede de codage d'image animee et dispositif et programme les utilisant

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5001561A (en) * 1990-05-02 1991-03-19 At&T Bell Laboratories Embedded coding system for video signals
JP2606508B2 (ja) * 1991-10-29 1997-05-07 日本ビクター株式会社 動画像予測符号化装置及びその復号化装置
US6222881B1 (en) * 1994-10-18 2001-04-24 Intel Corporation Using numbers of non-zero quantized transform signals and signal differences to determine when to encode video signals using inter-frame or intra-frame encoding
EP0945001B1 (fr) 1996-12-18 2003-04-23 Thomson Consumer Electronics, Inc. Processeur de signal video a formats multiples
JPH1140224A (ja) * 1997-07-11 1999-02-12 Jsr Corp 異方導電性シート
US6104757A (en) * 1998-05-15 2000-08-15 North Carolina State University System and method of error control for interactive low-bit rate video transmission
KR20060105409A (ko) * 2005-04-01 2006-10-11 엘지전자 주식회사 영상 신호의 스케일러블 인코딩 및 디코딩 방법
US9071840B2 (en) * 2004-01-30 2015-06-30 Thomson Licensing Encoder with adaptive rate control for H.264
US7933328B2 (en) * 2005-02-02 2011-04-26 Broadcom Corporation Rate control for digital video compression processing
FR2881898A1 (fr) * 2005-02-10 2006-08-11 Thomson Licensing Sa Procede et dispositif de codage d'une image video en mode inter ou intra
KR100694093B1 (ko) * 2005-02-18 2007-03-12 삼성전자주식회사 영상 블럭의 계수 예측 장치 및 그 방법
CN101009838B (zh) * 2006-01-25 2010-06-16 松下电器产业株式会社 可抑制漂移误差的比特率转换编码方法,转换编码器,及集成电路
US7929608B2 (en) * 2006-03-28 2011-04-19 Sony Corporation Method of reducing computations in intra-prediction and mode decision processes in a digital video encoder
US8059721B2 (en) * 2006-04-07 2011-11-15 Microsoft Corporation Estimating sample-domain distortion in the transform domain with rounding compensation
CN101031084A (zh) 2007-03-26 2007-09-05 武汉大学 一种视频转码中帧内模式的快速选择方法
CN101060626A (zh) 2007-05-10 2007-10-24 武汉大学 一种视频转码中帧内模式的快速选择方法
US8798137B2 (en) * 2008-02-29 2014-08-05 City University Of Hong Kong Bit rate estimation in data or video compression

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1289304A2 (fr) * 1996-05-28 2003-03-05 Matsushita Electric Industrial Co., Ltd. Prédiction de blocs intratrame avec utilisation de blocs adjacents
US20060109911A1 (en) * 2004-10-22 2006-05-25 Humax Co., Ltd. Selective prediction encoding and decoding methods and selective prediction encoding and decoding devices
EP1995973A1 (fr) * 2006-03-10 2008-11-26 NEC Corporation Procede de selection de mode de prevision interne, procede de codage d'image animee et dispositif et programme les utilisant
FR2908259A1 (fr) * 2007-02-16 2008-05-09 Thomson Licensing Sas Procede de reduction de debit d'un premier flux de donnees video codees en un deuxieme flux

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KEESMAN G J: "Multi-program video data compression", THESIS, XX, XX, 1 January 1995 (1995-01-01), pages 149 - 178, XP002462192 *
LEFOL D ET AL: "Performance Evaluation of Transcoding Algorithms for H. 264", CONSUMER ELECTRONICS, 2006. ICCE '06. 2006 DIGEST OF TECHNICAL PAPERS. INTERNATIONAL CONFERENCE ON LAS VEGAS, NV, USA 07-11 JAN. 2006, PISCATAWAY, NJ, USA,IEEE, 7 January 2006 (2006-01-07), pages 415 - 416, XP010896681, ISBN: 978-0-7803-9459-9 *

Also Published As

Publication number Publication date
US9094716B2 (en) 2015-07-28
WO2010121842A1 (fr) 2010-10-28
TWI498005B (zh) 2015-08-21
EP2422523A1 (fr) 2012-02-29
US20120121010A1 (en) 2012-05-17
TW201039646A (en) 2010-11-01

Similar Documents

Publication Publication Date Title
US7010041B2 (en) Process for changing the syntax, resolution and bitrate of MPEG bitstreams, a system and a computer product therefor
US8358701B2 (en) Switching decode resolution during video decoding
FR2948845A1 (fr) Procede de decodage d'un flux representatif d'une sequence d'images et procede de codage d'une sequence d'images
US20060165302A1 (en) Method of multi-layer based scalable video encoding and decoding and apparatus for the same
US20050002458A1 (en) Spatial scalable compression
JP2005506815A5 (fr)
FR2917262A1 (fr) Dispositif et procede de codage d'un contenu video sous la forme d'un flux scalable.
KR20060045719A (ko) 고충실도 트랜스코딩
FR2944936A1 (fr) Procedes de codage et de decodage d'un bloc de donnees images, dispositifs de codage et de decodage implementant lesdits procedes
US8228991B2 (en) System and method for adaptive video compression motion compensation
US7254174B2 (en) Process for changing the resolution of MPEG bitstreams, and a system and a computer program product therefor
US20070025438A1 (en) Elastic storage
EP3632103B1 (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
FR2982983A1 (fr) Procede de codage et de reconstruction d'un bloc de pixels et dispositifs correspondants
JP2005522117A (ja) 量子化スケールの制限された変動を有する映像符号化
WO2008049628A1 (fr) Procede et dispoitif d'optimisation de la compression d'un flux video
FR2957744A1 (fr) Procede de traitement d'une sequence video et dispositif associe
WO2006024988A2 (fr) Procede et appareil destines a l'estimation de mouvement
JP4363615B2 (ja) 符号化動画像変換装置
FR2980068A1 (fr) Procede de codage et de reconstruction d'un bloc de pixels et dispositifs correspondants
JP4539028B2 (ja) 画像処理装置および画像処理方法、記録媒体、並びに、プログラム
FR2990097A1 (fr) Procedes de codage et de decodage spatialement echelonnables et dispositifs correspondants
WO2011161259A1 (fr) Procede de codage d'une entite de donnees image et procede de reconstruction d'une entite de donnees image
JP2000059789A (ja) 動画像符号列変換装置及びその方法
WO2008095825A1 (fr) Transcodage vidéo à réduction de la dérive

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20101230