DE19757630C2 - Bewegungsbestimmungsverfahren - Google Patents

Bewegungsbestimmungsverfahren

Info

Publication number
DE19757630C2
DE19757630C2 DE19757630A DE19757630A DE19757630C2 DE 19757630 C2 DE19757630 C2 DE 19757630C2 DE 19757630 A DE19757630 A DE 19757630A DE 19757630 A DE19757630 A DE 19757630A DE 19757630 C2 DE19757630 C2 DE 19757630C2
Authority
DE
Germany
Prior art keywords
motion vector
error
cost function
systematic error
function value
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
DE19757630A
Other languages
English (en)
Other versions
DE19757630A1 (de
Inventor
Dong-Seek Park
John Villasenor
Feng Chen
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
University of California
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, University of California filed Critical Samsung Electronics Co Ltd
Publication of DE19757630A1 publication Critical patent/DE19757630A1/de
Application granted granted Critical
Publication of DE19757630C2 publication Critical patent/DE19757630C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/144Movement detection
    • H04N5/145Movement estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • 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

Landscapes

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

Description

Die vorliegende Erfindung betrifft ein Bewegungsbestimmungsverfahren, und insbesondere ein Bewegungsbestimmungsverfahren, welches dazu dient, einen Bewegungsvektor zu erhalten, der eine bessere und höhere Kompressionsrate für die Kompression von Bilddaten ergibt, unter Verwendung einer Bitratenverzerrungstechnik.
In EP 707428 A1 wird ein Datenkompressionsverfahren beschrieben, bei dem jeder Bildrahmen in eine vorbestimmte Anzahl an Makroblöcken unterteilt wird. Aus jedem der entsprechenden Makroblöcke in einem vorherigen Rahmen wird ein vorliegender Makroblock ausgewählt und ein Bewegungsvektor kodiert. Dabei wird eine Differenz zwischen einem momentanen Markroblock und dem vorliegenden Makroblock berücksichtigt. Zunächst wird ein Bewegungsvektor erhalten, der eine vorbestimmte Fehlerfunktion minimiert. Weiterhin erfolgt eine Subtraktion der Komponenten zwischen dem Bewegungsvektor und einem aus drei Bewegungsvektorkandidaten ermittelten Prädikationsvektor. Dabei erhält man eine Bitanzahl entsprechend einer Anzahl an Bits, die zum Kodieren der Differenz erforderlich ist.
Im allgemeinen ist eine große Menge an Videodaten dazu erforderlich, digital bearbeitet zu werden, um digitale Bilder zu erzeugen, und Eigenschaften in mehreren Dimensionen darzustellen. Um ein derartiges Digitalbild und die entsprechende große Menge an Daten zu verarbeiten, und zur Übertragung und Speicherung des bearbeiteten Digitalbildes, ist daher eine Datenkompression erforderlich. Kompressionstechniken werden teilweise auf der Grundlage der Bandbreite der Kommunikationsleitung verwirklicht, die zur Übertragung verwendet wird, oder auf der Grundlage der Kapazität eines Speichermediums zum Speichern von Daten.
Die Standardisierung der Kompression sich bewegender Bilder (also digitaler Bilddaten) wurde von der Moving Picture Expert Group (MPEG) als JTC1/SC29 der International Organization for Standardization-International Electrotechnical Commission (IOS-IEC) entwickelt. Darüber hinaus hat die International Telecommunications Union - Telecommunications Standardization Sector (ITU-T) Forschungsvorhaben durchgeführt, um Videokodierungsstandards auf der Grundlage eines ATM-Protokolls zu erzeugen, für die Bildübertragung in einem zukünftigen B-ISDN, und hat kürzlich einige H.26x-Standards vorgeschlagen. Der H.263-Vorschlag der H.26x-Standards betrifft die Videokodierung für Kommunikationen mit niedriger Bitrate, und kann für derartige Geräte wie beispielsweise ein Videokonferenzsystem verwendet werden.
Bei dem H.263-Standard wird bei der Übertragung einer Gruppe von Bildern ein Bild in einem vorbestimmten Zeitintervall abgetastet, und werden die abgetasteten Bilder sowohl in einer Intern-Betriebsart als auch in einer Zwischen-Betriebsart kodiert.
Zur Beseitigung zeitlicher Redundanzen wird ein Bewegungsbestimmungsverfahren eines Blockübereinstimmungsalgorithmus verwendet (in der Zeitachsenrichtung für die Bewegungskompensationskodierung). Bei diesem Blockübereinstimmungsalgorithmus wird jeder Rahmen in Makroblöcke mit vorbestimmter Größe unterteilt, und erhält man einen vorliegenden Block, der ein ähnliches Bild wie vorherige und momentane Rahmen aufweist. Dann werden ein Bewegungsvektor und die Differenz zwischen einem entsprechenden Block und dem vorhandenen Block kodiert.
Im allgemeinen wird bei der Bestimmung eines Bewegungsvektors mit maximaler Blockübereinstimmung ein vorhandener Block als ein Block ausgewählt, der den kleinsten Funktionswert aufweist, der aus einer Bestimmungsfunktion ermittelt wird, beispielsweise der Funktion einer Summe der Absolutdifferenzen (SAD) oder einer Funktion des mittleren absoluten Fehlers (MAE):
wobei f und fi die Größe der Signale in einem momentanen Rahmen bzw. in dem vorherigen Rahmen bezeichnen, und M und N die Anzahl horizontal und vertikal angeordneter Pixel in einem Block angeben.
Zur Erhöhung einer Coderate bei der Bewegungsvektorkodierung wird die Anzahl an Bits dadurch verringert, daß nur die Differenz zwischen einem entsprechenden Block und einem Block, der aus benachbarten Blöcken ausgesucht wird, durch ein vorbestimmtes Vorhersageverfahren kodiert wird.
Fig. 1 erläutert ein Bewegungsvektorvorhersageverfahren, welches von dem H.263-Standard empfohlen wird. In Fig. 1 ist mit MV ein Bewegungsvektor eines momentanen Blocks bezeichnet. Die Bezeichnungen MV1, MV2 und MV3 bezeichnen vorliegende Prädiktoren, und bezeichnen jeweils einen Bewegungsvektor eines vorherigen Blocks, einen Bewegungsvektor eines oberen Blocks bzw. einen Bewegungsvektor eines oberen rechten Blocks. Ein Prädiktor wird aus diesen vorliegenden Prädiktoren durch Berechnung eines Medianwerts erhalten, unter Verwendung eines Median-Filters. Nur die Differenz zwischen dem Bewegungsvektor des momentanen Blocks und dem Prädiktor wird kodiert und übertragen. Obwohl der Bewegungsvektor des momentanen Blocks MV im Bereich zwischen (-16, 0), (0, -16), und (16, -16) für beispielsweise einen 16 × 16-Block liegt, verringert die voranstehend geschilderte Vorhersagekodierung die Menge an Daten, die übertragen und mit variabler Länge kodiert werden muß, da ein geringer Unterschied zwischen Bewegungsvektoren benachbarter Blöcke vorhanden ist.
Fig. 2 zeigt schematisch einen Videoquellenkodierer für den H.263-Standard. In Fig. 2 weist der Quellenkodierer einen Subtrahierer 10 zum Subtrahieren des Ausgangssignals eines Invers-DCT-Wandlers 20 von einem Eingangsvideosignal auf, einen Selektor 12 zur Auswahl des Ausgangssignals des Subtrahierers 10 oder des Ausgangssignals des Invers-DCT-Wandlers 20, entsprechend einem Steuersignal einer Quantisierungssteuerung 22, einen DCT-Wandler 14 für die DCT-Wandlung des Ausgangssignals des Selektors 12, einen Quantisierer 16 zum Quantisieren des Ausgangssignals des DCT-Wandlers 14 und zur Erzeugung eines Quantisierungsindex für Umwandlungskoeffizienten, einen Invers-Quantisierer 18 zur inversen Quantisierung des Ausgangssignals des Quantisierers 16 für eine Bestimmungskodierung, wobei der Invers-DCT-Wandler 20 zur Invers-DCT-Umwandlung des Ausgangssignals des Invers- Quantisierers 18 dient, und die Quantisierungssteuerung 22 zum Kontrollieren der Quantisierung in dem Quantisierer 16 dient, und zur Erzeugung und Ausgabe eines Steuersignals an den Selektor 12 und den Selektor 18 zur Auswahl einer Intra- Rahmenkodierung (im Rahmen) und einer Inter-Rahmenkodierung (zwischen den Rahmen) und eines Quantisiererindex.
Das Ausgangssignal des Invers-DCT-Wandlers 20 ist mit einem ersten Eingang eines Addierers 26 gekoppelt, dessen anderer Eingang mit einem Ausgang des zweiten Selektors 28 gekoppelt ist. Der Ausgang des Addierers 26 ist mit einem Eingang eines Bildspeichers 24 mit bewegungskompensierter variabler Verzögerung gekoppelt. Ein anderer Eingang des Speichers 24 ist mit dem Eingangsvideosignal gekoppelt. Das Ausgangssignal des Speichers enthält einen Bewegungsvektor und ist ebenfalls mit einem Eingang des Subtrahierers 10 und des Selektors 28 gekoppelt.
Die Steuerung 22 weist Ausgangssteuersignale auf, beispielsweise eine Marke (Flag) für die Intra-Inter-Kodierung und eine Marke zur Anzeige einer Übertragung.
Das Blockübereinstimmungsverfahren auf der Grundlage von SAD- und MAE-Funktionen weist allerdings zahlreiche Probleme auf. Nimmt man beispielsweise, wie in Fig. 2 gezeigt, an, daß die kleinste SAD gleich N ist, wenn ein Bewegungsvektor gleich (-16, -16) ist, und die SAD gleich M ist, wenn ein Bewegungsvektor gleich (0, 0) ist, so ist der Bewegungsvektor des momentanen Makroblocks (-16, -16) in dem Blockübereinstimmungsverfahren auf der Grundlage der SAD oder des MAE. Ist jedoch M nur geringfügig größer als N, so führt die Auswahl des Bewegungsvektors (-16, -16) zu einer weniger effizienten Kompressionsrate als die Auswahl des Bewegungsvektors (0, 0).
Darüber hinaus ist das konventionelle Verfahren in der Hinsicht ineffizient, daß es eine Berücksichtigung der Koderate und der Fehlerbeziehung bezüglich der Differenz zwischen Bewegungsvektoren vernachlässigt.
Angesichts der voranstehenden Schwierigkeiten und Nachteile beim Stand der Technik besteht der Vorteil der vorliegenden Erfindung in der Bereitstellung eines Bewegungsbestimmungsverfahrens, welches Daten effizienter komprimiert als der Stand der Technik, durch Auswahl eines Bewegungsvektors zur Ermöglichung einer maximalen Kompressionsrate in einer Ratenzulässigkeitsgrenze, wenn ein Videokodierer auf der Grundlage des H.263-Standards verwirklicht wird.
Um den voranstehend geschilderten Vorteil und weitere Vorteile der vorliegenden Erfindung zu verwirklichen wird ein Bewegungsbestimmungsverfahren zur Verfügung gestellt, bei welchem jeder Bildrahmen in eine vorbestimmte Anzahl an Makroblöcken unterteilt wird, und ein vorliegender Makroblock aus jedem der ähnlichen Makroblöcke in einem vorherigen Rahmen ausgewählt wird, und ein Bewegungsvektor und die Differenz zwischen einem momentanen Makroblock und dem vorliegenden Makroblock kodiert werden. Genauer gesagt umfaßt das Bewegungsbestimmungsverfahren folgende Schritte: (a) Erhalten eines Bewegungsvektors (x0, y0), der eine vorbestimmte Fehlerfunktion minimiert, (b) Annahme eines bevorzugten Bewegungsvektors (x, y), (c) Berechnung einer Differenz (x-diff, y-diff) zwischen (x0, y0) und (x, y), (d) Erhalten einer Bitanzahl entsprechend der Anzahl an Bits, die zum Kodieren von x-diff und y-diff erforderlich ist, (e) Bestimmung eines systematischen Fehlers auf der Grundlage eines Modells für den systematischen Fehler entsprechend der Bitanzahl, (f) Erhalten eines endgültigen Kostenfunktionswertes mit Hilfe einer Differenz zwischen einem Kostenfunktionswert und einem systematischen Fehler, (g) Vergleichen des endgültigen Kostenfunktionswertes mit einer vorbestimmten Zulässigkeitsgrenze, (h) Einstellung des angenommenen Bewegungsvektors (x, y) als Bewegungsvektor für einen momentanen Makroblock und Aktualisierung der Zulässigkeitsgrenze unter Verwendung des Kostenfunktionswertes, wenn der Kostenfunktionswert kleiner als der vorbestimmte Grenzwert im Schritt (g) ist, und (i) Weglassen des angenommenen Bewegungsvektors (x, y), wenn der Kostenfunktionswert nicht kleiner als der vorbestimmte Grenzwert im Schritt (g) ist.
Die Erfindung wird nachstehend anhand eines zeichnerisch dargestellten Ausführungsbeispiels näher erläutert, aus welchem weitere Vorteile und Merkmale hervorgehen. Es zeigt:
Fig. 1 ein Bewegungsvektorvorhersageverfahren, welches bei dem H.263-Standard vorgeschlagen wird;
Fig. 2 eine schematische Darstellung eines Videoquellenkodierers in dem H.263-Standard;
Fig. 3 eine schematische Darstellung eines Bewegungsbestimmungsverfahrens gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung; und
Fig. 4 ein Flußdiagramm des Bewegungsbestimmungsverfahrens gemäß der bevorzugten Ausführungsform der vorliegenden Erfindung.
Theoretisch setzt eine Koderaten-Fehlerbeziehung allgemein die Anzahl an Fehlern in Beziehung zu einer vorgegebenen Koderate, oder zu einer Koderate, die unter vorgegebenen Fehlern möglich ist, unter Verwendung der Beziehung, die aus einer Koderate und einem Fehler bestimmt wird.
Bei der vorliegenden Erfindung beruht die Koderaten- Fehlerbeziehung auf der Lagrange-Kostenfunktion, die folgendermaßen aussieht:
J = D + λR = D + λ(Rmv + Rres) (2)
wobei J einen zulässigen Fehler bezeichnet, und D einen Fehler eines Rahmens bezeichnet, der kodiert wird (einschließlich DCT-Transformation und Quantisierung), und dekodiert wird (einschließlich inverser Transformation und Invers- Quantisierung). Bei der vorliegenden Erfindung kann der voranstehend erwähnte SAD- oder MAE-Wert als D verwendet werden. Die Variable Rmv bezeichnet die Anzahl an Bits, die zur Kodierung eines Bewegungsvektors verwendet wird, und Rres bezeichnet die Anzahl an Bits, die unter Berücksichtigung eines Fehlers nach der Quantisierung und nach der Invers- Quantisierung hinzugefügt wird. Das Symbol λ wird als Lagrange-Multiplikator bezeichnet, der einer Steigung einer Koderaten-Fehlerkurve entspricht, und einen negativen Wert aufweist, da eine Koderate invers proportional zur Anzahl an Fehlern ist.
Gemäß der vorliegenden Erfindung wird der Bewegungsvektor erhalten, der die maximale Kompressionsrate bei einem vorgegebenen zulässigen Fehler J ergibt.
Eine bevorzugte Ausführungsform der vorliegenden Erfindung wird unter Bezugnahme auf die Fig. 3 und 4 erläutert. Fig. 3 zeigt schematisch ein Bewegungsbestimmungsverfahren gemäß der bevorzugten Ausführungsform der vorliegenden Erfindung, und Fig. 4 ist ein Flußdiagramm des Bewegungsbestimmungsverfahrens gemäß der vorliegenden Erfindung.
Im Schritt S40 wird ein bevorzugter Bewegungsvektor (x, y) angenommen. Der bevorzugte Bewegungsvektor (x, y) wird freiwählbar zwischen (-16, -16) und (16, 16) im Falle eines 16 × 16-Blocks ausgewählt, und vorzugsweise wird einer unter MV1, MV2 und MV3 von Fig. 1 ausgewählt. Dann wird im Schritt S42 ein Bewegungsvektor (x0, y0) erhalten, auf der Grundlage der SAD-Funktion entsprechend dem H.263-Standard.
Im Schritt S44 wird die Differenz (x-diff, y-diff) zwischen (x, y) und (x0, y0) berechnet. Diese Werte werden einer Nachschlagetabelle zugeführt, um festzustellen, wieviele Bits zur Entropiekodierung der Werte erforderlich sind. Im Schritt S46 gibt die Nachschlagetabelle b-x und b-y aus, welche Bit- Budgets zum Kodieren von x-diff und y-diff darstellen.
Dann wird im Schritt S48 ein systematischer Fehler bestimmt, welcher der Kostenfunktion J hinzuaddiert werden soll, unter Verwendung von b-x und b-y. Der Wert des systematischen Fehlers wird von einem Modell für den systematischen Fehler erhalten, und es wird ein Abschnitt vor oder hinter einer Vertikalachse einer Gauss-Funktion, oder ein Quadrat der Gauss-Funktion oder anderer Funktionen (beispielsweise ein lineares Modell) werden als das Modell für den systematischen Fehler entsprechend dem Einsatz der vorliegenden Erfindung verwendet, wie in Fig. 3 gezeigt ist. Die Horizontalachse des Modells für den systematischen Fehler gibt Bit-Budgetinformation an, also b-x und b-y, und die Vertikalachse gibt den Wert des systematischen Fehlers an. Der Wert für den systematischen Fehler liegt im allgemeinen zwischen 50 und 100, und weist dieselbe Einheit und Bedeutung wie ein Kostenfunktionswert auf. Im Schritt S50 wird der systematische Fehler von dem Kostenfunktionswert J subtrahiert, wodurch ein endgültiger Kostenfunktionswert J' erhalten wird.
Im Schritt S52 erfolgt eine Ermittlung, ob der endgültige Kostenfunktionswert J' kleiner als eine vorbestimmte Zulässigkeitsgrenze SAD_min ist. Ist der Kostenfunktionswert kleiner als der Grenzwert, so wird der momentane angenommene Bewegungsvektor (x, y) als ein Bewegungsvektor eines momentanen Makroblocks bestimmt, und wird SAD_min unter Verwendung von J' im Schritt S54 erneuert. Wenn jedoch der Kostenfunktionswert nicht kleiner als der Grenzwert ist, wird im Schritt S56 der angenommene Wert (x, y) weggelassen.
Die Schritte S42 bis S56 werden dadurch wiederholt durchgeführt, daß erneut ein bevorzugter Bewegungsvektor (x, y) angenommen wird. Ein kleiner Bewegungsvektor wird mit vorgegebenen Fehlern durch Wiederholung derselben Prozedur erhalten, beispielsweise zweimal oder dreimal.
Wie voranstehend geschildert, wird bei dem Bewegungsbestimmungsverfahren gemäß der vorliegenden Erfindung ein kleiner Bewegungsvektor durch eine heuristische Vorgehensweise ausgewählt, so daß die Kompressionsrate innerhalb einer Koderatenzulässigkeitsgrenze erhöht werden kann, auf der Grundlage einer Koderaten-Fehlerbeziehung in dem konventionellen H.263-Standard.
Da in dem H.263-Standard, der von der ITU-T empfohlen wird, ein Bewegungsvektorauffindungsverfahren nicht definiert ist, sondern dem Wunsch eines Benutzers überlassen ist, ist das voranstehend geschilderte Bewegungsbestimmungsverfahren mit dem H.263-Standard verträglich.
Es wurde daher ein neues Bewegungsbestimmungsverfahren gezeigt und beschrieben, welches sämtliche Ziele und Vorteile erreicht, die in diesem Zusammenhang gewünscht sind. Fachleuten auf diesem Gebiet werden jedoch, nach Berücksichtigung der Beschreibung und der beigefügten Zeichnungen, welche bevorzugte Ausführungsformen der Erfindung erläutern, zahlreiche Änderungen, Modifikationen, Variationen und andere Nutzungen und Einsatzzwecke der vorliegenden Erfindung deutlich werden. Sämtliche derartigen Änderungen, Modifikationen, Variationen und andere Nutzungen und Einsatzzwecke, die nicht vom Wesen und Umfang der vorliegenden Erfindung abweichen, die sich aus der Gesamtheit der vorliegenden Anmeldeunterlagen ergeben, sollen vom Umfang der beigefügten Patentansprüche umfaßt sein.

Claims (7)

1. Datenkompressionsverfahren, welches die Schritte umfaßt, jeden Bildrahmen in eine vorbestimmte Anzahl an Makroblöcken zu unterteilen, einen vorliegenden Makroblock aus jedem der entsprechenden Makroblöcke in einem vorherigen Rahmen auszuwählen, und einen Bewegungsvektor und eine Differenz zwischen einem momentanen Makroblock und dem vorliegenden Makroblock zu kodieren, wobei das Bewegungsbestimmungsverfahren weiterhin folgende Schritte umfaßt:
  • a) Erhalten eines Bewegungsvektors (x0, y0), der eine vorbestimmte Fehlerfunktion minimiert;
  • b) Annahme eines bevorzugten Bewegungsvektors (x, y);
  • c) Berechnung einer Differenz (x-diff, y-diff) zwischen (x0, y0) und (x, y);
  • d) Erhalten einer Bitanzahl entsprechend einer Anzahl an Bits, die zum Kodieren von x-diff und y-diff erforderlich ist;
  • e) Bestimmung eines systematischen Fehlers auf der Grundlage eines Modells für den systematischen Fehler entsprechend der Bitanzahl;
  • f) Erhalten eines endgültigen Kostenfunktionswertes über die Differenz zwischen einem Kostenfunktionswert und einem systematischen Fehler;
  • g) Vergleichen des endgültigen Kostenfunktionswertes mit einer vorbestimmten Zulässigkeitsgrenze;
  • h) Einstellung des angenommenen Bewegungsvektors (x, y) als Bewegungsvektor für einen momentanen Makroblock, und Aktualisierung der Zulässigkeitsgrenze unter Verwendung des Kostenfunktionswertes, wenn der Kostenfunktionswert kleiner als der Grenzwert in dem Schritt (g) ist; und
  • i) Weglassen des angenommenen Bewegungsvektors (x, y), wenn der Kostenfunktionswert nicht kleiner ist als der Grenzwert im Schritt (g).
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß der Schritt (b) den Schritt der Auswahl eines der Bewegungsvektoren eines vorherigen Blocks, eines oberen Blocks, und eines oberen rechten Blocks umfaßt.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Fehlerfunktion die Summe der Absolutdifferenz (SAD) ist, die durch folgende Gleichung bestimmt wird:
wobei f bzw. fi die Größe des Signals in einem momentanen Rahmen bzw. einem vorherigen Rahmen bezeichnet.
4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Fehlerfunktion ein mittlerer absoluter Fehler (MAE) ist, der aus folgender Gleichung bestimmt wird:
wobei f bzw. fi die Größe des Signals in einem momentanen Rahmen bzw. in einem vorherigen Rahmen bezeichnet, und M bzw. N die Anzahl horizontal bzw. vertikal angeordneter Pixel in jedem Block bezeichnet.
5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß das Modell für den systematischen Fehler linear ist.
6. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß das Modell für den systematischen Fehler eine Gauss-Funktion ist.
7. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß das Modell für den systematischen Fehler das Quadrat einer Gauss-Funktion ist.
DE19757630A 1997-03-05 1997-12-23 Bewegungsbestimmungsverfahren Expired - Fee Related DE19757630C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/811,189 US5825930A (en) 1997-03-05 1997-03-05 Motion estimating method

Publications (2)

Publication Number Publication Date
DE19757630A1 DE19757630A1 (de) 1998-09-17
DE19757630C2 true DE19757630C2 (de) 2002-11-28

Family

ID=25205823

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19757630A Expired - Fee Related DE19757630C2 (de) 1997-03-05 1997-12-23 Bewegungsbestimmungsverfahren

Country Status (6)

Country Link
US (1) US5825930A (de)
JP (1) JPH10327420A (de)
KR (1) KR100247997B1 (de)
CN (1) CN1130916C (de)
DE (1) DE19757630C2 (de)
GB (1) GB2322991B (de)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997017797A2 (en) * 1995-10-25 1997-05-15 Sarnoff Corporation Apparatus and method for quadtree based variable block size motion estimation
DE69836473T2 (de) * 1997-09-23 2007-09-20 Koninklijke Philips Electronics N.V. Bewegungsschätzung und bewegungskompensierte interpolation
JPH11243551A (ja) * 1997-12-25 1999-09-07 Mitsubishi Electric Corp 動き補償装置と動画像符号化装置及び方法
US7016413B2 (en) * 1998-03-20 2006-03-21 International Business Machines Corporation Adaptively encoding a picture of contrasted complexity having normal video and noisy video portions
KR100778468B1 (ko) * 2000-12-12 2007-11-21 엘지전자 주식회사 움직임 추정 최적화 방법 및 장치
DE10138962B4 (de) * 2001-08-08 2011-05-12 Rohde & Schwarz Gmbh & Co. Kg Verfahren zur Erkennung von aktiven Codesequenzen
KR100774296B1 (ko) 2002-07-16 2007-11-08 삼성전자주식회사 움직임 벡터 부호화 방법, 복호화 방법 및 그 장치
US7023921B2 (en) * 2002-08-06 2006-04-04 Motorola, Inc. Method and apparatus for determining block match quality
JP4841101B2 (ja) * 2002-12-02 2011-12-21 ソニー株式会社 動き予測補償方法及び動き予測補償装置
US7403566B2 (en) * 2003-06-03 2008-07-22 Hewlett-Packard Development Company, L.P. System, computer program product, and method for transmitting compressed screen images from one computer to another or many computers
CN1305292C (zh) * 2003-09-15 2007-03-14 北京中星微电子有限公司 对连续图像帧间偏移的估计方法
CN100353768C (zh) * 2003-11-26 2007-12-05 联发科技股份有限公司 在视频压缩系统中进行运动估测的方法及相关装置
US20080037642A1 (en) * 2004-06-29 2008-02-14 Sony Corporation Motion Compensation Prediction Method and Motion Compensation Prediction Apparatus
KR100657919B1 (ko) * 2004-12-13 2006-12-14 삼성전자주식회사 화상 데이터의 공간상 예측 장치 및 방법과 그를 이용한부호화 장치 및 방법, 화상 데이터의 공간상 예측 보상장치 및 방법과 그를 이용한 복호화 장치 및 방법
EP1874059A4 (de) 2005-03-22 2011-05-04 Panasonic Corp Codierungseinrichtung und dynamisches bildaufzeichnungssystem mit der codierungseinrichtung
JP4064973B2 (ja) * 2005-03-23 2008-03-19 株式会社東芝 ビデオエンコーダ及びこれを用いた携帯無線端末装置
KR100745765B1 (ko) * 2006-04-13 2007-08-02 삼성전자주식회사 화상 데이터의 공간상 예측 장치 및 방법과 그를 이용한부호화 장치 및 방법, 화상 데이터의 공간상 예측 보상장치 및 방법과 그를 이용한 복호화 장치 및 방법
JP4461165B2 (ja) * 2007-09-26 2010-05-12 株式会社東芝 画像処理装置、方法およびプログラム
KR101445791B1 (ko) * 2008-05-10 2014-10-02 삼성전자주식회사 움직임 벡터 변환을 이용한 비월 주사 영상 부호화/복호화방법 및 장치
JP5339855B2 (ja) * 2008-10-31 2013-11-13 キヤノン株式会社 動きベクトル探索装置、動きベクトル探索方法、画像処理装置、画像処理方法、プログラム及び記憶媒体
TWI479455B (zh) * 2011-05-24 2015-04-01 Altek Corp 全對焦影像之建立方法
KR101349111B1 (ko) * 2013-07-04 2014-01-10 상명대학교 천안산학협력단 다중 참조 영상 검색 방법
KR101356821B1 (ko) * 2013-07-04 2014-01-28 상명대학교 천안산학협력단 움직임 추정 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5278647A (en) * 1992-08-05 1994-01-11 At&T Bell Laboratories Video decoder using adaptive macroblock leak signals
EP0707428A1 (de) * 1994-10-10 1996-04-17 Wang, Pierre Verfahren zur differentiellen Kodierung von Bewegungsvektoren mit Mittelwertprädiktion
US5550847A (en) * 1994-10-11 1996-08-27 Motorola, Inc. Device and method of signal loss recovery for realtime and/or interactive communications

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2728091B1 (fr) * 1994-12-13 1997-01-31 Thomson Consumer Electronics Procede de selection de vecteurs mouvement et dispositif de traitement d'images mettant en oeuvre ledit procede
US5654759A (en) * 1995-02-15 1997-08-05 Hitachi America Ltd. Methods and apparatus for reducing blockiness in decoded video
US5703966A (en) * 1995-06-27 1997-12-30 Intel Corporation Block selection using motion estimation error
US5682204A (en) * 1995-12-26 1997-10-28 C Cube Microsystems, Inc. Video encoder which uses intra-coding when an activity level of a current macro-block is smaller than a threshold level
US5650860A (en) * 1995-12-26 1997-07-22 C-Cube Microsystems, Inc. Adaptive quantization

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5278647A (en) * 1992-08-05 1994-01-11 At&T Bell Laboratories Video decoder using adaptive macroblock leak signals
EP0707428A1 (de) * 1994-10-10 1996-04-17 Wang, Pierre Verfahren zur differentiellen Kodierung von Bewegungsvektoren mit Mittelwertprädiktion
US5550847A (en) * 1994-10-11 1996-08-27 Motorola, Inc. Device and method of signal loss recovery for realtime and/or interactive communications

