FR2872974A1 - Procede ou dispositif de codage adaptatif - Google Patents

Procede ou dispositif de codage adaptatif Download PDF

Info

Publication number
FR2872974A1
FR2872974A1 FR0451446A FR0451446A FR2872974A1 FR 2872974 A1 FR2872974 A1 FR 2872974A1 FR 0451446 A FR0451446 A FR 0451446A FR 0451446 A FR0451446 A FR 0451446A FR 2872974 A1 FR2872974 A1 FR 2872974A1
Authority
FR
France
Prior art keywords
block
motion
sub
blocks
image
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
FR0451446A
Other languages
English (en)
Inventor
Yannick Olivier
Edouard Francois
Pierre Ruellou
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 FR0451446A priority Critical patent/FR2872974A1/fr
Priority to EP05105964A priority patent/EP1622389A3/fr
Priority to CN2005100821907A priority patent/CN1719904B/zh
Priority to MXPA05007305A priority patent/MXPA05007305A/es
Priority to US11/175,130 priority patent/US20060008007A1/en
Priority to KR1020050060072A priority patent/KR101181592B1/ko
Priority to JP2005197951A priority patent/JP4694903B2/ja
Publication of FR2872974A1 publication Critical patent/FR2872974A1/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/57Motion estimation characterised by a search window with variable size or shape
    • 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/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/53Multi-resolution motion estimation; Hierarchical motion estimation
    • 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)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

Le procédé comprenant une phase de préanalyse (6) avec estimation de mouvement de type pel-récursif et une phase de codage proprement dite avec estimation de mouvement (11 ) par appariement de blocs pour des blocs d'images constitués d'un ou plusieurs sous-blocs, est caractérisé en ce que la phase de codage comporte également- une étape de sélection de vecteurs mouvement pour les sous-blocs d'image à partir des vecteurs mouvement calculés par appariement pour le bloc contenant le sous-bloc et à partir des vecteurs mouvement calculés par l'estimation de type pel-récursif pour les pixels ou groupes de pixels appartenant au sous-bloc,- et une étape de calcul de la meilleure partition d'un bloc d'image en sous-blocs à partir de calculs de corrélation prenant en compte les vecteurs mouvement sélectionnés des sous-blocs constituant un bloc.

Description

L'invention concerne un procédé ou dispositif de codage d'une séquence
d'images sources, plus particulièrement un procédé comportant une
phase de préanalyse avec estimation de mouvement de type pel-récursif et une phase de codage proprement dite avec estimation de mouvement par appariement de blocs.
Le domaine est celui de la compression vidéo. On s'intéresse en particulier aux circuits de codage compatibles des normes MPEG 4.
L'estimation de mouvement de type appariement de blocs plus connue sous l'appellation anglaise block matching est mise en oeuvre dans un codeur, pour exploiter la corrélation temporelle des images d'une séquence d'images. Elle permet le calcul de blocs prédits soustrait à un bloc courant pour un codage en mode inter. Du fait des différents choix dans les paramètres de codage proposés par les normes, par exemple la taille du bloc d'image pour l'estimation de mouvement, l'image ou les images de référence à partir desquelles sont effectuées ces estimations de mouvement, la trame supérieure; la trame inférieure ou l'image bi- trame pour ces images de référence, etc., une sélection étant ensuite effectuée en fonction de critères tels que le coût de codage, un nombre important de calculs de mouvement doit être réalisé par le codeur. Ces calculs sont coûteux en termes de temps et capacité de traitement. Les estimateurs de mouvement doivent être spécifiques au codeur ou du moins être compatibles de la multitude de choix proposés dans la norme et mis en oeuvre par le codeur.
Par exemple dans le cas d'un estimateur de mouvement hiérarchique de type appariement de blocs pour un codeur compatible de la norme H264 ou MPEG4 part 10, un champ de vecteurs mouvement est calculé pour chaque taille de bloc (4x4, 4x8, 8x4, 8x8, 8x16, 16x8, 16x16) et pour chaque image de référence. Dans le cas du codage par paire de macroblocs, connu sous l'appellation MBAFF, acronyme de l'anglais MacroBlock Adaptive Frame Field, l'estimateur fournit, par macrobloc, 1 champ de vecteurs mouvement pour l'image bi-trame, 2 champs de vecteurs mouvement pour les trames. Ainsi, pour des macroblocs de taille 16x16, 41 x 3 vecteurs mouvement peuvent être calculés pour chaque image de référence, ce nombre étant multiplié si plusieurs images de référence sont exploitées, tel que dans le mode multi-références.
2872974 2 Un autre problème concerne l'exploitation même d'un estimateur de mouvement de type hiérarchique. S'il un tel estimateur donne un champ de mouvement plus uniforme, il ne permet pas de s'accrocher facilement sur les mouvements de petits objets, du fait de l'approche faible résolution/haute résolution.
L'invention a pour but de pallier les inconvénients précités.
A cet effet, un des objets de l'invention est un procédé de codage d'une séquence d'images sources comprenant une phase de préanalyse avec estimation de mouvement de type pel-récursif et une phase de codage proprement dite avec estimation de mouvement par appariement de blocs pour des blocs d'images constitués d'un ou plusieurs sous-blocs, caractérisé en ce que la phase de codage comporte également - une étape de sélection de vecteurs mouvement pour les sous- blocs d'image à partir des vecteurs mouvement calculés par appariement pour le bloc contenant le sous-bloc et à partir des vecteurs mouvement calculés par l'estimation de type pel-récursif pour les pixels ou groupes de pixels appartenant au sous-bloc, - et une étape de calcul de la meilleure partition d'un bloc d'image 20 en sous-blocs à partir de calculs de corrélation prenant en compte les vecteurs mouvement sélectionnés des sous-blocs constituant un bloc.
Selon une mise en oeuvre particulière, le procédé est caractérisé en ce que l'étape de sélection calcule les niveaux de corrélations des sousblocs pour les vecteurs mouvement de type pel-récursif correspondant à ces sous-blocs, les vecteurs mouvement obtenus par appariement de blocs étant sélectionnés d'office.
Selon une mise en oeuvre particulière, la taille des blocs d'image est celle définie dans le standard MPEG2 et les tailles ses sous-blocs sont celles disponibles dans le standard MPEG 4.
Selon une mise en oeuvre particulière, l'estimation de mouvement par appariement de blocs est de type hiérarchique.
Selon une mise en oeuvre particulière, la phase de préanalyse comporte une étape d'estimation de mouvement de type pel-récursif entre l'image courante et une image précédente, pour une même résolution ou pour une résolution plus faible et une étape de réduction de bruit par filtrage compensé en mouvement à partir du mouvement calculé par la dite estimation de mouvement.
Selon une réalisation particulière, la phase de préanalyse effectue également des calculs de corrélation pour les différentes trames de l'image courante pour déterminer, pour chaque bloc à coder et pour une image de référence, la trame ou image bi-trame correspondante à exploiter en fonction de la meilleure corrélation et transmet cette information au circuit d'estimation de mouvement de type appariement de blocs pour effectuer cette estimation sur l'image de référence correspondante.
L'invention concerne également un dispositif de codage comprenant un circuit de préanalyse avec un estimateur de mouvement de type pelrécursif et un circuit de codage proprement dit par sous-blocs, avec un estimateur de mouvement par appariement de blocs d'images constitués d'un ou plusieurs sous-blocs, caractérisé en ce que le circuit de codage comporte également un circuit de décision de mode de codage - pour la sélection de vecteurs mouvement pour les sous-blocs d'imagé; à partir des vecteurs mouvement calculés par l'estimateur de mouvement par blocs et relatifs au bloc contenant le sous-bloc et à partir des vecteurs mouvement calculés par l'estimateur de type pel-récursif et relatifs aux pixels ou groupes de pixels appartenant au sous-bloc, - et pour le calcul de la meilleure partition d'un bloc d'image en 20 sous-blocs à partir de calculs de corrélation prenant en compte les vecteurs mouvement sélectionnés des sous-blocs constituant un bloc.
La combinaison d'un estimateur de mouvement de type appariement par bloc, bien adapté à la compression de données et d'un estimateur de mouvement pel-récursif, bien adapté au calcul du mouvement physique permet d'obtenir un champ de mouvement de bonne qualité et un bon taux de compression. Les calculs sont réduits.
Grâce à la combinaison des champs de vecteurs mouvement de ces estimateurs, il est par exemple plus facile de s'accrocher sur des petits objets en déplacement dans l'image, qui auraient été ignorés par l'estimateur de mouvement de type appariement de blocs . En exploitant les informations relatives aux vecteurs de mouvement représentant le champ physique, l'estimateur de mouvement de type appariement de blocs , par exemple hiérarchique, peut initialiser une recherche de mouvement sur de tels vecteurs en les utilisant comme prédicteurs.
Il est également possible d'utiliser un circuit d'estimation de mouvement de type appariement de blocs conçu pour des blocs d'image de 2872974 4 taille plus élevée que celle des sous-macroblocs, par exemple un estimateur de type standard MPEG2, donc de moindre coût. Le calcul de corrélation ou de coût de codage des modes prédictifs, pour les sousmacroblocs de taille plus petite est alors effectué à partir des champs de vecteurs mouvement fournis par l'estimateur de mouvement de type pelrécursif et par le circuit d'estimation de mouvement de type appariement de blocs mentionné, par exemple en combinant les vecteurs ou en les sélectionnant.
Un autre avantage consiste en l'exploitation des informations provenant de l'estimateur de mouvement pel-récursif, par l'estimateur de mouvement hiérarchique, afin de limiter ses calculs, par exemple en sélectionnant les images de référence, trames ou bi-trames à exploiter.
D'autres particularités et avantages de l'invention apparaîtront clairement dans la description donnée à titre d'exemple non limitatif et faite en 15 regard des figurés qui réprésentént - la figure 1, un.synoptique d'un codeur selon l'invention, - la figure 2, des partitions d'un macrobloc: etsous-macrobioc, - la figure 3, un algorithme de décision de mode de codage.
La figure 1 représente un codeur d'une séquence vidéo, selon l'invention.
Les données vidéo numériques de l'image source sont reçues en entrée du codeur pour être transmises à un circuit de préanalyse 6. Les images sont filtrées et transmises, par bloc d'image, à une première entrée d'un soustracteur 1. Selon le mode de codage, intra ou inter, le soustracteur 1 transmets l'information relative au bloc courant reçue sur sa première entrée ou bien soustrait à cette dernière les informations correspondant à un bloc prédit disponibles sur sa deuxième entrée. Les données en sortie du soustracteur sont transmises à un circuit de transformation cosinus discrète et quantification 2. Les coefficients quantifiés en sortie de ce circuit subissent un codage entropique à travers le codeur entropique 3 puis sont mémorisées dans une mémoire tampon 4. Le niveau de remplissage de cette mémoire est transmis à un circuit de régulation de débit 5, qui reçoit également des données du circuit de préanalyse, et qui agit sur le pas de quantification du quantificateur 2.
L'image courante est reconstruite pour fournir des blocs prédits.
Ainsi, les coefficients quantifiés subissent une quantification inverse et une 2872974 5 transformation cosinus discrète inverse à travers le circuit référencé 7 pour donner des valeurs de luminance décodées.
L'additionneur 8 permet d'ajouter le bloc prédit au bloc de coefficients décodé, s'il est codé en mode inter. Le bloc reconstruit est filtré par le circuit de filtrage 9 avant d'être mémorisé dans une mémoire image 10 qui mémorise l'image courante reconstruite.
Un circuit d'estimation de mouvement par blocs 11 comportant un estimateur de mouvement hiérarchique reçoit les informations relatives à l'image décodée ou reconstruite mémorisée par la mémoire d'image 10 et les informations relatives au macrobloc courant à coder de l'image source provenant du circuit de préanalyse 6. L'estimateur de mouvement hiérarchique effectue un calcul de corrélation entre ce macrobloc courant et l'image reconstruite selon un principe connu, pour fournir des vecteurs mouvement par macrobloc. Ces vecteurs sont transmis au circuit de décision de mode de codage 13. Ce circuit reçoit également, du circuit de préanalyse, des vecteurs mouvement calculés par l'estimateur de mouvement de type pel-récursif. Il sélectionne la meilleure partition des macroblocs avec leurs modes de codage correspondants.
Le mode de codage et les vecteurs mouvement correspondants sont transmis à un circuit de compensation de mouvement 12 qui réalise la compensation de mouvement de la ou des images de référence reconstruites pour fournir un bloc d'image prédit. Les vecteurs de mouvement sont également transmis au circuit de codage entropique 3 pour leur codage et transmission au décodeur.
De manière plus détaillée, en entrée du codeur se trouve un circuit de préanalyse 6 comportant un circuit de réduction de résolution, un circuit d'estimation de mouvement de type pel-récursif et un circuit de filtrage. Ces circuits permettent de procéder à une réduction de bruit sur l'image avant son codage. Dans ce domaine, il est reconnu qu'une estimation de mouvement de type pel-récursif est plus adaptée à la réduction de bruit qu'une estimation de mouvement par blocs. C'est donc ce type d'algorithme qui est mis en oeuvre dans cette phase de préanalyse du codeur.
Les images sources de la séquence d'images reçue en entrée du codeur sont sous-échantillonnées par le circuit de préanalyse pour fournir des images de plus faible résolution. L'estimation de mouvement de type pelrécursif est réalisée par ce circuit de préanalyse, préalablement au codage effectif des images. Elle est donc calculée par pixel, sur une image de plus 2872974 6 faible résolution de taille divisée par deux en horizontal et vertical dans notre exemple. Cette estimation peut également fournir, à l'avance, un certain nombre d'indications utiles pour le module d'encodage, telles que détection de zones en mouvement, de zones non prédictibles, direction de prédiction privilégiée...
Un filtrage compensé en mouvement, à partir de cette estimation de mouvement, est ensuite réalisé sur les images pleine résolution. Ce filtrage permet de diminuer le bruit de l'image et donc d'améliorer le rendement du codeur.
Le circuit de préanalyse peut être exploité pour définir la structure en GOPs de la séquence à coder, c'est à dire le type des images, inter ou intra, images de référence, bidirectionnelles.... Ce terme GOP, acronyme de l'anglais Group Of Pictures , signifie groupe d'images et est défini dans la norme MPEG.
La préanalyse se fait sur un nombre prédéfini d'images. Le temps de retard entre la préanalyse et le codage effectif des images peut être de l'ordre du groupe d'images considéré pour la régulation de débit. II correspond par exemple à un ou plusieurs GOPs dans le cas de la norme MPEG.
Dans notre exemple, le circuit d'estimation de mouvement 11 est basé sur une structure hiérarchique et sur une approche appariement par bloc. Le macrobloc courant est comparé à l'image décodée, construite selon une pyramide de résolution croissante, en partant de la résolution la plus faible de la pyramide, et du macrobloc, jusqu'au niveau de résolution le plus élevé. Les champs de vecteurs mouvement sont estimés pour chaque niveau de résolution, du niveau le plus faible au niveau le plus élevé, les estimations faites à un niveau pouvant servir de prédiction pour le niveau supérieur. Les pyramides dépendent des différents modes de codage du circuit de codage. II existe donc des pyramides pour les images bitrames, pour les trames, et cela, pour une image de référence donnée. Dans l'approche références multiples, ce nombre est donc multiplié.
Le circuit de filtrage 9, dans la boucle de codage, réalise un filtrage de l'image reconstruite pour diminuer les effets de blocs. C'est cette image filtrée qui est mémorisée dans la mémoire d'image 10.
Le circuit de préanalyse 6 est relié au circuit de régulation de débit 5 pour lui fournir des informations de structure de GOP et des informations de coût de codage par type d'image afin de faciliter la régulation de débit qui peut donc prendre en compte des informations a posteriori. Le circuit de préanalyse 2872974 7 détermine, par exemple, lors d'une première passe en mode intra, la complexité des images, en termes de codage et transmet une estimation du coût de codage par type d'image au circuit de régulation pour permettre à ce dernier d'initialiser un pas de quantification pour le circuit TCD +Q.
Comme indiqué précédemment, le circuit de décision de mode de codage 13 sélectionne la meilleure partition des macroblocs et le mode de codage des macroblocs.
La figure 2 représente différents types de répartition d'un 10 macrobloc de taille 16 lignes de 16 échantillons, pour un codeur exploitant la norme MPEG 4 part 10.
La première ligne correspond à une découpe horizontale et verticale d'un macrobloc de taille 16x16 respectivement en deux sousmacroblocs de taille 16x8 et 8x16 et en une découpe en quatre sous- macroblocs de taille 8x8. La deuxième ligne correspond à ces mêmes découpes mais à un niveau inférieur, pour un sous-macrobloc de taille 8x8.
L'estimation de mouvement de type pel-récursif est effectuée sur une image de plus faible résolution, par exemple 2 fois moindre en horizontal et vertical que celle de l'image source.
Le circuit d'estimation de mouvement par appariement de blocs 11 est du type MPEG2, c'est à dire que la taille des macroblocs de luminance traités est de 16 lignes de 16 échantillons. L'organisation interne des macroblocs est différente selon le type d'image, trame ou bi-trame. Ainsi, il peut s'agir de macroblocs de luminance en codage DCT d'images à deux trames ou en codage DCT d'images à une trame, un macrobloc, dans ce dernier cas, étant constitué d'un bloc supérieur de 16x8 pour la trame impaire et d'un bloc inférieur de 16x8 pour la trame paire Les vecteurs mouvement calculés dépendent du type d'image codée, image à codage prédictif P ou bidirectionnel B. II s'agit de vecteurs de mouvement anticipé ( forward vector dans la norme MPEG2) et de vecteurs de mouvement différé ( backward vector ).
La figure 3 représente un organigramme de décision de mode de codage mis en oeuvre par le circuit de décision de mode de codage 13.
Le champ de vecteurs mouvement par blocs 2x2 est reçu du circuit de préanalyse 6, étape 14.
Le champ de vecteurs mouvement par macroblocs 16x16 est reçu du circuit d'estimation de mouvement 11, étape 15.
2872974 8 L'étape 16 traite les vecteurs mouvement des champs de vecteurs de l'étape 14 et de l'étape 15. Elle attribue des vecteurs mouvement aux différentes partitions de macroblocs possibles.
Dans l'exemple, les partitions possibles se limitent au sous- macrobloc, c'est à dire à un bloc de taille 8x8, les sous-macroblocs n'étant pas partitionnés.
Dans une première phase, les vecteurs mouvement sont rattachés aux blocs.
Ainsi, pour un sous-macrobloc considéré, les vecteurs mouvement du macrobloc 16x16 comprenant ce sous-macrobloc ainsi que les vecteurs mouvement des blocs 2x2 inclus dans ce sous-macrobloc sont rattachés au sous-macrobloc.
Dans une deuxième phase, des vecteurs mouvement sont attribués au sousmacrobloc.
Différents modes d'attribution sont possibles: Par exemple, il peut s'agir simplement d'attribuer l'ensemble des vecteurs mouvement rattachés au sous-macrobloc.
Le nombre de vecteurs attribués peut également être limité, en effectuant une présélection parmi les vecteurs mouvement des blocs 2x2 rattachés au sous-macrobloc, en choisissant les valeurs médianes des composantes de ces vecteurs ou bien en choisissant celui fournissant la meilleure corrélation par calculs SAD ou Hadamart.
L'étape 17 reçoit les vecteurs attribués aux sous-macroblocs des différentes partitions et provenant de l'étape 16. Une sélection des vecteurs mouvement est effectuée en réalisant, pour chacun des sousmacroblocs, un calcul de corrélation à partir du ou des vecteurs mouvement attribués et en choisissant le vecteur mouvement donnant la meilleure corrélation.
L'étape 18 reçoit les vecteurs sélectionnés attribués aux sousmacroblocs des partitions. Cette étape effectue une sélection de la meilleure partition en réalisant, pour chacune des partitions possibles, un calcul de corrélation pour l'ensemble du macrobloc, en effectuant la somme des corrélations de chacun des sous-macro-blocs constituant le macrobloc, à partir des vecteurs mouvement attribués aux sous-macro-blocs correspondant à cette partition.
La partition donnant le meilleur taux de corrélation est choisie.
Les étapes précédentes sont effectuées pour chacun des modes à tester, mode prédictif avec un vecteur mouvement et une image de référence 2872974 9 donnée ou biprédictif avec deux vecteurs mouvement et deux images de référence.
La décision du mode de codage, intra, inter prédictif, inter biprédictif.. .pour la partition sélectionnée, est prise en comparant les coûts de 5 codage correspondants.
Selon une variante de l'invention, les vecteurs mouvement calculés par l'estimateur de mouvement pel-récursif du circuit de préanalyse 6 sont transmis à l'estimateur de mouvement hiérarchique 11 pour être utilisés en tant que prédicteurs. Le prédicteur ou prédicteurs choisis sont exploités, de manière connue, pour positionner une ou plusieurs fenêtres de recherche dans lesquelles sont effectuées les corrélations pour déterminer le vecteur mouvement. Si plusieurs vecteurs mouvement correspondent au bloc traité par l'estimateur de mouvement 11, les prédicteurs pour ce bloc sont par exemple chacun de ces vecteurs, une moyenne des composantes de ces vecteurs ou bien les valeurs médianes.
Selon une variante de l'invention, le circuit de préanalyse effectue des calculs de corrélation pour fournir des informations de décision de codage image/trame au circuit d'estimation de mouvement 11. Il réalise une présélection du mode trame ou image bi-trame qu'il transmet au circuit d'estimation de mouvement afin d'alléger les calculs réalisés par ce circuit.
Selon une autre variante de l'invention, le circuit de préanalyse effectue des calculs de corrélation pour fournir des informations de décision de codage image/trame au circuit de décision de mode de codage 13, par exemple une présélection du mode trame ou image bi-trame. Ce circuit élimine alors, parmi les vecteurs de mouvement reçus, ceux correspondant aux modes non sélectionnées par le circuit de préanalyse. Les calculs de la meilleure partition sont effectués pour les seuls modes présélectionnés.
II s'agit ici d'exemples de réalisation. Bien évidemment, l'invention s'applique à tout partitionnement de macrobloc, pour les parties duquel sont effectués des calculs de corrélation.
Les estimateurs de mouvement peuvent également être d'un autre type que pel-récursif ou hiérarchique sans que l'on sorte du domaine de 35 l'invention.
Les applications concernent la compression de données vidéo pour la transmission ou l'enregistrement.

Claims (8)

REVENDICATIONS
1 Procédé de codage d'une séquence d'images sources comprenant une phase de préanalyse (6) avec estimation de mouvement de type pel-récursif et une phase de codage proprement dite avec estimation de mouvement (11) par appariement de blocs pour des blocs d'images constitués d'un ou plusieurs sous-blocs, caractérisé en ce que la phase de codage comporte également une étape de sélection (16, 17) de vecteurs mouvement pour les sous- blocs d'image à partir des vecteurs mouvement calculés par appariement pour le bloc contenant le sous-bloc et à partir des vecteurs mouvement calculés par l'estimation de type pel-récursif pour les pixels ou groupes de pixels appartenant au sous-bloc, - et une étape de calcul (18) de la meilleure partition d'un bloc d'image en sous-blocs à partir de calculs de corrélation prenant en compte les vecteurs mouvement sélectionnés des sous-blocs constituant un bloc.
2 Procédé selon la revendication 1, caractérisé en ce que l'étape de sélection (17) calcule les niveaux de corrélations des sous-blocs pour les vecteurs mouvement de type pel-récursif correspondant à ces sous- blocs, les vecteurs mouvement obtenus par appariement de blocs étant sélectionnés d'office.
3 Procédé selon la revendication 2, caractérisé en ce que la taille des blocs prédéfinie correspond à la taille des blocs dans le standard MPEG2 et en ce que les tailles inférieures correspondent aux tailles disponibles dans le standard MPEG 4.
4 Procédé selon la revendication 1, caractérisé en ce que la taille des blocs d'image est celle définie dans le standard MPEG2 et en ce que les tailles des sous-blocs sont celles disponibles dans le standard MPEG 4.
5 Procédé selon la revendication 1, caractérisé en ce que l'estimation de mouvement par appariement de blocs est de type hiérarchique.
6 Procédé selon la revendication 1, caractérisé en ce que la phase de préanalyse (6) comporte une étape d'estimation de mouvement de type pelrécursif entre l'image courante et une image précédente, pour une même résolution ou pour une résolution plus faible et une étape de réduction de bruit par filtrage compensé en mouvement à partir du mouvement calculé par la dite estimation de mouvement.
7 Procédé selon la revendication 1, caractérisé en ce que la phase de préanalyse effectue également des calculs de corrélation pour les différentes trames de l'image courante pour déterminer, pour chaque bloc à coder et pour une image de référence, la trame ou image bi-trame correspondante à exploiter en fonction de la meilleure corrélation et transmet cette information au circuit d'estimation de mouvement de type appariement de blocs (11) pour effectuer cette estimation sur l'image de référence correspondante.
8 Dispositif de codage pour la mise en oeuvre du procédé de la revendication 1, comprenant un circuit de préanalyse (6) avec un estimateur de mouvement de type pel-récursif et un circuit de codage proprement dit comportant un estimateur de mouvement (11) par appariement de blocs pour des blocs d'images constitués d'un ou plusieurs sous-blocs, caractérisé en ce que le circuit de codage comporte également un circuit de décision de mode de codage (12) - pour la sélection (16, 17) de vecteurs mouvement pour les sous-blocs d'image, à partir des vecteurs mouvement calculés par l'estimateur de mouvement par blocs (11) et relatifs au bloc contenant le sous-bloc et à partir des vecteurs mouvement calculés par l'estimateur de type pel- récursif (6) et relatifs aux pixels ou groupes de pixels appartenant au sous-bloc, - et pour le calcul (18) de la meilleure partition d'un bloc d'image en sous-blocs à partir de calculs de corrélation prenant en compte les vecteurs 30 mouvement sélectionnés des sous-blocs constituant un bloc.
FR0451446A 2004-07-06 2004-07-06 Procede ou dispositif de codage adaptatif Pending FR2872974A1 (fr)

Priority Applications (7)

Application Number Priority Date Filing Date Title
FR0451446A FR2872974A1 (fr) 2004-07-06 2004-07-06 Procede ou dispositif de codage adaptatif
EP05105964A EP1622389A3 (fr) 2004-07-06 2005-06-30 Procédé et dispositif de codage adaptatif
CN2005100821907A CN1719904B (zh) 2004-07-06 2005-07-01 自适应编码的方法和设备
MXPA05007305A MXPA05007305A (es) 2004-07-06 2005-07-05 Metodo y aparato codificador adaptable.
US11/175,130 US20060008007A1 (en) 2004-07-06 2005-07-05 Adaptive coding method or device
KR1020050060072A KR101181592B1 (ko) 2004-07-06 2005-07-05 적응 코딩 방법 또는 장치
JP2005197951A JP4694903B2 (ja) 2004-07-06 2005-07-06 符号化方法およびこの方法を実施するための回路装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0451446A FR2872974A1 (fr) 2004-07-06 2004-07-06 Procede ou dispositif de codage adaptatif

Publications (1)

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

Family

ID=34940262

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0451446A Pending FR2872974A1 (fr) 2004-07-06 2004-07-06 Procede ou dispositif de codage adaptatif

Country Status (7)

Country Link
US (1) US20060008007A1 (fr)
EP (1) EP1622389A3 (fr)
JP (1) JP4694903B2 (fr)
KR (1) KR101181592B1 (fr)
CN (1) CN1719904B (fr)
FR (1) FR2872974A1 (fr)
MX (1) MXPA05007305A (fr)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2872973A1 (fr) * 2004-07-06 2006-01-13 Thomson Licensing Sa Procede ou dispositif de codage d'une sequence d'images sources
FR2872974A1 (fr) 2004-07-06 2006-01-13 Thomson Licensing Sa Procede ou dispositif de codage adaptatif
ATE466453T1 (de) * 2006-05-05 2010-05-15 Thomson Licensing Vereinfachte bewegungsprädiktion zwischen schichten für die skalierbare videocodierung
US8265136B2 (en) * 2007-02-20 2012-09-11 Vixs Systems, Inc. Motion refinement engine for use in video encoding in accordance with a plurality of sub-pixel resolutions and methods for use therewith
US8665946B2 (en) * 2007-10-12 2014-03-04 Mediatek Inc. Macroblock pair coding for systems that support progressive and interlaced data
JP4892450B2 (ja) * 2007-10-17 2012-03-07 パナソニック株式会社 画像符号化装置および画像符号化方法
US8432970B1 (en) * 2007-12-14 2013-04-30 Marvell International Ltd. Block type selection
US8599921B2 (en) * 2009-03-27 2013-12-03 Vixs Systems, Inc Adaptive partition subset selection module and method for use therewith
US8195001B2 (en) * 2008-04-09 2012-06-05 Intel Corporation In-loop adaptive wiener filter for video coding and decoding
KR20090129926A (ko) * 2008-06-13 2009-12-17 삼성전자주식회사 영상 부호화 방법 및 그 장치, 영상 복호화 방법 및 그 장치
US8335256B2 (en) * 2008-11-14 2012-12-18 General Instrument Corporation Motion compensation in video coding
US8855191B2 (en) * 2008-11-24 2014-10-07 Broadcast International, Inc. Parallelization of high-performance video encoding on a single-chip multiprocessor
WO2011149292A2 (fr) * 2010-05-26 2011-12-01 엘지전자 주식회사 Procédé et appareil de traitement de signaux vidéo
JP5994367B2 (ja) * 2012-04-27 2016-09-21 富士通株式会社 動画像符号化装置、動画像符号化方法
US10477233B2 (en) 2015-09-30 2019-11-12 Apple Inc. Predictor candidates for motion estimation search systems and methods
EP3506633A1 (fr) * 2017-12-19 2019-07-03 Axis AB Procédé et système de codage vidéo

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1351510A1 (fr) * 2001-09-14 2003-10-08 NTT DoCoMo, Inc. Procede de codage, procede de decodage, appareil de codage, appareil de decodage, systeme de traitement d'image, programme de codage, et programme de decodage

Family Cites Families (9)

* 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> 動きベクトル探索方法および装置
CN1067204C (zh) * 1998-09-18 2001-06-13 清华大学 视频编码的全局判决方法
US6731684B1 (en) * 1998-09-29 2004-05-04 General Instrument Corporation Method and apparatus for detecting scene changes and adjusting picture coding type in a high definition television encoder
CN1520693A (zh) * 2001-06-26 2004-08-11 �ʼҷ����ֵ������޹�˾ 视频编码方法
KR100492127B1 (ko) * 2002-02-23 2005-06-01 삼성전자주식회사 적응형 움직임 추정장치 및 추정 방법
US20060002474A1 (en) * 2004-06-26 2006-01-05 Oscar Chi-Lim Au Efficient multi-block motion estimation for video compression
FR2872974A1 (fr) 2004-07-06 2006-01-13 Thomson Licensing Sa Procede ou dispositif de codage adaptatif

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1351510A1 (fr) * 2001-09-14 2003-10-08 NTT DoCoMo, Inc. Procede de codage, procede de decodage, appareil de codage, appareil de decodage, systeme de traitement d'image, programme de codage, et programme de decodage

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"TEXT OF FINAL COMMITTEE DRAFT OF JOINT VIDEO SPECIFICATION (ITU-T REC. H.264 / ISO/IEC 14496-10 AVC)", July 2002, INTERNATIONAL ORGANIZATION FOR STANDARDIZATION - ORGANISATION INTERNATIONALE DE NORMALISATION, XX, XX, PAGE(S) I-XV,1, XP001100641 *
KATO S ET AL: "Performance evaluation on H.26L-based motion compensation with segmented multiple reference frames", 22 September 2002, PROCEEDINGS 2002 INTERNATIONAL CONFERENCE ON IMAGE PROCESSING. ICIP 2002. ROCHESTER, NY, SEPT. 22 - 25, 2002, INTERNATIONAL CONFERENCE ON IMAGE PROCESSING, NEW YORK, NY : IEEE, US, PAGE(S) 661-664, ISBN: 0-7803-7622-6, XP010607410 *
MOSCHETTI: "A statistical approach to motion estimation", PH.D. THESIS, 1 February 2001 (2001-02-01), LAUSANNE, SWITZERLAND, XP002299497, Retrieved from the Internet <URL:http://lts1pc19.epfl.ch/repository/Moschetti2001_648.pdf> [retrieved on 20041006] *

Also Published As

Publication number Publication date
CN1719904B (zh) 2010-05-05
US20060008007A1 (en) 2006-01-12
JP2006025429A (ja) 2006-01-26
EP1622389A3 (fr) 2008-09-03
MXPA05007305A (es) 2006-01-26
CN1719904A (zh) 2006-01-11
EP1622389A2 (fr) 2006-02-01
KR20060049843A (ko) 2006-05-19
KR101181592B1 (ko) 2012-09-10
JP4694903B2 (ja) 2011-06-08

Similar Documents

Publication Publication Date Title
FR2872973A1 (fr) Procede ou dispositif de codage d&#39;une sequence d&#39;images sources
JP4694903B2 (ja) 符号化方法およびこの方法を実施するための回路装置
JP5364820B2 (ja) フィルタを選択する装置及び方法
KR101269334B1 (ko) 필터 선택에 의한 비디오 인코딩
FR2897213A1 (fr) Procede de codage par blocs d&#39;images d&#39;une sequence d&#39;images video
EP2078424A1 (fr) Codage video avec selection du mode de codage intra
EP1960967A1 (fr) Estimation de mouvement utilisant une recherche decimee guidee par une prediction
KR20080108511A (ko) 아티팩트 평가를 통한 향상된 이미지/비디오 품질
KR20060071289A (ko) 비디오 인코딩을 위한 효율적인 제어 기술
WO2009080928A1 (fr) Procede de codage double passe par macrobloc
EP2279621B1 (fr) Procédé de codage, de décodage, codeur et décodeur
JP4494803B2 (ja) 動き補償に基づいた改善されたノイズ予測方法及びその装置とそれを使用した動画符号化方法及びその装置
EP1702473B1 (fr) Procede de codage d une sequence d images
US20050286632A1 (en) Efficient motion -vector prediction for unconstrained and lifting-based motion compensated temporal filtering
WO2021007175A1 (fr) Compensation de mouvement à l&#39;aide d&#39;une prédiction inter et intra combinée
Said et al. Prediction architecture based on block matching statistics for mixed spatial-resolution multi-view video coding
Abdelazim Fast motion estimation algorithms for block-based video coding encoders
Ali et al. Performance improvement in motion estimation of Dirac wavelet based video codec
Tan et al. A unified transcoding approach to fast forward and reverse playback of compressed video
Kawada et al. Prefilter control scheme for low bitrate tv distribution
Abdoli A dynamic predictive search algorithm for fast block-based motion estimation
Nasiopoulos et al. A Fast Video Motion Estimation Algorithm for the H. 264 Standard
KR20060045797A (ko) 계층적 b 픽쳐를 이용한 동영상 부호화시에 gop를적응적으로 세분하기 위한 방법 및 장치
Singh et al. Optimization of standards for video compression tools over wireless networks
Nguyen Optimized techniques for video compression and enhancement