DE69518801T2 - Bewegungsadaptive Bewegungskompensationskodierungsmethode und -vorrichtung - Google Patents

Bewegungsadaptive Bewegungskompensationskodierungsmethode und -vorrichtung

Info

Publication number
DE69518801T2
DE69518801T2 DE69518801T DE69518801T DE69518801T2 DE 69518801 T2 DE69518801 T2 DE 69518801T2 DE 69518801 T DE69518801 T DE 69518801T DE 69518801 T DE69518801 T DE 69518801T DE 69518801 T2 DE69518801 T2 DE 69518801T2
Authority
DE
Germany
Prior art keywords
motion
pixel values
image
current
current 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.)
Expired - Fee Related
Application number
DE69518801T
Other languages
English (en)
Other versions
DE69518801D1 (de
Inventor
Jechang Jeong
Sungtae Kim
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung 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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE69518801D1 publication Critical patent/DE69518801D1/de
Application granted granted Critical
Publication of DE69518801T2 publication Critical patent/DE69518801T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related 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/527Global motion vector estimation
    • 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
    • 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
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/115Selection of the code volume for a coding unit prior to coding
    • 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/124Quantisation
    • 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
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/172Methods 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 picture, frame or field
    • 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/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/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • 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/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
    • 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
    • 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/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer

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)

Description

  • Die vorliegende Erfindung betrifft ein Bewegungskompensationscodierverfahren, das auf eine Bewegungsgröße adaptiert werden kann, sowie eine dementsprechende Vorrichtung und insbesondere, wenn auch nicht ausschließlich, ein Bewegungskompensationscodierverfahren für die Verwendung mit einem differenzpulscodierten Videosignal, das eine Bewegungskompensationscodieroperation auch dann adaptiv durchführen kann, wenn eine Bewegungsgröße zwischen Bildern eine vorbestimmte Bewegungsgröße übersteigt. Es wird hier auf SIGNAL PROCESSING, IMAGE COMMUNICATION, vol. 3, no. 2/03, 1 June 1991, AMSTERDAM, NL, pp. 259-274, XP000234968 ADOLPH D ET AL: '1.15 MBIT/S CODING OF VIDEO SIGNALS INCLUDING GLOBAL MOTION COMPENSATION' Bezug genommen.
  • In einem modernen System wird ein Videosignal gewöhnlich zu digitalen Daten codiert und dann verarbeitet, um die Qualität des Bildes zu verbessern. Wenn jedoch das Videosignal zu den digitalen Daten codiert wird, dann wird die Größe der Daten sehr groß. Um dieses Problem zu lösen, verwendet ein herkömmliches Videocodiersystem ein Transformationscodierverfahren, ein Differenzpulscodemodulationsverfahren (DPCM), ein Vektorquantisierungsverfahren oder ein Variablelängencodierverfahren (VLC), um in einem digitalen Videosignal enthaltene Redundanzdaten zu entfernen, um die Größe der Gesamtdaten zu reduzieren. Im folgenden wird ein herkömmlicher Bewegtbildcodierer mit einem wohlbekannten Aufbau mit Bezug auf Fig. 1 beschrieben.
  • Ein Teilbild des digitalen Videosignals wird mit M · N Pixel rekonstruiert. Die Pixelwerte der rekonstruierten Videoblöcke werden in einem Speicher 10 gespeichert. Die im Speicher 10 gespeicherten Pixelwerte werden an einem Bewegungsschätzer 18, einem Subtrahierer 31 und einem Verhältnisregler 20 angelegt. Der Bewegungsschätzer 18 verwendet Pixelwerte eines aktuellen Bildes aus dem Speicher 10 und Pixelwerte eines Referenzbildes, das in einem Bildspeicher 17 gespeichert ist, um die Bewegungsgröße für entsprechende Videoblöcke des aktuellen Bildes zu schätzen. Die Bewegungsschätzung wird auf der Basis einer Korrelation zwischen Teilbildern geschätzt. Der Bewegungsschätzer 18 findet einen Referenzvideoblock, der eine Bildinformation, die beinahe identisch zu derjenigen eines aktuellen Videoblocks ist, aufweist und zum Vergleich in einem Suchbereich verwendet wird, der Teil des Referenzbildes wird, um dann einen Bewegungsvektor MV zu bilden, der eine Raumpositionsdifferenz zwischen dem aktuellen Videoblock und dem Referenzvideoblock wiedergibt. Ein Bewegungskompensatior 19 liest Pixelwerte des Referenzvideoblocks, der durch den durch den Bewegungsschätzer 18 erzeugten Bewegungsvektor MV angegeben wird, aus dem Bildspeicher 17. Die gelesenen Pixelwerte werden zum Subtrahierer 31 ausgegeben. Der Subtrahierer 31 subtrahiert einen entsprechenden Pixelwert aus dem Bewegungskompensierer 19 von einem Pixelwert aus dem Speicher 10 für eine Differenzpulscodemodulation und gibt einen durch Subtraktion erhaltenen Differenzpixelwert an einen Umformer 11 aus. Der Umformer 11 formt die Raumbereichpixelwerte aus dem Subtrahierer 31 zu Frequenzbereichtransformationskoeffizientenwerten um. Der Umformer 11 verwendet ein diskretes Cosinustransformationsverfahren (DCT), ein Walsh-Hadamard-Transformationsverfahren (WHT), ein diskretes Fouriertransformationsverfahren (DFT) oder ein diskretes Sinustransformationsverfahren (DST), um eine Transformationsoperation in Einheiten von einem Videoblock mit M · N Pixeln durchzuführen. Die von dem Umformer 11 ausgegebenen Transformationskoeffizientenwerte werden durch einen Quantisierer 12 quantisiert, um dann zu einem Variablelängencodierer 13 und einem inversen Quantisierer 15 ausgegeben zu werden. Der Quantisierer 12 und der inverse Quantisierer 15 quantisieren und invers-quantisieren die Eingabedaten jeweils in Übereinstimmung mit einem Quantisierungssteuersignal Qss, das vom Verhältnisregler 20 ausgegeben wird.
  • Weil die Technologien in Verbindung mit dem Quantisierer 12 und dem inversen Quantisierer 15 wohlbekannt sind, wird hier auf eine ausführlichere Beschreibung derselben verzichtet. Der Variablelängencodierer 13 codiert die Eingabedaten mit variabler Länge. Ein Puffer 14 speichert die aus dem Variablelängencodierer 13 ausgegebenen Daten temporär, bevor diese übertragen werden, und gibt ein Pufferfüllesignal, das den Speicherzustand des Puffers 14 wiedergibt, an einen Verhältnisregler 20 aus. Der Verhältnisregler 20 erzeugt ein Steuersignal Qss für die Quantisierung auf der Basis der aus dem Speicher 10 ausgegebenen Pixelwerte und des vom Puffer 14 angelegten Pufferfüllesignals. Andererseits führt ein inverser Umformer 16 eine inverse Transformation der vom inversen Quantisierer 15 angelegten Transformationskoeffizientenwerte in bezug auf die Transformation durch den Umformer 11 aus, um Raumbereichpixelwerte zu erzeugen. Ein Addierer 32 addiert die vom Bewegungskompensierer 19 angelegten Pixelwerte und die vom inversen Umformer 16 angelegten Pixelwerte, um dann das Ergebnis an den Bildspeicher 17 auszugeben. Der Bildspeicher 17 speichert die vom Addierer 32 erhaltenen Pixelwerte. Das durch den Verhältnisregler 20 erzeugte Quantisierungssteuersignal, der durch den Bewegungsschätzer 18 erzeugte Bewegungsvektor MV und die Ausgabedaten Vc aus dem Puffer 14 werden zu einem in Fig. 2 gezeigten Videodecodierer ausgegeben. Die Schalter 33 und 34 werden verwendet, um die Differenz zwischen einem Bild vor dem Codieren durch die Pulscodemodulation in dem in Fig. 1 gezeigten Bewegtbildcodierer und einem Bild nach dem Decodieren in dem in Fig. 2 gezeigten Decodierer zu reduzieren.
  • In dem Bewegungscodierer von Fig. 2 codiert ein Variablelängencodierer 21 die aus dem Puffer 14 ausgegebenen Daten Vc mit variabler Länge. Ein inverser Quantisierer 22 und ein inverser Umformer 23 erfüllen jeweils dieselbe Funktion wie der inverse Quantisierer 15 und der inverse Umformer 16 von Fig. 1. Der Bewegungskompensierer 24 liest Pixelwerte aus dem Bildspeicher 25 in Entsprechung zu dem Bewegungsvektor MV, um die gelesenen Pixelwerte an einen Addierer 26 auszugeben. Der Addierer 26 addiert die Ausgabedaten des Bewegungskompensierers 24 zu den Ausgabedaten des inversen Umformers 23, um das Ergebnis zu einem Anzeige- und Bildspeicher 25 auszugeben. Ein Schalter 27 wird für denselben Zweck verwendet, wie die oben genannten Schalter 33 und 34.
  • Weil der in Fig. 1 gezeigte Bewegtbildcodierer einen Suchbereich verwendet, der sich aus einer Anzahl von Pixeln zusammensetzt, die kleiner als ein Bild ist, um einen Referenzvideoblock mit derselben Bildinformation wie ein aktueller Videoblock zu finden, ist kein Referenzvideoblock mit derselben Bildinformation wie der aktuelle Videoblock in einem bestimmten Suchbereich vorhanden, wenn es sich um schnelle Bewegtbilder wie etwa bei Sportvideos handelt. Der Bewegtbildcodierer von Fig. 1 führt keine Nicht-Intracodieroperation aus, die einen Differenzwert zwischen Bildern durch die Verwendung einer Differenzpulscodemodulation für den aktuellen Videoblock erhält, sondern führt eine Intracodieroperation durch. Dementsprechend wird die Bitmenge der codierten Daten groß. Dieses Problem setzt in einem System mit einem vorbestimmten Datenstandard, der eine entsprechende Kombination aus einer Intracodierung und einer Nicht-Intracodierung verwendet, die Gesamtqualität des Bildes herab und erhöht die Wahrscheinlichkeit, daß ein Überlauf im Puffer 14 auftritt.
  • Bevorzugte Ausführungsformen der vorliegenden Erfindung bezwecken ein Bewegungskompensationscodierverfahren anzugeben, das die Bewegungsgröße für einen Videoblock schätzt, der bewegungskompensationscodiert werden soll, das sich der Bewegungsgröße anpaßt, um die bewegungskompensierten Daten zu erzeugen, wobei ein globaler Bewegungsvektor, der die Verschiebung zwischen den Bildern wiedergibt, erzeugt wird, indem ein Bewegungsschätzungsbereich zu einem ganzen Bild geändert wird, wenn ein Bewegtbild eine große Bewegungsgröße zwischen Bildern aufweist, und das die durch den erzeugten globalen Bewegungsvektor bewegungskompensierten Daten des Bildes verwendet.
  • Bevorzugte Ausführungsformen der vorliegenden Erfindung bezwecken weiterhin, eine Vorrichtung anzugeben, welche das oben genannte Verfahren realisiert.
  • Bevorzugte Ausführungsformen der vorliegenden Erfindung bezwecken weiterhin, eine Bewegungskompensationscodiervorrichtung anzugeben, die sich einer Bewegungsgröße anpaßt, um bewegungskompensierte Daten zu erzeugen, indem ein Referenzbild erzeugt wird, das durch das Kompensieren der Raumpositionsdifferenz zwischen einem Bild, das bewegungskompensiert werden soll, und einem Bild, das eine Referenz der Bewegungskompensation wird, erhalten wird.
  • Die vorliegende Erfindung wird durch den Vorrichtungsanspruch 1 und den Verfahrensanspruch 8 definiert.
  • Bevorzugte Ausführungsformen der vorliegenden Erfindung werden beispielhaft mit Bezug auf die Zeichnungen beschrieben:
  • Fig. 1 ist ein Blockdiagramm, das ein herkömmliches Bildcodiersystem zeigt,
  • Fig. 2 ist ein Blockdiagramm, das ein herkömmliches Bilddecodiersystem zeigt,
  • Fig. 3 ist ein Blockdiagramm, das eine Bewegungskompensationscodiervorrichtung in Übereinstimmung mit einer bevorzugten Ausführungsform der vorliegenden Erfindung zeigt,
  • Fig. 4A und 4B zeigen ein Bewegungskompensationscodierverfahren in Übereinstimmung mit der vorliegenden Erfindung, das sich einer Bewegungsgröße anpaßt.
  • Im folgenden wird eine bevorzugte Ausführungsform der vorliegenden Erfindung ausführlicher mit Bezug auf die beigefügten Fig. 3, 4A und 4B beschrieben.
  • Fig. 3 zeigt einen Bewegungskompensationscodierer in Übereinstimmung mit einer bevorzugten Ausführungsform der vorliegenden Erfindung. In Fig. 3 werden ähnliche Elemente wie in Fig. 1 durch gleiche Bezugszeichen angegeben, wobei hier auf einer wiederholte Beschreibung dieser Elemente verzichtet wird.
  • Der Aufbau und der Betrieb der Vorrichtung von Fig. 3 wird im folgenden in Verbindung mit der vorliegenden Erfindung beschrieben.
  • Ein Speicher 56 speichert Pixelwerte von einer Vielzahl von Bildern. Der Speicher 56 gibt die Pixelwerte eines vorhergehenden Bildes aus den gespeicherten Pixelwerten zu einem Verhältnisregler 20 und einem Subtrahierer 31 und gibt die Pixelwerte eines aktuellen Bildes zu einem Bewegungsfeststeller 51. Der Subtrahierer 31 subtrahiert die entsprechenden Pixelwerte aus dem Bewegungskompensierer 55 von den entsprechenden Pixelwerten des vor hergehenden Bildes aus dem Speicher 31 und gibt einen Differenzwert an einen Umformer 11 aus.
  • Andererseits empfängt der Bewegungsschätzer 51 die Pixelwerte des Referenzbildes, das in einem Bildspeicher 17 gespeichert ist, wenn die Pixelwerte des aktuellen Bildes aus dem Speicher 56 ausgegeben werden, und stellt eine Bewegungsgröße des aktuellen Bildes in bezug auf das Referenzbild fest. Um die Bewegungsgröße des aktuellen Bildes in bezug auf das Referenzbild festzustellen, stellt der Bewegungsfeststeller 51 fest, ob ein erster Referenzvideoblock mit derselben Bildinformation wie ein aktueller Videoblock, der ein Teil des aktuellen Bildes wird, in einem ersten Suchbereich in bezug auf einen oder mehrere aktuelle Videoblöcke vorhanden ist. Der Bewegungsfeststeller 51 erzeugt ein erstes Steuersignal CTL1, welches abgibt, ob die Bewegungsschätzung des aktuellen Bildes unter Verwendung der Pixelwerte des Referenzbildes auf der Basis des Feststellungsergebnisses möglich ist. Der Bewegungsfeststeller 51 erzeugt ein zweites Steuersignal CTL2 auf der Basis des oben genannten Feststellungsergebnisses. Wenn das erste Steuersignal CTL1 angibt, daß die Bewegungsschätzung des aktuellen Bildes unter Verwendung der Pixelwerte des Referenzbildes möglich ist, gibt der Speicher 56 die Pixelwerte des aktuellen Bildes zu einem Schalter 52 aus. Der Speicher 56 gibt die Pixelwerte des aktuellen Bildes wieder zu einem Subtrahierer 31, nachdem alle Pixelwerte des aktuellen Bildes zum Schalter 52 gegeben wurden. Der Schalter 52 gibt die Pixelwerte des aktuellen Bildes, die er über einen Eingangsanschluß C vom Speicher 56 erhält, über einen ersten Ausgangsanschluß A in Übereinstimmung mit dem angelegten zweiten Steuersignal CTL2 zu einem lokalen Bewegungsschätzer 54 aus. Der lokale Bewegungsschätzer 54 stellt fest, ob die Pixelwerte des kompensierten Referenzbildes im globalen Bewegungsschätzer 53 gespeichert sind. Wenn die Pixelwerte des kompensierten Referenzbildes nicht im globalen Bewegungsschätzer 53 als Feststellungsergebnis gespeichert sind, verwendet der lokale Bewegungsschätzer 54 die Pixelwerte des im Bildspeicher 17 gespeicherten Referenzbildes und die Pixelwerte des über den Schalter 52 angelegten aktuellen Bildes und erzeugt einen ersten lokalen Bewegungsvektor LMV1 für einen aktuellen Videoblock.
  • Die Erzeugung des ersten lokalen Bewegungsvektors LMV1 wird im folgenden mit Bezug auf Fig. 4A beschrieben. In Fig. 4A wird der erste lokale Bewegungsvektor LMV1 auf der Basis des aktuellen Videoblocks im aktuellen Bild und des ersten Suchbereichs im Referenzbild bestimmt. Dabei umfaßt der erste Suchbereich eine kleinere Anzahl von Pixeln als das Referenzbild und weist eine Position auf einem Bild in Entsprechung zu dem aktuellen Videoblock auf. In Fig. 4A wird der aktuelle Videoblock durch ein schraffiertes Rechteck wiedergegeben, und auch der erste Referenzvideoblock mit derselben Bildinformation wie der aktuelle Videoblock wird durch ein schraffiertes Rechteck wiedergegeben. Der lokale Bewegungsschätzer 54 vergleicht einen entsprechenden Block mit derselben Anzahl von Pixeln wie der aktuelle Videoblock, der im oberen linken Ende des ersten Suchbereichs positioniert ist, und alle Blöcke, die durch das Bewegen des entsprechenden Blocks um jeweils ein Pixel nach rechts und/oder unten erhalten werden, mit dem aktuellen Videoblock. Als Verfahren für den Vergleich kann das wohlbekannte Mittlerer-Absoluter-Fehler-(MAE)- Verfahren oder das Mittlerer-Quadratischer-Fehler-(MSE)-Verfahren verwendet werden. Wenn der erste Referenzvideoblock mit dem kleinsten Differenzwert gegenüber dem aktuellen Videoblock durch einen Vergleich der Pixelwerte des MAE oder MSE bestimmt wird, erzeugt der lokale Bewegungsschätzer 54 einen ersten lokalen Bewegungsvektor LMV1, der die Raumpositionsdifferenz zwischen dem ersten Referenzvideoblock und dem aktuellen Videoblock wiedergibt. Der erste lokale Bewegungsvektor LMV1 wird mit Bezug auf die entsprechenden aktuellen Videoblöcke erzeugt, und der erzeugte erste Bewegungsvektor LMV1 wird zu dem Bewegungskompensierer 55 ausgegeben.
  • Der Bewegungskompensierer 55 stellt fest, daß die Pixelwerte des kompensierten Referenzbildes nicht in dem globalen Bewegungsschätzer 53 gespeichert sind, wenn der erste Bewegungsvektor LMV1 vom Bewegungsschätzer 54 angelegt wird. Auf der Basis einer derartigen Feststellung erzeugt der Bewegungskompensierer 55 die bewegungskompensierten Pixelwerte in Übereinstimmung mit den Pixelwerten des Referenzbildes, das im Bildspeicher 17 gespeichert ist, und in Übereinstimmung mit dem ersten lokalen Bewegungsvektor LMV1, der im Bewegungsschätzer 54 erzeugt wird. Der Subtrahierer 31 subtrahiert die entsprechenden Pixelwerte, die aus dem Bewegungskompensierer 55 ausgegeben werden, von den entsprechenden Pixelwerten des aktuellen Bildes, die aus dem Speicher 56 ausgegeben werden, und gibt den durch die Subtraktion erhaltenen Differenzwert an den Umformer 11 aus. Die aus dem Bewegungskompensierer 55 ausgegebenen Pixelwerte werden auch an einen Addierer 32 ausgegeben, durch welchen sie zu den Daten addiert werden, die aus dem inversen Umformer 16 ausgegeben werden. Die durch den Addierer 32 erhaltenen Pixelwerte werden im Bildspeicher 17 gespeichert und als Pixelwerte des Referenzbildes für die Bewegungskompensation des folgenden Bildes verwendet.
  • Wenn das im Bewegungsfeststeller 51 erzeugte erste Steuersignal CTL1 angibt, daß die Bewegungsschätzung des aktuellen Bildes unter Verwendung der Pixelwerte des Referenzbildes nicht möglich ist, gibt der Speicher 56 wiederholt die Pixelwerte des aktuellen Bildes teilbildweise jeweils zweifach an den Schalter 52 aus. Nachdem der Speicher 56 die Pixelwerte des aktuellen Bildes jeweils teilbildweise zweifach an den Schalter 52 ausgegeben hat, werden die Pixelwerte des aktuellen Bildes auch zu einem Subtrahierer 31 ausgegeben. Der Schalter 52 gibt die Pixelwerte des ersten Teilbildes des aktuellen Bildes aus den Pixelwerten für die zwei Teilbilder des über den Eingangsanschluß C vom Speicher 56 erhaltenen aktuellen Bildes in Übereinstimmung mit dem angelegten zweiten Steuersignal CTL2 über einen zweiten Ausgangsanschluß B zum lokalen Bewegungsschätzer 54 aus. Dann gibt der Schalter 52 die Pixelwerte des zweiten angelegten aktuellen Bildes über einen ersten Ausgangsanschluß A zu dem lokalen Bewegungsschätzer 54 aus. Der lokale Bewegungsschätzer 54 erzeugt keinen lokalen Bewegungsvektor während der Zeit, während welcher die Pixelwerte des aktuellen Bildes nicht über den Schalter 52 ausgegeben werden. Der Subtrahierer 31 operiert auch nicht, weil die Pixelwerte des aktuellen Bildes aus dem Speicher 56 und die bewegungskompensierten Pixelwerte vom Bewegungskompensierer 55 nicht an denselben ausgegeben werden.
  • Der globale Bewegungsschätzer 53 erzeugt einen globalen Bewegungsvektor GMV, der die Raumpositionsdifferenz des aktuellen Bildes in bezug auf das Referenzbild unter Verwendung aller Pixelwerte des von dem zweiten Ausgangsanschluß B des Schalters 53 angelegten aktuellen Bildes und aller Pixelwerte des im Bildspeicher 17 gespeicherten Referenzbildes wiedergibt. Der globale Bewegungsschätzer 53 verwendet die folgende Gleichung (1) in Übereinstimmung mit dem MAE-Verfahren oder die folgende Gleichung (2) in Übereinstimmung mit dem MSE-Verfahren, um einen globalen Bewegungsvektor GMV zu erzeugen. Die Beziehung zwischen dem Referenzbild und dem kompensierten Referenzbild ist im Konzept in Fig. 4B gezeigt. Wie aus Fig. 4B entnommen werden kann, gibt der globale Bewegungsvektor GMV die Raumpositionsdifferenz des aktuellen Bildes in bezug auf das Referenzbild wieder.
  • -x_rang ≤ k ≤ x_rang - 1,
  • -y_rang ≤ l ≤ y_rang - 1 (1)
  • -x_rang ≤ k ≤ x_rang - 1,
  • -y_rang ≤ l ≤ y_rang - 1 (2)
  • Dabei gibt Ycur(m, n) den (m, n)-ten Pixelwert in dem aktuellen Bild wieder, und Yref(m,n) gibt den (m, n)-ten Pixelwert in dem Referenzbild wieder. Die Zeichen W und H geben jeweils die Anzahl der horizontalen und vertikalen Pixel wieder. Die Ausdrücke x_rang und y_rang geben einen Bewegungsbereich des aktuellen Bildes in bezug auf das Referenzbild in jeweils der horizontalen und der vertikalen Richtung wieder. Das heißt, das aktuelle Bild kann eine Position in bezug auf das Referenzbild innerhalb des Bereichs von -x_rang bis x_rang-1 des Referenzbildes in der horizontalen Richtung aufweisen. Dasselbe gilt für die vertikale Richtung. Wie in Fig. 4B gezeigt, empfängt und speichert der globale Bewegungsschätzer 53 die Pixelwerte des kompensierten Referenzbildes mit einer verschobenen Referenzposition aus dem Bildspeicher 17, indem die Position des Referenzbildes durch den globalen Bewegungsvektor GMV verschoben wird. Wenn tatsächlich Pixel zu einem neu kompensierten Referenzbild hinzuzufügen sind, indem das Referenzbild unter den Pixelwerten des im globalen Bewegungsschätzers 53 gespeicherten kompensierten Referenzbildes verschoben wird, dann werden alle Pixelwerte mit einem beliebigen von denselben Werten erstellt. Ein derartiger Wert kann auf einen bestimmten Wert von "0" bis "255" gesetzt werden, wenn ein Pixelwert 256 Abstufungen wiedergeben kann.
  • Nachdem der globale Bewegungsvektor und das kompensierte Referenzbild vollständig durch den globalen Bewegungsschätzer 53 bestimmt wurden, werden die Pixelwerte des aus dem Speicher 56 ausgegebenen aktuellen Bildes über den Schalter 52 zu dem lokalen Bewegungsschätzer 54 gegeben. Der lokale Bewegungsschätzer 54 bestimmt, ob die Pixelwerte des kompensierten Referenzbildes im globalen Bewegungsschätzer 53 gespeichert sind, wenn die Pixelwerte des aktuellen Bildes über den ersten Ausgangsanschluß A des Schalters 52 angelegt werden. Wenn der globale Bewegungsschätzer 53 die Pixelwerte des kompensierten Referenzbildes in Übereinstimmung mit dem Feststellungsergebnis speichert, verwendet der lokalen Bewegungsschätzer 54 die Pixelwerte des im globalen Bewegungsschätzer 53 gespeicherten kompensierten Referenzbildes und die Pixelwerte des über den Schalter 52 angelegten aktuellen Bildes, um einen zweiten lokalen Bewegungsvektor LMV2 in bezug auf den aktuellen Videoblock zu erzeugen. Weil der Erzeugungsprozeß des zweiten lokalen Bewegungsvektors LMV2 im lokalen Bewegungsschätzer 54 demjenigen des Bewegungsschätzers 18 ähnlich ist, der den ersten Referenzvideoblock in bezug auf den aktuellen Videoblock unter Verwendung der im Bildspeicher 17 gespeicherten Pixelwerte erzeugt, kann hier auf eine Beschreibung des Erzeugungsprozesses verzichtet werden.
  • Der lokale Bewegungsschätzer 54 vergleicht die Pixelwerte des aktuellen Videoblocks mit den Pixelwerten in einem zweiten Suchbereich des kompensierten Referenzbildes und bestimmt einen zweiten Referenzvideoblock in dem zweiten Suchbereich mit derselben Bildinformation wie in dem aktuellen Videoblock. Dabei weist der zweite Suchbereich eine Position, die wie in Fig. 4B gezeigt um einen Wert des globalen Bewegungsvektors GMV gegenüber dem ersten Suchbereich verschoben ist, und eine Position auf, die dem aktuellen Videoblock entspricht, der für den Vergleich innerhalb des kompensierten Referenzbildes verwendet wird. Der lokale Bewegungsschätzer 54 erzeugt einen zweiten lokalen Bewegungsvektor LMV2, der die Raumpositionsdifferenz zwischen dem aktuellen Videoblock und dem zweiten Referenzblock wiedergibt, wenn der zweite Referenzvideoblock bestimmt wird. Der erzeugte zweite lokale Bewegungsvektor LMV2 wird zu dem Bewegungskompensator 55 ausgegeben.
  • Der Bewegungskompensierer 55 verwendet die Pixelwerte des im globalen Bewegungsschätzer 53 gespeicherten kompensierten Referenzbildes und den zweiten lokalen Bewegungsvektor LMV2, um die bewegungskompensierten Pixelwerte in bezug auf den aktuellen Videoblock zu erhalten, wenn der zweite lokale Bewegungsvektor LMV2 daran angelegt wird, und gibt dann die erhaltenen Pixelwerte zum Subtrahierer 21 und zum Addierer 32. Der Subtrahierer 31 subtrahiert die vom Bewegungskompensierer 55 erhaltenen bewegungskompensierten Pixelwerte von den Pixelwerten des vom Speicher 56 erhaltenen aktuellen Bildes. Weil der Betrieb der Vorrichtung von Fig. 3 derselbe ist wie bei der Bewegungskompensationsoperation unter Verwendung des ersten lokalen Bewegungsvektors LMV1, wird hier auf eine ausführlichere Beschreibung desselben verzichtet. Der globale Bewegungsvektor GMV und der lokale Bewegungsvektor LMV1 oder LMV2, die in der Vorrichtung von Fig. 3 erzeugt werden, werden zu einem Decodierer (nicht gezeigt) übertragen, um das bewegungskompensierte codierte Bild zu decodieren.
  • Im Fall der oben beschriebenen Ausführungsform wird die Vorrichtung von Fig. 3 auf der Basis der Steuersignale in Übereinstimmung mit der Feststellung des Bewegungsfeststellers 51 betrieben. Es ist jedoch auch möglich, andere Variationen vorzusehen, die durch das Entfernen des Bewegungsfeststellers 51 und des Schalters 52 erhalten werden. Die modifizierte Ausführungsform wird im folgenden kurz mit Bezug auf Fig. 3 beschrieben.
  • Wenn der Speicher 56 die Pixelwerte des aktuellen Bildes ausgibt, erzeugt der globale Bewegungsschätzer 53 einen globalen Bewegungsvektor des aktuellen Bildes in bezug auf das Referenzbild in derselben Weise wie oben mit Bezug auf Fig. 3 beschrieben. Der globale Bewegungsschätzer 53 verwendet den erzeugten globalen Bewegungsvektor, bewegungskompensiert das Referenzbild und speichert die Pixelwerte des bewegungskompensierten Referenzbildes.
  • Der Bewegungsschätzer 54 erzeugt einen lokalen Bewegungsvektor auf der Basis des in dem globalen Bewegungsschätzer 53 gespeicherten bewegungskompensierten Referenzbildes und der vom Speicher 56 erhaltenen Pixelwerte des aktuellen Bildes. Der Bewegungskompensierer 54 verwendet den lokalen Bewegungsvektor und die im globalen Bewegungsschätzer 53 gespeicherten Pixelwerte, um die bewegungskompensierten Pixelwerte zu erzeugen. Auf diese Weise kann der Bewegungskompensierer 54 die bewegungskompensierten Pixelwerte auch dann korrekt erzeugen, wenn die Bewegungsgröße des aktuellen Bildes in bezug auf das Referenzbild über einer vorbestimmten Bewegungsgröße ist.
  • Wie oben beschrieben, kann der sich an eine Bewegungsgröße anpassende Bewegungskompensationscodierer in Übereinstimmung mit der vorliegenden Erfindung einen Bewegungsvektor in bezug auf die entsprechenden Videoblöcke in dem aktuellen Bild auch dann bestimmen, wenn die Bewegungsvektoren in bezug auf die entsprechenden Videoblöcke in dem aktuellen Bild nicht unter Verwendung des im Referenzbild bestimmten Suchbereichs bestimmt werden können. Dadurch kann das Problem des Auftretens einer erhöhten Übertragungsdatenmenge in dem herkömmlichen Bewegungskompensationscodiersystem vermieden werden, das eine Intracodierungsoperation durchführt, weil kein Bewegungsvektor in bezug auf ein Bild mit einer großen Bewegungsgröße bestimmt wird.

