FR2767440A1 - Procede et appareil de codage d'un vecteur de mouvement - Google Patents

Procede et appareil de codage d'un vecteur de mouvement Download PDF

Info

Publication number
FR2767440A1
FR2767440A1 FR9710810A FR9710810A FR2767440A1 FR 2767440 A1 FR2767440 A1 FR 2767440A1 FR 9710810 A FR9710810 A FR 9710810A FR 9710810 A FR9710810 A FR 9710810A FR 2767440 A1 FR2767440 A1 FR 2767440A1
Authority
FR
France
Prior art keywords
component
motion vector
components
prediction
motion vectors
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
FR9710810A
Other languages
English (en)
Inventor
Sang Hoon Lee
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.)
WiniaDaewoo Co Ltd
Original Assignee
Daewoo Electronics Co Ltd
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 Daewoo Electronics Co Ltd filed Critical Daewoo Electronics Co Ltd
Publication of FR2767440A1 publication Critical patent/FR2767440A1/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
    • 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

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

L'invention concerne un procédé pour coder un vecteur de mouvement actuel basé sur une pluralité de vecteurs de mouvement de référence comportant chacun des premières et secondes composantes.Ce procédé est caractérisé en ce qu'il comprend les opérations de : (a) trouver une première prédiction avec des premières et une seconde composantes, représentant des premières et secondes composantes des vecteurs de référence, (b) calculer les premières et secondes différences absolues entre respectivement, les premières et secondes composantes du vecteur actuel et les premières et secondes composantes des vecteurs de référence, qui fournissent des premières et secondes différences absolues les plus petites; (c) déterminer une seconde prédiction formée par (d) engendrer des premier et second signaux drapeau représentant ces composantes les plus faibles, respectivement; (e) calculer une valeur de dispersion des vecteurs de référence et la comparer à un seuil prédéterminé pour engendrer des premiers et seconds signaux de sélection si les valeurs de dispersion sont inférieures ou non au seuil prédéterminé; et (f) coder les vecteurs actuels selon des premières et secondes prédictions en réponse aux premier et second signaux de sélection, pour engendrer des données codées du vecteur de mouvement actuel.L'invention concerne un procédé et appareil de codage d'un vecteur de mouvement.

Description