Also Published As

Publication number Publication date
GB9800091D0 (en) 1998-03-04
KR19980079371A (ko) 1998-11-25
US5825930A (en) 1998-10-20
DE19757630A1 (de) 1998-09-17
GB2322991A (en) 1998-09-09
KR100247997B1 (ko) 2000-03-15
CN1130916C (zh) 2003-12-10
GB2322991B (en) 1999-02-17
CN1219825A (zh) 1999-06-16
JPH10327420A (ja) 1998-12-08

Similar Documents

Publication Publication Date Title
DE19757630C2 (de) Bewegungsbestimmungsverfahren
DE69131438T2 (de) Adaptive Bewegungskompensation für das digitale Fernsehen
DE69425919T2 (de) Adaptive Komprimierung von digitalen Videodaten
DE60015566T2 (de) Verfahren und vorrichtung zur komprimierung eines bewegungsvektorfeldes
DE69817460T2 (de) Bildsequenzdekodierungsverfahren
DE69535228T2 (de) Bildumsetzungsvorrichtung
DE60204447T2 (de) Verfahren zur codierung und decodierung von bewegungsschätzungen
DE69428019T2 (de) Verfahren und vorrichtung zur kodierung/dekodierung von bewegungsvektoren, und verfahren und vorrichtung zur kodierung/dekodierung von bildsignalen
DE69131257T2 (de) Verfahren zur Kompression von bewegten Bildsignalen nach dem Zeilensprungverfahren
DE60319239T2 (de) Bewegungsschätzung mit gewichteter vorhersage
DE69322079T2 (de) Videokoder mit zwei schichten
DE69323156T2 (de) Bilddatenkomprimierungs/Dekomprimierungssystem
DE69324993T2 (de) Verfahren und Vorrichtung zum Quantisieren und Dequantisieren von Bildsignalen
DE69021500T2 (de) Bedingungsgemässe bewegungskompensierte Interpolation von digitalen Bewegtbildsignalen.
DE10300528B4 (de) Berechnungsverfahren für einen Vorhersage-Bewegungsvektor
DE69031045T2 (de) Einrichtung zur adaptiven Zwischenbild-Prädiktionsdekodierung eines Videosignals
DE60027955T2 (de) Verfahren und Vorrichtung zur kontextbasierten Inter/Intra Kodierungsmodeauswahl
DE69232063T2 (de) Adaptive Bewegungskompensation mit mehreren Bewegungskompensatoren
DE69933483T2 (de) Vorrichtung und Verfahren zum Codieren mit bewegungskompensierter Vorhersage
DE69628467T2 (de) Videokodierung- und dekodierungsvorrichtung
DE69620160T2 (de) Bildkodierungsgerät und Bilddekodierungsgerät
DE69525525T2 (de) Bildverarbeitungssystem unter Verwendung von Pixel-zu-Pixel Bewegungsschätzung und Bilddezimation
DE69632232T2 (de) Verfahren und Vorrichtung zur Komprimierung von Videoinformationen mit bewegungsabhängiger Prädiktion
DE69417480T2 (de) Bestimmung von Bewegungsvektoren in einem Videokodierer mit Bilddezimation
DE69824554T2 (de) Verfahren und anordnung zum erzeugen eines standbildes mit hoher auflösung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8127 New person/name/address of the applicant

Owner name: SAMSUNG ELECTRONICS CO. LTD., SUWON, KYUNGKI, KR U

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee