Technisches Gebiet
-
Die vorliegende Erfindung betrifft eine Bild-Vorhersage-Dekodierungsvorrichtung.
Technischer Hintergrund
-
Zum effizienten Speichern oder Senden digitaler Bilder muss das Bild in
kompressionskodierter Weise kodiert werden. Als ein Verfahren zum Kodieren eines digitalen Bildles in
einer kompressionskodierten Weise gibt es ein Wellenform-Kodierungsverfahren einer
Nebenband-Kodierung, Elementarwellen-Kodierung, fraktale Kodierung oder ähnliches,
abweichend von der diskreten Cosinus-Transformation (nachfolgend als DCT-
Transformation am bezeichnet), repräsentiert von der JPEG (Joint Photographic Experts
Group) und MPEG (Motion Picture Experts Group). Zum Zweck des Entfernens eines
redundanten Signals zwischen Bildern wird eine Zwischen-Bild-Vorhersage mit einer
Bewegungskompensation ausgeführt, um dadurch ein Differenzialsignal einer
Wellenform-Kodierung zu unterwerfen.
-
Gemäß dem MPEG-System wird ein eingegebenes Bild verarbeitet, während es in eine
Mehrzahl von 16 · 16 Makroblöcken aufgeteilt wird. Ein Makroblock wird weiterhin
aufgeteilt in 8 · 8 Blöcke und quantifiziert, nachdem er einer 8 · 8 DCT-Transformation
unterlag. Dies wird als Intra-Volllbild-Kodierung bezeichnet.
-
Andererseits wird gemäß einem Bewegungserfassungsverfahren mit einer
Blockübereinstimmung ein Vorhersage-Makroblock mit dem minimalen Fehler, bezogen auf den
objektiven Makroblock, aus den anderen, zeitlich benachbarten Bildern erfasst, der erfasste
Vorhersage-Makroblock wird von dem objektiven Makroblock subtrahiert, um dadurch
einen differenziellen Makroblock auszubilden und dieser Makroblock wird quantifiziert,
nachdem er einer 8 · 8 DCT-Transformation unterlag. Dies wird als Zwischen-Bild-
Kodierung bezeichnet und der Vorhersage-Makroblock wird als Vorhersagesignal im
Zeitbereich bezeichnet. Gemäß dem oben beschriebenen MPEG wird kein Bild aus
einem identischen Vollbild vorhergesagt.
-
Ein normales Bild hat räumlich vergleichbare Regionen und ein Bild kann durch
Verwenden dieser Merkmale einer räumlichen Region angenähert werden. In einer mit dem
Vorhersagesignal einer Zeitregion vergleichbaren Weise kann ein Vorhersagesignal
ebenfalls von einem identischen Vollbild erhalten werden. Dies wird als Vorhersagesignal
der räumlichen Region bezeichnet.
-
Da räumlich benachbarte zwei Bildpunktwerte dicht beieinander sind, ist das
Vorhersagesignal der räumlichen Region allgemein nahe an dem objektiven Signal angeordnet.
Andererseits wird an der Empfangseite oder der Wiedergabeseite einen Signal, welches
in der Vergangenheit kodiert und wiedergegeben wurde, benötigt zur Verwendung für
das Vorhersagesignal, da das ursprüngliche Bild abwesend ist. Wegen dieser zwei
Faktoren ist es erforderlich, dass das Vorhersagesignal der räumlichen Region mit hoher
Geschwindigkeit erzeugt wird. Dies ist der Fall, weil das Signal für die Erzeugung eines
Vorhersagesignals verwendet wird, unmittelbar nachdem der Bildpunktwert dekodiert
und wiedergegeben ist.
-
Daher ist es erforderlich, dass das Vorhersagesignal der räumlichen Region einfach mit
hoher Genauigkeit erzeugt wird. Weiterhin ist eine schnell betreibbare Anordnung in
einer Kodierungsvorrichtung und einer Dekodierungsvorrichtung erforderlich.
-
Die Kodierung von Bilddaten wurde in weitem Umfang verwendet in vielen
internationalen Standards wie JPEG, MPEG1, H.261, MPEG2 und H.263. Jeder der letzteren
Standards hat eine weiter verbesserte Kodierungs-Effizienz. Das heißt, viele Anstrengungen
wurden einer weiteren Verringerung der Anzahl von Bits als bei den konventionellen
Standards beim Ausdrücken der gleichen Bildqualität gewidmet.
-
Kodieren von Bilddaten eines dynamischen Bildes umfasst eine Intra-Vollbild-Kodierung
und Vorhersage-Vollbild-Kodierung. Unter diesen bezieht sich die Intra-Volllbild-
Kodierung auf eine Kodierung innerhalb des Bildschirms eines Vollbildes. In einem
repräsentativen Hybrid-Kodierungssystem wie dem MPEG1-Standard können
aufeinanderfolgende Vollbilder in die folgenden drei verschiedenen Typen klassifiziert werden:
-
(a) Intra-Vollbild (nachfolgend als ein "I-Vollbild" bezeichnet);
-
(b) Vorhersage-Vollbild (nachfolgend als ein "P-Vollbild" bezeichnet); und
-
(c) bidirektionales Vorhersage-Vollbild (nachfolgend als "B-Vollbild" bezeichnet).
-
Das I-Vollbild wird unabhängig von den anderen Vollbildern kodiert, das heißt, das I-
Vollbild wird ohne Verwendung der anderen Vollbilder komprimiert. Das P-Vollbild wird
durch Bewegungserfassung und Kompensation unter Verwendung des unmittelbar
vorausgehenden Vollbilds zum Zweck der Vorhersage der Inhalte eines kodierten Vollbilds
(es ist ein P-Vollbild) kodiert. Das B-Vollbild wird kodiert durch Bewegungserfassung und
Kompensation durch Verwenden von Informationen von dem unmittelbar
vorausgehenden Vollbild und Informationen von dem nachfolgenden Vollbild zum Vorhersagen der
Daten der Inhalte der B-Vollbilder. Das vorausgehende Vollbild und das nachfolgende
Vollbild sind das I-Vollbild oder das P-Vollbild. Das I-Vollbild gehört zu einem Intra-
Vollbild-Kodierungs-Modus. Das P-Vollbild und das B-Vollbild gehören zu einem
Vorhersage-Kodierungs-Modus.
-
Da die Merkmale der Kodierung des I-Vollbilds, des P-Vollbilds und des B-Vollbilds
voneinander verschieden sind, unterscheiden sich die Kompressionsverfahren davon
voneinander. Das I-Vollbild verwendet keine vorläufige Vorhersage für den Zweck der
Verringerung der Redundanz und daher benötigt es mehr Bits als diejenigen der P-Vollbilder
und der B-Vollbilder.
-
Eine Beschreibung wird hier gegeben, die MPEG2 als ein Beispiel verwendet. Es wird
angenommen, dass die Bitrate 4 MBits/s ist und ein Bild mit 30 Vollbildern/s verwendet
wird. Allgemein ist das Verhältnis der Anzahl der für I-, P- und B-Vollbilder verwendeten
Bits 6 : 3 : 1. Deshalb verwendet das I-Vollbild etwa 420 kBits/s das B-Vollbild verwendet
etwa 70 kBits/s. Dies ist der Fall, weil das B-Vollbild aus beiden Richtungen ausreichend
vorhergesagt wird.
-
Fig. 14 ist ein Blockschaltbild, welches einen Aufbau einer bekannten Bild-Vorhersage-
Kodierungsvorrichtung zeigt. Da eine DCT-Transformation auf einer Block-Basis
ausgeführt wird, basieren die jüngsten Bild-Kodierungsverfahren sämtlich auf der Aufteilung
eines Bildes in kleinere Blöcke. Gemäß der Intra-Vollbild-Kodierung ist ein eingegebenes
digitales Bildsignal zuerst einem Block-Abtastvorgang 1001 unterworfen, wie in Fig. 14
gezeigt. Als Nächstes werden die nachdem Block-Abtastvorgang 1001 erhaltenen
Blöcke einem DCT-Transformationsvorgang 1004 unterworfen und danach einem
Quantisierungsvorgang 1005 unterworfen und einem lauflängenveränderlichen Huffman-
Längenkodierungsvorgang 1006 (VLC: lauflängenveränderliche Kodierung,
Entropiekodierung). Andererseits wird gemäß der Vorhersage-Vollbild-Kodierung ein eingegebenes
digitales Bild einem Bewegungskompensationsvorgang 1003 unterworfen und der
bewegungskompensierte Block (d. h. der vorhergesagte Block) wird einem DCT-
Transfonmationsvorgang 1004 unterworfen. Als Nächstes werden der
Quantisierungsvorgang 1005 und der Lauflängen-Huffman-VLC-Kodierungs-(Entropiekodierungs)-
Vorgang 1006 ausgeführt.
-
Die Tatsache, dass der blockbasierte DCT-Transformationsvorgang 1004 eine räumliche
Redundanz innerhalb des zu verarbeitenden Zielblocks beseitigt oder verringert, und die
Tatsache, dass die Bewegungserfassungs-und Kompensations-Vorgänge 1002 und
1003 eine vorübergehende Redundanz zwischen benachbarten Vollbildern beseitigen
oder verringern, sind aus den konventionellen Bildkodierungstechniken bekannt.
Weiterhin beseitigt die Lauflängen-Huffman-VLC-Kodierung oder ein anderer Entropie-
Kodierungsvorgang 1006, der nach dem DCT-Transformationsvorgang 1004 und dem
Quantisierungsvorgang 1005 ausgeführt wird, eine statistische Redundanz zwischen
quantisierten DCT-Transformationskoeffizienten. Der Vorgang wird jedoch nur mit den
Blöcken innerhalb eines Bildschirm-Vollbilds ausgeführt.
-
Ein digitales Bild hat eine räumlich große Redundanz als ein inhärentes Merkmal. Diese
Redundanz existiert nicht nur in den Blöcken innerhalb eines Bildschirm-Vollbildes,
sondern auch zwischen Blöcken über Blöcken. Aus der obigen Beschreibung ist jedoch die
Tatsache erkennbar, dass kein gegenwärtiges Verfahren einen Vorgang zum Beseitigen
der Redundanz zwischen Blöcken eines Bildes verwendet.
-
Entsprechend den existierenden Bildkodierungsverfahren wird der DCT-
Transformationsvorgang 1004 oder ein anderer Transformationsvorgang auf der
Blockbasis infolge der beschränkenden Bedingungen bei der Hardware-Anordnung und
Berechnung ausgeführt.
-
Obwohl die räumliche Redundanz durch den blockbasierten Transformationsvorgang
verringert wird, ist sie beschränkt auf das Innere eines Blocks. Die Redundanz zwischen
zwei benachbarten Blöcken wird jedoch nicht zufriedenstellend berücksichtigt, sie kann
weiter verringert werden, wenn die Intra-Vollbild-Kodierung verwendet wird, welche
konsistent eine große Anzahl von Bits verbraucht.
-
Weiterhin sind die Tatsache, dass der blockbasierte DCT-Transformationsvorgang die
räumliche Redundanz innerhalb des zu verarbeitenden Zielblocks beseitigt oder
verringert, und die Tatsache, dass der Bewegungsvorhersage- und Kompensations-Vorgang
die vorübergehende Redundanz zwischen zwei benachbarten Vollbildern beseitigt oder
verringert, von den bekannten Bildkodierungstechniken bekannt. Eine Zickzack-
Abtastung und die Lauflängen-Huffman-VLC-Kodierung oder ein anderer
Entropiekodierungsvorgang, welche nach dem DCT-Transformationsvorgang und dem
Quantisierungsvorgang ausgeführt werden, beseitigen jedoch die statistische Redundanz in
quantisierten DCT-Transformationskoeffizienten, sie sind jedoch auf das Innere eines Blocks
beschränkt.
-
Ein digitales Bild beinhaltet inhärent eine große räumliche Redundanz. Diese Redundanz
existiert nicht nur innerhalb eines Blocks sondern auch zwischen Blöcken über Blöcken
eines Bildschirm-Vollbildes. Daher ist aus den obigen Tatsachen erkennbar, dass kein
existierendes Verfahren den Vorgang zum Beseitigen der Redundanz zwischen Blöcken
eines Bildes insgesamt verwendet, ausgenommen die DC-Koeffizieritenvorhersage von
JPEG, MPEG1 und MPEG2.
-
Gemäß MPEG1 und MPEG2 wird die DC-Koeffizientenvorhersage ausgeführt durch
Subtrahieren des DC-Wertes des vorausgehenden kodierten Blockes von dem
gegenwärtig kodierten Block. Dies ist ein einfaches Vorhersageverfahren, welches keine
Adaptivität oder Modus-Umschaltung aufweist, wenn die Vorhersage ungeeignet ist. Weiterhin
enthält es lediglich DC-Koeffizienten.
-
Gemäß dem gegenwärtigen Stand des betroffenen technischen Gebietes wird die
Zickzack-Abtastung für sämtliche Blöcke vor der Lauflängenkodierung verwendet. Es wurde
kein Versuch unternommen, eine adaptierte Abtastung auf der Basis der Daten der
Inhalte des Blocks auszuführen.
-
Fig. 22 ist ein Blockschaltbild, welches einen Aufbau einer bekannten Bild-Vorhersage-
Kodierungsvorrichtung zeigt: In Fig. 22 ist die bekannte Bild-Vorhersage-
Kodierungsvorrichtung ausgestattet mit einer Block-Abtasteinheit 2001, einer DCT-
Transformationseinheit 2003, einer Quantisierungseinheit 2004, einer Zickzack-
Abtasteinheit 2005 und einer Entropiekodierungseinheit 2006. In dieser Beschreibung
bedeutet der Begriff "Einheit" eine Schaltungs-Vorrichtung.
-
Gemäß der Intra-Vollbild-Kodierung (d. h., Kodierung innerhalb eines Vollbildes) wird ein
eingegebenes Bildsignal einem Block-Abtastvorgang 2001 unterworfen und danach
direkt einem DCT-Transformationsvorgang 2003 unterworfen. Dann werden ein
Quantisierungsvorgang 2004, ein Zickzack-Abtastvorgang 2005 und ein
Entropiekodierungsvorgang 2006 nacheinander ausgeführt. Andererseits werden gemäß der Zwischen-Bild-
Kodierung (d. h., Kodierung zwischen Vollbildern, d. h. Vorhersage-Vollbild-Kodierung)
eine Bewegungserfassung und ein Kompensationsvorgang in einer Einheit 2011 nach
dem Block-Abtastvorgang 2001 ausgeführt und ein Vorhersagefehler wird dann erhalten
von einem Addierer 2002 durch Subtrahieren eines von der Einheit 2011 erhaltenen
Erfassungswertes von den von der Block-Abtastung 2001 erhaltenen Bilddaten. Weiterhin
wird dieser Vorhersagefehler dem DCT-Transformationsvorgang 2003 unterworfen und
dann dem Quantisierungsvorgang 2004, dem Zickzack-Abtastvorgang 2005 und dem
Entropiekodierungsvorgang 2006, vergleichbar mit der Intra-Vollbild-Kodierung.
-
In einem in der in Fig. 22 gezeigten Bild-Vorhersage-Kodierungsvorrichtung
vorgesehenen, örtlichen Dekodierer werden ein inverser Quantisierungsvorgang und ein inverser
DCT-Transformationsvorgang in Einheiten 2007 und 2008 ausgeführt. Gemäß der Intra-
Vollbild-Kodierung wird ein durch Bewegungserfassung und Kompensation erhaltener
Vorhersagewert durch einen Addierer 2009 zu dem durch die Einheiten 2007 und 2008
wiederhergestellten Vorhersagefehler addiert und der Additionswert betrifft örtlich
dekodierte Bilddaten. Die dekodierten Bilddaten werden in einem Vollbild-Speicher 2010 des
örtlichen Dekodierers gespeichert. Schließlich wird ein Bitstrom von der
Entropiekodierungseinheit 2010 ausgegeben und zu der Bild-Vorhersage-Dekodierungsvorrichtung der
anderen Seite gesendet.
-
Fig. 23 ist ein Blockschaltbild, dass einen Aufbau einer bekannten Bild-Vorhersage-
Dekodierungsvorrichtung zeigt. Der Bitstrom wird von einer längenveränderlichen
Dekodierereinheit (VLD: längenveränderliche Dekodierung) (oder einer
Entropiedekodierungseinheit) 2021 dekodiert und die dekodierten Bilddaten werden dann einem inversen
Quantisierungsvorgang und einem inversen DCT-Transformationsvorgang in Einheiten
2023 und 2024 unterworfen. Gemäß der Zwischen-Bild-Kodierung wird ein
Vorhersagewert, welcher durch Bewegungserfassung und Kompensation erhalten wird und von
einer Einheit 2027 gebildet wird, durch einen Addierer 2025 zu dem wiederhergestellten
Vorhersagefehler addiert und bildet dadurch örtlich dekodierte Bilddaten. Die örtlich
dekodierten Bilddaten werden in einem Vollbild-Speicher 1026 des örtlichen Dekodierers
gespeichert.
-
Gemäß den existierenden Bildkodierungstechniken wird der DCT-
Transfonmationsvorgang oder ein anderer Transformationsvorgang auf der Block-Basis
infolge der beschränkenden Bedingungen bei der Hardware-Anordnung und Berechnung
ausgeführt. Die räumliche Redundanz wird durch die blockbasierte Transformation
verringert. Sie ist jedoch auf das Innere eines Blocks beschränkt. Die Redundanz zwischen
benachbarten Blöcken wird nicht ausreichend berücksichtigt. Insbesondere die Intra-
Vollbild-Kodierung, welche konsistent eine große Menge von Bits verbraucht, wird nicht
ausreichend berücksichtigt.
Offenbarung der Erfindung
-
Gemäß der vorliegenden Erfindung wird eine Bild-Vorhersage-Dekodierungsvorrichtung
angegeben, wie in dem Anspruch definiert.
Kurzbeschreibung der Zeichnungen
-
Fig. 1 ist ein Blockschaltbild eines Aufbaus einer Bild-Vorhersage-
Kodierungsvorrichtung;
-
Fig. 2 ist eine vereinfachte Ansicht eines Falles, in welchem ein in die Bild-
Vorhersage-Kodierungsvorrichtung in Fig. 1 eingegebenes Eingangsbild
in 8 · 8 Blöcke aufgeteilt ist;
-
Fig. 3 ist eine vereinfachte Ansicht eines Falles, in welchem ein in die Bild-
Vorhersage-Kodierungsvorrichtung in Fig. 1 eingegebenes Eingangsbild
in dreieckige Regionen aufgeteilt ist;
-
Fig. 4 ist ein Blockschaltbild, welches einen Aufbau einer ersten bevorzugten
Ausführungsform eines Vorhersagesignalgenerators zur Verwendung in
der Bild-Vorhersage-Kodierungsvorrichtung in Fig. 1 zeigt;
-
Fig. 5 ist ein Blockschaltbild, welches einen Aufbau einer zweiten bevorzugten
Ausführungsfarm eines Vorhersagesignalgenerators zur Verwendung in
der Bild-Vorhersage-Kodierungsvorrichtung in Fig. 1 zeigt;
-
Fig. 6 ist ein Blockschaltbild, welches einen Aufbau einer dritten bevorzugten
Ausführungsfarm eines Vorhersagesignalgenerators zur Verwendung in
der Bild-Vorhersage-Kodierungsvorrichtung in Fig. 1 zeigt;
-
Fig. 7 ist ein Blockschaltbild, welches einen Aufbau einer vierten bevorzugten
Ausführungsform eines Vorhersagesignalgenerators zur Verwendung in
der Bild-Vorhersage-Kodierungsvorrichtung in Fig. 1 zeigt;
-
Fig. 8 ist ein Blockschaltbild, welches einen Aufbau einer Bild-Vorhersage-
Kodierungsvorrichtung zeigt;
-
Fig. 9 ist eine vereinfachte Ansicht, welche ein Beispiel eines eingegebenen
Bildes zeigt, welches in die Bild-Vorhersage-Kodierungsvorrichtung von
Fig. 1 und Fig. 8 eingegeben wird und einen signifikanten Bildpunkt
enthält;
-
Fig. 10 ist eine vereinfachte Ansicht, welche ein Beispiel eines eingegebenen
Bildes zeigt, welches in die Bild-Vorhersage-Kodierungsvorrichtung von
Fig. 1 und Fig. 8 eingegeben wird und einen signifikanten Bildpunkt
enthält;
-
Fig. 11 ist eine vereinfachte Ansicht, welche ein Beispiel eines eingegebenen
Bildes zeigt, welches in die Bild-Vorhersage-Kodierungsvorrichtung von
Fig. 1 und Fig. 8 eingegeben wird und einen insignifikanten Bildpunkt
enthält;
-
Fig. 12 ist ein Blockschaltbild, welches einen Aufbau einer Bild-Vorhersage-
Dekodierungsvorrichtung gemäß einer bevorzugten Ausführungsform der
vorliegenden Erfindung zeigt;
-
Fig. 13 ist ein Blockschaltbild, welches einen Aufbau einer Bild-Vorhersage-
Dekodierungsvorrichtung gemäß einer bevorzugten Ausführungsform der
vorliegenden Erfindung zeigt;
-
Fig. 14 ist ein Blockschaltbild einer Anordnung einer bekannten Bild-Vorhersage-
Kodierungsvorrichtung;
-
Fig. 15 ist eine vereinfachte Ansicht eines Bildes zum Erläutern eines adaptiven
DCT-Transformations-Bereichs zur Intra-Vollbild-Vorhersage;
-
Fig. 16
ist ein Blockschaltbild, welches eine Anordnung einer Bild-Vorhersage-
Kodierungsvorrichtung zeigt;
-
Fig. 17 ist ein Blockschaltbild, welches eine Anordnung einer Bild-Vorhersage-
Kodierungsvorrichtung zeigt;
-
Fig. 18 ist ein Blockschaltbild, welches eine Anordnung von DCT-
Transformations-Bereichs-Vorhersageschaltungen von Fig. 16 und Fig.
17 zeigt;
-
Fig. 19 ist eine vereinfachte Ansicht eines Bildes, welches ein Beispiel eines
DC/AC-Vorhersage-Kodierungsverfahrens der DCT-Transformations-
Bereichs-Vorhersageschaltung in Fig. 18 zeigt;
-
Fig. 20 ist ein Blockschaltbild, welches eine Anordnung einer Bild-Vorhersage-
Dekodierungsvorrichtung gemäß einer bevorzugten Ausführungsform der
vorliegenden Erfindung zeigt;
-
Fig. 21 ist ein Flussdiagramm, welches ein DC/AC-Vorhersage-
Dekodierungsverfahren einer Bild-Vorhersage-Dekodierungsvorrichtung in
Fig. 20 zeigt;
-
Fig. 22 ist ein Blockschaltbild, welches eine Anordnung einer bekannten Bild-
Vorhersage-Kodierungsvorrichtung zeigt;
-
Fig. 23 ist ein Blockschaltbild, welches eine Anordnung einer bekannten Bild-
Vorhersage-Dekodierungsvorrichtung zeigt;
-
Fig. 24 ist ein Blockschaltbild, welches eine Anordnung einer Bild-Vorhersage-
Kodierungsvorrichtung zeigt;
-
Fig. 25 ist ein Blockschaltbild, welches eine Anordnung einer Bild-Vorhersage-
Dekodierungsvorrichtung gemäß einer weiteren bevorzugten
Ausführungsform der vorliegenden Erfindung zeigt;
-
Fig. 26 ist eine vereinfachte Ansicht eines Bildes, welches Anordnungen eines
Makroblocks und Blöcken eines Rahmens eben so wie ein
Blockvorhersageverfahren zeigt;
-
Fig. 27 ist eine vereinfachte Ansicht eines Bildes zum Erläutern einer horizontalen
Abtastfolge, welche für eine Koeffizientenabtastung in einer bevorzugten
Ausführungsform verwendet wird;
-
Fig. 28 ist eine vereinfachte Ansicht eines Bildes zum Erläutern einer vertikalen
Abtastfolge, welche für die Koeffizientenabtastung in einer bevorzugten
Ausführungsform verwendet wird;
-
Fig. 29 ist eine vereinfachte Ansicht eines Bildes zum Erläutern einer Zickzack-
Abtastfolge, welche für die Koeffizientenabtastung in einer bevorzugten
Ausführungsform verwendet wird;
-
Fig. 30 ist ein Flussdiagramm, welches einen in einer bevorzugten
Ausführungsform verwendeten Modus-Bestimmungsvorgang zeigt; und
-
Fig. 31 ist eine vereinfachte Ansicht eines Bildes, welches eine Beziehung
zwischen Blöcken gemäß der impliziten Modusbestimmung einer
bevorzugten Ausführungsform zeigt.
Beste Ausführungsform der Erfindung
-
Bevorzugte Ausführungsformen der vorliegenden Erfindung werden unten anhand der
beigefügten Zeichnungen beschrieben.
Erste Gruppe bevorzugter Ausführungsformen
-
Die erste Gruppe bevorzugter Ausführungsformen beinhaltet die erste bis vierte
Ausführungsform.
Erste bevorzugte Ausführungsform
-
Fig. 1 ist ein Blockschaltbild, welches eine Anordnung einer Bild-Vorhersage-
Kodierungsvorrichtung gemäß einer ersten bevorzugten Ausführungsform der
vorliegenden Erfindung zeigt.
-
In Fig. 1 sind ein Eingangsanschluss 101, ein erster Addierer 102, ein Kodierer 103, ein
Ausgabeanschluss 106, ein Dekodierer 107, ein zweiter Addierer 110, ein Zeilenspeicher
111 und ein Vorhersagesignalgenerator 112 gezeigt.
-
Der Aufbau und die Wirkungsweise der Bild-Vorhersage-Kodierungsvorrichtung wird
unten beschrieben. Objektive Bilddaten, die einem Kodierungsvorgang zu unterwerfen
sind, werden in den Eingangsanschluss 101 eingegeben. In diesem Fall werden die
eingegebenen Bilddaten in eine Mehrzahl benachbarter kleiner Regionen aufgeteilt.
-
Fig. 2 zeigt das Bild der eingegebenen Bilddaten in einem Fall, in welchem sie in 8 · 8
kleine Regionen aufgeteilt sind. Fig. 3 zeigt das Bild der eingegebenen Bilddaten in
einem Fall, in welchem es in dreieckige, kleine Regionen aufgeteilt ist. Die Bilddaten der
Mehrzahl der kleinen Regionen wird aufeinanderfolgend kodiert, wenn die Bilddaten der
zu verarbeitenden objektiven kleinen Regionen durch den Eingangsanschluss 101 und
eine Leitung 113 in den Addierer 102 eingegeben werden. Andererseits erzeugt der
Vorhersagesignalgenerator 112 Bilddaten einer kleinen Intra-Vollbild-Vorhersage-Region
und gibt die erzeugten Bilddaten als Bilddaten einer kleinen, optimalen Vorhersage-
Region über eine Leitung 121 zu dem Addierer 102 aus.
-
Der Addierer 102 subtrahiert den entsprechenden Bildpunktwert der optimalen, kleinen
Vorhersageregion, erhalten von dem Vorhersagesignalgenerator 112 von dem
Bildpunktwert der eingegebenen Bilddaten der zu verarbeitenden objektiven kleinen Region,
erzeugt dadurch Bilddaten einer kleinen Differenz-Region des Subtraktionsergebnis und
gibt die Bilddaten zu dem Kodierer 103 zur Ausführung eines Kompressions-
Kodierungsvorganges aus. In der vorliegenden bevorzugten Ausführungsform ist der
Kodierer 103 ausgestattet mit einem DCT-Transformierer 104 und einer
Quantisierungseinheit (Q) 105 und die Bilddaten der kleinen Differenz-Region werden in ein
Bildsignal eines Frequenzbereichs durch den DCT-Transformierer 104 transformiert, so
dass DCT-Transformationskoeffizienten erhalten werden. Dann werden die DCT-
Transformationskoeffizienten durch die Quantisierungseinheit 105 quantisiert. Die
quantisierten Bilddaten der kleinen Region werden durch eine Leitung 116 zu dem
Ausgangsanschluss 106 ausgegeben, weiter transformiert in einen Kode veränderlicher Länge
oder fester Länge und danach auf einem Aufzeichnungsmedium wie einer optischen
Disk gespeichert oder über eine Kommunikationsleitung (nicht dargestellt) gesendet.
-
Gleichzeitig werden die quantisierten Bilddaten der kleinen Region in den Dekodierer
107 eingegeben. In diesem Fall ist der Dekodierer 107 versehen mit einer inversen
Quantisierungseinheit 108 und einem DCT-Transformierer 109 und stellt die
eingegebenen Bilddaten der kleinen Region in Bilddaten einer erweiterten kleinen Differenz-Region
wieder her. In der vorliegenden, bevorzugten Ausführungsform werden die
eingegebenen Bilddaten der kleinen Region invers quantisiert durch die Invers-
Quantisierungseinheit 108 und danach werden die invers quantisierten Bilddaten in ein
Bildsignal einer räumlichen Region durch einen inversen diskreten Cosinus-
Transformierer (nachfolgend als ein Invers-DCT-Transformierer bezeichnet) 109
transformiert. Die somit erhaltenen Bilddaten der erweiterten kleinen Differenz-Region werden
zu dem Addierer 110 ausgegeben und der Addierer 110 addiert ein optimales Vorhersage-Bildsignal,
ausgegeben von dem Vorhersagesignalgenerator 112 über die Leitung
121 und eine Leitung 122 zu den Bilddaten der erweiterten kleinen Differenz-Region, um
dadurch Bilddaten einer kleinen Wiedergabe-Region zu erzeugen und einen
Wiedergabe-Bildpunktwert zum Erzeugen eines Intra-Vollbild-Vorhersage-Bildsignals aus den
Bilddaten der wiedergegebenen kleinen Region in dem Zeilenspeicher 111 zu speichern.
Der Vorhersagesignalgenerator 112 erzeugt Bilddaten der kleinen Intra-Vollbild-
Vorhersage-Region wie folgt. Das heißt, der Vorhersagesignalgenerator 112 erzeugt
einen Bildpunktwert der wiederhergestellten Bilddaten benachbart zu den Bilddaten der
zu verarbeitenden objektiven kleinen Region als ein Bildpunktwert der Bilddaten der
kleinen Intra-Vollbild-Vorhersage-Region.
-
In Fig. 2 sind, angenommen, dass ein Block 200 die zu verarbeitende, kleine objektive
Region ist, die Bildpunktwerte der benachbarten, wiederhergestellten Bilddaten a&sub0;, a&sub1;, a&sub2;,
a&sub6;, a&sub7;, b&sub0;, b&sub1;, b&sub2;, ..., b&sub6;, b&sub7;. In Fig. 3 sind, angenommen, dass ein Dreieck 301 die zu
verarbeitende objektive kleine Region ist, die Bildpunktwerte der benachbarten,
wiederhergestellten Bilddaten g&sub0;, g&sub1;, ..., g&sub4;, f&sub0;, f&sub1;, f&sub2;, ..., f&sub7;, f&sub8;. Angenommen, dass ein in Fig. 3
gezeigtes Dreieck 300 die zu verarbeitende objektive kleine Region ist, sind die
Bildpunktwerte der benachbarten, wiederhergestellten Bilddaten e&sub0;, h&sub0;, h&sub1;, ..., h&sub4;. Diese
Bildpunktwerte werden in dem Zeilenspeicher 111 gespeichert. Der
Vorhersagesignalgenerator 112 ermöglicht einen Zugriff auf den Zeilenspeicher 111 zum Lesen der
Blldpunktwerte der benachbarten Bilddaten als die Bildpunktwerte der Bilddaten der kleinen
Intra-Vollbild-Vorhersage-Region.
-
Fig. 4 und Fig. 5 sind Blockschaltbilder, welche Anordnungen des
Vorhersagesignalgenerators gemäß der ersten und zweiten bevorzugten Ausführungsform zur
Verwendung in der Bild-Vorhersage-Kodierungsvorrichtung in Fig. 1 zeigen.
-
In Fig. 4 sind die Bildpunktwerte a&sub0;, a&sub1;, a&sub2;, ..., a&sub5;, a&sub7; solche, die benachbart zueinander
in einer horizontalen Richtung, bezogen auf die zu verarbeitende kleine, objektive
Region, von dem Zeilenspeicher 111 in den Vorhersagesignalgenerator 112 eingegeben
werden, und ein Generator 401 innerhalb des Vorhersagesignalgenerators 112 erzeugt
Bilddaten 403 in der kleinen Intra-Vollbild-Vorhersage-Region durch wiederholtes
ausgeben eines identischen Bildpunktes, z. B. acht mal, in der horizontalen Richtung. In
diesem Fall werden die Bilddaten 403 der kleinen Intra-Vollbild-Vorhersage-Region in einem
Fall
verwendet, in welchem kein vertikal benachbarter Bildpunkt vorhanden ist, bezogen
auf die zu verarbeitende, kleine, objektive Region.
-
In Fig. 5 sind die Bildpunktwerte b&sub0;, b&sub1;, b&sub2;, ..., b&sub6;, b&sub7; solche, die benachbart zueinander
in einer vertikalen Richtung, bezogen auf die zu verarbeitende kleine, objektive Region,
von dem Zeilenspeicher 111 in den Vorhersagesignalgenerator 112 eingegeben werden,
und ein Generator 402 innerhalb des Vorhersagesignalgenerators 112 erzeugt Bilddaten
404 der kleinen Intra-Vollbild-Vorhersage-Region durch wiederholtes ausgeben eines
Bildpunktes, z. B. acht mal, in der vertikalen Richtung. In diesem Fall werden die
Bilddaten 404 der kleinen Intra-Vollbild-Vorhersage-Region in einem Fall verwendet, in
welchem kein horizontal benachbarter Bildpunkt vorhanden ist, bezogen auf die zu
verarbeitende kleine, objektive Region. In einem Fall, in welchem Bildpunkte vorhanden sind, die
in der horizontalen Richtung und der vertikalen Richtung benachbart sind, werden
Bilddaten der kleinen Intra-Vollbild-Vorhersage-Region erzeugt, wie in einer dritten
bevorzugten Ausführungsform in Fig. 6 gezeigt.
-
Fig. 6 ist ein Blockschaltbild, welches eine Anordnung der dritten bevorzugten
Ausführungsform des Vorhersagesignalgenerators zur Verwendung in der Bild-Vorhersage-
Kodierungsvorrichtung in Fig. 1 zeigt.
-
In Fig. 6 werden die von dem Generator 401 erzeugten Bilddaten 403 der kleinen Intra-
Vallbild-Vorhersage-Region (siehe Fig. 5) und die von dem Generator 402 erzeugten
Bilddaten 404 der kleinen Intra-Vollbild-Vorhersage-Region in einen Addierer 500
eingegeben und der Addierer 500 mittelt diese zwei Teile der Bilddaten durch Dividieren der
Summe der eingegebenen zwei Teile der Bilddaten durch Zwei. Somit werden die
benachbart wiedergegebenen Bildpunkte wiederholt durch die Generatoren 401 und 402
ausgegeben und die Mittelwert-Berechnung wird lediglich durch den Addierer 500
ausgeführt und daher können die Bilddaten der kleinen Intra-Vollbild-Vorhersage-Region mit
hoher Geschwindigkeit erzeugt werden. Es ist akzeptabel, die Bilddaten der kleinen
Intra-Vollbild-Vorhersage-Region durch lineares interpolieren der Bildpunktwerte der
benachbarten zwei Teile von Bilddaten zu erzeugen.
-
Fig. 7 ist ein Blockschaltbild, welches eine Anordnung einer vierten bevorzugten
Ausführungsform eines Vorhersagesignalgenerators zur Verwendung in der Bild-
Vorhersage-Kodierungsvorrichtung in Fig. 1 zeigt.
-
In Fig. 7 sind die Bildpunktwerte a&sub0;, a&sub1;, a&sub2;, ..., a&sub5;, a&sub7; solche, die benachbart zueinander
in einer horizontalen Richtung, bezogen auf die zu verarbeitende kleine, objektive
Region, von dem Zeilenspeicher 111 in den Generator 401 eingegeben werden und der
Generator 401 erzeugt Bilddaten einer ersten kleinen Intra-Vollbild-Vorhersage-Region
durch wiederholtes ausgeben jedes Bildpunktes in der horizontalen Richtung.
Andererseits sind die Bildpunktwerte b&sub0;, b&sub1;, b&sub2;, ..., b&sub5;, b&sub7; solche, die benachbart zueinander in der
vertikalen Richtung, bezogen auf die zu verarbeitende kleine, objektive Region, von dem
Zeilenspeicher 111 in den Generator 402 eingegeben werden und der Generator 402
erzeugt Bilddaten einer zweiten kleinen Intra-Vollbild-Vorhersage-Region durch
wiederholtes ausgeben jedes Bildpunktes in der vertikalen Richtung. Die Bilddaten der ersten
kleinen Intra-Vollbild-Vorhersage-Region und die Bilddaten der zweiten kleinen Intra-
Vollbild-Vorhersage-Region werden in den Addierer 500 eingegeben und Bilddaten einer
dritten kleinen Intra-Vollbild-Vorhersage-Region werden erzeugt durch Bilden der
Mittelwerte dieser zwei Teile von Bilddaten.
-
Andererseits werden die Bilddaten der zu verarbeitenden kleinen, objektiven Region
durch eine Leitung 616 in Fehler-Berechner 601, 602 und 603 eingegeben. In diesem
Fall werden die oben er wähnten Bilddaten der ersten kleinen Intra-Vollbild-Vorhersage-
Region und die Bilddaten der zu verarbeitenden kleinen objektiven Region in den Fehler-
Berechner 601 eingegeben und der Fehler-Berechner 601 berechnet einen ersten
absoluten Fehler, welcher der Absolutwert des Fehlers dieser zwei Teile von Bilddaten ist und
gibt denselben zu einem Komparator 604 aus. Die oben erwähnten Bilddaten der
zweiten kleinen Intra-Vollbild-Vorhersage-Region und die Bilddaten der zu verarbeitenden
kleinen objektiven Region werden in den Fehler-Berechner 602 eingegeben und der
Fehler-Berechner 602 berechnet einen zweiten Absolutwert, welcher der Absolutwert
des Fehlers dieser zwei Teile von Bilddaten ist und gibt denselben zu dem Komparator
604 aus. Weiterhin werden die oben erwähnten Bilddaten der dritten kleinen Intra-
Vollbild-Vorhersage-Region und die Bilddaten der zu verarbeitenden kleinen objektiven
Region in den Fehler-Berechner 603 eingegeben und der Fehler-Berechner 603 berechnet
einen dritten absoluten Fehler, welcher der Absolutwert des Fehlers dieser zwei Teile
der Bilddaten ist, und gibt denselben zu dem Komparator 604 aus.
-
Der Komparator 604 vergleicht die eingegebenen drei absoluten Fehler miteinander,
bestimmt den einen mit dem kleinsten absoluten Fehler und steuert einen Schalter 605,
um die Bilddaten der diesem entsprechenden kleinen Intra-Vollbild-Vorhersage-Region
zu der Leitung 121 auszugeben. Der Komparator 604 gibt gleichzeitig einen Identifizierer
zum Identifizieren der Bilddaten der ersten, zweiten und dritten kleinen Intra-Vollbild-
Vorhersage-Region zu der Vorrichtung an der Empfangseite oder der Wiedergabeseite
über eine Leitung 615 aus. Mit diesem Identifizierer sind die Bilddaten der kleinen Intra-
Vollbild-Vorhersage-Region an der Empfangsseite oder der Wiedergabeseite eindeutig
bestimmt. Durch Verwenden der Bilddaten der kleinen Intra-Vollbild-Vorhersage-Region
mit dem kleinsten Fehler kann somit ein Differenzsignal in der Kodierungsstufe
unterdrückt werden und erlaubt dadurch die Verringerung der Anzahl der zu erzeugenden
Bits.
Zweite bevorzugten Ausführungsform
-
Fig. 8 ist ein Blockschaltbild, welches eine Anordnung einer Bild-Vorhersage-
Kodierungsvorrichtung gemäß einer zweiten bevorzugten Ausführungsform der
vorliegenden Erfindung zeigt, wobei die mit denjenigen in Fig. 1 vergleichbaren
Komponenten mit den gleichen Bezugszeichen bezeichnet sind.
-
Die in Fig. 8 gezeigte Bild-Vorhersage-Kodierungsvorrichtung ist dadurch
gekennzeichnet, dass ein Bewegungsdetektor 700, ein Bewegungskompensierer 701, ein Optimal-
Modus-Auswähler 703 und ein Vollbild-Speicher 702 in der Bild-Vorhersage-
Kodierungsvorrichtung aus Fig. 1 enthalten sind.
-
Die Anordnung und Wirkungsweise der Bild-Vorhersage-Kodierungsvorrichtung in Fig.
8 wird unten beschrieben.
-
In einer mit derjenigen der ersten bevorzugten Ausführungsform vergleichbaren Weise
werden eingegebene Bilddaten der zu verarbeitenden, kleinen objektiven Region durch
einen Eingangsanschluss 101 in einen Addierer 102 eingegeben. Der Addierer 102
subtrahiert die Bilddaten der zu verarbeitenden kleinen objektiven Region von Bilddaten einer
kleinen Optimal-Vorhersage-Region, eingegeben von einem Optimal-Modus-
Auswähler 703 über eine Leitung 121, und gibt danach die Bilddaten des
Subtraktionsergebnis" zu einem Kodierer 103 aus. Der Kodierer 103 gibt die eingegebenen Bilddaten
des Subtraktionsergebnis' durch einen Ausgangsanschluss 106 aus, während er die
Daten in kompressionskodierter Weise kodiert. Gleichzeitig gibt der Kodierer die
kompressionskodierten Bilddaten der kleinen Region zu einem Dekodierer 107 zum Dekodieren
der Daten in einer erweiternden Dekodierungsweise aus und gibt danach die
resultierenden Daten zu einem Addierer 110 aus zum Addieren der erweiterten dekodierten
Bilddaten zu den Bilddaten der kleinen Optimal-Vorhersage-Region.
-
Dann wird in einer mit derjenigen der ersten bevorzugten Ausführungsform
vergleichbaren Weise nur der Bildpunktwert der Bilddaten, die zum Erzeugen von Bilddaten einer
kleinen Intra-Vollbild-Vorhersage-Region verwendet werden, in einem Zeilenspeicher
111 gespeichert, während sämtliche Bildpunktwerte des wiederhergestellten Bildes in
dem Vollbild-Speicher 702 gespeichert werden.
-
Wenn die Bilddaten des nächsten Bildes durch den Eingangsanschluss 101 eingegeben
werden, empfängt der Bewegungsdetektor 700 die Eingaben der Bilddaten der zu
verarbeitenden kleinen, objektiven Region und die in dem Vollbild-Speicher 702
gespeicherten Wiedergabe-Bilddaten und der Bewegungsdetektor 700 erfasst die Bewegung des
Bildes durch eine Block-Übereinstimmung oder ein vergleichbares Verfahren und gibt
einen Bewegungsvektor durch eine Leitung 705 aus. Der ausgegebene
Bewegungsvektor wird zum Beispiel einer längenveränderlichen Kodierung unterworfen, um gespeichert
oder gesendet (nicht dargestellt) zu werden und gleichzeitig zu dem
Bewegungskompensierer 701 gesendet. Der Bewegungskompensierer 701 erzeugt Bilddaten
einer kleinen Zeit-Vorhersage-Region aus dem wiedergegebenen Bild des Vollbild-
Speichers 702 auf der Basis des Bewegungsvektors und gibt denselben zu dem
Optimall-Modus-Auswähler 703 aus. Der Bewegungs-Erfassungsvorgang und der
Bewegungs-Kompensationsvorgang beinhalten eine Vorwärts-Vorhersage, Rückwärts-
Vorhersage und bidirektionale Vorhersage und diese Verfahren werden offenbart zum
Beispiel in der Beschreibung des US-Patentes Nr. 5,193,004.
-
Andererseits erzeugt der Vorhersagesignalgenerator 112 in einer mit derjenigen der
ersten bevorzugten Ausführungsform vergleichbaren Weise Bilddaten der kleinen Intra-
Vollbild-Vorhersage-Region, gibt die Daten zu dem Optimal-Modus-Auswähler 703 aus
und gibt gleichzeitig die Bilddaten der zu verarbeitenden kleinen objektiven Region zu
dem Optimal-Modus-Auswähler 703 aus. Der Optimal-Modus-Auswähler 703 wählt die
Bülddaten mit dem kleinsten Fehler aus (z. B. die Summe der Absolutwerte von
Differenzen, die bei jedem Bildpunkt erhalten werden), bezogen auf die Bilddaten der zu
verarbeitenden kleinen objektiven Region aus den Bilddaten der kleinen Intra-Vollbild-
Vorhersage-Region und den Bilddaten einer kleinen Zeit-Vorhersage-Region und gibt die
ausgewählten Bilddaten als Bilddaten einer kleinen Optimal-Vorhersage-Region zu dem
Addierer 102 aus. Ein Identifizierer, welcher die kleine Vorhersage-Region darstellt,
deren Bilddaten ausgewählt wurden, wird ausgewählt, um durch eine Leitung 709 zu der
Empfangsseite oder der Wiedergabeseite gesendet zu werden.
-
Wie oben beschrieben, besteht kein Bedarf zum Senden eines Zwischen-Bild-
Bewegungsvektors durch Einführen einer Zwischen-Bild-Vorhersage für die mit
Zwischen-Bild-Bewegungskompensation kodierten Bilddaten und daher kann die Anzahl von
Bits weiter verringert werden.
-
Die erste und zweite bevorzugten Ausführungsform sind Fälle, in welchen signifilkante
Bildpunkte über den gesamten Bildschirm vorhanden sind. Es gibt einen Fall, in welchem
ein signifikanter Bildpunkt und ein insignifikanter Bildpunkt auf einem Bildschirm
vorhanden sind, Zum Beispiel in dem Fall, in dem ein Bild durch ein Farbtonfilter aufgenommen
wird, sind Bildpunkte, welche den Gegenstand darstellen, signifikant, und Bildpunkte
welche einen Bereich in Blau oder ähnlichem darstellen, welche als Hintergrund dienen,
sind insignifikante Bildpunkte. Durch Senden der Textur und Formen des signifikanten
Objektes durch Kodieren können Wiedergabe und Anzeige jedes Objektes verwirklicht
werden. Beim Erzeugen von Bilddaten der kleinen Intra-Vollbild-Vorhersage-Region
durch den Vorhersagesignalgenerator 112 für solch ein eingegebenes Bild können
insignifikante Bildpunkte nicht verwendet werden.
-
Fig. 9 bis Fig. 11 zeigen vereinfachte Ansichten eingegebener Bilder mit signifikanten
Bildpunkten und insignifikanten Bildpunkten. In der vorliegenden bevorzugten
Ausführungsform wird ein Formsignal verwendet zum Ausdrücken, ob der Bildpunkt signifikant
ist oder nicht. Das Formsignal wird durch einen vorbestimmtes Verfahren
kompressionskodiert und zu der Empfangsseite oder Wiedergabeseite gesendet. Als ein Verfahren
zum Kodieren einer Form sind ein Ketten-Kodierungsverfahren und ähnliches
vorhanden. Ein komprimiertes Formsignal wird wiedergegeben, indem es erneut erweitert wird
und das wiedergegebene Formsignal wird zum Erzeugen eines Intra-Vollbild-
Vorhersage-Bildsignals wie folgt verwendet.
-
In Fig. 9 ist eine Formkurve 800 eine Grenzlinie und die durch den Pfeil angezeigte
Richtung ist das Innere eines Objektes und die Bilddaten innerhalb des Objektes
umfassen signifikante Bildpunkte. Unter den wiedergegebenen Bildpunkten benachbart zu
einer zu verarbeitenden kleinen objektiven Region 802 sind b&sub4;, b&sub5;, b&sub5; und b&sub7; die
signifikanten Bildpunkte und nur diese Bildpunktwerte werden wiederholt verwendet als die
Bildpunktwerte der kleinen Intra-Vollbild-Vorhersage-Region der zu verarbeitenden kleinen
objektiven Region 802.
-
In Fig. 10 ist eine Formkurve 804 eine Grenzlinie und die durch den Pfeil angezeigte
Richtung ist das Innere eines Objektes und die Bilddaten innerhalb des Objektes
umfassen signifikante Bildpunkte. Unter den wiedergegebenen Bildpunkten benachbart zu
einer zu verarbeitenden kleinen objektiven Region 805 sind a&sub4;, a&sub5;, a&sub6; und a&sub7; die
signifikanten Bildpunkte und nur diese Bildpunktwerte werden wiederholt verwendet als die
Bildpunktwerte der kleinen Intra-Vollbild-Vorhersage-Region der zu verarbeitenden kleinen
objektiven Region 805.
-
Weiterhin ist in Fig. 11 eine Formkurve 808 eine Grenzlinie und die durch den Pfeil
angezeigte Richtung ist das Innere eines Objektes und die Bilddaten innerhalb des
Objektes umfassen signifikante Bildpunkte. Unter den wiedergegebenen Bildpunkten
benachbart zu einer zu verarbeitenden kleinen objektiven Region 810 sind a&sub5;, a&sub6;, a&sub7;, b&sub4;, b&sub5;, b&sub6;
und b&sub7; die signifikanten Bildpunkte und nur diese Bildpunktwerte werden wiederholt
ausgegeben. An einer Stelle, wo sich zwei Bildpunktwerte überlappen, wird ein durch
Mittelwertbildung dieser Bildpunktwerte erhaltener Wert als der Bildpunktwert der kleinen
Intra-Vollbild-Vorhersage-Region der zu verarbeitenden kleinen objektiven Region 810
verwendet.
-
In Fig. 11 ist zum Beispiel der Wert eines Bildpunktes z&sub7;&sub7; der zu verarbeitenden kleinen
objektiven Region 810 der Mittelwert von a&sub7; und b&sub7;. An einer Stelle, an welcher kein
Bildpunkt vorhanden ist, wird der Mittelwert der horizontal und vertikal benachbarten
zwei Bildpunktwerte verwendet. Der Wert eines Bildpunktes z&sub1;&sub4; ist zum Beispiel der
Mittelwert von a&sub5; und b&sub4;. Somit sind die Bilddaten der kleinen Intra-Vollbild-Vorhersage-
Region eines Bildes mit einer beliebigen Form erzeugt.
-
Obwohl die oben erwähnte, bevorzugte Ausführungsform auf der Basis einer in
quadratischen Formen geteilten kleinen Region beschrieben wurde, ist die vorliegende Erfindung
nicht darauf beschränkt und der Bildschirm kann in dreieckige kleine Regionen aufgeteilt
sein. In diesem Fall wird die Bildverarbeitung in einer vergleichbaren Weise ausgeführt.
-
Als eine weitere bevorzugte Ausführungsform ist es akzeptabel, den Mittelwert nur durch
signifikante Bildpunktwerte zu erhalten, und die Verwendung des Mittelwertes als der
Bildpunktwert in der kleinen Intra-Vollbild-Vorhersage-Region. Konkret wird in Fig. 9 der
Mittelwert der Bildpunkte b&sub4;, b&sub5;, b&sub5; und b&sub7; berechnet und der berechnete Mittelwert wird
als der Bildpunktwert der kleinen Intra-Vollbild-Vorhersage-Region verwendet. In Fig.
10 wird der Mittelwert der Bildpunkte a&sub4;, a&sub5;, a&sub6; und a&sub7; berechnet und der berechnete
Mittelwert wird als der Bildpunktwert der kleinen Intra-Vollbild-Vorhersage-Region
verwendet. In Fig. 11 wird der Mittelwert der Bildpunkte a&sub5;, a&sub5;, a&sub7;, b&sub4;, b&sub5;, b&sub5; und b&sub7; berechnet
und er wird als der Bildpunktwert der kleinen Intra-Vollbild-Vorhersage-Region
verwendet.
Dritte bevorzugte Ausführungsform
-
Fig. 12 ist ein Blockschaltbild, welches eine Anordnung einer Bild-Vorhersage-
Dekodierungsvorrichtung gemäß einer dritten bevorzugten Ausführungsform der
vorliegenden Erfindung gezeigt.
-
In Fig. 12 sind ein Eingangsanschluss 901, ein Daten-Analysierer 902, ein Dekodierer
903, ein Addierer 906, ein Ausgangsanschluss 907, eine Steuerung 908, ein
Bewegungskompensierer 909, ein Vorhersagesignalgenerator 910, ein Zeilenspeicher 911
und ein Vollbild-Speicher 912 gezeigt.
-
Die Anordnung und Wirkungsweise der Bild-Vorhersage-Dekodierungsvorrichtung in
Fig. 12 wird unten beschrieben. In Fig. 12 werden kompressionskodierte Bilddaten in
den Daten-Analysierer 902 eingegeben. Der Daten-Analysierer 902 untersucht die
eingegebenen Bilddaten und gibt Bilddaten einer komprimierten kleinen Differenz-Region zu
dem Dekodierer 903 durch eine Leitung 915 aus, gibt ein Steuerungssignal zu der
Steuerung 908 über eine Leitung 926 aus und gibt weiterhin den oben erwähnten
Bewegungsvektor (nur wenn er existiert) zu dem Bewegungskompensierer 909 aus. Der
Dekodierer 903 ist ausgestattet mit einer Invers-Quantisierungseinheit 904 und einem
Invers-DCT-Transformierer 905 und erweitert die komprimierten Bilddaten einer kleinen
Differenz-Region zum Wiederherstellen der Daten als Bilddaten einer erweiterten kleinen
Differenz-Region.
-
In der vorliegenden bevorzugten Ausführungsform werden die komprimierten Bilddaten
der kleinen Differenz-Region durch die Invers-Quantisierungseinheit 904 invers
quantisiert und danach werden nach der inversen Quantisierung erhaltene Bilddaten eines
Frequenzbereichs in Bilddaten eines räumlichen Bereichs durch den Invers-DCT-
Transformierer 905 transformiert. Die nach der Transformation erhaltenen Bilddaten der
erweiterten kleinen Differenz-Region werden in den Addierer 906 eingegeben und der
Addierer 906 addiert die eingegebenen Bilddaten der erweiterten kleinen Differenz-
Region zu von einem Bewegungskompensierer 923 oder einem
Vorhersagesignalgenerator 922 über einen Schalter 913 und eine Leitung 924 gesendeten Bilddaten einer
optimalen kleinen Vorhersage-Region, um dadurch Bilddaten einer kleinen Wiedergabe-
Region des Additionsergebnis zu erzeugen. Der Addierer 906 gibt die
wiederhergestellten Bilddaten zu dem Ausgangsanschluss 907 über eine Leitung 917 aus und speichert
die Daten gleichzeitig in dem Vollbild-Speicher 912. Die Bildpunktwerte der
Bildpunktdaten zur Verwendung beim Erzeugen eines Bildes einer kleinen Intra-Vollbild-Vorhersage-
Region werden in dem Zeilenspeicher 911 gespeichert.
-
Die Bilddaten der optimalen kleinen Vorhersage-Region werden bestimmt durch die
Steuerung 908 auf der Basis eines Steuerungssignals von dem Daten-Analysierer 902,
so dass das Umschalten des Schalters 913 gesteuert wird. In einem Fall, in welchem die
Bilddaten der kleinen Intra-Vollbild-Vorhersage-Region durch die Steuerung 908
ausgewählt werden, verbindet der Schalter 913 die Leitung 924 mit der Leitung 922, so dass
der Vorhersagesignalgenerator 910 als Reaktion auf das Steuerungssignal von der
Steuerung 908 auf den Zeilenspeicher 911 zugreift, um den Wiedergabe-Bildpunktwert
als den Bildpunktwert der kleinen Intra-Vollbild-Vorhersage-Region auszugeben. Die
Einzelheiten der Wirkungsweise des Vorhersagesignalgenerators 910 wurden detailliert
anhand von Fig. 4, Fig. 5 und Fig. 6 beschrieben. In einem Fall, in welchem die Bilddaten
einer kleinen Zeit-Vorhersage-Region durch die Steuerung 908 ausgewählt
werden, verbindet der Schalter 913 die Leitung 924 mit der Leitung 923, so dass der
Bewegungskompensierer 909 einen Bewegungs-Kompensationsvorgang mit den Bilddaten
aus dem Vollbild-Speicher 912 auf der Basis eines von dem Daten-Analysierer 902 über
eine Leitung 925 als Reaktion auf das Steuerungssignal von der Steuerung 908 zu
übertragenden Bewegungsvektors ausführt um dadurch Bilddaten der kleinen Zeit-
Vorhersage-Region zu erzeugen und die Daten durch den Schalter 913 und die Leitung
924 zu dem Addierer 906 auszugeben.
Vierte bevorzugte Ausführungsform
-
Fig. 13 ist ein Blockschaltbild, welches eine Anordnung einer Bild-Vorhersage-
Dekodierungsvorrichtung gemäß einer vierten bevorzugten Ausführungsform der
vorliegenden Erfindung zeigt. In Fig. 13 sind die mit denjenigen in Fig. 12 vergleichbaren
Komponenten mit den gleichen Bezugszeichen bezeichnet. Die Bild-Vorhersage-
Dekodierungsvorrichtung in Fig. 13 ist dadurch gekennzeichnet, dass ein Form-
Dekodierer 990 in dem Grundaufbau der Bild-Vorhersage-Dekodierungsvorrichtung in
Fig. 12 enthalten ist. Der grundlegende Betrieb der
Bild-Vorhersage-Dekodierungsvorrichtung in Fig. 13 ist der Gleiche wie derjenige von Fig. 12 und daher wird nur der
unterschiedliche Betrieb unten detailliert beschrieben.
-
In der vorliegenden, bevorzugten Ausführungsform beinhalten die
kompressionskodierten Bilddaten kompressionskodierte Formdaten. Der Daten-Analysierer 902 extrahiert die
Formdaten und gibt dieselben zu dem Form-Dekodierer 990 aus und als Reaktion darauf
gibt der Form-Dekodierer 990 ein Formsignal in einer erweiterten Weise wieder, Das
wiedergegebene Formsignal wird zu der Empfangsseite oder der Wiedergabeseite
gesendet und gleichzeitig in den Vorhersagesignalgenerator 910 eingegeben. Der
Vorhersagesignalgenerator 910 erzeugt Bilddaten aus einer kleinen Intra-Vollbild-Vorhersage-
Region, wie anhand von Fig. 9 bis Fig. 11 beschrieben, basierend auf diesem
wiedergegebenen Formsignal. Somit werden die Bilddaten der kleinen Intra-Vollbild-
Vorhersage-Region des Bildes mit einer beliebigen Form erzeugt und die Bilddaten
können an der Empfangsseite oder Wiedergabeseite dekodiert und wiedergegeben werden.
Die dritte und vierte bevorzugte Ausführungsform sind gekennzeichnet durch das
Vorsehen des Zeilenspeichers 911. Bei Abwesenheit des Zeilenspeichers 911 muss ein Zugriff
von dem Vollbild-Speicher 912 auf einen Bildpunkt zum Erzeugen der Bilddaten der kleinen
Intra-Vollbild-Vorhersage-Region ausgeführt werden. Zu dem Zweck der Erzeugung
eines Vorhersagesignals durch den Bildpunkt der benachbarten kleinen Region ist es
erforderlich, Schreiben und Lesen mit hoher Geschwindigkeit in dem Vollbild-Speicher
auszuführen. Durch Bereitstellen eines besonderen Zeilenspeichers oder eines Puffers
können die Bilddaten der kleinen Intra-Vollbild-Vorhersage-Region mit hoher
Geschwindigkeit ohne Verwendung eines Hochgeschwindigkeits-Vollbild-Speichers erzeugt
werden.
-
In der obigen bevorzugten Ausführungsform kann der Mittelwert der Mehrzahl von
Bildpunkten ein besonders gewichteter Mittelwert sein.
-
Wie oben beschrieben, kann gemäß der ersten Gruppe bevorzugter Ausführungsformen
der vorliegenden Erfindung lediglich durch Verwendung des wiedergegebenen
Bildpunktwertes benachbart zu den Bilddaten der zu verarbeitenden kleinen objektiven
Region als der Bildpunktwert des Intra-Vollbild-Vorhersagesignals ein Vorhersagesignal
hoher Genauigkeit auf einfache Weise mit einem geringeren Berechnungsaufwand als
im Stand der Technik erzeugt werden und dieses kann einen einmaligen Effekt
herbeiführen, dass die Anzahl von Bits der Intra-Vollbild-Kodierung verringert werden kann. Der
Zeilenspeicher 911 ist vorgesehen, um darin den wiedergegebenen Bildpunktwert zur
Verwendung beim Erzeugen des Intra-Vollbild-Vorhersagesignals zu speichern und
daher kann ein Zugriff auf den Bildpunktwert mit hoher Geschwindigkeit ausgeführt werden,
um dadurch dem Intra-Vollbild-Vorhersagesignal zu erlauben, mit hoher Geschwindigkeit
erzeugt zu werden.
Zweite Gruppe bevorzugter Ausführungsformen
-
Die zweite Gruppe bevorzugter Ausführungsformen beinhaltet die fünfte bis siebte
Ausführungsform.
-
Angesichts der Probleme des Standes der Technik hat der Erfinder erkannt, dass die
Bildkodierungs-Effizienz weiter verbessert werden kann, indem nicht nur die Redundanz
zwischen zwei Bildern oder dem Inneren von zwei Blöcken in einem Bild beseitigt wird,
sondern auch die Redundanz zwischen zwei Blöcken in einem Bild.
-
Dar Erfinder hat erkannt, dass sich die in den gleichen Positionen benachbarter Blöcke
angeordneten DCT-Transformationskoeffizienten in vielen Fällen ähneln. Der Erfinder
hat ebenfalls erkannt, dass Die Ähnlichkeit insbesondere in einem Fall groß ist, in
welchem die ursprünglichen Bild-Zusammensetzungen von zwei Blöcken sich sehr ähneln,
oder wenn ein identisches Bildmuster, zum Beispiel einer geraden Linie, eines Winkels,
usw. enthalten ist. Identische Informationen bedeutet eine Redundanz gemäß einer
Informationstheorie.
-
Diese Art von in dem DCT-Transformationsbereich über einem Block existierenden
Redundanzen kann beseitigt oder merkbar verringert werden durch adaptierte Intra-
Vorhersage (Intra-Vollbild-Vorhersage) von einem vorherigen Block. Der folgende VLC-
Entropiekodierungsvorgang kann dann eine höhere Kodierungs-Effizienz durch die
geringere Entropie der Vorhersage verwirklichen. Als ein Ergebnis der Vorhersage dieses
DCT-Transformationsbereichs kann die Eingabe redundanter Daten in eine VLC-
Entropiekodierungsschaltung merkbar verringert werden. Dementsprechend kann eine
deutliche Einsparung von Bits erwartet werden. Daher wird die Bildqualität der kodierten
Bilddaten definitiv verbessert.
-
Die vorliegende bevorzugte Ausführungsform der vorliegenden Erfindung gibt ein
System zum genauen Vorhersagen von DCT-Transformationskoeffizienten aus einem
anderen Block an. Dieses System ist in der Lage, in dem benachbarten Block vorhandene
Redundanz zu beseitigen, weiterhin die Entropie der quantisierten DCT-
Tnansformationskoeffizienten zu verringern und daraus folgend die Anzahl der für die
Kodierung der DCT-Transformationskoeffizienten benötigten Bits zu verringern.
-
Die DCT-Transformationskoeffizienten des objektiven gegenwärtigen, zu verarbeitenden
Blockes mit der gegenwärtigen Zeitsteuerung (nachfolgend als gegenwärtiger Block
bezeichnet) können aus den DCT-Transformationskoeffizienten der gleichen Positionen in
dem vorausgehenden benachbarten Block vorhergesagt werden. Der benachbarte Block
wurde in der Verarbeitungsstufe bereits dekodiert. Das heißt, gemäß dem ersten DC-
Koeffizienten in einem der vorher dekodierten benachbarten Blöcke wird ein erster DC-
Koeffizient vorhergesagt. Ein zweiter Koeffizient AC1 wird aus dem zweiten Koeffizienten
AC1 in dem gleichen dekodierten Block vorhergesagt. Der gleiche Vorgang wird
nachfolgend ausgeführt. Durch Verwenden dieses Verfahrens können mehrere vorhergesagte
Blöcke erhalten werden aus den dekodierten Blöcken, die oberhalb an der linken Seite,
diagonal an der linken Seite, oberhalb diagonal an der rechten Seite und oberhalb,
bezogen auf den DCT-Transformationsblock angeordnet sind, der zum gegenwärtigen
Zeitpunkt kodiert wird. Diese vorhergesagten Blöcke werden geprüft, indem sie der
gegenwärtigen Entropiekodierung unterworfen werden. Dann wird ein Vorhersageblock mit
einer kleineren Anzahl von Bits ausgewählt, danach der Entropiekodierung unterworfen
und zu der Bild-Vorhersage-Dekodierungsvorrichtung an der Empfangsseite oder
Wiedergabeseite zusammen mit einem zusätzlichen Anzeigebit gesendet. Die Bild-
Vorhersage-Dekodierungsvorrichtung wird über den benachbarten Block informiert, aus
welchem der gegenwärtige Block vorhergesagt ist.
-
Ein Verfahren gemäß der vorliegenden, bevorzugten Ausführungsform der vorliegenden
Erfindung kann die DCT-Transformationskoeffizienten des gegenwärtigen Blockes
vorhersagen. Die DCT-Transformationskoeffizienten haben allgemein ausreichende
gegenseitige Beziehungen zu den DCT-Transformationskoeffizienten eines weiteren
benachbarten Blockes. Der Grund ist, dass die DCT-Transformation dazu neigt, einem
vergleichbaren Block-Bild einen identischen Wert oder eine identische Verteilung von DCT-
Transformationskoeffizienten zu geben.
-
Eingegebene Bilddaten eines Intra-Vollbildes oder vorübergehend vorhergesagten
Vollbildes werden normalerweise zuerst einem blockbasierten DCT-Transformationsvorgang
unterworfen. Nachdem die DCT-Transformationskoeffizienten des gegenwärtigen
Blockes erhalten werden, kann ein DCT-Transformationsbereichs-Vorhersagevorgang vor
der Quantisierung oder nach der Quantisierung ausgeführt werden.
-
Wie in Fig. 15 gezeigt, können die DCT-Transformationskoeffizienten des
gegenwärtigen Blockes vorhergesagt werden aus Blöcken, welche die bereits dekodierten Blöcke
sind, und benachbarten Blöcken, das heißt, einem oberen linken Block B1, einem oberen
Block B2, einem oberen rechten Block B3 und einem linken Block B4. Ein
vorhergesagter Block kann erhalten werden durch Subtrahieren sämtlicher DCT-
Transformationskoeffizienten des gegenwärtigen Blockes von sämtlichen DCT-
Transformationskoeffizienten des vorausgehenden benachbarten, in der gleichen
Positionen angeordneten Blockes. Der Block kann ebenfalls erhalten werden durch teilweises
Subtrahieren der DCT-Transformationskoeffizienten an Stelle sämtlicher DCT-
Transformationskoeffizienten.
-
Die vorhergesagten DCT-Transformationskoeffizienten der verschiedenen
vorhergesagten Blöcke werden quantisiert, wenn die Vorhersage vor der Quantisierung ausgeführt
wird. Die DCT-Transformationskoeffizienten werden dann dem
Entropiekodierungsvorgang unterworfen. Der Entropiekodierungsvorgang ist identisch mit demjenigen der Bild-
Vorhersage-Kodierungsvorrichtung und es wird geprüft, welcher vorhergesagte Block als
ein Bit niedriger Ordnung verwendet wird.
-
Der Vorhersageblock, welcher zur Verwendung als Bit niedriger Ordnung ausgewählt ist,
und der ausgewählte Vorhersageblock werden in einer entropiekodierungsweise
zusammen mit einem Anzeigebit zum Informieren der Bild-Vorhersage-
Dekodierungsvorrichtung über die Vorhersage-Bestimmung kodiert.
-
Wie in der Bild-Vorhersage-Dekodierungsvorrichtung wird der durch das Anzeigebit
vorhergesagte Block dekodiert. Das heißt, die für einen Block vorhergesagten DCT-
Transformationskoeffizienten werden in einer Invers-Entropie-Dekodierungsweise
dekodiert und danach werden die DCT-Transformationskoeffizienten des Blockes erhalten
durch Addieren eines Bezugs-DCT-Transformationskoeffizienten des benachbarten
Blockes, welcher dekodiert wird, bevor er durch das Anzeigebit für die oben dekodierten
DCT-Transformationskoeffizienten ausgedrückt wird. Schließlich wird ein Invers-DCT-
Transformationsvorgang angewendet auf die wiederhergestellten
DCT-Transformationskoeffizienten jedes Blockes, so dass dekodierte Bilddaten erhalten werden.
-
Die vorliegende, bevorzugte Ausführungsform der vorliegenden Erfindung gibt eine
Bildkodierungsvorrichtung an, die in der Lage ist, die Redundanz der in dem DCT-
Transformationsbereich existierenden anderen Arten über den benachbarten Block
zusätzlich zu der räumlichen Redundanz zu verringern, welche normalerweise durch eine
Transformation wie eine DCT-Transformation beseitigt wird, die Redundanz, welche
zwischen Vollbildern durch Bewegungserfassung und Kompensationen beseitigt wird, und
die statistische Redundanz, welche durch die Entropiekodierung in Quantisierungs-
Transformationskoeffizienten innerhalb eines Blockes beseitigt wird.
-
Wie aus Fig. 14 erkennbar ist, welche eine bekannte Bild-Vorhersage-
Kodierungsvorrichtung zeigt, ist die Bild-Vorhersage-Kodierungsvorrichtung, welche allgemein
zur Kodierung im Stand der Technik verwendet wird (z. B. MPEG) ausgestattet
mit einer Block-Abtasteinheit 1001, einer DCT-Transformationseinheit 1004, einer
Quantisierungseinheit 1005 und einer Entropiekodierungseinheit 1006.
-
Gemäß der Intra-Vollbild-Kodierung (Kodierung innerhalb eines Vollbildes) wird ein
eingegebenes Bildsignal einem Block-Abtastvorgang unterworfen. Als Nächstes wird ein
DCT-Transformationsvorgang direkt ausgeführt. Daran anschließend werden ein
Quantisierungsvorgang und ein Entropiekodierungsvorgang ausgeführt. Andererseits werden
gemäß der Intra-Vollbild-Kodierung (Vorhersage-Vollbild-Kodierung) die Bilddaten des
zum gegenwärtigen Zeitpunkt zu verarbeitenden objektiven Vollbildes der Verarbeitung
einer Bewegungs-Erfassungseinheit 1002 und einer Bewegungs-Kompensationseinheit
1003 nach einem Block-Abtastvorgang und weiterhin einem DCT-
Transformationsvorgang unterworfen. Weiterhin werden ein Quantisierungsvorgang und
ein Entropiekodierungsvorgang ausgeführt.
-
In diesem Falle ist der quantisierte Wert in einer Entropiekodierungsweise in der
Entropiekodierungseinheit 1006 dekodiert und Kodedaten werden ausgegeben. Die
Entropiekodierung ist ein System zur beträchtlichen Verringerung der Gesamtmenge von Kodes,
um einen Kodierungsansatz der Entropie auszuführen, oder die durchschnittliche
Informationsmenge durch Zuordnen eines kurzen Kodes zu einem Wert, der häufig auftritt,
und Zuordnen eines langen Kodes zu einem Wert, der selten auftritt. Dies ist eine
reversible Kodierung. Eine Vielzahl von Systemen wird für die Entropiekodierung
vorgechlagen und eine Huifman-Kodierung wird in einem Basis-System verwendet. Das Huffman-
Kodierungsverfahren unterscheidet sich abhängig von einem quantisierten DC-
Koeffizientenwert und einem AC-Koeffizientenwert. Das heißt, der DC-Koeffizient zeigt
einen Mittelwert des 8 · 8 Bildpunktblocks, der Mittelwert der benachbarten Blöcke hat
jedoch häufig einen vergleichbaren Wert in einem allgemeinen Bild. Daher wird die
Entrapiekodierung ausgeführt nach der Erfassung von Unterschieden zwischen einem Block
und dem vorausgehenden Block. Bei dieser Anordnung konzentrieren sich Werte in der
Umgebung von Null und daher wird die Entropiekodierung effektiv. Die AC-Koeffizienten
werden zum Beispiel einer Zickzack-Abtastung unterworfen, um dadurch
zweidimensionale Daten in eindimensionale Daten zu transformieren. Weiterhin ergeben AC-
Koeffizienten mit insbesondere hochfrequenten Komponenten häufig Null und daher wird
die Entropiekodierung ausgeführt durch eine Kombination des AC-Koeffizientenwert mit
einem anderen Wert als Null und der Anzahl (Lauflängen) von Nullen davor.
-
Eine Häufigkeits-Steuerung 1007 gibt das für den vorher kodierten Block verwendete Bit
zurück, steuert die Verarbeitung in der Quantisierungseinheit 1005 und passt die Kode-
Bitgeschwindigkeit an. In diesem Fall steuert die Häufigkeits-Steuerung 1007 die Kode-
Bitgeschwindigkeit, um auf der Basis von kodierten Einheiteneigenschaften kodierten
Objektdaten verschiedene Beträge von Bits zuzuordnen, und verwendbare Bits ebenso
wie für jedes Vollbild und jeden kodierten Block. Der Invers-Quantisierungsvorgang und
der Invers-DCT-Transformationsvorgang werden in den Einheiten 1008 und 1009
ausgeführt, welche als Teile des örtlichen Dekodierers dienen. Die von dem örtlichen
Dekodierer dekodierten Bilddaten werden in einem örtlichen Dekodierer-Vollbild-Speicher 1010
gespeichert und für einen Bewegungserfassungsvorgang verwendet. Eine Einheit 1011
ist ein Referenz-Vollbild-Speicher zum Speichern des vorausgehenden ursprünglichen
Vollbilds zur Bewegungserfassung. Schließlich wird ein Bitstrom von der
Entropiekodierungseinheit 1006 ausgegeben und zu der Bild-Vorhersage-Dekodierungsvorrichtung an
der Empfangsseite oder der Wiedergabeseite gesendet.
-
Fig. 15 ist eine vereinfachte Ansicht eines Bildes zum Erläutern eines adaptiven DCT-
Transformationsbereichs für eine Intra-Vollbild-Vorhersage.
-
Fig. 15 zeigt eine Anordnung, in welcher vier 8 · 8 DCT-Transformationsblöcke einen
Makroblock in dem DCT-Transformationsbereich bilden. In diesem Fall bezeichnet B0
einen gegenwärtigen Block mit der momentanen Zeitsteuerung mit 8 · 8 IDCT-
Transformationskoeffizienten. B2 bezeichnet einen an der oberen Seite benachbart
angeordneten, bereits dekodierten Block. B1 und B3 bezeichnen bereits dekodierte zwei
Blöcke, angeordnet diagonal benachbart an der oberen Seite. B4 bezeichnet den an der
linken Seite benachbart angeordneten, vorausgehenden Block. Fig. 15 zeigt die
Tatsache, dass der Block mit DCT-Transformationskoeffizienten aus der Mehrzahl der
benachbarten dekodierten Blöcke mit den 8 · 8 DCT-Transformationskoeffizienten
vorhergesagt werden kann.
-
Dabei muss die Tatsache beachtet werden, dass der für die Vorhersage des
gegenwärtigen Blockes verwendete Block stets verschieden ist. Daher wird eine Bestimmung auf
der Basis einer Least-Bit-use-Rule (Regel der wenigsten verwendeten Bits) ausgeführt
und die Bestimmung wird adaptiv zu verschiedenen Blöcken an der Seite der Bild-
Vorhersage-Dekodierungsvorrichtung gegeben. Die Bild-Vorhersage-
Dekodierungsvorrichtung wird durch ein Anzeigebit über die Bestimmung informiert. In
diesem Fall wird die Least-Bit-use-Rule zum Bestimmen des Vorhersageverfahrens aus
einer Mehrzahl verschiedener Vorhersageverfahren verwendet. Nachdem jedes
Vorhersageverfahren angewendet ist, wird die Menge der Bits zur Verwendung bei der
Kodierung des Blockes gezählt. Als Ergebnis wird das Verfahren, welches die geringste
Bitmenge verwirklicht, als das zu verwendende Vorhersageverfahren ausgewählt.
-
Es ist anzumerken, dass die DCT-Transformationsbereichsvorhersage nach oder vor der
Quantisierung ausgeführt werden kann.
Fünfte bevorzugte Ausführungsform -
-
Fig. 16 ist ein Blockschaltbild, welches eine Anordnung einer Bild-Vorhersage-
Kodierungsvorrichtung gemäß einer fünften bevorzugten Ausführungsform der
vorliegenden Erfindung zeigt. Die Fig. 16 gezeigte Bild-Vorhersage-Kodierungsvorrichtung ist
dadurch gekennzeichnet, dass der DCT-Transformationsbereichs-Vorhersagevorgang
nach dem Quantisierungsvorgang ausgeführt wird.
-
In Fig. 16 wird ein eingegebenes Bildsignal zuerst einer Blockabtastung durch eine
Blockabtasteinheit 1012 unterworfen. Dann werden gemäß der Intra-Vollbild-Kodierung
die abgetasteten Block-Bilddaten in eine DCT-Transformationseinheit 1014 durch einen
Addierer 1013 eingegeben, ohne dem Vorgang in dem Addierer 1013 zu unterliegen.
Andererseits subtrahiert der Addierer 1013 gemäß der Vorhersage-Vollbildkodierung von
einer Bewegungserfassungs- und Kompensationseinheit 1025 ausgegebene
Bewegungserfassungs-Bilddaten von den abgetasteten Block-Bilddaten und gibt die Bilddaten des
Subtraktionsergebnis zu der DCT-Transformationseinheit 1014 aus. Dann wird der DCT-
Transformationsvorgang in der Einheit 1014 ausgeführt und danach wird der
Quantisierungsvorgang in einer Einheit 1015 ausgeführt.
-
Der DCT-Transformationsbereichs-Vorhersagevorgang wird ausgeführt in einer Einheit
1017, während das Bezugszeichen 1018 einen Block-Speicher zum Speichern eines
vorher dekodierten Blockes zur Vorhersage darin bezeichnet. Ein Addierer 1016 subtrahiert
den dekodierten, benachbarten Block, ausgegeben von der DCT-
Transformationsbereichs-Vorhersageeinheit 1017 von dem DCT-Transformationsblock
zum gegenwärtigen Zeitpunkt, ausgegeben von der Quantisierungseinheit 1015. Die
Bestimmung des kodierten, benachbarten Blockes wird in der DCT-
Transformationsbereichs-Vorhersageeinheit 1017 ausgeführt. Schließlich wird der
vorhergesagte DCT-Transformationsblock einem Entropie-VLC-Kodierungsvorgang durch
eine Einheit 1020 unterwarfen und die kodierten Bits werden in einen Bitstrom
geschrieben.
-
Ein Addierer 1019 stellt den DCT-Transformationsblock zum gegenwärtigen Zeitpunkt
durch Hinzufügen des für die Vorhersage für den Vorhersage-Block verwendeten
vorausgehenden benachbarten Blocks durch addieren wieder her. Dann wird der
wiederhergestellte DCT-Transformationsblock einem Invers-Quantisierungsvorgang
unterworfen und einem Invers-DCT-Transformationsvorgang in den Einheiten 1021 und 1022. Die
Bilddaten, welche örtlichen dekodiert werden und zu dem von der Invers-DCT-
Transformationseinheit 1022 ausgegebenen Block gehören, werden in einen Addierer
1023 eingegeben. Der Addierer 1023 erhält wiederhergestellte Bilddaten durch Addieren
der Bilddaten des vorangegangenen Vollbilds zu den Bilddaten des wiederhergestellte
Blockes und die Daten werden in einem Vollbild-Speicher 1024 gespeichert. Ein
Bewegungserfassungs- und Kompensationsvorgang wird in einer Einheit 1025 ausgeführt.
Der Vollbild-Speicher 1024 wird zum Speichern des vorherigen Vollbilds für den
Bewegungserfassungs- und Kompensationsvorgang verwendet.
Sechste bevorzugte Ausführungsform
-
Fig. 17 ist ein Blockschaltbild, dass die Anordnung einer Bild-Vorhersage-
Kodierungsvorrichtung gemäß einer sechsten bevorzugten Ausführungsform der
vorliegenden Erfindung zeigt. Die Bild-Vorhersage-Kodierungsvorrichtung in Fig. 17 ist
dadurch gekennzeichnet, dass der DCT-Transformationsbereichs-Vorhersagevorgang vor
dem Quantisierungsvorgang ausgeführt wird. Ein eingegebenes Bildsignal wird einem
Block-Abtastvorgang in einer Einheit 1026 unterworfen. Dann führt ein Addierer 1027
einen Subtraktionsvorgang zur Vorhersage-Vollbild-Kodierung aus und die Bilddaten des
Subtraktionsergebnis werden zu einer Entropie-VLC-Kodierungseinheit 1034 und einer
Invers-Quantisierungseinheit 1033 durch eine DCT-Transformationseinheit 1028, einen
Addierer 1029 und eine Quantisierungseinheit 1030 ausgegeben.
-
Ein Blockspeicher 1032 speichert darin die Bilddaten des vorausgehenden Blockes für
den DCT-Transformationsbereichs-Vorhersagevorgang einer Einheit 1031. Die Bilddaten
des DCT-Transformationsblockes, die zum gegenwärtigen Zeitpunkt von der DCT-
Transformationseinheit 1028 ausgegeben werden, werden gemäß der Least-Bit-use-
Rule durch den Addierer 1029 von dem durch die DCT-Transformationsbereichs-
Vorhersageeinheit 1031 ausgewählten, vorausgehenden DCT-Transformationsblock
subtrahiert. Die Bilddaten des DCT-Transformationsblocks des Subtraktionsergebnis
werden durch die Quantisierungseinheit 1030 quantisiert und danach zu der Invers-
Quantisierungseinheit 1033 und der Entropie-VLC-Kodierungseinheit 1034 ausgegeben.
Die Invers-Quantisierungseinheit 1033 stellt die eingegebenen quantisierten Bilddaten
des DCT-Transformationsblockes durch inverse Quantisierung wieder her und gibt die
resultierenden Daten zu einem Addierer 1055 aus. Der Addierer 1055 addiert die
Bilddaten des wiederhergestellten DCT-Transformationsblockes zu den Bilddaten des
vorausgehenden DCT-Transformationsblockes von der DCT-Transformationsbereichs-
Vorhersageeinheit 1031, speichert die Bilddaten des Additionsergebnis des
vorausgehenden Blockes in dem Blockspeicher 1032 und gibt die Daten zu einer Invers-DCT-
Transformationseinheit 1036 aus.
-
Die Invers-DCT-Transformationseinheit 1036 führt einen inversen DCT-
Transformationsvorgang mit Bilddaten des von einem Addierer 1035 eingegebenen,
vorausgehenden Blockes aus und gibt die nach dem Transformatkonsvorgang erhaltenen,
wiederhergestellten Bilddaten zu einem Addierer 1037 aus. Der Addierer 1037 addiert
die von der Bewegungserfassungs- und Kompensationseinheit 1025 ausgegebenen
Bilddaten des vorausgehenden Vollbildes zu den von der
Invers-DCT-Transfermationseinheit 1036 ausgegebenen, wiederhergestellten Bilddaten, speichert die
Bilddaten des Additionsergebnis vorübergehend in einem Vollbild-Speicher 1038 und gibt
danach die Daten zu der Bewegungserfassungs-und Kompensationseinheit 1025 aus.
B1. Allgemeine Beschreibung der Modus-Bestimmung
-
Fig. 18 ist ein Blockschaltbild, welches eine Anordnung von DCT-
Transformationsbereichs-Vorhersageschaltungen 1017 und 1031
in Fig. 16 und Fig.
17 zeigt.
-
In Fig. 18 bezeichnet das Bezugszeichen 1040 einen Blockspeicher, um darin die
Bilddaten des vorausgehenden, benachbarten Blocks zur Vorhersage zu speichern. Der zu
verarbeitende gegenwärtige Block zum gegenwärtigen Zeitpunkt wird in eine Einheit
1041 eingegeben und die Einheit 1041 subtrahiert die eingegebenen Bilddaten des
gegenwärtigen Blocks von dem vorausgehenden, benachbarten DCT-
Transformationsblock, gespeichert in dem Blockspeicher 1040, um dadurch die
Bilddaten der Vorhersage-DCT-Transformationsblöcke der folgenden vier Arten zu erhalten:
-
(a) Keine-Vorhersage-Block, bezeichnet mit 1042,
-
(b) Oberer-Vorhersage-Block, bezeichnet mit 1043,
-
(c) Linker-Vorhersage-Block, bezeichnet mit 1044, und
-
(d) Anderer-Vorhersage-Block, bezeichnet mit 1045.
-
In diese im Fall werden die obigen vier Arten von Blöcken durch zwei Bits ausgedrückt.
Das heißt, zum Beispiel drückt "00" den Keine-Vorhersage-Block aus, "01" drückt den
Oberer-/orhersage-Block aus, "10" drückt den Linker-Vorhersage-Block aus und "11"
drückt den Anderer-Vorhersage-Block aus.
-
Der Keine-Vorhersage-Block sind die Bilddaten des DCT-Transformationsblockes selbst
zum gegenwärtigen Zeitpunkt in Abwesenheit einer Vorhersage. Der Oberer-
Vorhersage-Block repräsentiert die Bilddaten eines Vorhersageblocks, der in einem Fall
erhalten wird, in welchem der für die Vorhersage verwendete Block der obere,
benachbarte DCT-Transformationsblock B2 ist. Der Linker-Vorhersage-Block repräsentiert die
Bilddaten eines Vorhersageblocks, der in einem Fall erhalten wird, in welchem der für die
Vorhersage verwendete Block der linke benachbarte DCT-Transformationsblock B4 ist.
Der Anderer-Vorhersage-Block repräsentiert die Bilddaten eines Vorhersageblocks, der
in einem Fall erhalten wird, in welchem die Vorhersage nur mit den DC-Koeffizienten
bewirkt wird. In dem Fall des Anderer-Vorhersage-Blockes sind zwei Arten von
Vorhersageverfahren vorhanden. Das heißt, eine obere DC-Vorhersage (1046) repräsentiert die
Bilddaten eines in einem Fall erhaltenen Vorhersageblocks, in welchem eine Vorhersage
nur anhand des DC-Koeffizienten basierend auf dem oberen benachbarten DCT-
Transformationsblock B2 ausgeführt wird. Eine linke DC-Vorhersage (1047) repräsentiert
die Bilddaten eines Vorhersageblocks, der in einem Fall erhalten wird, in welchem eine
Vorhersage nur anhand des DC-Koeffizienten basierend auf dem linken benachbarten
DCT-Transformationsblock B4 ausgeführt wird. In diesen zwei Fällen wird ein
zusätzliches Bit für die Bezeichnung benötigt. Das Bit wird derart verwendet, dass z. B. "0" die
obere DC-Vorhersage (1046) ausdrückt und "1" die linke DC-Vorhersage (1047)
ausdrückt.
-
Es ist möglich, eine Vorhersage basierend auf den diagonal benachbarten Blöcken B1
und B3 auszuführen. Das Vorhersageergebnis ist jedoch nicht so gut, wie das anhand
der oberhalb oder an der linken Seite angeordneten Blöcke ausgeführte und daher
werden sie in der vorliegenden Erfindung nicht verwendet.
-
Sämtliche vorhergesagten Blöcke werden untersucht und geprüft, indem sie dem
gegenwärtigen Entropiekodierungsvorgang in einer Einheit 1048 unterworfen werden. Die
für die verschiedenen vorhergesagten Blöcke verwendeten Bits werden einem Vergleich
in einer Einheit 1049 unterworfen. Schließlich bestimmt eine Einheit 1050 den auf der
Basis der Least-Bit-use-Rule vorhergesagten DCT-Transformationsblock und gibt den
vorhergesagten DCT-Transformationsblock zusammen mit einem Anzeigebit aus. Das
heißt, der vorhergesagte DCT-Transformationsblock mit der kleinsten Anzahl von Bits
wird ausgewählt.
B2. Ausführung der Modus-Bestimmung
-
Fig. 19 ist eine vereinfachte Ansicht eines Bildes, welches ein Beispiel eines DC/AC-
Vorhersage-Kodierungsverfahrens der DCT-Transformationsbereichs-
Vorhersageschaltung in Fig. 18 zeigt.
-
In Fig. 19 ist eine Teilmenge der vorher bestimmten DC/AC-vorhergesagten Bilddaten
zur aktuellen Verwendung gezeigt. Ein gegenwärtiger Block 1101 ist ein 8 · 8 Block,
angeordnet an der oberen linken Seite eines gegenwärtigen Makroblocks, während ein
gegenwärtiger Block 1102 ein 8 · 8 Block ist, angeordnet an der oberen rechten Seite
des gegenwärtigen Makroblocks. Die Bezugszeichen A und B bezeichnen 8 · 8 Blöcke
benachbart zu dem gegenwärtigen Block 1101. Die hervorgehobene obere Reihe und
linke Spalte des gegenwärtigen Blocks 1101 werden aus den gleichen Positionen der
benachbarten Blöcke A und B vorhergesagt. Das heißt, die obere Reihe des
gegenwärtigen Blocks 1101 wird aus der oberen Reihe des Blocks A, angeordnet an der oberen
Seite von ihm, vorhergesagt und die linke Spalte des gegenwärtigen Blocks 1101 wird
aus der linken Spalte des Blockes B, angeordnet an der linken Seite von ihm,
vorhergesagt. Gemäß einem vergleichbaren Verfahren wird der gegenwärtige Block 1102
vorhergesagt aus einem Block D, angeordnet an der Oberseite von ihm, und dem
gegenwärtigen Block 1101, angeordnet an der linken Seite von ihm.
-
Es wird angenommen das C(u, v) der zu kodierende Block ist, E1(u, v) ist ein
Vorhersagefehler in dem Fall eines Modus i und A(u, v) und/oder B(u, v) wird erhalten
durch Subtrahieren eines Vorhersagewertes von jedem Block. In einer tatsächlichen
Implementierung werden nur die folgenden drei Modi verwendet, welche am häufigsten
auftreten, wie in der oben erwähnten Sektion B1 beschrieben.
-
(a) Modus 0: nur DC-Vorhersage
-
E&sub0;(0, 0) = C(0, 0) - (A(0, 0) + B(0, 0))12
-
E&sub0;(u, v) = C(u, v),
-
u ≠ 0; v ≠ 0; u = 0, ...,7; v = 0, ...,7 (1)
-
(b) Modus 1: DC/AC-Vorhersage von dem an der Oberseite angeordneten Block
-
E&sub1;(0, v) = C(0, v) - A(0, v), v = 0, ..., 7,
-
E&sub1;(u, v) = C(u, v),
-
u = 1, ...,7; v = 0, ...,7 (2)
-
(c) Modus 2: DC/AC-Vorhersage von dem an der linken Seite angeordneten Block
-
E&sub2;(u, 0) C(u, 0) - B(u, 0), u = 0, ..., 7,
-
E&sub2;(u, v) = C(u, v),
-
u = 0, ...,7; v = 1, ...,7 (3)
-
Die Modus-Auswahl wird ausgeführt durch Berechnen der Summe SADmodei der
Absolutwerte von Fehlern, die für vier Luminanzsignalblöcke in einem Makroblock
vorhergesagt werden, und Auswählen des Modus mit dem minimalen Wert.
-
i = 0, ..., 2; b = 0, ...,3; u,v = 1, ...,7 (4)
-
Die Modus-Bestimmung kann abhängig von einer Differenz ausgeführt werden, welche
auf eine variierte Kodierungs-Bitrate auf einer Block-Basis und einer Makroblock-Basis
zielt. Der Modus wird mit den längenveränderlichen Kodes der folgenden Tabelle 1
kodiert.
Tabelle 1: VLC-Tabelle für DC/AC-Modus
-
Beim Ausführen einer DC/AC-Vorhersage nach der Quantisierung hat der
vorausgehende horizontal benachbarte Block oder der vertikal benachbarte Block allgemein einen
veränderten Quantisierungsschritt zu verwenden und daher sind verschiedene Arten von
Gewichtungsfaktoren zum Skalieren der quantisierten DCT-Transformationskoeffizienten
erforderlich.
-
Es wird angenommen, dass QacA der quantisierte DCT-Transformationskoeffizient von
Block A ist (siehe Fig. 19) und QacB ist der quantisierte DCT-
Transformationskoeffizient für den Block B (siehe Fig. 19). Unter der Annahme, dass
QstepA der zur Quantisierung des Blockes A verwendete Quantisierungsschritt ist, ist
dann QstepB der zur Quantisierung des Blocks B zu verwendende Quantisierungsschritt
und QstepC ist der zur Quantisierung des gegenwärtigen Blocks C zu verwendende
Quantisierungsschritt. Die Skalierungsgleichungen dafür sind wie folgt:
-
Q'acA = (QacA · QstepA)/QstepC (5)
-
Q'acB = (QacB · QstepB)/QstepC (6)
-
wobei Q'acA der DCT-Transformationskoeffizient von Block A ist, der zum Vorhersagen
der oberen Reihe des gegenwärtigen Blocks C zu verwenden ist, während Q'acB der
DCT-Transformationskoeffizient von dem Block B ist, der zum Vorhersagen der linken
Spalte des gegenwärtigen Blocks C zu verwenden ist.
Siebte bevorzugte Ausführungsform
-
Fig. 20 ist ein Blockschaltbild, das eine Anordnung einer Bild-Vorhersage-
Dekodierungsvorrichtung gemäß einer siebten bevorzugten Ausführungsform der
vorliegenden Erfindung zeigt.
-
In Fig. 20 wird der Bitstrom von der Bild-Vorhersage-Kodierungsvorrichtung in eine
Entropie-VLD-Dekodierungseinheit 1051 eingegeben und in einer längenveränderlichen
Dekodierungsweise dekodiert. Die dekodierten Bilddaten werden zu den Bilddaten des
vorausgehenden, benachbarten DCT-Transformationsblockes von einer DCT-
Transformationsbereichs-Vorhersageeinheit 1053 addiert um dadurch die Bilddaten des
DCT-Transformationsblockes wiederherzustellen. Der vorhergehende, benachbarte
DCT-Transformationsblock wird durch ein Anzeigebit identifiziert, das dem Bitstrom
entnommen wird und zur Vorhersage in der Einheit 1053 verwendet wird. Das
Bezugszeichen 1054 bezeichnet einen Block-Speicher zum Speichern des benachbarten DCT-
Transformationsblockes, der zur Vorhersage zu verwenden ist, darin. Der von einem
Addierer 1052 erhaltene, wiederhergestellte DCT-Transformationsblock wird zu einer
Invers-DCT-Transformationseinheit 1055 ausgegeben. Die Invers-DCT-
Transformationseinheit 1055 führt einen inversen DCT-Transformationsvorgang mit dem
eingegebenen DCT-Transformationsblock aus, um Bilddaten der wiederhergestellten
DCT-Transformationskoeffizienten zu erzeugen und die Daten zu einem Addierer 1056
auszugeben. Der Addierer 1056 addiert die wiederhergestellten Bilddaten von der
Invers-DCT-Transformationseinheit 1055 zu den Bilddaten des vorausgehenden Volllbildes
von einer Bewegungserfassungs- und Kompensationseinheit 1057, um dadurch
Bilddaten zu erzeugen, welche einer Bewegungserfassung, Kompensation und Dekodierung
und Ausgabe der Daten unterzogen wurden. Die dekodierten Bilddaten werden
vorübergehend in einem Vollbild-Speicher zum Speichern von Bilddaten des vorausgehenden
Vollbildes für die Bewegungserfassung und Kompensation darin gespeichert und danach
zu der Bewegungserfassungs- und Kompensationseinheit 1057 ausgegeben. Die
Bewegungserfassungs- und Kompensationseinheit 1057 führt den Bewegungserfassungs- und
Kompensationsvorgang mit den eingegebenen Bilddaten aus.
-
Weiterhin werden die von dem Addierer 1056 ausgegebenen, dekodierten Bilddaten
entsprechend den Vorgängen der Blockabtasteinheiten 1012 und 1026 in Fig. 16 und
Fig. 17 invers wiederhergestellt, so dass die ursprünglichen Bilddaten wiederhergestellt
sind.
-
Weiterhin bezeichnet das Bezugszeichen 1059 eine Invers-Quantisierungseinheit. Wenn
der DCT-Transformationsbereichs-Vorhersagevorgang vor dem Quantisierungsvorgang
ausgeführt wird, wie in Fig. 17 gezeigt, wird die Invers-Quantisierungseinheit 1059 an
einer in Fig. 20 gezeigten Position 1059a eingefügt. Wenn der DCT-
Transformationsbereichs-Vorhersagevorgang nach dem Quantisierungsvorgang
ausgeführt wird, wie in Fig. 16 gezeigt, wird die Invers-Quantisierungseinheit 1059 an einer in
Fig. 20 gezeigten Position 1059b eingefügt.
-
Fig. 21 ist ein Flussdiagramm, welches ein DC/AC-Vorhersage-Dekodierungsverfahren
der Bild-Vorhersage-Dekodierungsvorrichtung in Fig. 20 zeigt. Das heißt, Fig. 21 zeigt
eine Einzelheit der Bitstrom-Dekodierung zum Erhalten eines DC/AC-Vorhersagemodus
und zum Wiederherstellen von DCT-Transformationskoeffizienten aus einem
benachbarten DC/AC-Vorhersagewert.
-
Zuerst wird in Schritt 1059 das Anzeigebit aus dem eingegebenen Bitstrom dekodiert
und das Flag des Anzeigebits wird in Schritt 1060 geprüft. Wenn es "0" ist, wird ein DC-
Wert aus dem Mittelwert der Bilddaten des an der oberen Seite angeordneten Blocks
und des an der linken Seite angeordneten Blocks in Schritt 1061 berechnet und der
Programmablauf geht weiter zu Schritt 1063. Wenn die Antwort in Schritt 1060 NEIN ist,
geht der Programmablauf weiter zu Schritt 1062. Wenn das in Schritt 1062 geprüfte
Bezeichner-Flag "10" ist, werden die Bilddaten der linken Spalte des an der linken Seite
angeordneten Blocks in Schritt 1063 extrahiert und der Programmablauf geht weiter zu
Schritt 1065. Wenn die Antwort in Schritt 1062 NEIN ist, geht der Programmablauf weiter
zu Schritt 1064. Wenn das in Schritt 1064 geprüfte Anzeige-Flag "11" ist, werden die
Bilddaten der oberen Reihe in dem an der Oberseite angeordneten Block in Schritt 1065
extrahiert und der Programmablauf geht weiter zu Schritt 1066. Schließlich werden in
Schritt 1066 die in den Schritten 1061, 1063 oder 1065 erhaltenen oder extrahierten
DCT-Transformationskoeffizienten addiert zu den entsprechenden DCT-
Transformationskoeffizienten des gegenwärtigen Blocks.
-
Weiterhin wird ein Modifikations-Beispiel der vorliegenden Gruppe bevorzugter
Ausführungsformen unten beschrieben.
-
(a) Die oben erwähnten Blockabtasteinheiten 1012 und 1026 können einen
Verschachtelungsvorgang zum alternierenden Einfügen von Bildpunkten enthalten, so dass auch die
Bildpunkte in einer zweidimensionalen Matrix in der Gruppe von vier Blöcken
ungeradzahlig nummerierte Bildpunkte umfassen, die in den ungeradzahlig nummerierten Reihen
in dem ersten Block angeordnet sind, die Bildpunkte umfassen geradzahlig nummerierte
Bildpunkte, die in den ungeradzahlig nummerierten Reihen in dem zweiten Block
angeordnet sind, die Bildpunkte umfassen ungeradzahlig nummerierte Bildpunkte, die in den
geradzahlig nummerierten Reihen in dem dritten Block angeordnet sind und die
Bildpunkte umfassen geradzahlig nummerierte Bildpunkte, die in den geradzahlig
nummerierten Reihen in dem vierten Block angeordnet sind.
-
(b) Es ist akzeptabel, den oben erwähnten Vorhersageblock aus den Blöcken
auszuwählen, welche vorher wiederhergestellt wurden, gespeichert in dem oben erwähnten
Blockspeicher und benachbart zu dem kodierten, gegenwärtigen Block angeordnet, und
sämtliche Transformationskoeffizienten in dem Block auszuwählen.
-
(c) Es ist akzeptabel, den oben erwähnten Vorhersageblock aus den Blöcken
auszuwählen, welche vorher wiederhergestellt wurden, gespeichert in dem oben erwähnten
Blockspeicher und benachbart zu dem kodierten, gegenwärtigen Block angeordnet, und eine
vorbestimmte Teilmenge als die Transformationskoeffizienten des Blocks auszuwählen.
-
(d) Es ist akzeptabel, den oben erwähnten Vorhersageblock aus den Blöcken
auszuwählen, welche vorher wiederhergestellt wurden, gespeichert in dem oben erwähnten
Blockspeicher und oberhalb oder links benachbart zu dem kodierten, gegenwärtigen Block
angeordnet, nur die Transformationskoeffizienten der oberen Reihe des Blockes und der
äußeren linken Spalte des Blockes zu verwenden und die verbleibenden
Transformationskoeffizienten auf Null zu setzen.
-
(e) Es ist akzeptabel, den oben erwähnten Vorhersageblock aus den Blöcken
auszuwählen, welche vorher wiederhergestellt wurden, gespeichert in dem oben erwähnten
Blockspeicher und angeordnet in der Nähe des kodierten, gegenwärtigen Blocks und
gewichten der Transformationskoeffizienten der Blöcke durch unterschiedliche
Gewichtungsfunktionen.
-
(f) Es ist akzeptabel, den oben erwähnten Vorhersageblock aus den Blöcken
auszuwählen, welche vorher wiederhergestellt wurden, gespeichert in dem oben erwähnten
Blockspeicher und angeordnet in der Nähe des kodierten, gegenwärtigen Blocks, und
ausführen einer Transformationsberechnung mit den Transformationskoeffizienten der Blöcke.
-
(g) Es ist akzeptabel, den oben erwähnten Vorhersageblock zu erhalten durch
gewichtete Mittellwertbildung einer Mehrzahl von Blöcken, welche vorher wiederhergestellt
wurden, gespeichert in dem oben erwähnten Blockspeicher und angeordnet in der Nähe des
kodierten, gegenwärtigen Blocks.
-
(h) Es ist akzeptabel, einen inversen Verschachtelungsvorgang der oben erwähnten
dekodierten Bilddaten beim Wiederherstellen der ursprünglichen Bilddaten auszuführen
durch Bilden von Bildpunkten in einer zweidimensionalen Matrix aus einer Mehrzahl von
Gruppen, die jede vier verschachtelte Blöcke umfassen, basierend auf den dekodierten
Bilddaten, so dass die ungeradzahlig nummerierten Bildpunkte, die in ungeradzahlig
nummerierten Reihen angeordnet sind, sämtlich aus dem ersten Block erhalten werden,
geradzahlig nummerierte Bildpunkte, angeordnet in den ungeradzahlig nummerierten
Reihen aus dem zweiten Block erhalten werden, die ungeradzahlig nummerierten
Bildpunkte, angeordnet in den geradzahlig nummerierten Reihen, aus dem dritten Block
erhalten werden und geradzahlig nummerierte Bildpunkte, angeordnet in geradzahlig
nummerierten Reihen, aus dem vierten Block erhalten werden.
-
Wie oben beschrieben, kann gemäß der vorliegenden bevorzugten Gruppe von
Ausführungsformen der vorliegenden Erfindung eine große Wirkung für die Beseitigung oder
Verringerung der Redundanz in dem DCT-Transformationsbereich zwischen
benachbarten Blöcken erzeugt werden und demnach wird die zu verwendende Anzahl von Bits
verringert und erlaubt schließlich, dass die Kodierungs-Effizienz merklich verbessert
wird. In Fig. 18 als ein detailliertes Beispiel der Bild-Vorhersage-Kodierungsvorrichtung
wird der Vorhersagevorgang bevorzugt lediglich unter Verwendung des an der oberen
Seite oder der linken Seite angeordneten, benachbarten Blocks ausgeführt.
-
Hinsichtlich einer Folge mit QCIF können Bits bei einer Bitraten-Kodierung hoher
Ordnung mit 6,4% eingespart werden und bei einer Bitraten-Kodierung niedriger Ordnung
können 20% der Bits eingespart werden. Weiterhin können Bits von etwa 10% bei einer
anderen QCIF-Folge als der Testfolge eingespart werden, z. B. Akiyo, Mother, Daughter,
oder ähnliche. Weiterhin können mehr Bits bei CIF- und CCIR-Folgen eingespart
werden.
-
Wie oben beschrieben, können gemäß der zweiten, bevorzugten Gruppe von
Ausführungsformen der vorliegenden Erfindung eine neuartige Bild-Vorhersage-
Kodierungsvorrichtung und Bild-Vorhersage-Dekodierungsvorrichtung angegeben
werden, welche die Kodierungs-Effizienz zum gegenwärtigen Zeitpunkt verbessern. Die
vorliegenden Vorrichtungen benötigen keine komplizierten Einrichtungen zum Erhöhen der
Kodierungs-Effizienz und ihre Schaltungsanordnungen sind sehr einfach und (eicht
ausgebildet.
Dritte Gruppe bevorzugter Ausführungsformen
-
Die dritte: Gruppe bevorzugter Ausführungsformen beinhaltet eine achte bevorzugte
Ausführungsform.
-
Angesichts der Probleme im Stand der Technik hat der Erfinder eine weitere
Verbesserung der Redundanz durch Verringern nicht nur der Redundanz zwischen zwei Bildern
oder innerhalb eines Blocks in einem Bild sondern auch der Redundanz zwischen den
Blöcken in einem Bild und Verbessern des Blockabtastmusters berücksichtigt.
-
Es wurde entdeckt, dass DCT-Transformationskoeffizienten in benachbarten Blöcken
sich in vielen Fällen sehr ähneln, wenn sie an den gleichen Positionen angeordnet sind.
In einem Fall, in welchem die Eigenschaften der zwei Blöcke des ursprünglichen Bildes
einander sehr ähneln, oder wenn sie gleiche horizontale oder vertikale Linien, diagonale
Linien oder andere Bildmuster enthalten, kann die oben erwähnte Tatsache als korrekt
betrachtet werden. Vom Gesichtspunkt der Informationstheorie bedeutet identische
Information eine Redundanz.
-
Die in dem DCT-Transformationsbereich über einen Block vorhandene Redundanz kann
durch eine anpassbare Vorhersage des vorhergehenden Blocks beseitigt oder verringert
werden. Diese Tatsache führt zu dem Ergebnis, dass die VLC-Entropiekodierung eine
höhere Kodierungseffizienz für die kleinere Entropie eines Vorhersage-Fehlersiglnals
verwirklichen kann.
-
Gleichzeitig war bekannt, dass wichtige DCT-Transformationskoeffizienten in den in der
äußerst linken Spalte und der oberen Reihe angeordneten Transformationsblöcken in
den horizontalen und vertikalen Strukturen konzentriert sind. Daher kann die bevorzugte
Ausführungsform der vorliegenden Erfindung die oben erwähnten Probleme in der
Koeffizientenabtastung lösen, indem die Abtastung basierend auf einem Vorhersagemodus
anpassbar gemacht wird.
-
Die bevorzugte Ausführungsform der vorliegenden Erfindung gibt ein Verfahren zum
adaptiven Vorhersagen der DCT-Transformationskoeffizienten des gegenwärtigen
Blocks aus einem anderen Block an, mit daraus folgendem Beseitigen der Redundanz
zwischen benachbarten Blöcken. Vorhersage-Fehlerinformation kann weiter verringert
werden, indem ein Abtastverfahren an den Vorhersagemodus anpassbar gemacht wird,
in welchem die Entropie der DCT-Transformationskoeffizienten kleiner gemacht wird. Als
Ergebnis kann die Anzahl der Bits zum Kodieren der DCT-Transformationskoeffizienten
verringert werden.
-
Bei einem Versuch zum Lösen dieses Problems wird ein Verfahren zum Ausführen der
Bestimmung des Vorhersagemodus auf der Basis der durch jede Vorhersage und das
Abtastverfahren erzeugten tatsächlichen Bitrate erhalten.
-
Die bevorzugte Ausführungsform der vorliegenden Erfindung gibt ein Verfahren an zum
Vorhersagen der DCT-Transformationskoeffizienten des gegenwärtigen Blocks. Die
DCT-Transformation neigt dazu, einen identischen Wert oder eine identische Verteilung
der DCT-Transformationskoeffizienten für die Bilddaten eines identischen Blocks
auszugeben und daher behält der gegenwärtige Block normalerweise eine ausreichende
gegenseitige Beziehung zu dem DCT-Transformationskoeffizienten in den anderen
benachbarten Blöcken.
-
Eingegebene Bilddaten sind von einem Intra-Vollbild oder einem vorübergehend
vorhergesagten Vollbild. Zuerst werden die eingegebenen Bilddaten einem DCT-
Transformationsvorgang unterworfen, welcher normalerweise auf einem Block basiert.
-
Nachdem die DCT-Transformationskoeffizienten des gegenwärtigen Blocks erhalten
sind, kann die Vorhersage des DCT-Transformationsbereichs vor oder nach der
Quantisierung ausgeführt werden.
-
Die DCT-Transformationskoeffizienten in dem gegenwärtigen Block können
vorhergesagt werden aus dem vorausgehenden benachbarten Block, der diagonal (schräg) an
der oberen linken Seite angeordnet ist. Diese wurden zu diesem Zeitpunkt bereits
dekodiert, wie in Fig. 23 gezeigt. Für den vorhergesagten Block wird ein vorhergesagtes
Fehlersignal erzeugt durch Subtrahieren von einem oder mehreren DCT-
Transformationskoeffizienten des vorausgehenden, benachbarten Blocks von den DCT-
Transformationskoeffizienten an der gleichen Positionen des gegenwärtigen Blocks.
-
Ein Vorhersage-Fehlersignal in einem variierten Modus wird quantisiert, wenn eine
Vorhersage vor dem Quantisierungsvorgang ausgeführt würde. Das quantisierte
Vorhersage-Fehlersignal wird für eine Folge (Reihe) von Bilddaten abgetastet, bevor die
Entropiekodierung ausgeführt wird. Ein auf der Basis der Least-Bit-use-Rule vorhergesagter
Block, das heißt, der Vorhersageblock mit der geringsten Bitmenge, wird ausgewählt.
Kodierte Daten dieses Blocks werden zusammen mit einem zu verwendenden
Vorhersagemodus zu einer Bild-Vorhersage-Dekodierungsvorrichtung gesendet.
-
Die Bild-Vorhersage-Dekodierungsvorrichtung dekodiert den vorhergesagten Block
durch den verwendeten Vorhersagemodus und die kodierten Daten des Blocks.
Nachdem die kodierten Daten des Blocks der inversen Entropiedekodierung unterworfen sind,
wird der quantisierte Vorhersagefehler gemäß einem zu verwendenden Abtastverfahren
invers abgetastet. Wenn der Quantisierungsvorgang nach dem Vorhersagevorgang
ausgeführt wird, wird der Block invers quantisiert. Der wiederhergestellte Block kann
erhalten werden durch Addieren der DCT-Transformationskoeffizienten in dem vorab
dekodierten, benachbarten Block, bezeichnet durch den Vorhersagemodus für die
gegenwärtigen DCT-Transformationskoeffizienten. Wenn der Quantisierungsvorgang vor dem
Vorhersagevorgang ausgeführt wird, werden die wiederhergestellten Koeffizienten invers
quantisiert. Schließlich wird der inverse DCT-Transformationsvorgang auf die für jeden
Block wiederhergestellten DCT-Transformationskoeffizienten angewendet, so dass ein
dekodiertes Bild erhalten werden kann.
-
Die bevorzugte Ausführungsform der vorliegenden Erfindung gibt eine Bild-Vorhersage-
Kodierungsvorrichtung und Bild-Vorhersage-Dekodierungsvorrichtung an, welche die in
dem DCT-Transformationsbereich über den benachbarten Block vorhandene Redundanz
verringert.
Achte bevorzugte Ausführungsform
-
Fig. 24 ist ein Blockschaltbild, welches eine Anordnung einer Bild-Vorhersage-
Kodierungsvorrichtung gemäß einer achten bevorzugten Ausführungsform der
vorliegenden Erfindung zeigt. Im Vergleich mit der bekannten Bild-Vorhersage-
Kodierungsvorrichtung in Fig. 22 ist die Bild-Vorhersage-Kodierungsvorrichtung in Fig.
24 gekennzeichnet durch das Vorsehen von:
-
(a) einem Addierer 2035;
-
(b) einer H/V/Z-Abtasteinheit 2036;
-
(c) einem Addierer 2038;
-
(d) einem Blockspeicher 2.039; und
-
(e) einer DCT-Transformationsbereichs-Vorhersageeinheit 2040 mit einer
Quantisierungs-Skalierung.
-
Gemäß der Intra-Vollbild-Kodierung (Kodierung innerhalb eines Vollbildes) wird ein
eingegebenes Bildsignal einem Blockabtastvorgang in einer Einheit 2031 unterworfen und
danach direkt einem DCT-Transformationsvorgang in einer Einheit 2033 unterworfen.
Dann werden die von der DCT-Transformationseinheit 2033 ausgegebenen DCT-
Transformationskoeffizienten einem Quantisierungsvorgang in einer Einheit 2034
unterworfen. Andererseits subtrahiert gemäß der Zwischen-Bild-Kodierung oder Zwischen-
Bild-Kodierung (Vorhersage-Vollbild-Kodierung) nach einem Blockabtastvorgang ün der
Einheit 2031 ein Addierer 2032 von einer Bewegungserfassungs- und
Kompensationseinheit 2045 ausgegebene Bilddaten von den nach dem Blockabtastvorgang
erhaltenen Bilddaten, um dadurch Vorhersage-Fehlerdaten zu erhalten. Die Vorhersage-
Fehlerdaten werden dann durch die DCT-Transformationseinheit 2033 zu dem Addierer
2035 zum Ausführen des DCT-Transformationsvorganges und zu der
Quantisierungseinheit 2034 zum Ausführen des Quantisierungsvorganges ausgegeben. Die DCT-
Transformationskoeffizienten werden vorhergesagt durch einen DCT-
Transformationsbereichsvorgang in der Einheit 2040 und die vorhergesagten DCT-
Transformationskoeffizienten werden in den Addierer 2035 eingegeben. Der Addierer
2035 subtrahiert die von der DCT-Transformationsbereichs-Vorhersageeinheit 2040
erhaltenen DCT-Transformationskoeffizienten von den durch die Quantisierungseinheit
2034 erhaltenen DCT-Transformationskoeffizienten und gibt die DCT-
Transformationskoeffizienten des Vorhersagefehlers des Subtraktionsergebnis zu der
H/V/Z -Abtasteinheit 2036 und dem Addierer 2038 aus. Die HN/Z-Abtasteinheit 2036
führt adaptiv eine horizontale Abtastung, eine vertikale Abtastung oder eine Zickzack-
Abtastung der eingegebenen DCT-Transformationskoeffizienten abhängig von dem
ausgewählten Vorhersagemodus aus und gibt die nach dem Abtastvorgang erhaltenen DCT-
Transformationskoeffizienten zu der Entropie-VLC-Kodierungseinheit 2037 aus. Die
Entropie-VLC-Kodierungseinheit 2037 führt dann den Entropie-VLC-Kodierungsvorgang mit
den eingegebenen DCT-Transformationskoeffizienten aus und sendet den kodierten
Bitstrom zu der Bild-Vorhersage-Dekodierungsvorrichtung an der Empfangsseite oder
der Wiedergabeseite.
-
Der Addierer 2038 addiert die von dem Addierer 2035 ausgegebenen DCT-
Transformationskoeffizienten zu den vorhergesagten DCT-Transformationskoeffizienten
von der DCT-Transformationsbereichs-Vorhersageeinheit 2040, um dadurch
wiederhergestellte, quantisierte DCT-Transformationskoeffizientendaten zu erhalten. Die
quantisierten DCT-Transformationskoeffizientendaten werden zu dem Blockspeicher 2039 und
der Invers-Quantisierungseinheit 2041 ausgegeben.
-
In dem in der Bild-Vorhersage-Kodierungsvorrichtung vorgesehenen örtlichen
Dekodierer werden die wiederhergestellten DCT-Transformationskoeffizientendaten von dem
Addierer 2038 vorübergehend in dem Blockspeicher 2039 gespeichert, um darin die
Daten eines Blocks für die Ausführung der nächsten Vorhersage zu speichern, und da nach
zu der DCT-Transformationsbereichs-Vorhersageeinheit 2040 ausgegeben. Die Invers-
Quantisierungseinheit 2041 quantisiert die eingegebenen, quantisierten DCT-
Transformationskoeffizienten invers und gibt die resultierenden zu einer Invers-DCT-
Transformationseinheit 2042 aus. Dann führt die Invers-DCT-Transformationseinheit
2042 den inversen DCT-Transformationsvorgang mit den eingegebenen,
wiederhergestellten DCT-Transformationskoeffizienten aus, um dadurch die Bilddaten des Blocks zu
diesem Zeitpunkt wiederherzustellen und dann die resultierenden Daten zu einem
Addierer 2043 auszugeben.
-
Gemäß der Intra-Vollbild-Kodierung addiert der Addierer 2043 Bilddaten, welche einer
Bewegungserfassung und Kompensation in der Bewegungserfassungs- und
Kompensationseinheit 2045 unterlagen, zu den wiederhergestellten Bilddaten von der Invers-DCT-
Transformationseinheit 2042 zum Erzeugen örtlich dekodierter Bilddaten, um dadurch
örtlich dekodierte Bilddaten zu erhalten und die Daten werden in einem Vollbild-Speicher
2044 des örtlichen Dekodierers gespeichert. Es ist anzumerken, dass die Anordnung
und die Verarbeitungen des Addierers 2043, des Vollbild-Speichers 2044 und der
Bewegungserfassungs-und Kompensationseinheit 2045 vergleichbar mit denjenigen der
Einheit 2009, 2010 und 2011 des Standes der Technik in Fig. 22 sind.
-
Schließlich wird ein Bitstrom von der Entropiekodierungseinheit 2037 ausgegeben und
zu einer Bild-Vorhersage-Kodierungsvorrichtung gesendet.
-
Fig. 25 ist ein Blockschaltbild, welches eine Anordnung einer Bild-Vorhersage-
Dekodierungsvorrichtung gemäß der achten bevorzugten Ausführungsform der
vorliegenden Erfindung zeigt. Im Vergleich mit der bekannten Bild-Vorhersage-
Dekodierungsvorrichtung in Fig. 23 ist die Bild-Vorhersage-Dekodierungsvorrichtung in
Fig. 25 gekennzeichnet durch das Vorsehen von:
-
(a) einer HN/Z-Abtasteinheit 2052;
-
(b) einem Addierer 2053;
-
(c) einer DCT-Transformationsbereichs-Vorhersageeinheit 2055; und
-
(d) einem Blocksspeicher 2054.
-
In Fig. 25 wird der Bitstrom von der Bild-Vorhersage-Kodierungsvorrichtung in einer
längenveränderlichen Dekodierereinheit 2051 dekodiert. Die dekodierten Daten werden
in die H/V/Z-Abtasteinheit 2052 eingegeben und horizontal in der inversen Richtung
abgetastet, vertikal in der inversen Richtung oder in einer Zickzack-Weise in der inversen
Richtung, abhängig von dem Abtastmodus. Die nach dem Abtastvorgang erhaltenen
Daten werden in den Addierer 2053 eingegeben und der Addierer 2053 addiert die nach
dem inversen Abtastvorgang erhaltenen Daten zu Vorhersage-Fehlerdaten aus der DCT-
Transformationsbereichs-Vorhersageeinheit 2055, um dadurch dekodierte DCT-
Transformationskoeffizientendaten zu erhalten und diese in dem Blockspeicher 2054 zu
speichern. Dann quantisiert eine Invers-Quantisierungseinheit 2056 die eingegebenen,
kodierten DCT-Transformationskoeffizientendaten invers, um dadurch invers quantisierte
DCT-Transformationskoeffizientendaten zu erhalten und gibt die Daten zu einer Invers-
DCT-Transformationseinheit 2057 aus. Die Invers-DCT-Transformationseinheit 2057
führt einen inversen DCT-Transformationsvorgang mit den eingegebenen DCT-
Transformationskoeffizientendaten aus, um dadurch die ursprünglichen Bilddaten
wiederherzustellen und gibt dann die Daten zu einem Addierer 2058 aus. Gemäß der
Zwischen-Bild-Kodierung addiert der Addierer 2059 Bilddaten von der Invers-DCT-
Transformationseinheit 2057 zu Vorhersage-Fehlerdaten von einer
Bewegungserfassungs- und Kompensationseinheit 2060, um dadurch örtlich dekodierte Bilddaten zu
erhalten, gibt die Daten zu einer externen Vorrichtung aus und speichert dieselben in
einem Vollbild-Speicher 2059.
-
Weiterhin werden die von dem Addierer 2058 ausgegebenen, dekodierten Bilddaten
einem inversen Wiederherstellungsvorgang entsprechend dem Vorgang der
Blockabtasteinheit 2031 in Fig. 24 unterworfen, so dass die ursprünglichen Bilddaten
wiederhergestellt werden.
-
In der obigen, bevorzugten Ausführungsform wird der Quantisierungsvorgang vor dem
Vorhersagevorgang ausgeführt. Gemäß einem Modifikations-Beispiel kann der
Quantisierungsvorgang nach dem Vorhersagevorgang ausgeführt werden. In diesem Fall wird
der inverse Quantisierungsvorgang in dem örtlichen Dekodierer und der Bild-
Vorhersage-Dekodierungsvorrichfung ausgeführt, bevor der Vorhersagewert addiert
wird. Die anderen Einzelheiten sind sämtlich vergleichbar mit denen der oben
erwähnten, bevorzugten Ausführungsform.
-
Fig. 26 ist eine vereinfachte Ansicht eines Bildes, welches eine Anordnung eines
Makroblocks und von Blöcken eines durch Blockaufteilung erhaltenen Rahmens ebenso wie
eines Block-Vorhersageverfahrens gemäß der achten bevorzugten Ausführungsform
zeigt. Die erweiterte Ansicht in Fig. 26 zeigt, wie die Vorhersagedaten für den
gegenwärtigen Block kodiert werden. In diesem Fall wird ein Block C(u, v) erhalten von einem
oberhalb benachbarten Block A(u, v) und einem links benachbarten Block B(u, v). Diese
bevorzugten Ausführungsform der vorliegenden Erfindung wird als Nächstes detaillierter
geschrieben.
C1. Zur Vorhersage verwendete Koeffizientenanzahl
-
Die zur Vorhersage verwendete Koeffizientenanzahl hängt von der Folge von Bilddaten
ab. Ein Flag AC_Coeff wird zur adaptiven Auswahl der optimalen Anzahl von
Koeffizienten verwendet, die für jedes Bild zu verwenden sind. Das Flag ist in Tabelle 2 gezeigt,
die unten angegeben ist und wird als Teil einer Nebeninformation von einer Bild-
Vorhersage-Kodierungsvorrichtung zu einer Bild-Vorhersage-Dekodierungsvorrichtung
gesendet. Der Kode fester Länge und FLC für das Flag AC_Coeff sind in Tabelle 2
gezeigt. In diesem Fall ist FLC (Kodierung fester Länge) eine reversible Kodierung zum
Zuordnen von Kodewörtern fester Länge zum Ausdrücken sämtlicher möglichen
Ereignisse.
Tabelle 2: Kode fester Länge FLC für Flag ACCoeff
-
In diesem Fall ist ACn A(0,n) oder B(n,0) abhängig von dem verwendeten Modus.
-
Gemäß dem besonderen Fall dieser bevorzugten Ausführungsform werden sämtliche
AC-Koeffizienten, welche in der oberen Reihe und der äußerst linken Spalte angeordnet
sind, für die Vorhersage verwendet. In diesem Fall ist kein Flag erforderlich, wenn die
Bild-Vorhersage-Kodierungsvorrichtung und die Bild-Vorhersage-
Dekodierungsvorrichtung mit diesem Vorgabewert übereinstimmen.
C2. Skalierung des Quantisierungsschrittes
-
Wenn ein benachbarter Block mit einer Quantisierungsschrittgröße quantisiert wird, die
sich von derjenigen des gegenwärtigen Blocks unterscheidet, ist die Vorhersage von AC-
Koeffizienten nicht so effizient. Daher werden durch das Vorhersageverfahren
Vorhersagedaten verformt, um entsprechend dem Verhältnis der Quantisierungsschrittgröße des
gegenwärtigen Blockes zum gegenwärtigen Zeitpunkt zu dem Quantisierungsschritt des
Vorhersagedatenblocks skaliert zu werden. Diese Beschreibung wird gegeben durch die
Gleichungen in dem folgenden Abschnitt C3.
C3. Vorhersagemodus
-
Eine Mehrzahl von einzustellenden Modi sind wie folgt.
-
(a) Modus 0: DC-Vorhersage aus dem an der Oberseite des zu verarbeitenden Blockes
angeordneten Block (abgekürzt als "Aufwärts-DC-Modus").
-
E&sub0;(0, 0) = C(0, 0) - A(0, 0),
-
E&sub0;(u, v) = C(u, v) (7)
-
(b) Modus 1: DC-Vorhersage aus dem an der linken Seite des zu verarbeitenden
Blockes angeordneten Block (abgekürzt als "Linksseitiger-DC-Modus").
-
E&sub1;(0, 0) = C(0, 0) - B(0, 0),
-
E&sub1;(u, v) = C(u, v) (8)
-
(c) Modus 2: DC/AC-Vorhersage aus dem an der Oberseite des zu verarbeitenden
Blockes angeordneten Block (abgekürzt als "Aufwärts-DC/AC-Modus").
-
E&sub2;(0, 0) = C(0, 0) A(0, 0),
-
E&sub2;(0, v) = C(0, v) - A(0, v) QA/QC,
-
v = 1, 2, ..., AC_Coeff,
-
E&sub2;(u, v) = C(u, v) (9)
-
(d) Modus 3: DC/AC-Vorhersage aus dem an der linken Seite des zu verarbeitenden
Blockes angeordneten Block (abgekürzt als "Linksseitiger-DC/AC-Modus").
-
E&sub3;(0, 0) = C(0, 0) - B (0, 0),
-
E&sub3;(u, 0) = C(u, 0) - B(u, 0) QB/QA,
-
u = 1, 2, ..., AC_Coeff,
-
E&sub3;(u, v) = C(u, v) (10)
C4. Adaptive Horizontal/Vertikal/Zickzack-Abtastung
-
Wenn die obigen vier Vorhersagemodi gegeben sind, kann die Effizienz der Intra-
Vollbild-Kodierung weiter verbessert werden durch Annehmen einer
Koeffizientenabtastung.
-
Fig. 27, Fig. 28 und Fig. 29 sind vereinfachte Ansichten zum Erläutern einer Folge
einer horizontalen Abtastung, einer vertikalen Abtastung und einer Zickzack-Abtastung,
verwendet für die Koeffizientenabtastung der achten bevorzugten Ausführungsform. In
diesem Fall werden diese Abtastungen kollektiv bezeichnet als MN/Z-Abtastung.
C5. Bestimmung des expliziten Modus
-
Beim Bestimmen eines expliziten Modus wird die Bestimmung des Vorhersagemodus in
der Bild-Vorhersage-Kadierungsvorrichtung ausgeführt und die Bestimmungs-
Information wird explizit von der Bild-Vorhersage-Kodierungsvorrichtung zu der Bild-
Vorhersage-Dekodierungsvarrichtung gesendet durch mehrere Stücke kodierter
Bildinformation des Bitstromes.
-
Fig. 30 ist ein Flussdiagramm, das den für die achte bevorzugte Ausführungsform
verwendeten Modus-Bestimmungsvorgang zeigt.
-
In Fig. 30 werden die DCT-Transformationskoeffizientendaten des gegenwärtigen
Blocks in eine Einheit 2062 eingegeben und die Einheit 2062 subtrahiert die
eingegebenen DCT-Transformationskoeffizientendaten des gegenwärtigen Blocks von den DCT-
Transformationskoeffizientendaten des benachbarten Blocks, erhalten aus einem
Blockspeicher 2061, um dadurch einen DCT-Transformationsvorhersagevorgang auszuführen.
In der Einheit 2062 wird der DCT-Transformationsvorhersagevorgang ausgeführt in den
in der Sektion C3 beschriebenen vier Modi. Dann wird der Koeffizientenabtastvorgang in
einer H/V/Z-Abtasteinheit 2063 ausgeführt und in diesem Fall wird der in der Sektion C4
beschriebene, entsprechende Abtastvorgang ausgeführt, wie in Fig. 30 gezeigt.
Weiterhin werden die nach dem Abtastvorgang erhaltenen DCT-
Transfonmationskoeffizientendaten zu einer Entropiekodierung zu Einheit 2064 gesendet,
in welcher der längenveränderliche Kodierungsvorgang ausgeführt wird. In einer Einheit
2065 werden dann sämtliche in verschiedenen Modi erzeugten Bits miteinander
verglichen und eine Einheit 2066 wählt den Block der DCT-Transformationskoeffizienten des
Vorhersagemodus, welcher die geringste Menge von Bits erzeugt. Die Bits dieser DCT-
Transformationskoeffizientendaten werden als ein Bitstrom von der Einheit 2066 zu der
Bild-Vorhersage-Dekodierungsvorrichtung zusammen mit einem Vorhersagemodus-Wert
gesendet. Es ist anzumerken, dass der Vorhersagemodus mit in der folgenden Tabelle 3
gezeigten Kodes fester Länge kodiert wird.
Tabelle 3: FLC-Tabelle für DC/AC/Abtast-Modus
C6. Bestimmung des impliziten Modus
-
Gemäß einer zweiten bevorzugten Ausführungsform der Modus-Bestimmung besitzen
die Bild-Vorhersage-Kodierungsvorrichtung und die Bild-Vorhersage-
Dekodierungsvorrichtung gemeinsam eine identische Vorhersagemodus-
Bestimmungsfunktion. Die Bild-Vorhersage-Kodierungsvorrichtung und die Bild-
Vorhersage-Dekodierungsvorrichtung bestimmen kooperativ die Richtung hinsichtlich der
Bestimmung des Vorhersagemodus basierend auf den DC-Koeffizientenwerten eines
dekodierten Blocks benachbart zu dem gegenwärtigen Block. Das heißt, gemäß einer
Bestimmung in dem impliziten Modus wird die Bestimmung in dem impliziten Modus in
der Bild-Vorhersage-Kodierungsvorrichtung und der Bild-Vorhersage-
Dekodierungsvorrichtung nach mehreren Regeln ausgeführt. Die zusätzlichen
Informationsdaten, welche die Modusbestimmung darstellen, werden nicht von der Bild-
Vorhersage-Kodierungsvorrichtung zu der Bild-Vorhersage-Dekodierungsvorrichtung
gesendet.
-
Fig. 31 ist eine vereinfachte Ansicht eines Bildes, welches eine Beziehung zwischen
Blöcken gemäß der impliziten Modusbestimmung der achten bevorzugten
Ausführungsform zeigt. Das heißt, Fig. 31 zeigt eine Positionsbeziehung zwischen Blöcken und dem
vorherzusagenden, objektiven, gegenwärtigen Block.
-
In Fig. 31 ist ein Block C der zu verarbeitende, gegenwärtige Block, welcher
gegenwärtig vorhergesagt wird. Ein Block A ist ein an der oberen Seite des gegenwärtigen Blockes
C, der vorhergesagt wird, angeordneter Block. Ein Block B ist der an der linken Seite des
gegenwärtigen Blockes C angeordnete Block. Ein Block C' ist der Block, der diagonal zu
dem gegenwärtigen Block C und zwischen dem Block A und dem Block B angeordnet
Ist.
-
Zuerst wird eine DC-Richtung bestimmt. Es wird bestimmt, ob die AC-Koeffizienten
vergleichbar gemäß einem individuellen Bestimmungsverfahren vorhergesagt werden oder
nicht. Um dieses auszuführen wird die Gesamtsumme der Differenzen zwischen den
Absolutwerten der Vorhersagekoeffizienten verglichen mit dem Absolutwert der nicht
vorhergesagten Koeffizienten und es wird bestimmt, welcher kleiner ist. Ein Bit wird für
diese Bezeichnung für die Bild-Vorhersage-Dekodierungsvorrichtung verwendet, Zum
Bestimmen, ob die Richtung der DC-Vorhersage und AC-Koeffizienten vorhergesagt
werden, werden die folgenden Gleichungen verwendet. Tabelle 3 zeigt
zusammengefasst die möglichen vier Schlüsse.
-
(A1) Wenn
-
(B(0, 0) - C'(0, 0) < C'(0, 0) - A(0, 0)) (11)
-
dann gilt
-
E(0, 0) = C(0, 0) - A(0, 0) (12)
-
und
-
(a1) wenn
-
(13)
-
dann ist
-
E(0, v)
-
= C(0, v) - A (0, v) QA/QB, v = 1, ..., 7, (14)
-
oder
-
(a2) wenn die obige Gleichung (13) nicht gilt, dann ist
-
E(0, v) = C(0, v) (15)
-
(A2) Wenn die obige Gleichung (11) nicht gilt, dann ist
-
E(0, 0) = C(0, 0) - B(0, 0) (16)
-
und
-
(b1) wenn
-
(17)
-
dann ist
-
E(u, 0)
-
= C(u, 0) - B(u, 0) QB/Qc,v = 1, ..., 7, 18)
-
oder
-
(b2) wenn die obige Gleichung (17) nicht gilt, dann ist
-
E(u, 0) = C(u, 0) (19)
-
Weiterhin gilt hinsichtlich aller anderen Koeffizienten
-
E(u, v) = C(u, v) (20)
Tabelle 4: FLC-Tabelle für implizite DC/AC-Abtast-Modus-Bestimmung
-
In der obigen achten bevorzugten Ausführungsform wird der DCT-
Transformationskoeffizienten-Vorhersagevorgang ausgeführt mit den quantisierten
Transformationskoeffizientendaten durch die Einheit 2040. Die vorliegende Erfindung ist
jedoch nicht darauf beschränkt und der Vorgang kann mit
Transformationskoeffizientendaten ausgeführt werden, die nicht quantisiert sind, in einer Weise, die mit derjenigen der
sechsten bevorzugten Ausführungsform in Fig. 17 vergleichbar ist. In diesem Fall wird
in der in Fig. 25 gezeigten, entsprechenden Bild-Vorhersage-Dekodierungsvorrichtung
die Invers-Quantisierungseinheit 2056 zwischen die HIV/Z-Abtasteinheit 2052 und den
Addierer 2053 verschoben.
-
Ein Modifikationsbeispiel der achten bevorzugten Ausführungsform wird unten
beschrieben.
-
(a) Die Block-Abtasteinheit 2031 kann einen Verschachtelungsvorgang zum
alternierenden Einfügung von Bildpunkten enthalten, so dass die Bildpunkte in einer
zweidimensionalen Matrix in der Gruppe von vier Blöcken ungeradzahlig nummerierte Bildpunkte
umfassen, die in den ungeradzahlig nummerierten Reihen in dem ersten Block angeordnet
sind, die Bildpunkte umfassen geradzahlig nummerierte Bildpunkte, angeordnet in den
ungeradzahlig nummerierten Reihen in dem zweiten Block, die Bildpunkte umfassen
ungeradzahlig nummerierte Bildpunkte, angeordnet in den geradzahlig nummerierten
Reihen in dem dritten Block, und die Bildpunkte umfassen geradzahlig nummerierte
Bildpunkte, angeordnet in den geradzahlig nummerierten Reihen in dem vierten Block.
-
(b) Es ist akzeptabel, den oben erwähnten Vorhersageblock aus den Blöcken
auszuwählen, welche vorher wiederhergestellt wurden, gespeichert in dem oben erwähnten
Blockspeicher und benachbart zu dem kodierten, gegenwärtigen Block angeordnet, und
sämtliche Koeffizientendaten in dem Block auszuwählen.
-
(c) Es ist akzeptabel, den oben erwähnten Vorhersageblock aus den Blöcken
auszuwählen, welche vorher wiederhergestellt wurden, gespeichert in dem oben erwähnten
Blockspeicher und benachbart zu dem kodierten, gegenwärtigen Block angeordnet, und eine
vorbestimmte Teilmenge der Koeffizientendaten des Blocks auszuwählen.
-
(d) Es ist akzeptabel, den oben erwähnten Vorhersageblock aus den Blöcken
auszuwählen, welche vorher wiederhergestellt wurden, gespeichert in dem oben erwähnten
Blockspeicher und oberhalb und links benachbart zu dem kodierten, gegenwärtigen Block
angeordnet, unter Verwendung nur der Koeffizientendaten der oberen Reihe des Blockes
und der äußerst linken Spalte des Blockes und die verbleibenden Koeffizientendaten auf
Null zu setzen.
-
(e) Es ist akzeptabel, den oben erwähnten Vorhersageblock aus den Blöcken
auszuwählen, welche vorher wiederhergestellt und in dem oben erwähnten Blockspeicher
gespeichert wurden, entsprechend den oben erwähnten Kriterien,
und die Verwendung nur einer Teilmenge einschließlich eines oder mehrerer Teile von
Koeffizientendaten aus der oberen Reihe oder der äußerst linken Spalte des Blocks zu
Bestimmen durch Ausführen einer Kommunikation zwischen der Bild-Vorhersage-
Kodierungsvorrichtung und der Bild-Vorhersage-Dekodierungsvorrichtung.
-
(f) Es ist akzeptabel, den oben erwähnten Vorhersageblock aus den Blöcken
auszuwählen, welche vorher wiederhergestellt und in dem oben erwähnten Blockspeicher
gespeichert wurden, entsprechend den oben erwähnten Kriterien,
Bestimmen der Verwendung nur einer Teilmenge einschließlich eines oder mehrerer
Teile von Koeffizientendaten aus der oberen Reihe oder der äußerst linken Spalte durch
die Bild-Vorhersage-Kodierungsvorrichtung und Informieren der Bild-Vorhersage-
Dekodierungsvorrichtung mit einem Flag, welches die vorbestimmte Anzahl von
Teilmengen und Teilen der Koeffizientendaten darstellt, durch periodisches Einfügen
desselben in die zu der Bild-Vorhersage-Dekodierungsvorrichtung zu sendenden Daten.
-
(g) Es ist akzeptabel, den oben erwähnten Vorhersageblock aus den Blöcken
auszuwählen, welche vorher wiederhergestellt und in dem oben erwähnten Blockspeicher
gespeichert wurden, entsprechend den oben erwähnten Kriterien,
und die Koeffizientendaten jedes Blocks mit einem Verhältnis gleich dem Verhältnis der
Quantisierungsschrittgröße des gegenwärtigen, zu kodierenden Blocks zu der
Quantisierungsschrittgröße des Vorhersageblocks zu multiplizieren.
-
(h) Es ist akzeptabel, den oben erwähnten Vorhersageblock aus den Blöcken
auszuwählen, welche vorher wiederhergestellt und in dem oben erwähnten Blockspeicher
gespeichert wurden, entsprechend den oben erwähnten Kriterien,
und die Koeffizientendaten jedes Blocks durch einen veränderten Gewichtungsfaktor zu
gewichten.
-
(i) Es ist akzeptabel, den oben erwähnten Vorhersageblock aus den Blöcken
auszuwählen, welche vorher wiederhergestellt und in dem oben erwähnten Blockspeicher
gespeichert wurden, entsprechend den oben erwähnten Kriterien,
und eine vorbestimmte Transformationsberechnung mit den Koeffizientendaten jedes
Blocks auszuführen.
-
(j) Es ist akzeptabel, den oben erwähnten Vorhersageblock durch gewichtete
Mittelwertbildung der Blöcke zu erhalten, welche vorher wiederhergestellt und in dem oben
erwähnten Blockspeicher gespeichert wurden und dem gegenwärtigen, zu kodierenden
Block benachbart angeordnet sind.
-
(k) Das Abtastverfahren kann wenigstens ein Abtastverfahren enthalten aus:
-
(i) einer horizontalen Abtastung, die derart ausgeführt wird, dass die Koeffizientendaten
in jeder Reihe von links nach rechts abgetastet werden, beginnend in der oberen Reihen
und endend in der untersten Reihe;
-
(ii) einer vertikalen Abtastung, ausgeführt derart, dass die Koeffizientendaten in jeder
Spalte abgetastet werden von der oberen Reihe zu der untersten Reihe, beginnend in
der äußerst Linken Spalte und endend in der äußerst rechten Spalte; und
-
(iii) einer Zickzack-Abtastung, ausgeführt derart, dass die Koeffizientendaten diagonal
abgetastet werden von den äußerst linken Koeffizientendaten in der oberen Reihen zu
den äußerst rechten Koeffizientendaten in der untersten Reihe.
-
(I) Es ist akzeptabel, den oben erwähnten Vorhersageblock aus den Blöcken
auszuwählen, welche vorher wiederhergestellt und in dem oben erwähnten Blockspeicher
gespeichert wurden, entsprechend den oben erwähnten Kriterien,
wobei der Vorhersagemodus des oben erwähnten Vorhersageblockes wenigstens einen
Vorhersagemodus enthält aus:
-
(i) einem ersten Modus, in welchem nur die oberen und äußerst linken
Koeffizientendaten, die den Mittelwert des Blockes darstellen, bezeichnet als ein DC-Koeffizient, von
dem an der Oberseite des objektiven, gegenwärtigen, zu verarbeitenden Blockes
angeordneten Blocks zur Vorhersage verwendet werden;
-
(ii) einem zweiten Modus, in welchem nur ein DC-Koeffizient von dem an der linken Seite
des objektiven, gegenwärtigen, zu verarbeitenden Blockes angeordneten Blockes zur
Vorhersage verwendet wird;
-
(iii) einem dritten Modus, in welchem ein DC-Koeffizient und null oder mehr AC-
Koeffizienten mit Hochfrequenz-Komponenten aus der oberen Reihe des an der
Oberseite des objektiven, gegenwärtigen, zu verarbeitenden Blockes
angeordneten Blockes zur Vorhersage verwendet werden; und
-
(iv) einem vierten Modus, in welchem ein DC-Koeffizient und null oder mehr AC-
Koeffizienten mit Hochfrequenz-Komponenten aus der äußerst linken Spalte des
an der linken Seite des objektiven, gegenwärtigen, zu verarbeitenden Blockes
angeordneten Blockes zur Vorhersage verwendet werden, und
-
Abtasten der Koeffizientendaten des oben erwähnten Vorhersagefehlers gemäß
dem Zickzack-Abtasfverfahren.
-
(m) Es ist akzeptabel, den oben erwähnten Vorhersageblock aus den Blöcken
auszuwählen, welche vorher wiederhergestellt und in dem oben erwähnten
Blockspeicher gespeichert wurden, entsprechend den oben erwähnten Kriterien,
Abtasten der Koeffizientendaten des oben erwähnten Vorhersagefehlers gemäß
einem der oben erwähnten Abtastverfahren, und
-
wobei der Vorhersagemodus zum Vorhersagen der Koeffizientendaten des oben
erwähnten Vorhersagefehlers wenigstens einen der folgenden enthält:
-
(i) einen ersten Modus, in welchem nur der DC-Koeffizient des an der Oberseite
des zu verarbeitenden, objektiven, gegenwärtigen Blockes angeordneten Blocks
zur Vorhersage verwendet wird und die Koeffizientendaten des oben erwähnten
Vorhersagefehlers dem Zickzack-Abtastvorgang unterworfen werden;
-
(ii) einen zweiten Modus, in welchem nur der DC-Koeffizient des an der linken
Seite des zu verarbeitenden, objektiven, gegenwärtigen Blockes angeordneten
Blocks zur Vorhersage verwendet wird und die Koeffizientendaten des oben
erwähnten Vorhersagefehlers dem Zickzack-Abtastvorgang unterworfen werden;
-
(iii) einen dritten Modus, in welchem der DC-Koeffizient und null oder mehr AC-
Koeffizienten mit Hochfrequenz-Komponenten der oberen Reihe des an der
Oberseite
des zu verarbeitenden, objektiven, gegenwärtigen Blockes
angeordneten Blockes zur Vorhersage verwendet werden und die Koeffizientendaten des
oben erwähnten Vorhersagefehlers dem horizontalen Abtastvorgang unterworfen
werden;
-
(iv) einen vierten Modus, in welchem der DC-Koeffizient und null oder mehr AC-
Koeffizienten mit Hochfrequenz-Komponenten der äußerst linken Reihe des an
der linken Seite des zu verarbeitenden, objektiven, gegenwärtigen Blockes
angeordneten Blockes zur Vorhersage verwendet werden und die
Koeffizientendaten des oben erwähnten Vorhersagefehlers dem vertikalen Abtastvorgang
unterwarfen werden.
-
(n) Es ist akzeptabel, einen inversen Verschachtelungsvorgang mit den oben
erwähnten dekodierten Bilddaten beim Wiederherstellen der ursprünglichen
Bilddaten auszuführen durch Ausbilden von Bildpunkten in einer zweidimensionalen
Matrix aus einer Mehrzahl von Gruppen, die jede vier verschachtelte Blöcke
umfassen, basierend auf den oben erwähnten dekodierten Bilddaten, so dass die
ungeradzahlig nummerierten Bildpunkte, angeordnet in den ungeradzahlig
nummerierten Reihen, sämtlich aus dem ersten Blockes erhalten werden, die
geradzahlig nummerierten Bildpunkte, angeordnet in den ungeradzahlig nummerierten
Reihen, aus dem zweiten Block erhalten werden, die ungeradzahlig
nummerierten Bildpunkte, angeordnet in den geradzahlig nummerierten Reihen, aus dem
dritten Block erhalten werden und die geradzahlig nummerierten Bildpunkte,
angeordnet in den geradzahlig nummerierten Reihen, aus dem vierten Block
erhalten werden.
-
(o) Die Bild-Vorhersage-Kodierungsvorrichtung und die Bild-Vorhersage-
Dekodierungsvorrichtung können den oben erwähnten Vorhersagemodus durch
eine vorbestimmte identische Regel bestimmen.
-
(p) Die Bild-Vorhersage-Kodierungsvorrichtung und die Bild-Vorhersage-
Dekodierungsvorrichtung können das oben erwähnte Abtastverfahren durch eine
vorbestimmte identische Regel bestimmen.
-
Wie oben beschrieben, ist die dritte Gruppe bevorzugter Ausführungsformen der
vorliegenden Erfindung sehr effektiv beim Verringern oder Beseitigen der
Redundanz in dem DCT-Transformationsbereich über den benachbarten Block und
die Anzahl der zu verwendenden Bits wird verringert und erlaubt demnach, dass
die Kodierungs-Effizienz merklich verbessert wird. Dies ist ebenfalls hilfreich als
ein Werkzeug eines neuartigen Video-Kompressionsalgorithmus.