DE69834788T2 - Verfahren und vorrichtung zur bildkodierung - Google Patents

Verfahren und vorrichtung zur bildkodierung Download PDF

Info

Publication number
DE69834788T2
DE69834788T2 DE69834788T DE69834788T DE69834788T2 DE 69834788 T2 DE69834788 T2 DE 69834788T2 DE 69834788 T DE69834788 T DE 69834788T DE 69834788 T DE69834788 T DE 69834788T DE 69834788 T2 DE69834788 T2 DE 69834788T2
Authority
DE
Germany
Prior art keywords
image
motion vector
motion
backward
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69834788T
Other languages
English (en)
Other versions
DE69834788D1 (de
Inventor
Eiji Sony Corporation OGURA
Masatoshi Sony Corporation TAKASHIMA
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.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of DE69834788D1 publication Critical patent/DE69834788D1/de
Application granted granted Critical
Publication of DE69834788T2 publication Critical patent/DE69834788T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures

Description

  • Die vorliegende Erfindung bezieht sich auf ein Bildcodierverfahren und eine Bildcodiervorrichtung gemäß beispielsweise MPEG (Moving Picture Image Coding Experts Group).
  • Das MPEG-System ist ein Codiersystem, bei dem DCT (diskrete Kosinustransformation), Bewegungskompensationsvorhersage und variable Längencodierung kombiniert sind, um Kompression von Bilddaten auszuführen.
  • Die EP 0 658 057 zeigt ein derartiges Codiersystem.
  • Der Aufbau einer Bildcodiervorrichtung auf der Basis des MPEG-Systems ist in 1 gezeigt. In dieser Figur wird ein Eingangsanschluss T1 mit Bilddaten beliefert. Diese Bilddaten werden zu einer Bewegungsvektor-Ermittlungsschaltung 1 und eine Subtraktionsschaltung 2 geliefert. Die Bewegungsvektor-Ermittlungsschaltung 1 bestimmt unter Verwendung der zugeführten Bilddaten den Bewegungsvektor zwischen dem aktuellen Rahmen und einem Referenzrahmen (beispielsweise Vorwärtsrahmen), um diesen zu einer Bewegungskompensationsschaltung 3 zu liefern.
  • Bilddaten des Referenzrahmens werden außerdem in einem Rahmenspeicher 4 gespeichert. Diese Bilddaten werden zur Bewegungskompensationsschaltung 3 geliefert. In der Bewegungskompensationsschaltung 3 wird der Bewegungsvektor, der von der Bewegungsvektor-Ermittlungsschaltung 1 geliefert wird, dazu verwendet, Bewegungskompensation von Bilddaten, welche vom Rahmenspeicher 4 geliefert werden, auszuführen. Das Ausgangssignal der Bewegungskompensationsschaltung 3 wird zur Subtraktionsschaltung 2 und zu einer Addierschaltung 5 geliefert.
  • In der Subtraktionsschaltung 2 wird Subtraktionsverarbeitung zwischen Bilddaten des aktuellen Rahmens, die vom Eingangsanschluss T1 geliefert werden, und Bilddaten des bewegungs-kompensierten Referenzrahmens, die von der Bewegungskompensationsschaltung 3 geliefert werden, ausgeführt, um Vorhersagefehlerdaten zu bestimmen, um diese zu einer DCT-Schaltung 6 zu liefern. Die DCT-Schaltung 6 erlaubt, dass diese Vorhersagefehlerdaten einer DCT-Verarbeitung unterworfen werden, um diese zu einem Quantisierer 7 zu liefern. Der Quantisierer 7 quantisiert das Ausgangssignal der DCT-Schaltung, um dieses zu der variablen Längen-Codierschaltung (nicht gezeigt) zu liefern.
  • Das Ausgangssignal des Quantisierers 7 wird außerdem zu einem inversen Quantisierer 8 geliefert, in welchem dieses inverser Quantisierungsverarbeitung unterworfen wird. Dessen Ausgangssignal unterliegt inverser DCT-Verarbeitung in einer inversen DCT-Schaltung 9, so dass dies in ursprünglichen Vorhersagefehlerdaten wiederhergestellt (rekonstruiert) wird. Die somit erhaltenen Vorhersagefehlerdaten werden zur Addierschaltung 5 geliefert.
  • In der Addierschaltung 5 werden diese Vorhersagefehlerdaten zu Ausgangsdaten der Bewegungskompensationsschaltung 3 addiert, um Bilddaten des aktuellen Rahmens zu bestimmen. Die somit bestimmten Bilddaten werden im Rahmenspeicher 4 als Bilddaten des nächsten Referenzrahmens gespeichert.
  • Als Verfahren der Bewegungsvektorbestimmung in einer derartigen Bildcodiervorrichtung ist das Blockanpassungsverfahren bekannt. Gemäß dem Blockanpassungsverfahren wird das Bild in kleine rechteckige Bereiche (Blöcke) unterteilt, um Bewegung jedes Blocks zu ermitteln. Als Größe des Blocks gibt es 8 Pixel (seitliche Richtung) × 8 Pixel (Längsrichtung) (anschließend als 8 × 8 bezeichnet), 16 × 16 usw.. Das Blockanpassungsverfahren wird nun mit Hilfe von 2 beschrieben.
  • In 2 ist ein Referenzblock RB als M × N innerhalb des Referenzrahmens 41 festgelegt. Außerdem wird der Suchblock (Testblock) SB der gleichen Größe wie der Referenzblock RB innerhalb eines Abfragerahmens 42 festgelegt. Der Suchblock SB wird bewegt, indem er innerhalb eines vorher festgelegten Suchbereichs 43 von ±m × ±n zirkuliert, wobei die gleiche Position wie der Referenzblock RB die Mitte ist. Außerdem wird der Korrespondenzgrad zwischen dem Referenzblock RB und dem Suchblock (Testblock) SB berechnet, um zu ermöglichen, dass der Suchblock (Testblock), bei dem der Korrespondenzgrad maximal ist, der Anpassungsblock ist, um den Bewegungsvektor von diesem Anpassungsblock zu bestimmen.
  • In dem Fall nämlich, wo der Korrespondenzgrad zwischen dem Referenzblock RB und dem Suchblock (Testblock) SBk, der an der Position angeordnet ist, die um (u, v) vom Suchblock (Testblock) SB0 verschoben ist, der an der gleichen Position wie der Referenzblock RB angeordnet ist, maximal ist, wird angenommen, dass der Bewegungsvektor dieses Suchblocks (Testblocks) SB gleich (u, v) ist. In diesem Zeitpunkt wird angenommen, dass der Suchblock (Testblock), bei dem die Gesamtsumme der Absolutwertdifferenzen jedes Pixels oder die Gesamtsumme der Quadratdifferenzen jedes Pixels an den entsprechenden Positionen des Referenzblocks RB und des Suchblocks (Testblocks) SB minimal ist, der Suchblock (Testblock) ist, bei dem der Korrespondenzgrad maximal ist.
  • Bei dem MPEG-System wird eine Sequenz von Bewegtbildern in eine GOP (Bildgruppe) unterteilt, die aus mehreren Rahmen (Bildern) besteht, um Codieren auszuführen. Die GOP besteht aus codierten Intra-Rahmen-Bildern (I-Bildern), codierten Inter-Rahmen-Bildern (P-Bildern), die schon von codierten Rahmen vor dem Zeitpunkt vorhergesagt wurden, und codierten Inter-Rahmen-Bildern (B-Bilder), welche von schon codierten zwei Rahmen vor und nach dem Zeitpunkt vorgesagt werden.
  • Beispielsweise wird in 3 zunächst bewirkt, dass P6, welches das P-Bild ist, der Referenzrahmen ist und I3, welches das I-Bild ist, der Abfragerahmen ist, um die Bewegungsermittlung auszuführen. Dann wird veranlasst, dass B4, welches das B-Bild ist, der Referenzrahmen ist, und I3 und P6 der Abfragerahmen sind, um Bewegungsermittlung in beiden Richtungen (bidirektionale Bewegungsermittlung) auszuführen. Dann wird veranlasst, dass B5, welches das B-Bild ist, der Referenzrahmen ist, und I3 und P6 der Abrufrahmen sind, um bidirektionale Bewegungsermittlung auszuführen.
  • Es wird nun eine Erläuterung ausführlich mit Hilfe des Zeitablaufdiagramms, welches in 4 gezeigt ist, angegeben. Als Beispiel wird, wo bewirkt wird, dass der aktuelle Rahmen B4 der Referenzmakroblock im Zeitpunkt t1 ist, um im gleichen Zeitpunkt bidirektionale Vorhersage zum Abfragerahmen auszuführen (Abfragerahmen 0) I3 der Vorwärtsvorhersage und zum Abfragerahmen (Abfragerahmen 1) P6 der Rückwärtsvorhersage auszuführen, um zwei Bewegungsvektoren zu bestimmen, beschrieben. In diesem Fall ist die Übertragung von Referenzblockdaten vom aktuellen Rahmen B4 erforderlich, und die Übertragung von Abfrageblockdaten ist von zwei Abfragerahmen (I3 und P6) erforderlich.
  • Wenn folglich angenommen wird, dass ein Pixel gleich 8 Bits ist, die Größe des Referenzblocks 16 × 16 ist, und die Suchbereiche in der horizontalen und der vertikalen Richtung beide 16 sind, wird die Datenübertragungsmenge zum Verarbeiten eines Referenzblocks gleich 38kBits insgesamt, da der Referenzblock gleich 8 × 16 × 16 × 1 = 2Kbits ist und der Abrufblock gleich 8 × 48 × 48 × 2 = 36Kbits ist.
  • Wie oben ausgeführt war es gemäß dem herkömmlichen Bewegungsermittlungsverfahren zum Ausführen bidirektionaler Vorhersage notwendig, eine große Abrufrahmen-Datenmenge zu übertragen. Dies war somit ein großes Problem zum Realisieren von Hardware.
  • Außerdem war es bei dieser Bildcodiervorrichtung notwendig, sechs Rahmenspeicher insgesamt vom SPEICHER-0 bis zum SPEICHER-5 vorzubereiten, um entsprechende Rahmen lediglich für Zeitperioden zu halten, die in 4 gezeigt sind. Außerdem waren lokale Decodierspeicher LOKAL-1 und LOKAL-2 für die lokale Decodierausgabe erforderlich.
  • Es waren nämlich acht Speicher insgesamt als herkömmliche Bildcodiervorrichtung erforderlich.
  • Wenn beispielsweise das Eingabebild B1 geliefert wird, hält der SPEICHER-0 B1, bis das Codieren abgeschlossen ist. In Bezug auf die jeweiligen B-Rahmen werden diese ähnlich in den jeweiligen SPEICHERN gehalten, bis sie codiert sind. In diesem Fall werden I- und P-Rahmen, welche als Abfragerahmen verwendet werden, in den jeweiligen Rahmenspeichern gespeichert, bis Vorwärts- und Rückwärts-Bewegungsvektoren von entsprechenden Rahmen ermittelt werden, d.h., für Zeitperioden, während diese Rahmen als Abfragerahmen zum Ermitteln des Bewegungsvektors erforderlich sind.
  • Die vorliegende Erfindung wurde im Hinblick auf die oben erläuterten Schwierigkeiten getätigt, und es ist ihre Aufgabe, ein Bildcodierverfahren und eine Bildcodiervorrichtung bereitzustellen, mit denen die Datenübertragungsmenge von Abfragerahmen zum Ausführen bidirektionaler Vorhersage reduziert werden kann.
  • Eine weitere Aufgabe der vorliegenden Erfindung besteht darin, ein Bildcodierverfahren und eine Bildcodiervorrichtung bereitzustellen, mit denen die Speicherkapazität für einen Referenzrahmen und einen Abfragerahmen reduziert werden kann.
  • Um dies zu realisieren, richtet sich das oben erläuterte Bildcodierverfahren auf ein Bildcodierverfahren zum Ausführen von Bewegungsermittlung von Bildern in der Vorwärts- und Rückwärtsrichtung im Zeitpunkt, um Bildcodierung auszuführen,
    wobei das Verfahren aufweist:
    einen Eingabebild-Speicherschritt zum Speichern des zugeführten Bilds, um in einem Speicherabschnitt codiert zu werden, dadurch gekennzeichnet, dass
    ein Vorwärtsbewegungs-Ermittlungsschritt zum Ermitteln – von den abgerufenen Bild, welches in der Vorwärtsrichtung angeordnet ist, im Zeitpunkt in Bezug auf das erste Bild, welches im Speicherabschnitt Zuführbild-Speicherschritt gespeichert ist – des Vorwärtsbewegungsvektors des ersten Bilds;
    einen Rückwärtsbewegungs-Ermittlungsschritt zum Ermitteln – von dem abgerufenen Bild – des Rückwärtsbewegungsvektors des zweiten Bilds, welches im Speicherabschnitt im Eingangsbild-Speicherschritt gespeichert wurde und Vorwärts im Zeitpunkt in Bezug auf das abgerufene Bild angeordnet ist;
    eine Bewegungsvektor-Haltungsschritt zum Erhalten des Vorwärtsbewegungsvektors des ersten Bilds, welches durch den Vorwärtsbewegungs-Ermittlungsschritt ermittelt wurde, in den Erhaltungsabschnitt; und
    einen Codierschritt zum Lesen, wenn das erste Bild codiert wird, des Vorwärtsbewegungsvektors des ersten Bilds vom Bewegungsvektor-Erhaltungsschritt, um einen Rückwärtsbewegungsvektor in Bezug auf das erste Bild vom Rückwärtsbewegungs-Vektorermittlungsschritt zu ermitteln, um Codieren unter Verwendung dieser Bewegungsvektoren in der Vorwärts- und Rückwärtsrichtung auszuführen.
  • In diesem Fall werden das erste und das zweite Bild in mehreren Blockeinheiten verarbeitet, welche durch Unterteilen des Eingangsbilds erhalten werden.
  • Außerdem wird im Bewegungsermittlungsschritt in der Vorwärts- und Rückwärts richtung das Blockanpassungsverfahren dazu verwendet, Bewegungsvektoren zu ermitteln.
  • Außerdem wird gemäß einem Bildcodierverfahren nach der vorliegenden Erfindung eine Prozedur vorgenommen, um durch Berechnung – von Bilddaten des Referenzblocks und Bilddaten von einem abgerufenen Block innerhalb des Abrufungsbereichs, um einen Bewegungsvektor in der Vorwärtsrichtung und eine Bewegungsvektor in der Rückwärtsrichtung zu ermitteln, wodurch, wenn diese Bewegungsvektoren in beiden Richtungen verwendet werden, um Codieren auszuführen, der Ermittlungszeitablauf des Bewegungsvektors in einer Richtung nach vorne im Zeitpunkt in Bezug auf den Codierzeitpunkt verschoben wird, um dadurch zu zulassen, dass zumindest ein Bereich von Bilddaten des abgerufenen Blocks gemeinsam zur Bewegungsvektorermittlung in beiden Richtungen ist.
  • In diesem Fall wird der Bewegungsvektor, der vor dem Zeitpunkt in Bezug auf den Codierzeitpunkt ermittelt wird, im Aufrechterhaltungsabschnitt aufrechterhalten (gespeichert), um diesen gemäß dem Codierzeitpunkt auszulesen.
  • Weiter richtet sich eine Bildcodiervorrichtung nach der vorliegenden Erfindung auf eine Bildcodiervorrichtung, die ausgebildet ist, um Bewegungsermittlung von Bildern in der Vorwärts- und Rückwärtsrichtung in dem Zeitpunkt auszuführen, um Bildcodierung auszuführen,
    wobei die Vorrichtung aufweist:
    eine Eingabebild-Speichereinrichtung zum Speichern des zugeführten Bilds, welches zu codieren ist, gekennzeichnet durch
    eine Vorwärtsbewegungs-Ermittlungseinrichtung zum Ermitteln – aus dem abge rufenen Bild, welches in der Vorwärtsrichtung im Zeitpunkt in Bezug auf das erste Bild angeordnet ist, welches durch die Eingabebild-Speichereinrichtung gespeichert ist, – des Vorwärtsbewegungsvektors des ersten Bilds;
    eine Rückwärtsbewegungs-Ermittlungseinrichtung zum Ermitteln – aus dem abgerufenen Bild – des Rückwärtsbewegungsvektors des zweiten Bilds welches in der Eingabe bild-Speichereinrichtung gespeichert ist und welches vor dem Zeitpunkt in Bezug auf das abgerufene Bild angeordnet ist;
    eine Bewegungsvektor-Erhaltungseinrichtung zum Erhalten des Vorwärtsbewegungsvektors des ersten Bilds, welches durch die Vorwärtsbewegungs-Ermittlungseinrichtung ermittelt wird; und
    eine Codiereinrichtung zum Lesen – wenn das erste Bild codiert wird – des Vorwärtsbewegungsvektors des ersten Bilds von der Bewegungsvektor-Erhaltungseinrichtung, um einen Rückwärtsbewegungsvektor in Bezug auf das erste Bild von der Rückwärtsbewegungs-Vektorermittlungseinrichtung zu ermitteln, um Codieren unter Verwendung dieser Bewegungsvektoren in der Vorwärts- und Rückwärtsrichtung auszuführen.
  • In diesem Fall werden das erste und das zweite Bild in mehreren Blockeinheiten verarbeitet, welche durch Unterteilen des Eingangsbilds erhalten werden.
  • Außerdem ermittelt die Bewegungsermittlungseinrichtung in der Vorwärts- und Rückwärtsrichtung Bewegungsvektoren unter Verwendung des Blockanpassungsverfahrens.
  • 1 ist ein Blockdiagramm, welches den Aufbau einer Bildcodiervorrichtung gemäß MPEG zeigt;
  • 2 ist eine Ansicht, um das Blockanpassungsverfahren zu erläutern;
  • 3 ist eine Ansicht, welche ein Beispiel einer Bewegungsermittlung bei MPEG zeigt;
  • 4 ist ein Zeitablaufdiagramm, um den Arbeitszeitablauf einer herkömmlichen Bewegungsvektor-Ermittlungsschaltung und die Verwendung von Rahmenspeichern zu erläutern;
  • 5 ist ein Blockdiagramm, welches eine erste Form einer Bewegungsvektor-Ermittlungsschaltung zeigt, die bei einer Ausführungsform eines Bildcodierverfahrens und einer Bildcodiervorrichtung nach der Erfindung anwendbar ist;
  • 6 ist ein Blockdiagramm, welches eine zweite Form der Bewegungsvektor-Ermittlungsschaltung zeigt;
  • 7 ist ein Flussdiagramm, um die Arbeitsweise der Bewegungsvektor-Ermittlungsschaltung zu erläutern;
  • 8 ist ein Zeitablaufdiagramm, um die Arbeitsweise der Bewegungsvektor-Ermittlungsschaltung zu erläutern; und
  • 9 ist ein Zeitablaufdiagramm, um eine Rahmenspeicherreduzierung der Bewegungsvektor-Ermittlungsschaltung zu erläutern.
  • Bevorzugte Ausführungsformen eines Bildcodierverfahrens und einer Bildcodiervorrichtung nach der vorliegenden Erfindung werden anschließend mit Hilfe der beiliegenden Zeichnungen beschrieben. Diese Ausführungsform richtet sich auf eine Bildcodiervorrichtung gemäß dem in 1 gezeigten MPEG-System, bei dem veranlasst wird, dass der Aufbau der Bewegungsvektor-Ermittlungsschaltung 1 eine Bewegungsvektor-Ermittlungsschaltung ist, welche in 5 gezeigt ist. In der folgenden Beschreibung wird auf eine Erläuterung anderer entsprechenden Komponenten der Bildcodiervorrichtung verzichtet.
  • In 5 besteht die Bewegungsvektor-Ermittlungsschaltung aus einem Referenzrahmenspeicher 11, einem Abfragerahmenspeicher 12, einer Vorwärtsvorhersage-Bewegungsermittlungsschaltung 13, einer Rückwärtsvorhersage-Bewegungsermittlungsschaltung 14, einem Vorwärtsvorhersage-Bewegungsvektor/Restaufrechterhaltungsspeicher 15, und einer Bewegungskompensationsmodus-Beurteilungsschaltung 16.
  • Der Abfragerahmenspeicher 12 dient dazu, ein Bild eines Abfragerahmens zu speichern. Außerdem werden die Abfrageblockdaten B daraus gelesen und gemeinsam zur Vorwärtsvorhersagebewegungs-Ermittlungsschaltung 13 und zur Rückwärtsvorhersagebewegungs-Ermittlungsschaltung 14 geliefert.
  • Die Vorwärtsvorhersagebewegungs-Ermittlungsschaltung 13 bestimmt den Vorwärtsvorhersage-Bewegungsvektor c1 und dessen Rest d1, um diese an den Vorwärtsvorhersagebewegungs-Vektor-/Rest-Aufrechterrhaltungsspeicher 15 auszugeben.
  • Im Vorwärtsvorhersage-Bewegungsvektor-/Rest-Aufrechterhaltungsspeicher 15 werden der Vorwärtsvorhersage-Bewegungsvektor c1 und der Rest d1, die an diesen ausgegeben werden, aufrechterhalten (gespeichert). Gleichzeitig damit werden der Vorwärtsvorhersage-Bewegungsvektor c2 und der Rest d2, welche schon aufrechterhalten (gespeichert) wurden, ausgelesen und an die Bewegungskompensationsmodus-Beurteilungsschaltung 16 ausgegeben.
  • Die Rückwärtsvorhersage-Bewegungsermittlungsschaltung 14 bestimmt den Rückwärtsvorhersage-Bewegungsvektor e und dessen Rest f, um diese zur Bewegungskompensationsmodus-Beurteilungsschaltung 16 zu liefern. Dieser Bewegungsvektor e wird durch das Blockanpassungsverfahren ähnlich wie beim Stand der Technik bestimmt.
  • Die Bewegungskompensationsmodus-Beurteilungsschaltung 16 führt unter Verwendung der ihr zugeführten Daten eine Beurteilung des Bewegungskompensationsmodus durch und die Ermittlung des Bewegungsvektors und des Restes, usw., um diese als ein Ergebnis g auszugeben.
  • 6 ist ein Blockdiagramm, welches eine zweite Form der Bewegungsvektor-Ermittlungsschaltung zeigt. In diesem Fall sind die gleichen Bezugszeichen und Symbole wie die von 5 an den entsprechenden Bereichen angebracht, die gleich denjenigen von 5 sind. Die in 6 gezeigte Bewegungsvektor-Ermittlungsschaltung zeigt insgesamt als Einzelspeicher 21 den Referenzrahmenspeicher 11, den Abrufrahmenspeicher 12 und den Vorwärtsvorhersagebewegungs-Vektor-/Rest-Aufrechterhaltungsspeicher 15 in 5., wobei veranlasst wird, dass die Signalleitung die Form eines Busses ist.
  • Die Arbeitsweise der in diesen 5 und 6 gezeigten Bewegungsvektor-Ermittlungsschaltung wird mit Hilfe des Flussdiagramms von 7 erläutert. Außerdem ist das Arbeitszeitablaufdiagramm in 8 gezeigt.
  • Wie in 7 gezeigt ist, ist bei der oben erläuterten Bewegungsvektor-Ermittlungsschaltung der Referenzrahmen 0 kein codierter Rahmen, und der Bewegungsvektor in der Vorwärtsrichtung vom Referenzrahmen 0 und dessen Rest werden im Vorwärtsvorhersagebewegungs-Vektor-/Rest-Aufrechterhaltungsspeicher 15 im Schritt S1 aufrechterhalten (gespeichert). Weiter wird in dem zu codierenden Zeitpunkt im Schritt S2 der Rückwärtsvorhersagevektor vom Referenzrahmen 1 bestimmt, um dessen Bewegungsvektor in der Vorwärtsrichtung und dessen Rest, die im Schritt S1 aufrechterhalten wurden, werden ausgelesen, um Codieren des Referenzrahmens 1 auszuführen. Im darauf nachfolgenden Zeitpunkt wird dieser Betrieb wiederholt.
  • Wie in 8 gezeigt ist, beispielsweise im Zeitpunkt t0, wird Bewegungsermittlung ausgeführt, wobei veranlasst wird, dass der laufende Rahmen B4 der Referenzmakroblock ist, und der Rahmen I3 der Abrufrahmen für Vorwärtsvorhersage ist. Somit werden deren Bewegungsvektor und Rest in die Bank MVO des Vorwärtsvorhersage-Bewegungsvektor-/Rest-Aufrechterhaltungsspeichers 15 geschrieben.
  • Im Zeitpunkt t1 wird Bewegungsermittlung ausgeführt, bei der veranlasst wird, dass der aktuelle Rahmen B4 der Referenzmakroblock ist, und der Rahmen P6 der Abrufrahmen für die Rückwärtsvorhersage ist. Simultan damit werden der Vorwärtsbewegungsvektor und der Rest, die in der Bank MVO im Zeitpunkt t0 aufrechterhalten (gespeichert) werden, gelesen. Als Ergebnis sind die Bewegungsvektoren in beiden Richtungen, die für den Codierrahmen B4 erforderlich sind, insgesamt im Zeitpunkt t1 vorhanden (gesammelt).
  • Im Zeitpunkt t1 werden die Daten des Rahmens B7 außerdem als Referenzblockdaten übertragen, und der Vorwärtsbewegungsvektor vom Rahmen B7 bis zum Rahmen P6 und dessen Rest werden ermittelt. Damit werden diese Daten in die Bank MV1 des Vorwärtsvorhersage-Bewegungsvektor-/Rest-Aufrecherhaltungsspeichers 15 geschrieben. Der Vor wärtsbewegungsvektor und der Rest werden im Zeitpunkt t2 ausgelesen und zum Codieren des Rahmens B7 verwendet.
  • Außerdem wird im Zeitpunkt t2 der Rückwärtsbewegungsvektor vom Rahmen B7 zum Rahmen P9 und dessen Rest ähnlich bestimmt.
  • In einer Weise wie oben ausgeführt werden Abfragedaten einer Art (Daten des Rahmens P6 im Zeitpunkt t1) und Referenzblockdaten von zwei Arten (Daten des Rahmens B7 und des Rahmens B4 im Zeitpunkt t1) immer übertragen, um einen Lese-/Schreibbetrieb des Vorwärtsbewegungsvektors und dessen Rest in Bezug auf den Speicher auszuführen, um dadurch Bewegungsvektoren in beiden Richtungen zu bestimmen, welche für bidirektionale Vorhersage erforderlich sind. Somit kann das Codieren unter Verwendung bidirektionaler Vorhersage ausgeführt werden. Es wird folglich ein Verfahren angewandt, um den zeitlichen Ablauf, bei dem der Bewegungsvektor in Vorwärtsrichtung und dessen Rest in Bezug auf den zeitlichen Ablauf der Ermittlung vom Bewegungsvektor in der Rückwärtsrichtung und dessen Rest ermittelt werden (auch in Bezug auf den Codierzeitablauf), zu verschieben, um dadurch Abfragedaten einer Art zuzulassen, die gemeinsam mit Referenzblockdaten von zwei Arten sind. Durch dieses gemeinsame Datenverwendungssystem wird die Übertragungsmenge an Abfragedaten reduziert. Es sollte außerdem angemerkt sein, dass in dem Fall, wo der Rest zur Verarbeitung nicht erforderlich ist, es nicht notwendig ist, diesen Rest aufrechtzuerhalten (zu speichern).
  • In diesem Fall wird bei dieser Ausführungsform die Datenübertragungsmenge, die zur bidirektionalen Vorhersage notwendig ist, berechnet. Da die Übertragungsmenge zum Ausführen einer Lese-/Schreiboperation des Bewegungsvektors und dessen Rest eine vernachlässigbare Menge in der Größenordnung von mehreren 10 Bits ist, wird, wenn lediglich Mengen an Referenzblockdaten und Abfrageblockdaten berechnet werden, die gesamte Übertragungsmenge gleich 22 Kbits insgesamt der Übertragungsmenge des Referenzblocks von 8 × 16 × 16 × 2 = 4 Kbits und der Übertragungsmenge des Abfrageblocks von 8 × 48 × 48 × 1 = 18 Kbits. Verglichen mit den herkömmlichen 38 Kbits wird dieser Wert um ungefähr 40% reduziert.
  • Während der Fall, wo der Suchbereich auf ±16 sowohl in der horizontalen Richtung auch als in vertikalen Richtung beschrieben wurde, da gemäß, wenn der Suchbereich breiter wird, die Übertragungsmenge an Abfragedaten auf einen höheren Grad vergrößert wird, wird der Effekt der Übertragungsmengenverminderung durch diese Erfindung um mehrere Grade verbessert. Während außerdem der Fall, wo die Anzahl von B-Bildern als 2 beschrieben wurde, ist die Erfindung nicht auf diesen Fall beschränkt. Obwohl der Fall, wo der Suchbereich der Vorwärtsvorhersage und der Suchbereich der Rückwärtsvorhersage gleich sind, beschrieben wurde, kann die vorliegende Erfindung auch auf diesem Fall angewandt werden, wobei beispielsweise der Suchbereich einer Richtung (Vorwärtsrichtung) breit ist. In diesem Fall wird veranlasst, dass ein Bereich der Suchdaten gleich ist.
  • Außerdem kann bei der oben erläuterten Bewegungsvektor-Ermittlungsschaltung die Anzahl an Rahmenspeichern, welche als Referenzspeicher 11 und als Abfragerahmenspeicher 12 verwendet werden, auf mehrere Grade im Vergleich zur Anzahl der herkömmlichen Rahmenspeicher reduziert werden, was mit Hilfe von 4 beschrieben wurde. Diese Verminderung an Rahmenspeichern wird anschließend mit Hilfe von 9 beschrieben.
  • Wenn B1 als Eingangsbild geliefert wird, hält SPEICHER-0 B1, bis das Codieren beendet ist. Die jeweiligen B-Rahmen werden ähnlich in entsprechenden SPEICHERN gehalten, bis sie codiert sind. In diesem Fall werden I- und P-Rahmen als Abfragerahmen sofort freigegeben, nachdem sie zur Ermittlung des Bewegungsvektors in der Rückwärtsrichtung verwendet wurden, da der Bewegungsvektor in der Vorwärtsrichtung schon ermittelt wurde. Wie oben ausgeführt kann gemäß der Bildcodiervorrichtung unter Verwendung der Bewegungsvektor-Ermittlungsschaltung, die in 5 und 6 gezeigt ist, die Zeit, die zur Speicherung des I- und P-Rahmens in den Speicher erforderlich ist, abgekürzt werden. Aus diesem Grund kann die Anzahl von SPEICHERN, welche als Referenzrahmenspeicher und als Abrufrahmenspeicher verwendet werden, auf fünf (5) reduziert werden, was um eins geringer ist als die Anzahl der Speicher, die bei der herkömmlichen Bewegungsvektor-Ermittlungsschaltung verwendet werden, beispielsweise sechs (6) in 4.
  • Wie oben ausführlich beschrieben kann gemäß der vorliegenden Erfindung im Fall eines Ausführens einer bidirektionalen Bewegungsermittlung die Übertragungsquantität von Abrufdaten reduziert werden. Außerdem erlaubt die Reduzierung der Übertragungsmenge von Daten eine Reduzierung der Busbreite vom Speicher und eine niedrige Taktübertragungsgeschwindigkeit. Aus diesem Grund wird die Realisierung durch Hardware einfach. Als Ergebnis kann reduzierende Hardwarekosten und ein niedriger Energieverbrauch realisiert werden. Außerdem kann die Kapazität des Speichers zum Speichern von einem Ursprungsbild reduziert werden.

Claims (8)

  1. Bildcodierverfahren zum Ausführen von Bewegungsermittlung von Bildern in der Vorwärts- und Rückwärtsrichtung im Zeitpunkt, um Bildcodierung auszuführen, wobei das Verfahren aufweist: einen Eingabebild-Speicherschritt zum Speichern des zugeführten Bilds, um in einem Speicherabschnitt codiert zu werden, dadurch gekennzeichnet, dass ein Vorwärtsbewegungs-Ermittlungsschritt zum Ermitteln – von den abgerufenen Bild, welches in der Vorwärtsrichtung angeordnet ist, im Zeitpunkt in Bezug auf das erste Bild, welches im Speicherabschnitt Zuführbild-Speicherschritt gespeichert ist – des Vorwärtsbewegungsvektors des ersten Bilds; einen Rückwärtsbewegungs-Ermittlungsschritt zum Ermitteln – von dem abgerufenen Bild – des Rückwärtsbewegungsvektors des zweiten Bilds, welches im Speicherabschnitt im Eingangsbild-Speicherschritt gespeichert wurde und Vorwärts im Zeitpunkt in Bezug auf das abgerufene Bild angeordnet ist; eine Bewegungsvektor-Haltungsschritt zum Erhalten des Vorwärtsbewegungsvektors des ersten Bilds, welches durch den Vorwärtsbewegungs-Ermittlungsschritt ermittelt wurde, in den Erhaltungsabschnitt; und einen Codierschritt zum Lesen, wenn das erste Bild codiert wird, des Vorwärtsbewegungsvektors des ersten Bilds vom Bewegungsvektor-Erhaltungsschritt, um einen Rückwärtsbewegungsvektor in Bezug auf das erste Bild vom Rückwärtsbewegungs-Vektorermittlungsschritt zu ermitteln, um Codieren unter Verwendung dieser Bewegungsvektoren in der Vorwärts- und Rückwärtsrichtung auszuführen.
  2. Bildcodierverfahren nach Anspruch 1, wobei das erste und das zweite Bild in mehreren Blockeinheiten, die durch Unterteilen des Eingangsbilds erhalten werden, verarbeitet werden.
  3. Bildcodierverfahren nach Anspruch 2, wobei im Vorwärts- und Rückwärtsbewegungs-Ermittlungsschritt der Bewegungsvektor unter Verwendung des Blockanpassungsverfahrens ermittelt wird.
  4. Bildcodierverfahren zum Ermitteln – durch Berechnung – von Bilddaten des Referenzblocks und Bilddaten von einem abgerufenen Block innerhalb des Abrufungsbereichs, um einen Bewegungsvektor in der Vorwärtsrichtung und eine Bewegungsvektor in der Rückwärtsrichtung zu ermitteln, dadurch gekennzeichnet, dass, wenn diese Bewegungsvektoren in beiden Richtungen verwendet werden, um Codieren auszuführen, der Ermittlungszeitablauf des Bewegungsvektors in einer Richtung nach vorne im Zeitpunkt in Bezug auf den Codierzeitpunkt verschoben wird, um dadurch zu zulassen, dass zumindest ein Bereich von Bilddaten des abgerufenen Blocks gemeinsam zur Bewegungsvektorermittlung in beiden Richtungen ist.
  5. Bildcodierverfahren nach Anspruch 4, wobei der Bewegungsvektor, der vor dem Zeitpunkt in Bezug auf den Codierzeitpunkt ermittelt wird, in einem Erhaltungsabschnitt erhalten wird, um diesen gemäß dem Codierzeitpunkt auszulesen.
  6. Bildcodiervorrichtung, die eingerichtet ist, Bewegungsermittlung von Bildern in der Vorwärts- und Rückwärtsrichtung in dem Zeitpunkt auszuführen, um Bildcodierung auszuführen, wobei die Vorrichtung aufweist: eine Eingabebild-Speichereinrichtung zum Speichern des zugeführten Bilds, welches zu codieren ist, gekennzeichnet durch eine Vorwärtsbewegungs-Ermittlungseinrichtung zum Ermitteln – aus dem abgerufenen Bild, welches in der Vorwärtsrichtung im Zeitpunkt in Bezug auf das erste Bild angeordnet ist, welches durch die Eingabebild-Speichereinrichtung gespeichert ist, – des Vorwärtsbewegungsvektors des ersten Bilds; eine Rückwärtsbewegungs-Ermittlungseinrichtung zum Ermitteln – aus dem abgerufenen Bild – des Rückwärtsbewegungsvektors des zweiten Bilds welches in der Eingabebild-Speichereinrichtung gespeichert ist und welches vor dem Zeitpunkt in Bezug auf das abgerufene Bild angeordnet ist; eine Bewegungsvektor-Erhaltungseinrichtung zum Erhalten des Vorwärtsbewegungsvektors des ersten Bilds, welches durch die Vorwärtsbewegungs-Ermittlungseinrichtung ermittelt wird; und eine Codiereinrichtung zum Lesen – wenn das erste Bild codiert wird – des Vorwärtsbewegungsvektors des ersten Bilds von der Bewegungsvektor-Erhaltungseinrichtung, um einen Rückwärtsbewegungsvektor in Bezug auf das erste Bild von der Rückwärtsbewegungs-Vektorermittlungseinrichtung zu ermitteln, um Codieren unter Verwendung dieser Bewegungsvektoren in der Vorwärts- und Rückwärtsrichtung auszuführen.
  7. Bildcodiervorrichtung nach Anspruch 6, wobei das erste und das zweite Bild in mehreren Blockeinheiten, welche durch Teilen des zugeführten Bilds erhalten werden, verarbeitet werden.
  8. Bildcodiervorrichtung nach Anspruch 7, wobei die Bewegungsermittlungseinrichtung in der Vorwärts- und Rückwärtsrichtung einen Bewegungsvektor unter Verwendung des Blockanpassungsverfahrens ermitteln.
DE69834788T 1997-03-19 1998-03-04 Verfahren und vorrichtung zur bildkodierung Expired - Fee Related DE69834788T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP6586897 1997-03-19
JP6586897 1997-03-19
PCT/JP1998/000899 WO1998042136A1 (en) 1997-03-19 1998-03-04 Image encoding method and device

Publications (2)

Publication Number Publication Date
DE69834788D1 DE69834788D1 (de) 2006-07-20
DE69834788T2 true DE69834788T2 (de) 2007-05-16

Family

ID=13299410

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69834788T Expired - Fee Related DE69834788T2 (de) 1997-03-19 1998-03-04 Verfahren und vorrichtung zur bildkodierung

Country Status (4)

Country Link
US (1) US6005628A (de)
EP (1) EP0909097B1 (de)
DE (1) DE69834788T2 (de)
WO (1) WO1998042136A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3310049B1 (de) 2001-11-06 2019-01-30 Panasonic Intellectual Property Corporation of America Verfahren zur codierung bewegter bilder und verfahren zur decodierung bewegter bilder

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61200789A (ja) * 1985-03-04 1986-09-05 Kokusai Denshin Denwa Co Ltd <Kdd> 画面上の物体の動きベクトル検出方式
US5198901A (en) * 1991-09-23 1993-03-30 Matsushita Electric Corporation Of America Derivation and use of motion vectors in a differential pulse code modulation system
JPH05137131A (ja) * 1991-11-13 1993-06-01 Sony Corp フレーム間動き予測方法
JPH06233285A (ja) * 1993-01-30 1994-08-19 Victor Co Of Japan Ltd 動画像圧縮方法
JP3050736B2 (ja) * 1993-12-13 2000-06-12 シャープ株式会社 動画像符号化装置
JP3360942B2 (ja) * 1994-06-20 2003-01-07 沖電気工業株式会社 動画像符号化装置
KR0126871B1 (ko) * 1994-07-30 1997-12-29 심상철 양방향 이동벡터 추정을 위한 고속 블럭정합 방식
JPH0865685A (ja) * 1994-08-23 1996-03-08 Nec Corp 動きベクトル検出回路
TW311316B (de) * 1995-01-30 1997-07-21 Hitachi Ltd
KR0171145B1 (ko) * 1995-03-20 1999-03-20 배순훈 이미지 부호화 시스템용 움직임 보상 장치
US5886744A (en) * 1995-09-08 1999-03-23 Intel Corporation Method and apparatus for filtering jitter from motion estimation video data
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
JPH09238351A (ja) * 1996-02-29 1997-09-09 Canon Inc 画像符号化装置

Also Published As

Publication number Publication date
US6005628A (en) 1999-12-21
EP0909097A1 (de) 1999-04-14
EP0909097B1 (de) 2006-06-07
DE69834788D1 (de) 2006-07-20
EP0909097A4 (de) 2001-11-28
WO1998042136A1 (en) 1998-09-24

Similar Documents

Publication Publication Date Title
DE69629137T2 (de) Bildkodierungsgerät und Bilddekodierungsgerät
EP0687111B1 (de) Verfahren zur Codierung/Decodierung eines Datenstroms
DE69735437T2 (de) Bildkodierer und bilddekodierer
DE69735679T2 (de) Verfahren zur Bilddecodierung
DE60027495T2 (de) Video-codierverfahren und video-codiervorrichtung
DE69433272T2 (de) Vorrichtung zum Vermeiden von Rundungsfehlern bei der inversen Transformation von Transformationskoeffizienten eines Bewegtbildsignales
DE69827548T2 (de) Anordnung zur Vorverarbeitung für MPEG-2-Kodierung
DE3222648C2 (de) Anpassungsfähige Inter-Frame-Prädiktionseinrichtung für Fernsehsignale
DE69816342T2 (de) Prädiktives Bilddekodierungsverfahren
DE69735756T2 (de) Dynamische steuerung der kodierrate in einem blockbasierten videokodierungssystem
DE69736852T2 (de) Codierung- und Decodierungssystem für bewegte Bilder mit beliebig geformten Objekten
DE4400355A1 (de) Adaptiver Längenvariabel-Kodierer/Dekodierer
DE69814212T2 (de) Gerät zur Bildsignalumwandlung
EP0554300B1 (de) Verfahren, coder und decoder zur datenübertragung und/oder -speicherung
DE4442643B4 (de) Verfahren zum Abschätzen der Bewegung in einem Bewegtbild
DE69734812T2 (de) Bildübertragungssystem,-vorrichtung und -verfahren
DE19802860B4 (de) Verfahren und Vorrichtung zum kontext-basierten arithmetischen Codieren/Decodieren
DE10296787B4 (de) Selektive Prädikation für ein Intra-Codieren eines Videodatenblocks
DE69636529T2 (de) Verfahren zum Kodieren und Dekodieren von Bewegtbildsignalen
DE60107149T2 (de) Digitales Bildausgabegerät
DE69433537T2 (de) Vorrichtung zur Dekodierung von Bewegtbilddaten
DE69721373T2 (de) Quantisierer für ein Videokodierungssystem
DE69912208T2 (de) Verfahren und Vorrichtung zur Videocodierung mit hoher Effizienz
DE69834788T2 (de) Verfahren und vorrichtung zur bildkodierung
EP0821531B1 (de) Codierung und Decodierung von Trickfilmen

Legal Events

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