DE602004007682T2 - Leistungsoptimiertes colokalisiertes bewegungschätzverfahren - Google Patents

Leistungsoptimiertes colokalisiertes bewegungschätzverfahren Download PDF

Info

Publication number
DE602004007682T2
DE602004007682T2 DE602004007682T DE602004007682T DE602004007682T2 DE 602004007682 T2 DE602004007682 T2 DE 602004007682T2 DE 602004007682 T DE602004007682 T DE 602004007682T DE 602004007682 T DE602004007682 T DE 602004007682T DE 602004007682 T2 DE602004007682 T2 DE 602004007682T2
Authority
DE
Germany
Prior art keywords
block
current
motion estimation
motion vector
sample data
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.)
Active
Application number
DE602004007682T
Other languages
English (en)
Other versions
DE602004007682D1 (de
Inventor
Joel c/o Societe JUNG
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.)
Entropic Communications LLC
Original Assignee
NXP BV
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 NXP BV filed Critical NXP BV
Publication of DE602004007682D1 publication Critical patent/DE602004007682D1/de
Application granted granted Critical
Publication of DE602004007682T2 publication Critical patent/DE602004007682T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • 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/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • 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/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft ein Verfahren zur Bewegungsschätzung und ein Gerät, das geeignet ist, eine Abfolge von Bildfeldern zu verarbeiten, wobei ein Bildfeld in Blöcke von Abtastdaten aufgeteilt ist.
  • Die vorliegende Erfindung betrifft ein vorhersagendes Codierverfahren auf Blockbasis, das ein solches Bewegungsschätzungsverfahren umfasst. Sie betrifft ebenfalls das entsprechende Codiergerät.
  • Die vorliegende Erfindung betrifft letztlich ein Computerprogramm zum Anwenden des Bewegungsschätzungsverfahrens.
  • Die Erfindung ist insbesondere von Bedeutung für Produkte, die ein digitales Videocodiergerät eingebaut haben, wie etwa zum Beispiel Home-Server, digitale Videoaufzeichnungsgeräte, Camcorder und insbesondere Mobilfunktelefone oder Minicomputer, wobei das Gerät eine eingebaute Kamera umfasst, die fähig ist, Videodaten zu erfassen und zu codieren, bevor sie gesendet werden.
  • ALLGEMEINER STAND DER TECHNIK
  • In einem herkömmlichen Videocodiergerät kommen die meisten Datenübertragungen, und als eine Folge, ein großer Teil des Leistungsverbrauchs, von der Bewegungsschätzung. Bewegungsschätzung besteht aus dem Suchen nach der besten Übereinstimmung zwischen einem aktuellen Block und einer Gruppe von mehreren ähnlichen Referenzblöcken, gemäß eines Rate-Distortion-Kriteriums, einem Unterschied zwischen dem aktuellen Block und einem ähnlichen Referenzblock, der einen Restfehlerblock bildet, von dem ein Distortion-Wert abgeleitet wir. Allerdings ist ein solches Verfahren zur Bewegungsschätzung nicht optimal, insbesondere im Falle eines Videocodiergeräts, das in einem tragbaren Gerät mit begrenzter Leistung eingebaut ist.
  • Mehrere Autoren haben Verfahren für niedrige Leistung entwickelt. Einige davon schlagen rechenbetonte Vereinfachungen vor: solche Verfahren sind nicht mehr ausreichend. Andere versuchen Datenzugriffe zu minimieren.
  • Im Raumbereich schlägt die Veröffentlichung mit dem Titel „A Low Power Video Encoder with Power, Memory and Bandwidth Scalability", von N. Chaddha und M. Vishwanath, 9th International Conference an VLSI Design, Seiten 258 bis 263, Januar 1996 eine Technik vor, die auf einer hierarchischen Vektor-Quantifizierung basiert, welche die Fähigkeit für das Codiergerät ermöglicht, seinen Leistungsverbrauch abhängig von der vorhandenen Bandbreite und der erforderlichen Bildqualität zu ändern.
  • Im Zeitbereich schlägt die Veröffentlichung mit dem Titel „Motion Estimation for Low-Power Devices", von C. De Vleeschouwer und T. Nilsson, ICIP2001, Seiten 953 bis 959, September 2001, vor, die herkömmliche Bewegungsschätzung zu vereinfachen, jedoch auf Kosten einer niedrigeren Kompressionsleistung.
  • Nachteile dieser Stände der Technik sind, dass entweder das Verfahren zur Bewegungsschätzung die Bildqualität zu sehr reduziert, oder dass kein ausreichendes Abspeichern der Datenübertragung erreicht wird.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Es ist Aufgabe der Erfindung, einen effizienten Weg vorzuschlagen, um die Datenübertragung zu reduzieren, während eine zufrieden stellende bildliche Qualität erhalten bleibt.
  • Zu diesem Zwecke ist das Verfahren zur Bewegungsschätzung gemäß der Erfindung dadurch gekennzeichnet, dass es den Schritt umfasst, einen Restfehlerblock im Zusammenhang mit einem Bewegungsvektorkandidaten auf der Basis eines aktuellen Blocks, der in einem aktuellen Bildfeld enthalten ist und eines Referenzblocks, der in einem Referenzbildfeld enthalten ist, zu berechnen, wobei der Referenzblock eine gleiche Position in dem Referenzbildfeld aufweist wie der aktuelle Block in dem aktuellen Bildfeld aufweist, wobei der Bewegungsvektorkandidat eine relative Position eines virtuellen Blocks, der einen ersten Referenzteilbereich des Referenzblocks enthält, in Bezug auf den Referenzblock definiert, wobei der Restfehlerblock berechnet wird aus:
    • – einer ersten Differenz zwischen den Abtastdaten des ersten Referenzteilbereichs und entsprechenden Abtastdaten eines ersten aktuellen Teilbereichs des aktuellen Blocks, und
    • – einer zweiten Differenz zwischen einer Vorhersage von Abtastdaten eines zweiten Referenzteilbereichs des virtuellen Blocks, welcher ergänzend zu dem ersten Referenzteilbereich ist, und Abtastdaten eines zweiten aktuellen Teilbereichs des aktuellen Blocks, welcher ergänzend zu dem ersten aktuellen Teilbereich ist.
  • Auf der einen Seite benutzt das Verfahren zur Bewegungsschätzung gemäß der Erfindung nur eine eingeschränkte Menge von Abtastdaten, welche ein Referenzblock ist, welcher dieselbe Position in dem Referenzbildfeld aufweist wie der aktuelle Block in dem aktuellen Bildfeld aufweist. Der Referenzblock wird auch der zugeordnete Block genannt. Dank der Benutzung der reduzierten Menge von Abtastdaten ist das Verfahren zur Bewegungsschätzung der Erfindung eine effiziente Art, um die Datenübertragung am Codierer und Decodierer zu reduzieren. Außerdem erhöht das Reduzieren der Verlustleistung eines entsprechenden Bildkodierkreislaufs die Zuverlässigkeit des Kreislaufs und erlaubt eine bedeutende Minderung des Kühlaufwands. Deshalb werden die Produktionskosten deutlich vermindert.
  • Auf der anderen Seite ist das Verfahren zur Bewegungsschätzung geeignet, einen Bewegungsvektor zwischen dem ersten Referenzteilbereich des Referenzblocks und des ersten aktuellen Teilbereichs des aktuellen Blocks zu bestimmen, d.h. nur indem Teilbereiche des aktuellen und des Referenzblocks, welche ähnlich sind, in Betracht gezogen werden. Der Bewegungsvektor kann schwanken von (-N + 1, -N + 1) bis (N – 1, N – 1) wenn der Referenzblock N×N Abtastdaten umfasst. Außerdem ist das Verfahren zur Bewegungsschätzung geeignet, fehlende Abtastdaten vorherzusagen, d.h. die Abtastdaten, die zu dem zweiten Referenzteilbereich des virtuellen Blocks gehören. Wie in weiteren Einzelheiten später ersichtlich wird, kann diese Vorhersage nach unterschiedlichen Verfahren gemacht werden. Dank der Bestimmung eines Bewegungsvektors und der Vorhersage von entsprechenden fehlenden Abtastdaten, ist das Verfahren zur Bewegungsschätzung gemäß der Erfindung fähig, eine befriedigende bildliche Qualität aufrecht zu erhalten.
  • Diese und andere Aspekte der Erfindung werden ersichtlich und erläutert werden mit Bezug auf die Ausführungsformen, die hier nachfolgend beschrieben werden.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Erfindung wird nun ausführlicher durch Beispiele beschrieben werden, mit Bezugnahme auf die beiliegenden Zeichnungen, wobei:
  • 1 ist ein Blockdiagramm eines herkömmlichen Videocodierers,
  • 2 stellt ein herkömmliches Verfahren zur Bewegungsschätzung dar,
  • 3A und 3B stellen das Verfahren zur Bewegungsschätzung gemäß der Erfindung dar,
  • 4 entspricht einer ersten Ausführungsform des Verfahrens zur Bewegungsschätzung,
  • 5 entspricht einer zweiten Ausführungsform des Verfahrens zur Bewegungsschätzung,
  • 6 entspricht einer dritten Ausführungsform des Verfahrens zur Bewegungsschätzung.
  • AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
  • Die vorliegende Erfindung betrifft ein Verfahren zur Bewegungsschätzung zur Benutzung in einem Gerät, das geeignet ist, eine Abfolge von Bildfeldern zu verarbeiten, wobei ein Bildfeld in Blöcke von Abtastdaten, zum Beispiel Pixel im Falle von Videoabtastdaten, aufgeteilt wird. Das Gerät ist zum Beispiel ein Codierer, der geeignet ist, die Abfolge von Bildfeldern zu codieren.
  • Die vorliegende Erfindung ist vorzugsweise bestimmt für die Codierung von Videobildfeldern. Sie kann in einem MPEG-4- oder H.264-Videokodierer oder jedem entsprechenden, auf Distortion basierendem, Videocodierer benutzt werden. Es wird allerdings dem Fachmann ersichtlich werden, dass sie ebenfalls anwendbar ist auf die Codierung einer Abfolge von Audiodatengruppen oder auf jede andere entsprechende Codierung.
  • Es muss vermerkt werden, dass die vorliegende Erfindung nicht auf Codierung beschränkt ist, sondern in anderen Arten der Verarbeitung, wie etwa zum Beispiel der Bildstabilisierung, angewendet werden kann, wobei ein Durchschnitt von unterschiedlichen Datenblöcken eines Videobildfeldes berechnet wird, um eine allgemeine Bewegung des Bildfeldes zu bestimmen. Ein solcher Bildstabilisierungsprozess kann in einem Camcorder, einem Fernsehempfänger oder in einem Videodecodierer nach dem Decodieren eines Bildes eingesetzt werden.
  • Das Verfahren zur Bewegungsschätzung kann in Handgeräten, wie etwa Mobiltelefonen oder eingebauten Kameras eingesetzt werden, die eine beschränkte Leistung aufweisen und die geeignet sind, Abfolgen von Videobildfeldern zu kodieren.
  • 1 stellt einen herkömmlichen Videocodierer zum Kodieren eines Eingabedatenblocks IN dar. Der Codierer umfasst:
    • – einen Subtrahierer zum Zustellen eines Hauptrestfehlerblocks,
    • – einer diskreten Kosinus-Transformationseinheit DCT 11 und einer Quantisierungseinheit Q 12 zum aufeinander folgenden Transformieren und Quantisieren des Hauptrestfehlerblocks,
    • – eine Einheit VLC 13 zum Codieren variabler Längen zum Zustellen eines Datenblocks mit variabler Codelänge von dem quantisierten Datenblock,
    • – eine inverse quantisierende Einheit IQ 14 und eine inverse diskrete Cosinus-Transformationseinheit IDCT 15 zum Zustellen eines Nebenrestfehlerblocks von dem quantisierten Datenblock,
    • – eine Bewegungskompensationseinheit MC 16 zum Zustellen eines bewegungskompensierten Datenblocks an einen Addierer und den Subtrahierer, indem ein Bewegungsvektor benutzt wird, wobei der Subtrahierer geeignet ist, den bewegungskompensierten Datenblock von dem Eingabedatenblock zu subtrahieren,
    • – einen Addierer zum Summieren des bewegungskompensierten Datenblocks und des Nebenrestfehlerblocks,
    • – eine Bewegungsschätzungseinheit ME 18 zum Ermitteln, in einem Referenzbildfeld, eines zu dem Eingabedatenblocks gehörenden Referenzdatenblocks, wie auch seines entsprechenden Bewegungsvektors, und
    • – ein externes Bildfeldspeichermodul MEM 17, an welches die Bewegungskompensations- und Bewegungsschätzungseinheiten angekoppelt sind.
  • Diese herkömmlichen Codierer basieren auf DCT-Transformation, skalarer Quantisierung und Bewegungsschätzung/kompensation (ME/MC). Letztere verbraucht eindeutig die meiste Energie. Wenn ein Block codiert ist, sucht die Bewegungsschätzungseinheit ME nach der besten Übereinstimmung für einen aktuellen Block cb in einem aktuellen Bildfeld CF, unter mehreren Blöcken, die zu einem Suchbereich SA in den Referenzbildfeldern RF1 bis RF3, wie in 2 gezeigt, gehören. Dies bedeutet viele Zugriffe zu Pixeln und daher zu dem Datenspeicher. Je größer der Suchbereich ist, umso größer ist der Datenspeicher und demzufolge die Verlustleistung.
  • Die vorliegende Erfindung schlägt vor, die herkömmliche Bewegungsschätzung durch eine sogenannte „zugeordnete Bewegungsschätzung" zu ersetzen, was eine eingeschränkte Art ist, eine Bewegungsschätzung durchzuführen, mit einem Suchbereich, der eine reduzierte Menge an Pixeln umfasst. Um eine richtige Codiereffizienz aufrecht zu erhalten, während weniger Daten benutzt werden, wird hier vorgeschlagen, den Bewegungsschätzungsprozess zu ändern und ihn mit einer raum-zeitlichen Vorhersage von fehlenden Pixeln zu verbinden.
  • 3A und 3B stellen das Verfahren zur Bewegungsschätzung gemäß der Erfindung dar.
  • Das Verfahren zur Bewegungsschätzung umfasst einen Schritt zum Aufteilen eines Bildfeldes in Blöcke von Pixeln von gleicher Größe, zum Beispiel N×N Pixel, wobei N eine Ganzzahl ist.
  • Außerdem umfasst es einen Schritt zum Berechnen eines Restfehlerblocks verbunden mit einem Vektorkandidat MV auf der Basis eines tatsächlichen Blocks cb, der in einem aktuellen Bildfeld CF enthalten ist, und eines Referenzblocks rb, der in einem Referenzbildfeld enthalten ist. Gemäß der Erfindung weist der Referenzblock dieselbe Position (i, j) in dem Referenzbildfeld auf wie der aktuelle Block in dem aktuellen Bildfeld aufweist. Mit anderen Worten, der Referenzblock ist dem aktuellen Block zugeordnet. Der Bewegungsvektorkandidat MV definiert eine relative Position eines virtuellen Blocks vb, der einen ersten Referenzteilbereich rbp1 des Referenzblocks rb enthält, mit Bezug auf den Referenzblock.
  • Der Restfehlerblock wird dann berechnet aus:
    • – einer ersten Differenz zwischen Abtastdaten des ersten Referenzteilbereichs rbp1 und den entsprechenden Abtastdaten eines ersten aktuellen Teilbereichs cbp1 des aktuellen Blocks, wobei der erste aktuelle Teilbereich cpb1 einer Umsetzung der Projektion in dem aktuellen Bildfeld des ersten Referenzbildfeldes gemäß dem Bewegungsvektorkandidat MV entspricht, und
    • – einer zweiten Differenz zwischen einer Vorhersage von Abtastdaten eines zweiten Referenzteilbereichs pred des virtuellen Blocks, welcher ergänzend zu dem ersten Referenzteilbereich ist, und Abtastdaten eines zweiten aktuellen Teilbereichs cbp2 des aktuellen Blocks, welcher ergänzend zu dem ersten aktuellen Teilbereich ist.
  • Mit anderen Worten, r(x, y) wird als Restfehlerblockwert eines Pixels (x, y), das codiert wird, benannt. Der Restfehlerblockwert wird berechnet wie folgt:
    Figure 00070001
    rb(x + vx, y + vy) – cb(x, y)sonst pred(rb, cb(x, y))wobei pred(rb, cb(x, y)) ein Prädiktor ist, der den Referenzblock und den aktuellen Block, der codiert wird, benutzt, und wobei (vx, vy) die Koordinaten des Bewegungsvektors sind.
  • Im Allgemeinen werden Werte von Pixeln des zweiten Referenzteilbereichs pred von Werten von Pixeln des Referenzblocks rb vorausgesagt, dies ist jedoch nicht zwingend notwen dig, wie später ersichtlich werden wird.
  • Ein solches Verfahren zur Bewegungsschätzung wird Verfahren der zugeordneten Bewegungsschätzung genannt. Mit der zugeordneten Bewegungsschätzung wird die beste Übereinstimmung des aktuellen Blocks cb, d.h. des Blocks, der codiert wird, im Referenzblock rb gesucht. Zu diesem Zwecke ist das Verfahren zur Bewegungsschätzung geeignet, um verschiedene Bewegungsvektorkandidaten MV zwischen einem ersten Referenzteilbereich des Referenzblocks und eines ersten aktuellen Teilbereichs des aktuellen Blocks zu testen, einem vorbestimmten Bewegungsvektorkandidaten entsprechend den Teilbereichen von vorbestimmter Größe. Der Bewegungsvektorkandidat kann daher von einem Bewegungsvektor Mvmin der Koordinaten (-N + 1, -N + 1) bis zu einem Bewegungsvektor Mvmax der Koordinaten (N – 1, N – 1) reichen, wenn der Referenzblock N×N Pixel umfasst.
  • Der Schritt des Berechnens eines Restfehlerblocks wird für eine Menge von Bewegungsvektorkandidaten wiederholt. Das Verfahren zur Bewegungsschätzung gemäß der Erfindung umfasst ferner einen Schritt des Berechnens eines Distortion-Werts für die Bewegungsvektorkandidaten der Menge auf der Basis ihrer zugehörigen Restfehlerblockwerte. Das Verfahren der Bewegungsschätzung umfasst schließlich einen Schritt des Auswählens des Bewegungsvektorkandidaten, der den kleinsten Distortion-Wert aufweist.
  • Dieser Prozess wird Block-Matching genannt und basiert, zum Beispiel, auf dem Berechnen der Summe von absoluten Differenzen SAD gemäß eines dem Fachmann bekannten Prinzips. Der Berechnungsschritt basiert, wie andere Beispiele, auf dem Berechnen des mittleren absoluten Fehlers MAE, auf dem Berechnen des mittleren quadratischen Fehlers MSE. Es ist für einen Fachmann offensichtlich, dass der Distortion-Wert durch Benutzung anderer geeigneter Berechnungen berechnet werden kann. Er kann zum Beispiel basieren auf einer Summe einer Entropie h des Restfehlerblocks und auf dem mittleren quadratischen Fehler MSE.
  • Der Restfehlerblock und der zweite Bewegungsvektor werden gemäß einem herkömmlichen Codierschema übertragen.
  • Mit Ausnahme des Bewegungsvektorkandidaten (0, 0) fehlen immer einige Pixel für die Berechnung des Distortion-Werts. Mehrere Arten der Vorhersage der fehlenden Pixel kön nen benutzt werden.
  • 4 stellt eine erste Ausführungsform des Verfahrens der Bewegungsschätzung dar, die zugeordnete Vorhersage genannt wird. In einer solchen Ausführungsform wird ein Wert eines Pixels p' des zweiten Referenzteilbereichs pred abgeleitet von einem Wert des Pixels, das einer Translation des Pixels des zweiten Referenzteilbereichs entspricht, gemäß des Gegenteils des Bewegungsvektorkandidaten MV. Mit anderen Worten, das fehlende Pixel p' wird auf der Basis des Pixels rb(x, y), das dem aktuellen Pixel cb(x, y) zugeordnet ist, wie folgt vorausgesagt: pred(rb, cb(x, y)) = rb(x, y) – cb(x, y).
  • Zu den 4 bis 6 muss vermerkt werden, dass der Pfeil diff1 die Berechnung der ersten Differenz zwischen Pixeln des ersten Referenzteilbereichs rbp1 und entsprechenden Pixeln des ersten aktuellen Teilbereichs cbp1 darstellt, und dass der Pfeil diff2 das Berechnen der zweiten Differenz darstellt.
  • 5 stellt eine zweite Ausführungsform des Verfahrens zur Bewegungsschätzung dar, die Randvorhersage genannt wird. In einer solchen Ausführungsform wird ein Wert eines Pixels des zweiten Referenzteilbereichs auf der Basis einer ersten Interpolation eines Pixelwerts des Referenzblocks vorhergesagt. Die Vorhersage wird wie folgt definiert: pred(rb, cb(x, y)) = rb(proj(x), proj(y)) – cb(x, y)),wobei die proj()Funktion geeignet ist das symmetrische p'' des Pixels p' des zweiten Referenzteilbereichs pred mit Bezug auf einen horizontalen und/oder vertikalen Rand des Referenzblocks zu bestimmen, und den Wert des symmetrischen Pixels p'' als Referenzwert rb(x'', y'') zu nehmen, wie in 5 gezeigt.
  • 6 stellt eine dritte Ausführungsform des Verfahrens zur Bewegungsschätzung dar. Sie wird räumliche Interpolationsvorhersage genannt. In dieser Ausführungsform wird ein Wert eines Pixels des zweiten Referenzteilbereichs pred von einer Interpolation von Werten von mehreren Pixeln des ersten Referenzteilbereichs abgeleitet. Zum Beispiel wird der Wert des Pixels p' des zweiten Referenzteilbereichs interpoliert von den Pixeln, die zu dem ersten Referenzblock rb gehören, die in derselben Linie oder Spalte wie das Pixel p' sind.
  • Gemäß einer weiteren Ausführungsform der Erfindung wird ein einzelner Vorhersagewert pred_Wert von dem Referenzblock rb abgeleitet. Der entsprechende Restfehlerblockwert wird wie folgt berechnet: r(x, y) = cb(x, y) – pred_Wert
  • Der pred_Wert wird auf den Durchschnitt der Werte des Referenzblocks rb oder den in der Mitte liegenden der Werte gesetzt.
  • Gemäß noch einer weiteren Ausführungsform der Erfindung wird grundsätzlich eine räumliche Vorhersage ausgeführt. In diesem Falle wird der Referenzblock nicht benutzt. Der Vorhersagewert pred_Wert ist ein Durchschnitt oder ein in der Mitte liegender Wert einer Linie L von Pixeln an der Spitze des aktuellen Blocks oder einer Spalte C von Pixeln auf der linken Seite des aktuellen Blocks, wie in 3A gezeigt. Als weitere Option kann der Vorhersagewert ein konstanter Wert sein, zum Beispiel 128, wenn Pixelwerte zwischen 0 und 255 umfasst werden.
  • Es ist für einen Fachmann offensichtlich, dass andere Verfahren vorgeschlagen werden können, um den Vorhersagewert zu bestimmen. Er kann zum Beispiel der häufigste Wert, d.h. der Höchstwert eines Histogramms des Referenzblocks rb, oder ein Wert in Bezug auf die Linie L, der Spalte C und/oder des Referenzblocks rb sein.
  • Die Zeichnungen und ihre hier obenstehende Beschreibung sind eher darstellend als dass sie die Erfindung beschränken. Es ist einem Fachmann offenkundig, dass es zahlreiche Alternativen gibt, die in den Umfang der beigefügten Ansprüche fallen.
  • Zum Beispiel kann das Verfahren der Bewegungsschätzung gemäß der Erfindung benutzt werden mit entweder nur einer Vorhersagefunktion oder mit mehreren Vorhersagefunktionen, wie oben beschrieben, wobei jede Vorhersagefunktion gleichlaufend ist, wie auch Bewegungsvektoren selbst gleichlaufend sind und durch das Distortion-Kriterium ausgewählt werden.
  • Die zugeordnete Bewegungssuche kann auf einer dreidimensionalen rekursiven Suche 3DRS oder auf einem Hierarchischen-Block-Matching-Algorithmus HBMA basieren. Verfeinerung der Sub-Pixel kann auf dieselbe Weise angewendet werden. Die Bewegung ist nicht auf eine Translation beschränkt; sie kann zum Beispiel affine Modelle unterstützen.
  • Die vorgeschlagene Erfindung kann in jedem Videocodiergerät angewendet werden, wo Zugriffe auf einen externen Datenspeicher einen Engpass darstellen, entweder aufgrund von beschränkter Bandbreite oder aufgrund eines hohen Leistungsverbrauchs. Der letztere Grund ist besonders bedeutsam in mobilen Geräten, wo eine verlängerte Batterielebensdauer ein Hauptmerkmal ist. Sie ersetzt die herkömmliche Bewegungsschätzung in jeder Art von Codierer. Sie kann zum Beispiel in Net-at-Home- oder Codeumwandlungsanwendungen benutzt werden.
  • Das Verfahren der Bewegungsschätzung gemäß der Erfindung kann durch Elemente von Hardware oder Software oder beides umgesetzt werden. Die Hardware- oder Softwareelemente können auf mehrere Arten umgesetzt werden, wie etwa durch eine festverdrahtete elektronische Schaltung, beziehungsweise durch einen integrierten Baustein, der geeignet programmiert ist. Der integrierte Baustein kann in einem Codierer enthalten sein. Der integrierte Baustein umfasst einen Satz von Anweisungen. Dadurch dass der Satz von Anweisungen zum Beispiel in einem Datenspeicher eines Codierers enthalten ist, kann der Codierer veranlasst werden, die unterschiedlichen Schritte des Verfahrens zur Bewegungsschätzung auszuführen. Der Satz der Anweisungen kann in einen Programmierspeicher durch Lesen eines Datenträgers, wie etwa einer Diskette, geladen werden. Ein Serviceanbieter kann ebenfalls den Satz der Anweisungen über ein Kommunikationsnetzwerk, wie etwa das Internet, zur Verfügung stellen.
  • Jeder Bezugshinweis in den folgenden Ansprüchen sollte nicht als den Anspruch einschränkend ausgelegt werden. Es ist offensichtlich, dass der Gebrauch des Verbs „umfassen" und seine Konjugationen nicht das Vorhandensein von irgendwelchen anderen Schritten oder Elementen, neben denjenigen, die in irgendeinem der Ansprüche definiert sind, ausschließt. Das Wort „ein", das einem Element oder Schritt vorsteht, schließt nicht das Vorhandensein von mehreren solcher Elemente oder Schritte aus.

Claims (11)

  1. Verfahren einer Bewegungsschätzung zur Benutzung in einem Gerät, das geeignet ist eine Abfolge von Bildfeldern zu verarbeiten, wobei ein Bildfeld in Blöcke von Abtastdaten aufgeteilt ist, wobei das Verfahren zur Bewegungsschätzung einen Schritt umfasst zum Berechnen eines Restfehlerblocks, zugehörig zu einem Bewegungsvektorkandidaten (MV), auf der Basis eines aktuellen Blocks (cb), der in einem aktuellen Bildfeld (CF) enthalten ist, und eines Referenzblocks (rb), der in einem Referenzbildfeld (RF) enthalten ist, wobei der Referenzblock eine gleiche Position in dem Referenzbildfeld aufweist wie der aktuelle Block in dem aktuellen Bildfeld aufweist, dadurch gekennzeichnet, dass: der Bewegungsvektorkandidat eine relative Position eines virtuellen Blocks (vb), der einen ersten Referenzteilbereich (rbp1) des Referenzblocks enthält, in Bezug auf den Referenzblock definiert, und der Restfehlerblock berechnet wird aus: – einer ersten Differenz zwischen Abtastdaten des ersten Referenzteilbereichs und entsprechenden Abtastdaten eines ersten aktuellen Teilbereichs (cbp1) des aktuellen Blocks, wobei der erste aktuelle Teilbereich (cpb1) einer Translation der Projektion in dem aktuellen Bildfeld des ersten Referenzteilbereichs gemäß dem Bewegungsvektorkandidaten (MV) entspricht, und – einer zweiten Differenz zwischen einer Vorhersage von Abtastdaten eines zweiten Referenzteilbereichs (pred) des virtuellen Blocks, welcher ergänzend zu dem ersten Referenzteilbereich ist, und Abtastdaten eines zweiten aktuellen Teilbereichs (cbp2) des aktuellen Blocks, welcher zu dem ersten Teilbereich ergänzend ist.
  2. Verfahren zur Bewegungsschätzung nach Anspruch 1, wobei Abtastdatenwerte des zweiten Referenzteilbereichs von Abtastdatenwerten des Referenzblocks vorhergesagt werden.
  3. Verfahren zur Bewegungsschätzung nach Anspruch 2, wobei ein Abtastdatenwert des zweiten Referenzteilbereichs von einem Abtastdatenwert des Referenzblocks abgeleitet wird, der einem aktuellen Abtastdatenwert des aktuellen Blocks zugeordnet ist.
  4. Verfahren zur Bewegungsschätzung nach Anspruch 2, wobei ein Abtastdatenwert des zweiten Referenzteilbereichs von einer Interpolation von mindestens einem Abtastdatenwert des Referenzblocks abgeleitet wird.
  5. Verfahren zur Bewegungsschätzung nach Anspruch 1, wobei der Schritt des Berechnens eines Restfehlerblocks für eine Menge von Bewegungsvektorkandidaten wiederholt wird, wobei das Verfahren zur Bewegungsschätzung ferner einen Schritt zum Berechnen eines Distortion-Wertes für die Bewegungsvektorkandidaten der Menge auf der Basis von deren zugehörigen Restfehlerblockwerten umfasst.
  6. Verfahren zur Bewegungsschätzung nach Anspruch 5, ferner umfassend einen Schritt des Auswählens des Bewegungsvektorkandidaten, der den kleinsten Distortion-Wert aufweist.
  7. Verfahren zur Bewegungsschätzung nach Anspruch 6, wobei die zweite Differenz gemäß unterschiedlicher Vorhersagearten berechnet wird, die gleichlaufend für die Auswahl des Bewegungsvektorkandidaten sind, der den kleinsten Distortion-Wert aufweist.
  8. Vorhersagendes Codierverfahren auf Blockbasis zum Codieren einer Abfolge von Bildfeldern, wobei das Codierverfahren ein Verfahren zur Bewegungsschätzung nach Anspruch 1 umfasst, um einen Bewegungsvektor in einer gewünschten Genauigkeit zu berechnen, wobei das Codierverfahren ferner einen Schritt des Codierens des Bewegungsvektors und seines zugehörigen Restfehlerblocks umfasst.
  9. Gerät zur Bewegungsschätzung, das geeignet ist eine Abfolge von Bildfeldern zu verarbeiten, wobei ein Bildfeld in Blöcke von Abtastdaten aufgeteilt ist, wobei das Gerät Mittel umfasst, um einen Restfehlerblock, verbunden mit einem Bewegungsvektorkandidaten (MV), auf der Basis eines aktuellen Blocks (cb), der in einem aktuellen Bildfeld enthalten ist, und eines Referenzblocks (rb), der in einem Refe renzbildfeld enthalten ist, zu berechnen, wobei der Referenzblock eine gleiche Position in dem Referenzbildfeld aufweist wie der aktuelle Block in dem aktuellen Bildfeld aufweist, dadurch gekennzeichnet, dass der Bewegungsvektorkandidat eine relative Position eines virtuellen Blocks (vb), der einen Teilbereich (rbp1) des Referenzblocks enthält, in Bezug auf den Referenzblock definiert, und das Berechnungsmittel derart gestaltet ist, dass der Restfehlerblock berechnet wird aus: – einer ersten Differenz zwischen Abtastdaten des ersten Referenzteilbereichs und entsprechenden Abtastdaten eines ersten aktuellen Teilbereichs (cbp1) des aktuellen Blocks, wobei der erste aktuelle Teilbereich (cpb1) einer Translation der Projektion in dem aktuellen Bildfeld des ersten Referenzteilbereichs gemäß dem Bewegungsvektorkandidaten (MV) entspricht, und – einer zweiten Differenz zwischen einer Vorhersage von Abtastdaten eines zweiten Referenzteilbereichs (pred) des virtuellen Blocks, welcher ergänzend zu dem ersten Referenzteilbereich ist, und Abtastdaten eines zweiten aktuellen Teilbereichs (cbp2) des aktuellen Blocks, welcher zu dem ersten Teilbereich ergänzend ist.
  10. Codierer zum Codieren einer Abfolge von Bildfeldern, ein Gerät zur Bewegungsschätzung nach Anspruch 9 umfassend, um einen Bewegungsvektor in einer gewünschten Genauigkeit zu berechnen, sowie Mittel zum Codieren des Bewegungsvektors und seines zugehörigen Restfehlerblocks.
  11. Computerprogrammprodukt, Programmanweisungen zur Anwendung, wenn das Programm durch einen Prozessor ausgeführt wird, und ein Verfahren zur Bewegungsschätzung nach Anspruch 1 umfassend.
DE602004007682T 2003-10-27 2004-10-20 Leistungsoptimiertes colokalisiertes bewegungschätzverfahren Active DE602004007682T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP03300179 2003-10-27
EP03300179 2003-10-27
PCT/IB2004/003469 WO2005041585A1 (en) 2003-10-27 2004-10-20 Power optimized collocated motion estimation method

Publications (2)

Publication Number Publication Date
DE602004007682D1 DE602004007682D1 (de) 2007-08-30
DE602004007682T2 true DE602004007682T2 (de) 2008-04-30

Family

ID=34486507

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602004007682T Active DE602004007682T2 (de) 2003-10-27 2004-10-20 Leistungsoptimiertes colokalisiertes bewegungschätzverfahren

Country Status (8)

Country Link
US (1) US20070110157A1 (de)
EP (1) EP1683361B1 (de)
JP (1) JP2007510344A (de)
KR (1) KR20060109440A (de)
CN (1) CN100584010C (de)
AT (1) ATE367716T1 (de)
DE (1) DE602004007682T2 (de)
WO (1) WO2005041585A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100474929C (zh) * 2005-09-07 2009-04-01 深圳市海思半导体有限公司 一种运动补偿数据载入装置及方法
US8542278B2 (en) * 2005-12-26 2013-09-24 Kyocera Corporation Shaking detection device, shaking correction device, imaging device, and shaking detection method
KR100856411B1 (ko) * 2006-12-01 2008-09-04 삼성전자주식회사 조도 보상 방법 및 그 장치와 그 방법을 기록한 컴퓨터로 읽을 수 있는 기록매체
RU2480941C2 (ru) * 2011-01-20 2013-04-27 Корпорация "Самсунг Электроникс Ко., Лтд" Способ адаптивного предсказания кадра для кодирования многоракурсной видеопоследовательности
MX2014000159A (es) 2011-07-02 2014-02-19 Samsung Electronics Co Ltd Metodo y aparato para la codificacion de video, y metodo y aparato para la decodificacion de video acompañada por inter prediccion utilizando imagen co-localizada.
CN108271028A (zh) * 2016-12-30 2018-07-10 北京优朋普乐科技有限公司 一种子像素全搜索方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5784108A (en) * 1996-12-03 1998-07-21 Zapex Technologies (Israel) Ltd. Apparatus for and method of reducing the memory bandwidth requirements of a systolic array
US5930403A (en) * 1997-01-03 1999-07-27 Zapex Technologies Inc. Method and apparatus for half pixel SAD generation utilizing a FIFO based systolic processor
SG116400A1 (en) * 1997-10-24 2005-11-28 Matsushita Electric Ind Co Ltd A method for computational graceful degradation inan audiovisual compression system.
US6473460B1 (en) * 2000-03-31 2002-10-29 Matsushita Electric Industrial Co., Ltd. Method and apparatus for calculating motion vectors

Also Published As

Publication number Publication date
CN100584010C (zh) 2010-01-20
US20070110157A1 (en) 2007-05-17
KR20060109440A (ko) 2006-10-20
EP1683361A1 (de) 2006-07-26
ATE367716T1 (de) 2007-08-15
WO2005041585A1 (en) 2005-05-06
CN1871859A (zh) 2006-11-29
DE602004007682D1 (de) 2007-08-30
JP2007510344A (ja) 2007-04-19
EP1683361B1 (de) 2007-07-18

Similar Documents

Publication Publication Date Title
DE19734882C2 (de) Verfahren zum Kodieren von Bewegungsvektoren bei Filmaufnahmen
DE69920429T2 (de) Bewegungsschätzungssystem und -verfahren
DE19704439C2 (de) Verfahren und Vorrichtung zur Bewegungsschätzung in einem digitalen Videocodierer unter Verwendung von Trajektorien
DE69908562T2 (de) Bewegungsvektorenextrapolation zur transkodierung von videosequenzen
DE69530336T2 (de) Bewegungskompensation für digitale Videosignale mit Zeilensprung
DE60014444T2 (de) Verfahren und vorrichtung zur bewegungsschätzung unter verwendung von nachbarmacroblöcken
DE69834902T2 (de) Bewegungskompensierte prädiktive bildkodierung und -dekodierung
DE60215241T2 (de) Verfahren und Vorrichtung zur Reduzierung von Störungen in dekodierten Bildern mit Nachfilterung
DE602004002455T2 (de) Bewegungsvektorschätzung durch adaptive zeitliche Vorhersage
DE69738264T2 (de) Videokodierungs- und Videodekodierungsvorrichtung
DE602004008763T2 (de) Videotranskodierung
DE69635369T2 (de) Videokodierungsvorrichtung
DE102013013636B4 (de) Pixel Bufferung
DE19825042A1 (de) Verfahren zur Bewegungsvektorcodierung bei MPEG-4
DE102004021854A1 (de) Vorrichtung für sowohl eine Block-Matching Motion Compensation als auch eine Global Motion Compensation sowie Verfahren hierfür
DE20321894U1 (de) Verbesserter Videodecodierer und zugehöriges Computergerät
DE102006043707A1 (de) Verfahren zur Datenkompression in einer Videosequenz
DE60312960T2 (de) Kodierungsverfahren und Dekodierungsverfahren für bewegliche Bilder
DE202016008192U1 (de) Auswahl des Referenz-Bewegungsvektors über Referenzeinzelbild Puffer-Nachverfolgung
DE202016008178U1 (de) Bewegungsvektorvorhersage mittels eines vorhergehenden Einzelbildresiduums
DE102016125604A1 (de) Intelligente Sortierung der rekursiven Blockaufteilung für die erweiterte Intra-Prädiktion bei der Videocodierung
EP0956539B1 (de) Verfahren und anordnung zur codierung und decodierung eines digitalisierten bildes
DE102011008630A1 (de) Techniken zur Bewegungsseinschätzung
DE102020128902A1 (de) Bewegungsadaptive video-codierung
DE602004007682T2 (de) Leistungsoptimiertes colokalisiertes bewegungschätzverfahren

Legal Events

Date Code Title Description
8327 Change in the person/name/address of the patent owner

Owner name: NXP B.V., EINDHOVEN, NL

8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: TRIDENT MICROSYSTEMS (FAR EAST) LTD., GRAND CA, KY

8328 Change in the person/name/address of the agent

Representative=s name: EPPING HERMANN FISCHER, PATENTANWALTSGESELLSCHAFT

R082 Change of representative

Ref document number: 1683361

Country of ref document: EP

Representative=s name: EPPING HERMANN FISCHER, PATENTANWALTSGESELLSCH, DE

R081 Change of applicant/patentee

Ref document number: 1683361

Country of ref document: EP

Owner name: ENTROPIC COMMUNICATIONS, INC., US

Free format text: FORMER OWNER: TRIDENT MICROSYSTEMS (FAR EAST) LTD., GRAND CAYMAN, KY

Effective date: 20121023

R082 Change of representative

Ref document number: 1683361

Country of ref document: EP

Representative=s name: EPPING HERMANN FISCHER, PATENTANWALTSGESELLSCH, DE

Effective date: 20121023