La présente invention concerne un procédé et un appareil pour encoder un
vecteur de mouvement, et, plus particulièrement, un procédé et appareil qui est en mesure d'encoder un vecteur de mouvement d'un bloc de recherche basé sur une déviation de vecteurs de
déplacement de blocs de référence.
Dans des systèmes de télévision numérique, tels qu'un téléphone vidéo, un système de téléconférence et de télévision à haute définition, une quantité importante de données numériques est nécessaire pour définir chaque signal d'image vidéo étant donné qu'un signal de ligne vidéo dans un signal d'image ou de trame vidéo comprend une séquence de données numériques indiquées comme valeur de points d'image. Cependant, étant donné que la largeur de bande de fréquence disponible d'un canal de transmission conventionnel est limitée, pour transmettre
la grande quantité de données numériques à travers celui-
ci, il est nécessaire de comprimer ou réduire le volume des données grâce à l'utilisation de différentes techniques de compression de données, particulièrement dans le cas de codeurs de signal vidéo de faible débit binaire, tel que des systèmes de vidéotéléphone ou de téléconférence. Parmi les différentes techniques de compression vidéo, la technique dite de codage hybride, qui comprend des techniques de compression dans le temps et dans l'espace, ensemble avec une technique de codage
statistique, est connue comme étant la plus efficace.
Des techniques de codage hybride utilisent une DPCM (modulation différentielle par impulsions codées), une DCT bidimensionnelle (transformation cosinus discrète), une quantification des coefficients DCT, et le VLC (codage par longueur variable). Le DPCM à compensation de mouvement est un processus d'estimation du mouvement d'un objet entre l'image ou trame actuelle et son image ou sa trame antérieure, et de prédiction de l'image présente ou actuelle selon l'évolution ou l'écoulement de mouvement de l'objet, pour produire un signal différentiel représentant la différence entre l'image actuelle et sa prédiction. Spécifiquement, dans la DPCM à compensation de mouvement, les données d'image présentent sont prédites à partir des données d'image précédentes correspondantes, basées sur une estimation du mouvement entre les images présente et précédente. Un tel mouvement ou déplacement estimé peut être décrit en termes de vecteurs de mouvement bidimensionnel, représentant le déplacement des
points d'image entre les images précédente et présente.
Il y avait deux approches basiques pour estimer le déplacement de points d'image d'un objet: l'un est une estimation bloc par bloc et l'autre une approche point
d'image par point d'image.
Dans l'approche point d'image par point d'image, un
déplacement est déterminé pour chaque point d'image.
Cette technique permet une estimation plus exacte de la valeur de point d'image et présente la possibilité de prendre en compte facilement des changements d'échelle et des mouvements non translationnels, c'est-à- dire des
changements d'échelle et des rotations de l'objet.
Cependant, dans l'approche point d'image par point d'image, étant donné qu'un vecteur de mouvement ou de déplacement est déterminé à chaque point d'image, il est virtuellement impossible de transmettre l'ensemble de
l'information de vecteur de mouvement à un récepteur.
Quant à l'estimation de mouvement bloc par bloc, une image présente actuelle est divisée en une pluralité de blocs de recherche ou d'étude. Pour déterminer un vecteur de mouvement pour un bloc de recherche dans l'image actuelle, un calcul de similarité est accompli entre les blocs de recherche de l'image actuelle et chacun d'une pluralité de blocs candidats de tailles égales inclus dans une zone de recherche généralement large à l'intérieur d'une image de référence. Une fonction d'erreur telle qu'une erreur absolue moyenne ou erreur carrée moyenne est utilisée pour mettre en oeuvre la mesure de similarité entre le bloc de recherche de l'image actuelle et l'un des blocs candidats dans la région de recherche de l'image précédente. Et le vecteur de mouvement, par définition, représente le déplacement entre le bloc de recherche et un bloc candidat qui
fournit une fonction d'erreur minimale.
En se référant à la figure 1, il y est montré un schéma bloc d'un appareil conventionnel pour encoder un vecteur de mouvement d'un bloc de recherche basé sur une valeur moyenne des vecteurs de mouvement de blocs de
recherche voisins.
L'information de vecteur de mouvement pour chaque bloc de recherche de l'image présente ou actuelle est sequentiellement introduite dans une mémoire 10, un circuit de sélection de vecteur de mouvement de référence et un codeur de différence 40, l'information de vecteur de mouvement pour un bloc de recherche comprenant les données de position du bloc de recherche à l'intérieur de l'image et un vecteur de mouvement de celle-ci, le vecteur de mouvement étant représenté par une composante horizontale et une composante verticale de celui-ci. La mémoire 10 stocke les vecteurs de mouvement en
utilisant les données de position comme adresse.
Le circuit de sélection de vecteur de mouvement de référence 20 détermine les blocs de recherche de référence d'un bloc de recherche actuel basé sur les données de position de celui-ci et retire les vecteurs de mouvement des blocs de recherche de référence de la mémoire 10, les blocs de recherche de référence ayant un rapport positionnel prédéterminé par rapport au bloc de recherche actuel. Par exemple, comme cela est décrit dans MPEG (Moving Pictures Expert Group)- 4, Video Verification Model Version 7.0, ISO/TEC JTCl/SC29/WGll, MPEG97/1642, trois blocs disposés à gauche, aux angles supérieur et supérieur à droite du bloc de recherche actuel peuvent
être déterminés comme blocs de recherche de référence.
Les vecteurs de mouvement des blocs de recherche de référence sont transmis à un circuit de détermination de prédiction 30 comme vecteurs de mouvement de référence pour le vecteur de mouvement du bloc de recherche actuel ("vecteur de mouvement actuel ou présent"). En réponse au vecteur de mouvement de référence, le circuit de détermination de prédiction 30 détermine un prédicteur du vecteur de mouvement actuel et envoie celui-ci à l'encodeur de différence 40, dans lequel une composante horizontale et une composante verticale du prédicteur sont des valeurs moyennes des composantes horizontale et verticale des vecteurs de mouvement de référence, respectivement. Le codeur de différence 40 trouve des différences directionnelles entre le vecteur de mouvement actuel et la prédiction de celui-ci, basé sur une technique DPCM (modulation différentielle par impulsion codée) et code les différences en utilisant, par exemple, une technique de codage par longueur variable (VLC). Les différences codées sont ensuite transmises à un décodeur à l'extrémité de réception comme vecteur de mouvement codé
du bloc de recherche actuel.
Le processus de codage d'un vecteur de mouvement
d'un bloc de recherche basé sur une prédiction de celui-
ci peut effectivement réduire la quantité de données représentant le vecteur de mouvement, étant donné que la différence entre un vecteur de mouvement et une prédiction de celui-ci est normalement plus faible que le
vecteur de mouvement lui-même dans la plupart des cas.
Dans certains cas, cependant, par exemple lorsque les vecteurs de mouvement sont d'une grande variation, le schéma de détermination de prédiction conventionnel basé sur le simple filtrage décrit plus haut peut ne pas produire une prédiction optimale d'un vecteur de mouvement, ce qui entraîne une efficacité de codage dégradée. C'est, par conséquent, un objectif primordial de l'invention de proposer un procédé et un appareil capables de déterminer une prédiction optimale d'un vecteur de mouvement, en améliorant ainsi l'efficacité de codage du vecteur de déplacement. Selon un aspect de la présente invention, il est proposé un procédé pour coder un vecteur de mouvement actuel ou présent, basé sur une pluralité de vecteurs de mouvement de référence, dont chacun comporte une première et une seconde composantes, le procédé comprenant les opérations de: (a) trouver un premier prédicteur ayant une première et une seconde composantes, la première composante de ladite première prédiction représentant une moyenne des premières composantes des vecteurs de mouvement de référence et la seconde composante de la première prédiction dénotant une moyenne des secondes composantes des vecteurs de mouvement de référence; (b) calculer des premières différences absolues entre la première composante du vecteur de mouvement actuel et les premières composantes des vecteurs de mouvement de référence, et des secondes différences absolues entre la seconde composante du vecteur de mouvement actuel et les secondes composantes des vecteurs de mouvement de référence, pour décider ainsi, parmi les premières et secondes composantes des vecteurs de mouvement de référence, au moins une première composante et au moins une seconde composante, qui procurent une première différence absolue la plus petite et une seconde différence absolue la plus petite, respectivement; (c) déterminer une seconde prédiction comprenant les première et seconde composantes les plus petites décidées à l'étape (b); (d) engendrer un premier et un second signal drapeau représentant les première et seconde composantes décidées à l'étape (b), respectivement; (e) calculer une valeur de dispersion des vecteurs de mouvement de référence et comparer la valeur de dispersion à un seuil prédéterminé pour engendrer ainsi un premier signal de sélection si la valeur de dispersion est inférieure au seuil et un second signal de sélection si cela est différent, la valeur de dispersion indiquant le degré de proximité parmi les vecteurs de mouvement de référence; et (f) coder le vecteur de mouvement actuel basé sur la première prédiction en réponse au premier signal de sélection, et le vecteur de mouvement actuel basé sur la seconde prédiction, aussi bien que les premier et second signaux drapeau, en réponse au second signal de sélection, pour engendrer des données codées du vecteur
de mouvement actuel ou présent.
Selon un autre aspect de la présente invention, il est proposé un procédé pour coder un vecteur de mouvement actuel basé sur une pluralité de vecteurs de mouvement de référence, comprenant chacun une première et une seconde composantes, comprenant les opérations de: (a) trouver un premier prédicteur ou une première prédiction ayant une première composante représentant une moyenne des premières composantes des vecteurs de mouvement de référence et une seconde composante indiquant une moyenne des secondes composantes des vecteurs de mouvement de référence; (b) estimer une valeur de dispersion des vecteurs de mouvement de référence et comparer la valeur de dispersion à un seuil prédéterminé, la valeur de dispersion indiquant le degré de proximité parmi les première et seconde composantes des vecteurs de mouvement de référence; (c) si la valeur de dispersion est inférieure au seuil, coder la différence entre les premières composantes du vecteur de mouvement actuel et le premier prédicteur ou prédiction et la différence entre les secondes composantes du vecteur de mouvement actuel et la première prédiction pour engendrer ainsi les différences codées sous forme de données codées du vecteur de mouvement actuel; et (d) si la valeur de dispersion est égale ou supérieure au seuil, engendrer des données codées du vecteur de mouvement actuel, comprenant les opérations de: (dl) déterminer une seconde prédiction ayant une première composante la plus petite correspondant à l'une des premières composantes des vecteurs de mouvement de référence qui fournissent une différence minimale par rapport à la première composante du vecteur de mouvement actuel et une seconde composante correspondant la plus petite à l'une des secondes composantes des vecteurs de mouvement de référence, qui fournissent une différence la plus petite par rapport à la seconde composante du vecteur de mouvement actuel; (d2) d'obtenir un première et un second signal d'identification, les premier et second signaux d'identification indiquant la première composante et la seconde composante des vecteurs de mouvement de référence auxquels les première et seconde composantes respectives les plus faibles du second prédicteur correspondent; et (d3) coder la différence entre les premières composantes du vecteur de mouvement actuel et le second prédicteur et la différence entre les secondes composantes du vecteur de mouvement actuel et le second prédicteur ensemble avec les premier et second signaux d'identification, pour engendrer ainsi des données codées du vecteur de mouvement actuel. Selon encore un autre aspect de la présente invention, il est proposé un appareil pour coder un vecteur de mouvement actuel basé sur une pluralité de vecteurs de mouvement de référence, chaque vecteur de mouvement comprenant une première et une seconde composante, comprenant: des moyens pour estimer un degré de dispersion des première et seconde composantes des vecteurs de mouvement de référence pour émettre ainsi un premier signal de sélection si le degré de dispersion est considéré comme étant faible et un second signal de sélection si le degré de dispersion est considéré comme étant élevé; des moyens pour déterminer une première prédiction ayant une première moyenne et une seconde moyenne comme première et seconde composantes de celles-ci, dans laquelle les première et seconde moyennes représentent des valeurs moyennes des première et seconde composantes des vecteurs de mouvement de référence, respectivement; des moyens pour obtenir une seconde prédiction ayant une première et seconde composantes les plus faibles, dans laquelle la première composante la plus faible de la seconde prédiction correspond à l'une des premières composantes des vecteurs de mouvement de référence qui fournit une différence minimale par rapport à la première composante du vecteur de mouvement actuel et de la seconde composante la plus petite de la seconde prédiction correspond à l'une des secondes composantes des vecteurs de mouvement de référence qui fournit une différence la plus petite par rapport à la seconde composante du vecteur de mouvement actuel; des moyens pour décider les première et seconde prédictions comme prédiction optimale en réponse aux premier et second signaux de sélection, respectivement; et des moyens pour coder le vecteur de mouvement de
déplacement basé sur la prédiction optimale.
Les objectifs et caractéristiques ci-dessus et autres de la présente invention apparaîtront de la
description suivante de modes de référence préférés
donnés ensemble avec les dessins annexés sur lesquels: - la figure 1 est un schéma bloc d'un appareil conventionnel pour coder un vecteur de déplacement d'un bloc de recherche basé sur une moyenne de vecteurs de mouvement voisin; et - la figure 2 présente un schéma bloc d'un appareil pour coder un vecteur de mouvement d'un bloc de recherche
selon la présente invention.
Sur la figure 2 est montré un schéma bloc d'un appareil 100 pour coder un vecteur de mouvement d'un bloc de recherche selon la présente invention, o le vecteur de mouvement représente un déplacement entre le bloc de recherche d'une image actuelle ou présente et un bloc candidat dans une région de recherche correspondante d'une image précédente, qui fournit une fonction d'erreur minimale. L'information de vecteur de mouvement pour chacun des blocs de recherche dans une image actuelle est inscrite dans une mémoire 110, un circuit de sélection de vecteur de mouvement de référence 120, un circuit de calcul de déviation 160 et un codeur de différence 210 via une ligne L10, dans lequel l'information de vecteur de mouvement représente les données de position d'un bloc
de recherche actuel et un vecteur de mouvement de celui-
ci, le vecteur de mouvement étant représenté par une composante horizontale et une composante verticale de
celui-ci.
La mémoire 110 y stocke le vecteur de mouvement pour chaque bloc de recherche en utilisant ces données de position. Le circuit de sélection de vecteur de mouvement de référence 120 détermine les blocs de recherche de référence d'un bloc de recherche actuel, basé sur ses données de position et retire les vecteurs de mouvement
des blocs de recherche de référence de la mémoire 110.
Dans un mode de réalisation préféré de l'invention, trois blocs de recherche disposés à gauche, en haut est en haut à droite du bloc de recherche actuel sont sélectionnés comme blocs de recherche de référence de la même manière que dans un modèle de vérification 7.0 de MPEG-4 décrit plus haut. Dans un autre exemple de l'invention, un autre jeu de blocs de recherche de référence, par exemple, à gauche, en haut et en haut à gauche du bloc de recherche actuel peut être sélectionné comme blocs de recherche de référence. Dans chaque cas il est préférable d'établir le nombre de blocs de recherche de référence comme nombre impair pour faciliter le filtrage moyen des vecteurs de mouvement. Le vecteur de mouvement pour chacun des blocs de recherche de référence, chaque vecteur de mouvement étant composé d'une composante horizontale et d'une composante verticale, est fourni par le circuit de sélection de vecteur de mouvement de référence 120 à un circuit de calcul de dispersion 130, le circuit de calcul de déviation 160 et un filtre moyen 200 comme vecteur de mouvement de référence du vecteur de mouvement du bloc de
recherche actuel.
Le filtre médian 200 détermine un vecteur moyen basé sur les vecteurs de mouvement de référence. Des composantes horizontale et verticale MV_MED_x et MV_MED_y du vecteur moyen MVMED sont calculées comme: MV_MED_x = moyenne (MVlx, MV2x,.., MVNx) MV_MED_y = moyenne (MV1y, MV2y....... MVNy) o MVix et MViy sont une composante horizontale et une composante verticale d'un vecteur de mouvement de référence ith, i étant 1;2,....., N avec N étant un nombre égal de vecteurs de mouvement de référence. Par exemple, si N=3 et MV1=(-2,3), MV2=(1,5), et MV3=(-1,7), alors MV_MED_x=-l et MV_MEDy=5. Les composantes horizontale et verticale calculées du vecteur moyen sont transmises au circuit de calcul de dispersion 130, un commutateur 150 et un comparateur 180 via une ligne L20 comme première prédiction candidate du vecteur de
mouvement du bloc de recherche actuel.
Le circuit de calcul de dispersion 130 calcul un degré de dispersion par rapport aux composantes horizontales et verticales des vecteurs de mouvement de référence autour du vecteur moyen pour fournir celui-ci un générateur de signaux de sélection 140. En d'autres termes, les dispersions horizontales et verticales DIS_x et DISy des composantes horizontales et verticales des vecteurs de mouvement de référence sont calculées comme suit, respectivement:
1 N 2
DISx =- E (MV x- MV_ MED-x) N 1 N DISy E ( viy - MV-MED-y)2 N i=l Le générateur de signaux de sélection 140 compare la somme des dispersions horizontales et verticales DIX_x et DISy à un seuil prédéterminé pour engendrer un premier et un second signal de sélection. Si la somme est inférieure au seuil prédéterminé, le premier signal de sélection est transmis au commutateur 150 et un commutateur 155 par une ligne L30 et, autrement, le second signal de sélection est fourni aux commutateurs
et 155 via la ligne L30.
Entre-temps, le circuit de calcul de déviation 160 calcule les différences directionnelles entre les vecteurs de mouvement de référence et le vecteur de
mouvement du bloc de recherche actuel, respectivement.
Les différences directionnelles peuvent être définies comme DIR_DIF(i) X= I MVix - CMVx DIRDIF (i)_y= I MViy- CMVy| o DIR DIF(i)_x(y) représentent la différence entre les composantes horizontales(verticales) d'un vecteur de mouvement de référence ith et le vecteur de mouvement du bloc de recherche actuel ("vecteur de mouvement actuel") fourni sur la ligne L10 et CMVx et CMVy indique les composantes horizontales et verticales du vecteur de mouvement actuel CMV. Un jeu de données de déviation (MVix, DIRDIF(i)_x) ou (MVix, DIRDIF(i)_y) est fourni par le circuit de calcul de déviation 160 au circuit de sélection de déviation la plus faible 170 pour chaque
composante directionnelle MVix ou MViy.
En réponse au jeu de données de déviation du circuit de calcul de déviation 160, le circuit de sélection 170 de la déviation la plus faible détermine des différences horizontale et verticale les plus faibles parmi les DIR_DIF(i)_x's et DIR_DIF(i)_y's, respectivement, et transmet au commutateur 150 et au comparateur 180 une seconde prédiction candidate du vecteur de mouvement actuel, o la seconde prédiction candidate est composée d'une composante horizontale la plus faible correspondant à une composante horizontale des vecteurs de mouvement de référence qui engendrent la différence horizontale la plus faible et une composante verticale la plus faible représentant celle qui fournit la différence verticale la plus faible. Par exemple, si N=3 et MV1=(-2,3), MV2=(1,5), MV3=(-1,7) et le vecteur de mouvement actuel MVcurr=(5,1), alors la seconde
prédiction candidate MVSEC=(1,3) est déterminée.
Le comparateur 180 compare les composantes horizontale et verticale les plus faibles de la seconde prédiction candidate aux composantes horizontale et verticale de la première prédiction candidate, respectivement, et fournit des résultats de comparaison horizontal et vertical à un codeur de tête 190. Le codeur de tête 190 engendre un signal drapeau ou d'identification pour chaque résultat de comparaison. Par exemple, si la composante horizontale la plus faible (ou verticale la plus faible) de la seconde prédiction candidate est égale à la composante horizontale (ou verticale) de la première prédiction candidate, un signal drapeau '0' est engendré; si la composante horizontale la plus faible (ou verticale la plus faible) de la seconde prédiction candidate est inférieure à la composante horizontale (ou verticale) de la première prédiction candidate, un signal drapeau entre '10' est engendré; et si la composante horizontale la plus faible (ou verticale la plus faible) de la seconde prédiction candidate est supérieure à la composante horizontale (ou verticale) de la première prédiction candidate, un signal
drapeau '11' est engendré. Pour l'exemple donné ci-
dessus, c'est-à-dire, o la première prédiction candidate MV_MED=(1,5) et la seconde prédiction candidate MV_SEC=(1,3), des signaux drapeau '0' et '10' sont engendrés pour les composantes horizontale et verticale les plus faibles de la seconde prédiction candidate, respectivement. La paire de signaux drapeau pour la seconde prédiction candidate est donnée au commutateur 155. Le commutateur 150 sélectionne comme prédiction optimale soit la première prédiction candidate donnée par le filtre médian 200 soit la seconde prédiction candidate donnée par le circuit de sélection de déviation la plus faible 170 en réponse au premier signal ou au second signal de sélection; et donne la prédiction optimale au
codeur de différence 210.
Le codeur de différence 210 calcule, basé sur la technique DPCM conventionnelle, les différences entre les composantes horizontales et les composantes verticales du vecteur de mouvement actuel et celles de la prédiction optimale; et code les différences sur la base par exemple de la technique VLC. Les différences codées sont données à un multiplexeur (MUX) 220 comme vecteur de
mouvement codé pour le bloc de recherche actuel.
Le commutateur 155 fournit des signaux drapeau du codeur de tête 180 au MUX 220 si et seulement si le second signal de sélection est appliqué à celui-ci à travers la ligne L30. Au MUX 220, le vecteur de mouvement codé du codeur de différence 210 et les signaux drapeau s'ils sont fournis par le commutateur 155, sont multiplexés comme données de vecteur de mouvement codé pour le bloc de recherche actuel; et les données de vecteur de mouvement codé sont transmises à un transmetteur (non représenté) en vue de leur transmission. Au codeur d'une extrémité de réception, la somme de la dispersion directionnelle du vecteur de mouvement de référence est calculée de la même manière que dans le circuit de calcul de dispersion 130. Si la somme est inférieure au seuil prédéterminé, le vecteur de mouvement du bloc de recherche actuel est reconstruit sur la base du vecteur moyen des vecteurs de mouvement de référence et du vecteur de mouvement codé transmis. Si la somme n'est pas inférieure au seuil prédéterminé, le vecteur de mouvement du bloc de recherche actuel peut être reconstruit sur la base des signaux drapeau et le vecteur de mouvement codé contenu dans les données de vecteur de
mouvement transmises.
Bien que la présente invention a été décrite à l'égard de modes de réalisation particulier, il est évident pour l'homme du métier que des divers modifications et changements peuvent être apportés sans sortir du cadre de l'invention telle que définie dans les
revendications qui suivent.