Claims (15)

1. Bewegungskompensationscodiervorrichtung für die Verwendung in einem Bildcodierer zum Durchführen einer Differenzpulscodemodulation unter Verwendung von Pixelwerten eines aktuellen Bildes und von bewegungskompensierten Pixelwerten, wobei der Bewegungskompensationscodierer umfaßt:
einen ersten Speicher (17) zum Speichern von Pixelwerten eines Referenzbildes,
einen zweiten Speicher (56) zum Speichern von Pixelwerten in bezug auf eine Vielzahl von Bildern, zum teilbildweisen Ausgeben der gespeicherten Pixelwerte jedes Bilds und zum erneuten teilbildweisen Ausgeben der Pixelwerte jedes Bilds ein- oder zweimal mehr auf der Basis eines ersten Steuersignals,
eine Bewegungsfeststellungseinrichtung (51), die verbunden ist, um die zuerst ausgegebenen Pixelwerte für ein Teilbild aus den duplizierten Pixelwerten desselben aus dem zweiten Speicher (56) ausgegebenen Bildes zu empfangen und um die Pixelwerte des im ersten Speicher (17) gespeicherten Referenzbildes zu empfangen, um festzustellen, ob eine Bewegungsgröße des aktuellen Bildes in Übereinstimmung mit den aus dem zweiten Speicher (56) erhaltenen Pixelwerten in bezug auf das Referenzbild in Übereinstimmung mit den im ersten Speicher (17) gespeicherten Pixelwerten eine vorbestimmte Bewegungsgröße überschreitet, und um erste und zweite Steuersignale in Übereinstimmung mit dem Feststellungsergebnis zu erzeugen,
eine globale Bewegungsschätzeinrichtung (53) zum Erzeugen eines globalen Bewegungsvektors, der die Raumpositionsdifferenz zwischen dem Referenzbild in Übereinstimmung mit den im ersten Speicher (17) gespeicherten Pixelwerten und dem aktuellen Bild in Übereinstimmung mit den im zweiten Speicher (56) gespeicherten Pixelwerten wiedergibt, sowie zum Speichern der Pixelwerte des bewegungskompensierten Referenzbildes auf der Basis des erzeugten globalen Bewegungsvektors,
eine lokale Bewegungsschätzeinrichtung (54) zum Feststellen, ob das bewegungskompensierte Referenzbild in der globalen Bewegungsschätzeinrichtung (53) gespeichert ist, und zum Erzeugen eines ersten lokalen Bewegungsvektors in Übereinstimmung mit dem Vergleich der Pixelwerte zwischen einem aktuellen Videoblock, der durch die aus dem zweiten Speicher (56) erhaltenen Pixelwerte gebildet wird und der eine kleinere Größe als das aktuelle Bild aufweist, und einem ersten Suchbereich, der durch einen Teil der im ersten Speicher (17) gespeicherten Pixelwerte gebildet wird, sowie zum Erzeugen eines zweiten lokalen Bewegungsvektors in Übereinstimmung mit dem Vergleich der Pixelwerte zwischen dem aktuellen Videoblock und einem zweiten Suchbereich, der durch einen Teil der in der globalen Bewegungsschätzeinrichtung (53) gespeicherten Pixelwerte gebildet wird, auf der Basis des Feststellungsergebnisses,
eine Schalteinrichtung (52) zum Ausgeben der aus dem zweiten Speicher (56) erhaltenen Pixelwerte an die lokale Bewegungsschätzeinrichtung (54), wenn das in der Bewegungsfeststellungseinrichtung (51) erzeugte zweite Steuersignal angibt, daß die Bewegungsgröße des aktuellen Bildes die vorbestimmte Bewegungsgröße nicht überschreitet, zum Ausgeben der Pixelwerte für ein Teilbild aus den Pixelwerten desselben aus dem zweiten Speicher (56) erhaltenen Bildes, wenn das zweite Steuersignal angibt, daß die Bewegungsgröße des aktuellen Bildes die vorbestimmte Bewegungsgröße überschreitet, und zum Ausgeben der Pixelwerte für ein folgendes Teilbild an die lokale Bewegungsschätzeinrichtung (54),
eine Bewegungskompensationseinrichtung (55) zum Erzeugen von bewegungskompensierten Pixelwerten unter Verwendung der im ersten Speicher (17) gespeicherten Pixelwerte und des ersten lokalen Bewegungsvektors, wenn der erste lokale Bewegungsvektor von der lokalen Bewegungsschätzeinrichtung (54) angelegt wird, und zum Erzeugen von bewegungskompensierten Pixelwerten unter Verwendung der in der globalen Bewegungsschätzeinrichtung (53) gespeicherten Pixelwerte und des zweiten lokalen Bewegungsvektors, wenn der zweite lokale Bewegungsvektor von der lokalen Bewegungsschätzeinrichtung (54) angelegt wird, und
eine Einrichtung (31) zum Erzeugen eines Differenzwertes zwischen den entsprechenden Pixelwerten von jedem aus dem zweiten Speicher ausgegebenen Bild und den entsprechenden bewegungskompensierten Pixelwerten, die aus der Bewegungskompensationseinrichtung (55) ausgegeben werden.
2. Bewegungskompensationscodiervorrichtung nach Anspruch 1, wobei der zweite Speicher (56) die Pixelwerte des aktuellen Bildes teilbildweise zweifach ausgibt, wenn das erste Steuersignal angibt, daß die Bewegungsgröße des aktuellen Bildes die vorbestimmte Bewegungsgröße überschreitet, während der zweite Speicher (56) die Pixelwerte des aktuellen Bildes für nur ein Teilbild ausgibt, wenn das erste Steuersignal angibt, daß die Bewegungsgröße des aktuellen Bildes die vorbestimmte Bewegungsgröße nicht überschreitet.
3. Bewegungskompensationscodiervorrichtung nach Anspruch 1 oder 2, wobei der Bewegungsfeststeller das erste Steuersignal in Übereinstimmung mit einem Ergebnis dazu erzeugt, ob der erste Referenzvideoblock mit derselben Bildinformation wie der aktuelle Videoblock in dem ersten Suchbereich vorhanden ist, der dem aktuellen Videoblock entspricht.
4. Bewegungskompensationscodiervorrichtung nach wenigstens einem der Ansprüche 1 bis 3, wobei der Bewegungsfeststeller feststellt, ob der erste Referenzvideoblock mit derselben Bildinformation in bezug auf eine Vielzahl von aktuellen Videoblöcken in dem aktuellen Bild vorhanden ist.
5. Bewegungskompensationscodiervorrichtung nach wenigstens einem der Ansprüche 1 bis 4, wobei der globale Bewegungsschätzer (53) den ersten lokalen Bewegungsvektor auf der Basis eines mittleren absoluten Fehlerwerts in Übereinstimmung mit den Pixeldifferenzwerten zwischen einer Vielzahl von entsprechend verschobenen aktuellen Bildern, welche durch das Verschieben innerhalb des Bewegungsschätzbereichs erhalten werden, und dem Referenzbild erzeugt.
6. Bewegungskompensationscodiervorrichtung nach wenigstens einem der Ansprüche 1 bis 4, wobei der globale Bewegungsschätzer (53) den ersten lokalen Bewegungsvektor auf der Basis eines mittleren quadratischen Fehlerwerts in Übereinstimmung mit den Pixeldifferenzwerten zwischen einer Vielzahl von entsprechend verschobenen aktuellen Bildern, welche durch das Verschieben innerhalb des Bewegungsschätzbereichs erhalten werden, und dem Referenzbild erzeugt.
7. Bewegungskompensationscodiervorrichtung nach wenigstens einem der Ansprüche 1 bis 6, wobei der lokale Bewegungsschätzer (54) den ersten lokalen Bewegungsvektor erzeugt, wenn das bewegungskompensierte Referenzbild nicht in dem globalen Bewegungsschätzer (53) gespeichert ist, während er den zweiten lokalen Bewegungsvektor erzeugt, wenn das bewegungskompensierte Referenzbild in dem globalen Bewegungsschätzer (53) gespeichert ist.
8. Bewegungskompensationscodierverfahren für die Verwendung in einem Bildcodierer zum Durchführen einer Differenzpulscodemodulation unter Verwendung von Pixelwerten eines aktuellen Bildes und von bewegungskompensierten Pixelwerten, wobei das Bewegungskompensationscodierverfahren folgende Schritte umfaßt:
a) Speichern der Pixelwerte eines Referenzbildes für die Bewegungskompensation,
b) Speichern der Pixelwerte des aktuellen Bildes,
c) Feststellen, ob die Bewegungsgröße des aktuellen Bildes, das bewegungskompensiert werden soll, eine vorbestimmte Bewegungsgröße überschreitet, auf der Basis von allen in den Schritten a) und b) gespeicherten Pixelwerten,
d) Erzeugen eines globalen Bewegungsvektors, der die Raumpositionsdifferenz des aktuellen Bildes der in Schritt b) gespeicherten Pixelwerte in bezug auf das Referenzbild der in Schritt a) gespeicherten Pixelwerte wiedergibt, wenn das Feststellungsergebnis von Schritt c) angibt, daß die Bewegungsgröße des aktuellen Bildes die vorbestimmte Bewegungsgröße überschreitet,
e) Bewegungskompensieren des Referenzbildes in Übereinstimmung mit den in Schritt a) gespeicherten Pixelwerten, um die Pixelwerte des bewegungskompensierten Referenzbildes zu speichern,
f) Erzeugen eines zweiten lokalen Bewegungsvektors auf der Basis eines Vergleichs der Pixelwerte zwischen einem ersten Videoblock und einem zweiten Suchbereich, der durch einen Teil der in Schritt a) gespeicherten Pixelwerte gebildet wird,
g) Erzeugen von bewegungskompensierten Pixelwerten unter Verwendung des zweiten in Schritt f) erzeugten lokalen Bewegungsvektors und der entsprechenden in Schritt e) gespeicherten Pixelwerte, und
h) Erzeugen eines Differenzwertes zwischen den in Schritt b) gespeicherten entsprechenden Pixelwerten des aktuellen Bildes und den in Schritt g) erzeugten entsprechenden Pixelwerten des bewegungskompensierten Referenzbildes.
9. Bewegungskompensationscodierverfahren nach Anspruch 8, welches weiterhin folgende Schritte umfaßt:
i) Erzeugen eines ersten lokalen Bewegungsvektors auf der Basis eines Vergleichs der Pixelwerte zwischen dem ersten Videoblock, der durch die in Schritt b) gespeicherten Pixelwerte gebildet wird und eine kleinere Größe als das aktuelle Bild aufweist, und einem ersten Suchbereich, der durch einen Teil der in Schritt a) gespeicherten Pixelwerte gebildet wird,
j) Erzeugen der bewegungskompensierten Pixelwerte unter Verwendung des in Schritt i) erzeugten lokalen Bewegungsvektors und der in Schritt a) gespeicherten entsprechenden Pixelwerte, und
k) Erzeugen eines Differenzwerts zwischen den in Schritt b) gespeicherten entsprechenden Pixelwerten des aktuellen Bildes und den in Schritt j) erzeugten entsprechenden Pixelwerten des bewegungskompensierten Referenzbildes, wobei das Feststellungsergebnis des Schrittes c) angibt, daß die Bewegungsgröße des aktuellen Bildes die vorbestimmte Bewegungsgröße nicht überschreitet.
10. Bewegungskompensationscodierverfahren nach Anspruch 8 oder 9, wobei der Schritt
c) folgende Teilschritte umfaßt:
c1) Bilden eines ersten Suchbereichs für die Bewegungsschätzung des aktuellen Videoblocks und Einschließen des aktuellen Videoblocks mit einem Teil der aktuellen Bildpixelwerte und einem Teil der in Schritt a) gespeicherten Pixelwerte,
c2) Feststellen, ob der Referenzvideoblock mit derselben Bildinformation wie in dem aktuellen Videoblock in dem ersten Suchbereich vorhanden ist, auf der Basis eines Vergleichs der Bildinformation zwischen den in Teilschritt c1) gebildeten Pixelwerten des aktuellen Videoblocks und den entsprechenden Blöcken, die in dem ersten Suchbereich vorhanden sind und dieselbe Anzahl von Pixeln wie der aktuelle Videoblock aufweisen, und
Feststellen, ob die Bewegungsgröße des aktuellen Bildes die vorbestimmte Bewegungsgröße überschreitet, auf der Basis des Feststellungsergebnisses von Teilschritt c2).
11. Bewegungskompensationscodierverfahren nach Anspruch 10, wobei der Teilschritt c2) weiterhin einen Teilschritt umfaßt, um festzustellen, ob der erste Referenzvideoblock, der dieselbe Bildinformation in bezug auf eine Vielzahl von aktuellen Videoblöcken aufweist, in dem aktuellen Bild vorhanden ist.
12. Bewegungskompensationscodierverfahren nach wenigstens einem der Ansprüche 8 bis 11, wobei der Schritt d) weiterhin einen Teilschritt d1) umfaßt, um den globalen Bewegungsvektor auf der Basis eines mittleren absoluten Fehlerwerts in Übereinstimmung mit Pixeldifferenzwerten zwischen einer Vielzahl von entsprechend verschobenen aktuellen Bildern, welche durch das Verschieben des aktuellen Bildes innerhalb des vorbestimmten Bewegungsschätzbereichs erhalten werden, und dem Referenzbild zu erzeugen.
13. Bewegungskompensationscodierverfahren nach Anspruch 12, wobei der Teilschritt d1) weiterhin einen Teilschritt da1) umfaßt, um den mittleren absoluten Fehlerwert der Pixeldifferenzwerte zwischen einem aktuellen Bild bei einer Verschiebung unter Verwendung der folgenden Gleichung und dem Referenzbild zu berechnen:
-x_rang ≤ k ≤ x_rang - 1,
-y_rang ≤ l ≤ y_rang - 1
wobei Ycur(m, n) den (m, n)-ten Pixelwert in dem aktuellen Bild wiedergibt, und Yref(m, n) den (m, n)-ten Pixelwert in dem Referenzbild wiedergibt, die Zeichen W und H jeweils die Anzahl der horizontalen und vertikalen Pixel wiedergeben und die Ausdrücke x_rang und y_rang einen Bewegungsbereich des aktuellen Bildes in bezug auf das Referenzbild in jeweils der horizontalen und der vertikalen Richtung wiedergeben.
14. Bewegungskompensationscodierverfahren nach wenigstens einem der Ansprüche 8 bis 13, wobei der Schritt d) weiterhin einen Teilschritt d2) umfaßt, um den globalen Bewegungsvektor auf der Basis eines mittleren quadratischen Fehlerwerts in Übereinstimmung mit Pixeldifferenzwerten zwischen einer Vielzahl von entsprechend verschobenen aktuellen Bildern, welche durch das Verschieben des aktuellen Bildes innerhalb des vorbestimmten Bewegungsschätzbereichs erhalten werden, und dem Referenzbild zu erzeugen.
15. Bewegungskompensationscodierverfahren nach Anspruch 14, wobei der Teilschritt d2) weiterhin einen Teilschritt da2) umfaßt, um den mittleren quadratischen Fehlerwert der Pixeldifferenzwerte zwischen einem aktuellen Bild bei einer Verschiebung unter Verwendung der folgenden Gleichung und dem Referenzbild zu berechnen:
-x_rang ≤ k ≤ x_rang - 1,
-y_rang ≤ l ≤ y_rang - 1
wobei Ycur(m, n) den (m, n)-ten Pixelwert in dem aktuellen Bild wiedergibt, und Yref(m, n) den (m, n)-ten Pixelwert in dem Referenzbild wiedergibt, die Zeichen W und H jeweils die Anzahl der horizontalen und vertikalen Pixel wiedergeben und die Ausdrücke x_rang und y_rang einen Bewegungsbereich des aktuellen Bildes in bezug auf das Referenzbild in jeweils der horizontalen und der vertikalen Richtung wiedergeben.
DE69518801T 1994-06-15 1995-06-14 Bewegungsadaptive Bewegungskompensationskodierungsmethode und -vorrichtung Expired - Fee Related DE69518801T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019940013488A KR0148154B1 (ko) 1994-06-15 1994-06-15 움직임크기에 따른 동영상데이타의 부호화방법 및 장치

Publications (2)

Publication Number Publication Date
DE69518801D1 DE69518801D1 (de) 2000-10-19
DE69518801T2 true DE69518801T2 (de) 2001-01-11

Family

ID=19385333

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69518801T Expired - Fee Related DE69518801T2 (de) 1994-06-15 1995-06-14 Bewegungsadaptive Bewegungskompensationskodierungsmethode und -vorrichtung

Country Status (6)

Country Link
US (1) US5657087A (de)
EP (1) EP0689359B1 (de)
JP (1) JP2801559B2 (de)
KR (1) KR0148154B1 (de)
CN (1) CN1084110C (de)
DE (1) DE69518801T2 (de)

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100211916B1 (ko) * 1995-10-26 1999-08-02 김영환 물체 모양정보 부호화에서의 부호화타입과 모드의 결정방법
JP3183155B2 (ja) 1996-03-18 2001-07-03 株式会社日立製作所 画像復号化装置、及び、画像復号化方法
JP3774954B2 (ja) * 1996-10-30 2006-05-17 株式会社日立製作所 動画像の符号化方法
JPH10210473A (ja) * 1997-01-16 1998-08-07 Toshiba Corp 動きベクトル検出装置
EP2369847B1 (de) * 1997-02-13 2016-04-20 Mitsubishi Denki Kabushiki Kaisha Verfahren zum Dekodieren von Bewegtbildern
EP1809044B1 (de) * 1997-02-14 2008-10-01 Nippon Telegraph and Telephone Corporation Prädikatives Dekodierungsverfahren von Videodaten
WO1998059496A1 (en) * 1997-06-25 1998-12-30 Nippon Telegraph And Telephone Corporation Moving vector predictive coding method and moving vector decoding method, predictive coding device and decoding device, and storage medium stored with moving vector predictive coding program and moving vector decoding program
US7206346B2 (en) * 1997-06-25 2007-04-17 Nippon Telegraph And Telephone Corporation Motion vector predictive encoding method, motion vector decoding method, predictive encoding apparatus and decoding apparatus, and storage media storing motion vector predictive encoding and decoding programs
EP0896300B1 (de) * 1997-08-07 2002-01-30 Matsushita Electric Industrial Co., Ltd. Vorrichtung und Verfahren zur Detektion eines Bewegungsvektors
WO1999025122A2 (en) * 1997-11-07 1999-05-20 Koninklijke Philips Electronics N.V. Coding a sequence of pictures
US6353683B1 (en) 1997-12-10 2002-03-05 Matsushita Electric Industrial Co., Ltd. Method and apparatus of image processing, and data storage media
EP1119975B1 (de) 1998-10-13 2003-04-23 STMicroelectronics Asia Pacific Pte Ltd. VERFAHREN ZUR BESTIMMUNG VON BEWEGUNGSVEKTORFELDERN MIT LOKALER BEWEGUNGSSCHäTZUNG
JP4280353B2 (ja) * 1999-03-19 2009-06-17 キヤノン株式会社 符号化装置、画像処理装置、符号化方法、及び記録媒体
JP3753578B2 (ja) * 1999-12-07 2006-03-08 Necエレクトロニクス株式会社 動きベクトル探索装置および方法
US6609035B1 (en) * 2000-04-25 2003-08-19 Emhart Glass S.A. Adaptive motion controller
KR100683849B1 (ko) 2000-06-28 2007-02-15 삼성전자주식회사 디지털 영상 안정화기능을 갖는 디코더 및 디지털영상안정화방법
DE60238109D1 (de) * 2001-02-19 2010-12-09 Honda Motor Co Ltd Automatisches Zielerkennen mittels Vorlagenvergleich
JP2003143609A (ja) * 2001-08-21 2003-05-16 Canon Inc 画像処理装置、画像処理方法、記録媒体及びプログラム
US7050500B2 (en) * 2001-08-23 2006-05-23 Sharp Laboratories Of America, Inc. Method and apparatus for motion vector coding with global motion parameters
CN1303818C (zh) * 2001-09-12 2007-03-07 皇家飞利浦电子股份有限公司 运动估计和/或补偿
JP2003274410A (ja) * 2002-03-13 2003-09-26 Hitachi Ltd 監視映像の符号化装置及び復号装置並びに符号化方法
KR100931746B1 (ko) 2002-04-19 2009-12-14 파나소닉 주식회사 움직임 벡터 계산방법
JP4120301B2 (ja) * 2002-04-25 2008-07-16 ソニー株式会社 画像処理装置およびその方法
JP2004048390A (ja) * 2002-07-11 2004-02-12 Matsushita Electric Ind Co Ltd 動画像符号化装置及び方法
US7421129B2 (en) * 2002-09-04 2008-09-02 Microsoft Corporation Image compression and synthesis for video effects
GB0227566D0 (en) 2002-11-26 2002-12-31 British Telecomm Method and system for estimating global motion in video sequences
GB0227570D0 (en) 2002-11-26 2002-12-31 British Telecomm Method and system for estimating global motion in video sequences
US7408989B2 (en) * 2003-01-16 2008-08-05 Vix5 Systems Inc Method of video encoding using windows and system thereof
US7558320B2 (en) * 2003-06-13 2009-07-07 Microsoft Corporation Quality control in frame interpolation with motion analysis
US7408986B2 (en) * 2003-06-13 2008-08-05 Microsoft Corporation Increasing motion smoothness using frame interpolation with motion analysis
US7453940B2 (en) * 2003-07-15 2008-11-18 Lsi Corporation High quality, low memory bandwidth motion estimation processor
US10554985B2 (en) 2003-07-18 2020-02-04 Microsoft Technology Licensing, Llc DC coefficient signaling at small quantization step sizes
US7738554B2 (en) 2003-07-18 2010-06-15 Microsoft Corporation DC coefficient signaling at small quantization step sizes
US7580584B2 (en) * 2003-07-18 2009-08-25 Microsoft Corporation Adaptive multiple quantization
US7602851B2 (en) * 2003-07-18 2009-10-13 Microsoft Corporation Intelligent differential quantization of video coding
US8218624B2 (en) * 2003-07-18 2012-07-10 Microsoft Corporation Fractional quantization step sizes for high bit rates
US7801383B2 (en) 2004-05-15 2010-09-21 Microsoft Corporation Embedded scalar quantizers with arbitrary dead-zone ratios
US7751632B2 (en) * 2005-02-15 2010-07-06 Panasonic Corporation Intelligent, dynamic, long-term digital surveilance media storage system
US8588304B2 (en) 2005-03-31 2013-11-19 Panasonic Corporation Video decoding device, video decoding method, video decoding program, and video decoding integrated circuit
US8422546B2 (en) 2005-05-25 2013-04-16 Microsoft Corporation Adaptive video encoding using a perceptual model
US7995649B2 (en) 2006-04-07 2011-08-09 Microsoft Corporation Quantization adjustment based on texture level
US7974340B2 (en) 2006-04-07 2011-07-05 Microsoft Corporation Adaptive B-picture quantization control
US8059721B2 (en) 2006-04-07 2011-11-15 Microsoft Corporation Estimating sample-domain distortion in the transform domain with rounding compensation
US8503536B2 (en) 2006-04-07 2013-08-06 Microsoft Corporation Quantization adjustments for DC shift artifacts
US8130828B2 (en) 2006-04-07 2012-03-06 Microsoft Corporation Adjusting quantization to preserve non-zero AC coefficients
US8711925B2 (en) 2006-05-05 2014-04-29 Microsoft Corporation Flexible quantization
US8340185B2 (en) * 2006-06-27 2012-12-25 Marvell World Trade Ltd. Systems and methods for a motion compensated picture rate converter
KR100772194B1 (ko) * 2006-07-26 2007-11-01 한국전자통신연구원 피사체의 움직임 여부에 기초하여 영상의 선택적 출력이가능한 네트워크 기반 지능형 이동 로봇 및 그 방법
US8238424B2 (en) 2007-02-09 2012-08-07 Microsoft Corporation Complexity-based adaptive preprocessing for multiple-pass video compression
US8498335B2 (en) 2007-03-26 2013-07-30 Microsoft Corporation Adaptive deadzone size adjustment in quantization
US8243797B2 (en) 2007-03-30 2012-08-14 Microsoft Corporation Regions of interest for quality adjustments
US8442337B2 (en) 2007-04-18 2013-05-14 Microsoft Corporation Encoding adjustments for animation content
US8331438B2 (en) 2007-06-05 2012-12-11 Microsoft Corporation Adaptive selection of picture-level quantization parameters for predicted video pictures
JP2009081622A (ja) * 2007-09-26 2009-04-16 Oki Semiconductor Co Ltd 動画像圧縮符号化装置
US8189933B2 (en) 2008-03-31 2012-05-29 Microsoft Corporation Classifying and controlling encoding quality for textured, dark smooth and smooth video content
JP4506875B2 (ja) * 2008-05-19 2010-07-21 ソニー株式会社 画像処理装置および画像処理方法
US8897359B2 (en) 2008-06-03 2014-11-25 Microsoft Corporation Adaptive quantization for enhancement layer video coding
JP2013074571A (ja) * 2011-09-29 2013-04-22 Sony Corp 画像処理装置および方法、プログラム、並びに記録媒体
KR20140006190A (ko) * 2012-06-27 2014-01-16 삼성전자주식회사 광학측정장치 및 그 제어방법
CN104301703A (zh) * 2013-07-16 2015-01-21 联咏科技股份有限公司 匹配搜寻方法与匹配搜寻***
CN104680504B (zh) * 2013-11-26 2018-06-08 杭州海康威视数字技术股份有限公司 场景变化检测方法及其装置
US20150146784A1 (en) * 2013-11-26 2015-05-28 Vixs Systems Inc. Motion compensation with moving window
US10681374B2 (en) * 2017-11-16 2020-06-09 Google Llc Diversified motion using multiple global motion models
CN115442522B (zh) * 2022-08-10 2023-11-21 深圳市贝嘉技术有限公司 基于显微镜的成像调整方法、装置、设备及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0419752B1 (de) * 1989-09-25 1995-05-10 Rai Radiotelevisione Italiana Umfassendes System zur Codierung und Übertragung von Videosignalen mit Bewegungsvektoren
GB9019538D0 (en) * 1990-09-07 1990-10-24 Philips Electronic Associated Tracking a moving object
SE9201183L (sv) * 1992-04-13 1993-06-28 Dv Sweden Ab Saett att adaptivt estimera icke oenskade globala bildinstabiliteter i bildsekvenser i digitala videosignaler
US5473379A (en) * 1993-11-04 1995-12-05 At&T Corp. Method and apparatus for improving motion compensation in digital video coding

Also Published As

Publication number Publication date
JPH0870460A (ja) 1996-03-12
EP0689359B1 (de) 2000-09-13
EP0689359A2 (de) 1995-12-27
US5657087A (en) 1997-08-12
DE69518801D1 (de) 2000-10-19
JP2801559B2 (ja) 1998-09-21
CN1084110C (zh) 2002-05-01
KR0148154B1 (ko) 1998-09-15
KR960003404A (ko) 1996-01-26
CN1115953A (zh) 1996-01-31
EP0689359A3 (de) 1997-05-02

Similar Documents

Publication Publication Date Title
DE69518801T2 (de) Bewegungsadaptive Bewegungskompensationskodierungsmethode und -vorrichtung
DE69313692T2 (de) Kodierung und Dekodierung zur Videokompression mit automatischer Halbbild/Bild Bewegungskompensation auf der Subpixelebene
DE69323156T2 (de) Bilddatenkomprimierungs/Dekomprimierungssystem
DE69118654T2 (de) Progressives Signalkodierungssystem für bewegte Bilder
DE69021500T2 (de) Bedingungsgemässe bewegungskompensierte Interpolation von digitalen Bewegtbildsignalen.
DE69417480T2 (de) Bestimmung von Bewegungsvektoren in einem Videokodierer mit Bilddezimation
DE69434668T2 (de) Adaptives Codierungs- und Decodierungsverfahren mit variabler Länge für Bilddaten
DE69324735T2 (de) Verfahren und vorrichtung zur bewegungsschätzung
DE3751416T2 (de) Bildcodiersystem zum Ueberwachen einer Informationsmenge durch Bildung eines Histogramms.
DE69530336T2 (de) Bewegungskompensation für digitale Videosignale mit Zeilensprung
DE69521966T2 (de) Einrichtung zur Kodierung eines Videosignales bei Anwesenheit eines Leuchtdichtegradienten
DE69123705T2 (de) Verfahren zur Kompression von bewegten Bildsignalen nach dem Zeilensprungverfahren
DE69817460T2 (de) Bildsequenzdekodierungsverfahren
DE69233505T2 (de) Videokodierungssystem
DE69223560T2 (de) Einrichtung zur Verminderung von Quantisierungsstörungen in einem Zwischenbild-Hybrid-Kodierungssystem mit Bewegungskompensation
DE69424825T2 (de) Kodierungsverfahren und -vorrichtung mit Fuzzy-Kontrolle
DE69225556T2 (de) Verfahren zum Bild-zu-Bild-Prädiktion und Bildsignal-Kodier/Dekodiervorrichtung
DE69824554T2 (de) Verfahren und anordnung zum erzeugen eines standbildes mit hoher auflösung
DE69816342T2 (de) Prädiktives Bilddekodierungsverfahren
DE602004002455T2 (de) Bewegungsvektorschätzung durch adaptive zeitliche Vorhersage
DE69228841T2 (de) Vorrichtung zum Kodieren von Bildern
DE19704439C2 (de) Verfahren und Vorrichtung zur Bewegungsschätzung in einem digitalen Videocodierer unter Verwendung von Trajektorien
DE69416662T2 (de) Bewegtbildkodierer
DE69325743T2 (de) Bewegungsabschätzer zur Bestimmung von kodierten Bewegungsvektoren mit variabler Länge
DE19717608B4 (de) Wahrnehmungsfehlerbearbeitungsverfahren und Bildkodierungsvorrichtung, welche dieses Verfahren verwendet

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee