FR2872975A1 - Procede et dispositif pour choisir un mode de codage - Google Patents

Procede et dispositif pour choisir un mode de codage Download PDF

Info

Publication number
FR2872975A1
FR2872975A1 FR0451447A FR0451447A FR2872975A1 FR 2872975 A1 FR2872975 A1 FR 2872975A1 FR 0451447 A FR0451447 A FR 0451447A FR 0451447 A FR0451447 A FR 0451447A FR 2872975 A1 FR2872975 A1 FR 2872975A1
Authority
FR
France
Prior art keywords
blocks
coding
subset
energy function
mode
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR0451447A
Other languages
English (en)
Inventor
Edouard Francois
Dominique Thoreau
Anne Lorette
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thomson Licensing SAS filed Critical Thomson Licensing SAS
Priority to FR0451447A priority Critical patent/FR2872975A1/fr
Priority to EP05105967A priority patent/EP1615172B1/fr
Priority to ES05105967T priority patent/ES2319663T3/es
Priority to DE602005012184T priority patent/DE602005012184D1/de
Priority to US11/174,165 priority patent/US8059722B2/en
Priority to CN200510082188XA priority patent/CN1719900B/zh
Priority to KR1020050060071A priority patent/KR101177939B1/ko
Priority to MXPA05007303A priority patent/MXPA05007303A/es
Priority to JP2005198126A priority patent/JP4880255B2/ja
Publication of FR2872975A1 publication Critical patent/FR2872975A1/fr
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/134Methods 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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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/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

La présente invention concerne un procédé et un dispositif pour choisir un mode de codage (112) parmi une pluralité de modes de codage pour un sous-ensemble de blocs (109) inclus dans un ensemble de blocs (101). Une fonction d'énergie (105) sur l'ense mble de blocs (101) pour chacun des modes de codage est calculée (102) et des éléments de calcul (103) de la fonction d'énergie (105) sont mémorisés pour au moins le sous -ensemble de blocs (109). Un premier mode de codage (107), minimisant la fonction d'én ergie (105) sur l'ensemble de blocs (101) est choisi.La fonction d'énergie (110) sur le sous -ensemble de blocs (109) pour chacun des modes de codage est ensuite calculée (108) en utilisant les éléments de calcul (103) mémorisés pour le sous -ensemble de blocs (109) et en mettant en oeuvre une estimation (113), sur un voisinage dudit sous -ensemble (109), d'un coût de codage pour les modes de codage distincts du premier mode de codage (107). Le choix (111) d'un mode de codage (112) minimisant la fonction d'éne rgie (110) sur le sous-ensemble (109) est alors réalisé.

Description

La présente invention concerne un procédé pour choisir les modes de codage
des blocs d'une image divisée en blocs, parmi une pluralité de modes de codage de compression d'image. Le procédé consiste à choisir itérativement un mode de codage pour coder un en semble de blocs puis à affiner ce choix sur
des sous-ensembles de blocs du-dit ensemble de blocs. L'affinage peut se reproduire de façon itérative sur les sous -ensembles ainsi traités.
Le contexte de l'invention est donc la compression, notamment de vidéo, basée sur des schémas de codage par blocs, de type MPEG -2, MPEG-4, partie 2 ou 10. Ces schémas de compression opèrent sur des entités de base appelées macroblocs. Dans la suite, le terme bloc pourra désigner des groupes de taille quelconque de blocs plus petits et donc notamment pourra désigner des macroblocs. Ces schémas mettent en oeuvre un procédé de décision de codage qui a pour but de choisir pour chaque macrobloc le mode de codage qui apparaît le mieux adapté. Ce choix peut se faire a posteriori, c'e st-à-dire en évaluant tous les modes possibles, notamment par le calcul de coût de codage et de distorsion. Le mode de codage présentant le meilleur compromis débit - distorsion est alors choisi. Les procédés connus de décision de codage opèrent de façon causale: une fois une décision prise pour un macrobloc, on passe au macrobloc suivant. Ceci se fait dans l'ordre de balayage de l'image.
Les procédés connus ne prennent ainsi pas en compte l'impact des décisions sur les macroblocs futurs. Cela a des conséqu ences négatives sur la carte des modes choisis sur l'ensemble d'une image qui peut présenter une certaine inhomogénéité. Les effets de blocs sont alors visibles. Cela entraîne également des conséquences négatives sur le coût de codage puisque le coût de codage d'un macrobloc est généralement très dépendant du choix des modes de codage des macroblocs voisins, notamment situés au -dessus et à gauche dans le cas d'un balayage de gauche à droite et de haut en bas. La décision prise sur un macrobloc peut être la meilleure pour ce macrobloc, mais comme elle affecte les macroblocs suivants, elle peut avoir pour conséquence de choisir une décision non optimale pour des macroblocs ultérieurs. Des approches à plusieurs itérations permettant de reconsidérer les décision s prises précédemment peuvent être utilisées. La quantité de calcul est alors élevée. De plus, ces approches permettent d'éviter une décision non optimale pour les macroblocs ultérieurs seulement en adoptant une stratégie de relaxation dite stochastique qui implique une quantité de calcul incompatible avec, notamment, un codage vidéo.
D'autres approches basées sur le calcul d'un jeu de modes de codage sur un ensemble de macroblocs suppose de considérer toutes les combinaisons possibles de modes de codage, c e qui est évidemment 10 extrêmement coûteux en temps de calcul.
La présente invention propose un procédé de décision de codage qui n'engendre pas les défauts évoqués ci -dessus. Ainsi, un procédé de décision de codage selon l'invention permet d'obtenir une i mage compressée de meilleure qualité par rapport à la solution classique évoquée ci -dessus, tout en optimisant le coût de codage.
La présente invention concerne un procédé pour choisir un mode de codage pour coder un sous -ensemble de blocs inclus dans un e nsemble de blocs, parmi une pluralité de modes de codage de compression d'images divisées en blocs, ledit procédé incluant les étapes de calcul d'une fonction d'énergie sur ledit ensemble de blocs pour chacun des modes de codage, de mémorisation d'éléments de calcul de ladite fonction d'énergie pour au moins le sous-ensemble de blocs, de choix d'un premier mode de codage minimisant la fonction d'énergie sur ledit ensemble de blocs, de calcul de la fonction d'énergie sur ledit sous-ensemble de blocs pour chacun des modes de codage, ledit calcul de la fonction d'énergie utilisant les éléments de calcul mémorisés pour le sous-ensemble de blocs et mettant en oeuvre une étape d'estimation, sur un voisinage dudit sous-ensemble, d'un coût de codage pour les modes de codage distincts du premier mode de codage, de choix d'un second mode de codage minimisant la fonction d'énergie sur le sous -ensemble.
En effet, l'approche mufti -échelle proposée par l'invention utilise un choix d'un mode de codage pour un ensemble de blo cs pour décider ensuite du mode de codage pour un sous -ensemble de l'ensemble de blocs. Cela permet d'homogénéiser la décision sur l'ensemble de blocs. Cette approche permet également d'approcher du minimum global sur l'ensemble des blocs de la fonction d'énergie et donc, notamment, d'optimiser le coût de codage sur l'ensemble de blocs. Il va de soi que les premier et second modes de codage peuvent être distincts ou être les mêmes, étant donné qu'un même mode de codage peut minimiser la fonction d'énergie p our l'ensemble de blocs et pour le sous-ensemble de blocs.
Dans un mode de réalisation, l'ensemble de blocs est un groupe de 2"*2" blocs, le sous-ensemble étant un groupe de 2 "-1*2"-1 blocs.
Cette réalisation est particulièrement avantageuse dans le cadre des codages d'images, notamment selon les standards MPEG, où les blocs sont notamment regroupés en macroblocs, qui peuvent aussi être regroupés entre eux, notamment en groupes de 2 "x2" blocs.
Dans un mode de réalisation, le voisinage est le groupe des blo cs audessous et à droite du sous -ensemble de blocs.
Cette réalisation est particulièrement avantageuse dans le cadre des 20 codages d'images, notamment selon les standards MPEG, où les blocs sont balayés, pour le codage, de gauche à droite et de haut en bas.
Dans un mode de réalisation, les éléments de calcul sont une distorsion et un coût de codage pour chaque sous -ensemble de blocs.
Cette caractéristique reflète la nature d'une fonction d'énergie ainsi que calculée selon l'invention. La distorsion représent e l'erreur observée entre l'image codée et l'image d'origine non codée. Le coût de codage représente généralement le nombre de bits nécessaires au codage de l'image. Ces éléments de calcul sont mémorisés afin de pouvoir être rappelés par l'étape de calcul de la fonction d'énergie pour le sous ensemble de macroblocs.
Dans un mode de réalisation, l'étape de choix d'un mode de codage inclut une sous-étape de choix d'un paramètre du mode de codage.
Cette caractéristique permet d'élargir l'application de l'inven tion à un choix de paramètres propres au mode de codage, par exemple le choix d'un vecteur.
Dans un mode de réalisation, le procédé selon l'invention est itéré sur une suite de sous -ensembles d'ensembles de blocs.
Cette réalisation est particulièrement uti le pour le codage MPEG. L'ensemble de blocs peut être par exemple de la plus grande taille 2 n de blocs possible dans l'image à coder, le sous -ensemble suivant étant de taille 2 1. Selon le procédé de l'invention, un mode de codage est alors choisi pour qu atre sous-ensembles. Puis chaque sous -ensemble de taille 2 n-1 devient l'ensemble de blocs, le sous-ensemble étant alors de taille 2 n-2 et ainsi de suite.
L'invention concerne également un dispositif pour mettre en oeuvre le procédé tel que décrit auparavan t.
L'invention concerne également une image compressée obtenue en mettant en oeuvre itérativement un procédé selon l'invention (en partant d'un découpage en blocs de très grande taille typiquement 128*128 pixels - de l'image complète).
D'autres caractéristiques et avantages de la présente invention apparaîtront à la lecture de la description de différents modes de réalisation, la description étant faite avec référence aux dessins ci annexés dans lesquels: Fig. 1 est un schéma d'un dispositif selon l'inve ntion.
Fig. 2a et Fig. 2b présentent le rôle d'un voisinage d'un bloc ou d'un macrobloc dans le calcul d'un coût de codage.
Fig. 3 illustre le fonctionnement de l'invention sur un ensemble de macroblocs.
Fig. 4 représente une fonction d'énergie à différent es échelles.
Fig. 5a à Fig.5c illustre le déroulement d'un procédé selon l'invention sur un ensemble de macroblocs.
Comme représenté sur la figure 1, un dispositif 100 selon l'invention inclut un module de calcul 102 pour calculer une fonction d'énergie 105 sur un ensemble 101 de blocs pour chacun des modes de codage. Une mémoire 104 permet de mémoriser des éléments de calcul 103 de la fonction d'énergie 105 pour au moins un sous -ensemble de blocs 109.
La fonction d'énergie, représentée par une unique réf érence 105 pour des raisons de clarté, est calculée pour plusieurs modes de codage. Ainsi, autant de valeurs de la fonction d'énergie, référencée 105, sont mémorisées que de modes de codage sont évalués.
Le dispositif 100 inclut un module 106 pour choisir un mode de codage, dit premier mode de codage 107, minimisant la fonction d'énergie 105 15 sur ledit ensemble de blocs 101.
Le choix d'un mode de codage consiste à rechercher l'ensemble des modes de codage M et l'ensemble de leurs paramètres associés P minimi sant la fonction d'énergie 105, notée E dans les équations: minM,p E(M,P/Icur, lref) où Icur désigne l'image courante, I ref désigne les images servant de références pour la prédiction temporelle, M={m 1,m2,...,mN} est l'ensemble des modes de codage des N mac roblocs, mi pouvant prendre ses valeurs parmi l'ensemble de Q modes de codage autorisés T={t t,t2,...,tQ}, P est l'ensemble des paramètres associés en chaque site s à son mode ms. Il peut s'agir de la direction de prédiction spatiale pour le mode de codage ln tra, de vecteurs de mouvement ou de coefficients de pondération bidirectionnelle pour un mode Inter.
La fonction d'énergie E est une somme de fonctions élémentaires sur l'ensemble des blocs. Comme signalé précédemment, ces fonctions 30 élémentaires dépendent du voisinage du bloc.
Ainsi que représenté sur la figure 2a, dans un schéma de codage réalisé avec un balayage de gauche à droite et de haut en bas, comme par exemple un schéma de codage MPEG -4 partie 10, la fonction élémentaire calculée sur le bloc 200 d épend des modes de codage choisis dans le voisinage constitué par les blocs 201 à 204. De manière complémentaire, ainsi que représenté sur la figure 2b, chacune des fonctions élémentaires calculée pour les blocs 206 à 209 dépendent, notamment, du mode de c odage choisi pour le bloc 205.
La somme de fonctions élémentaires s'écrit alors: E(M,Pllcur, Iref)=ESES Es(ms, ps(ms)Imr,pr(mr), rEVs, Icur, Iref) où S est l'ensemble des positions (ou sites) des N macroblocs de l'image et Vs désigne le voisinage du site s, par exemple les blocs 201 à 204 sur la figure 2a.
La fonction Es peut prendre plusieurs formes. Dans une approche a 15 posteriori, elle peut prendre la forme suivante, dont la notation a été simplifiée en ne faisant plus apparaître les dépendances conditio nnelles: Es(m)=D(m,p(m))+X.C(m,p(m)) où D est une mesure de distorsion et C est une mesure de coût de codage, X est un paramètre déterminé ou calculé, classiquement en fonction du 20 pas de quantification du bloc.
Le choix du premier mode de codage 107 sur 1 'ensemble des blocs est déterminé par le mode minimisant la fonction E s(m) ci-dessus.
Les éléments de calcul D et C, référencés 103 sur la figure 1 sont mémorisés pour chaque sous -ensemble de blocs, pour chaque mode évalué.
Selon l'invention au moins les éléments de calcul 103 pour les blocs du sous - ensemble 109 pour lequel un mode de codage 112 doit être choisi sont mémorisés.
Le dispositif 100 a donc ensuite la possibilité de s'intéresser à un sousensemble 109 de l'ensemble 101 de blocs.
II inclut ainsi un module de calcul 108 pour calculer la fonction d'énergie 110 sur ledit sous -ensemble 109 de blocs pour chacun des modes de codage m.
La figure 3 illustre ensuite le fonctionnement de l'invention. Un premier mode de codage a été choisi pour l'ensemble d e blocs 301. C'est, par exemple, pour le sous-ensemble 309 de 4x4 blocs, que la fonction d'énergie 110 est ensuite calculée. N'importe quel autre sous -ensemble, par exemple celui de taille 3x3 et noté 303 sur la figure 3, de l'ensemble 301 peut également être sélectionné selon le procédé de l'invention. Toutes autres tailles, par exemple 3x2 etc., peuvent également être mise en oeuvre dans l'invention.
Selon la figure 1, le module de calcul 108 de la fonction d'énergie 110 fait appel aux éléments de calcul 103 mémorisés pour le sous -ensemble 109 de blocs. Le module de calcul 108 inclut aussi un module d'estimation 113 pour estimer, sur un voisinage du sous -ensemble, un coût de codage pour les modes de codage distincts du premier mode de codage 107.
Selon la figure 3, le voisinage du sous -ensemble est le voisinage 302 défini par les blocs situés en bas et à droite du sous -ensemble 309 de blocs.
En effet, ainsi qu'illustré sur la figure 2b, le changement de mode pour un bloc 205 situé en un site s joue aussi sur l'énergie des blocs futurs 206 à 209. Les blocs futurs sont notés F s dans les équations. Si en un site s, un mode m est remplacé par un mode m', la variation d'énergie qui en résulte est la suivante: DE=Es(m',ps(m'))-Es(m,ps(m))+ErE Fs(Er(mr,pr(mr)Im',ps(m'))- Er(mr,pr(mr)/m,ps(m))) Les deux premiers termes représentent le changement de la fonction d'énergie en dépendance avec les blocs passés, le troisième terme représente le changement de la fonction d'énergie engendré sur la fonction d'énergie des futurs blocs.
Dans les approches causales mono -échelles classiques, le choix du mode de codage est alors réalisé en mesurant la variation de la fonction d'énergie du macrobloc s, c'est -à-dire les deux premiers termes sans prendre en compte les variations d'é nergie intervenant sur les blocs futurs.
On observe que pour des pas de quantification faibles à moyens dans l'image divisée en blocs, on peut considérer que l'impact pour un bloc d'un changement de mode d'un bloc antérieur du voisinage ne porte pas sur la distorsion mais uniquement sur le coût de codage. En effet, un bloc reconstruit après déquantification n'est pas trop éloigné du bloc source pour les plages de pas de quantification faibles à moyens. Dans ce cas, la distorsion n'a pas besoin d'être recalculée. Ainsi, pour chaque sous ensemble de blocs, les distorsions pour chaque mode sont calculées dès l'échelle la plus grossière. Dans ce cas, la mémorisation des éléments de calcul 103 permet de faire appel aux éléments de calcul 103 représentant la disto rsion D facilement sans avoir à les recalculer.
Le fait de travailler sur des sous -ensembles de blocs et d'avoir nécessairement le même mode à l'intérieur d'un sous -ensemble engendre que le coût de codage ne change pas pour les blocs situés à l'intérieur d u sous-ensemble de blocs. On observe donc que pour une échelle donnée, les variations de coût de codage générées par le changement de mode de codage pour le sous-ensemble 309 de blocs ne sont sensibles que pour les blocs situés au voisinage 302 du sous-ensemble 309. Cela permet de diminuer considérablement la quantité de calculs effectuée puisque seules les variations de coût de codage pour les blocs du voisinage 302 du sous ensemble 309 de blocs sont calculées. Les autres coûts de codage pour les blocs int ernes au sous-ensemble sont en effet mémorisés ainsi que vu précédemment en tant qu'élément de calcul 103. En effet, si on se reporte à la figure 3, un calcul classique des coûts de codage engendre 16+9 calculs alors que l'invention permet de n'en réaliser que 9.
Le dispositif inclut enfin un module 111 pour choisir un mode de codage 112 minimisant la fonction d'énergie 110 calculée par le module de calcul 108 sur le sous-ensemble 109.
L'approche multi-échelle proposée selon l'invention permet de s'approcher plus facilement de l'optimisation du codage sur l'image. En effet, une approche multi-échelle permet de lisser la fonction à minimiser de façon d'autant plus importante que le procédé est réalisé avec un ensemble de blocs de grande échelle.
Ainsi, à une échelle suffisamment élevée pour l'ensemble de blocs de départ pour le procédé, la fonction devient convexe et l'atteinte du minimum global se fait aisément.
La figure 4 illustre cela dans le cas simple d'une fonction d'énergie calculée sur une seule dime nsion, pour une pluralité de modes représentés en abscisses. Ainsi, on remarque que la courbe 401 de la fonction d'énergie à l'échelle la plus petite présente plusieurs minima. Ainsi si l'on part d'une mauvaise initialisation lors de la minimisation de la fonction d'énergie, on risque de tomber dans un minimum local. La courbe 402 représente une échelle intermédiaire qui présente en plus du minimum global des minima locaux moins prononcés. La courbe 401 représente l'échelle la plus importante, cette courbe 401 ne présente plus qu'un minimum que l'on est assuré d'atteindre. Ainsi qu'illustré sur cette dernière figure, pour déterminer le meilleur jeu de modes de codage sur une image divisées en blocs, il faut minimiser une fonction d'énergie à plusieurs dimensions, notamment le nombre de blocs de l'image, le nombre de modes par blocs, l'espace de prédiction spatio -temporelle, en trouvant la configuration assurant le minimum de la fonction d'énergie. Lorsqu'on utilise l'approche causale, donc à petite échelle, o n aboutit à l'obtention d'un minimum local qui peut être éloigné du minimum global de la fonction d'énergie. Ainsi, l'invention permet de s'approcher plus près de la minimisation de la fonction d'énergie pour le codage d'une image entière puisqu'il est pos sible de définir l'ensemble de blocs comme étant l'image entière.
En référence à la figure 5, le procédé selon l'invention est avantageusement itéré sur une pluralité d'échelles pour l'ensemble et le sous - 30 ensemble de blocs afin d'obtenir une optimisation du jeu de modes de codage sur la totalité d'une image. Selon cette itération le sous -ensemble d'une étape précédente devient l'ensemble de l'étape suivante et ainsi de suite. Avantageusement, l'échelle la plus grossière est l'image entière.
Selon ce principe d'itération, la minimisation de la fonction d'énergie est calculée sur une première échelle représentée sur la figure 5a par un ensemble 500 de blocs de 8x8 blocs. Pour cette première échelle, les sous - ensembles 501 à 504 sont de taille 4x4. Pour la sec onde échelle représentée sur la figure 5b, les sous-ensembles 501 à 504 de l'échelle précédente sont devenus chacun un ensemble de blocs pour réaliser un procédé selon l'invention. Les sous-ensembles sont cette fois, les groupes 505 à 520 de 2x2 blocs. Enfin dans la troisième échelle, les sous -ensembles sont cette fois, les blocs 521 eux-mêmes. Ainsi les blocs sont regroupés par sous -ensembles de 2 x2'1 blocs. Les blocs de chaque sous ensemble ont nécessairement tous le même mode de codage.
L'invention permet de mener l'optimisation à partir de l'échelle la plus grossière. Un balayage causal est utilisé pour parcourir chacun des sous ensembles au sein d'un ensemble. On recherche selon l'invention pour chaque sous-ensemble à une échelle K donnée le mode qui gé nère l'énergie la plus faible. Par exemple, sur la figure 5, l'ensemble 500 d'échelle K+ 1 est utilisé pour déterminer le mode qui génère l'énergie la plus faible pour chacun des sous - ensembles 501 à 504 d'échelle K à la suite. Une fois l'échelle K traitée, on dispose pour l'échelle inférieure K -1 d'une carte des modes initiale pour chaque nouvel ensemble d'échelle K. Pour chaque sous -ensemble d'échelle K-1, on recherche alors le mode qui assure la baisse d'énergie la plus forte. Une fois l'échelle K-1 traitée on passe à l'échelle K-2 et ainsi de suite jusqu'à l'échelle 0 où, par exemple, un seul bloc constitue le sous -ensemble.
L'invention peut également être appliquée pour optimiser la fonction d'énergie en fonction des paramètres des modes de codage. Deux approches peuvent être considérées. Soit les paramètres de chaque sous -ensemble de blocs peuvent être différents. Ainsi le mode de codage d'un sous ensemble est par exemple le mode Inter avec un paramètre vecteur mouvement pour chaque sous-ensemble de blocs. Soit on opère pour un paramètre P donné de la même manière que pour les modes en traitant à chaque échelle un sous -ensemble P n du paramètre P. Dans les deux cas, l'estimation du paramètre P et si nécessaire des Pn peut être faite de façon totalement i ndépendante. Par exemple on peut mener une estimation de mouvement mufti -échelle sur l'ensemble de l'image préalablement à la mise en oeuvre du dispositif de décision de codage. Cette solution présente l'avantage d'être moins coûteuse en calcul que la solut ion d'estimation simultanée des ensembles M n et Pn.
L'invention n'est pas limitée aux modes de réalisation décrits et l'homme du métier reconnaîtra l'existence de diverses variantes de réalisation comme par exemple la possibilité d'envisager différents typ es de voisinage pour le calcul des coûts de codage des blocs voisins. On peut aussi noter que les coûts de codage peuvent être estimés par un calcul rigoureux ou par un calcul d'approximation utilisant des techniques d'approche connues.

Claims (11)

12 REVENDICATIONS
1 Procédé pour choisir un mode de codage (112), parmi une pluralité de modes de codage de compression d'images divisées en blocs, pour 5 coder un sous-ensemble de blocs (109) inclus dans un ensemble de blocs (101), le procédé incluant les étapes de: calcul (102) d'une fonction d'énergie (105) sur l'ensemble de blocs (101) pour chacun des modes de codage, mémorisation (104) d'éléments de calcul (103) de la fonction 10 d'énergie (105) pour au moins le sous -ensemble de blocs (109), choix (106) d'un premier mode de codage (107) minimisant la fonction d'énergie (105) sur l'ensemble de blocs (101), calcul (108) de la fonction d'énergie (110) sur le sous -ensemble de blocs (109) pour chacun des modes de codage, le calcul de la fonction d'énergie (110) utilisant les éléments de calcul (103) mémorisés pour le sous - ensemble de blocs (109) et mettant en oeuvre une étape d'estimation (113), sur un voisinage du sous-ensemble (109), d'un coût de codage pour les modes de codage distincts du premier mode de codage et, choix (111) d'un second mode de codage (112) minimisant la fonction 20 d'énergie (110) sur le sous -ensemble (109).
2 Procédé selon la revendication 1, dans lequel l'ensemble de blocs (101) est un groupe de 2n-2n blocs, le sous-ensemble (109) étant un groupe de 2"-1*2n-1 blocs.
3 Procédé selon l'une quelconque des revendications 1 et 2, dans lequel le voisinage est le groupe des blocs (101) au -dessous et à droite du sous-ensemble de blocs (109).
4 Procédé selon l'une quelconque des revendications 1 à 3, dans lequel les éléments de calcul (103) sont une distorsion et un coût de codage pour chaque sous-ensemble de blocs (109).
5 Procédé selon l'une quelconque des revendications 1 à 4, dans lequel l'étape de choix d'un mode de codage inclut une sous -étape de choix d'un paramètre du mode de codage.
6 Procédé selon l'une quelconque des revendications 1 à 5, itéré 10 sur une suite de sous-ensembles d'ensembles de blocs.
7 Dispositif destiné à réaliser un choix d'un mode de codage (112) parmi une pluralité de modes de codage pour un sous -ensemble de blocs (109) inclus dans un ensemble de blocs (101), le dispositif incluant: un module de calcul (102) pour calculer une fonction d'énergie (105) sur l'ensemble de blocs (101) pour chacun des modes de codage, une mémoire (104) pour mémoriser des éléments de calcul (103) de la fonction d'énergie (105) pour au moins le sous -ensemble de blocs (109), un module (106) pour choisir un premier mode de codage (107) minimisant la fonction d'énergie (105) sur l'ensemble de blocs (10 1), un module (108) de calcul pour calculer la fonction d'énergie (110) sur le sous-ensemble de blocs (109) pour chacun des modes de codage, ledit module (108) de calcul de la fonction d'énergie (110) faisant appel aux éléments de calcul (103) mémorisés pour le sous-ensemble de blocs (109) et incluant un module d'estimation (113) pour estimer, sur un voisinage du sous -ensemble (109), un coût de codage pour les modes de codage distincts du premier mode de codage, un module (111) pour choisir un second mode d e codage (112) minimisant la fonction d'énergie (110) sur le sous -ensemble (109).
2872975 14 8 Dispositif selon la revendication 7, dans lequel l'ensemble de blocs (101) est un groupe de 2"*2" blocs, le sous-ensemble (109) étant un groupe de 2"-1*2"-i blocs.
9 Dispositif selon l'une quelconque des revendications 7 et 8, dans lequel le voisinage est le groupe des blocs au-dessous et à droite du sous-ensemble de blocs (109).
Dispositif selon l'une quelconque des revendications 7 à 9, dans 10 lequel les éléments de calcul (103) sont une distorsion et un coût de codage pour chaque sous-ensemble de blocs (109).
11 Dispositif selon l'une quelconque des revendications 7 à 10, dans lequel au moins un des modules -pour choisir un made de codage inclut un 15 sous-module pour choisir un paramètre du mode de codage. 1 12 Procédé de codage d'une image vidéo mettant en oeuvre une pluralité de modes de codage, caractérisé en ce qu'il comporte une phase de choix de mode de codage selon le procédé de la revendication 1.
FR0451447A 2004-07-06 2004-07-06 Procede et dispositif pour choisir un mode de codage Pending FR2872975A1 (fr)

Priority Applications (9)

Application Number Priority Date Filing Date Title
FR0451447A FR2872975A1 (fr) 2004-07-06 2004-07-06 Procede et dispositif pour choisir un mode de codage
EP05105967A EP1615172B1 (fr) 2004-07-06 2005-06-30 Procédé et dispositif pour choisir un mode de codage
ES05105967T ES2319663T3 (es) 2004-07-06 2005-06-30 Metodo y dispositivo para seleccionar un modo de codificacion.
DE602005012184T DE602005012184D1 (de) 2004-07-06 2005-06-30 Verfahren und Vorrichtung zur Auswahl einer Kodierungsart
US11/174,165 US8059722B2 (en) 2004-07-06 2005-07-01 Method and device for choosing a mode of coding
CN200510082188XA CN1719900B (zh) 2004-07-06 2005-07-01 选择编码模式的方法和设备
KR1020050060071A KR101177939B1 (ko) 2004-07-06 2005-07-05 코딩 모드를 선택하기 위한 방법 및 디바이스
MXPA05007303A MXPA05007303A (es) 2004-07-06 2005-07-05 Metodo y dispositivo para seleccionar un modo de codificacion.
JP2005198126A JP4880255B2 (ja) 2004-07-06 2005-07-06 符号化モードを選択する方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0451447A FR2872975A1 (fr) 2004-07-06 2004-07-06 Procede et dispositif pour choisir un mode de codage

Publications (1)

Publication Number Publication Date
FR2872975A1 true FR2872975A1 (fr) 2006-01-13

Family

ID=34949756

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0451447A Pending FR2872975A1 (fr) 2004-07-06 2004-07-06 Procede et dispositif pour choisir un mode de codage

Country Status (9)

Country Link
US (1) US8059722B2 (fr)
EP (1) EP1615172B1 (fr)
JP (1) JP4880255B2 (fr)
KR (1) KR101177939B1 (fr)
CN (1) CN1719900B (fr)
DE (1) DE602005012184D1 (fr)
ES (1) ES2319663T3 (fr)
FR (1) FR2872975A1 (fr)
MX (1) MXPA05007303A (fr)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4563981B2 (ja) * 2006-10-23 2010-10-20 日本電信電話株式会社 映像符号化方法、映像符号化装置、映像符号化プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体
US9125807B2 (en) 2007-07-09 2015-09-08 Incept Llc Adhesive hydrogels for ophthalmic drug delivery
WO2010044757A1 (fr) * 2008-10-17 2010-04-22 Agency For Science, Technology And Research Procédé permettant de coder une image numérique, codeur et élément de programme informatique
JP5890182B2 (ja) 2009-02-12 2016-03-22 インセプト エルエルシー ヒドロゲルプラグによる薬物送達
US8961501B2 (en) 2010-09-17 2015-02-24 Incept, Llc Method for applying flowable hydrogels to a cornea
US9635383B2 (en) * 2011-01-07 2017-04-25 Texas Instruments Incorporated Method, system and computer program product for computing a motion vector
US10230956B2 (en) 2012-09-26 2019-03-12 Integrated Device Technology, Inc. Apparatuses and methods for optimizing rate-distortion of syntax elements
US10277907B2 (en) 2012-10-25 2019-04-30 Integrated Device Technology, Inc. Rate-distortion optimizers and optimization techniques including joint optimization of multiple color components
US20140219331A1 (en) * 2013-02-06 2014-08-07 Magnum Semiconductor, Inc. Apparatuses and methods for performing joint rate-distortion optimization of prediction mode

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0615384A2 (fr) * 1993-03-11 1994-09-14 General Instrument Corporation Of Delaware Compression adaptive de données vidéo numériques
FR2846835A1 (fr) * 2002-11-05 2004-05-07 Canon Kk Codage de donnees numeriques combinant plusieurs modes de codage

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2980810B2 (ja) 1994-04-20 1999-11-22 株式会社グラフィックス・コミュニケーション・ラボラトリーズ 動きベクトル探索方法と装置
JPH0846968A (ja) 1994-08-03 1996-02-16 Nippon Telegr & Teleph Corp <Ntt> 階層的動ベクトル検出方法および装置
JPH08223578A (ja) 1995-02-13 1996-08-30 Nippon Telegr & Teleph Corp <Ntt> 動きベクトル探索方法および装置
US5686963A (en) * 1995-12-26 1997-11-11 C-Cube Microsystems Method for performing rate control in a video encoder which provides a bit budget for each frame while employing virtual buffers and virtual buffer verifiers
US6633611B2 (en) * 1997-04-24 2003-10-14 Mitsubishi Denki Kabushiki Kaisha Method and apparatus for region-based moving image encoding and decoding
JP3570863B2 (ja) 1997-08-05 2004-09-29 三菱電機株式会社 動画像復号化装置および動画像復号化方法
US6711211B1 (en) * 2000-05-08 2004-03-23 Nokia Mobile Phones Ltd. Method for encoding and decoding video information, a motion compensated video encoder and a corresponding decoder
US6654502B1 (en) * 2000-06-07 2003-11-25 Intel Corporation Adaptive early exit techniques in image correlation
US7079579B2 (en) * 2000-07-13 2006-07-18 Samsung Electronics Co., Ltd. Block matching processor and method for block matching motion estimation in video compression
EP2819411B1 (fr) * 2001-09-14 2018-08-29 NTT DoCoMo, Inc. Procédé de codage et de décodage
WO2003043347A1 (fr) * 2001-11-16 2003-05-22 Ntt Docomo, Inc. Procede de codage d'image, procede de decodage d'image, codeur et decodeur d'image, programme, signal de donnees informatiques et systeme d'emission d'image
CN1206864C (zh) * 2002-07-22 2005-06-15 中国科学院计算技术研究所 结合率失真优化的码率控制的方法及其装置
CN1934871B (zh) * 2003-08-25 2011-08-10 新加坡科技研究局 在视频编码中对帧间预测进行模式判定的方法和系统
JP2005268879A (ja) 2004-03-16 2005-09-29 Matsushita Electric Ind Co Ltd 画像符号化方法およびその装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0615384A2 (fr) * 1993-03-11 1994-09-14 General Instrument Corporation Of Delaware Compression adaptive de données vidéo numériques
FR2846835A1 (fr) * 2002-11-05 2004-05-07 Canon Kk Codage de donnees numeriques combinant plusieurs modes de codage

Also Published As

Publication number Publication date
US20060039479A1 (en) 2006-02-23
ES2319663T3 (es) 2009-05-11
MXPA05007303A (es) 2006-05-25
US8059722B2 (en) 2011-11-15
EP1615172B1 (fr) 2009-01-07
EP1615172A1 (fr) 2006-01-11
JP4880255B2 (ja) 2012-02-22
CN1719900A (zh) 2006-01-11
CN1719900B (zh) 2010-06-09
KR101177939B1 (ko) 2012-08-28
DE602005012184D1 (de) 2009-02-26
JP2006025430A (ja) 2006-01-26
KR20060049842A (ko) 2006-05-19

Similar Documents

Publication Publication Date Title
EP1604529B1 (fr) PROCEDES ET DISPOSITIFS DE CODAGE ET DE DECODAGE D&amp;rsquo;UNE SEQUENCE D&amp;rsquo;IMAGES PAR DECOMPOSITION MOUVEMENT/TEXTURE ET CODAGE PAR ONDELETTES
EP3225029B1 (fr) Procede d&#39;encodage d&#39;image et equipement pour la mise en oeuvre du procede
EP3318061B1 (fr) Procede d&#39;encodage d&#39;image et equipement pour la mise en oeuvre du procede
FR2872975A1 (fr) Procede et dispositif pour choisir un mode de codage
EP3571834B1 (fr) Génération adaptative d&#39;une image à grande gamme dynamique d&#39;une scène, à partir d&#39;une pluralité d&#39;images obtenues par lecture non destructive d&#39;un capteur d&#39;image
EP2347590B1 (fr) Prediction d&#39;une image par compensation en mouvement en avant
EP2281396A1 (fr) Procede de codage d &#39; image avec synthese de texture
WO2001043446A1 (fr) Procede d&#39;estimation de mouvement entre deux images avec gestion des retournements de mailles et procede de codage correspondant
WO2018002474A1 (fr) Procédé de codage intra d&#39;une image numérique et procédé de décodage correspondant
WO2020058594A1 (fr) Procédés et dispositifs de codage et de décodage d&#39;un flux de données représentatif d&#39;au moins une image
FR2955995A1 (fr) Procede et dispositif de traitement d&#39;une sequence video
WO2005088979A1 (fr) Procede de recherche de la directon de prediction en codage video intra-image
WO2016051083A1 (fr) Procédé de transcodage de données vidéo à fusion d&#39;unités de codage, programme informatique, module de transcodage et équipement de télécommunications associés
EP3815369A1 (fr) Procédés et dispositifs de codage et de décodage d&#39;un flux de données représentatif d&#39;au moins une image
FR2872989A1 (fr) Procede et dispositif pour choisir un vecteur mouvement pour le codage d&#39;un ensemble de blocs
WO2010063898A1 (fr) Dispositif d&#39;encodage d&#39;un flux d&#39;images numeriques et dispositif de decodage correspondant avec approximation du voisinage d&#39;un bloc par le voisinage elargi du bloc
FR2957744A1 (fr) Procede de traitement d&#39;une sequence video et dispositif associe
FR2929431A1 (fr) Procede et dispositif de classification des echantillons representatifs d&#39;un signal numerique d&#39;image
EP3922017A1 (fr) Procédés et dispositifs de codage et de décodage d&#39;un flux de données représentatif d&#39;au moins une image
FR2916931A1 (fr) Procede de selection d&#39;une donnee de codage et dispositif de codage implementant ledit procede
FR3088511A1 (fr) Procede de decodage d’au moins une image, procede de codage, dispositifs, signal et programmes d’ordinateur correspondants.
EP4078959A1 (fr) Procede d&#39;encodage d&#39;une image numerique en vue de sa compression
FR3143246A1 (fr) Procédé et dispositif de codage et décodage d’images.
FR3144361A1 (fr) Procédé amélioré d’apprentissage sensible à la quantification pour un réseau de neurones
FR3143247A1 (fr) Procédé et dispositif de codage et décodage de séquences d’images.