Claims (19)

REVENDICATIONS
1. Procédé pour coder un vecteur de mouvement actuel basé sur une pluralité de vecteurs de mouvement de référence, o chaque vecteur de mouvement comporte une première et une seconde composantes, le procédé étant caractérisé en ce qu'il comprend les opérations de: (a) trouver une première prédiction ayant une première et une seconde composantes, la première composante de la première prédiction représentant une moyenne des premières composantes des vecteurs de mouvement de référence et la seconde composante de la première prédiction indiquant une moyenne des secondes composantes des vecteurs de mouvement de référence; (b) calculer les premières différences absolues entre la première composante du vecteur de mouvement actuel et les premières composantes des vecteurs de mouvement de référence, et une seconde différence absolue entre la seconde composante du vecteur de mouvement actuel et les secondes composantes des vecteurs de mouvement de référence, pour décider ainsi, parmi les premières et secondes composantes des vecteurs de mouvement de référence, une première composante la plus faible et une seconde composante la plus faible, respectivement, qui fournissent une première différence absolue la plus petite et une seconde différence absolue la plus petite, respectivement; (c) déterminer une seconde prédiction formée par la première et la seconde composantes les plus petites décidées à l'étape (b); (d) engendrer un premier et un second signal drapeau représentant la première composante la plus faible et la seconde composante la plus faible décidées à l'étape (b), respectivement; (e) calculer une valeur de dispersion des vecteurs de mouvement de référence et comparer la valeur de dispersion des vecteurs de mouvement de référence et comparer cette valeur de dispersion à un seuil prédéterminé pour engendrer ainsi un premier signal de sélection si la valeur de dispersion est inférieure au seuil prédéterminé et un second signal de sélection dans le cas contraire, la valeur de dispersion indiquant le degré de proximité parmi les vecteurs de mouvement de référence; et (f) coder le vecteur de mouvement actuel basé sur la première prédiction en réponse au premier signal de sélection, et le vecteur de mouvement actuel basé sur la seconde prédiction, comme les premier et second signaux drapeau, en réponse au second signal de sélection, pour engendrer des données codées du vecteur de mouvement
actuel.
2. Procédé selon la revendication 1, caractérisé en ce que la valeur de dispersion est définie par:
DIS - 1(MV1-MED1)2 + -(MVI2 -MED2)
N =lN(1 i o DIS représente la valeur de dispersion; MVil et MVi2 indiquent une première et une seconde composante d'un vecteur de mouvement de référence ith, respectivement, i étant 1 à N avec N étant le nombre des vecteurs de mouvement de référence; et MED1 et MED2 étant des
moyennes de MVil's et MVi2's, respectivement.
3. Procédé selon la revendication 2, caractérisé en
ce que N=3.
4. Procédé selon la revendication 3, caractérisé en ce que les premier et second signaux drapeau indiquent si la première composante la plus faible et la seconde composante la plus faible décidées à l'étape (b) sont inférieures, égales ou supérieures aux moyennes des premières et secondes composantes des vecteurs de
mouvement de référence, respectivement.
5. Procédé selon la revendication 1, caractérisé en ce que l'étape de codage précitée (f) est exécutée selon
une technique de codage par longueur variable.
6. Procédé pour coder un vecteur de mouvement actuel basé sur une pluralité de vecteurs de mouvement de référence, o chaque vecteur de mouvement comprend une première et une seconde composantes, caractérisé en ce qu'il comprend les opérations de: (a) trouver une première prédiction ayant une première composante représentant une moyenne des premières composantes des vecteurs de mouvement de référence et une seconde composante indiquant une moyenne des secondes composantes des vecteurs de mouvement de référence; (b) estimer une valeur de dispersion des vecteurs de mouvement de référence et comparer la valeur de dispersion à un seuil prédéterminé, la valeur de dispersion indiquant le degré de proximité parmi les première et seconde composantes des vecteurs de mouvement de référence; (c) si la valeur de dispersion est plus faible que le seuil prédéterminé, coder la différence entre la première composante du vecteur de mouvement actuel et la première prédiction et la différence entre la seconde composante du vecteur de mouvement actuel et la première prédiction pour engendrer ainsi des différences codées comme données codées du vecteur de mouvement actuel; et (d) si la valeur de dispersion est égale ou supérieure au seuil, engendrer des données codées du vecteur de mouvement actuel, comprenant les opérations de: (dl) déterminer une seconde prédiction ayant une première composante la plus faible correspondant à l'une des premières composantes des vecteurs de mouvement de référence, qui fournit une différence minimale de la première composante du vecteur de mouvement actuel et une seconde composante la plus faible correspondant à l'une des secondes composantes des vecteurs de mouvement de référence, qui fournit une différence la plus faible de la seconde composante du vecteur de mouvement actuel; (d2) obtenir un première et un second signal d'identification, les premier et second signaux d'iddentification indiquant une première composante et une seconde composante des vecteurs de mouvement de référence auxquels la première composante la plus faible et la seconde composante la plus faible composantes de la seconde prédiction correspondent, respectivement; et (d3) coder la différence entre la première composante du vecteur de mouvement actuel et la première composante la plus faible de la seconde prédiction et la différence entre la seconde composante du vecteur de mouvement actuel et la seconde composante la plus faible de la seconde prédiction ensemble avec les premier et second signaux d'identification, pour engendrer des
données codées du vecteur de mouvement actuel.
7. Procédé selon la revendication 6, caractérisé en ce que l'opération précitée (dl) comprend les opérations de: (dll) calculer des premières différences absolues entre la première composante du vecteur de mouvement actuel et les secondes composantes des vecteurs de mouvement de référence et des secondes différences absolues entre la seconde composante du vecteur de mouvement actuel et les secondes composantes des vecteurs de mouvement de référence; (d12) sélectionner une première composante la plus faible et une seconde composante la plus faible, qui fournissent une première différence absolue la plus faible et une seconde différence absolue la plus faible, respectivement; et (d13) décider la seconde prédiction formée par la première composante la plus faible et la seconde composante la plus faible sélectionnées à l'étape (d12).
8. Procédé selon la revendication 6, caractérisé en ce que les opérations de codage précitées (c) et (d3) sont exécutées sur la base d'une technique de codage par
longueur varible.
9. Procédé selon la revendication 6, caractérisé en ce que la valeur de dispersion est définie comme:
1 IVN2 1 N
DIS= - (MVi,- MED1) + - J(MVI2 -MED2)2 N j=j N 1=i o DIS représente la valeur de dispersion; MVi1 et MVi2 dénotent une première et une seconde composante d'un vecteur de mouvement de référence ith, respectivement, i étant 1 à N avec N étant le nombre des vecteurs de mouvement de référence; et MED1 et MED2 étant des
moyennes de MVil's et MVi2's, respectivement.
10. Procédé selon la revendication 8, caractérisé
en e que N=3.
11. Procédé selon la revendication 9, caractérisé en ce que les premier et seconde signaux d'identification indiquent si la première composante la plus faible et la seconde composante la plus faible de la seconde prédiction correspondent aux première et seconde composantes les plus faibles, moyennes ou les plus larges
des vecteurs de mouvement de référence, respectivement.
12. Appareil pour coder un vecteur de mouvement actuel basé sur une pluralité de vecteurs de mouvement de référence, chacun des vecteurs de mouvement comprenant une première et une seconde composantes caractérisé en ce qu'il comprend: des moyens pour estimer un degré de dispersion des premières et secondes composantes des vecteurs de mouvement de référence pour émettre ainsi un premier signal de sélection si le degré de dispersion est considéré comme étant faible et un second signal de sélection si le degré de dispersion est considéré comme étant élevé; des moyens pour déterminer une première prédiction ayant une première moyenne et une seconde moyenne comme première et seconde composante de celles-ci, o les première et seconde moyennes représentant des valeurs moyennes des premières et secondes composantes des vecteurs de mouvement de référence; des moyens pour obtenir une seconde prédiction comprenant une première composante la plus faible et une seconde composante la plus faible, o la première composante la plus faible de la seconde prédiction correspond à l'une des premières composantes des vecteurs de mouvement de référence, qui fournit une différence minimale de la première composante du vecteur de mouvement de référence et la seconde composante la plus faible de la seconde prédiction correspond à l'une des secondes composantes des vecteurs de mouvement de référence, qui fournit une différence la plus faible de la seconde composante du vecteur de mouvement actuel; des moyens pour décider les première et seconde prédictions comme prédiction optimale en réponse au premier et second signaux de sélection, respectivement; et des moyens pour coder le vecteur de mouvement
actuel basé sur la prédiction optimale.
13. Appareil selon la revendication 12, caractérisé en ce que les moyens d'estimation comportent des moyens pour calculer une valeur de dispersion, la valeur de dispersion est définie comme: Dz s - 1 N DIS= -É(MV,-MED)2 + -y -MED2)2 N i= M N.= o DIS représente la valeur de dispersion; MVil et MVi2 dénotent une première et une seconde composantes du vecteur de mouvement de référence ith, respectivement, i étant 1 à N avec N étant le nombre des vecteurs de mouvement de référence; et MED1 et MED2 étant des
moyennes de MVil's et MVi2's, respectivement.
14. Appareil selon la revendication 13, caractérisé en ce que les moyens d'estimation précités comportent en outre: des moyens pour comparer la valeur de dispersion à un seuil prédéterminé; et des moyens pour engendrer le premier signal de sélection si la valeur de dispersion est inférieure au seuil prédéterminé et le second signal de référence dans
les autres cas.
15. Appareil selon la revendication 14, caractérisé en ce que les moyens précités pour obtenir la seconde prédiction comprennent: des moyens pour engendrer une première différence entre la première composante du vecteur de mouvement actuel et chaque première composante des vecteurs de mouvement de référence et une seconde différence entre la seconde composante du vecteur de mouvement actuel et chaque seconde composante des vecteurs de mouvement de référence, les première et seconde différences étant définies comme: DIR_DIF (i)_x= I MVix - CMVx DIRDIF(i)_y= I MViyCMVy[ o DIR_DIF(i)_x représentent une première différence entre une première composante d'un vecteur de mouvement de référence ith et une première composante du vecteur de mouvement actuel, i étant 1 à N avec N étant le nombre de vecteurs de mouvement de référence; DIRDIF(i)_y une seconde différence entre une seconde composante du vecteur de mouvement de référence ith et une seconde composante du vecteur de mouvement actuel; MVix, la première composante du vecteur de mouvement de référence ith; MViy, la seconde composante du vecteur de mouvement de référence ith; CMVx et CMVy étant les première et seconde composantes du vecteur de mouvement actuel, respectivement; des moyens pour trouver la différence minimale parmi les premières différences et la différence la plus faible parmi les secondes différences; et des moyens pour produire la seconde prédiction comprenant une première composante la plus faible fournissant la différence minimale et une seconde composante la plus faible concernant la différence la plus faible comme première et seconde composantes de celles-ci.
16. Appareil selon la revendication 15, caractérisé
en ce que N=3.
17. Appareil selon la revendication 16, caractérisé en ce qu'il comprend en outre des moyens pour engendrer des premier et second signaux drapeau, le premier signal drapeau indiquant si la première composante de la seconde prédiction est inférieur, égal ou supérieur à la première moyenne et le second signal drapeau indiquant si la seconde composante de la seconde prédiction est inférieur
égal ou supérieur à la seconde moyenne.
18. Appareil selon la revendication 17, caractérisé en ce que les moyens précités pour coder le vecteur de mouvement actuel comportent des moyens pour coder les
signaux drapeau en réponse au second signal de sélection.
19. Appareil selon la revendication 18, caractérisé en ce que les moyens de codage précités comportent en outre des moyens pour coder le vecteur de mouvement actuel en utilisant une technique de modulation différentielle par impulsions codées et un schéma de
codage par longueur variable.
FR9710810A 1997-08-12 1997-08-29 Procede et appareil de codage d'un vecteur de mouvement Pending FR2767440A1 (fr)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970038277A KR100252342B1 (ko) 1997-08-12 1997-08-12 움직임 벡터 부호화 방법 및 그 장치

Publications (1)

Publication Number Publication Date
FR2767440A1 true FR2767440A1 (fr) 1999-02-19

Family

ID=19517253

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9710810A Pending FR2767440A1 (fr) 1997-08-12 1997-08-29 Procede et appareil de codage d'un vecteur de mouvement

Country Status (6)

Country Link
JP (1) JPH1175188A (fr)
KR (1) KR100252342B1 (fr)
CN (1) CN1208313A (fr)
DE (1) DE19737805A1 (fr)
FR (1) FR2767440A1 (fr)
GB (1) GB2328337A (fr)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1050850A1 (fr) * 1999-05-03 2000-11-08 THOMSON multimedia Procédé d'estimation d'un vecteur de mouvement dominant entre deux trames
AU2001293994B2 (en) * 2000-10-09 2007-04-26 Snell & Wilcox Limited Compression of motion vectors
GB2368220A (en) * 2000-10-09 2002-04-24 Snell & Wilcox Ltd Compression of motion vectors
US7003035B2 (en) 2002-01-25 2006-02-21 Microsoft Corporation Video coding methods and apparatuses
US20040001546A1 (en) 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
KR100865034B1 (ko) 2002-07-18 2008-10-23 엘지전자 주식회사 모션 벡터 예측 방법
US7154952B2 (en) 2002-07-19 2006-12-26 Microsoft Corporation Timestamp-independent motion vector prediction for predictive (P) and bidirectionally predictive (B) pictures
KR100506864B1 (ko) 2002-10-04 2005-08-05 엘지전자 주식회사 모션벡터 결정방법
US20050013498A1 (en) 2003-07-18 2005-01-20 Microsoft Corporation Coding of motion vector information
US7567617B2 (en) 2003-09-07 2009-07-28 Microsoft Corporation Predicting motion vectors for fields of forward-predicted interlaced video frames
US7724827B2 (en) 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US8064520B2 (en) 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
US7599438B2 (en) * 2003-09-07 2009-10-06 Microsoft Corporation Motion vector block pattern coding and decoding
JP5025286B2 (ja) * 2007-02-28 2012-09-12 シャープ株式会社 符号化装置及び復号装置
US8254455B2 (en) 2007-06-30 2012-08-28 Microsoft Corporation Computing collocated macroblock information for direct mode macroblocks
KR100881559B1 (ko) * 2008-02-05 2009-02-02 엘지전자 주식회사 모션 벡터 예측 방법
KR100907175B1 (ko) * 2008-09-11 2009-07-09 엘지전자 주식회사 모션 벡터 예측 방법
KR100907174B1 (ko) * 2008-09-11 2009-07-09 엘지전자 주식회사 모션벡터 결정방법
KR100907173B1 (ko) * 2008-09-11 2009-07-09 엘지전자 주식회사 모션벡터 결정방법
JP5422168B2 (ja) * 2008-09-29 2014-02-19 株式会社日立製作所 動画像符号化方法および動画像復号化方法
US8189666B2 (en) 2009-02-02 2012-05-29 Microsoft Corporation Local picture identifier and computation of co-located information
EP2490449A1 (fr) * 2009-10-16 2012-08-22 Sharp Kabushiki Kaisha Dispositif de codage vidéo et dispositif de décodage vidéo
US10362316B2 (en) * 2010-04-01 2019-07-23 Sony Corporation Image processing device and method
US9124898B2 (en) 2010-07-12 2015-09-01 Mediatek Inc. Method and apparatus of temporal motion vector prediction
CN107277541B (zh) 2011-02-09 2020-05-08 Lg 电子株式会社 编码和解码图像的方法及使用该方法的设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0556507A1 (fr) * 1991-10-22 1993-08-25 Sony Corporation Appareil pour le codage et décodage d'un signal d'image

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5497338A (en) * 1993-04-09 1996-03-05 Sharp Kabushiki Kaisha Motion vector detecting circuit

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0556507A1 (fr) * 1991-10-22 1993-08-25 Sony Corporation Appareil pour le codage et décodage d'un signal d'image

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
AD HOC GROUP ON MPEG-4 VIDEO VM EDITING: "MPEG-4 Video Verification Model Version 7.0 Chapter 3: Encoder Definition", INTERNATIONAL ORGANIZATION FOR STANDARDIZATION - ORGANISATION INTERNATIONALE DE NORMALISATION,XX,XX, 1 April 1997 (1997-04-01), pages 1,17 - 122, XP002084924 *
LALLAURET F ET AL: "MOTION COMPENSATION BY BLOCK MATCHING AND VECTOR POST-PROCESSING INSUB-BAND CODING OF TV SIGNALS AT 15 MBIT/S", PROCEEDINGS OF SPIE,US,BELLINGHAM, SPIE, vol. 1605, 1991, pages 26 - 36, XP000479215 *

Also Published As

Publication number Publication date
JPH1175188A (ja) 1999-03-16
KR100252342B1 (ko) 2000-04-15
DE19737805A1 (de) 1999-02-18
CN1208313A (zh) 1999-02-17
GB2328337A (en) 1999-02-17
GB9717793D0 (en) 1997-10-29
KR19990015907A (ko) 1999-03-05

Similar Documents

Publication Publication Date Title
FR2767440A1 (fr) Procede et appareil de codage d'un vecteur de mouvement
EP0734165B1 (fr) Système de traitement d'image utilisant une estimation du mouvement pixel à pixel et décimation d'images
US9621917B2 (en) Continuous block tracking for temporal prediction in video encoding
US9554142B2 (en) Encoding of video stream based on scene type
EP0886445A2 (fr) Procédé d'estimation de mouvement
EP1592258B1 (fr) Estimation de mouvement utilisant des vecteurs de reffinement spatiaux adaptatifs
US8259805B2 (en) Method and apparatus for generating coded picture data and for decoding coded picture data
FR2773295A1 (fr) Appareil de compensation de deplacement et appareil et procede de codage d'images animees
FR2769162A1 (fr) Procede et dispositif pour coder un vecteur de mouvement sur la base d'un certain nombre de vecteurs de references valables
JPH0767116A (ja) フレームデシメーチングビデオ符号化器の動きベクトル検出方法および装置
US5835147A (en) Method for compression and decompression of a video signal
US10165274B2 (en) Encoding of video stream based on scene type
EP2279621B1 (fr) Procédé de codage, de décodage, codeur et décodeur
EP0721284B1 (fr) Système de traitement d'images utilisant une estimation du mouvement pixel à pixel et un décimation d'images
Adolph et al. 1.15 Mbit/s coding of video signals including global motion compensation
FR2777405A1 (fr) Dispositif et procede pour coder de facon adaptative un signal d'image
EP0695096B1 (fr) Dispositif pour détecter des vecteurs de mouvement
FR2769163A1 (fr) Procede et dispositif pour coder un vecteur de deplacement
WO2014048946A1 (fr) Procede et dispositif de prediction inter-image et procede et appareil de codage correspondants
EP1714498A1 (fr) Procede de recherche de la directon de prediction en codage video intra-image
EP1790166A2 (fr) Procede et appareil destines a l'estimation de mouvement
US6778604B1 (en) Motion compensation performance improvement by removing redundant edge information
Carpentieri et al. A Video Coder Based on Split-Merge Displacement Estimation
JP2007336138A (ja) 映像記録装置、映像記録プログラム
Venter et al. Stereo imaging in low bitrate video coding