[go: up one dir, main page]

DE60015566T2 - Verfahren und vorrichtung zur komprimierung eines bewegungsvektorfeldes - Google Patents

Verfahren und vorrichtung zur komprimierung eines bewegungsvektorfeldes Download PDF

Info

Publication number
DE60015566T2
DE60015566T2 DE60015566T DE60015566T DE60015566T2 DE 60015566 T2 DE60015566 T2 DE 60015566T2 DE 60015566 T DE60015566 T DE 60015566T DE 60015566 T DE60015566 T DE 60015566T DE 60015566 T2 DE60015566 T2 DE 60015566T2
Authority
DE
Germany
Prior art keywords
field model
motion field
segment
motion
information
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 - Lifetime
Application number
DE60015566T
Other languages
English (en)
Other versions
DE60015566C5 (de
DE60015566D1 (de
Inventor
Marta Karczewicz
Jani Lainema
Bogdan-Paul Dobrin
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.)
Nokia Oyj
Nokia Inc
Original Assignee
Nokia Oyj
Nokia Inc
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=23464821&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE60015566(T2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Nokia Oyj, Nokia Inc filed Critical Nokia Oyj
Publication of DE60015566D1 publication Critical patent/DE60015566D1/de
Application granted granted Critical
Publication of DE60015566T2 publication Critical patent/DE60015566T2/de
Publication of DE60015566C5 publication Critical patent/DE60015566C5/de
Anticipated expiration legal-status Critical
Expired - Lifetime 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/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • 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/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/19Methods 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 using optimisation based on Lagrange multipliers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • 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/537Motion estimation other than block-based
    • H04N19/543Motion estimation other than block-based using regions
    • 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/567Motion estimation based on rate distortion criteria

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)
  • Ultra Sonic Daignosis Equipment (AREA)
  • Image Analysis (AREA)

Description

  • Die vorliegende Erfindung bezieht sich allgemein auf die Art und Weise, in der die Bewegungskompensation bei der Codierung einer Videosequenz genutzt wird. Insbesondere bezieht sich die vorliegende Erfindung auf eine Vorrichtung und auf ein zugeordnetes Verfahren zum Codieren und Decodieren einer Videosequenz, die die bewegungskompensierte Prädiktion verwendet. Die Bewegungsfelder eines Segments werden aus benachbarten Segmenten eines Videorahmens und unter Verwendung orthogonaler affiner Bewegungsvektorfeldmodelle vorausgesagt. Durch den Betrieb einer Ausführungsform der vorliegenden Erfindung werden Bewegungsvektorfelder mit einer verringerten Anzahl von Bits gebildet, während weiter ein niedriger Prädiktionsfehler aufrechterhalten wird.
  • HINTERGRUND DER ERFINDUNG
  • Fortschritte bei digitalen Kommunikationstechniken haben die Entwicklung neuer und verbesserter Kommunikationsarten ermöglicht. Zusätzliche Fortschritte sollen weitere Verbesserungen bei der Kommunikation und bei Kommunikationssystemen, die diese Fortschritte nutzen, ermöglichen.
  • Beispielsweise sind für die Übermittlung digitaler Videodaten Kommunikationssysteme vorgeschlagen worden, die Videorahmen bilden können. Videobilder, die während Videokonferenzen genutzt werden, sind beispielhaft für Anwendungen, die vorteilhaft von digitalen Videosequenzen Gebrauch machen.
  • Allerdings wird ein Videorahmen typisch aus einer großen Anzahl von Pixeln gebildet, von denen jedes durch eine Menge digitaler Bits darstellbar ist. Außerdem sind zur Darstellung irgendeiner Videosequenz typisch eine große Anzahl von Videorahmen erforderlich. Wegen der großen Anzahl von Pixeln pro Rahmen und der großen Anzahl von Rahmen, die zum Bilden einer typischen Videosequenz erforderlich sind, wird die Menge der Daten, die zur Darstellung der Videosequenz erforderlich sind, schnell groß. Beispielsweise enthält ein beispielhafter Videorahmen eine Anordnung von 640 mal 480 Pixeln, wobei jedes Pixel eine RGB-Farbdarstellung (Rot-Grün-Blau-Farbdarstellung) von acht Bits pro Farbkomponente besitzt, was insgesamt 7.372.800 Bits pro Rahmen ergibt.
  • Videosequenzen wie gewöhnliche auf einem Film aufgezeichnete Spielfilme umfassen eine Sequenz von Standbildern, wobei die Illusion der Bewegung dadurch erzeugt wird, dass aufeinander folgende Bilder mit einer verhältnismäßig hohen Rate, etwa 15–30 Rahmen pro Sekunde, angezeigt werden. Wegen der verhältnismäßig schnellen Bildwiederholrate neigen die Bilder in aufeinander folgenden Rahmen dazu, ähnlich zu sein. Eine typische Szene umfasst einige feststehende Elemente, z. B. die Hintergrundszenerie, und eine bewegte Teile, die viele verschiedene Formen annehmen können, z. B. das Gesicht eines Nachrichtensprechers, bewegter Verkehr usw. Alternativ kann sich die Kamera, die die Szene aufzeichnet, selbst bewegen, wobei in diesem Fall alle Elemente des Bildes die gleiche Bewegungsart aufweisen. In vielen Fällen heißt das, dass die Gesamtänderung zwischen einem Videorahmen und dem nächsten recht klein ist. Natürlich hängt das vom Wesen der Bewegung ab: Je schneller die Bewegung ist, desto größer ist die Änderung von einem Rahmen zum nächsten.
  • Bei der Übertragung von Videosequenzen treten Probleme auf, die hauptsächlich die Menge der Informationen betreffen, die von der Sendevorrichtung zu dem Empfänger gesendet werden müssen. Jeder Rahmen der Sequenz umfasst eine Anordnung von Pixeln in Form einer Rechteckmatrix. Um ein scharfes Bild zu erhalten, ist eine hohe Auflösung erforderlich, d. h., der Rahmen sollte eine große Anzahl von Pixeln umfassen. Heute gibt es eine Anzahl genormter Bildformate einschließlich des CIF (gemeinsames Zwischenformat), das 352_288 Pixel beträgt, und des QCIF (gemeinsames Viertelzwischenformat), das 176_144 Pixel beträgt. Das QCIF-Format ist typisch für dasjenige, das in der ersten Generation der Mobilvideotelephonieausrüstung verwendet wird, und liefert auf der Art kleiner LCD-Anzeigen (3-4-cm-Rechteck-LCD-Anzeigen), die in diesen Vorrichtungen verwendet werden können, ein annehmbar scharfes Bild. Natürlich erfordern größere Anzeigevorrichtungen allgemein Bilder mit höherer räumlicher Auflösung, damit diese Bilder mit ausreichenden räumlichen Einzelheiten erscheinen, wenn sie angezeigt werden.
  • Für jedes Pixel des Bildes müssen Farbinformationen geliefert werden. Typisch und wie oben angemerkt werden Farbinformationen hinsichtlich der Primärfarbkomponenten rot, grün und blau (RGB) oder unter Verwendung eines verwandten Farbdichte/Farbwert-Modells, das als das YUV-Modell bekannt ist, welches, wie unten beschrieben wird, einige Vorteile für die Codierung schafft, codiert. Obgleich es mehrere Wege gibt, auf denen Farbinformationen geliefert werden können, ist allen Farbdarstellungen dasselbe Problem gemeinsam; d. h., die Menge der Informationen, die zur richtigen Darstellung des in natürlichen Szenen vorhandenen Farbbereichs erforderlich ist. Um Farbbilder einer für das menschliche Sehsystem annehmbaren Qualität zu erzeugen, muss jede Farbkomponente typisch mit einer Auflösung von 8 Bits dargestellt werden. Somit erfordert jedes Pixel eines Bildes 24 Bits an Informationen, so dass ein Farbbild in der QCIF-Auflösung 176_144_(3_8) = 608256 Bits erfordert. Außerdem sind insgesamt 9.123.840 Bit/s erforderlich, um diese Sequenz zu codieren, falls dieses QCIF-Bild einen Teil einer Videosequenz mit einer Bildwiederholrate von 15 Rahmen pro Sekunde bildet.
  • Die Datenmengen an sich müssen gelegentlich über Kommunikationskanäle mit verhältnismäßig niedriger Bitrate wie etwa drahtlose Kommunikationskanäle, die unter 64 Kilobit pro Sekunde arbeiten, übertragen werden.
  • Um die zur Darstellung dieser Videosequenzen erforderliche Datenmenge zu verringern, werden Videocodierungsschemata genutzt. Ein Schlüssel vieler Videocodierungsschemata ist eine Art und Weise, in der eine bewegungskompensierte Prädiktion geschaffen wird. Allgemein schafft die bewegungskompensierte Prädiktion eine Art und Weise, in der die durch Entfernen vorübergehender Redundanzen zwischen Rahmen die Rahmenkompression verbessert werden kann. Die Operation wird anhand der Tatsache vorausgesagt, dass die meisten Objekte in einer kurzen Sequenz des gleichen allgemeinen Bildes an demselben Ort bleiben, während sich andere nur kurze Entfernungen bewegen. Diese Bewegung wird als ein zweidimensionaler Bewegungsvektor beschrieben.
  • Unter Verwendung des YUV-Farbmodells können einige Codierungsvorteile erhalten werden. Dieses nutzt eine Eigenschaft des menschlichen Sehsystems, das gegenüber Intensitätsänderungen (Farbdichteänderungen) empfindlicher als gegenüber Farbänderungen ist. Somit können die Farbwertkomponenten räumlich unterabgetastet werden (kann ihre Auflösung verringert werden), falls ein Bild (wie in dem YUV-Modell) hinsichtlich einer Farbdichtekomponente und zwei Farbwertkomponenten dargestellt wird. Dies führt zu einer Verringerung der Gesamtmenge der Informationen, die erforderlich sind, um die Farbinformationen in einem Bild bei akzeptabler Verringerung der Bildqualität zu codieren. Die räumliche Unterabtastung kann auf einer Anzahl von Wegen ausgeführt werden, wobei aber typisch jeder Block von 16_16 Pixeln in dem Bild durch 1 Block von 16_16 Pixeln, der die Farbdichteinformationen darstellt, und durch 1 Block von 8_8 Pixeln für die beiden Farbwertkomponenten codiert wird. Mit anderen Worten, die Farbwertkomponenten werden in der x- und in der y-Richtung durch einen Faktor 2 unterabgetastet. Die resultierende Zusammensetzung von einem 16_16-Farbdichteblock und zwei 8_8-Farbwertblöcken wird üblicherweise als ein Makroblock bezeichnet. Unter Verwendung eines derartigen Codierungsschemas kann die zum Codieren eines QCIF-Bildes erforderliche Menge von Informationen wie folgt berechnet werden: Die QCIF-Auflösung ist 176_144. Somit umfasst das Bild 11_9 Farbdichteblöcke mit 16_16 Pixeln. Jedem Farbdichteblock sind zwei unterabgetastete 8_8-Pixel-Farbwertblöcke zugeordnet, d. h., in dem Bild gibt es ebenfalls 11_9 Makroblöcke. Falls die Farbdichte- und die Farbwertkomponenten mit einer Auflösung von 8 Bits codiert werden, ist die Gesamtzahl der Bits, die pro Makroblock erforderlich sind, 1_(16_16_8) + 2_(8_8_8) = 3072 Bits. Somit beträgt die Gesamtzahl der Bits, die zum Codieren des gesamten QCIF-Bildes erforderlich sind, jetzt 99_3072 = 304128 Bits, d. h. die Hälfte der Anzahl, die erforderlich sind, falls keine Farbwertunterabtastung ausgeführt wird (siehe oben). Allerdings ist dies immer noch eine sehr große Informationsmenge, wobei immer noch insgesamt 4.561.920 Bits/s erforderlich sind, falls ein auf diese Weise codiertes QCIF-Bild Teil einer Videosequenz mit 15 Rahmen pro Sekunde ist.
  • Die Videocodierung erfordert die Verarbeitung einer großen Informationsmenge. Dies bedeutet notwendig, dass leistungsfähige Signalverarbeitungsvorrichtungen erforderlich sind, um Videobilder zu codieren, und dass ein Kommunikationskanal mit hoher Bandbreite erforderlich ist, falls diese Bilder in ihrer ursprünglichen Form übertragen werden sollen. Allerdings ist es in vielen Situationen nicht möglich, einen Breitband-Übertragungskanal bereitzustellen. Dies betrifft besonders Videotelephonieanwendungen, wo die Videosignale über bestehende Standleitungs-Übertragungskanäle (d. h. über das herkömmliche öffentliche Fernsprechnetz) oder unter Verwendung von Funkübertragungsverbindungen wie etwa jenen, die durch Mobiltelephonnetze bereitgestellt werden, übertragen werden müssen. Es gibt bereits eine Anzahl internationaler Telekommunikationsnormen, die die Richtlinien für die Videocodierung in derartigen Systemen festlegen. Die Normen H.261 und H.263 der Internationalen Telekommunikationsunion (ITU) sind beispielhaft. Die Norm H.261 gibt Empfehlungen für die Videocodierung in Übertragungssystemen, die mit einem Vielfachen von 64 Kilobits/s arbeiten (diese sind typisch Standleitungs-Telephonnetze), während die H.263 ähnliche Empfehlungen für Systeme gibt, in denen die verfügbare Bandbreite kleiner als 64 Kilobits pro Sekunde ist. Tatsächlich sind die zwei Normen sehr eng miteinander verwandt, wobei beide eine als bewegungsprädiktive Codierung bekannte Technik nutzen, um die Informationsmenge, die übertragen werden muss, zu verringern.
  • In der Mobiltelephonie ist es das Ziel, eine Videosequenz über einen Übertragungskanal mit einer verfügbaren Bandbreite von etwa 20 kBits pro Sekunde zu übertragen. Die typische Bildwiederholrate sollte ausreichend sein, um eine gute Illusion der Bewegung zu schaffen, und somit zwischen 10 und 15 Rahmen pro Sekunde liegen. Somit ist klar, dass ein sehr hohes Kompressionsverhältnis (etwa 225 : 1) erforderlich ist, um eine Videosequenz, die einige 4,5 Megabits pro Sekunde erfordert, an einen Kanal anzupassen, der lediglich 20 Kilobits pro Sekunde übertragen kann. Dabei kommen die bewegungsprädiktive Codierung sowie andere Techniken ins Spiel.
  • Die Grundidee hinter der bewegungsprädiktiven Codierung ist die Berücksichtigung der sehr großen Menge vorübergehender Redundanz, die in Videosequenzen vorhanden ist. Wie oben erläutert wurde, gibt es in einer typischen Videosequenz, die mit einer verhältnismäßig raschen Bildwiederholrate (d. h. mehr als 10 Rahmen pro Sekunde) aufgezeichnet wurde, von einem Rahmen zum nächsten lediglich kleine Änderungen. Üblicherweise ist der Hintergrund feststehend, während lediglich einige Teile des Bildes einer Form der Bewegung unterliegen. Alternativ unterliegen alle Elemente einer konsistenten Bewegung, falls sich die Kamera selbst bewegt.
  • Somit kann dieser hohe Grad der Korrelation zwischen aufeinander folgenden Rahmen genutzt werden, wenn versucht wird, die Informationsmenge beim Übertragen einer Videosequenz zu verringern. Mit anderen Worten, ein Rahmen kann aus einem vorherigen sogenannten Referenzrahmen vorausgesagt werden, der üblicherweise, aber nicht notwendig, der Rahmen ist, der dem momentan codierten unmittelbar vorhergeht. In einem solchen Codierungsschema ist es typisch nur die Differenz zwischen dem momentanen Rahmen und dem Referenzrahmen, die codiert und an den Empfänger übertragen wird. Im Allgemeinen wird diese Art der Codierung als INTER-Codierung bezeichnet. Es ist eine notwendige Anforderung eines solchen Codierungsschemas, dass sowohl der Sender als auch der Empfänger eine Aufzeichnung des Referenzrahmens (z. B. des vorher codierten Rahmens) halten. Der Videocodierer in dem Sender vergleicht den momentanen Rahmen mit dem Referenzrahmen, identifiziert die Unterschiede zwischen den beiden Rahmen, codiert sie und überträgt die Informationen über die Änderungen an den Empfänger. In dem Empfänger wird der momentane Rahmen daraufhin in einem Videodecodierer rekonstruiert, indem die Differenzinformationen zu dem Referenzrahmen (d. h. zu dem vorherigen Rahmen) addiert werden. Daraufhin werden die in dem Codierer und in dem Decodierer gespeicherten Rahmen aktualisiert, so dass der momentane Rahmen zu der neuen Referenz wird, wobei das Verfahren auf gleiche Weise von einem Rahmen zum nächsten fortgesetzt wird.
  • Natürlich gibt es einige Situationen, in denen diese Art der Prädiktion nicht verwendet werden kann. Offensichtlich muss der erste Rahmen einer Videosequenz immer an sich codiert und an den Decodierer in dem Empfänger gesendet werden. Es gibt eindeutig keinen vorherigen Rahmen, der als eine Referenz für die prädiktive Codierung verwendet werden kann. Eine ähnliche Situation tritt im Fall eines Szeneschnitts auf. Der momentane Rahmen kann hier so verschieden von dem vorherigen sein, dass keine Prädiktion möglich ist und wieder der neue Rahmen codiert und an sich übertragen werden muss. Diese Art der Codierung wird allgemein als INTRA-Codierung bezeichnet. Viele Codierungsschemata nutzen außerdem die periodische INTRA-Rahmencodierung. Beispielsweise kann alle zehn oder zwanzig Rahmen ein INTRA-Rahmen gesendet werden. Dies erfolgt, um der Wirkung von Codierfehlern zu begegnen, die sich allmählich ansammeln und schließlich in dem rekonstruierten Bild eine inakzeptable Verzerrung verursachen.
  • Die bewegungsprädiktive Codierung kann als eine Erweiterung der oben eingeführten INTER-Codierungstechnik betrachtet werden. Die oben gegebene Darstellung beschreibt, wie die Differenzinformationen an den Empfänger gesendet werden, um die Decodierung eines momentanen Videorahmens mit Bezug auf einen vorherigen Rahmen zu ermöglichen. Die einfachste und nächstliegende Art, die Differenzinformationen zu liefern, wäre es, die Pixelwerte (YUV-Daten) jedes Pixels in dem momentanen Bild, das sich von dem entsprechenden Pixel in dem Referenzbild unterscheidet, zu senden. Allerdings schafft diese Lösung in der Praxis nicht die Verringerung der Datenrate, die erforderlich ist, um die Videoübertragung über Kanäle mit sehr niedriger Bit rate zu ermöglichen. Die bewegungsprädiktive Codierung wendet einen anderen Zugang an. Wie zuvor beschrieben wurde, bewahren sowohl der Codierer als auch der Decodierer eine Aufzeichnung eines Referenzrahmens, wobei der momentane Rahmen mit Bezug auf diesen gespeicherten Rahmen codiert wird. In dem Decodierer wird das momentane Bild mit Bezug auf den gespeicherten vorherigen Rahmen und die vom Codierer übertragenen Differenzinformationen rekonstruiert.
  • Im Codierer wird der momentane Rahmen auf segmentweiser Grundlage untersucht, um die Entsprechung zwischen ihm selbst und dem Referenzrahmen zu bestimmen. Es können eine Anzahl von Segmentierungsschemata angewendet werden. Häufig wird das momentane Bild einfach in regelmäßige Blöcke von Pixeln zerlegt, d. h., der Vergleich kann Makroblock für Makroblock erfolgen. Alternativ kann der Rahmen, vielleicht in einem Versuch, die verschiedenen Elemente des darin enthaltenen Bildes besser zu identifizieren und somit eine genauere Bestimmung der Bewegung in dem Rahmen zu ermöglichen, auf einer anderen Basis unterteilt werden.
  • Unter Verwendung des vordefinierten Segmentierungsschemas wird zwischen jedem Segment des momentanen Rahmens und des Referenzrahmens ein Vergleich vorgenommen, um die "beste Anpassung" zwischen den Pixeln in diesem Segment und einer Gruppe von Pixeln in dem Referenzrahmen zu bestimmen. Es wird angemerkt, dass auf den Referenzrahmen keine feste Segmentierung angewendet wird; die Pixel, die einem gegebenen Segment des momentanen Rahmens am besten entsprechen, können innerhalb bestimmter unten erläuterter Beschränkungen irgendeinen Ort in der Referenz haben. Auf diese Weise kann die bewegungsprädiktive Codierung als ein Versuch betrachtet werden, den Ursprung einer Gruppe von Pixeln in dem momentanen Bild zu identifizieren, d. h., sie versucht durch Rückblick auf den Referenzrahmen festzusetzen, wie sich die Pixelwerte von einem Rahmen zum nächsten fortpflanzen.
  • Wenn eine beste Anpassung für ein gegebenes Segment in dem momentanen Rahmen gefunden worden ist, wird die Entsprechung zwischen dem Segment und dem Referenzrahmen unter Verwendung von "Bewegungsvektoren" codiert. Ein Bewegungsvektor kann als ein Verschiebungsvektor mit den Komponenten Y und y (horizontal und vertikal) betrachtet werden, der tatsächlich von dem Segment des momentanen Rahmens auf Pixelorte in dem Referenzrahmen zu rück zeigt. Somit identifizieren die Bewegungsvektoren durch Vergleich mit dem Referenzrahmen tatsächlich den Ursprung der Pixel in dem momentanen Rahmen. Die Codierung wird fortgesetzt, bis der Ursprung jedes Segments in dem momentanen Rahmen identifiziert worden ist. Die resultierende Darstellung kann als ein "Bewegungsvektorfeld" gedacht werden, das die Gesamtentsprechung zwischen den zwei Rahmen beschreibt.
  • Da verhältnismäßig sehr wenig Bits erforderlich sind, um die Informationen über die Bewegungsvektoren für jedes Segment zu codieren, erzeugt die segmentweise Codierung eines vollständigen Videorahmens unter Verwendung von Bewegungsvektoren eine sehr effiziente Darstellung des momentanen Rahmens. Allerdings ist das Codierungsverfahren nicht vollkommen, und es gibt Fehler und einen Informationsverlust. Fehler entstehen typisch, da die entsprechenden Pixelwerte in dem Referenzrahmen nicht genau identifiziert werden können. Beispielsweise kann es eine Änderung des Bildinhalts von einem Rahmen zum nächsten geben, so dass in dem momentanen Rahmen neue Elemente erscheinen, die in dem Referenzrahmen kein Gegenstück besitzen. Außerdem beschränken viele prädiktive Bewegungscodierer die Art der Bewegung, die zwischen den Rahmen zulässig ist. Diese Beschränkung entsteht wie folgt: Um die Menge der Informationen, die zur Darstellung des Bewegungsvektorfelds erforderlich sind, weiter zu verringern, verwenden bewegungsprädiktive Codierer typisch ein "Bewegungsmodell", das die Art beschreibt, in der die Pixelwerte von einem Rahmen zum nächsten fortgepflanzt werden können. Das Bewegungsvektorfeld wird unter Verwendung eines Bewegungsmodells hinsichtlich einer Menge von "Basisfunktionen" beschrieben. Die Ausbreitung von Pixelwerten von einem Rahmen zum nächsten wird hinsichtlich dieser mathematischen Basisfunktionen dargestellt. Die Bewegung wird typisch als eine Summe dargestellt, die die Basisfunktionen, multipliziert mit bestimmten Koeffizientenwerten, enthält, die in der Weise bestimmt werden, dass sie die beste Approximation des Bewegungsvektorfelds liefern. Da das Bewegungsmodell das Bewegungsvektorfeld nicht genau beschreiben kann, führt dieser Neuausdruck des Bewegungsvektorfelds notwendig einen zusätzlichen Fehler ein. Allerdings besitzt dieser Zugang einen erheblichen Vorteil, da jetzt lediglich die Bewegungsmodellkoeffizienten an den Decodierer übertragen werden müssen. Dieser Vorteil entsteht, da die Bewegungsfeld-Basisfunktionen gemäß der Implementierung und dem Genauigkeitspegel, die für erforderlich gehalten werden, im Voraus gewählt werden, so dass sie sowohl dem Codierer als auch dem Deco dierer an sich bekannt sind. Viele momentan vorgeschlagene Videocodierungsschemata, die die bewegungsprädiktive Codierung nutzen, und insbesondere die Norm H.263, beruhen auf einem Translationsbewegungsfeldmodell, d. h. auf einem, dessen Basisfunktionen lediglich eine geradlinige Bewegung in xund y-Richtung (horizontaler und vertikaler Richtung) darstellen können. Somit können Drehungen und eine Verschiebung von Bildelementen, die zwischen aufeinander folgenden Rahmen auftreten können, nicht dargestellt werden, was unvermeidlich Fehler in die vorausgesagte Bewegung einführt.
  • Schließlich, und um die durch das Bewegungsfeldcodierungsverfahren eingeführten Fehler zu kompensieren, enthalten typische bewegungsprädiktive Codierer eine Fehlerschätzfunktion. Die Informationen über den Prädiktionsfehler werden zusammen mit den Bewegungsfeldmodellkoeffizienten an den Decodierer übertragen. Außerdem enthält ein bewegungsprädiktiver Codierer typisch einen Decodierungsabschnitt, der völlig gleich dem ist, der in dem Empfänger zu finden ist, um den in das Bewegungsfeldcodierungsverfahren eingeführten Fehler zu schätzen. Wenn der momentane Rahmen unter Verwendung der oben beschriebenen bewegungsprädiktiven Verfahren codiert worden ist, rekonstruiert der Decodierungsabschnitt des Codierers den momentanen Rahmen und vergleicht ihn mit der ursprünglichen Version des momentanen Rahmens. Es ist dann möglich, einen "Prädiktionsfehlerrahmen" zu konstruieren, der die Differenz zwischen dem codierten momentanen Rahmen und dem ursprünglichen momentanen Rahmen enthält. Diese Informationen werden zusammen mit den Bewegungsfeldmodellkoeffizienten und eventuell einigen Informationen über die Segmentierung des momentanen Rahmens an den Decodierer übertragen.
  • Selbst unter Verwendung eines solchen Beispiels sind zur Darstellung einer Videosequenz immer noch erhebliche Datenmengen erforderlich.
  • Somit wäre eine verbesserte Art und Weise, in der Videosequenzen unter Verwendung einer verringerten Bitmenge oder verringerter Bitraten codiert werden, während ein niedriger Prädiktionsfehler beibehalten wird, vorteilhaft.
  • Die erheblichen Verbesserungen der vorliegenden Erfindung wurden im Licht dieser Hintergrundinformationen in Bezug auf Videodaten entwickelt.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Dementsprechend schafft die vorliegende Erfindung vorteilhaft eine Vorrichtung und ein zugeordnetes Verfahren zum Bearbeiten einer Videosequenz unter Verwendung der bewegungskompensierten Prädiktion.
  • Es wird eine Art und Weise beschrieben, in der ein Bewegungsfeldvektor durch Unterteilen eines Videorahmens in Segmente und Voraussagen eines Bewegungsfelds eines Segments aus seinen benachbarten Segmenten und unter Verwendung orthogonaler affiner Bewegungsvektorfeldmodelle dargestellt werden kann. Der Betrieb einer Ausführungsform der vorliegenden Erfindung schafft eine Art und Weise, in der Bewegungsvektorfelder schnell und kompakt codiert werden können, während außerdem ein niedriger Prädiktionsfehler beibehalten werden kann. Dadurch wird eine Übermittlung von Videorahmen, die zusammen eine Videosequenz bilden, in verbesserter Qualität geschaffen.
  • Durch den Betrieb einer Ausführungsform der vorliegenden Erfindung wird eine An und Weise geschaffen, in der die Menge der zur Darstellung des Bewegungsvektorfelds erforderlichen Informationen verringert wird, während gleichzeitig eine niedrige Höhe des Prädiktionsfehlers beibehalten wird.
  • Es wird ein Bewegungsfeldcoder für einen Codierer geschaffen, mit dem das Bewegungsvektorfeld gebildet werden kann. Es wird die affine Bewegungsvektorfeldmodellierung genutzt. Im Gegensatz z. B. zu einem reinen Translationsbewegungsfeld kann unter Verwendung der affinen Modellierung eine flexiblere Darstellung des Bewegungsfelds erhalten werden. Durch affine Bewegungsvektorfeldmodelle kann eine typische natürliche Bewegung wie etwa das Zoomen, die Drehung, die Richtungsänderung oder die Translation dargestellt werden. Herkömmliche Systeme, die lediglich ein Translationsmodell nutzen, können keine anderen Bewegungsformen darstellen.
  • Durch Nutzung der affinen Prädiktionsbewegungsvektorfelder wird die Ähnlichkeit affiner Bewegungsvektorfelder von Nachbarsegmenten eines Videorahmens ausgenutzt. Falls z. B. zwei Nachbarsegmente ähnliche Bewegungsvektorfelder haben, kann eines der Bewegungsvektorfelder lediglich durch die Addition eines kleinen oder sogar vernachlässigbaren, d. h. null, Verfeinerungsfelds aus dem anderen berechnet werden. Für jedes Segment eines Videorahmens wird ein affines Bewegungsmodell gewählt, das mit so wenig von null verschiedenen Koeffizienten wie möglich einen ausreichend niedrigen Prädiktionsfehler erreicht. Außerdem werden orthogonale Basisfunktionen genutzt. Die orthogonalen Basisfunktionen besitzen eine niedrige Empfindlichkeit gegenüber der Quantisierung der entsprechenden Bewegungskoeffizienten, so dass die Koeffizienten mit einer kleinen Anzahl von Bits dargestellt werden können. Das heißt, die effiziente Übertragung der Bewegungskoeffizienten erfordert, dass die Koeffizienten auf niedrige Genauigkeitsniveaus quantisiert werden. Allerdings führen die herkömmlich genutzten Arten von Basisfunktionen zu inakzeptablen Zunahmen des Prädiktionsfehlers, wenn sie durch eine kleine Anzahl von Bits dargestellt werden. Da die den orthogonalen Basisfunktionen entsprechenden Koeffizienten wesentlich robuster gegenüber der Quantisierung sind, erfolgt während des Betriebs einer Ausführungsform der vorliegenden Erfindung eine vorteilhafte Nutzung der orthogonalen Basisfunktion.
  • In einem Aspekt der vorliegenden Erfindung wird ein Bewegungsfeldcoder für einen Videocodierer geschaffen. Der Bewegungsfeldcoder kann ein komprimiertes Bewegungsvektorfeld bilden, das aus einer Menge von Bewegungsvektoren aller Pixel eines momentanen Rahmens gebildet ist. Das Bewegungsvektorfeld wird aus einem Prädiktionsbewegungsvektorfeld und aus einem Verfeinerungsbewegungsvektorfeld gebildet.
  • In einem weiteren Aspekt der vorliegenden Erfindung wird ein bewegungskompensierter Prädiktor für einen Videocodierer geschaffen. Der bewegungskompensierte Prädiktor empfängt durch den Bewegungsfeldcoder gebildete Angaben des komprimierten Bewegungsvektorfelds. Der bewegungskompensierte Prädiktor konstruiert einen Prädiktionsrahmen. Der Prädiktor kann die Pixel eines Rahmens durch Berechnen der Bewegungsvektorfelder jedes Segments davon rekonstruieren. Das Bewegungsvektorfeld wird auf der Grundlage eines Prädiktionsbewegungsvektorfelds und eines Verfeinerungsbewegungsvektorfelds berechnet.
  • In einem nochmals weiteren Aspekt der vorliegenden Erfindung wird ein bewegungskompensierter Prädiktor für einen Videodecodierer geschaffen. Der bewegungskompensierte Prädiktor empfängt Angaben eines vorausgesagten Bewegungsvektorfelds und Koeffizienten des Verfeinerungsbewegungsvektorfelds.
  • Somit wird in diesen und weiteren Aspekten eine Vorrichtung für ein Videogerät für die Bearbeitung einer Videosequenz geschaffen. Es wird die Videosequenz wenigstens eines momentanen Videorahmens gebildet, der wenigstens ein erstes Nachbarsegment und ein zweites Nachbarsegment besitzt. Die Vorrichtung bildet Approximationen eines Bewegungsvektorfelds des zweiten Nachbarsegments. Die Vorrichtung enthält eine Bewegungsvektorfeld-Baueinrichtung, die so gekoppelt ist, dass sie Angaben empfängt, die ein erstes affines Bewegungsmodell darstellen, das eine Approximation eines ersten Bewegungsvektorfelds bildet, das das erste Nachbarsegment darstellt. Die Bewegungsvektorfeld-Baueinrichtung bildet in Reaktion auf die Angaben, die das erste affine Bewegungsmodell darstellen, ein zweites affines Bewegungsmodell. Das zweite affine Bewegungsmodell bildet die Approximation des Bewegungsvektorfelds des zweiten Nachbarsegments.
  • Ein vollständigeres Verständnis der vorliegenden Erfindung und von deren Umfang kann aus der unten kurz zusammengefassten beigefügten Zeichnung, aus der folgenden ausführlichen Beschreibung der derzeit bevorzugten Ausführungsformen der Erfindung und aus den beigefügten Ansprüchen erhalten werden.
  • KURZSESCHREIBUNG DER ZEICHNUNG
  • 1 veranschaulicht einen Codierer und einen Decodierer eines Videokommunikationssystems, in dem eine Ausführungsform der vorliegenden Erfindung betreibbar ist.
  • 2 veranschaulicht einen Funktionsblockschaltplan eines Bewegungsfeldcoders, der einen Abschnitt des in 1 gezeigten Kommunikationssystems bildet.
  • 3 veranschaulicht einen Funktionsblockschaltplan eines bewegungskompensierten Prädiktors, der einen Abschnitt des Codierers und ebenfalls des Decodierers des in 1 gezeigten Kommunikationssystems bildet.
  • 4 veranschaulicht eine Art und Weise, in der ein Videorahmen während des Betriebs einer Ausführungsform der vorliegenden Erfindung in Segmente unterteilt wird.
  • 5 veranschaulicht eine Tabelle, die beispielhafte Werte und die Bedeutung der während des Betriebs einer Ausführungsform der vorliegenden Erfindung genutzten Auswahlbits veranschaulicht.
  • AUSFÜFHRLICHE BESCHREIBUNG
  • Die Erfindung ist in den beigefügten Ansprüchen dargestellt.
  • Die neue Art und Weise der bewegungsprädiktiven Videocodierung einer Ausführungsform des vorliegenden Erfindungsberichts verringert weiter die in einem Videocodierungssystem mit niedriger Bitrate vom Codierer zum Decodierer zu übertragende Datenmenge, während sie eine gute Bildqualität beibehält. Die Art und Weise enthält einen neuen Weg der weiteren Voraussage der Pixelwerte der Segmente in dem momentanen Rahmen unter Verwendung bereits codierter Segmente desselben Rahmens.
  • Wenn in einer beispielhaften Implementierung eine neue Videosequenz codiert und übertragen werden soll, wird, wie aus dem Stand der Technik bekannt ist und oben beschrieben wurde, der erste Rahmen in der Sequenz im INTRA-Format übertragen. Dieser Rahmen wird daraufhin in dem Codierer und in dem Decodierer gespeichert und bildet einen Referenzrahmen für den nächsten (d. h. zweiten) Rahmen in der Sequenz.
  • Wenn der Codierer den zweiten Rahmen zu codieren beginnt, startet er den Codierungsprozess dadurch, dass er das erste Segment des Rahmens untersucht. In der bevorzugten Ausführungsform ist der momentane Rahmen in eine Menge von 16_16 Pixelsegmenten unterteilt, wobei dies für das Verfahren aber nicht wesentlich ist und andere Segmentierungsschemata vorstellbar sind. Die Codierung wird von dem ganz linken oberen Segment gestartet und schreitet von links nach rechts und von oben nach unten über den gesamten Rahmen fort (d. h., das Codierungsverfahren wird in Zeilen von oben nach unten fortschreitend ausgeführt).
  • Es wird ein Bewegungsvektorfeld bestimmt, das die Abbildung der Pixelwerte zwischen dem Referenzrahmen und dem ersten Segment des momentanen Rahmens beschreibt, und daraufhin ein sogenanntes "affines" Bewegungsmo dell verwendet, um diesen Bewegungsvektor zu approximieren und eine Menge von Bewegungskoeffizienten zu erzeugen. Das affine Bewegungsmodell ist eine Spezialklasse eines Bewegungsmodells, dessen mathematische Form so beschaffen ist, dass es Translations-, Dreh- und Verschiebungsbewegungen zwischen den Rahmen ermöglicht. Es umfasst 6 Basisfunktionen. Somit werden die Bewegungsvektoren im Wesentlichen durch eine Summe ersetzt, die die sechs Basisfunktionen, multipliziert mit geeignet gewählten "Bewegungskoeffizienten", umfasst. Da die Basisfunktionen selbst sowohl dem Codierer als auch dem Decodierer bekannt (d. h. darin gespeichert) sind, ist es daraufhin ausreichend, lediglich die Bewegungskoeffizienten (oder eine Teilmenge davon) an den Decodierer zu übertragen. Diejenige Gruppe von Pixeln in dem Referenzrahmen, die für irgendein gegebenes Segment des momentanen Rahmens das beste affine Bewegungsmodell liefert, kann wenigstens in der Theorie in irgendeinem Gebiet des Referenzrahmens liegen. Es sollte hier hervorgehoben werden, dass ein Ziel dieses Verfahrens nicht nur die Minimierung des Prädiktionsfehlers ist, sondern das Auffinden desjenigen affinen Bewegungsfeldmodells, das für ein Segment in einem "Rate-Verzerrung"-Sinn die beste Anpassung liefert. Das heißt, die beste Anpassung wird dadurch bestimmt, dass sowohl ein Maß der Bildverzerrung als auch ein Maß der erforderlichen Datenmenge berücksichtigt wird, um dieses Verzerrungsniveau zu erzielen.
  • Da das erste (ganz linke obere) Segment des Rahmens keine vorher codierten Nachbarn besitzt, kann keine weitere Aktion unternommen werden, wobei der Codierer zum nächsten Segment des momentanen Rahmens übergeht. Daraufhin wird unter Verwendung derselben Rate-Verzerrung-Art und der Bewertung der besten Anpassung wie zuvor beschrieben dasjenige affine Bewegungsfeldmodell bestimmt, das die beste Anpassung zwischen dem Referenzrahmen und dem zweiten Segment des momentanen Rahmens liefert. Wie zuvor kann das entsprechende Gebiet der Pixelwerte irgendwo in dem Referenzrahmen liegen und sich tatsächlich mit dem für das erste Segment des momentanen Rahmens zuvor als die beste Anpassung bestimmten überlappen.
  • Das zweite Segment besitzt ein vorher codiertes Nachbarsegment (d. h, das erste Segment). Der Codierer betrachtet nun, ob es "effizienter" ist, das zweite Segment hinsichtlich des zuvor für das erste Segment bestimmten affinen Bewegungsmodells anstatt gemäß den neu bestimmten affinen Bewegungskoeffizienten für das zweite Segment selbst zu modellieren. Die Begründung ist wie folgt: Da die Bewegungskoeffizienten für das erste Segment bereits bestimmt und an den Decodierer übertragen worden sind, kann die Menge der Informationen, die während des Codierens des zweiten Segments an den Decodierer übertragen werden müssen, möglicherweise verringert werden. Somit kann eine Verbesserung der Codierungseffizienz erhalten werden.
  • Allerdings ist es unwahrscheinlich, dass die Bewegungskoeffizienten für das erste Segment genau gleich jenen sind, die das Bewegungsvektorfeld des zweiten Segments am genauesten modellieren. Somit werden die für das erste Segment berechneten Bewegungskoeffizienten nicht einfach an sich verwendet, sondern es wird eine Projektion ausgeführt, um das Bewegungsfeld des ersten Segments auf das zweite Segment abzubilden. Selbst nachdem diese Projektion ausgeführt worden ist, ist es immer noch wahrscheinlich, dass außerdem gewisse Informationen über den Unterschied zwischen den Bewegungsfeldern des ersten und des zweiten Segments an den Decodierer gesendet werden müssen, um eine inakzeptable Verzerrung in dem rekonstruierten Bild zu vermeiden. Somit führt der Codierer einen Vergleich zwischen der Datenmenge aus, die erforderlich ist, a) um Bewegungskoeffizientendaten zu übertragen, die spezifisch für das zweite Segment bestimmt worden sind, und b), die erforderlich sind, falls das Bewegungsvektorfeld des zweiten Segments aus einer Projektion des Bewegungsmodells des ersten Segments plus gewissen "Verfeinerungs"-Informationen bestimmt wird. Wenn der Codierer seine Wahl trifft, welche Informationen zu übertragen sind, muss er auch Verzerrungen berücksichtigen, die durch das Prädiktionsverfahren in das Bild eingeführt werden können. Dieser Vergleich zwischen den Optionen kann als Bestimmung der "Kosten" der Wahl einer besonderen Option, als eine Abwägung zwischen der zu übertragenden Menge von Informationen und der Menge der zulässigen Verzerrung, gedacht werden.
  • Möglicherweise ist der Nutzen dieses Zugangs zur bewegungsprädiktiven Codierung nicht sofort sichtbar. Allerdings wird in vielen Fällen festgestellt, dass nach Projektion des Bewegungsfeldmodells von einem Nachbarsegment sehr wenig oder sogar null Verfeinerungsinformationen erforderlich sind. Dies kann zu einer erheblichen Verringerung der Datenmenge führen, die vom Codierer zum Decodierer übertragen werden muss. Falls null Verfeinerungsinformationen erforderlich sind, kann das Bewegungsvektorfeld des zweiten Segments lediglich auf der Grundlage der bereits in dem Decodierer gespeicherten Bewe gungskoeffizienten vorausgesagt werden.
  • Bisher sind in diesem Beispiel lediglich das erste und das zweite Segment des Rahmens betrachtet worden. Wie oben erläutert wurde, besitzt das zweite Segment gemäß dem in der bevorzugten Ausführungsform der Erfindung verwendeten Segmentierungsschema lediglich einen Nachbarn, der zur Voraussage seiner Bewegungskoeffizienten verwendet werden kann. Dasselbe trifft für alle weiteren Segmente in der ersten Zeile des Rahmens zu. Alle diese Segmente können lediglich vorher codierte Nachbarn unmittelbar links von ihnen haben. Allerdings sind in der zweiten und in den nachfolgenden Zeilen des Bildes auch vorher codierte Segmente über jedem Segment verfügbar. Somit besitzen die Segmente in den nachfolgenden Zeilen links und darüber Nachbarn. Dies betrifft alle Segmente mit Ausnahme des ersten in jeder Zeile, das lediglich einen vorher codierten Nachbarn direkt über sich hat. Somit gibt es bei Betrachtung eines allgemeinen Segments in einem zu codierenden Rahmen mehrere Möglichkeiten für die Prädiktion der Bewegungskoeffizienten. In einem allgemeinen Fall kann der Codierer versuchen, die Bewegungskoeffizienten für ein gegebenes Segment unter Verwendung des Bewegungsfeldmodells für das Segment über ihm oder links von ihm vorauszusagen. Alternativ kann er unter Verwendung des Bewegungsfeldmodells für beide Nachbarn eine Art Mittelwert bilden. Auf jeden Fall wird das aus dem Nachbarsegment bzw. aus den Nachbarsegmenten vorausgesagte Bewegungsfeldmodell als das "Prädiktionsfeld" bezeichnet, wobei die Differenz zwischen dem Prädiktionsfeld und dem genau für das Segment selbst bestimmten Bewegungsfeldmodell das "Verfeinerungsfeld" genannt wird. In der bevorzugten Ausführungsform ist sowohl das Prädiktionsals auch das Verfeinerungsfeld ein affines Bewegungsfeldmodell. Somit sollte die Summe des Prädiktionsfelds und des Verfeinerungsfelds gleichwertig dem durch Anwenden des affinen Bewegungsmodells auf das Segment selbst bestimmten Bewegungsfeldmodell sein. In einer Situation, in der das Bewegungsfeldmodell für ein gegebenes Segment nicht aus irgendeinem seiner Nachbarn vorausgesagt werden kann, wird das Prädiktionsfeld auf null gesetzt, wobei das Verfeinerungsfeld gleich dem spezifisch für das Segment selbst bestimmten Bewegungsfeldmodell wird.
  • Wie aus der obigen Beschreibung klar ist, gibt es mehrere verschiedene Wege, auf denen ein gegebenes Segment codiert werden kann. Die Wahl, welche Option zu verwenden ist, wird in dem Codierer auf der Grundlage der zuvor be schriebenen "Rate-Verzerrung"-Betrachtungen getroffen. Folglich müssen je nach der gewählten Codierungsoption mehrere verschiedene Datentypen an den Decodierer übertragen werden, wobei diese Informationen auf eindeutige Weise an der Decodierer übertragen werden müssen, so dass das Segment richtig rekonstruiert und angezeigt werden kann. Die verschiedenen Codierungsoptionen sind wie folgt. 1.) Ein gegebenes Segment kann als eine Summe eines Prädiktionsfelds und eines Verfeinerungsfelds dargestellt werden. 2.) Das Segment kann lediglich als ein Prädiktionsfeld dargestellt werden. Diese Situation kann entstehen, wenn das Segment hinsichtlich des Bewegungsfelds eines oder mehrerer seiner vorher codierten Nachbarn adäquat dargestellt werden kann und keine Verfeinerungsinformationen erforderlich sind oder falls der Codierer festgestellt hat, dass es effizient ist, das Verfeinerungsfeld auf null zu verringern. 3.) Das besagte Segment kann unter Verwendung eines spezifisch für das Segment bestimmten Bewegungsmodells unter Verwendung des Referenzrahmens codiert werden. In diesem Fall wird das Prädiktionsfeld wie oben beschrieben auf null gesetzt und das Verfeinerungsfeld gleich dem aus dem Referenzrahmen bestimmten Bewegungsfeldmodell gesetzt.
  • Grundsätzlich gibt es zwei Arten von Informationen, die an den Decodierer übertragen werden müssen, um eine richtige Rekonstruktion eines gegebenen Segments zu ermöglichen. Diese sind: 1.) Auswahlinformationen, die ermöglichen, dass die Decodierer das richtige Nachbarelement bzw. die richtigen Nachbarelemente zur Verwendung bei der Prädiktion auswählt; 2.) Bewegungskoeffizient-Informationen. Wann immer ein Segment unter Verwendung eines Prädiktionsfelds codiert wird, ist es unabhängig davon, ob es ein zugeordnetes Verfeinerungsfeld gibt oder nicht, erforderlich, Informationen über das bei der Prädiktion verwendete Nachbarelement bzw. die bei der Prädiktion verwendeten Nachbarelemente zu liefern. Da das Bewegungsfeldmodell bzw. die Bewegungsfeldmodelle des vorher codierten Nachbarsegments bzw. der vorher codierten Nachbarsegmente dem Decodierer bereits bekannt (d. h. in ihm gespeichert) sind, brauchen keine Bewegungskoeffizientendaten übertragen zu werden. Außerdem können zusätzliche Informationen erforderlich sein, falls die Prädiktion z. B. auf mehr als einem Nachbarsegment beruht oder falls die Nachbarsegmente in Untersegmente unterteilt wurden und das Bewegungsfeldmodell eines oder mehrerer der Untersegmente zum Bilden des Prädiktionsfelds verwendet wird. Wenn ein Verfeinerungsfeld verwendet wird, müssen die Bewegungskoeffizientenwerte geliefert werden. Es sollte daran erinnert werden, dass in diesem Fall lediglich die Bewegungskoeffizientendaten übertragen werden müssen, da die Bewegungsmodell-Basisfunktionen sowohl dem Decodierer als auch dem Codierer bekannt sind.
  • Somit enthält der vom Codierer an den Decodierer übertragene Datenstrom wahrscheinlich sowohl Bewegungskoeffizientendaten als auch eine Vielzahl von Auswahldaten (d. h. Nichtbewegungskoeffizientendaten), die den Decodierer anweisen, verschiedene Operationen auszuführen. Wenn der Decodierer Nichtbewegungskoeffizientendaten empfängt, sollte er z. B. ein Prädiktionsbewegungsfeldmodell konstruieren, das das durch die Auswahldaten angegebene Nachbarsegment bzw. die durch die Auswahldaten angegebenen Nachbarsegmente oder Nachbaruntersegmente enthält. Wenn der Decodierer Bewegungskoeffizientendaten empfängt, muss er unter Verwendung der übertragenen Bewegungskoeffizientenwerte und der gespeicherten Bewegungsmodell-Basisfunktionen ein Verfeinerungsbewegungsfeldmodell konstruieren. Das Format des in der bevorzugten Ausführungsform der Erfindung durch den Codierer gelieferten Datenstroms wird weiter unten im Text ausführlicher beschrieben.
  • Es sind einige weitere Verfeinerungen des Verfahrens möglich. In der bevorzugten Ausführungsform der Erfindung können die Nachbarsegmente in kleinere Untersegmente unterteilt werden. Genauer kann jedes 16_16-Pixelsegment in vier 8_8-Pixelblöcke unterteilt werden, wobei die Bewegungsfeldmodelle für diese Untersegmente zur Ableitung von Prädiktionsfeldern verwendet werden können. In diesem Fall besitzt ein allgemeines 16_16-Pixelsegment vier unmittelbar benachbarte 8_8-Pixeluntersegmente, zwei direkt darüber und zwei unmittelbar links davon, die betrachtet werden können. In dieser Situation ist der Entscheidungsprozess etwas komplizierter, funktioniert aber im Wesentlichen auf die gleiche Weise wie oben in den vorangehenden Absätzen beschrieben. Die Wahl der Größe der Untersegmente ist nicht auf das eben dargestellte Beispiel beschränkt, wobei eine Vielzahl anderer Untersegmentgrößen vorstellbar sind. Zum Beispiel könnten 4_8- oder 8_4-Pixelblöcke als Untersegmente verwendet werden.
  • Wenn das Verfahren gemäß der Erfindung in der Praxis angewendet wird, wird wie oben erklärt häufig festgestellt, dass sehr wenige Verfeinerungsinformationen erforderlich sind und dass das Bewegungsmodell eines allgemeinen Segments mit recht hoher Genauigkeit aus den Bewegungsfeldmodellen seiner Nachbarn vorausgesagt werden kann. Die Erfindung enthält ein weiteres Merkmal, durch das einzelne Koeffizienten des Verfeinerungsfelds auf null gesetzt werden können oder das gesamte Verfeinerungsfeld auf null gesetzt werden kann, falls dies in einem "Rate-Verzerrung-Sinn" effizient ist. Mit anderen Worten, das Verfeinerungsfeld kann auf null gesetzt werden, falls die dabei eingeführte Bildverzerrung bei Betrachtung der Verringerung der zu übertragenden Datenmenge annehmbar ist. Dieses Zusatzmerkmal verringert die Datenmenge, die vom Codierer an den Decodierer übertragen werden muss, weiter.
  • Zunächst kann anhand von 1 ein allgemein bei 10 gezeigtes Kommunikationssystem eine Videosequenz zwischen einem Videosequenzgenerator und einem Videosequenzempfänger übermitteln. In der Veranschaulichung der Figur ist der Codierer 12 des Videosequenzgenerators gezeigt und ist außerdem ein Decodierer 14 gezeigt, der einen Abschnitt des Videosequenzempfängers bildet. Aus Einfachheitsgründen sind weitere Elemente des Videosequenzgenerators bzw. -empfängers nicht gezeigt. Es ist ein Kommunikationspfad 16 gezeigt, der die Abschnitte des Kommunikationssystems verbindet. Der Kommunikationspfad kann irgendwelche verschiedenen Formen einschließlich z. B. einer Funkverbindung annehmen.
  • Der Codierer 12 ist hier zum Empfangen eines Videoeingangssignals auf der Leitung 18 gekoppelt gezeigt. Das Videoeingangssignal wird an eine Bewegungsschätzeinrichtung 22 und an einen Eingang eines Subtrahierers 24 geliefert. Außerdem ist die Bewegungsschätzeinrichtung so gekoppelt, dass sie Angaben eines in einem Bildspeicher 26 gespeicherten Referenzrahmens empfängt. Die Bewegungsschätzeinrichtung berechnet die Bewegungsvektoren von Pixeln zwischen einem Rahmen, der gerade codiert wird, d. h. dem momentanen Videoeingangssignal In(x, y), und einem früheren, d. h. einem Referenzrahmen, Rref(x, y).
  • Wenn der Codierer jedes Segment codiert hat, können die für seine Rekonstruktion erforderlichen Informationen an den Decodierer übertragen werden und kann der Decodierer die Rekonstruktion des Segments starten. Da jeder Rahmen auf segmentweiser Grundlage codiert wird und in dem Prädiktionsverfahren lediglich vorher codierte Segmente verwendet werden, kann die Rekonstruktion des Rahmens in dem Decodierer sofort starten, d. h., es braucht nicht gewartet zu werden, bis der gesamte Rahmen codiert worden ist. Die Informationen über jedes Segment werden an den Decodierer übertragen, sobald sie verfügbar werden, wobei die Decodierung des Rahmens in dem Empfänger im Wesentlichen parallel zu dem Codierungsprozess stattfindet. In Videotelephonieanwendungen besitzt dies den Vorteil, dass eine Ende-Ende-Verzögerung minimal gehalten wird. Natürlich kann das Verfahren auch in Videospeicher- und -auslesesystemen angewendet werden, in denen eine sofortige Übertragung keine notwendige Anforderung ist. In diesem Fall gibt es keine Anforderung, dass die Daten sofort übertragen werden, so dass es auch möglich sein könnte, andere Nachbarsegmente in dem momentanen Rahmen für Prädiktionszwecke zu verwenden.
  • Die Bewegungsschätzeinrichtung 22 ist mit einem Bewegungsfeldcoder 28 gekoppelt. Der Bewegungsfeldcoder 28 kann ein Bewegungsvektorfeld, d. h. eine Menge von Bewegungsvektoren aller Pixel des momentanen Rahmens, bilden. Das durch den Bewegungsfeldcoder erzeugte Feld wird über die Leitung 32 an einen Multiplexer 34 geliefert und anschließend auf dem Kommunikationspfad 16 an den Videosequenzempfänger und dessen Decodierer 14 übermittelt.
  • Weiter ist gezeigt, dass der Codierer einen bewegungskompensierten Prädiktor (MC-Prädiktor) 36 enthält. Der Prädiktor 36 ist außerdem mit dem Bildspeicher 26 gekoppelt. Der Prädiktor 36 kann einen Prädiktionsrahmen erzeugen, der dem Subtrahierer 24 und außerdem einem Summierer 38 zugeführt wird.
  • Die von dem Subtrahierer 24 gebildeten Differenzwerte werden an einen Prädiktionsfehlercoder 42 geliefert. Der Prädiktionsfehlercoder bestimmt die Differenzen in Bezug auf den Pixelwert zwischen dem momentanen Eingangsvideorahmen und der MC-vorausgesagten Version des Rahmens, um eine Angabe des Prädiktionsfehlers zu erzeugen. Außerdem ist der Prädiktionsfehlercoder 42 wiederum mit dem Multiplexer 34 und einem Prädiktionsfehlerdecodierer 46 gekoppelt. Der Prädiktionsfehler-Decodierungsblock decodiert den Prädiktionsfehler, der durch den Addierer 38 zu dem MC-vorausgesagten momentanen Rahmen hinzugefügt wird, wobei das Ergebnis in dem Bildspeicher 26 gespeichert wird.
  • Der Decodierer 14 ist hier in der Weise gezeigt, dass er einen Demultiplexer 52, einen Prädiktionsfehlerdecodierer 54, einen bewegungskompensierten Prädiktor 36, einen Summierer 56 und einen Bildspeicher 26 enthält. Der Prädiktor 36 des Codierers und der des Decodierers sind ebenso wie die Bildspeicher 26 der jeweiligen Vorrichtungen mit den gleichen Bezugszeichen versehen.
  • Die Bewegungsschätzeinrichtung 22 berechnet die Bewegungsvektoren (Δx(x, y), Δy(x, y)) der Pixel zwischen dem als der momentane Rahmen In(x, y) bezeichneten Rahmen, der codiert wird, und dem Referenzrahmen Rref(x, y). Der Referenzrahmen ist einer der vorher codierten und übertragenen Rahmen, der zu einem gegebenen Zeitpunkt in dem Bildspeicher 26 des Codierers und ebenfalls in dem des Decodierers verfügbar ist.
  • Δx(x, y) und Δy(x, y) sind die Werte der horizontalen bzw. der vertikalen Verschiebung. Die Menge der Bewegungsvektoren aller Pixel in dem momentanen Rahmen, die als ein Bewegungsvektorfeld bezeichnet werden, wird durch den Bewegungsfeldcoder 28 komprimiert und anschließend wie oben angemerkt an den Decodierer gesendet.
  • Zur Angabe, dass die Kompression des Bewegungsvektorfelds typisch verlustbehaftet ist, werden die komprimierten Bewegungsvektoren als (Δx(x, y), Δy(x, y)) bezeichnet. Die komprimierten Bewegungsvektoren und der Referenzrahmen werden in dem bewegungskompensierten Prädiktor 36 verwendet, um einen Prädiktionsrahmen Pn(x, y) zu konstruieren. Der Prädiktionsrahmen ist eine codierte Version des momentanen Rahmens In(x, y), die unter Verwendung des durch die Bewegungsschätzeinrichtung 22 und den Bewegungsfeldcoder 28 bestimmten Bewegungsvektorfelds und der Pixelwerte des Referenzrahmens Rref(x, y) berechnet wird. Die folgende Gleichung zeigt die Art und Weise, in der der Prädiktionsrahmen berechnet wird:
    GLEICHUNG 1 Pn(x, Y) = Rref(x + Δ x(x, y), Y + Δ (x, y))
  • Der Prädiktionsfehler, d. h. die Differenz zwischen dem momentanen Rahmen und dem Prädiktionsrahmen, ist wie folgt:
    GLEICHUNG 2 En(x, y) = In(x, Y) – Pn(x, Y)
  • Der Prädiktionsfehler wird komprimiert und an den Decodierer 14 gesendet. Der komprimierte Prädiktionsfehler wird als En(x,y) bezeichnet.
  • Die Pixel des momentan codierten Rahmens In(x,y) werden in dem Decodierer 14 dadurch rekonstruiert, dass unter Verwendung der empfangenen Bewegungsvektoren und durch Addieren des empfangenen Prädiktionsfehlers En(x, y) die Prädiktionspixel in dem Referenzrahmen Rref(x, y) wie folgt ermittelt werden:
    GLEICHUNG 3 I ~n(x, y) = Rref(x+Δ ~x(x, y)) + Δ ~(x, y)) + E ~(x, y).
  • Die Differenz zwischen dem codierten Rahmen und dem ursprünglichen Rahmen ist wie folgt bestimmt:
    GLEICHUNG 4 Dn(x, y) = In(x, y) – In(x,y)und wird als der Rekonstruktionsfehler bezeichnet.
  • Der durch den MC-Prädiktor 36 gebildete bewegungskompensierte Prädiktionsrahmen Pn(x, y) wird so konstruiert, dass der Betrag des Rekonstruktionsfehlers minimiert wird und dass gleichzeitig der Betrag der zur Darstellung des Bewegungsvektorfelds erforderlichen Informationen minimiert wird.
  • Ein Rahmen einer typischen Videosequenz enthält eine Anzahl von Segmenten mit verschiedener Bewegung. Somit wird die bewegungskompensierte Prädiktion dadurch ausgeführt, dass der Rahmen In(x, y) in mehrere Segmente unterteilt und die Bewegung dieser Segmente zwischen diesem Rahmen und einem Referenzrahmen geschätzt wird. Die Segmentierungsinformationen sind ein inhärenter Bestandteil der Bewegungsdarstellung. Wenn keine Standardrahmensegmentierung verwendet wird, die sowohl dem Codierer als auch dem Decodierer bekannt ist, müssen an den Decodierer zusätzliche Informationen übertragen werden, die die endgültige Teilung des Rahmens beschreiben. In der Praxis enthält ein Segment typisch wenigstens einige wenige zehn Pixel. Um die Bewegungsvektoren dieser Pixel kompakt darzustellen, ist es wünschenswert, dass ihre Werte durch eine Funktion weniger Parameter beschrieben werden. Eine solche Funktion wird als ein Bewegungsvektorfeldmodell bezeichnet. Für die folgende Beschreibung werden die Bewegungsvektoren eines Bildsegments unter Verwendung des folgenden allgemeinen additiven Ausdrucks genähert:
    GLEICHUNG 5 Δx(x, y) = Δxprd(x, y) + Δxrefine(x, Y) Δy(x, y) = Δyprd(x, y) = Δyrefine(x, y).
  • Die zweiten Terme der obigen Gleichung werden als Verfeinerungsbewegungsvektorfelder bezeichnet und wie folgt als Linearkombinationen ausgedrückt:
  • GLEICHUNG 6
    Figure 00230001
  • Die Parameter cn werden als Verfeinerungsbewegungskoeffizienten bezeichnet. Die Koeffizienten werden in dem Codierer komprimiert, auf dem Kommunikationspfad 16 übertragen und daraufhin in dem Decodierer 14 wiedergewonnen.
  • Die Funktionen fn werden als Basisfunktionen bezeichnet und sind sowohl dem Codierer 12 als auch dem Decodierer 14 bekannt. Die Menge der Vektoren Δxprd(x, y), Δyprd(x, y)) wird als ein Prädiktionsbewegungsvektorfeld bezeichnet und ist ebenfalls sowohl dem Codierer als auch dem Decodierer bekannt.
  • Der Prädiktionsfehlerrahmen, En(x, y), siehe Gleichung 2, der sich nach der bewegungskompensierten Prädiktion ergibt, wird typisch unter Verwendung einer zweidimensionalen Transformation wie etwa einer diskreten Kosinustransformation (DCT) codiert. Dieses Verfahren wird als Prädiktionsfehlercodierung bezeichnet und soll den Prädiktionsfehler verringern. Da die Prädiktionsfehlercodierung üblicherweise verlustbehaftet ist, führt dies zu einem Rekonstruktionsfehler.
  • Eine Hauptaufgabe des Decodierers 12 ist es, eine geeignete Menge von Bewegungskoeffizienten zu ermitteln, die codiert und an den Decodierer übertragen werden sollen. Üblicherweise wird die resultierende zugezogene Verzerrung durch Erhöhen der Anzahl der zum Codieren der Koeffizienten zugeordneten Bits verringert. Allerdings lohnt die Verringerung der Verzerrung nicht immer die erhöhte Anzahl der Bits. Ein Weg zur Behandlung einer solchen Abwägung besteht typisch in der Minimierung des folgenden Lagrange-Kriteriums wie folgt:
    GLEICHUNG 7 L=D+λ·B.
  • Der Term D stellt in dieser Gleichung die zugezogene Verzerrung, d. h. den Fehler beim Codieren durch eine gegebene Menge von Koeffizienten, dar. Die Kosten des Sendens der Koeffizienten werden durch die Anzahl der Bits B dargestellt. Der Faktor λ ist eine als der Lagrange-Parameter bezeichnete Konstante.
  • Im Betrieb einer Ausführungsform der vorliegenden Erfindung ist das Bewegungsvektorfeld eines gegebenen Segments eines Videorahmens wie folgt eine Summe von zwei affinen Bewegungsvektorfeldern, d. h. des Prädiktionsbewegungsvektorfelds und des Verfeinerungsvektorfelds:
    GLEICHUNG 8 Δx(x, y) = Δxprd(x, y) + Δxrefine(x, y) Δy(x, y) =Δyprd(x, y) + Δyrefine(x, y).
  • Das Prädiktionsbewegungsvektorfeld wird auf einem von mehreren Wegen aus dem Bewegungsvektorfeld eines oder mehrerer Nachbarsegmente erhalten. Zum Beispiel wird das Prädiktionsbewegungsvektorfeld in einer Implementierung dadurch erhalten, dass das affine Bewegungsvektorfeld eines Nachbarsegments, z. B. eines angrenzenden Segments, in den durch das momentane Segment erfassten Bereich extrapoliert wird. Da das momentane Segment mehrere Nachbarsegmente haben kann, werden üblicherweise Signalisierungsinformationen an den Decodierer geliefert, um zu spezifizieren, welches Segment zu verwenden ist. In einer weiteren Implementierung wird das Prädiktionsbewegungsvektorfeld unter Verwendung eines besonderen Verfahrens, das sowohl dem Codierer als auch dem Decodierer bekannt ist, aus einer Kombination der afiinen Bewegungsvektorfelder mehrerer Nachbarsegmente erhalten. Dieses Verfahren ist z. B. die Mittelung oder die Bestimmung des Medians der horizontalen und der vertikalen Bewegungsvektorfeldkomponenten.
  • Das Verfeinerungsbewegungsvektorfeld besitzt ein affines Modell, das wie folgt ausgedrückt wird: GLEICHUNG 9
    Figure 00250001
    in der die Basisfunktionen f1..., f3 affine orthogonale Funktionen sind. Die Basisfunktionen sind in Bezug auf ein Rechteck, das das gegebene Segment umschreibt, orthogonal. Außerdem sind die Koeffizienten c1,..., c6 Koeffizienten des Verfeinerungsbewegungsvektorfelds, die der orthogonalen Menge der Basisfunktionen entsprechen.
  • Die Verfeinerungsbewegungskoeffizienten werden für jedes Segment in dem Rahmen während der Codierung durch den Codierer 12 und insbesondere durch den Bewegungsfeldcoder 28 bestimmt.
  • 2 veranschaulicht den Bewegungsfeldcoder 28 ausführlicher. Der Coder 28 ist hier in der Weise gezeigt, dass er eine Auswahleinrichtung und eine Baueinrichtung 62 von Prädiktionsbewegungsfeldern, einen Bewegungsanalysator 64, eine Bewegungskoeffizient-Entfernungseinrichtung 66 und einen Quantisierer 68 enthält.
  • Die Auswahleinrichtung und die Baueinrichtung 62 können für ein gegebenes Segment ein vorher codiertes Segment des momentanen Rahmens oder eine Kombination solcher Segmente bestimmen, deren Bewegungsvektorfeld oder -felder für die Voraussage des Bewegungsfelds eines gegebenen, z. B, des momentanen Segments, am besten geeignet sind. Auf der Grundlage des Bewegungsvektorfelds des "Gewinner"-Anwärters oder der "Gewinner"-Anwärter wird wie oben beschrieben das Prädiktionsbewegungsfeld berechnet. Üblicherweise werden an den Decodierer Signalisierungsinformationen übertragen, die das am besten geeignete unter den mehreren Anwärtersegmenten spezifizieren.
  • Der Bewegungsanalysator 64 kann eine neue Darstellung eines Verfeinerungsbewegungsvektorfelds ermitteln. Das heißt, es wird eine mathematisch effiziente Darstellung vorgenommen. Die neue Darstellung wird später in der Bewegungskoeffizient-Entfernungseinrichtung 66 für eine schnelle und flexible Bestimmung der Verfeinerungsbewegungskoeffizienten verwendet.
  • Die Bewegungskoeffizient-Entfernungseinrichtung 66 kann bestimmen, welche der Verfeinerungskoeffizienten auf null gesetzt werden sollten, und den Wert der verbleibenden von null verschiedenen Koeffizienten berechnen, um das Lagrange-Kriterium wie folgt zu minimieren:
    GLEICHUNG 10 L(c) = D(c) + λ · B(c),worin D(c) und B(c) Maße des Prädiktionsfehlers und der der Codierung des gegebenen Segments unter Verwendung der Verfeinerungsbewegungskoeffizienten c entsprechenden Bits sind. Die Konstante λ ist ein Lagrange-Parameter. Wenn einige der Koeffizienten des Verfeinerungsbewegungsvektorfelds auf null gesetzt werden, wird der Prädiktionsfehler erhöht. Allerdings wird die Anzahl der Bits, die durch den Codierer an den Decodierer übertragen werden müssen, verringert, wenn mehr Koeffizienten auf null gesetzt werden. Somit kann sich der Wert der Lagrange-Funktion verringern, wenn einige der Verfeinerungsbewegungskoeffizienten auf null gesetzt werden.
  • Der Quantisierer 68 kann die verbleibenden von null verschiedenen Verfeinerungsbewegungsvektorkoeffizienten quantisieren, um diese Koeffizienten für die Entropiecodierung und für die Übertragung von dem Codierer zu dem Decodierer geeignet zu machen.
  • 3 veranschaulicht den bewegungskompensierten Prädiktor (MC-Prädiktor) 36, der, wie in 1 gezeigt ist, sowohl einen Abschnitt des Codierers 12 als auch einen Abschnitt des Codierers 14 bildet. Die Funktionselemente des MC-Prädiktors 36 sind sowohl für den Codierer als auch für den Decodierer ähnlich, wobei der MC-Prädiktor sowohl im Codierer als auch im Decodierer durch Berechnen der Bewegungsvektorfelder jedes Segments in dem Rahmen die Pixel eines momentanen Rahmens rekonstruieren kann. Das Bewegungsvektorfeld wird auf der Grundlage eines Prädiktionsbewegungvektorfelds (Δxprd(x, y), Δyprd(x, y)) und der Koeffizienten des Verfeinerungsbewegungsvektorfelds berechnet. In der beispielhaften Implementierung werden die Verfeinerungsbewegungsvektorfelder durch ihre inversen quantisierten Werte dargestellt. In dem Decodierer 14 wird aus einem oder aus mehreren Nachbarsegmenten, die bereits decodiert worden sind, das Prädiktionsbewegungsvektorfeld abgeleitet. Nachdem durch den inversen Quantisierer 76 die Decodierung und die inverse Quantisierung ausgeführt worden sind, sind die Koeffizienten des Verfeinerungsbewegungvektorfelds in dem Decodierer verfügbar. Wie veran schaulicht ist, enthält der MC-Prädiktor ferner eine Bewegungsvektorfeld-Baueinrichtung, einen Segmentprädiktor 80 und eine Prädiktionsbewegungsvektorfeld-Baueinrichtung 81.
  • Wie 2 veranschaulicht, enthalten die Eingangsgrößen in den Bewegungsanalysator 64 des Bewegungsfeldcoders 62 das Schätzungsbewegungsvektorfeld (Δx(x, y), Δy(x, y)). Das Bewegungsvektorfeld wird durch die (in 1 gezeigte) Bewegungsschätzeinrichtung 22 geliefert. Das Bewegungsvektorfeld wird in der Bewegungsschätzeinrichtung 22 auf herkömmliche Weise berechnet. Außerdem wird das Prädiktionsbewegungsvektorfeld an den Bewegungsanalysator geliefert. Außerdem werden die Geometrie, d. h. die Größe und Gestalt, des Segments S, das codiert werden soll, und der Referenzrahmen und der momentane Rahmen (Rref(x, y) bzw. In(x, y)) als Eingangsgrößen an den Bewegungsanalysator geliefert.
  • Der Bewegungsanalysator kann mehrere Operationen ausführen. Zunächst führt der Bewegungsanalysator die Fehlerlinearisierung aus. Der Prädiktionsfehler Di eines gegebenen Segments Si, das aus P Pixelkoordinaten (xp, yp), p = 1, 2,..., P besteht, dessen Prädiktionsbewegungsfeld durch (Δxprd(xp, yp), Δyprd(xp, yp)) bezeichnet ist und dessen Verfeinerungsbewegungsvektorfeld durch ein affines Bewegungsmodell approximiert wird, wie es durch Gleichung 9 gegeben ist, lautet:
    GLEICHUNG 11
  • Figure 00270001
  • Während der Linearisierung wird der Wert (Rref(x, y) aus Gleichung 11 unter Verwendung eines bekannten Approximationsverfahrens approximiert, so dass er von (Δxrefine(xp, yp), ΔYrefine(xp, yp),) linear unabhängig wird. Daraufhin kann der quadratische Prädiktionsfehler Di wie folgt approximiert werden:
  • GLEICHUNG 12
    Figure 00270002
  • Die Werte von e und w hängen vom Typ des verwendeten Approximationsverfahrens ab.
  • Anschließend werden durch den Bewegungsanalysator Matrizen konstruiert. Da die Elemente unter dem Quadrat in Gleichung (12) Linearkombinationen der Koeffizienten cn sind, ist die Minimierung der Gleichung vollständig gleichwertig der Minimierung des folgenden Matrixausdrucks:
  • GLEICHUNG 13
    Figure 00280001
  • Dabei sind Ei, wi und ei wie folgt:
  • GLEICHUNG 14
    Figure 00280002
  • Auf der Grundlage von Ei und wi werden eine Matrix Ai und ein Vektor di wie folgt berechnet:
  • GLEICHUNG 15
    Figure 00280003
  • GLEICHUNG 16
    Figure 00280004
  • Der Bewegungsanalysator erzeugt eine Ausgangsgröße, die eine obere (N + M)_(N + M)-Dreiecksmatrix Ri enthält, die die folgende Form besitzt:
    Figure 00280005
    wobei das Symbol x ein von null verschiedenes Element bezeichnet, das durch Berechnen einer Cholesky-Faktorisierung der Matrix Ai wie folgt erhalten wird: GLEICHUNG 17
    Figure 00290001
  • Außerdem erzeugt der Bewegungsanalysator einen Vektor zi, der durch Lösen des folgenden Gleichungssystems erhalten wird:
  • GLEICHUNG 18
    Figure 00290002
  • Die Matrix Ri und der Vektor zi sind die Ausgangsparameter des Bewegungsanalysators, wobei diese Ausgangsparameter zusammen eine Darstellung eines Verfeinerungsbewegungsvektorfelds bilden, die zur Manipulation in der Bewegungskoeffizient-Entfernungseinrichtung 66 geeignet ist.
  • Die Ausgangsgröße des Bewegungsanalysators 64 bildet die Eingangsgröße in die Bewegungskoeffizient-Entfernungseinrichtung 66. Die Operationen, die von der Entfernungseinrichtung 66 ausgeführt werden, wenn einige der Koeffizienten des Verfeinerungsbewegungsfelds auf null gesetzt werden, enthalten z. B. das Entfernen jener Elemente, die Koeffizienten entsprechen, die aus Ri entfernt werden können, mit z ~'. Das Ergebnis ist eine geänderte Matrix R und ein geänderter Vektor z.
  • Um das Segment oder die Menge der Nachbarsegmente, aus denen das Prädiktionsbewegungsfeld abgeleitet wird, zu spezifizieren oder standardmäßig zu implizieren, können verschiedene Verfahren genutzt werden. Außerdem können verschiedene Verfahren genutzt werden, um das Prädiktionsbewegungsfeld Δxprd(x, y), Δyprd(x, y) zu erzeugen, die obige Gleichung (11) zu linearisieren und das Gleichungssystem (18) zu lösen.
  • 4 veranschaulicht einen einzelnen Videorahmen 84, der hier in mehrere, hier dreißig, Segmente 86 unterteilt gezeigt ist. Jedes der Segmente 86 ist hier aus einem Sechzehn-Pixel-mal-sechzehn-Pixel-Block gebildet. Außerdem kann jedes der Segmente weiter unterteilt sein, um kleinere Segmente zu bilden. Hier sind einige der Segmente 86 unterteilt, so dass sie Acht-Pixel-mal-acht-Pi xel-Blöcke 88 bilden. Die Segmente 86 werden üblicherweise als Makroblöcke bezeichnet. Die Codierung eines Rahmens wird dadurch ausgeführt, dass Makroblock für Makroblock von links nach rechts und von oben nach unten abgetastet wird.
  • Wie zuvor beschrieben wurde, genügt das Bewegungsvektorfeld eines gegebenen Segments dem in Gleichung (8) gegebenen additiven Bewegungsmodell. Der Weg, auf dem die Prädiktion, die Verfeinerung und die endgültigen Bewegungsprädiktionsfelder erhalten werden, wird unten beschrieben. In der beispielhaften Implementierung kann entweder das Bewegungsprädiktionsfeld oder das Bewegungsverfeinerungsfeld null sein. Somit kann ein gegebenes Segment Si in Bezug auf die Bewegungsvektorfelder mit irgendeinem von verschiedenen Verfahren codiert werden. Beispielsweise kann das Segment lediglich unter Verwendung der aus einem Nachbarsegment extrapolierten Bewegungsvektorfelder codiert werden. Andererseits kann das Segment unter Verwendung eines Prädiktionsbewegungsvektorfelds codiert werden, das zusammen mit einem komprimierten Verfeinerungsbewegungsvektorfeld aus einem Nachbarsegment extrapoliert worden ist. Alternativ kann das Segment lediglich unter Verwendung eines komprimierten Bewegungsvektorfelds ohne Nutzung eines Prädiktionsfelds codiert werden. Allerdings werden Verfeinerungsinformationen gesendet, falls das Prädiktionsfeld auf null gesetzt wird. Außerdem kann das Segment unter Verwendung eines Null-Bewegungsvektorfelds, z. B. einer Kopie von dem Referenzrahmen Rref(x, y), codiert werden. Außerdem kann das Segment z. B. unter Verwendung der Intra-Codierung codiert werden, in der kein Bewegungsvektorfeld genutzt wird.
  • In der beispielhaften Implementierung besitzt das endgültige Bewegungsvektorfeld eines gegebenen bewegungskompensierten Segments Si unabhängig von der Anwesenheit eines Prädiktionsbewegungsvektorfelds oder eines Verfeinerungsbewegungsvektorfelds ein affines Modell, das durch die folgende Gleichung gegeben ist, in der hier der obere Index i die Tatsache angibt, dass die Koeffizienten einem entsprechenden Segment Si zugeordnet sind:
    GLEICHUNG 19 Δx(x, y) = β1 i + b2 i · (y – yO i) + β3 i · (x – xO i) Δx(x, y) = β4 i + b5 i · (y – yO i) + β6 i · (x – xO i), wobei xO i und yO i die Koordinaten des ganz linken oberen Pixels in dem Segment und β1 i,..., βb i die wie oben beschrieben berechneten affinen Koeffizienten sind.
  • In der beispielhaften Implementierung des Decodierers 14 werden die Operationen unter Verwendung der Ganzzahlgenauigkeit ausgeführt. Dies wird dadurch erreicht, dass eine Festkommaimplementierung genutzt wird, die einer festen Genauigkeit entspricht. Im Ergebnis sind alle im Folgenden erwähnten Koeffizienten einschließlich der Koeffizienten von Gleichung (19) ganzzahlwertig. In anderen Implementierungen werden andere Genauigkeiten genutzt.
  • In der beispielhaften Implementierung wird allerdings nur in dem Fall, dass es wenigstens einen Prädiktionsnachbaranwärter gibt, ein Bit an den Decodierer 14 gesendet, das signalisiert, ob das Prädiktionsfeld eines Nachbarn verwendet wird oder nicht. Ein Nachbarsegment Sk ist nur dann ein Anwärter für die Prädiktion des Bewegungsvektorfelds eines Segments Si, wenn es ein von null verschiedenes Bewegungsvektorfeld besitzt.
  • Außerdem wird die Prädiktion in der beispielhaften Implementierung lediglich von einem nächsten Nachbarblock links von oder direkt über dem momentanen Segment ausgeführt. Somit kann die Anzahl der Nachbarsegmente höchstens vier, d. h. zwei Acht-mal-acht-Pixelblöcke darüber und zwei Acht-mal-acht-Pixelblöcke links davon, sein. In dieser Implementierung werden sowohl in dem Codierer als auch in dem Decodierer die Anzahl und der Ort der Prädiktionsanwärter jedes Mal berechnet, wenn das an den Decodierer gesendete Bit angibt, dass die Prädiktion von einem Nachbarsegment verwendet wird. Falls es z. B. zwei, drei oder vier Prädiktionsanwärter gibt, werden ein oder zwei Auswahlbits an den Decodierer 14 gesendet, die angeben, dass der Anwärter zu verwenden ist. Die Auswahlinformationen werden z. B. aus einem Prädiktionsrichtungsbit, das vorhanden sein kann oder nicht, gefolgt von einem Entscheidungsbit, das ebenfalls vorhanden sein kann oder nicht, erzeugt.
  • 5 veranschaulicht eine allgemein bei 92 gezeigte Tabelle, die die Bedeutungen und die Werte der Auswahlbits in einer beispielhaften Implementierung der vorliegenden Erfindung aufführt. Das Zeichen x bezeichnet je nach Kontext die Abwesenheit oder die logischen Unbedeutend. Das Richtungsbit gibt an, ob über dem oder links von dem momentan vorausgesagten Segment Anwärter nachbarsegmente verfügbar sind. Das Entscheidungsbit spezifiziert, welcher der zwei verbleibenden Anwärter für die Prädiktion der Bewegungsvektorfelder verwendet werden muss. Das heißt, wenn die Segmente darüber oder links davon gewählt werden, sind zwei Auswahlmöglichkeiten verfügbar. Das Entscheidungsbit identifiziert die Auswahl. In den letzten vier in der Tabelle gezeigten Fällen kann das Entscheidungsbit je nach dem Ort des am besten geeigneten Anwärtersegments vorhanden sein oder nicht vorhanden sein. Falls das Richtungsbit z. B. "von links" angibt, wo es nur einen einzigen Anwärter gibt, wird das Entscheidungsbit nicht benötigt. Nach der Codierung des Richtungsbits ist die Richtung des Gewinneranwärters in dem Decodierer 14 bekannt.
  • Wenn das Nachbarsegment für die Prädiktion des momentanen Segments ausgewählt worden ist, ist das Prädiktionsbewegungsvektorfeld wie folgt einfach die Extrapolation des Bewegungsvektorfelds des Segments innerhalb der von dem momentanen Segment erfassten Pixeldomäne:
    GLEICHUNG 20 Δxprd(x, y) = β1 k + β2 k · (y – yO k) + β3 k · (x – xO k) Δyprd(x, y) = β4 k + β5 k · (y – yO k) + β6 k · (x – xO k),wobei xO k, yO k die Koordinaten des ganz linken oberen Pixels in dem Nachbarsegment Sk und β1 k,..., β6 k die dem Bewegungsfeld des Segments Sk entsprechenden ganzzahlwertigen Koeffizienten sind. Der obere Index k gibt in Gleichung 20 an, dass die Koeffizienten dem Nachbarsegment Sk zugeordnet sind.
  • Die Analyse der Gleichungen 19 und 20 zeigt, dass das Bewegungsvektorfeld des Nachbarsegments Sk dadurch, dass es zu den Pixeln innerhalb des momentanen Segments Si extrapoliert worden ist, zu dem Prädiktionsbewegungsvektorfeld des Segments Si geworden ist.
  • Das Verfeinerungsbewegungsvektorfeld nimmt das in Gleichung 9 gegebene affine orthogonale Modell an. Allerdings werden die Verfeinerungskoeffizienten in der bevorzugten Implementierung in eine Menge von Hilfsverfeinerungskoeffizienten umgesetzt. Die Hilfsverfeinerungskoeffizienten ermöglichen eine schnelle Berechnung des endgültigen Prädiktionsbewegungsfelds.
  • In der bevorzugten Implementierung werden die Verfeinerungskoeffizienten in Gleichung 9, die einer orthogonalen affinen Menge von Basisfunktionen entsprechen, zunächst in eine andere Menge von Hilfskoeffizienten umgesetzt. Diese Koeffizienten entsprechen der Menge der Basisfunktionen {1, (y – yO), (x – xO)}, wobei xO, yO die Koeffizienten des ganz linken oberen Pixels in dem Segment sind. Diese Umsetzung wird ausgeführt, um sowohl für die Prädiktions-, als auch für die verfeinerten Bewegungsvektorfelder eine gemeinsame Basisfunktionsdarstellung zu erhalten, d. h., dieselbe Menge von Basisfunktionen zu verwenden. Wie später beschrieben wird, wird dadurch auf der Grundlage der Summation von zwei Mengen von Koeffizienten das endgültige Bewegungsvektorfeld berechnet. Auf der Grundlage der Verfeinerungskoeffizienten c1,...,c6 werden die folgenden Hilfskoeffizienten a1,...,a6 für die Segmente Si berechnet. Für Segmente, die Sechzehn-mal-sechzehn-Pixelblöcke sind, erfolgt dies wie folgt:
  • GLEICHUNG 21
    Figure 00330001
  • Für Segmente Si, die Acht-mal-acht-Pixelblöcke sind, nimmt die Berechnung die folgende Form an: GLEICHUNG 22
    Figure 00330002
  • Im Ergebnis stellen die folgenden ganzzahlwertigen Verschiebungen das Verfeinerungsbewegungsvektorfeld des Segments Si dar:
    GLEICHUNG 23 Δxrefine(x, y) = a1 + a2 · (y – yO i) + a3 · (x – xO i) Δxrefine(x, y) = a4 + a5 · (y – yO i) + a6 · (x – xO i),wobei xO i und yO i die Koordinaten des ganz linken oberen Pixels in dem Segment Si sind. Der obere Index i gibt an, dass diese Koordinaten dem momenta nen Segment Si zugeordnet sind.
  • In der beispielhaften Implementierung wird die endgültige Menge der affinen Koeffizienten für ein gegebenes Segment, das das Nachbarsegment Sk für die Bewegungsfeldprädiktion verwendet, wie in der folgenden Gleichung berechnet, in der die oberen Indizes i und k angeben, dass die entsprechenden Koeffizienten Si bzw. Sk zugeordnet sind:
    GLEICHUNG 24 β1 I = a1 + Δxprd(xO i, yO i) β1 i = a4 + Δyprd(xO i, yO i) β1 I = a2 + β2 k und β5 I = a5 + β5 k β3 I = a3 + β3 K β6 I = a6 + β6 K.
  • Unter Verwendung von Gleichung 19 wird auf der Grundlage der ganzzahlwertigen Koeffizienten β1 ... β6 die Menge der endgültigen Bewegungsvektoren für das Segment Si erzeugt. Im Folgenden wird der Weg beschrieben, auf dem die Bewegungsvektoren zur Berechnung der Pixelintensitäten aus dem Referenzrahmen verwendet werden.
  • In der beispielhaften Implementierung wird jedes Mal, wenn Verfeinerungs- oder Nichtverfeinerungsbewegungskoeffizienten erwartet werden können, die Anwesenheit der Bewegungskoeffizienten in dem Bitstrom durch ein Bit signalisiert. Dieses Bit wird als ein Bewegungskoeffizientindikator (MCI) bezeichnet.
  • Außerdem wird in der beispielhaften Implementierung, wenn die Bewegungskoeffizienten für ein Segment Si übertragen werden, zunächst ein Code variabler Länge, der als Bewegungskoeffizientmuster (MCP) bezeichnet wird, gesendet, der angibt, welche Koeffizienten von null verschiedene Werte haben. Ein Muster sämtlich mit Nullen ist das einzige ungültige Muster, da diese Möglichkeit durch das MCI-Bit allein signalisiert werden kann. Die Gesamtzahl gültiger Muster, die durch das MCP-Codewort angegeben werden können, ist dreiundsechzig. Dies ist eine Eigenschaft des affinen Modells. Da es sechs Koeffizienten gibt, gibt es 26, d. h. 64, mögliche Ergebnisse. Da null ungültig ist, besitzt das MCP-Codewort somit 63 mögliche Werte. Auf das MCP-Codewort folgen die codierten Werte jedes von null verschiedenen Bewegungskoeffizienten, der durch das MCP-Muster angegeben wird. Die codierten Werte jedes von null ver schiedenen Koeffizienten folgen auf das MCP-Codewort. Ein Bewegungskoeffizient cj wird als ein Amplitudencodewort variabler Länge, das den Absolutwert von cj angibt, gefolgt von einem Vorzeichenbit, das das Vorzeichen von cj angibt, codiert. In der beispielhaften Implementierung wird zur Codierung der Amplitude verschiedener Koeffizienten dieselbe Codierungstabelle variabler Länge verwendet. Es können verschiedenen Codierungstabellen verwendet werden. Die Amplitude null ist nicht unter den gültigen Optionen, da diese Möglichkeit durch das MCP-Codewort angegeben werden kann.
  • Die unter Verwendung von Gleichung 19 berechneten endgültigen Bewegungsvektorfeldkomponenten entsprechen einem Diskretisierungsschritt von:
  • GLEICHUNG 25
    Figure 00350001
  • Falls (Δx(x, y), Δy(x, y)) die endgültigen Bewegungskompensationsverschiebungen für das Segment Si bezeichnen, sind die entsprechenden nicht ganzzahligen Koordinaten in dem vorherigen Rahmen:
    GLEICHUNG 26 x' = x + Δx(x, y) · D y' = Y + ΔY(x, y) · D.
  • In der bevorzugten Implementierung besitzt der Referenzrahmen Rref eine Größe von M_N Pixeln mit Intensitätswerten in dem Bereich von {0, 1,..., 255}. Die gültigen Pixelkoordinaten (x', y'), sind lediglich in dem Bereich von {0, 1,..., M-1}_{0, 1,..., N-1} definiert. Wenn die bewegungskompensierte Prädiktion die Auswertung von Farbdichte- und Farbwert-Werten bei nicht ganzzahligen Orten in dem Referenzrahmen Rref erfordert, wird eine diskrete Version der kubischen Faltungsinterpolation verwendet. In der beispielhaften Implementierung wird bei der Berechnung der Rekonstruktionswerte in dem Referenzrahmen wie unten beschrieben eine Festkommagenauigkeit verwendet.
  • Zunächst werden die ganzzahligen Verschiebungen (Δx(x, y), Δy(x, y)), die dem Pixel (x, y) im Segment Si entsprechen, wie folgt in Modulo-65536-Form ausge drückt:
    GLEICHUNG 27 Δx(x, y) = dx · 65536 + δx, δx ∈ {0, 1,..., 65535} Δx(x, y) = dy · 65536 + δy, δy ∈ {0, 1,..., 65535},wobei dx, dy, δx und δy ganzzahlige Werte sind und die letzteren beiden immer nicht negativ sind.
  • Die ganzzahlwertigen Koordinaten x'j, y'k des kubischen Vier-mal-vier-Faltungsfensters sind wie folgt definiert:
    GLEICHUNG 28 x'j = sat(x + dx + j-2, M-1), j = 1, 2, 3, 4 x'k = sat(y + dy + k-2, N-1), k = 1, 2, 3, 4.
  • Darin ist sat(u, v) die folgende Sättigungsfunktion:
  • GLEICHUNG 29
    Figure 00360001
  • Folglich sind die sechzehn in der kubischen Faltung verwendeten ganzzahligen Pixelwerte rjk wie folgt:
    GLEICHUNG 29 rjk = Rref(x'j, y'k) j, k = 1, 2, 3, 4,wobei x'j, y'k die in Gleichung 28 berechneten ganzzahlwertigen Koordinaten sind.
  • Daraufhin werden die Faltungskoeffizienten berechnet. Im Folgenden wird die Ganzzahldivision durch Abschneiden mit "/" bezeichnet, wobei beide oder ihre Operanden stets nicht negative ganze Zahlen sind. Unter Verwendung der Ganzzahlabschneidung werden die folgenden uj, vk, j, k = 1, 2, 3, 4 berechnet: GLEICHUNG 31
    Figure 00370001
    wobei δx, δy die ganzzahligen Werte aus Gleichung 27 sind und spl(s) die ganzzahlwertige Funktion des positiven ganzzahligen Arguments ist:
  • GLEICHUNG 32
    Figure 00370002
  • Daraufhin wird der Referenzpixelwert berechnet. Der Referenzpixelwert wird unter Verwendung der Ganzzahldivision durch Abschneiden wie folgt berechnet: GLEICHUNG 33
    Figure 00370003
    wobei die ganzzahlwertigen Koeffizienten rjk durch Gleichung 30 gegeben sind und die ganzzahlwertigen Koeffizienten uj, vk, j, k = 1, 2, 3, 4, durch Gleichung 31 gegeben sind und die Funktion sat(.,.) durch Gleichung 29 gegeben ist.
  • Der Schritt der Linearisierung in dem Bewegungsanalysator wird unter Verwendung einer Taylor-Entwicklung erster Ordnung von Rref(x, y) um:
    GLEICHUNG 34 x'p = xp + Δx(xp, yp) y'p = yp + Δx(xp, yp)nach x und y ausgeführt:
    GLEICHUNG 35 Rref(xp + Δxprd(xp, yp) + Δxrefine(xp, yp), yp + Δyprd(xp, yp) + Δrefine(xp yp)) ≈ Rref(x'p y'p) + (Δxrefine(xp, yp) + Δxprd(xp, yp) – Δx(xp, yp)) · Gx(x'p y'p) + (Δyrefine(xp, yp) + Δyprd(xp, yp) – Δy(xp, yp)) · Gy(x'p y'p).
  • Gx(x'p y'p) und Gy(x'p y'p) sind die Werte der Ableitung des Referenzrahmens Rref nach x und y. Unter Verwendung einer solchen Approximation sind die Elemente der Matrix Ei und des Vektors wi in Gleichung 14: GLEICHUNG 36
    Figure 00380001
    GLEICHUNG 37 wp = In(xp, yp) – Rref(x'p y'p) + Gx(x'p y'p)Δx(xp, yp) + Gy(x'p y'p)Δy(xp, yp) – Gx(x'p y'p)Δxprd(xp, yp) – Gy(x'p y'p)Δyprd(xp, yp).
  • Die vorstehenden Beschreibungen sind Beschreibungen bevorzugter Beispiele zur Implementierung der Erfindung, wobei der Umfang der Erfindung durch diese Beschreibung nicht notwendig beschränkt werden sollte. Der Umfang der vorliegenden Erfindung ist durch die folgenden Ansprüche definiert:

Claims (56)

  1. Verfahren zum Codieren einer Videosequenz, die mehrere Videorahmen umfasst, wobei das Verfahren gekennzeichnet ist durch: Erzeugen eines ersten Bewegungsfeldmodells für ein Segment eines momentanen Videorahmens der Videosequenz unter Verwendung einer bewegungskompensierten Prädiktion in Bezug auf einen vorher codierten Rahmen der Videosequenz; Erzeugen eines Prädiktionsbewegungsfeldmodells für das Segment des momentanen Videorahmens auf der Grundlage eines Bewegungsfeldmodells, das für ein benachbartes vorher codiertes Segment des momentanen Rahmens bestimmt wurde; Bestimmen einer Differenz zwischen dem ersten Bewegungsfeldmodell für das Segment und dem Prädiktionsbewegungsfeldmodell für das Segment, um Verfeinerungsinformationen für das Segment zu erhalten; Definieren eines zweiten Bewegungsfeldmodells für das Segment des momentanen Rahmens als eine Kombination aus dem Prädiktionsbewegungsfeldmodell und den Verfeinerungsinformationen; Berechnen einer Kostenfunktion für das erste bzw. das zweite Bewegungsfeldmodell, die für ein gegebenes der ersten und zweiten Bewegungsfeldmodelle sowohl die Menge von Informationen, die für die Darstellung des Bewegungsfeldmodells erforderlich sind, als auch den Betrag der Bildverzerrung, die durch Verwenden des Bewegungsfeldmodells, um das Segment des momentanen Rahmens zu codieren, eingeführt wird, berücksichtigt; Wählen entweder des ersten Bewegungsfeldmodells oder des zweiten Bewegungsfeldmodells als das Bewegungsfeldmodell für das Segment wenigstens teilweise auf der Grundlage der berechneten Kostenfunktionen für das erste bzw. das zweite Bewegungsfeldmodell; und Codieren des Segments des momentanen Rahmens unter Verwendung des gewählten Bewegungsfeldmodells, um codierte Informationen für das Segment zu erzeugen.
  2. Verfahren nach Anspruch 1, das ferner umfasst: Unterteilen des benachbarten vorher codierten Segments in mehrere Untersegmente und Verwenden eines Bewegungsfeldmodells für wenigstens eines der Untersegmente, um das Prädiktionsbewegungsfeldmodell zu erzeugen.
  3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das Prädiktionsbewegungsfeldmodell durch Projizieren des Bewegungsfeldmodells für das benachbarte vorher codierte Segment in das Segment erzeugt wird.
  4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das Prädiktionsbewegungsfeldmodell für das Segment als Durchschnitt der Bewegungsfeldmodelle, die für mehr als ein benachbartes vorher codiertes Segment bestimmt werden, erhalten wird.
  5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Kostenfunktion ein Lagrange-Kriterium in der Form L = D + Lambda_B ist, wobei D die Bildverzerrung ist, die durch Verwenden eines bestimmten Bewegungsfeldmodells eingeführt wird, B die Anzahl von Bits ist, die für die Darstellung des Bewegungsfeldmodells erforderlich sind, und Lambda ein Multiplikationsparameter ist.
  6. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Verfeinerungsinformationen die Form eines Verfeinerungsbewegungsfeldmodells haben.
  7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass das erste Bewegungsfeldmodell, das zweite Bewegungsfeldmodell, das Prädiktionsbewegungsfeldmodell und das Verfeinerungsbewegungsfeldmodell jeweils ein affines Bewegungsfeldmodell sind.
  8. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass das erste Bewegungsfeldmodell, das zweite Bewegungsfeldmodell, das Prädiktionsbewegungsfeldmodell und das Verfeinerungsbewegungsfeldmodell jeweils als eine Summe aus Bewegungsfeldmodell-Basisfunktionen gebildet sind, wobei jede der Bewegungsfeldrnodell-Basisfunktionen mit einem Bewegungskoeffizienten multipliziert wird.
  9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass die Bewegungsfeldmodell-Basisfunktionen orthogonale Funktionen sind.
  10. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass das Prädiktionsbewegungsfeldmodell und das Verfeinerungsbewegungsfeldmodell unter Verwendung einer gemeinsamen Menge von Basisfunktionen dargestellt wer den.
  11. Verfahren nach Anspruch 8, das ferner umfasst: Erzeugen einer Approximation des Verfeinerungsbewegungsmodells durch Setzen eines oder mehrerer Bewegungskoeffizienten des Verfeinerungsbewegungsfeldmodells auf null.
  12. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass es dann, wenn das gewählte Bewegungsfeldmodell das erste Bewegungsfeldmodell ist, ferner umfasst: Setzen aller Bewegungskoeffizienten des Prädiktiunsbewegungsfeldmodells auf null; und Setzen aller Bewegungskoeffizienten des Verfeinerungsbewegungsfeldmodells gleich den Bewegungskoeffizienten des ersten Bewegungsfeldmodells.
  13. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass die codierten Informationen für das momentane Segment dann, wenn das gewählte Bewegungsfeldmodell das erste Bewegungsfeldmodell ist, Informationen über Bewegungskoeffizienten des ersten Bewegungsfeldmodells enthalten.
  14. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass die codierten Informationen für das momentane Segment dann, wenn das gewählte Bewegungsfeldmodell das zweite Bewegungsfeldmodell ist, Informationen über das benachbarte vorher codierte Segment, aus dem das Prädiktionsbewegungsfeldmodell erhalten wird, und Informationen über Bewegungskoeffizienten des Verfeinerungsbewegungsfeldmodells enthalten.
  15. Verfahren nach Anspruch 14, dadurch gekennzeichnet, dass die Informationen über Bewegungskoeffizienten des Verfeinerungsbewegungsfeldmodells (i) einen Bewegungskoeffizient-Musterindikator, der angibt, welche der Bewegungskoeffizienten des Verfeinerungsbewegungsfeldmodells von null verschiedene Werte haben, und (ii) die von null verschiedenen Bewegungskoeffizienten-Werte enthalten.
  16. Verfahren nach Anspruch 14, dadurch gekennzeichnet dass die Informationen über das benachbarte vorher codierte Segment, aus dem das Prädiktionsbewegungsfeldmodell erhalten wird, eine Angabe der Position des benach barten vorher codierten Segments in Bezug auf das momentane Segment enthalten.
  17. Verfahren zum Decodieren von codierten Informationen, die eine Videosequenz darstellen, die gemäß dem Verfahren nach Anspruch 1 codiert worden ist, wobei die Videosequenz mehrere Videorahmen enthält, wobei das Decodierungsverfahren gekennzeichnet ist durch: Empfangen codierter Informationen, die ein Segment eines momentanen Rahmens der Videosequenz darstellen; Identifizieren einer Codierungsbetriebsart der codierten Informationen, wobei die Codierungsbetriebsart eine Betriebsart aus wenigstens einer ersten Codierungsbetriebsart und einer zweiten Codierungsbetriebsart ist; falls die identifizierte Codierungsbetriebsart die erste Codierungsbetriebsart ist, Rekonstruieren des Segments des momentanen Rahmens der Videosequenz unter Verwendung eines ersten Bewegungsfeldmodells, das unter Verwendung einer bewegungskompensierten Prädiktion in Bezug auf einen vorher codierten Rahmen der Videosequenz abgeleitet wird; und falls die identifizierte Codierungsbetriebsart die zweiten Codierungsbetriebsart ist, Rekonstruieren des Segments des momentanen Rahmens der Videosequenz unter Verwendung eines zweiten Bewegungsfeldmodells auf der Grundlage eines Bewegungsfeldmodells, das für ein benachbartes vorher codiertes Segment des momentanen Rahmens bestimmt wird.
  18. Verfahren nach Anspruch 17, dadurch gekennzeichnet, dass in der ersten Codierungsbetriebsart die das Segment des momentanen Rahmens darstellenden codierten Informationen Bewegungskoeffizient-Informationen enthalten.
  19. Verfahren nach Anspruch 17, dadurch gekennzeichnet, dass in der zweiten Codierungsbetriebsart die das Segment des momentanen Rahmens darstellenden codierten Informationen eine Angabe des benachbarten vorher codierten Segments enthalten, dessen Bewegungsfeldmodell verwendet werden soll, um ein Prädiktionsbewegungsfeldmodell für die Verwendung bei der Erzeugung eines zweiten Bewegungsfeldmodells zu erzeugen.
  20. Verfahren nach Anspruch 19, dadurch gekennzeichnet, dass die Angabe des benachbarten vorher codierten Segments Informationen über die Position des benachbarten vorher codierten Segments in Bezug auf das momentan rekonstruierte Segment enthält.
  21. Verfahren nach Anspruch 19, dadurch gekennzeichnet, dass die Angabe des benachbarten vorher codierten Segments ferner Informationen über ein Untersegment in dem benachbarten vorher codierten Segment enthält.
  22. Verfahren nach Anspruch 19, dadurch gekennzeichnet, dass in der zweiten Codierungsbetriebsart die das Segment des momentanen Rahmens darstellenden codierten Informationen ferner Verfeinerungsinformationen enthalten, die zusammen mit dem Prädiktionsbewegungsfeldmodell für die Rekonstruktion des Segments verwendet werden sollen.
  23. Verfahren nach Anspruch 22, dadurch gekennzeichnet, dass die Verfeinerungsinformationen Bewegungskoeffizient-Informationen enthalten, die ein Verfeinerungsbewegungsfeldmodell darstellen.
  24. Verfahren nach Anspruch 22, dadurch gekennzeichnet, dass die Verfeinerungsinformationen eine Differenz zwischen dem ersten Bewegungsfeldmodell und dem Prädiktionsbewegungsfeldmodell darstellen.
  25. Verfahren nach Anspruch 19, dadurch gekennzeichnet, dass in der zweiten Codierungsbetriebsart der Schritt des Rekonstruierens des Segments des momentanen Rahmens das Ableiten des Prädiktionsbewegungsfeldmodells aus einem Bewegungsfeldmodell, das das angegebene benachbarte vorher codierte Segment darstellt, umfasst.
  26. Verfahren nach Anspruch 25, dadurch gekennzeichnet, dass das Prädiktionsbewegungsfeldmodell dadurch abgeleitet wird, dass das Bewegungsfeldmodell, das das angegebene benachbarte vorher codierte Segment darstellt, aus dem angegebenen benachbarten vorher codierten Segment in das momentan rekonstruierte Segment projiziert wird.
  27. Verfahren nach Anspruch 23, dadurch gekennzeichnet, dass in der zweiten Codierungsbetriebsart der Schritt des Rekonstruierens des Segments des momentanen Rahmens ferner das Kombinieren des Prädiktionsbewegungsfeldmodells mit dem Verfeinerungsbewegungsfeldmodellumfasst.
  28. Verfahren nach Anspruch 18 oder 23, dadurch gekennzeichnet, dass die Bewegungskoeffizient-Informationen eine Angabe eines Musters aus von null verschiedenen Koeffizienten und wenigstens eines von null verschiedenen Koeffizientenwertes umfassen.
  29. Videocodierer (12) zum Codieren einer Videosequenz, die mehrere Videorahmen enthält, dadurch gekennzeichnet, dass er umfasst: Mittel (22, 26, 28) zum Erzeugen eines ersten Bewegungsfeldmodells für ein Segment eines momentanen Videorahmens der Videosequenz unter Verwendung einer bewegungskompensierten Prädiktion in Bezug auf einen vorher codierten Rahmen der Videosequenz; Mittel (28, 62) zum Erzeugen eines Prädiktionsbewegungsfeldmodells für das Segment des momentanen Videorahmens auf der Grundlage eines Bewegungsfeldmodells, das für ein benachbartes vorher codiertes Segment des momentanen Rahmens bestimmt worden ist; Mittel (62) zum Bestimmen einer Differenz zwischen dem ersten Bewegungsfeldmodell für das Segment und dem Prädiktionsbewegungsfeldmodell für das Segment, um Verfeinerungsinformationen für das Segment zu erhalten; Mittel (62, 64, 66, 68) zum Definieren eines zweiten Bewegungsfeldmodells für das Segment des momentanen Rahmens als eine Kombination aus dem Prädiktionsbewegungsfeldmodell und den Verfeinerungsinformationen; Mittel (64) zum Berechnen einer Kostenfunktion für das erste bzw. das zweite Bewegungsfeldmodell, wobei die Kostenfunktion für ein gegebenes der ersten und zweiten Bewegungsfeldmodelle sowohl die Menge von Informationen, die für die Darstellung des Bewegungsfeldmodells erforderlich sind, als auch den Betrag der Bildverzerrung, die durch Verwenden des Bewegungsfeldmodells, um das Segment des momentanen Rahmens zu codieren, eingeführt wird, berücksichtigt; Mittel (62, 64) zum Wählen entweder des ersten Bewegungsfeldmodells oder des zweiten Bewegungsfeldmodells als das Bewegungsfeldmodell für das Segment wenigstens teilweise auf der Grundlage der berechneten Kostenfunktionen für das erste bzw. das zweite Bewegungsfeldmodell; und Mittel (64, 68) zum Codieren des Segments des momentanen Rahmens unter Verwendung des gewählten Bewegungsfeldmodells, um codierte Informationen für das Segment zu erzeugen.
  30. Videocodierer (12) nach Anspruch 29, der ferner umfasst: Mittel zum Senden der codierten Informationen für das Segment zu einem Decodierer, um sie zu decodieren.
  31. Videocodierer (12) nach Anspruch 29, der ferner umfasst: Mittel (28, 62) zum Unterteilen des benachbarten vorher codierten Segments in mehrere Untersegmente und zum Verwenden eines Bewegungsfeldmodells für wenigstens eines der Untersegmente, um das Prädiktionsbewegungsfeldmodell zu erzeugen.
  32. Videocodierer (12) nach Anspruch 29, dadurch gekennzeichnet, dass er so beschaffen ist, dass er das Prädiktionsbewegungsfeldmodell durch Projizieren des Bewegungsfeldmodells für das benachbarte vorher codierte Segment in das Segment erzeugt.
  33. Videocodierer (12) nach Anspruch 29, dadurch gekennzeichnet, dass er so beschaffen ist, dass er das Prädiktionsbewegungsfeldmodell für das Segment als einen Durchschnitt auf der Grundlage von Bewegungsfeldmodellen, die für mehr als ein benachbartes vorher codiertes Segment bestimmt werden, erhält.
  34. Videocodierer (12) nach Anspruch 29, dadurch gekennzeichnet, dass die Kostenfunktion ein Lagrange-Kriterium der Form L = D + Lambda _ B ist, wobei D die Bildverzerrung darstellt, die durch Verwenden eines bestimmten Bewegungsfeldmodells eingeführt wird, B die Anzahl von Bits ist, die für die Darstellung des Bewegungsfeldmodells erforderlich sind, und Lambda ein Multiplikationsparameter ist.
  35. Videocodierer (12) nach Anspruch 29, dadurch gekennzeichnet, dass er so beschaffen ist, dass die Verfeinerungsinformationen als ein Verfeinerungsbewegungsfeldmodell erzeugt werden.
  36. Videocodierer (12) nach Anspruch 35, dadurch gekennzeichnet, dass das erste Bewegungsfeldmodell, das zweite Bewegungsfeldmodell, das Prädiktionsbewegungsfeldmodell und das Verfeinerungsbewegungsfeldmodell jeweils ein affines Bewegungsfeldmodell sind.
  37. Videocodierer (12) nach Anspruch 35, dadurch gekennzeichnet, dass er so beschaffen ist, dass er das erste Bewegungsfeldmodell, das zweite Bewegungsfeldmodell, das Prädiktionsbewegungsfeldmodell und das Verfeinerungsbewegungsfeldmodell jeweils als eine Summe aus Bewegungsfeldmodell-Basisfunktionen erzeugt, wobei jede der Bewegungsfeldmodell-Basisfunktionen mit einem Bewegungskoeffizienten multipliziert wird.
  38. Videocodierer (12) nach Anspruch 37, dadurch gekennzeichnet, dass die Bewegungsfeldmodell-Basisfunktionen orthogonale Funktionen sind.
  39. Videocodierer (12) nach Anspruch 37, dadurch gekennzeichnet, dass das Prädiktionsbewegungsfeldmodell und das Verfeinerungsbewegungsfeldmodell unter Verwendung einer gemeinsamen Menge von Basisfunktionen dargestellt werden.
  40. Videocodierer (12) nach Anspruch 37, der ferner umfasst: Mittel (66) zum Erzeugen einer Approximation des Verfeinerungsbewegungsfeldmodells durch Setzen eines oder mehrerer Bewegungsfeldkoeffizienten des Verfeinerungsbewegungsfeldmodells auf null.
  41. Videocodierer (12) nach Anspruch 37, dadurch gekennzeichnet, dass er ferner umfasst: Mittel (28, 62, 64) zum Setzen aller Bewegungskoeffizienten des Prädiktionsbewegungsfeldmodells auf null, falls das gewählte Bewegungsfeldmodell das erste Bewegungsfeldmodell ist, und Mittel (28, 62, 64) zum Setzen aller Bewegungskoeffizienten des Verfeinerungsbewegungsfeldmodells gleich den Bewegungsfeldkoeffizienten des ersten Bewegungsfeldmodells, falls das gewählte Bewegungsfeldmodell das erste Bewegungsfeldmodell ist.
  42. Videocodierer (12) nach Anspruch 37, dadurch gekennzeichnet, dass die Mittel (64, 68) zum Codieren des Segments des momentanen Rahmens so beschaffen sind, dass sie Informationen über Bewegungskoeffizienten des ersten Bewegungsfeldmodells in den codierten Informationen für das Segment enthalten, falls das gewählte Bewegungsfeldmodell das erste Bewegungsfeldmodell ist.
  43. Videocodierer (12) nach Anspruch 37, dadurch gekennzeichnet, dass die Mittel (64, 68) zum Codieren des Segments des momentanen Rahmens so be schaffen sind, dass sie Informationen über das benachbarte vorher codierte Segment, aus dem das Prädiktionsbewegungsfeldmodell erhalten wird, und Informationen über Bewegungskoeffizienten des Verfeinerungsbewegungsfeldmodells in den codierten Informationen für das Segment enthalten, falls das gewählte Bewegungsfeldmodell das zweite Bewegungsfeldmodell ist.
  44. Videocodierer (12) nach Anspruch 43, dadurch gekennzeichnet, dass die Informationen über Bewegungskoeffizienten des Verfeinerungsbewegungsfeldmodells (i) einen Bewegungskoeffizient-Musterindikator, der angibt, welche der Bewegungskoeffizienten des Verfeinerungsbewegungsfeldmodells von null verschiedene Werte haben, und (ii) die von null verschiedenen Bewegungskoeffizienten-Werte enthalten.
  45. Videocodierer nach Anspruch 43, dadurch gekennzeichnet, dass die Informationen über das benachbarte vorher codierte Segment, aus dem das Prädiktionsbewegungsfeldmodell erhalten wird, eine Angabe über die Position des benachbarten vorher codierten Segments in Bezug auf das momentane Segment enthalten.
  46. Videodecodierer (14) zum Decodieren codierter Informationen, die eine Videosequenz darstellen, die durch den Videocodierer nach Anspruch 29 codiert worden sind, wobei die Videosequenz mehrere Videorahmen enthält, wobei der Decodierer dadurch gekennzeichnet, dass er umfasst: Mittel (52) zum Empfangen codierter Informationen, die ein Segment eines momentanen Rahmens der Videosequenz darstellen; Mittel (36), die eine Codierungsbetriebsart der codierten Informationen identifizieren, wobei die Codierungsbetriebsart eine aus wenigstens einer ersten Codierungsbetriebsart und einer zweiten Codierungsbetriebsart ist; Mittel (26, 36, 54, 56), die das Segment des momentanen Rahmens der Videosequenz unter Verwendung eines ersten Bewegungsfeldmodells und einer bewegungskompensierten Prädiktion in Bezug auf einen vorher codierten Rahmen der Videosequenz rekonstruieren, falls die identifizierte Codierungsbetriebsart die erste Codierungsbetriebsart ist; und Mittel (26, 36, 54, 56), die das Segment des momentanen Rahmens der Videosequenz unter Verwendung eines zweiten Bewegungsfeldmodells auf der Grundlage eines Bewegungsfeldmodells, das für ein benachbartes vorher codiertes Segment des momentanen Rahmens bestimmt worden ist, rekonstruie ren, falls die identifizierte Codierungsbetriebsart die zweite Codierungsbetriebsart ist.
  47. Videodecodierer (14) nach Anspruch 46, dadurch gekennzeichnet, dass in der ersten Codierungsbetriebsart der Decodierer (14) so beschaffen ist, dass er die codierten Informationen, die das Segment des momentanen Rahmens darstellen, decodiert, um Bewegungskoeffizienten-Informationen wiederzugewinnen.
  48. Videodecodierer (14) nach Anspruch 46, dadurch gekennzeichnet, dass in der zweiten Codierungsbetriebsart der Decodierer (14) so beschaffen ist, dass er die codierten Informationen, die das Segment des momentanen Rahmens darstellen, decodiert, um eine Angabe des benachbarten vorher codierten Segments wiederzugewinnen und um das Bewegungsfeldmodell des angegebenen benachbarten vorher codierten Segments zu verwenden, um ein Prädiktionsbewegungsfeldmodell für die Verwendung bei der Erzeugung des zweiten Bewegungsfeldmodells zu erzeugen.
  49. Videodecodierer (14) nach Anspruch 48, dadurch gekennzeichnet, dass die Angabe des benachbarten vorher codierten Segments, das von dem Decodierer (14) wiedergewonnen wird, Informationen über die Position des benachbarten vorher codierten Segments in Bezug auf das Segment, das momentan rekonstruiert wird, enthält.
  50. Videodecodierer (14) nach Anspruch 48, dadurch gekennzeichnet, dass die Angabe des benachbarten vorher codierten Segments, das durch den Decodierer (14) wiedergewonnen wird, ferner Informationen über ein Untersegment in dem benachbarten vorher codierten Segment enthält.
  51. Videodecodierer (14) nach Anspruch 48, dadurch gekennzeichnet, dass in der zweiten Codierungsbetriebsart der Decodierer (14) so beschaffen ist, dass er die decodierten Informationen, die das Segment des momentanen Rahmens darstellen, decodiert, um Verfeinerungsinformationen wiederzugewinnen, die zusammen mit dem Prädiktionsbewegungsfeldmodell verwendet werden sollen, um das Segment zu rekonstruieren.
  52. Videodecodierer (14) nach Anspruch 51, dadurch gekennzeichnet, dass die Verfeinerungsinformationen, die von dem Decodierer (14) wiedergewonnen werden, Bewegungskoeffizient-Informationen, die ein Verfeinerungsbewegungsfeldmodell darstellen, enthalten.
  53. Videodecodierer (14) nach Anspruch 51, dadurch gekennzeichnet, dass die Verfeinerungsinformationen eine Differenz zwischen dem ersten Bewegungsfeldmodell und dem Prädiktionsbewegungsfeldmodell darstellen.
  54. Videodecodierer (14) nach Anspruch 48, dadurch gekennzeichnet, dass in der zweiten Codierungsbetriebsart die Mittel (26, 36, 54, 56) zum Rekonstruieren des Segments des momentanen Rahmens so beschaffen sind, dass sie das Prädiktionsbewegungsfeldmodell aus einem Bewegungsfeldmodell ableiten, das das angegebene benachbarte vorher codierte Segment darstellt.
  55. Videodecodierer (14) nach Anspruch 54, dadurch gekennzeichnet, dass die Mittel (26, 36, 54, 56) zum Rekonstruieren des Segments des momentanen Rahmens so beschaffen sind, dass sie das Prädiktionsbewegungsfeldmodell dadurch ableiten, dass sie das Bewegungsfeldmodell, das das angegebene benachbarte vorher codierte Segment darstellt, aus dem angegebenen benachbarten vorher codierten Segment in das Segment, das momentan rekonstruiert wird, projizieren.
  56. Videodecodierer (14) nach Anspruch 52, dadurch gekennzeichnet, dass in der zweiten Codierungsbetriebsart die Mittel (26, 36, 54, 56) zum Rekonstruieren des Segments des momentanen Rahmens ferner so beschaffen sind, dass sie das Segment des momentanen Rahmens durch Kombinieren des Prädiktionsbewegungsfeldmodells mit dem Verfeinerungsbewegungsfeldmodell rekonstruieren.
DE60015566.8T 1999-08-11 2000-08-10 Verfahren und vorrichtung zur komprimierung eines bewegungsvektorfeldes Expired - Lifetime DE60015566C5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/371,641 US6735249B1 (en) 1999-08-11 1999-08-11 Apparatus, and associated method, for forming a compressed motion vector field utilizing predictive motion coding
US371641 1999-08-11
PCT/US2000/021823 WO2001011891A1 (en) 1999-08-11 2000-08-10 Apparatus and method for compressing a motion vector field

Publications (3)

Publication Number Publication Date
DE60015566D1 DE60015566D1 (de) 2004-12-09
DE60015566T2 true DE60015566T2 (de) 2005-10-27
DE60015566C5 DE60015566C5 (de) 2017-08-10

Family

ID=23464821

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60015566.8T Expired - Lifetime DE60015566C5 (de) 1999-08-11 2000-08-10 Verfahren und vorrichtung zur komprimierung eines bewegungsvektorfeldes

Country Status (8)

Country Link
US (5) US6735249B1 (de)
EP (1) EP1206881B1 (de)
JP (2) JP2003506978A (de)
CN (1) CN1207916C (de)
AT (1) ATE281740T1 (de)
AU (2) AU6763100A (de)
DE (1) DE60015566C5 (de)
WO (1) WO2001011891A1 (de)

Families Citing this family (137)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6735249B1 (en) * 1999-08-11 2004-05-11 Nokia Corporation Apparatus, and associated method, for forming a compressed motion vector field utilizing predictive motion coding
US6738423B1 (en) * 2000-01-21 2004-05-18 Nokia Mobile Phones Ltd. Method for encoding and decoding video information, a motion compensated video encoder and a corresponding decoder
FI115946B (fi) * 2000-05-05 2005-08-15 Nokia Corp Menetelmä virheiden havaitsemiseksi videoinformaatiosta
KR100355831B1 (ko) * 2000-12-06 2002-10-19 엘지전자 주식회사 2차원 최소 비트 예측 기반의 움직임 벡터 부호화 방법
US20020122491A1 (en) 2001-01-03 2002-09-05 Marta Karczewicz Video decoder architecture and method for using same
US6765963B2 (en) 2001-01-03 2004-07-20 Nokia Corporation Video decoder architecture and method for using same
US8290098B2 (en) * 2001-03-30 2012-10-16 Texas Instruments Incorporated Closed loop multiple transmit, multiple receive antenna wireless communication system
US7266150B2 (en) * 2001-07-11 2007-09-04 Dolby Laboratories, Inc. Interpolation of video compression frames
US7693220B2 (en) 2002-01-03 2010-04-06 Nokia Corporation Transmission of video information
EP1395061A1 (de) * 2002-08-27 2004-03-03 Mitsubishi Electric Information Technology Centre Europe B.V. Verfahren und Vorrichtung zur Kompensation von falschen Bewegunsvektoren in Videodaten
US8063295B2 (en) * 2002-10-03 2011-11-22 Polyphonic Human Media Interface, S.L. Method and system for video and film recommendation
US8978090B2 (en) * 2003-03-12 2015-03-10 Qualcomm Incorporated Multimedia transcoding proxy server for wireless telecommunication system
US8824553B2 (en) 2003-05-12 2014-09-02 Google Inc. Video compression method
US7145950B2 (en) 2003-07-14 2006-12-05 Primax Electronics Ltd. Method of motion vector determination in digital video compression
US20050013498A1 (en) 2003-07-18 2005-01-20 Microsoft Corporation Coding of motion vector information
US7567617B2 (en) 2003-09-07 2009-07-28 Microsoft Corporation Predicting motion vectors for fields of forward-predicted interlaced video frames
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US8064520B2 (en) * 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
CN100353768C (zh) * 2003-11-26 2007-12-05 联发科技股份有限公司 在视频压缩系统中进行运动估测的方法及相关装置
EP1709814A1 (de) * 2004-01-16 2006-10-11 Koninklijke Philips Electronics N.V. Verfahren zum komprimieren/dekomprimieren von videoinformationen
US7953152B1 (en) 2004-06-28 2011-05-31 Google Inc. Video compression and encoding method
CN100581052C (zh) * 2004-08-13 2010-01-13 深圳赛意法微电子有限公司 具有自适应的爬升和衰减时间的自动增益控制系统
KR100587698B1 (ko) 2004-10-22 2006-06-08 주식회사 휴맥스 선택적 예측 부호화/복호화 방법 및 장치
WO2007060572A2 (en) * 2005-11-24 2007-05-31 Philips Intellectual Property & Standards Gmbh Motion compensated ct reconstruction of high contrast objects
GB2435140B (en) * 2006-02-13 2011-04-06 Snell & Wilcox Ltd Sport action coding
US20100091845A1 (en) * 2006-03-30 2010-04-15 Byeong Moon Jeon Method and apparatus for decoding/encoding a video signal
ES2619522T3 (es) * 2006-03-30 2017-06-26 Lg Electronics, Inc. Un método y un aparato para descodificar/codificar una señal de video multivisión
EP2036360B1 (de) * 2006-06-30 2019-11-13 Telecom Italia S.p.A. Verfahren, vorrichtung und system zur robusten videoübertragung mit zusätzlichem informationskanal
US8358693B2 (en) 2006-07-14 2013-01-22 Microsoft Corporation Encoding visual data with computation scheduling and allocation
US8311102B2 (en) * 2006-07-26 2012-11-13 Microsoft Corporation Bitstream switching in multiple bit-rate video streaming environments
US8340193B2 (en) * 2006-08-04 2012-12-25 Microsoft Corporation Wyner-Ziv and wavelet video coding
US8532178B2 (en) * 2006-08-25 2013-09-10 Lg Electronics Inc. Method and apparatus for decoding/encoding a video signal with inter-view reference picture list construction
US20080050608A1 (en) * 2006-08-25 2008-02-28 Mcfaul Surry D Metal coating process and product
US9307122B2 (en) * 2006-09-27 2016-04-05 Core Wireless Licensing S.A.R.L. Method, apparatus, and computer program product for providing motion estimation for video encoding
US7388521B2 (en) * 2006-10-02 2008-06-17 Microsoft Corporation Request bits estimation for a Wyner-Ziv codec
US8457410B2 (en) * 2007-02-14 2013-06-04 Technion Research And Development Foundation Ltd. Over-parameterized variational optical flow method
US10194175B2 (en) 2007-02-23 2019-01-29 Xylon Llc Video coding with embedded motion
US20080240242A1 (en) * 2007-03-27 2008-10-02 Nokia Corporation Method and system for motion vector predictions
US8340192B2 (en) * 2007-05-25 2012-12-25 Microsoft Corporation Wyner-Ziv coding with multiple side information
CN100566427C (zh) * 2007-07-31 2009-12-02 北京大学 用于视频编码的帧内预测编码最佳模式的选取方法及装置
US8208552B2 (en) * 2008-01-25 2012-06-26 Mediatek Inc. Method, video encoder, and integrated circuit for detecting non-rigid body motion
WO2009099510A1 (en) * 2008-02-05 2009-08-13 Thomson Licensing Methods and apparatus for implicit block segmentation in video encoding and decoding
US9445121B2 (en) * 2008-08-04 2016-09-13 Dolby Laboratories Licensing Corporation Overlapped block disparity estimation and compensation architecture
US8385404B2 (en) 2008-09-11 2013-02-26 Google Inc. System and method for video encoding using constructed reference frame
US8311111B2 (en) 2008-09-11 2012-11-13 Google Inc. System and method for decoding using parallel processing
US8326075B2 (en) 2008-09-11 2012-12-04 Google Inc. System and method for video encoding using adaptive loop filter
US8325796B2 (en) 2008-09-11 2012-12-04 Google Inc. System and method for video coding using adaptive segmentation
US8654849B2 (en) * 2008-12-22 2014-02-18 Arris Enterprises, Inc. Integrated transcoding
BRPI0924908B1 (pt) 2009-06-18 2021-05-11 Kabushiki Kaisha Toshiba aparelhos de codificação e decodificação de vídeo, métodos para codificação e decodificação de vídeo
US9628794B2 (en) 2009-06-18 2017-04-18 Kabushiki Kaisha Toshiba Video encoding apparatus and a video decoding apparatus
JP2011035655A (ja) * 2009-07-31 2011-02-17 Sanyo Electric Co Ltd フレームレート変換装置、およびそれを搭載した表示装置
KR101459714B1 (ko) * 2009-10-28 2014-11-13 에스케이텔레콤 주식회사 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
US8971400B2 (en) * 2010-04-14 2015-03-03 Mediatek Inc. Method for performing hybrid multihypothesis prediction during video coding of a coding unit, and associated apparatus
US9532059B2 (en) 2010-10-05 2016-12-27 Google Technology Holdings LLC Method and apparatus for spatial scalability for video coding
US8611415B1 (en) 2010-11-15 2013-12-17 Google Inc. System and method for coding using improved motion estimation
EP3349360B1 (de) 2011-01-14 2019-09-04 GE Video Compression, LLC Schema für entropiecodierung und -decodierung
US8856212B1 (en) 2011-02-08 2014-10-07 Google Inc. Web-based configurable pipeline for media processing
US8644383B2 (en) * 2011-03-10 2014-02-04 Microsoft Corporation Mean absolute difference prediction for video encoding rate control
US8891626B1 (en) 2011-04-05 2014-11-18 Google Inc. Center of motion for encoding motion fields
US8938001B1 (en) 2011-04-05 2015-01-20 Google Inc. Apparatus and method for coding using combinations
US8693547B2 (en) 2011-04-06 2014-04-08 Google Inc. Apparatus and method for coding using motion vector segmentation
US9154799B2 (en) 2011-04-07 2015-10-06 Google Inc. Encoding and decoding motion via image segmentation
US8780996B2 (en) 2011-04-07 2014-07-15 Google, Inc. System and method for encoding and decoding video data
US8638854B1 (en) 2011-04-07 2014-01-28 Google Inc. Apparatus and method for creating an alternate reference frame for video compression using maximal differences
US8781004B1 (en) 2011-04-07 2014-07-15 Google Inc. System and method for encoding video using variable loop filter
US8780971B1 (en) 2011-04-07 2014-07-15 Google, Inc. System and method of encoding using selectable loop filters
US8804819B1 (en) 2011-04-19 2014-08-12 Google Inc. Method and apparatus for encoding video using data frequency
US8705620B1 (en) 2011-04-28 2014-04-22 Google Inc. Method and apparatus for encoding anchor frame by encoding features using layers
US8681866B1 (en) 2011-04-28 2014-03-25 Google Inc. Method and apparatus for encoding video by downsampling frame resolution
US9749638B1 (en) 2011-04-28 2017-08-29 Google Inc. Method and apparatus for encoding video with dynamic quality improvement
US9106787B1 (en) 2011-05-09 2015-08-11 Google Inc. Apparatus and method for media transmission bandwidth control using bandwidth estimation
US8989256B2 (en) * 2011-05-25 2015-03-24 Google Inc. Method and apparatus for using segmentation-based coding of prediction information
WO2013002696A1 (en) * 2011-06-30 2013-01-03 Telefonaktiebolaget Lm Ericsson (Publ) Transform audio codec and methods for encoding and decoding a time segment of an audio signal
EP2727357A1 (de) 2011-07-01 2014-05-07 Motorola Mobility LLC Vereinfachtes design für bewegungsvektorvorhersage
US8885706B2 (en) 2011-09-16 2014-11-11 Google Inc. Apparatus and methodology for a video codec system with noise reduction capability
US20130083845A1 (en) 2011-09-30 2013-04-04 Research In Motion Limited Methods and devices for data compression using a non-uniform reconstruction space
US9185428B2 (en) 2011-11-04 2015-11-10 Google Technology Holdings LLC Motion vector scaling for non-uniform motion vector grid
EP2595382B1 (de) 2011-11-21 2019-01-09 BlackBerry Limited Verfahren und Vorrichtungen zur Codierung und Decodierung von Transformationsdomänenfiltern
US9247257B1 (en) 2011-11-30 2016-01-26 Google Inc. Segmentation based entropy encoding and decoding
US9100657B1 (en) 2011-12-07 2015-08-04 Google Inc. Encoding time management in parallel real-time video encoding
US8908767B1 (en) 2012-02-09 2014-12-09 Google Inc. Temporal motion vector prediction
US9262670B2 (en) 2012-02-10 2016-02-16 Google Inc. Adaptive region of interest
US8947449B1 (en) 2012-02-21 2015-02-03 Google Inc. Color space conversion between semi-planar YUV and planar YUV formats
US9094681B1 (en) 2012-02-28 2015-07-28 Google Inc. Adaptive segmentation
US9131073B1 (en) 2012-03-02 2015-09-08 Google Inc. Motion estimation aided noise reduction
US9232230B2 (en) * 2012-03-21 2016-01-05 Vixs Systems, Inc. Method and device to identify motion vector candidates using a scaled motion search
US9609341B1 (en) 2012-04-23 2017-03-28 Google Inc. Video data encoding and decoding using reference picture lists
EP2842337B1 (de) 2012-04-23 2019-03-13 Google LLC Verwaltung von multireferenz-bildpuffern zur videodatencodierung
US9185429B1 (en) 2012-04-30 2015-11-10 Google Inc. Video encoding and decoding using un-equal error protection
US9172970B1 (en) 2012-05-29 2015-10-27 Google Inc. Inter frame candidate selection for a video encoder
US9014266B1 (en) 2012-06-05 2015-04-21 Google Inc. Decimated sliding windows for multi-reference prediction in video coding
US11317101B2 (en) 2012-06-12 2022-04-26 Google Inc. Inter frame candidate selection for a video encoder
EP2683165B1 (de) * 2012-07-04 2015-10-14 Thomson Licensing Verfahren zur Codierung und Decodierung eines Pixelblocks von einem Bewegungsmodell
US9344729B1 (en) 2012-07-11 2016-05-17 Google Inc. Selective prediction signal filtering
US9332276B1 (en) 2012-08-09 2016-05-03 Google Inc. Variable-sized super block based direct prediction mode
US9380298B1 (en) 2012-08-10 2016-06-28 Google Inc. Object-based intra-prediction
US9288484B1 (en) 2012-08-30 2016-03-15 Google Inc. Sparse coding dictionary priming
US9485515B2 (en) 2013-08-23 2016-11-01 Google Inc. Video coding using reference motion vectors
US9407915B2 (en) 2012-10-08 2016-08-02 Google Inc. Lossless video coding with sub-frame level optimal quantization values
US9369732B2 (en) 2012-10-08 2016-06-14 Google Inc. Lossless intra-prediction video coding
US9756346B2 (en) 2012-10-08 2017-09-05 Google Inc. Edge-selective intra coding
US9503746B2 (en) 2012-10-08 2016-11-22 Google Inc. Determine reference motion vectors
US9210432B2 (en) 2012-10-08 2015-12-08 Google Inc. Lossless inter-frame video coding
US9172740B1 (en) 2013-01-15 2015-10-27 Google Inc. Adjustable buffer remote access
US9311692B1 (en) 2013-01-25 2016-04-12 Google Inc. Scalable buffer remote access
US9225979B1 (en) 2013-01-30 2015-12-29 Google Inc. Remote access encoding
US9300906B2 (en) 2013-03-29 2016-03-29 Google Inc. Pull frame interpolation
US10448008B1 (en) * 2013-04-30 2019-10-15 Pixelworks, Inc. Motion estimation based on block level bilateral filter and local motion model
US9756331B1 (en) 2013-06-17 2017-09-05 Google Inc. Advance coded reference prediction
US9313493B1 (en) 2013-06-27 2016-04-12 Google Inc. Advanced motion estimation
US11425395B2 (en) 2013-08-20 2022-08-23 Google Llc Encoding and decoding using tiling
US9438910B1 (en) 2014-03-11 2016-09-06 Google Inc. Affine motion prediction in video coding
US9392272B1 (en) 2014-06-02 2016-07-12 Google Inc. Video coding using adaptive source variance based partitioning
US9578324B1 (en) 2014-06-27 2017-02-21 Google Inc. Video coding using statistical-based spatially differentiated partitioning
US9286653B2 (en) 2014-08-06 2016-03-15 Google Inc. System and method for increasing the bit depth of images
US9153017B1 (en) 2014-08-15 2015-10-06 Google Inc. System and method for optimized chroma subsampling
US10102613B2 (en) 2014-09-25 2018-10-16 Google Llc Frequency-domain denoising
CN104363451B (zh) 2014-10-27 2019-01-25 华为技术有限公司 图像预测方法及相关装置
SG11201707392RA (en) 2015-03-10 2017-10-30 Huawei Tech Co Ltd Picture prediction method and related device
AU2015406855A1 (en) * 2015-08-24 2018-03-15 Huawei Technologies Co., Ltd. Motion vector field coding and decoding method, coding apparatus, and decoding apparatus
US9794574B2 (en) 2016-01-11 2017-10-17 Google Inc. Adaptive tile data size coding for video and image compression
US10542258B2 (en) 2016-01-25 2020-01-21 Google Llc Tile copying for video compression
WO2017157259A1 (en) * 2016-03-15 2017-09-21 Mediatek Inc. Method and apparatus of video coding with affine motion compensation
US10560712B2 (en) 2016-05-16 2020-02-11 Qualcomm Incorporated Affine motion prediction for video coding
US10448010B2 (en) * 2016-10-05 2019-10-15 Qualcomm Incorporated Motion vector prediction for affine motion models in video coding
CN109804630A (zh) * 2016-10-10 2019-05-24 夏普株式会社 对视频数据编码执行运动补偿的系统以及方法
US10225573B1 (en) 2017-01-31 2019-03-05 Google Llc Video coding using parameterized motion models
US10873760B2 (en) * 2017-04-07 2020-12-22 Futurewei Technologies, Inc. Motion vector (MV) constraints and transformation constraints in video coding
WO2018209067A1 (en) * 2017-05-11 2018-11-15 Vid Scale, Inc. Higher-order motion models and graduated motion parameter estimation for video coding
US10880573B2 (en) 2017-08-15 2020-12-29 Google Llc Dynamic motion vector referencing for video coding
US10284869B2 (en) 2017-09-28 2019-05-07 Google Llc Constrained motion field estimation for hardware efficiency
US11877001B2 (en) 2017-10-10 2024-01-16 Qualcomm Incorporated Affine prediction in video coding
WO2020005035A1 (ko) * 2018-06-29 2020-01-02 한국전자통신연구원 처리율 향상을 위한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN120614463A (zh) * 2018-07-02 2025-09-09 Lg电子株式会社 视频信号解码和编码方法及存储介质
BR122021006490A2 (pt) * 2018-08-09 2021-05-18 Lg Electronics Inc. método de decodificação de imagem com base na predição de movimento afim e dispositivo usando lista de candidatos à fusão afins no sistema de codificação de imagem
US10904550B2 (en) * 2019-01-12 2021-01-26 Tencent America LLC Method and apparatus for video coding
US10970855B1 (en) 2020-03-05 2021-04-06 International Business Machines Corporation Memory-efficient video tracking in real-time using direction vectors

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0524317A4 (en) * 1991-02-08 1995-02-15 Tokyo Shibaura Electric Co Model forecasting controller
SE469866B (sv) 1991-04-12 1993-09-27 Dv Sweden Ab Metod för estimering av rörelseinnehåll i videosignaler
US5210605A (en) 1991-06-11 1993-05-11 Trustees Of Princeton University Method and apparatus for determining motion vectors for image sequences
EP0533195A2 (de) * 1991-09-20 1993-03-24 Sony Corporation Vorrichtung zum Kodieren und/oder Dekodieren von Bildsignalen
DE69217150T2 (de) 1991-09-30 1997-07-17 Philips Electronics Nv Bewegungsvektorschätzung, Bewegungsbildkodierung- und -speicherung
JP2636622B2 (ja) * 1992-03-13 1997-07-30 松下電器産業株式会社 ビデオ信号の符号化方法及び復号化方法ならびにビデオ信号の符号化装置及び復号化装置
TW224553B (en) 1993-03-01 1994-06-01 Sony Co Ltd Method and apparatus for inverse discrete consine transform and coding/decoding of moving picture
JPH06343172A (ja) * 1993-06-01 1994-12-13 Matsushita Electric Ind Co Ltd 動きベクトル検出方法及び動きベクトル符号化方法
US5398072A (en) * 1993-10-25 1995-03-14 Lsi Logic Corporation Management of channel buffer in video decoders
DE4408963A1 (de) 1994-03-16 1995-09-21 Inst Rundfunktechnik Gmbh Verfahren zum Verarbeiten eines seriellen, digitalen Datensignals
US5594504A (en) 1994-07-06 1997-01-14 Lucent Technologies Inc. Predictive video coding using a motion vector updating routine
DE19509418A1 (de) 1995-03-16 1996-09-19 Thomson Brandt Gmbh Verfahren und Schaltungsanordnung zur Unterabtastung bei Bewegungsschätzung
CA2216109A1 (en) * 1995-03-22 1996-09-26 Idt International Digital Technologies Deutschland Gmbh Method and apparatus for coordination of motion determination over multiple frames
EP0765087B1 (de) 1995-08-29 2003-11-12 Sharp Kabushiki Kaisha Videokodierungsvorrichtung
GB9519923D0 (en) * 1995-09-29 1995-11-29 Philips Electronics Nv Motion estimation for predictive image coding
DE69511119T2 (de) 1995-10-20 2000-02-03 Nokia Mobile Phones Ltd., Salo Kodierung eines feldes von bewegungsvektoren
US5929940A (en) 1995-10-25 1999-07-27 U.S. Philips Corporation Method and device for estimating motion between images, system for encoding segmented images
US5778192A (en) 1995-10-26 1998-07-07 Motorola, Inc. Method and device for optimal bit allocation between different sources of information in digital video compression
KR100209793B1 (ko) * 1995-10-28 1999-07-15 전주범 특징점 기반 움직임 추정을 이용하여 비디오 신호를 부호화 및 복호화하는 장치
US5682209A (en) 1995-11-13 1997-10-28 Tektronix, Inc. Motion estimation using limited-time early exit with prequalification matrices and a predicted search center
US5686963A (en) * 1995-12-26 1997-11-11 C-Cube Microsystems Method for performing rate control in a video encoder which provides a bit budget for each frame while employing virtual buffers and virtual buffer verifiers
US6212235B1 (en) * 1996-04-19 2001-04-03 Nokia Mobile Phones Ltd. Video encoder and decoder using motion-based segmentation and merging
US5812199A (en) 1996-07-11 1998-09-22 Apple Computer, Inc. System and method for estimating block motion in a video image sequence
JPH1079949A (ja) 1996-09-04 1998-03-24 Oki Electric Ind Co Ltd 画像符号化装置、画像復号化装置及び画像伝送システム
FR2753330B1 (fr) * 1996-09-06 1998-11-27 Thomson Multimedia Sa Procede de quantification pour codage video
GB2317525B (en) 1996-09-20 2000-11-08 Nokia Mobile Phones Ltd A video coding system
US6005980A (en) 1997-03-07 1999-12-21 General Instrument Corporation Motion estimation and compensation of video object planes for interlaced digital video
WO1998042137A1 (en) 1997-03-14 1998-09-24 Cselt-Centro Studi E Laboratori Telecomunicazioni S.P.A. Circuit for motion estimation in digitised video sequence encoders
JP3217987B2 (ja) * 1997-03-31 2001-10-15 松下電器産業株式会社 動画像信号の復号方法および符号化方法
JP3351705B2 (ja) 1997-04-25 2002-12-03 日本ビクター株式会社 動き補償符号化装置、動き補償符号化方法、及び記録媒体への記録方法
GB9712651D0 (en) * 1997-06-18 1997-08-20 Nds Ltd Improvements in or relating to encoding digital signals
KR19990005283A (ko) * 1997-06-30 1999-01-25 배순훈 웨이브렛 변환 영역에서의 계층적 움직임 추정 방법
EP0928544B1 (de) 1997-07-29 2004-10-06 Koninklijke Philips Electronics N.V. Verfahren zur videocodierung mit variabler bitrate und entsprechender videocodierer
US5978048A (en) 1997-09-25 1999-11-02 Daewoo Electronics Co., Inc. Method and apparatus for encoding a motion vector based on the number of valid reference motion vectors
US6895048B2 (en) * 1998-03-20 2005-05-17 International Business Machines Corporation Adaptive encoding of a sequence of still frames or partially still frames within motion video
US6081553A (en) * 1998-04-06 2000-06-27 Hewlett Packard Company Block-matching motion estimation technique for video compression of noisy source signals
US6128047A (en) 1998-05-20 2000-10-03 Sony Corporation Motion estimation process and system using sparse search block-matching and integral projection
US6130912A (en) 1998-06-09 2000-10-10 Sony Electronics, Inc. Hierarchical motion estimation process and system using block-matching and integral projection
JP4932987B2 (ja) * 1998-07-10 2012-05-16 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 動きベクトル処理方法
RU2154918C1 (ru) * 1998-08-01 2000-08-20 Самсунг Электроникс Ко., Лтд. Способ и устройство для цикл-фильтрации данных изображения
JP4027513B2 (ja) * 1998-09-29 2007-12-26 株式会社ルネサステクノロジ 動き検出装置
GB2343319B (en) * 1998-10-27 2003-02-26 Nokia Mobile Phones Ltd Video coding
US6507616B1 (en) 1998-10-28 2003-01-14 Lg Information & Communications, Ltd. Video signal coding method
US6418166B1 (en) 1998-11-30 2002-07-09 Microsoft Corporation Motion estimation and block matching pattern
US6295089B1 (en) 1999-03-30 2001-09-25 Sony Corporation Unsampled hd MPEG video and half-pel motion compensation
US6289052B1 (en) * 1999-06-07 2001-09-11 Lucent Technologies Inc. Methods and apparatus for motion estimation using causal templates
US6735249B1 (en) * 1999-08-11 2004-05-11 Nokia Corporation Apparatus, and associated method, for forming a compressed motion vector field utilizing predictive motion coding
JP4596718B2 (ja) * 1999-08-11 2010-12-15 ノキア コーポレイション 適応動きベクトル場符号化
US6690728B1 (en) * 1999-12-28 2004-02-10 Sony Corporation Methods and apparatus for motion estimation in compressed domain
CN100591131C (zh) 2000-08-11 2010-02-17 诺基亚有限公司 用于在电信通信系统中传送视频帧的方法和设备
JP4373702B2 (ja) 2003-05-07 2009-11-25 株式会社エヌ・ティ・ティ・ドコモ 動画像符号化装置、動画像復号化装置、動画像符号化方法、動画像復号化方法、動画像符号化プログラム及び動画像復号化プログラム

Also Published As

Publication number Publication date
US7149251B2 (en) 2006-12-12
US20070140342A1 (en) 2007-06-21
AU6763100A (en) 2001-03-05
WO2001011891A1 (en) 2001-02-15
EP1206881A1 (de) 2002-05-22
US20040165664A1 (en) 2004-08-26
US6735249B1 (en) 2004-05-11
CN1207916C (zh) 2005-06-22
JP2008178149A (ja) 2008-07-31
DE60015566C5 (de) 2017-08-10
DE60015566D1 (de) 2004-12-09
ATE281740T1 (de) 2004-11-15
EP1206881B1 (de) 2004-11-03
CN1378750A (zh) 2002-11-06
US8411757B2 (en) 2013-04-02
AU6899200A (en) 2001-03-05
JP2003506978A (ja) 2003-02-18
US6711209B1 (en) 2004-03-23
US6782053B1 (en) 2004-08-24

Similar Documents

Publication Publication Date Title
DE60015566T2 (de) Verfahren und vorrichtung zur komprimierung eines bewegungsvektorfeldes
DE69803821T2 (de) Verfahren zur rechnerisch graziösen Degradierung in einem audio-visuellen Kompressionssystem
DE69320719T2 (de) Effiziente, frequenzskalierbare Videokodierung mit Koeffizientenwahl
DE10190285B4 (de) Verfahren und System zur Verarbeitung von komprimierten Videosignalen
DE69817460T2 (de) Bildsequenzdekodierungsverfahren
DE69824554T2 (de) Verfahren und anordnung zum erzeugen eines standbildes mit hoher auflösung
DE69725186T2 (de) Sprite-gestütztes videocodiersystem
DE69116869T2 (de) Digitale bildkodierung mit einer zufallsabtastung der bilder
DE60003070T2 (de) Adaptive bewegungsvektorfeldkodierung
DE69839100T2 (de) Verbesserte Videokodierung unter Verwendung von adaptiven Blockparametern für kodierte/unkodierte Blöcke
DE69232063T2 (de) Adaptive Bewegungskompensation mit mehreren Bewegungskompensatoren
DE69535228T2 (de) Bildumsetzungsvorrichtung
DE69129595T2 (de) Systeme und Verfahren zur Kodierung alternierender Halbbilder in Zeilensprungbildsequenzen
DE69615948T2 (de) Hierarchischer Bildkodierer und -dekodierer
DE69618171T2 (de) Bewegungsschätzung für prädiktive bildkodierung
DE69606441T2 (de) Videodatenkodierer und -dekodierer
DE69221191T2 (de) Verfahren und Vorrichtung zur Prädiktiven Kodierung eines Bildsignals mit Bewegungskompensation
DE60204447T2 (de) Verfahren zur codierung und decodierung von bewegungsschätzungen
DE19704439C2 (de) Verfahren und Vorrichtung zur Bewegungsschätzung in einem digitalen Videocodierer unter Verwendung von Trajektorien
DE69715660T2 (de) Videokodierung
DE19739266B4 (de) Verfahren und Vorrichtung zum Kodieren binärer Formen
DE69713923T2 (de) System und Verfahren zur digitalen Bildkompression mit Bewegungsschätzung
DE102013015821B4 (de) System und Verfahren zur Verbesserung der Videokodierung unter Verwendung von Inhaltsinformation
DE10022331A1 (de) Verfahren zur Transformationscodierung von Bewegtbildsequenzen
DE69834901T2 (de) Bewegungskompensierte prädiktive bildcodierung und -decodierung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: BECKER, KURIG, STRAUS, 80336 MUENCHEN