DE3786412T2 - Verfahren und Vorrichtung zur digitalen Signalkodierung durch Quantisierung. - Google Patents

Verfahren und Vorrichtung zur digitalen Signalkodierung durch Quantisierung.

Info

Publication number
DE3786412T2
DE3786412T2 DE87104960T DE3786412T DE3786412T2 DE 3786412 T2 DE3786412 T2 DE 3786412T2 DE 87104960 T DE87104960 T DE 87104960T DE 3786412 T DE3786412 T DE 3786412T DE 3786412 T2 DE3786412 T2 DE 3786412T2
Authority
DE
Germany
Prior art keywords
coordinates
dimensional space
values
block
coded
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE87104960T
Other languages
English (en)
Other versions
DE3786412D1 (de
Inventor
Garibaldi Conte
Mario Guglielmo
Fabrizio Oliveri
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telecom Italia SpA
Original Assignee
CSELT Centro Studi e Laboratori Telecomunicazioni SpA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CSELT Centro Studi e Laboratori Telecomunicazioni SpA filed Critical CSELT Centro Studi e Laboratori Telecomunicazioni SpA
Publication of DE3786412D1 publication Critical patent/DE3786412D1/de
Application granted granted Critical
Publication of DE3786412T2 publication Critical patent/DE3786412T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/94Vector quantisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/008Vector quantisation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3082Vector coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)

Description

  • Die vorliegende Erfindung betrifft ein Verfahren und ein Gerät zur digitalen Signalcodierung durch Vektorquantisierung. Vorzugsweise, aber nicht ausschließlich, werden das Verfahren und das Gerät zur Reduktion der Redundanz in Bildsignalübertragungs- und/oder Speichersystemen benutzt.
  • Aus IEEE TRANSACTIONS ON INFORMATION THEORY, Band IT-15, Nr. 6, November 1969, S. 658-664; T. BIALLY: "Space-Filling Curves: Their Generation and Their Application to Bandwidth Reduction", ist es zur Redundanzreduktion bekannt, die Daten der Punkte in einem n-dimensionalen Raum durch eine einzelne, zu einem eindimensionalen Raum gehörige Zahl darzustellen, und zwar durch Verwendung einer Raumfüllkurve. Die Konvertierung der n-dimensionalen Koordinaten in die eindimensionale Koordinate kann als "Kartographie" oder Abbildung bezeichnet werden. Nach dem Abbilden wird der repräsentative Wert eines Abtastwertes in dem eindimensionalen Raum als Abtastcodierwert benutzt, und dann kann die umgekehrte Abbildung zur Wiederherstellung des Signals im n-dimensionalen Raum durchgeführt werden. Eine Quantisierung der durch die Abbildung erhaltenen Werte ist nicht vorgesehen. Die Redundanzreduktion ist nicht vollständig und die inverse Abbildung ist eine komplexe Prozedur, während auf der anderen Seite auch die Vektorquantisierung komplexe Algorithmen erfordert.
  • Vektorquantisierung ist eine Art der Quantisierung, bei der anstelle eines einzelnen Abtastwerts eine Anzahl von Abtastwerten, die in zweckmäßiger Weise aus dem zu codierenden Signal extrahiert wurden, herangezogen werden. Zum Beispiel wird im Fall von Bildsignalen die aus den von dem Signal durch orthogonale Abtastung erhaltenen Abtastwerte gebildete Matrix zeilenweise gelesen und die aus einer Anzahl zeitlich aufeinanderfolgender Zeilen entnommenen Abtastwerte (z. B. zwei oder vier Abtastwerte für jede von zwei aufeinanderfolgenden Zeilen, oder vier Abtastwerte für jede von vier aufeinanderfolgenden Zeilen) werden gemeinsam quantisiert. Blöcke von 2·2, 2·4 bzw. 4·4 Abtastwerten werden dadurch erhalten. Bedenkt man z. B. den 2·4 Fall, so ist, wenn die Abtastwerte durch 8 Bit dargestellt werden (entsprechend 256 Quantisierungsstufen pro Abtastwert), wie in der CCIR Empfehlung 601 festgelegt ist, die Anzahl der möglichen Konfigurationen 256&sup8;, die durch 64 Bit dargestellt werden müßten. Durch Vektorquantisierungstechniken wird die Anzahl der möglichen Konfigurationen reduziert und wird variabel, typisch zwischen 1024 und 128; haben die Konfigurationen gleiche Wahrscheinlichkeit, so sind für ihre Darstellung nur 10 und 7 Bit erforderlich.
  • Vektorquantisierung ist ein potentiell besserer Algorithmus als die anderen, da er nicht nur eine erhebliche Redundanzreduktion gestattet, sondern auch die Ausnutztung von statistischer Abhängigkeit, und nicht nur der Korrelation, unter den zu codierenden Variablen (in diesem Fall die Bildpunkte) erlaubt; jedoch gibt seine Ausführung Anlaß zu zwei Problemen.
  • Das erste Problem betrifft die Codebucherzeugung, d. h. die Identifizierung, wenn einmal ein besonderes Verzerrungs- Minimierungs-Kriterium definiert worden ist, der wahrscheinlichsten Werte der Gruppe von Variablen, nämlich die Identifizierung der Bereiche eines n-dimensionalen Raumes, in dem eine höhere Wertehäufigkeit existiert: in diesem besonderen Fall sind die die möglichen 256&sup8; quantisierten Signalkonfigurationen repräsentierenden 1024 oder 128 Konfigurationen (oder Codevektoren) zu erhalten.
  • Das zweite Problem betrifft die Identifizierung des für die Darstellung des allgemeinen Blocks benutzten Vektors, wobei immer das Verzerrungs-Minimierungskriterium in Betracht gezogen wird.
  • Eine bekannte Lösung des Codebucherzeugungsproblems ist von Y. Linde, A. Buzo und R. M. Gray in der Schrift mit dem Titel "An Algorithm for Vector Quantizer Design", IEEE Transactions on Communications, Band Com-28, Nr. 1, Januar 1980 beschrieben.
  • Ein iterativer Algorithmus wird beschrieben, welcher, in der üblichsten Anwendung, in einem ersten Schritt den Schwerpunkt der Gruppe von Vektoren, die für eine Sequenz von Lernsignalen relevant sind, berechnet. Dieser Schwerpunkt wird dann mit einer skalaren Größe multipliziert, wodurch nicht optimierte repräsentative Punkte von zwei hypothetischen Klassen einer solchen Gruppe identifiziert werden. Durch Benutzen von diesen beiden repräsentativen Klassen wird diese Gruppe geteilt, wobei jeder der Vektoren einer der beiden Klassen zugeteilt wird. Als dritter Schritt wird der aktuelle Schwerpunkt von jeder der beiden erhaltenen Klassen berechnet. Die gleichen Operationen werden für die zwei neuen Schwerpunkte wiederholt und so weiter, bis die gewünschte Anzahl von repräsentativen Vektoren erhalten worden ist.
  • Ist das Codebuch einmal erstellt, kann die aktuelle Codierung durch Vergleich jedes zu codierenden Vektors mit allen repräsentativen Vektoren und der nachfolgenden Auswahl des einen, welcher die Verzerrung minimiert, oder durch selektive Baumtechniken ausgeführt werden.
  • Dieses bekannte Verfahren kann unabhängig davon, welches Verzerrungskriterium zu erfüllen ist, angewandt werden, jedoch ist:
  • 1) das Codebucherzeugungsverfahren besonders ineffizient durch die große Anzahl von Operationen, die bei der Lernsequenz auszuführen sind, und es ist auch ziemlich kompliziert, da die Analyse der Gruppe in einem n-dimensionalen Raum ausgeführt wird;
  • 2) die Codierphase, wenn die Vergleichstechnik ausgewählt wird, wegen der Notwendigkeit des durchzuführenden Vergleiches mit dem gesamten Codebuch sehr lang, und sie gestattet keine direkte Identifizierung des den zu codierenden Block repräsentierenden Vektors; im Fall der selektiven Baumtechniken ist die Anzahl der Vergleiche reduziert, aber es ist keine optimale Repräsentation sichergestellt.
  • Im Fall, daß das angewendete Verzerrungskriterium das der Minimierung der euklidischen Verzerrung ist (also der mittlere quadratische Fehler), werden die vorgenannten Nachteile durch das Verfahren und das Gerät nach der Erfindung überwunden, die eine Codebucherzeugung ohne Rückgriff auf iterative Methoden erlauben, und zur auf eine weniger komplizierte Art, da die Analyse der Gruppe von Variablen in einem eindimensonalen Raum ausgeführt wird, und die außerdem eine direkte Identifizierung des den Block repräsentierenden Vektors erlauben.
  • Die Begrenzung, die darin liegt, daß die Erfindung nur auf dieses besondere Verzerrungskriterium anwendbar ist, ist nicht besonders ernsthaft, da dieses Kriterium in der Signalverarbeitung das am allgemeinsten benutzte ist.
  • Gemäß der Erfindung wird ein Verfahren zum Codieren eines Digitalsignals durch Vektorquantisierung geschaffen, wobei man das Signal in Blöcke unterteilt, die in Aufeinanderfolge zu codieren sind und von denen jeder eine gegebene Anzahl von Abtastwerten umfaßt, die gleichzeitig codiert werden, und jeder Block durch einen Vektor dargestellt wird, der einen Punkt in einem n-dimensionalen Raum identifiziert [n = Zahl der Abtastwerte in einem Block] und n Komponenten aufweist, deren Werte die Werte der einzelnen Abtastwerte wiedergeben, wobei man für jeden zu codierenden Block die Koordinaten des Punkts im n-dimensionalen Raum in die Koordinaten eines Punkts in einem ein-dimensionalen Raum gemäß einem Abbildungsschema umformt, das im ein-dimensionalen Raum die Nachbarschaftseigenschaften des n-dimensionalen Raums gut aufrechterhält; dieses Verfahren ist dadurch gekennzeichnet, daß man die so erhaltenden Komponenten mit den Werten der Koordinaten der Endpunkte einer Vielzahl aufeinanderfolgender Intervalle im ein-dimensionalen Raum zum Bestimmen des Intervalls, in das die Koordinate fällt, vergleicht, und jedem Intervall einen Index zuordnet, der den codierten Wert der in das Intervall fallenden Punkte bildet, und daß beim Decodieren ein solcher Index einen Vektor aus einem früher festgelegten Codebuch auswählt, der aus dem Mittelwert derjenigen Vektoren besteht, die in dieses Intervall fallen.
  • Die Erfindung schafft auch ein Gerät zum Codieren eines digitalen Signals durch Vektorquantisierung, welches Signal in Blöcke unterteilt wird, die in Aufeinanderfolge zu codieren sind und von denen jeder eine gegebene Anzahl von Abtastwerten umfaßt, die gleichzeitig codiert werden, und durch einen Vektor dargestellt ist, der einen Punkt in einem n-dimensionalen Raum identifiziert [n = Zahl der Abtastwerte in einem Block] und n Komponenten aufweist, deren Werte die Werte der einzelnen Abtastwerte wiedergeben, und wobei die Vorrichtung aus einem Codierer und einem Decodierer besteht, von denen der Codierer eine das zu codierende Signal in Blöcke teilende und für jeden Block die Koordinaten eines repräsentativen Punkts im n-dimensionalen Raum berechnete Einrichtung umfaßt und der Decodierer eine den Block von Abtastwerten, ausgehend von einem Vektor, wieder aufbauenden und die Blöcke zu einem decodierten Signal kombinierende Einrichtung umfaßt; dieses Gerät ist dadurch gekennzeichnet, daß der Codierer weiterhin enthält:
  • - eine erste logische Schaltung, die für jeden Bloch die Koordinaten eines Punkts berechnet, der in einem ein-dimensionalen Raum dem Punkt entspricht, der für den Block im n-dimensionalen Raum repräsentativ ist;
  • - einen ersten Speicher, der die Werte der Koordinaten der Endpunkte einer Vielzahl von Intervallen, in die der ein-dimensionale Raum eingeteilt ist, sowie einen jedem Intervall zugeordneten Index speichert;
  • - eine logische Vergleichsschaltung, die die eindimensionale Koordinate jedes zu codierenden Signalblocks empfängt, diese Koordinate mit den Koordinaten der Endpunkte der Intervalle zum Feststellen des Intervalls, in das die Koordinate fällt, vergleicht, und aus dem ersten Speicher den Wert des Indexes dieses Intervalls liest und diesen Index als codiertes Signal abgibt;
  • und daß der Decodierer einen zweiten Speicher umfaßt, der beim Lesen durch diese Indizes adressiert ist und ein Codebuch speichert, das aus den Mittelwerten derjenigen Signale, die in jedes Intervall fallen, besteht.
  • Durch die Erfindung werden die durch die Abbildung erhaltenen Werte quantisiert. Nach der Abbildung wird der Punkt in dem ein-dimensionalen Raum benutzt, um den repräsentativen Wert in dem n-dimensionalen Raum zu identifizieren, wobei dieser Wert in dem Codebucherzeugungsschritt festgelegt worden ist. Diese Operation ist eine einfache skalare Quantisierung und eliminiert jedes Erfordernis für eine inverse Abbildung. Außerdem gestattet die Festlegung des Codebuches in einem von der Codierung getrennten Schritt durch Benutzen des selben Abbildungsschemas, das in dem Codierungsschritt benutzt wird, eine einfache Anpassung des Codebuches an die Eingangssignalstatistik ohne die Notwendigkeit des Verwendens komplexer Algorithmen, wie sie bei der Vektorquantisierung benötigt werden.
  • Die Erfindung wird nun mit Bezug auf die angefügten Zeichnungen erläutert, in welchen:
  • Fig. n 1-4 die erfindungsgemäße Codebucherzeugung darstellende Schematas sind;
  • Fig. 5 ein Blockschaltplan des Geräts gemäß der Erfindung ist;
  • Fig. n 6-7 Flußbilder der Codebucherzeugung und der Codieroperationen sind;
  • Fig. 8 ein Schaltplan einer praktischen Ausführungsform des Gerätes von Fig. 5 ist.
  • Als erstes wird die Codebucherzeugung offenbart, wobei vorausgesetzt wird, daß die Erzeugung von einer Lernbildsequenz ausgeht.
  • Die Codebucherzeugung findet in mehreren Schritten statt: als erstes wird ein Abbildungsschema von dem n-dimensionalen Raum auf einen ein-dimensionalen Raum berechnet und ein Histogramm der Verteilung der repräsentativen Punkte in einem solchen eindimensionalen Raum bestimmt; als nächstes wird ein Quantisierungsgesetz in einem solchen ein-dimensionalen Raum bestimmt, wobei das Gesetz den mittleren quadratischen Fehler minimiert; als letztes wird das aktuelle Codebuch berechnet.
  • Für die Histogrammbestimmung wird eine Sequenz von Lernbildern I1, I2... In der orthogonalen Abtastung unterzogen, um eine Abtastwerte-Matrix zu erhalten, und die aus einer bestimmten Anzahl aufeinanderfolgender Zeilen herausgezogenen Abtastwerte werden gemeinsam quantisiert.
  • Speziell werden s Abtastwerte einer jeden von r aufeinanderfolgenden Zeilen gemeinsam quantisiert, damit erhält man einen Block von n = r·s Abtastwerten. Als Beispiel wird, wo nötig, auf Blöcke von 4 Abtastwerten pro Zeile und auf 4 zeitlich aufeinanderfolgende Zeilen Bezug genommen, so daß ein 16-dimensionaler Raum betrachtet wird. Das Abtasten wird durch ein Gerät STB ausgeführt, welches für jeden Block die Werte der den Block bildenden Bildelemente berechnet und diese Werte gemäß einem festgelegten Gesetz in sequentieller Weise anordnet. Ein Punkt, und hiermit ein Vektor, wird in einem n-dimensionalen Raum mit einem solchen Block verbunden. Nimmt man nun der Einfachheit halber an, daß der Wert eines jeden Bildelements nur der Helligkeitswert ist und daß solch ein Wert durch 8 Bit codiert wird, kann jede Koordinate dieses Punktes in dem n-dimensionalen Raum einen Wert 0 . . . 255 haben.
  • Es ist außerdem festzuhalten, daß die benutzten Werte sowohl die aktuellen Werte, als auch Werte, von denen ein mittlerer Helligkeitswert des Blockes selbst abgezogen wurde, sein können, und zwar auf jede beliebige bekannte Art codiert, z. B. in PCM durch 4 Bit.
  • Für den für jeden Block durch STB gebildeten Vektor wird eine Abbildung von dem n-dimensionalen Raum auf einen ein-dimensionalen Raum erzeugt (Block MH). Diese Abbildung muß eine einfache Berechnung und damit Schaltungsausführung, und eine gute Erhaltung der Nachbarschaftseigenschaften darstellen, z. B. muß sie so sein, daß Punkte, welche in einem Bereich des n-dimensionalen Raumes nah beieinander sind, dies auch in dem ein-dimensionalen Raum sind. Diese Eigenschaft ist wesentlich, weil die Abbildung von n auf eine Dimension eine ungeordnete Verteilung der Punkte eines selben Bereiches über den gesamten ein-dimensionalen Raum bewirken könnte und damit die Codierung ineffizient machen würde. Diese Anforderungen werden durch die sog. "Raumfüllkurven", auch als Peano-Kurven bekannt, erfüllt. Aus diesen Kurven wurde die Hilbert-Kurve ausgewählt, welche auf binärer Basis gut geeignet ist, um durch in binärer Logik arbeitende elektronische Schaltungen ausgeführt zu werden. Durch Zuordnung jedes Punktes des n-dimensionalen Raumes zu einem Kurvenpunkt kann der letztere durch eine einzige Koordinate dargestellt werden, die den Abstand vom Kurvenursprung repräsentiert.
  • Die Abbildung besteht dann für jeden Punkt des n-dimensionalen Raumes darin, den Wert der Koordinate des korrespondierenden Punktes auf der Kurve festzulegen, welche durch geeignete Vertauschungsoperationen bei den einzelnen Bits der die Koordinaten des Punktes in dem n-dimensionalen Raum repräsentierenden Worte erhalten wird.
  • Vorteilhaft ist die für den Übergang von n zu 1 Dimension ausgeführte Abbildung im Vergleich zu der durch A.R. Butz in der Schrift mit dem Titel "Alternative algorithm for Hilbert's space filling curve", IEEE Transactions on Computers, Band C-20, 1971, Seiten 424-426 beschriebenen Abbildung, die die Abbildung von einer auf n Dimensionen zeigt, eine inverse Abbildung.
  • Der auf die Abbildung folgende Schritt ist die Erzeugung eines Histogramms der Koordinaten der Punkte auf der Hilbert-Kurve.
  • Wenn m die Anzahl der jede Koordinate in einem n-dimensionalen Raum codierenden Bits ist, wird jeder Wert der krummlinigen Koordinate durch man Bits repräsentiert, und eine Histogrammerzeugung würde die Anwendung eines 2m·n-Positionen-Speichers erfordern. Bedenkt man, daß typische Werte für m und n die vorher genannten sind (8 Bit, 16 Dimensionen), so ist offensichtlich, daß die für solch einen Speicher (2¹²&sup8; Positionen) geforderte Größe in der Praxis nicht verwendet werden kann und daher die Anzahl der Werte, die die krummlinige Koordinate annehmen kann, reduziert werden sollte.
  • Für diese Reduktion, die durch Block LIM angegeben ist, wird eine gleichförmige Quantisierung durchgeführt, z. B. wird die Hilbert-Kurve in gleich lange Bereiche aufgeteilt.
  • Wenn L die Anzahl der für die Codierung benutzten Intervalle ist, ergibt die in LIM durchgeführte Quantisierung z. B. eine Aufteilung der Kurve in K = 10·L Intervalle. Z. B. kann mit den oben genannten Werten für n und m die Anzahl L den Wert 1024 haben und kann K etwa 10000 sein; der Histogrammspeicher kann z. B. 2¹³ bis 2¹&sup4; Positionen haben.
  • Die gleichförmige Quantisierung kann durch ein einfaches Abschneiden der durch MH gelieferten Worte erfolgen, z. B. durch Verwenden nur der x = log K obersten Bits dieser Worte (Symbol kennzeichnet das obere Ganze der in ihm eingeschlossenen Anzahl). Ein effizienteres Verfahren kann das Berechnen des Maximalwertes HM der durch MH gelieferten Koordinaten und durch Normalisieren des Wertes Hi der allgemeinen Koordinate durch die Beziehung
  • i = K·Hi/HM
  • sein, wobei K die Histogrammdimension ist. Wenn dieses Verfahren ausgewählt wird, sollten die während des Abbildens von n auf 1 Dimension erhaltenen Werte gespeichert werden, um Wiederholungen der beschriebenen Operationen zu verhindern.
  • Nach der Informationsreduktion auf akzeptable Werte wird das aktuelle Histogramm (Block HIST) erzeugt; zu diesem Zweck erhöht der für jeden Bildblock relevante normalisierte oder begrenzte Wert den Inhalt des das Histogramm erzeugenden Speichers um eine Einheit, und zwar an der Adresse, die dem Wert selbst entspricht. Dieses Histogramm besteht dann aus einer Serie von Spitzen, die durch Zonen getrennt sind, die Quantisierungsintervallen entsprechen, in welche keine oder sehr wenige Punkte fallen: diese Spitzen entsprechen dominanten Konfigurationen im Lernbild, und ihre Anzahl bezeichnet eine minimal mögliche Anzahl von Codierungsstufen für die Bilder.
  • Dann ist der zweite Schritt auszuführen: Das Histogramm wird gemäß dem Gesetz, welches den mittleren quadratischen Fehler minimiert (Block QG), quantisiert. Die Quantisierung entspricht dem Finden der die verschiedenen Spitzen begrenzenden Abszisse und, wenn die Anzahl der Spitzen nicht gleich der gewünschten Intervallanzahl ist, dem Partitionieren der Spitzen, die die Ursache für den höchsten mittleren quadratischen Fehler darstellen (wenn die Spitzenanzahl geringer als die Intervallanzahl ist), oder dem Umgruppieren der Spitzen mit dem kleinsten quadratischen Fehler im gegenteiligen Fall, bis die gewünschte Intervallanzahl der Intervalle erhalten wird.
  • Die in QG ausgeführte Operation ergibt das Speichern der Endpunkte der Quantisierungsintervalle (Block QL) und der die Intervalle repräsentierenden Werte. Die letzteren Werte werden nicht benutzt, wie später ausgeführt werden wird.
  • Um diese Werte zu erhalten, können verschiedene Algorithmen verwendet werden: Beispiele sind die direkte Auflösung des Systems der die Fehlerminimierungsbedingungen beschreibenden nichtlinearen Gleichungen, wie sie von J. Max in der Schrift mit dem Titel "Quantizing for minimum distortion", IRE Transactions on Information Theory, Band IT-9, März 1960, Seiten 7-12 beschrieben werden, oder die iterative Berechnung der Schwerpunkte der, ausgehend von einer willkürlichen Partition, erhaltenen aufeinanderfolgenden Partitionen.
  • Die gegenüber der in MH verwendeten Abbildung inverse Abbildung könnte für die Werte der die Intervalle repräsentierenden Punkte verwendet werden, um das Codebuch aus den gespeicherten Werten zu erhalten. Zieht man jedoch in Betracht, daß nur ein Teil des die krummlinige Koordinate repräsentierenden Wortes erhältlich ist, und nicht das gesamte Wort, kann diese Operation inkorrekt werden. Deshalb werden Codebuchvektoren vorzugsweise direkt durch eine Mittelwertsberechnung berechnet, die lediglich die Kenntnis der Intervallendpunkte erfordert; das ist es, warum die Speicherung der die einzelnen Intervalle repräsentierenden Punkte in QL unnötig ist.
  • Für die direkte Berechnung (dritter Schritt) werden die von LIM gelieferten Werte der Koordinaten der einzelnen Blöcke der Lernbilder mit den Werten der Koordinaten der Endpunkte der verschiedenen aus der Histogrammquantisierung in QG erhaltenen Intervalle verglichen (Block Qi); diese Werte werden in QL gelesen. Auf diese Weise wird das Intervall ermittelt, in welches ein gegebener Bildblock fällt. Das Intervall ist durch seine Seriennummer oder den Index i gekennzeichnet. Durch Benutzen eines solchen Index und des entsprechenden, von STB ausgehenden n-Komponentenvektors werden eine Matrix mit so vielen Zeilen, wie den das Codebuch bildenden Vektoren,tund 50 vielen Spalten, wie den Komponenten des von STB ausgehenden Vektors, und ein Vektor mit so vielen Komponenten, wie den Matrixzeilen, gebildet (Block LUT). Die Matrix und Vektorinhalte werden am Beginn der Codebucherzeugungsoperationen auf 0 zurückgesetzt. Für jeden von STB ausgehenden Vektor werden, wenn Qi LUT mit der Nummer i des Intervalls, in welches das durch MH und LIM bestimmte Vektorbild fällt, beliefert, die Werte der Vektorkomponenten zu den Inhalten der Zeile i der Matrix addiert, während der Inhalt der Position i des Vektors um eine Einheit erhöht wird. Sobald die Lernbildblöcke entleert sind, wird der Inhalt jeder Matrixzeile durch den Inhalt der entsprechenden Vektorposition dividiert, und damit erhält man die Mittelwerte der Vektoren, deren eindimensionale Bilder in jedes Quantisierungsintervall fallen. Die berechneten Mittelwerte bilden das Codebuch, welches dann in einer geeigneten Weise zu einem Speicher des Decoders (CBR) übertragen wird; z. B. wenn das Codierungssystem Teil eines Bildübertragungssystems ist, kann das Codebuch durch Benutzen der Systemübertragungsstrecke zu CBR übertragen werden.
  • Sobald das Codebuch erhalten ist und in den Decoder übertragen ist, ist es möglich, mit der Codierung jedes Bildes durch Benutzen des Abbildungsschemas von einem n-dimensionalen auf einen ein-dimensionalen Raum durch die Hilbert-Kurve fortzufahren: die Codierung besteht aus der Festlegung des Index i des Intervalls, in welches die eindimensionale Koordinate des Blocks fällt, wobei solch ein Index das zu übertragende oder zu speichernde codierte Signal bildet. Während der Decodierung wirkt der Wert i als eine Adresse, um den korrespondierenden Vektor in dem Codebuch zu lesen.
  • Das Codier-Decodierschema ist in Fig. 5 gezeigt, wo die selben Symbole wie in den vorhergehenden Fig. n benutzt werden. Die Blöcke STB, MH, LIM, Qi, QL bilden den Codierer COD; der Decodierer DEC besteht aus dem Block CBR und aus einem weiteren Block BTS, welcher nachfolgend beschrieben wird.
  • In diesem Schema unterteilt die Einheit STB die Abtastsignale eines Bildes in IC, welches zu codieren ist, in Blöcke, und ordnet sie neu an. Eine erste logische Schaltung MH berechnet für jeden Block den Koordinatenwert auf der Hilbert-Kurve und liefert den Wert zu einer Schaltung LIM, die die für den homonymen Block von Fig. 1 beschriebenen Operationen ausführt. Eine logische Vergleichsschaltung Qi empfängt die von LIM gelieferten Werte und vergleicht diese mit den in einem ersten Speicher QL gespeicherten Endpunkten der Quantisierungsintervalle, wobei der zu ermittelnde Index i dem aktuellen Bildblock entspricht. Betrachtet man den Fall eines Bildübertragungssystems, wird der Index i zu einem zweiten Speicher CBR übertragen, wo er das Lesen des in der i-ten Zeile enthaltenen Vektors hervorruft. Der Vektor wird zu einem Gerät BTS geliefert, welches mit diesem Vektor die inversen Operationen zu STB ausführt und einen rekonstruierten Bildblock ID liefert. Es ist festzustellen, daß dann, wenn STB den Mittelwert des Blocks von dem aktuellen Wert der Bildabtastwerte abgezogen hat, STB den Decoder, und insbesondere CBR, mit der relevanten Information beliefern soll, wie durch die Verbindung zwischen STB und CBR schematisiert ist.
  • Was für die Helligkeitscodierung gesagt wurde, kann auch für die Farbartcodierung gelten, z. B. unter U- und V-Form.
  • Die verstehend beschriebene Codebucherzeugung und Codierungsoperationen sind auch in den Ablaufplänen der Fig. n 6, 7 zusammengefaßt; diese Ablaufpläne erfordern keine weiteren Ausführungen.
  • Es ist festzuhalten, daß eine auf einer Vektorquantisierung basierende Codierung dann, wenn die Quelle nicht stationär ist, ernsthaft beeinträchtigt ist: experimentelle Tests haben gezeigt, daß die Codierleistung sehr unterschiedlich ist abhängig davon, ob die zu codierenden Vektoren zu der Lernsequenz gehören oder nicht.
  • Um diesen Nachteil zu überwinden, sollten die Operationen, die ausgeführt werden, um das Quantisierungsgesetz und das Codebuch (HIST, QG, LUT) zu erhalten und das letztere zu dem Decoder zu übertragen, auch während der aktuellen Codierphase ausgeführt werden und nicht nur während der Lernphase. Mit anderen Worten, der Codierer ist anpassungsfähig zu machen und soll auch Blöcke HIST, QG und LUT beeinhalten, welche nur während der Codebuchberechnungsschritte aktiv sind.
  • Um den Codierer anpassungsfähig zu machen, sind gemäß der Natur des zu codierenden Signals verschiedene Lösungen möglich. Wenn z. B. einzelne Bilder zu codieren sind, können statistische Merkmale als von Bild zu Bild verschieden angenommen werden, und daher sollte jedem Bild sein Codebuch zugeordnet werden. Wenn im Gegenteil eine Bildsequenz zu codieren ist, kann das Codebuch in festen Zeitabschnitten erneuert werden oder es kann kontinuierlich berechnet werden und die Aktualisierung kann im Decoder ausgeführt werden, wenn die Unterschiede zum vorhergehenden Codebuch signifikant werden.
  • Fig. 8 zeigt eine geeignete praktische Ausführungsform des Gerätes nach der Erfindung, welches einen Mikrocomputer, im gesamten durch CPU bezeichnet, benutzt, der die Operationen der Einheiten der Blöcke DEC, COD in Fig. 5 ausführt.
  • In dieser Fig. liefert eine Bildsignalquelle VS eines beliebigen bekannten Typs, z. B. eine Fernsehkamera oder eine Lichtpunkt-Kamera, analoge Videosignale an eine Eingangs-Schnittstellenschaltung IIV, die im wesentlichen aus einem Analog/Digital-Umsetzer und Elementen, die im Signalfluß nur die wichtigen Informationssignale auswählen, besteht. Die Quelle VS und die Eingangs-Schnittstellen-Schaltung IIV werden durch CPU über eine Steuer-Schnittstellenschaltung IC getrieben, welche die Bewegungen des ausgewählten Bildes und/oder Analysegeräte in VS steuert, und die die für die Bildübertragung zu IIV, die Konvertierung in die digitale Form usw. erforderlichen Taktsignale liefert.
  • Digitale Informationssignale werden in einem Videorahmen-Speicher SU auf einem Wege, der von der Bildart und den benutzen Komponenten abhängt, gespeichert; der Speicher ist nicht Teil der Erfindung und weitere Details sind nicht erforderlich.
  • Der Speicher SU kann an den von CPU gelieferten Adressen gelesen oder beschrieben werden, und CPU muß zu jeder Zeit den zu codierenden Block auswählen; SU ist auch an eine Ausgangs- Schnittstellenschaltung IUV angeschlossen, welche auch von IC gesteuert wird, die entgegengesetze Funktionen zu denen von IIV ausführt und die Anzeige von codierten oder decodierten Bildern auf einem Monitor MO gestattet.
  • CPU ist mit einem Massenspeicher oder einer Datenbasis BD verbunden, worin die codierten Bilder und das codierende Codebuch oder die codierenden Codebücher gespeichert sind. Eine Schnittstellenschaltung IL schließt CPU für die Bildübertragung an ein analoges Wiedergabegerät an eine Übertragungsleitung an. Eine Tastatur TA gestattet die Auswahl der verschiedenen CPU-Betriebsarten; insbesondere sind die folgenden Operationen für das Codieren von Interesse:
  • - Codebuchberechnung;
  • - Bildcodierung;
  • - Codebuchübertragung;
  • - Bildübertragung;
  • - Lesen/Schreiben des Codebuchs in der Datenbasis;
  • - Lesen/Schreiben eines Bildes in der Datenbasis.
  • Die letzten beiden Operationen sind üblicherweise im Falle der Anwendung der Erfindung für ein Bildspeichersystem erforderlich. Weitere Operationen betreffen z. B. Bildwiedergabemodalitäten sowie die Modalitäten, durch die der den Benutzern angebotene Service ausgeführt wird.
  • Es ist klar, daß eine Vielzahl von Funktionen, gemäß den Erfordernissen des geforderten Service, miteinander kombiniert werden sollte. Wenn die Erfindung z. B. für ein Übertragungssystem verwendet wird, wird wenigstens die Bildcodierung und die Übertragung erforderlich sein, unter der Annahme, daß ein Standardcodebuch benutzt wird, welches keine Erneuerung während der Codierung erfordert.
  • Die Fig. zeigt auch einen konventionellen Drucker ST, der es dem Bediener gestattet, mit Informationen über die Geräteoperation oder dergleichen beliefert zu werden.
  • Es ist klar, daß anstelle der Erzeugung eines Histogramms der Koordinaten in dem ein-dimensionalen Raum eine Liste von Koordinatenwerten erzeugt werden kann und die Akkumulierungszonen ausgewählt werden können; die Codevektoren werden wie zuvor auf der Basis dieser Bereiche identifiziert. Diese Operation ist langsamer als die Histogrammerzeugung, jedoch vermeidet sie die der letzteren aufgrund des Abschneidens in LIM innewohnende Schwierigkeit, eine reduzierte Anzahl von sehr hohen Spitzen zu erhalten, was die Ursache dafür darstellt, daß die Codevektoren in Quantität und Qualität kaum befriedigend sind.
  • Als weitere Variante werden nach der Erzeugung der geordneten Liste von Koordinaten der Punkte der Lernbildgruppe in dem eindimensionalen Raum, diese Punkte in L-Gruppen (L ist die Anzahl dem für die Codierung benutzten Intervalle) aufgeteilt; die Koordinaten der Endpunkte eines jeden Intervalls sind die Mittelwerte der Koordinaten des letzten (ersten) Punktes einer Gruppe und des ersten (letzten) Punktes der nachfolgenden (vorhergehenden) Gruppe.

Claims (1)

1. Verfahren zum Codieren eines Digitalsignals durch Vektorquantisierung, wobei man das Signal in Blöcke unterteilt, die in Aufeinanderfolge zu codieren sind und von denen jeder eine gegebene Anzahl von Abtastwerten umfaßt, die gleichzeitig codiert werden, und jeder Block durch einen Vektor dargestellt wird, der einen Punkt in einem n-dimensionalen Raum identifiziert [n = Zahl der Abtastwerte in einem Block] und n Komponenten aufweist, deren Werte die Werte der einzelnen Abtastwerte wiedergeben, wobei man für jeden zu codierenden Block die Koordinaten des Punkts im n-dimensionalen Raum in die Koordinaten eines Punkts in einem ein-dimensionalen Raum gemäß einem Abbildungsschema umformt, das im ein-dimensionalen Raum die Nachbarschaftseigenschaften des n-dimensionalen Raums gut aufrechterhält, dadurch gekennzeichnet, daß man die so erhaltenden Komponenten mit den Werten der Koordinaten der Endpunkte einer Vielzahl aufeinanderfolgender Intervalle im ein-dimensionalen Raum zum Bestimmen des Intervalls, in das die Koordinate fällt, vergleicht, und jedem Intervall einen Index zuordnet, der den codierten Wert der in das Intervall fallenden Punkte bildet, und daß beim Decodieren ein solcher Index einen Vektor aus einem früher festgelegten Codebuch auswählt, der aus dem Mittelwert derjenigen Vektoren besteht, die in dieses Intervall fallen.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß man das Abbildungsschema des n-dimensionalen Raums zum eindimensionalen Raum durch Verwendung einer Raumfüllerkurve, speziell der Hilbert'schen Kurve, bewirkt, wobei eine solche Kurve den ein-dimensionalen Raum bildet.
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die zu codierenden Signale Bildsignale sind und die Werte der Punktkoordinaten Helligkeitswerte, und zwar tatsächliche oder im Hinblick auf einen Blockmittelwert normalisierte Helligkeitswerte, und Farbart-Komponentenwerte sind.
4. Verfahren nach einem der Ansprüche I bis 3, dadurch gekennzeichnet, daß man zum Bestimmen eines solchen Codebuchs die zu einer Lernfolge gehörenden digitalen Signale in Blöcke von n Abtastwerten aufspaltet; daß man für jeden Block die Koordinaten des repräsentativen Punkts im n-dimensionalen Raum in die Koordinaten eines Punkts im ein-dimensionalen Raum entsprechend dem die Nachbarschaftseigenschaften aufrechterhaltenden Abbildungsschema umformt; daß man die Koordinaten der Punkte im ein-dimensionalen Raum ordnet; daß man die Gruppe der geordneten Koordinaten entsprechend einem Gesetz, das den mittleren quadratischen Fehler minimalisiert, zur Bestimmung der Vielzahl Intervallen quantisiert; daß man die Werte der Koordinaten der Endpunkte der Intervalle speichert; und daß man die Mittelwerte der Koordinaten derjenigen Punkte im n-dimensionalen Raum, deren Abbildung in jedes Intervall fällt, berechnet.
5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß man die Koordinaten im ein-dimensionalen Raum dadurch ordnet, daß man ein Histogramm der Koordinaten unter Begrenzung der Anzahl der Werte, die eine Koordinate annehmen kann, erzeugt.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß man die Begrenzung durch ein Abschneiden der die Koordinaten wiedergebenden Wörter bewirkt.
7. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß man die Begrenzung dadurch bewirkt, daß man den Wert der allgemeinen Koordinate in Bezug zum Maximalwert, den eine Koordinate annehmen kann, entsprechend der Beziehung
i = K·Hi/HM
normalisiert, wobei Hi = der normalisierte Wert der allgemeinen Koordinate Hi, HM = der Maximalwert, K = die Zahl der für das Histogramm zu verwendenden Intervalle.
8. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß man die Koordinaten dadurch ordnet, daß man eine Liste der Koordinatenwerte erstellt und die Akkumulierungspunkte dieser Koordinaten identifiziert.
9. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß man die Koordinaten dadurch ordnet, daß man eine Liste der Koordinatenwerte erstellt und die aus der Lernfolge extrahierten Punkte in eine Anzahl von Gruppen gleich der vorgegebenen Zahl von Intervallen so verteilt, daß alle Intervalle die selbe Zahl von Punkten enthalten, wobei die Koordinaten der Endpunkte eines Intervalls die Mittelwerte der Koordinaten des letzten/ersten Punkts einer Gruppe und des ersten/letzten Punkts der nachfolgenden/vorhergehenden Gruppe sind.
10. Verfahren nach einem der Ansprüche 4 bis 9, dadurch gekennzeichnet, daß das Codebuch während des Codierens periodisch fortgeschrieben wird.
11. Verfahren nach einem der Ansprüche 4 bis 9, dadurch gekennzeichnet, daß das Codebuch bei jedem Codiervorgang berechnet wird.
Vorrichtung zum Codieren eines Digitalsignals durch Vektorquantisierung, wobei das Signal in Blöcke unterteilt wird, die in Aufeinanderfolge zu codieren sind und von denen jeder eine gegebene Anzahl von Abtastwerten umfaßt, die gleichzeitig codiert werden, und durch einen Vektor dargestellt ist, der einen Punkt in einem n-dimensionalen Raum identifiziert [n = Zahl der Abtastwerte in einem Block] und n Komponenten aufweist, deren Werte die Werte der einzelnen Abtastwerte wiedergeben, und wobei die Vorrichtung aus einem Codierer (COD) und einem Decodierer (DEC) besteht, von denen der Codierer eine das zu codierende Signal in Blöcke teilende und für jeden Block die Koordinaten eines repräsentativen Punkts im n-dimensionalen Raum berechnete Einrichtung (STB) umfaßt und der Decodierer eine den Block von Abtastwerten, ausgehend von einem Vektor, wieder aufbauenden und die Blöcke zu einem decodierten Signal kombinierende Einrichtung (BTS) umfaßt, dadurch gekennzeichnet, daß der Codierer (COD) weiterhin enthält:
- eine erste logische Schaltung (MH), die für jeden Block die Koordinaten eines Punkts berechnet, der in einem ein-dimensionalen Raum dem Punkt entspricht, der für den Block im n-dimensionalen Raum repräsentativ ist;
- einen ersten Speicher (QL), der die Werte der Koordinaten der Endpunkte einer Vielzahl von Intervallen, in die der eindimensionale Raum eingeteilt ist, sowie einen jedem Intervall zugeordneten Index speichert;
- eine logische Vergleichsschaltung (Qi), die die eindimensionale Koordinate jedes zu codierenden Signalblocks empfängt, diese Koordinate mit den Koordinaten der Endpunkte der Intervalle zum Feststellen des Intervalls, in das die Koordinate fällt, vergleicht, und aus dem ersten Speicher (QL) den Wert des Indexes dieses Intervalls liest und diesen Index als codiertes Signal abgibt;
und daß der Decodierer (DEC) einen zweiten Speicher (CBR) umfaßt, der beim Lesen durch diese Indizes adressiert ist und ein Codebuch speichert, das aus den Mittelwerten derjenigen Signale, die in jedes Intervall fallen, besteht.
13. Vorrichtung nach Anspruch 12, dadurch gekennzeichnet, daß der Codierer (COD) eine Einrichtung zum Berechnen und/oder Fortschreiben des Codebuchs enthält, die besteht aus:
- einer Einrichtung (LIM, HIST) zum Ordnen der Werte der ein-dimensionalen Koordinaten, die von der ersten logischen Schaltung (MM) geliefert werden;
- einer Vorrichtung (QG) zum Quantisieren der geordneten Koordinatengruppe, wobei diese Vorrichtung die Werte der Endpunkte der Intervalle des ein-dimensionalen Raums bestimmt und sie zum ersten Speicher (QL) liefert;
- einer Mittelwert-Berechnungsvorrichtung (LTU), die für jeden Signalblock die Werte der Koordinaten des diesen Block im n-dimensionalen Raum repräsentierenden Punkts von der Einrichtung (STB) zum Unterteilen des Signals in Blöcke empfängt, die Indizes von der logischen Vergleichsschaltung (Qi) empfängt und für jedes Intervall den Mittelwert der Koordinaten dieser Punkte im n-dimensionalen Raum, deren Abbildung ein eindimensionalen Raum in dieses Intervall fällt, berechnet, wobei die Mittelwerte in den Speicher (CBR) des Decodierers überführt werden, wenn die Erstellung oder das Fortschreiben des Codebuchs gefordert wird.
14. Vorrichtung nach Anspruch 13, dadurch gekennzeichnet, daß die Einrichtung zum Ordnen der Koordinatenwerte eine Schaltung (LIM) umfaßt, die die Zahl der Werte, die die Koordinaten annehmen können, begrenzt, sowie einen dritten Speicher (HIST) umfaßt, der eine Zahl von Stellen gleich der begrenzten Zahl von Werten aufweist und an jeder Stelle die Nummer der Blöcke speichert, die den bestimmten Koordinatenwert haben
15. Vorrichtung nach einem der Ansprüche 12 bis 14, dadurch gekennzeichnet, daß der Codierer und der Decodierer durch einen Mikroprozessor (CPU) gebildet sind, dem ein Großspeicher (BD) zum Speichern des Codebuchs und/oder der codierten Signale zugeordnet ist und dem eine Tastatur zugeordnet ist, die die Wahl einer oder mehrerer von verschiedenen Betriebsweisen ermöglicht, nämlich die Wahl: der Codebucherzeugung; der Codierung eines Signals; des Lesens-Schreibens des Codebuchs und/oder des codierten Signals im Großspeicher; und des Sendens des Codebuchs und/oder des codierten Signals zu einer entfernten Vorrichtung.
DE87104960T 1986-04-07 1987-04-03 Verfahren und Vorrichtung zur digitalen Signalkodierung durch Quantisierung. Expired - Fee Related DE3786412T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IT67273/86A IT1190565B (it) 1986-04-07 1986-04-07 Procedimento e dispositivo di codifica di segnali numerizati mediante quantizzazione vettoriale

Publications (2)

Publication Number Publication Date
DE3786412D1 DE3786412D1 (de) 1993-08-12
DE3786412T2 true DE3786412T2 (de) 1993-11-11

Family

ID=11301042

Family Applications (2)

Application Number Title Priority Date Filing Date
DE198787104960T Pending DE240948T1 (de) 1986-04-07 1987-04-03 Verfahren und vorrichtung zur digitalen signalkodierung durch quantisierung.
DE87104960T Expired - Fee Related DE3786412T2 (de) 1986-04-07 1987-04-03 Verfahren und Vorrichtung zur digitalen Signalkodierung durch Quantisierung.

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE198787104960T Pending DE240948T1 (de) 1986-04-07 1987-04-03 Verfahren und vorrichtung zur digitalen signalkodierung durch quantisierung.

Country Status (7)

Country Link
US (1) US4807298A (de)
EP (1) EP0240948B1 (de)
JP (1) JPH0681104B2 (de)
CA (1) CA1278867C (de)
DE (2) DE240948T1 (de)
DK (1) DK169287A (de)
IT (1) IT1190565B (de)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL83549A (en) * 1987-08-16 1992-08-18 Yossi Matias Video scrambling apparatus and method based on space filling curves
GB2210236B (en) * 1987-09-24 1991-12-18 Newbridge Networks Corp Speech processing system
US5010574A (en) * 1989-06-13 1991-04-23 At&T Bell Laboratories Vector quantizer search arrangement
JPH0638274B2 (ja) * 1989-07-31 1994-05-18 工業技術院長 画像認識装置および画像認識方法
FR2657695B1 (fr) * 1990-01-30 1992-04-17 Elf Aquitaine Procede de pointe de surfaces dans un volume 3d.
US5061924B1 (en) * 1991-01-25 1996-04-30 American Telephone & Telegraph Efficient vector codebook
TW256010B (de) * 1991-04-18 1995-09-01 Ampex
AU1996292A (en) * 1991-05-17 1992-12-30 Analytic Sciences Corporation, The Continuous-tone image compression
EP0516477B1 (de) * 1991-05-30 1998-01-07 Canon Kabushiki Kaisha Kompressionssteigerung bei graphischen Systemen
US5267332A (en) * 1991-06-19 1993-11-30 Technibuild Inc. Image recognition system
US5315670A (en) * 1991-11-12 1994-05-24 General Electric Company Digital data compression system including zerotree coefficient coding
US5416856A (en) * 1992-03-30 1995-05-16 The United States Of America As Represented By The Secretary Of The Navy Method of encoding a digital image using iterated image transformations to form an eventually contractive map
US5596659A (en) * 1992-09-01 1997-01-21 Apple Computer, Inc. Preprocessing and postprocessing for vector quantization
WO1994006099A1 (en) * 1992-09-01 1994-03-17 Apple Computer, Inc. Improved vector quantization
US5349545A (en) * 1992-11-24 1994-09-20 Intel Corporation Arithmetic logic unit dequantization
US5468069A (en) * 1993-08-03 1995-11-21 University Of So. California Single chip design for fast image compression
US5440652A (en) * 1993-09-10 1995-08-08 Athena Design Systems, Inc. Method and apparatus for preparing color separations based on n-way color relationships
US5592227A (en) * 1994-09-15 1997-01-07 Vcom, Inc. Method and apparatus for compressing a digital signal using vector quantization
US6738058B1 (en) * 1997-04-30 2004-05-18 Ati Technologies, Inc. Method and apparatus for three dimensional graphics processing
NZ518774A (en) * 1999-10-22 2004-09-24 Activesky Inc An object oriented video system
US7453936B2 (en) * 2001-11-09 2008-11-18 Sony Corporation Transmitting apparatus and method, receiving apparatus and method, program and recording medium, and transmitting/receiving system
CN110489605B (zh) * 2019-07-31 2023-06-06 云南师范大学 一种数据偏斜分布下的Hilbert编码和解码方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4541012A (en) * 1982-01-04 1985-09-10 Compression Labs, Inc. Video bandwidth reduction system employing interframe block differencing and transform domain coding
US4670851A (en) * 1984-01-09 1987-06-02 Mitsubishi Denki Kabushiki Kaisha Vector quantizer

Also Published As

Publication number Publication date
EP0240948A3 (en) 1990-05-02
CA1278867C (en) 1991-01-08
IT1190565B (it) 1988-02-16
IT8667273A0 (it) 1986-04-07
DK169287D0 (da) 1987-04-02
DK169287A (da) 1987-10-08
IT8667273A1 (it) 1987-10-07
JPH0681104B2 (ja) 1994-10-12
EP0240948B1 (de) 1993-07-07
DE240948T1 (de) 1990-09-06
US4807298A (en) 1989-02-21
DE3786412D1 (de) 1993-08-12
EP0240948A2 (de) 1987-10-14
JPS62239728A (ja) 1987-10-20

Similar Documents

Publication Publication Date Title
DE3786412T2 (de) Verfahren und Vorrichtung zur digitalen Signalkodierung durch Quantisierung.
DE69328855T2 (de) Datenkomprimierung/ -dekomprimierung mit Cache-Speichern
DE68918605T2 (de) Verfahren zur Speicherung und Übertragung von Bilddaten als Bilddatengruppe, passend zur Bildsuche.
DE2264090C3 (de) Datenverdichtung
DE3636675C2 (de)
DE3005775C2 (de) Kodierverfahren für ein Farbbild
DE2907990C2 (de)
DE69313925T2 (de) Verfahren und Einrichtung zur Steuerung einer Anzeige
DE69516734T2 (de) Bildverarbeitungsverfahren und -gerät
DE68927082T2 (de) Verfahren und Vorrichtung für die Bilddatenkomprimierung
DE69315001T2 (de) Fehlerdiffusionsprozessor und Verfahren zur Umwandlung eines Bildes mit Grauskalaelementen in ein Bild mit Binärwertelementen
DE2124754C3 (de) Verfahren und Vorrichtung zur differentiellen Pulscodemodulation
EP0197527B1 (de) Verfahren zur digitalen Nachrichtenübertragung
DE2803213A1 (de) Elektronische vorrichtung zur halbtonerzeugung fuer faksimile-reproduktionssysteme
DE3129026A1 (de) "videosignal-verarbeitungseinrichtung"
EP0276753A2 (de) Verfahren und Vorrichtung zur digitalen Nachrichtenübertragung und/oder -aufzeichnung und -wiedergabe
DE68926676T2 (de) Verfahren und gerät zur statistischen kodierung von digitalen daten
DE69413512T2 (de) Vorrichtung zur Dekodierung von Kodes mit veränderlicher Länge
DE19534730A1 (de) Verfahren zum Codieren und Decodieren von Daten
DE69607529T2 (de) Kodierung von videofarbbildern
WO1987005178A1 (en) Method for digital data transmission
DE68918590T2 (de) Gerät zur dekodierung von mit variabler länge kodierten daten.
DE3850029T2 (de) Verfahren und Vorrichtung zur Verarbeitung von Bildelementsignalen.
DE69319506T2 (de) Verfahren und Gerät zum Kodieren und Dekodieren digitaler Bilddaten
DE69524999T2 (de) Verfahren zum Komprimieren und Dekomprimieren von Dateien

Legal Events

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