-
Die
vorliegende Erfindung betrifft ein Verfahren und eine Vorrichtung
zur Bildkompression und insbesondere ein Verfahren und eine Vorrichtung
zur Bildkompression unter Verwendung eines bedingten Viergruppenbaumunterteilungssystems,
das die Probleme eines Verfahrens unter Verwendung eines herkömmlichen
Viergruppenbaums derart kompensiert, daß ein Bild natürlicher
wiedergegeben werden kann, nachdem es nach der Komprimierung wiedergewonnen
wird.
-
Eine
Bildverarbeitungsvorrichtung, wie beispielsweise ein digitales Video-Telefon,
ein Bilddatenbankprogramm, ein Heimeinkaufsanschluß und ein
Autobilddatenprogramm verwenden ein System, bei dem die Bilddaten
komprimiert werden, bevor sie übertragen
werden, um ihre Übertragung
zu verbessern. Wenn Daten komprimiert werden, wird jedoch die Schirmqualität bzw. die
Qualität
des übertragenen
Bilds im Vergleich zum Originalbild verschlechtert. Es wurden deshalb
Bildkompressionstechniken entwickelt, bei denen die Übertragungsgüte maximiert
ist, indem das Datenkompressionsverhältnis derart angehoben ist,
daß, bei
der Bildrückgewinnung
ein Bild erhalten werden kann, dessen Qualität an das Original angenähert ist.
-
Mehrere
herkömmliche
Verfahren haben verbesserte Techniken vorgeschlagen, bei denen ein Viergruppenbaum
selbst nicht geändert
und die Datenreduktion lediglich durch Variieren des Expressionsverfahrens
erfolgt (siehe hierzu: (1) Peter Strobach, "Tree-structured Scene Adaptive Coder", IEEE Transactions
on Communication, Band 38, Nr. 4, April 1990; (2) Jong Won Kim und
Sang Uk Lee, "Hierarchical
Variable Block Size Motion Estimation Technique for Motion Sequence Coding", SPIE, Band 2094,
1994; und (3)
US-A-5
228 098 , Tektronix Inc., "Adaptive Spatiotemporal Compression/Decompression
of Video Image Signals",
Juli 1993).
-
Verschiedene
Verfahren sind für
die digitale Bildkompression verwendet worden. Kürzlich sind jedoch Untersuchungen
bezüglich
ein Verfahren zur Verminderung der Datenmenge durch Einsicht in
die Bildstruktur durchgeführt
worden. Bei herkömmlichen Verfahren
analysiert ein Umrißtexturcodierungsverfahren
Grenzbestandteile eines Bilds sowie interne Bestandteile, die durch
die Grenzbestandteile umgeben sind, und setzt das Ergebnis für die Bildkompression
ein. Zusätzliche
Verfahren schließen
ein Segmentierungsverfahren für
Expressionsabschnitte ein, die gemäß der Homogenität in Gruppen
eingeteilt sind, ein auf einem Modell basierendes Codierungsverfahren
zum Zubereiten eines vorangeordneten Modells und zum Beschreiben
des eingegebenen Bilds auf der Grundlage des Modells, und ein Wavelet-
und Fraktalverfahren unter Verwendung einer Transformierten.
-
Bei
einem baumstrukturierten, szenenadaptiven Codierer für ein herkömmliches
Verfahren, das sich auf das vorstehend beschriebene Segmentierungsverfahren
bezieht, handelt es sich um eine Technik zum Übertragen eines Fehlersignals
gemäß einer
Bewegungsabschätzung
und einer Bewegungskompensation einer bewegten Bildabfolge durch
Verwendung eines herkömmlichen
Viergruppenbaums. Bei der hierarchischen Bewegungsabschätzungstechnik
mit variabler Blockgröße zur Codierung
einer Bewegungsabfolge wird ein herkömmlicher Viergruppenbaum ähnlich dem
vorstehend beschriebenen Verfahren verwendet. Ein Verfahren zur Beschreibung
des Viergruppenbaums ist jedoch wesentlich wirksamer gemacht worden,
um dadurch weniger komprimierte Daten zu erhalten. Gemäß der
US-A-5 228 098 wird
ein dreidimensionaler Viergruppenbaum für eine bewegte Bildabfolge
eingesetzt. Das Verfahren zum Beschreiben eines Viergruppenbaums
differenziert hinsichtlich eines bewegten Abschnitts und eines nicht
bewegten Abschnitts, um die Bit menge zu reduzieren. Das vorstehend
beschriebene Verfahren verwendet jedoch den herkömmlichen Viergruppenbaum. Mehr
im einzelnen kann die grundlegende Struktur eines Viergruppenbaumverfahrens
wie folgt ausgedrückt
werden. Willkürliche quadratische
Blöcke
werden in vier Unterbereiche einer vorbestimmten Größe durch
gewisse Beurteilungskriterien unterteilt (beispielsweise durch den Änderungs-
oder Relativitätsgrad
eines Mittelwerts von Pixeln in den Blöcken). Ein Schritt zum weiteren Unterteilen
der vier Unterbereiche durch Anwenden des vorstehend beschriebenen
Verfahrens wird wiederholt, bis eine vorbestimmte Fenstergröße erreicht wird.
Daraufhin kann eine Unterteilungsviergruppenbaumkarte jeden unterteilten
Bereich beschreiben, und ein Wert, der jeden unterteilten Bereich
wiedergibt, wird übertragen.
Daraufhin empfängt
ein Empfänger
das Ergebnis, um ein wiedergewonnenes oder wiedergegebenes Bild
zu erzeugen. Jede Schicht oder jede Ebene des Viergruppenbaums gibt lediglich
wieder, ob der Block oder der Bereich unterteilt ist oder nicht.
Deshalb kann die Viergruppenbaumunterteilungskarte gemäß jeder
Ebene lediglich durch 1-Bit-Daten ausgedrückt werden. Dieses Verfahren
ist untersucht worden, und die vier vorstehend genannten Techniken
schlagen Verfahren zum weiteren Reduzieren von Daten vor, indem
die Unterteilungsviergruppenkarte, die das Grundkonzept des vorstehend
genannten Verfahrens wiedergibt, wirksamer entworfen wird.
-
Die
vorstehend beschriebenen herkömmlichen
Verfahren verwenden jedoch eine Viergruppenbaumstruktur, bei der
die Bäume
in gleichmäßige Quadrate
von jeder Ebene unterteilt werden, um dadurch einen Schrittfehler
halben Werts zu erhalten. Deshalb wird die strukturelle Eigenschaft
eines Bilds, insbesondere die Bildqualität eines Kantenbereichs verschlechtert,
wodurch eine Bildverzerrung erzeugt wird. Eine Erhöhung der
Ebenen- oder Schichtanzahl zur Reduzierung eines derartigen Fehlers
und dadurch zur Kompensierung der Bildqualität verursacht eine Datenzunahme,
welche die Datenreduktion komplizierter macht.
-
Demnach
besteht die Aufgabe der vorliegenden Erfindung darin, eine Vorrichtung
und ein Verfahren zur Bildkompression unter Verwendung eines bedingten
Viergruppenbaumsystems anstelle einer weiteren Reduktion des Fehlerschritts
gemäß den Bildeigenschaften,
wie beim Stand der Technik, zu schaffen.
-
Gelöst wird
diese Aufgabe hinsichtlich des Verfahrens durch die Merkmale des
Anspruchs 1 und hinsichtlich der Vorrichtung durch die Merkmale
des Anspruchs 6 bzw. des Anspruchs 10 oder 12. Vorteilhafte Weiterbildungen
der Erfindung sind in den Unteransprüchen angegeben.
-
Demnach
schafft die Erfindung ein Bildkompressionsverfahren, umfassend die
Schritte:
Eingeben von Bilddaten einer Rahmeneinheit oder einer
Feldeinheit durch Hauptblockeinheiten einer vorbestimmten Größe,
Erzeugen
eines charakteristischen Werts für
jeden Block und von selektiven Unterteilungsdaten, die davon abhängen, ob
sequentielle Viergruppenunterteilungsoperationen für den Hauptblock
in einen aus einer Mehrzahl von Unterblocktypen gemäß einem Bildtyp
des Hauptblocks ausgewählten
Typ durchgeführt
werden oder nicht als Viergruppenbaumdaten, und
Ausgeben einer
Viergruppenbaumkarte, die gemäß den selektiven
Unterteilungsdaten der Viergruppenbaumdaten und dem charakteristischen
Wert für
jeden Block erzeugt werden, als Bit-Strom.
-
Eine
Mehrzahl von Unterblocktypen bestehen aus einem regelmäßigen Vierteilen,
einem rechteckigen Vierteilen und einem horizontalen Vierteilen.
-
Beim
Bildtyp jedes Blocks handelt es sich um einen Verteilungswert in
Bezug auf die Mehrzahl von Pixelwerten innerhalb eines Blocks, und
bei dem charakteristischen Wert handelt es sich um ein Mittelwert von
Pixeln in jedem Block.
-
Der
Schritt zum Erzeugen von Viergruppenbaumdaten umfaßt die Schritte:
- (a) Erhalten eines Verteilungswerts und eines
Mittelwerts in Bezug auf den Pixelwert in jedem unterteilten Unterblock
in Bezug auf einen Block und eine Mehrzahl von Unterblocktypen,
- (b) Bestimmen, ob ein Viergruppenbaum unterteilt werden soll,
durch Vergleichen des Verteilungswerts mit einem vorbestimmten Schwellenwert,
- (c) Erzeugen erster selektiver unterteilter Daten und des erhaltenen
mittleren Blockwerts als Viergruppenbaumdaten, wenn der Viergruppenbaum nicht
unterteilt werden soll,
- (d) Vergleichen des Verteilungswerts für jeden unterteilten Unterblock
einer Mehrzahl von Unterblocktypen derart, daß ein Minimalwert ermittelt wird,
wenn der Viergruppenbaum unterteilt werden soll,
- (e) Auswählen
eines Mittelwerts gemäß dem Minimalverteilungswert,
der aus den Mittelwerten in Bezug auf die Mehrzahl von unterteilten
Unterblöcken
ermittelt worden ist,
- (f) Erzeugen eines Unterblocktypcodewerts gemäß dem ermittelten
Minimalwert,
- (g) Erzeugen des ausgewählten
Mittelwerts und des erzeugten Codewerts als Viergruppenbaumdaten,
- (h) Bestimmen der Größe eines
Eingabeblocks gemäß dem Ermittlungsergebnis,
und
- (i) Wiederholen der Schritte (d) bis (h), bis die Größe des unterteilten
Unterblocks eine vorbestimmte Größe erreicht.
-
Dadurch
tritt keine Bildverzerrung auf und die Daten können reduziert werden, weil
ein für
den Bildtyp geeigneter Unterblocktyp aus einer Mehrzahl von Unterblocktypen
ausgebildet wird.
-
Die
Erfindung schafft ferner eine Bildkompressionsvorrichtung mit:
einem
Blockspeicher zum Empfangen und Speichern von Bilddaten einer Rahmeneinheit
oder einer Feldeinheit durch Hauptblockeinheiten vorbestimmter Größe,
einem
Viergruppenbaumerzeuger zum Erzeugen eines charakteristischen Werts
für jeden
im Blockspeicher gespeicherten Block und von selektiven Unterteilungsdaten,
der davon abhängt,
ob sequentielle Viergruppenunterteilungsoperationen für den im Blockspeicher
gespeicherten Hauptblock in einen aus einer Mehrzahl von Unterblöcken gemäß einem Bildtyp
ausgewählten
Typ durchgeführt
werden sollen oder nicht, als Viergruppenbaumdaten, und
einer
Viergruppenbaumkartenentwurfeinrichtung zum Ausgeben von Viergruppenbaumkartendaten gemäß den mittels
des Viergruppenbaumerzeugers erzeugten selektiven Unterteilungsdaten
der Viergruppenbaumdaten und des charakteristischen Werts für jeden
Block als Bit-Strom.
-
Der
Viergruppenbaumerzeuger umfaßt
eine erste Berechnungseinrichtung zum Erhalten eines ersten Verteilungswerts
und eines ersten Mittelwerts aus einem Pixelwert in einem Haupt block
des Blockspeichers, eine Mehrzahl von zweiten Berechnungseinrichtungen
zum Erhalten eines zweiten Verteilungswerts und eines zweiten Mittelwerts
aus einem Pixelwert in jedem unterteilten Unterblock in Bezug auf
eine Mehrzahl von Unterblocktypen des Blockspeichers, einen Komparator
zum Vergleichen des ersten Verteilungswerts mit einem vorbestimmten Schwellenwert,
um zu bestimmen, ob ein Viergruppenbaum unterteilt werden soll oder
nicht, einen Minimalwertdetektor zum Ermitteln des Minimalwerts durch
Vergleichen der zweiten Verteilungswerte der zweiten Berechnungseinrichtung,
einen Datenauswähler
zum Auswählen
eines Mittelwerts gemäß dem Minimalverteilungswert,
der von dem Minimalwertdetektor aus den zweiten Mittelwerten der
zweiten Berechnungseinrichtung ermittelt worden ist, einen Viergruppenbaumcodewerterzeuger
zum Erzeugen eines Unterblocktypencodewerts gemäß dem ermittelten Minimalwert,
einem Ausgabeauswähler
zum Auswählen
des ersten Mittelwerts der ersten Berechnungseinrichtung des Codewerts
des Codewerterzeugers und des zweiten Mittelwerts, der durch den Datenauswähler ausgewählt ist
gemäß dem Bestimmungsergebnis
des Komparators, und Ausgeben des Ergebnisses als selektive Unterteilungsdaten und
als charakteristischer Wert, und eine Blockgrößenbestimmungseinrichtung zum
Bestimmen der Größe eines
nächsten
Eingabeblocks in Bezug auf Blockgrößendaten, die gemäß dem Ermittlungsergebnis
des Minimalwertdetektors aktuell eingegeben werden.
-
Die
Viergruppenbaumkartenentwurfeinrichtung umfaßt einen Adressendekoder zum
Dekodieren der selektiven Unterteilungsdaten zur Erzeugung eines
Adressensignals, eine ROM-Tabelle zum Erzeugen einer Viergruppenbaumkarte,
die durch das dekodierte Adressensignal bezeichnet ist, und ein Bit-Stromarray
zum Ausgeben der erzeugten Viergruppenbaumkarte und des charakteristischen
Werts als Bit-Strom.
-
Eine
Ausführungsform
zum Komprimieren bewegter Bilddaten gemäß der vorliegenden Erfindung
umfaßt
einen Rahmenspeicher zum Empfangen von Rahmeneinheitsbilddaten,
einem Datenauswähler
zum Auswählen
von Bilddaten und Bildveränderungsdaten,
die aus dem Rahmenspeicher geliefert werden, einem Blockspeicher
zum Empfangen und Speichern der Rahmeneinheitsbilddaten, die von dem
Datenauswähler
durch Hauptblockeinheiten vorbestimmter Größe ausgewählt werden, einem Viergruppenbaumerzeuger
zum Erzeugen eines charakteristischen Werts für jeden Block und von selektiven
Unterteilungsdaten, der davon abhängt, ob sequentielle Viergruppenunterteilungsoperationen
für den
Hauptblock in einem aus einer Mehrzahl von Unterblöcken gemäß einem
Bildtyp ausgewählten
einen Typ durchgeführt
werden oder nicht, als Viergruppenbaumdaten, einer Viergruppenbaumkartenentwurfeinrichtung
zum Ausgeben einer Viergruppenbaumkarte, die gemäß den selektiven unterteilten
Daten der Viergruppenbaumdaten und dem charakteristischen Wert jedes
Blocks entworfen wird, als Bit-Strom,
einer Bildsynthetisiereinrichtung zum Empfangen des Bit-Stroms,
der aus der Viergruppenbaumentwurfeinrichtung ausgegeben wird, um
Bilddaten zu synthetisieren, einem Wiedergabespeicher zum Speichern
von Bilddaten des vorausgehenden Rahmens, der durch die Bildsynthetisiereinrichtung wiedergegeben
wird, einer Subtrahiereinrichtung zum Erhalten von Bildänderungsdaten
zwischen Bilddaten des aktuellen Rahmens, der durch den Rahmenspeicher
erzeugt wird, und Bilddaten des vorausgehenden Rahmens, der durch
den Wiedergabespeicher erzeugt wird, und einem Übertragungspuffer zum Übertragen
des Bit-Stroms, der aus der Viergruppenbaumentwurfeinrichtung ausgegeben wird.
-
Nachfolgend
wird die Erfindung anhand der Zeichnungen beispielhaft näher erläutert; es
zeigen
-
1 die
Struktur eines bedingten Viergruppenbaums, der für ein Bildkompressionsverfahren gemäß der vorliegenden
Erfindung verwendet wird,
-
2 ein
Blockdiagramm einer Ausführungsform
einer Bildkompressionsvorrichtung gemäß der vorliegenden Erfindung,
-
3 ein
Blockdiagramm einer detaillierten Struktur des bedingten Viergruppenbaumerzeugers von 2,
-
4 ein
Blockdiagramm einer detaillierten Struktur des Viergruppenbaumkartenentwurfabschnitts
von 2,
-
5a und 5b ein
einem bedingten Viergruppenbaum gemäß der vorliegenden Erfindung
zugeordneten Bit-Typ,
-
6 eine
Viergruppenbaumunterteilungsbedingung,
-
7 eine
Ausführungsform
der Viergruppenbaumaufteilung gemäß der vorliegenden Erfindung
und einen Bit-Strom davon,
-
8A eine
Ausführungsform
einer herkömmlichen
Viergruppenbaumaufteilung und
-
8B eine
Ausführungsform
einer Viergruppenbaumaufteilung gemäß der vorliegenden Erfindung.
-
Die
vorliegende Erfindung kann sowohl für ein Standbild, das aus einer
einzigen Stufe besteht, und ein bewegtes Bild verwendet werden,
das aus mehreren Stufen besteht. Daten werden gemäß einer
Verteilungseigenschaft des Bilds innerhalb eines Blocks geteilt,
die auf Grundlage einer Gesetzmäßigkeit
und von Grenzen oder Abgrenzungen bestimmt ist, die in dem Bild
vorhanden sind. Daraufhin werden die geteilten Daten und ein charakteristischer
Wert, der für
die geteilten Daten am günstigsten
ist, übertragen,
um dadurch ein Bild unter Verwendung lediglich einer kleinen Datenmenge
nahezu perfekt zu beschreiben.
-
1 zeigt
einen in Blöcken
aufgeteilten Typ eines bedingten in drei Ebenen unterteilten Viergruppenbaumsystems
gemäß der vorliegenden
Erfindung. Ein N × N-Block 1 ist
in einer ersten Ebene 1 gezeigt, drei Unterblöcke 10, 20 und 30 sind
in einer zweiten Ebene 2 gezeigt, und die Unterblöcke, die
jeweils jeden Unterblock als Hauptblock haben, sind in einer Ebene
3 gezeigt. Das bedeutet, eine vierfache Unterteilung einer Vierergruppe
mit der in 1 gezeigten Baumstruktur 1–1a–1b wird
als herkömmliches
Verfahren durchgeführt.
Bei der vorliegenden Erfindung wird jedoch einer der folgenden drei
Fälle für den N × N-Block 1 der
Schicht 1 durch Bestimmen einer Verteilungsbedingung eines Bilds
in Bezug auf einen beliebigen Block ausgewählt. Zunächst wird der N × N-Block
in vier N/2 × N/2-Blöcke 10 (N1,
N2, N3 und N4) der Schicht 2 unterteilt. Als zweites wird der N × N-Block
in N × N/4
horizontale rechteckige Blöcke 20 (H1,
H2, H3 und H4) unterteilt. Als drittes wird der N × N-Block
in N/4 × N
vertikale rechteckige Blöcke 30 (V1,
V2, V3 und V4) unterteilt. Daraufhin wird bestimmt, ob die Blöcke N1,
N2, N3 und N4 in drei Unterblöcke 11, 12 und 13 mit
N/4 × N/4,
N/2 × N/8,
N/8 × N/2
aufgeteilt werden sollen oder nicht. Es wird bestimmt, ob die Blöcke H1,
H2, H3 und H4 zusätzlich
in drei Unterblöcke 21, 22 und 23 mit
N2 × N/8,
N × N/16
und N/4 × N/4
aufgeteilt werden sollen oder nicht, und es wird bestimmt, ob die
Blöcke
V1, V2, V3 und V4 in drei Unterblöcke 31, 32 und 33 mit N/8 × N/2, N/4 × N/4 und
N/16 × N
aufgeteilt werden sollen oder nicht. Dadurch kann ein wiedergegebenes
Bild erhalten werden, das dem Originalbild ähnlicher ist, weil gemäß dem Bildtyp
unterteilte Blöcke eine ähnliche
Form haben. Außerdem
wird die Anzahl der Blöcke
nach dem Unterteilen reduziert, um dadurch ein Bit-Ratenerfordernis
zu reduzieren. Das vorstehend genannte Verfahren kann wirksam für eine Bildkompression
zum Übertragen
von Bilddaten über
einen Übertragungskanal
verwendet werden, der eine extrem niedrige Übertragungsrate oder -geschwindigkeit
hat.
-
Wie
in 2 gezeigt, wird ein Datenrahmen in einem Rahmenspeicher 52 in
Rahmen in Bezug auf eine Eingabebildabfolge 51 gespeichert.
Gleichzeitig subtrahiert ein Substrahierer 52 Daten b von
einem Wiedergabespeicher 54, in dem der unmittelbar vorausgehende,
wiederzugebende Rahmen aus Daten a eines Rahmenspeichers 52 abgespeichert
ist. Daraufhin werden die resultierenden Daten c, d.h. die Bildveränderung
zwischen den Daten a und den Daten b in einen Bildauswähler 55 eingegeben.
Das bedeutet, daß für den Fall,
daß Originalbilddaten
des aktuellen Rahmens ohne Änderung
verwendet werden, Daten a verwendet werden, die direkt aus dem Rahmenspeicher 52 empfangen
werden. Wenn ein Varianzsignal verwendet wird, können die Daten c verwendet
werden. Die derart ausgewählten.
Daten d gehen durch einen Blockspeicher 56 hindurch und werden
an einen Viergruppenbaumerzeuger 100 geliefert, der effiziente
Bereiche der Daten gemäß einem
Kriterium unterteilt und Viergruppenbaumdaten e und einen charakteristischen
Wert f für
einen aus Viergruppenbäumen
bestehenden Bereich erhält. Ein
Viergruppenbaumkartenentwurfabschnitt 200 bereitet unter
Verwendung der Daten e und des Werts f eine ROM-Tabelle zu. Daraufhin
werden die Viergruppenbaumdaten und die charakteristischen Werte in
Bit-Stromdaten g überführt, die
in einem Übertragungspuffer 58 gespeichert,
durch ein vorbestimmtes Taktsignal synchronisiert und über einen Übertragungskanal übertragen
werden. Zwischenzeitlich werden Bit-Stromdaten g, die durch den
Viergruppenbaumkartenentwurfabschnitt 200 erzeugt sind, ebenfalls
an einen Bildsynthetisator 57 übertragen. Daraufhin wird ein
Bild durch Verwenden der Bit-Stromdaten g wiedergegeben und in einem
Wiedergabespeicher 54 abgespeichert. Das abgespeicherte
Bild ist derart strukturiert, daß es zum Erhalten eines Varianzsignals
eines wiedergegebenen Bilds zwischen dem aktuellen Rahmen und dem
vorausgehenden Rahmen verwendet werden kann, wenn die Daten des
nächsten
Rahmens verarbeitet werden.
-
Bei
der vorliegenden Erfindung handelt es sich um ein Verfahren, das
unter Bildkompressionsverfahren eine sequentielle Segmentation derart
einsetzt, daß die
Bildredundanz vermindert wird. Wenn die Bildkompression jedoch unter
Ver wendung eines Varianzsignals zwischen Rahmen in einer bewegten Bildsequenz
oder -abfolge durchgeführt
wird, kann ein Viergruppenbaum in Abhängigkeit einer Bildstruktur
variabel gesteuert werden, um das Fehlersignal wirksam zu übertragen.
Das Blockierungsphänomen bei
herkömmlichen
Verfahren oder bei einer unnatürlichen
Bildunterteilung kann dadurch reduziert oder vermindert werden,
wodurch die Qualität
des komprimierten und rückgewonnen
Bilds verbessert werden kann, wobei es sich hier um den wichtigsten
Aspekt der vorliegenden Erfindung handelt.
-
Mit
anderen Worten wird bei der vorliegenden Erfindung ein Bild durch
einen Block vorbestimmter Größe, wie
in 1 gezeigt, in Bezug auf die jeweiligen Eingabebildabfolgedaten
ausgelesen. Daraufhin wird das ausgelesene Bild mit einer speziellen
Bedingung verglichen. Wenn die Bedingung erfüllt ist, wird der Block in
vier spezielle Blöcke
unterteilt. Wenn der Block den kleinsten Einheitsblock erreicht,
wird der Prozeß abgebrochen.
-
Ein
herkömmlicher
Viergruppenbaum ist derart strukturiert, daß der Block gleichmäßig unterteilt wird,
d.h. in Quadrate (ganz links in 1). Wenn eine
derartige Struktur verwendet wird, ist es schwierig, einen Bereich
gemäß dem Bildtyp
wirksam auszudrucken. Dadurch wird der Datenkompressionswirkungsgrad
verschlechtert. Die vorliegende Erfindung hat demnach eine Struktur
derart, daß der
Block in drei unterschiedliche Typen, ausgehend von einem Hochpegelquadrat
oder einem Quadrat der oberen Ebene unterteilt wird. Bei den drei
Unterteilungstypen handelt es sich, wie in 1 gezeigt,
um das Quadrat 11, die horizontalen Rechtecke 12 und
die vertikalen Rechtecke 13. Für jeden Block wird bestimmt, ob
der Block in drei Unterblöcke
unterteilt werden soll oder nicht. Die vorstehend beschriebenen
Schritte werden wiederholt, bis der Block den kleinsten Einheitsblock
erreicht.
-
Durch
den Schritt der Erzeugung von Viergruppenbaumdaten wird ein Verteilungswert
und ein Mittelwert für
jeden Pixelwert in dem Block und in jedem unterteilten Unterblock
in Bezug auf eine Mehrzahl von Unterblocktypen erhalten. Ob der
Block in einen Unterblock unterteilt werden soll oder nicht, wird
durch einen Verteilungsgrad und den Verteilungswert von Pixeln bestimmt,
die in dem Block vorhanden sind. Unter der Annahme, daß ein Block
N × N
ist, ein Pixelwert P(i, j) ist und ein mittlerer Pixelwert Pa(i,
j) ist, kann der Verteilungswert σ wie
folgt ausgedrückt
werden:
-
Es
wird bestimmt, ob der Block in den Unterblock unterteilt wird, in
Abhängigkeit
von der Beziehung zwischen dem Verteilungswert in Bezug auf den Block,
der wie vorstehend ausgeführt
erhalten wird, und einen vorbestimmten Schwellenwert.
-
Wenn
keine Notwendigkeit besteht, den Block zu unterteilen, werden erste
selektive Daten und der erhaltene Mittelwert des Blocks als Viergruppenbaumdaten
erzeugt. Wenn der Block einer Unterteilung bedarf, werden Verteilungswerte
für jeden
unterteilten Unterblock derart verglichen, daß der Minimalwert ermittelt
und der Mittelwert entsprechend dem minimalen Verteilungswert ausgewählt wird,
der unter den Mittelwerten einer Mehrzahl von unterteilten Unterblöcken ermittelt
wird. Daraufhin wird der Unterblocktyp-Codewert entsprechend dem
ermittelten Minimalwert erzeugt, und der ausgewählte Mittelwert und der erzeugte
Codewert werden als Viergruppenbaumdaten erzeugt. Daraufhin wird
die Größe eines
Eingabeblocks durch das Ergebnis der Ermittlung bestimmt. Die vorstehend
genannen Schritte, ausgehend von der Ermittlung des Minimalwerts bis
zur Bestimmung der Blockgröße werden
wiederholt, bis die Größe des Unterblocks
die vorbestimmte Größe erreicht.
-
Wie
in 3 gezeigt, wird ein vorbestimmter, auf Maß oder Größe gebrachter
Block in dem einen Rahmenbildausgangssignal von dem Datenauswähler 55 durch
den Blockspeicher 56 empfangen. Daraufhin wird ein erster
Verteilungswert für
den Block durch eine erste Blockverteilungswertberechnungseinrichtung 102 berechnet,
und gleichzeitig wird ein erster Verteilungswert durch eine erste
Blockmittelwertberechnungseinrichtung 103 berechnet. Gleichzeitig
werden zweite Mittelwerte und zweite Verteilungswerte für die drei
Typenblöcke,
die in die unteren Bäume
unterteilt oder aufgeteilt werden sollen, durch zweite Blockverteilungswertberechnungseinrichtungen 104 bis 106 und
zweite Blockmittelwertberechnungseinrichtungen 107 bis 109 jeweils
berechnet. Das bedeutet, wie in 1 gezeigt,
daß der Block
horizontal und vertikal in zwei Segmente unterteilt wird, und daß ein Mittelwert
und ein Verteilungswert in Bezug auf vier N/2 × N/2-Blöcke 10 (N1, N2, N3
und N4) durch die Verteilungswertberechnungseinrichtung 104 und
einen Normal-Viergruppenmittelwertrechner 107 erhalten
werden. Unter Verwendung desselben Verfahrens werden der Verteilungswert und
der Mittelwert in Bezug auf N × N/4-Blöcke 20 (H1,
H2, H3 und H4) über
eine Horizontal-Viergruppenverteilungswertberechnungseinrichtung 105 und
eine Horizontal-Viergruppenmittelwertberechnungseinrichtung 108 erhalten.
Daraufhin werden ein Mittelwert und ein Verteilungswert in Bezug
auf den N/4 × N-Block 30 über die
Vertikal-Viergruppenverteilungswertberechnungseinrichtung 106 und
die Vertikal-Viergruppenmittelwertberechnungseinrichtung 109 erhalten.
Gleichzeitig wird ein erster Verteilungswert (σi von 6)
des Blocks mit einem vorbestimmten Schwellenwert über einen Komparator 111 verglichen.
Wenn der erste Verteilungswert kleiner ist als der Schwellenwert,
besteht keine Notwendigkeit, den Block in Unterblöcke zu unterteilen.
Der Ausgang des Komparators 111 ist deshalb hoch, und ein
erster Ausgabepuffer 116 des Ausgabewählers 101 wird freigegeben
und zweite und dritte Ausgabepuffer 117 und 118 werden über das
Signal gesperrt, das den Inverter 115 durchsetzt hat. Wenn
der Verteilungswert größer ist
als der Schwellenwert, muß der
Block in Unterblöcke
unterteilt werden. Der Ausgang des Komparators 111 ist deshalb
niedrig, der erste Ausgabepuffer 116 ist gesperrt, und
die zweiten und dritten Ausgabepuffer 117 und 118 sind
durch das invertierte Signal 111a freigegeben, das vom
Inverter 115 ausgegeben wird. Hier wird eine Viergruppenbaumstruktur
mit einem minimalen Verteilungswert, der durch den Minimalwertdetektor 112 ermittelt
wird, durch den Verteilungswert in Bezug auf die vorstehend genannten
drei Viergruppenbäume
ausgewählt.
Zu diesem Zeitpunkt wird ein Mittelwert von dem Datenauswähler 113 durch
den ausgewählten
Wert ausgewählt.
Daraufhin werden Viergruppenbaumdaten e und ihr Mittelwert über die freigegebenen
zweiten und dritten Ausgabepuffer 117 und 118 ausgegeben.
Zu diesem Zeitpunkt sind die Kriterien zum Auswählen der Minimalverteilung unter
den drei Viergruppenbaumstrukturen wie folgt: wie in 6 gezeigt,
werden die Summe der Verteilungswerte σN1, σN2, σN3 und σN4 in
Bezug auf die Normal-Vierergruppe, die Summe der Verteilungswerte σH1, σH2, σH3 und σH4 in
Bezug auf die Normal-Vierergruppe und die Summe der Verteilungswerte σV1, σV2, σV3 und σV4 verglichen,
und der Minimalwert der drei wird als Minimalverteilungswert ausgewählt. Ein
Mittelwert davon wird außerdem
aus den zweiten Mittelwerten durch den Datenauswähler 113 ausgewählt. Ein
Code entsprechend dem derart erhaltenen Viergruppenbaum wird durch
den Viergruppenbaumcodeerzeuger 114 erzeugt. Wie in den 5A und 5B gezeigt,
müssen
die Daten jedoch derart zugeordnet werden, daß der Empfangsanschluß die Viergruppenbaumstruktur
erkennen kann. Wenn keine Notwendigkeit vorliegt, den N × N-Block
in Unterblöcke
zu unterteilen, werden die Daten als "00" zugeordnet.
Wenn der Block durch eine Normal-Vierergruppe unterteilt wird, werden
die Daten als "01" zugeordnet, und
wenn der Block durch eine Horizontal-Vierergruppe unterteilt ist,
werden die Daten als "10" zugeordnet. Wenn
der Block durch eine Vertikal-Vierergruppe unterteilt ist, werden
die Daten als "11" zugeordnet. Dadurch
wird ein Viergruppenbaumcodewert erzeugt. Wenn bei der in 3 gezeigten
Ausführungsform die
Daten als "00" zugeordnet werden,
ist der Ausgang oder das Ausgangssignal der Ausgabepuffer 117 und 118 "00" in dem gesperrten
Zustand. Der Viergruppenbaumcodewerterzeuger 114 erzeugt
deshalb aktuell Codewerte für
die drei Fälle "01", "10" und "11".
-
Zusätzlich empfängt die
Blockgrößenbestimmungseinrichtung 119 selektiv
Daten des Unterblocks entsprechend dem Minimalverteilungswert, der
durch den Minimalwertdetektor 112 ermittelt wird, und Blockgrößendaten,
die dem aktuellen Blockspeicher 56 zugeführt werden,
und ändert
die blockgröße. Daraufhin
wird die Blockgröße durch
das Ergebnis der Bestimmung für
die folgenden drei Fälle
bestimmt: als erstes, ob der Block in die vier N/2 × N/2-Blöcke 10 (N1,
N2, N3 und N4) der Ebene 2, wie in 1 gezeigt,
unterteilt ist oder nicht. Zweitens, ob der Block in die vier N × N/4-Blöcke 20 (H1,
H2, H3 und H4) horizontal unterteilt ist oder nicht. Drittens, ob
der Block in die vier N/4 × N-Blöcke 30 (V1,
V2, V3 und V4) vertikal unterteilt ist oder nicht. Auf dieselbe Weise
wird die Blockgröße durch
das Ergebnis der Bestimmung für
die folgenden drei Fälle
bestimmt: erstens, ob die Blöcke 10 (N1,
N2, N3 und N4) in die N/4 × N/4-,
N/2 × N/8-
und N/8 × N/2-Unterblöcke 11, 12 und 13 unterteilt
sind oder nicht. Zweitens, ob die Blöcke 20 (H1, H2, H3
und H4) in N/2 × N/8-,
N × N/16-
und N/4 × N/4-Blöcke 21, 22 und 23 unterteilt sind
oder nicht. Drittens, ob die Blöcke 30 (V1,
V2, V3 und V4) in N/8 × N/2-,
N/4 × N/4-
und N/16 × N-Blöcke 31, 32 und 33 unterteilt
sind oder nicht. Die Viergruppenbaumunterteilung wird wiederholt
durchgeführt,
bis der Block die derart festgesetzte Minimalgröße erreicht, um einen Viergruppenbaum
zu erzeugen. 7 zeigt eine Ausführungsform
des Viererblockbaums, der durch eine Dreiebenen-Viererblockbaumunterteilung
gemäß der vorliegenden
Erfindung erzeugt wurde, und einen Bit-Strom des Viergruppenbaumcodewerts,
der dementsprechend erzeugt wurde. Das bedeutet, die folgenden Codewerte
werden aufeinanderfolgend oder sequentiell erzeugt. Der Codewert "01" wird erzeugt, wenn
eine Normal-Viergruppenunterteilung eines N × N-Blocks vorliegt, und der
Codewert "00" wird erzeugt, wenn
keine Unterteilung des N/2 × N/2-Normal-Viergruppenunterblocks des
zweiten Quadranten vorliegt, und der Wert "01" wird
erzeugt, wenn eine Normal-Viergruppenunterteilung des N/2 × N/2-Normal-Viergruppenunterblocks des
ersten Quadranten vorliegt, und der Codewert "00, 00, 00, 00" wird erzeugt, wenn keine Unterteilung
in vier N/4 × N/4-Normal-Viergruppenunterblöcke in dem
ersten Quadranten vorliegt. Der Codewert "11" wird
erzeugt, wenn eine Vertikal-Viergruppenunterteilung des N/2 × N/2-Normal-Viergruppenunterblocks
des dritten Quadranten vorliegt, und der Codewert "00, 00, 00, 00" wird erzeugt, wenn
keine Unterteilung der vier N/8 × N/2-Unterblöcke des
dritten Quadranten vorliegt. Der Codewert "01" wird
erzeugt, wenn eine Normal-Viergruppenunterteilung des N/2 × N/2-Normal-Viergruppenunterblocks
des vierten Quadranten vorliegt, und der Codewert "11, 00, 00, 00" wird erzeugt, wenn
eine Vertikal-Viergruppenunterteilung des N/4 × N/4-Normal-Viergruppenunterblocks
und keine weitere Unterteilung der vertikal viergruppenunterteilten
N/16 × N/4-Unterblöcke vorliegt.
Der Codewert "01,
00, 00, 00" wird
erzeugt, wenn eine Normal-Viergruppenunterteilung des N/4 × N/4-Normal-Viergruppenunterblocks
und keine Unterteilung der N/8 × N/8-Unterblöcke vorliegt.
Der Codewert "11,
00, 00, 00, 00" wird
erzeugt, wenn eine Vertikal-Viergruppenunterteilung des N/4 × N/4-Normal-Viergruppenunterblocks
und keine Unterteilung der N/16 × N/14-Unterblöcke vorliegt.
Der Codewert "10,
00, 00, 00, 00" wird
erzeugt, wenn eine Horizontal-Viergruppenunterteilung des N/4 × N/4-Normal-Viergruppenunterblocks
und keine Unterteilung der N/4 × N/16-Unterblöcke vorliegt.
-
Der
Viergruppenbaumcodewert e und der Mittelwert f werden in den Viergruppenbaumkartenentwurfabschnitt 200 eingegeben
und als Bit-Strom neu angeordnet, um eine Übertragungsgeschwindigkeit
durch einen vorbestimmten Takt oder ein vorbestimmtes Taktsignal
zu entsprechen. Wie in 4 gezeigt, wählt ein Adressendekoder 201 als
erstes eine geeignete Adresse entsprechend den Viergruppenbaumdaten 3 aus,
die aus dem Viergruppenbaumerzeuger 100 eingegeben werden,
liest Daten der ROM-Tabelle 202 und sendet das Ergebnis
zu dem Bit-Stromarray 203.
Nachdem die Viergruppenbaumdaten für den aktuellen Block angeordnet
sind, werden die Mittelwertdaten für den Block geschrieben.
-
Wenn
eine Viergruppenbaumunterteilungsoperation durch den vorstehend
beschriebenen Prozeß beendet
worden ist, wird der benachbarte N × N-Block unterteilt. Der vorstehend
beschriebene Prozeß wird
deshalb so wiederholt, daß eine
Viergruppenbaumstruktur, die für
die Daten des gesamten Bilds notwendig sind, und ein charakteristischer Wert,
d.h. ein Mittelwert, erhalten werden können. Wie in 8B gezeigt,
kann die Unterteilung durch derartige Viergruppenbäume, wie
Normal-Horizontal- und Vertikalgruppenbäume flexibler ausgeführt werden.
Dadurch kann ein nahe am Originalbild liegendes Bild lediglich oder
nur durch eine Unterteilung niederer Ebene strukturiert werden.
Dadurch kann ein Bild guter Qualität ohne Verzerrung durch lediglich
eine geringe Datenmenge im Vergleich zu dem in 8A gezeigten
Verfahren wiedergegeben oder ausgedrückt werden, wodurch die Datenkompressionsgeschwindigkeit
verbessert werden kann.