DE4429017B4 - Verfahren zum Codieren von Daten in einem Datenkompressionssystem, Kompressions/Dekompressionsverfahren sowie Dekompressionssystem zum Dekomprimieren von komprimierten Daten - Google Patents

Verfahren zum Codieren von Daten in einem Datenkompressionssystem, Kompressions/Dekompressionsverfahren sowie Dekompressionssystem zum Dekomprimieren von komprimierten Daten Download PDF

Info

Publication number
DE4429017B4
DE4429017B4 DE4429017A DE4429017A DE4429017B4 DE 4429017 B4 DE4429017 B4 DE 4429017B4 DE 4429017 A DE4429017 A DE 4429017A DE 4429017 A DE4429017 A DE 4429017A DE 4429017 B4 DE4429017 B4 DE 4429017B4
Authority
DE
Germany
Prior art keywords
tokens
coefficients
decoder
block
image data
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
DE4429017A
Other languages
English (en)
Other versions
DE4429017A1 (de
Inventor
James D. Menlo Park Allen
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Publication of DE4429017A1 publication Critical patent/DE4429017A1/de
Application granted granted Critical
Publication of DE4429017B4 publication Critical patent/DE4429017B4/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

Kompressions-/Dekompressionsverfahren, zum Verarbeiten von Bilddaten, welches die Schritte aufweist:
– Transformation der Bilddaten in den Frequenzbereich mit Hilfe eines Transformations-Kompressors, wobei Transformationskoeffizienten erzeugt werden, die in einer Anzahl Blöcke angeordnet sind;
– erstes Codieren der Anzahl Koeffizienten jeder der Anzahl Blöcke, um eine Anzahl Token zu erzeugen; zweites Codieren der Anzahl Token in eine Anzahl Code-Worte, wobei der Schritt, zweites Codieren, ein Begrenzen der Anzahl von Token auf eine vorherbestimmte Anzahl einschließt; erstes Decodieren der Anzahl Token in eine Anzahl decodierter Token;
– Speichern der Anzahl decodierter Token in einem Puffer; zweites Decodieren der Anzahl decodierter Token, die in dem Puffer gespeichert sind, um eine Anzahl Koeffizienten zu erzeugen: und
– Dekomprimieren der Koeffizienten in den Bilddaten und
– Rücktransformation der Koeffizienten in die Bilddaten.

Description

  • Die Erfindung betrifft ein Kompressions/Dekompressionsverfahren sowie ein Dekompressionssystem zum Dekomprimieren von komprimierten Daten nach den unabhängigen Ansprüchen 1, 5, 8 und 9.
  • Datenkompressionsschemen sind heute in Computersystemen weit 30 verbreitet. Diese Datenkompressionsschemen bestehen aus miteinander verbundenen Stufen, um eine Kompression oder eine Dekompression zu schaffen. Die einzelnen Stufen können kaskadenartig ausgeführte Anordnungen von Datenkompressionsschemen enthalten. Beispielsweise werden gemäß der JPEG-(Joint Photographic Experts Group) Standbild-Kompressionsnorm die Daten mit Hilfe einer zweidimensionalen diskreten Kosinus-Transformation transformiert, und dann werden die Koeffizienten quantisiert. Hierauf folgt eine Differenz Puls-Code-Modulation (DPCM) der Gleichspannungs-Koeffizienten und ein Lauflängencodieren der Wechselspannungs-Koeffizienten. Schließlich werden die Ergebnisse nach den Huffman-Verfahren codiert. Da der Dekompressionsteil eines Datenkompressionsystems das Inverse des Kompressionsteils ist, sind Decodierer in aufeinander folgenden Stufen kaskadenartig angeordnet.
  • Derartige Datenkompressionstechniken sind mit Verlusten behaftet. In einer verlustbehafteten Kompressionstechnik wird ein Teil der eingegebenen Daten während einer Kompression eliminiert oder quantisiert, so daß die komprimierten Daten nicht in einem exakten "Duplikat" der eingegebenen Daten dekomprimiert werden können. Eine verlustbehaftete Bildkompression kommt oft bei Mehrfachstufen vor.
  • Ein Beispiel eines solchen Systems ist in 1 dargestellt. Manchmal laufen die kaskadenartig angeordneten Stufen bei verschiedenen Raten ab.
  • Für Echtzeitsysteme mit kaskadenartig angeordneten asynchronen Stufen wird das Puffern der Daten ein größeres Auslegungsproblem. In 1 erhält ein verlustbehafteter Kompressor 101 einen Dateneingang 110 mit einer Rate R. In einer Ausführungsform kann der Kompressor 101 ein Transformationscode-(TC-) Kompressor sein, welcher Koeffizienten entsprechend den eingegebenen Daten bei einer eingestellten Rate von R erzeugt. Der Ausgang des Kompressor 101 ist mit dem Eingang eines Lauflängen-Codierers (RLE) 102 verbunden, welcher den Ausgang von dem Kompressor 101 mit einer Rate R erhält und komprimiert. Ein Lauflängen-Codierer 102 ist ein veränderlicher Längencodierer und erzeugt Token bzw. Belegungsbits (wobei nachfolgend der Einfachheit halber nur noch von Token gesprochen ist) mit einer durchschnittlichen, aber nicht konstanten Rate von 35 R–G entsprechend dessen Eingang. Die Token, die von dem Lauflängen-Codierer 102 abgegeben worden sind, sind mit dem Eingang eines Codierers 103 verbunden, welcher die empfangenen Token in Code-Worte codiert. Diese Code-Worte werden mit einer mittleren Rate von R–G erzeugt. Die Code-Worte werden dann gespeichert oder auf einem Kanal übertragen.
  • Eine Dekompression eines komprimierten Datenstroms mit Hilfe des Systems in 1 ist der Kompression sehr ähnlich, mit der Ausnahme, daß die Stufen umgekehrt werden. Der Decodierer 106 erhält den komprimierten Datenstrom und erzeugt Token mit einer mittleren, aber nicht konstanten Rate R–G. Die Token werden von einem Lauflängen-Codierer 105 empfangen, welcher Koeffizienten mit einer Rate R erzeugt. Die Koeffizienten werden von einem verlustbehafteten Dekompressor 104 empfangen, welcher einen rekonstruierten Dateneingang 111 erzeugt.
  • Wie beschrieben, laufen die Stufen in dem verlustbehafteten Bildkompressionssystem mit verschiedenen Raten ab. Die Raten der Stufen sind R und R–G, wobei gilt: R > G ≥ 0. Dies ist hauptsächlich dem veränderten Längencodieren (d.h., dem Lauflängen-Codierer/Decodierer) zuzuschreiben. Wenn in diesem Beispiel der Codierer und der Deco dierer mit einer Rate R laufen, gibt es keine Schwierigkeit, da die synchron betrieben werden können. Andererseits ist ein Puffer notwendig, um die Rate des Codierers und Decodierers zu mitteln.
  • Wenn beim Stand der Technik eine langsamere Stufe nicht in der Lage ist, zumindest mit einer Burstrate R betrieben zu werden, kann ein FIFO-Puffer verwendet werden. Ein FIFO-Puffer ist eine 30 bekannte asynchrone Lösung, um ihn zwischen Stufen zwischenzuschalten, welche mit unterschiedlichen Raten arbeiten. Mit Hilfe des FIFO-Puffers kann eine vorhergehende schnellere Stufe mit ihrer maximalen Rate betrieben werden, bis der FIFO-Puffer voll ist. Der FIFO-Puffer mittelt im wesentlichen die Raten von Ausgangscodes.
  • Die Größe des notwendigen FIFO-Puffers hängt davon ab, wie lang ein Mitteln stattfindet. Mit anderen Worten, die Größe des FI – FO-Puffers bestimmt das Mittelungsf enster. wenn die FIFO-Größe die Größe des Bildes ist, dann kann sich der FIFO-Puffer an alle Burstraten anpassen. Je größer jedoch die Größe des Puffers ist, um so höher werden die Kosten. Darüber hinaus bewirkt eine größer bemessene Größe eine verminderte Rückkehr infolge der minimalen Anzahl von Situationen, welche der erhöhten Größe des Puffers angepaßt sind.
  • Ebenso sind oft Codierer und Decodierer in anwenderspezifischen integrierten Schaltungen (ASICs) implementiert. wenn ein Puffer erforderlich ist, kann der Puffer auf demselben integrierten Schaltungschip wie der Decodierer enthalten sein. Die Größe des Speichers steht in direkter Beziehung zu der Gesamtgröße des Chips. Je größer die Größe des Puffers ist, umso größer ist die Größe der integrierten Schaltung. Größere integrierte Schaltungen kosten üblicherweise mehr. Um die Chipgröße kleiner zu halten, und dadurch die Gesamtkosten des Chips zu reduzieren, sollte der Puffer auf die kleinstmögliche Größe verringert werden. Daher sollte auch die Größe des Pufferspeichers reduziert werden, die erforderlich ist, um die Kosten des Systems wirksam zu reduzieren.
  • Aus der ISO/IEC 11172–3, International Standard, first edition, 1993-08-01 und der TECHNER, D.: Der MPEG-2-Standard. In: FKT, 48. Jahrg. Nr. 4/1994, S. 155 bis 163 ist der MGEG-Audio-Standard, Layer 1 bis 3 bekannt. Bei diesem Standard werden die Eingangs daten blockweise, nämlich in Abschnitten zu je 1152 PCM-Abtastwerten in eine erste Symbolart transformationscodiert, nämlich in die Bits ihrer Spektralwert. Anschließend werden die Bits der Spektralwerte auf die maximal mögliche Menge eines MPEG-Audio-Datenblocks begrenzt und daraufhin wurden die weitergegebenen Bits eines MPEG-Audio-Datenblocks kanalkodiert oder bei dem Layer 3 explizit entropiecodiert. Bei diesem bekannten Codiersystemen aus MGEG-2-Audio-Standard, Layer 1 bis 3, die eine Blockstruktur, eine kaskadenartige Anordnung, und Codeworte am Ausgang des Kanalcoders oder des Huffman-Encoders aufeisen, sind Übergabespeicher für die Ausgangs- und Eingangsdaten der Codierstufe vorhanden, die dieses Codiersystem in der Regel auf einer echtzeitfähigen Rechenmaschine implementieren, wobei die einzelnen Codier-Blöcke üblicherweise als Unterprogramme realisiert sind, und somit Übergabespeicher für die Ausgangs- und Eingangsdaten der Codierstufe zwingend nötig sind.
  • Aus der US 4,394,774 , der US 5,046,121 , der US 5,051,840 und der EP 0 426 260 A2 ist das sog. "zonal coding" von Transformationskoeffizienten bekannt, bei welchem nur die signifikanten Koeffizienten, bei Bildern sind dies die niederfrequenten Transformationskoeffizienten bis zu einer vorherbestimmten Anzahl von Koeffizienten übertragen werden.
  • Der Erfindung liegt die Aufgabe zugrunde, die Reduzierung der Größe eines Puffers in einem verlustbehafteten Datenkompressionssystem zu ermitteln. Die genante Aufgabe wird durch die Gegenstände der unabhängigen Ansprüche gelöst. Zweckmäßige Ausführungsformen werden in den Unteransprüchen definiert.
  • Nachfolgend wird die Erfindung anhand von bevorzugten Ausführungsformen unter Bezugnahme auf die anliegenden Zeichnungen im einzelnen erläutert. Es zeigen:
  • 1 ein Blockdiagramm eines verlustbehafteten Bildkompressionssystems;
  • 2 ein Blockdiagramm einer Ausführungsform eines Datenkompressionssystems gemäß der Erfindung;
  • 3 ein Ablaufdiagramm eines Kompressions/Dekompressionsprozesses der Erfindung;
  • 4 ein Ablaufdiagramm eines Prozesses gemäß der Erfindung, und
  • 5 ein Schaltungsdiagramm der Blockend-Schaltung gemäß der Erfindung.
  • Nunmehr werden ein Verfahren und eine Einrichtung zum Komprimieren und Dekomprimieren von Daten beschrieben. In der folgenden detaillierten Beschreibung der Erfindung werden zahlreiche spezifische Details festgelegt, wie spezifische Taktgeschwindigkeiten, Bitraten, Puffergrößen etc., um ein genaues Verständnis der Erfindung zu schaffen. Die Erfindung ist jedoch nicht auf diese spezifischen Details in der Praxis beschränkt.
  • 2 ist ein Blockdiagramm einer Ausführungsform eines Kompressions/Dekompressionssystems gemäß der Erfindung. Das in 2 dargestellte System ist ein verlustbehaftetes Kompressionssystem. Das System arbeitet sehr ähnlich wie das System in 1; eine speziffische Implementierung jeder der Blöcke in 1 ist in 2 enthalten. In 2 werden Echtzeit-Bilddaten von einem Transformations-Kompressor 202 aufgenommen, welcher Koeffizienten als Ausgangssignale erzeugt, welche von einem Lauflängen-Codierer 203 aufgenommen werden. Der Lauflängen-Codierer 203 erzeugt Token, welche von einer vorzeitigen Blockende-Schaltung 211 empfangen werden. Die Schaltung 211 gibt Token ab, welche von einem FIFO 212 aufgenommen werden. Der FIFO 212 ist freigestellt und für das System nicht erforderlich, um die Erfindung anzuwenden. Ein Huffman-Codierer 204 ist vorgesehen, um Token von dem FIFO 212 aufzunehmen und codiert die Token, um komprimierte Daten zu erzeugen. Die komprimierten Daten werden in einen Kanal 205 abgegeben. Der Kanal 205 kann einen Speicher oder eine Speichereinheit oder in anderen Ausführungsformen ein Übertragungsmedium aufweisen.
  • Von dem Kanal 205 aus werden die komprimierten Daten von einem Huffman-Decodierer 206 aufgenommen, welcher die komprimierten Daten in Token decodiert. Die von dem Huffman-Decodierer 206 abgegebenen Token werden in einem FIFO 207 gespeichert. Bei der Erfindung kann der FIFO 207 eine Speichereinheit oder ein Puffer sein. Die in dem FIFO 207 gespeicherten Token werden von einem Lauflängen-Decodierer 208 aufgenommen, welcher die Token in Koeffizienten decodiert, welche von einem Transformations-Dekompressor 209 aufgenommen werden. Die Ausgangswerte des Transformations-Dekompressors 209 sind Echtzeit-Bilddaten.
  • Der Transformations-Kompressor 202, der Lauflängen-Codierer 203, die vorzeitige Blockende-Schaltung 211, der (freigestellte) FIFO 212 und der Huffman-Codierer 204 bilden den Codierteil des erfindungsgemäßen Systems. Der Huffman-Decodierer 206, der FIFO 207, der Lauflängen-Decodierer 208 und der Transformations-Dekompressor 209 stellen den Decodierteil des erfindungsgemäßen Systems dar.
  • In der Erfindung sind der Huffman-Decodierer 206 und FIFO 207 in einer einzigen anwenderspezifischen integrierten Schaltung (ASIC) integriert. Da FIFO 207 auf einem Chip untergebracht ist, beeinflußt dessen Größe unmittelbar die Gesamtgröße des ASIC. Bei der Erfindung ist die FIFO-Tiefe begrenzt, welche für das Datenkompressionssystem erforderlich ist. In einer Ausführugnsform ist die Decodierer-FIFO-Tiefe von FIFO 207 auf 16 8-Bit-Token und irgendwelche zusätzlichen Bits begrenzt, welche dem Token zugeordnet sind, oder bei einer entsprechenden Norm (z.B. JPEG) erforderlich sind. Auf diese Weise wird die Größe des ASIC genauso begrenzt.
  • 3 ist ein Ablaufdiagramm der Arbeitsweise des Systems der 2. Echtzeit-Bilddaten werden von dem Transformations-Kompressor 102 in der Raster-Abtastreihenfolge(Verarbeitungsblock 301) erhalten. In einer Ausführungsform komprimiert der Kompressor 202 die Bilddaten mit Hilfe der JPEG-Norm (Verarbeitungsblock 302). Der Kompressor 202 segmentiert anfangs das Bild in (8 × 8) Pixel-Blöcke. Dann sieht der Kompressor 202 eine Transformation jedes Blockes vor, um Koeffizienten zu erzeugen. Bei der Erfindung führt der Kompressor 302 eine diskrete Kosinus-Transformation (DCT) durch. Bei der Erfindung werden dieses Transformations-Koeffizienten dann nicht-gleichförmig quantisiert, um 64 quantisierte Koeffizienten zu erzeugen, welche dann in einer Zick-Zack-Reihenfolge im Lauflängen-Codierer 203 angeboten werden.
  • Der Lauflängen-Codierer 203 führt eine Lauflängen-Codierung in der Zick-Zack-Koeffizientenfolge durch, um Token zu erzeugen (Verarbeitungsblock 303). Der Lauflängen-Codierer 203 codiert eine Reihe von Null-Koeffizienten in einem Token, welche eine Kategorie und einen Zählwert haben, welcher die Anzahl an Null-Token anzeigt. In JPEG gibt es drei Typen von Token. Für jeden Block haben die Gleichspannungs-Koeffizienten ein Gleichspannungs-Token zur Folge. Irgendein Nicht-Null-Wechselspannungskoeffizient führt zu einem wechselspannungs-Token. Wechselspannungs-Token bestehen aus zwei Teilen. Ein Teil eines Wechselspannungs-Tokens drückt die Nicht-Null-wechselspannungskoeffizientengröße aus. Ein zweiter Teil Wechselspannungs-Token drückt einen Anzahl von benachbarten Nullwert-Koeffizienten aus, welche dem Nicht-Null-Wechselspannungskoeffizienten in der Zick-Zack-Reihenfolge vorausgingen. Ein Blockende-(EOB-)Token wird abgegeben, nachdem die letzten Nicht-Null-Koeffizienten in dem Block codiert worden sind (wenn nicht der allerletzte Koeffizient nicht-null ist).
  • Die Token werden von einer vorzeitigen Blockende-Schaltung 211 empfangen, welche die Anzahl an Token für einen ganz bestimmten Block auf eine vorherbestimmte Anzahl begrenzt. (Verarbeitungsblock 304). Dies wird in einer Ausführungsform dadurch erreicht, daß irgendein Token über der vorherbestimmten Anzahl abgebrochen wird. Die Token können dann im FIFO 212 gespeichert werden (Verarbeitungsblock 305). Der FIFO 212 wird verwendet, damit der Lauflängen-Codierer 203 und der Huffman-Codierer 204 synchron arbeiten, wenn es zwischen den beiden eine Raten-Fehlanpassung gibt. Wenn die Daten so codiert werden, wie sie verfügbar werden, so daß der Codierteil des Systems einer Pipeline ähnelt, ist der FIFO 212 nicht erforderlich.
  • Die Token werden von dem Huffman-Codierer 204 (von dem FIFO 212 aus oder von der vorzeitigen Blockende-Schaltung 211, wenn der FIFO 212 in dem System nicht enthalten ist) aufgenommen, welcher die Token in Code-Worte codiert (Verarbeitungsblock 306). Die von dem Huffman-Codierer 204 abgegebenen Code-Worte stellen die komprimierten Daten dar und werden an einen Kanal 205 abgegeben oder in einem Speicher gespeichert (Verarbeitungsblock 307).
  • Dekompression ist die Umkehr von Kompression. Die komprimierten Daten von dem Kanal 205 werden von einem Huffman-Decodierer 206 aufgenommen, welcher Token erzeugt (Verarbeitungsblock 308). Der FIFO 207 speichert die Token, bis sie ein Lauflängen-Decodierer 208 decodieren kann (Verarbietungsblock 309). Der Decodierer 208 decodiert die Token von dem FIFO 207, um Koeffizienten zu erzeugen (Verarbeitungsblock 310). Diese Koeffizienten werden von dem Transformations-Dekompressor 209 aufgenommen, welcher sie dann in Bilddaten dekomprimiert (Verarbeitungsblock 311).
  • Bei der Erfindung sind die FIFO-Speicher 212 und 207 freigestellt und können enthalten sein, um eine asynchrone Lösung beim Zwischenschalten zwischen Stufen zu schaffen, welche mit verschiedenen Raten arbeiten. Beispielsweise würde der FIFO 212 enthalten sein, wenn der Lauflängen-Codierer 203 und der Huffman-Codierer 204 mit verschiedenen Raten arbeiten, während der FIFO 207 enthalten sein würde, wenn der Huffman-Decodierer 206 und der Lauflängen-Decodierer 208 mit verschiedenen Raten arbeiten.
  • Bei der Erfindung ist die Größe des FIFO 207 begrenzt, indem die Anzahl an Code-Worten begrenzt wird, welche der Huffman-Decodierer 206 zu behandeln hat. Bei der Erfindung wird die Anzahl an Code-Worten, welche der Huffman-Decodierer 206 behandelt, durch die Anzahl an Code-Worten begrenzt, welche von dem Huffman-Codierer 204 erzeugt worden sind. Die Anzahl an Codeworten, welche von dem Huffman-Codierer 204 erzeugt worden sind, ist in direkte Beziehung zu der Anzahl an Token gebracht, die er behandelt. Um die Anzahl an Token zu begrenzen, welche aufgenommen werden, um dem Huffman-Codierer 204 codiert zu werden, werden gemäß der Erfindung Blöcke beschnitten, welche mehr als eine vorherbestimmte Anzahl von Token haben. Blöcke mit mehr als einer vorherbestimmten Anzahl an Token werden durch Erzwingen eines Blockende-Token beschnitten, wenn die Anzahl an Token, welche von dem Codierer 203 erzeugt worden sind, einen vom Benutzer gewählten Schwellenwert erreicht hat. In einer Ausführungsform ist die vorherbestimmte Anzahl an Token 32 Token pro Block. Da nur Nicht-Null-Koeffizienten Token erzeugen, werden durch das Begrenzen der Anzahl an Nicht-Null-Gleichspannungskoeffizienten in jedem Block die FIFO-Anforderungen reduziert. Folglich wird durch Erzwingen eines vorzeitigen Blockende-Token der früher als die normale Blockende-Bedingung erfolgt, die Anzahl an Token pro Block bei dem Huffman-Codierer 204 unmittelbar begrenzt.
  • Die Erfindung könnte verwendet werden, um die Größe des FIFO-Speichers 212 in dem Codierteil des Systems zu reduzieren, wenn es eine Raten-Fehlanpassung zwischen dem Lauflängen-Codierer 203 und dem Huffman-Codierer 204 gibt. In diesem Fall wird der Teil der Koeffizienten in einem Block, welche größer als eine vorherbestimmte Anzahl sind, beschnitten, so daß die Anzahl an Token, die erzeugt werden können, auf ein vorherbestimmtes Maximum begrenzt ist. Auf diese Weise wird die Anzahl an Token pro Block direkt begrenzt.
  • Die maximale Anzahl an Token pro Block, welche der Huffman-Codierer oder -Decodierer verarbeiten muß, kann entsprechend den Verhältnissen zwischen den verschiedenen Betriebsraten ausgelegt werden. Wenn beispielsweise der verlustbehaftete Kompressor mit einer Rate/Frequenz von 20MHz läuft und der Huffman-Codierer mit einer 10MHz-Token-Rate läuft, beträgt die maximale Durchschnittsrate (R–G), welche der Huffman-Codierer behandeln kann:
    Figure 00100001
    wobei die Komponenten in diesem Beispiel Koeffizienten sind. Folglich ist in diesem Beispiel die Anzahl an Token/Block auf 32 begrenzt. Dieses System gleicht auch einen Decodierer aus, welcher mit der halben Rate des verlustbehafteten Kompressors verläuft, ob es nun den Codierer gibt oder nicht.
  • Zu beachten ist, daß die Erfindung nicht auf Kompressions- und Dekompressionssysteme beschränkt ist, welche auf Blöcken basieren. Stattdessen kann die Erfindung bei anderen Schemen/Verfahren verwendet werden, in welchen die Daten in vordefinierte Einheiten aufgeteilt sind. Auch ist die Erfindung nicht auf ein Benutzen von Koeffizienten und Token beschränkt und kann daher bei Systemen verwendet werden, in welchen die Einheiten eine gewisse Anzahl von Komponenten enthalten.
  • Ein vorzeitiger Blockende-Prozeß der Erfindung ist in 4 dargestellt. Bei der Erfindung beginnt der Prozeß durch Initialisieren des Token-Zählens bei null (Verarbeitungsblock 400). In einer Ausführungsform kommt dies am Anfang jedes Blockes vor. Token werden als ein Ergebnis des Codierprozesses abgegeben. (Verarbeitungsblock 401). Als nächstes werden bei der Erfindung die Anzahl Token gezählt, wenn sie abgegeben werden (Verarbeitungsblock 402). Durch eine Kontrolle wird festgestellt, ob alle Token abgenommen worden sind (Verarbeitungsblock 403). Wenn dem so ist, endet die Verarbeitung dieses Blockes. Wenn dem nicht so ist, wird die Verarbeitung im Prozeßblock 404 fortgesetzt.
  • Bei einer Überprüfung wird bestimmt, ob die Anzahl. an abgegebenen Token den benutzer-spezifischen Grenzwert erreicht hat (Verarbeitungsblock 404). Bei einer Ausführungsform liegt der benutzer-spezifische Grenzwert bei 32 Token. Wenn dieser Grenzwert für einen vorgegebenen Block erreicht ist, wird die Verarbeitung beim Verarbeitungsblock 405 fortgesetzt, wo ein Blockende (EOB-)Token abgegeben wird, und die verbleibenden Koeffi zienten in diesem Block werden verworfen. Wenn der Grenzwert nicht erreicht worden ist, dann wird das Token noch abgegeben, um von dem Huffman-Decodierer codiert zu werden, und die Verarbeitung wird beim Verarbeitungsblock 401 fortgesetzt.
  • Der Ausgang des Systems ist vollständig JPEG-kompatibel. Ferner wird bei der Erfindung eine verlustbehaftete Stufe vor dem verlustfreien Codierer hinzugefügt. Durch das Hinzufügen der verlustbehafteten Stufe in dem Codierer ist gemäß der Erfindung ein Ausfallen in der verlustbehafteten Stufe in dem Decodierer infolge einer Raten-Fehlanpassung vermieden.
  • Es sollte beachtet werden, daß ein Verwerfen der restlichen Koeffizienten analog einem Quantisieren der Hochfrequenz-Koeffizienten schwerwiegender in diesen Blöcken ist. Zu beachten ist, daß nur auf Blöcke mit vielen Hochfrequenz-Koeffizienten eingewirkt wird. Ein Eliminieren der Hochfrequenz-Koeffizienten hat einen kaum visuell feststellbaren Nachteil bei den rekonstruierten Bildern zur Folge.
  • 5 ist ein Blockdiagramm einer Ausführungsform der Schaltungsanordnung die erforderlich ist, um ein vorzeitiges Blockende durchzuführen. In 5 weist die vorzeitige Blockende-Schaltung 500 einen Zähler 501, ein Register 502, einen Vergleicher 503, einen Multiplexer 504 und ein UND-Glied 505 auf. An den Freigabeeingang des Zählers 501 wird das TOKEN-CLK-Signal angelegt. An den Rücksetzeingang des Zählers 501 wird das BLOCK-CLK-Signal angelegt. Der Ausgang des Zählers 501 ist mit den A-Eingang des Vergleichers 503 verbunden. Der B-Eingang des Vergleichers 503 ist mit dem Ausgang des Registers 502 verbunden. Der Eingang des Registers 502 weist 6 Daten-Bit Leitungen D0 bis D5 und ein Schreibfreigabe-(WEN)Signal auf. Der Ausgang des Vergleichers 503 ist mit einem Eingang des UND-Glieds 505 verbunden. An den anderen Eingang des UND-Glieds 505 wird das TOKEN-CK-Signal angelegt. Das Ausgangssignal des UND-Glieds 505 ist der Huffman-Taktimpuls HUFFMAN-ENC-CLK. Der Ausgang des Vergleichers 503 ist auch mit dem Steuereingang des Multiplexers (MUX) 504 verbunden. An einen Eingang von MUX 504 werden die von dem Huffmann-Decodierer 504 erzeugten Token angelegt. An den anderen Eingang von MUX 504 wird das Blockende-Token angelegt (EOB-TOKEN). In einer Ausführungsform ist das EOB-TOKEN fest verdrahtet. In anderen Ausführungsformen wird das EOB-TOKEN programmiert. Der Ausgang von MUX 504 ist das mittels des Huffman-Codierers zu codierende Token (HUFFMAN-ENC-TOKEN).
  • Der Zähler 501 zählt die Anzahl Token in jedem Block über das TOKEN-CLK-Signal. Der Zähler 501 wird am Ende jedes Blockes rückgesetzt. In einer Ausführungsform wird der Zähler 501 mit Hilfe des BLOCK-CLK-Signals rückgesetzt, welches am Anfang eines neuen Blocks eingeführt wird. Das Register 502 enthält die maximale Anzahl von zulässigen Token. Der Wert wird in das Register 502 eingeschrieben, wobei das WEN-Signal eingefügt (aserting) wird. Wenn das WEN-Signal eingesetzt wird, werden die Bits an den Daten-Eingängen D0 bis D5 gehalten und in dem Register 502 gespeichert. Bei einer Ausführungsform ist ein Register 502 ein 6 Bit-Zähler, so daß Zahlen von 0 bis 63 gespeichert werden können.
  • Der Vergleicher 503 prüft den Wert des Zählers 501 gegenüber dem Wert im Register 502. Solange der Wert im Register 502 größer oder gleich dem Wert im Zähler 501 ist, ist der Ausgang des Vergleichers 503 "1" (d.h, hoch). Der "1"-Ausgang bewirkt das Auswählen der von dem MUX 504 abgegebenen Token, so daß ein Huffman-codiertes Token abgegeben wird. Der binäre "1"-Ausgang des Vergleichers 503 gibt das UND-Glied 505 frei, so daß, wenn der Token-Takt hoch wird, ein Taktsignal wirksam von dem UND-Glied 505 als das Huffman-codierte Taktsignal abgegeben wird. Wenn der Wert im Zähler 501 größer oder gleich dem wert im Register 502 ist, ist das Ausgangssignal des Vergleichers 503 eine Null, wodurch angezeigt wird, daß es über dem Token-Grenz wert liegt. In diesem Fall wird der Token-Taktausgang von dem UND-Glied 505 gesperrt, indem einer der Eingänge des UND-Glieds 505 0 ist. Ebenso bewirkt "0"-Ausgang des Vergleichers 503, daß der Nulleingang des MUX 504 gewählt wird, wodurch von dem MUX 504 das Blockende-(EOB-)Token abgegeben wird. Folglich wird, solange der Wert im Register 502 größer als der wert im Zähler 501 ist, ein Token erzeugt. Andernfalls wird das Blockende-Token abgegeben, und es werden keine weiteren Token erzeugt, bis der Zähler 501 durch die wahre Blockende-Bedingung rückgesetzt wird.
  • Die vorzeitige Blockende-Schaltung 500 kann gesperrt werden, indem das Register 502 um eins weniger als die Anzahl Pixels in dem Block initialisiert wird. In einer Ausführungsform, in welcher die Blöcke eine Größe von (8 x 8) haben, bewirkt ein Plazieren des Werts von 63 in dem Register 502, daß die vorzeitige Blockende-Schaltung 500 gesperrt wird. Dies ist darauf zurückzuführen, daß der Vergleicher immer "1" abgibt, bis der Token-Zählstand 63 oder größer ist. Zu diesem Zeitpunkt wird dann das Blockende automatisch irgendwie abgegeben. Daher wird niemals ein erzwungenes Blockende-Token erzeugt.
  • Gemäß der Erfindung bleibt der Decodierer unverändert. Daher ist, um die Erfindung durchzuführen, keine Änderung beim Decodieren der Erfindung erforderlich. Folglich können bereits existierende Decoder-Chips und -Auslegungen ohne weiteres verwendet werden, um den Decodierteil des Systems der Erfindung auszuführen.
  • Die festgestellte Bildqualität der Erfindung ist infolge des vorzeitigen Blockende-Token-Systems nicht herabgesetzt. In einem JPEG-System werden die Transformations-Koeffizienten nicht-gleichförmig quantisiert. Im allgemeinen werden die Hochfrequenz-Koeffizienten größer quantisiert, da das visuelle menschliche System weniger empfindlich ist bei hohen Raumfre quenzen. Nur durch Beschneiden von Hochfrequenz-Koeffizienten wird bei der Erfindung dieser Vorteil vorteilhaft ausgenutzt, um ein Bild mit im wesentlichen derselben Qualität wie bei einem Bild zu erzeugen, das ohne das vorzeitige Blockende gemäß der Erfindung komprimiert ist, soweit das visuelle menschliche System dies überhaupt wahrnehmen kann. Ferner sind die Blöcke, welche viele Nicht-Null-Wechselspannungskoeffizienten haben (und daher einem Beschneiden durch ein vorzeitiges Blockende unterzogen werden) visuell verrauscht. Das visuelle menschliche System ist unempfindlich gegenüber einer Quantisierung von verrauschten Bildbereichen, so daß ein wahrgenommener Qualitätsverlust im Bild gering ist. Folglich wird bei dem Verfahren und bei der Einrichtung der Erfindung die Anzahl an Gleichspannungs-Token pro Block von dem Codierer aus direkt begrenzt. Auf diese weise kann ein Decodierer einer vorherbestimmten Größe mit einer geringen Auswirkung auf die visuelle Qualität oder die Bitrate des Systems bei verringerten Hardware-Kosten erreicht werden.
  • Vorstehend ist somit ein Kompressions- und ein Dekompressionssystem beschrieben worden.
  • Zu 1
  • 110
    DATENEINGABE
    101
    VERLUSTBEHAFTETER KOMPRESSOR
    102a
    ZUSÄTZLICHER FIFO
    103
    CODIERER
    103a
    ZU KANAL ODER SPEICHER
    111
    REKONSTRUIERTER DATENEINGANG
    104
    VERLUSTBEHAFTETER DEKOMPRESSOR
    105a
    ZUSÄTZLICHER FIFO
    106
    DECODIERER
    106a
    VOM KANAL ODER SPEICHER
  • Zu 2
  • 202
    TRANSFORMATIONS-KOMPRESSOR
    203
    LAUFLÄNGEN-CODIERER
    211
    VORZEITIGES BLOCKENDE
    204
    HUFFMAN-CODIERER
    205
    KANAL
    206
    HUFFMAN-DECODIERER
    208
    LAUFLÄNGEN-DECODIERER
    209
    TRANSFORMATIONS-DEKOMPRESSOR
    209a
    ECHTZEIT-BILDDATEN
  • Zu 3
  • 301
    VIDEO-BILDDATEN ERZEUGEN
    302
    DIE VIDEO-BILDDATEN IN KOEFFIZIENTEN KOMPRIMIEREN
    303
    LAUFLÄNGEN-CODIEREN DER KOEFFIZIENTEN, UM TOKEN ZU ERZEUGEN
    304
    BEGRENZEN DER TOKEN AUF EINE VORHERBESTIMMTE ANZAHL
    305
    DIE TOKEN IN EINEM FIFO SPEICHERN (FREIGESTELLT)
    306
    TOKEN IN CODE-WORTE CODIEREN
    307
    CODE-WORTE AN KANAL ABGEBEN (ODER CODE-WORTE IN SPEICHER SPEICHERN)
    308
    HUFFMAN-DECODIEREN DER KOMPRIMIERTEN DATEN, UM TOKEN ZU ERZEUGEN
    309
    TOKEN IN EINEM FIFO SPEICHERN
    310
    TOKEN IM FIFO DECODIEREN, UM KOEFFIZENTEN ZU ERZEUGEN
    311
    DIE KOEFFIZIENTEN IN VIDEO-BILDDATEN DEKOMPRIMIEREN
  • Zu 4
  • 400
    TOKEN-ZÄHLWERT AUF NULL INITIALISIEREN
    401
    EIN TOKEN ABGEBEN
    402
    DIE ANZAHL TOKEN SO ZÄHLEN, WIE SIE ABGEGEBEN WERDEN
    403
    SIND ALLE TOKEN VON DEM BLOCK ERSCHÖPFT?
    404
    IST ZÄHLWERT > BENUTZERSPEZIFIZIERTER GRENZWERT?
    405
    BLOCKENDE-TOKEN WIRD ABGEGEBEN UND VERBLEIBENDE KOEFFIZIENTEN IN DIESEM BLOCK WERDEN AUSGESCHIEDEN
  • ZU 5
  • 501
    ÄHLER
    505
    UND-GLIED
    503
    VERGLEICHER ≥

Claims (15)

  1. Kompressions-/Dekompressionsverfahren, zum Verarbeiten von Bilddaten, welches die Schritte aufweist: – Transformation der Bilddaten in den Frequenzbereich mit Hilfe eines Transformations-Kompressors, wobei Transformationskoeffizienten erzeugt werden, die in einer Anzahl Blöcke angeordnet sind; – erstes Codieren der Anzahl Koeffizienten jeder der Anzahl Blöcke, um eine Anzahl Token zu erzeugen; zweites Codieren der Anzahl Token in eine Anzahl Code-Worte, wobei der Schritt, zweites Codieren, ein Begrenzen der Anzahl von Token auf eine vorherbestimmte Anzahl einschließt; erstes Decodieren der Anzahl Token in eine Anzahl decodierter Token; – Speichern der Anzahl decodierter Token in einem Puffer; zweites Decodieren der Anzahl decodierter Token, die in dem Puffer gespeichert sind, um eine Anzahl Koeffizienten zu erzeugen: und – Dekomprimieren der Koeffizienten in den Bilddaten und – Rücktransformation der Koeffizienten in die Bilddaten.
  2. Verfahren nach Anspruch 1, bei welchem der Schritt, zweites Codieren, den Schritt eines Huffman-Codierens aufweist, und der Schritt, erstes Decodieren, ein Huffman-Decodieren aufweist.
  3. Verfahren nach Anspruch 1 oder 2, bei welchem der Begrenzungsschritt die Schritte aufweist: – Zählen der Anzahl an codierten Token, um einen Zählwert zu erzeugen; – Vergleichen des Zählwerts mit der vorherbestimmten Anzahl, und Abgeben einer Blockende-Anzeige, wenn der Zählwert größer als die vorherbestimmte Anzahl für den Rest des Blockes ist.
  4. Verfahren nach Anspruch 1, bei welchem die vorherbestimmte. Anzahl entsprechend der Größe des Pufferspeichers verbraucherspezifiziert ist.
  5. Kompression-/Dekompressionsverfahren zum Verarbeiten von Bilddaten, welches die Schritte aufweist, – Transformation der Bilddaten in den Frequenzbereich mit Hilfe eines JPEG-Kompressors, wobei Transformationskoeffizienten erzeugt werden, die in einer Anzahl Blöcke angeordnet sind, – Lauflängen-Codieren der Anzahl Koeffizienten, um eine Anzahl 10 Token zu erzeugen; Huffman-Codieren der Anzahl Token in eine Anzahl Code-Worte, wobei der Schritt Huffman-Codieren das Begrenzen der Anzahl Token auf eine vorherbestimmte Anzahl einschließt; Huffman-Decodieren der Anzahl Token in eine Anzahl codierter Token; Speichern der Anzahl decodierter Token in einem Puffer; Lauflängen-Decodieren der Anzahl decodierter Token, die in dem Puffer gespeichert sind, um eine Anzahl Koeffizienten zu erzeugen, und Rücktransformation der Koeffizienten in die Bilddaten.
  6. Verfahren nach Anspruch 5, bei welchem der Begrenzungsschritt die Schritte aufweist: – Zählen der Anzahl codierter Token, um eine Zählwert zu erzeugen; – Vergleichen des Zählwerts mit der vorherbestimmten Anzahl, und Abgeben einer Blockende-Anzeige, wenn der Zählwert größer als die vorherbestimmte Anzahl für den Rest des Blockes ist.
  7. Verfahren nach Anspruch 6, bei welchem der Abgabeschritt ein Abgeben eines Blockende-Token aufweist.
  8. Dekompressionssystem zum Dekomprimieren von komprimierten Daten, wobei die komprimierten Daten durch eine zweite Codiereinheit aus einer vorherbestimmten Anzahl Token, die von einem ersten Codierer auf der Codiererseite bereitgestellt wurden, erzeugt wurden, gekennzeichnet durch – eine erste Decodiereinrichtung zum Aufnehmen der komprimierten Daten um wieder eine Anzahl Token zu erzeugen, wobei die erste Decodiereinrichtung mit einer bestimmte Wort-Ausgaberate arbeitet, – Pufferspeicher, um die Anzahl Token aufzunehmen, wobei der Pufferspeicher eine vorherbestimmte Größe hat, und – zweite Decodiereinrichtung, um die Anzahl Token von dem Pufferspeicher aufzunehmen, um die Anzahl Token in Koeffizienten zu decodieren, wobei die zweite Decodiereinrichtung ein Variabler-Längen-Decodierer ist, welcher bei einer bestimmten Wort-Eingangsrate arbeitet, wobei die Worteingaberate des zweiten Decoders höher ist als die Wortausgabe-Rate des ersten Decoders.
  9. Dekompressionssystem zum Dekomprimieren von komprimierten Daten, wobei die komprimierten Daten durch eine zweite Codiereinheit aus einer vorherbestimmten Anzahl Token, die von einem ersten Codierer auf der Codiererseite bereitgestellt wurden, erzeugt wurden, gekennzeichnet durch – eine erste Decodiereinrichtung zum Aufnehmen der komprimierten Daten, um wieder eine Anzahl Token zu erzeugen, wobei die erste Decodiereinrichtung mit einer bestimmten Wort-Ausgaberate arbeitet, – Pufferspeicher, um die Anzahl Token aufzunehmen, wobei der Pufferspeicher eine vorherbestimmte Größe hat, und – zweite Decodiereinrichtung, um die Anzahl Token von dem Pufferspeicher aufzunehmen, um die Anzahl Token in Koeffizienten zu decodieren, wobei die zweite Decodiereinrichtung ein Variabler-Längen-Decodierer ist, welcher bei einer bestimmten Wort-Eingangsrate arbeitet, wobei die Worteingaberate des zweiten Decodierens höher ist als die Wortausgabe-Rate des ersten Decodierens; – einen Rücktransformator, der die Anzahl Koeffizienten in Bilddaten rücktransformiert.
  10. System nach Anspruch 8 oder 9, bei welchem der Pufferspeicher ein FIFO-Speicher aufweist.
  11. System nach Anspruch 8 oder 9, bei welchem der Pufferspeicher die Token speichert.
  12. System nach Anspruch 8 oder 9, wobei die vorherbestimmte Anzahl Token aufweist.
  13. System nach Anspruch 8 oder 9, bei welchem die erste Decodiereinrichtung einen Huffman-Decodierer aufweist.
  14. System nach Anspruch 8 oder 9, bei welchem die zweite Decodiereinrichtung einen Lauflängen-Codierer aufweist.
  15. System nach Anspruch 9, bei welchem der Transformationskompressor einen JPEG-Kompressor aufweist.
DE4429017A 1993-08-17 1994-08-16 Verfahren zum Codieren von Daten in einem Datenkompressionssystem, Kompressions/Dekompressionsverfahren sowie Dekompressionssystem zum Dekomprimieren von komprimierten Daten Expired - Fee Related DE4429017B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10737693A 1993-08-17 1993-08-17
US107376 1993-08-17

Publications (2)

Publication Number Publication Date
DE4429017A1 DE4429017A1 (de) 1995-04-27
DE4429017B4 true DE4429017B4 (de) 2005-10-13

Family

ID=22316320

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4429017A Expired - Fee Related DE4429017B4 (de) 1993-08-17 1994-08-16 Verfahren zum Codieren von Daten in einem Datenkompressionssystem, Kompressions/Dekompressionsverfahren sowie Dekompressionssystem zum Dekomprimieren von komprimierten Daten

Country Status (3)

Country Link
US (1) US5535290A (de)
JP (1) JP3247804B2 (de)
DE (1) DE4429017B4 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0576749B1 (de) 1992-06-30 1999-06-02 Discovision Associates Datenpipelinesystem
US6112017A (en) 1992-06-30 2000-08-29 Discovision Associates Pipeline processing machine having a plurality of reconfigurable processing stages interconnected by a two-wire interface bus
US6067417A (en) 1992-06-30 2000-05-23 Discovision Associates Picture start token
US5809270A (en) 1992-06-30 1998-09-15 Discovision Associates Inverse quantizer
US6330665B1 (en) 1992-06-30 2001-12-11 Discovision Associates Video parser
US6047112A (en) 1992-06-30 2000-04-04 Discovision Associates Technique for initiating processing of a data stream of encoded video information
US5603012A (en) 1992-06-30 1997-02-11 Discovision Associates Start code detector
US5768561A (en) 1992-06-30 1998-06-16 Discovision Associates Tokens-based adaptive video processing arrangement
US5835740A (en) 1992-06-30 1998-11-10 Discovision Associates Data pipeline system and data encoding method
US6079009A (en) 1992-06-30 2000-06-20 Discovision Associates Coding standard token in a system compromising a plurality of pipeline stages
US5861894A (en) 1993-06-24 1999-01-19 Discovision Associates Buffer manager
US5805914A (en) 1993-06-24 1998-09-08 Discovision Associates Data pipeline system and data encoding method
US5878273A (en) 1993-06-24 1999-03-02 Discovision Associates System for microprogrammable state machine in video parser disabling portion of processing stages responsive to sequence-- end token generating by token generator responsive to received data
JP3332580B2 (ja) * 1994-06-14 2002-10-07 キヤノン株式会社 画像再生装置及び画像再生方式
US5654806A (en) * 1996-05-06 1997-08-05 Xerox Corporation Code manipulation for a high speed JPEG decoder
US5959560A (en) * 1997-02-07 1999-09-28 Said; Amir Data compression via alphabet partitioning and group partitioning
US6266419B1 (en) 1997-07-03 2001-07-24 At&T Corp. Custom character-coding compression for encoding and watermarking media content
US6111844A (en) * 1997-07-03 2000-08-29 At&T Corp. Quality degradation through compression/decompression
KR100354531B1 (ko) 1998-05-06 2005-12-21 삼성전자 주식회사 실시간 복호화를 위한 무손실 부호화 및 복호화 시스템
US7167259B2 (en) 2000-05-16 2007-01-23 International Business Machines Corporation System and method for merging line work objects using tokenization and selective compression
US9267232B2 (en) 2005-03-24 2016-02-23 Tarkett Inc. Synthetic turf system having an infill trapping structure
US7668186B1 (en) * 2006-03-07 2010-02-23 Xilinx, Inc. Token ecosystem for buffer management
US9418450B2 (en) 2006-08-31 2016-08-16 Ati Technologies Ulc Texture compression techniques
US8458457B2 (en) * 2007-02-02 2013-06-04 Red Hat, Inc. Method and system for certificate revocation list pre-compression encoding
US20230052538A1 (en) * 2021-08-13 2023-02-16 Meta Platforms, Inc. Systems and methods for determining token rates within a rate-distortion optimization hardware pipeline

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4394774A (en) * 1978-12-15 1983-07-19 Compression Labs, Inc. Digital video compression system and methods utilizing scene adaptive coding with rate buffer feedback
EP0426260A2 (de) * 1989-11-03 1991-05-08 Datacube Inc. Adaptiver Zonenkodierer
US5046121A (en) * 1989-01-31 1991-09-03 Konica Corporation Image data compression apparatus
US5051840A (en) * 1988-12-14 1991-09-24 Fuji Photo Film Co., Ltd. Device for coding a picture signal by compression

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4922273A (en) * 1987-04-02 1990-05-01 Konica Corporation Compression method of halftone image data
FR2630277B1 (fr) * 1988-04-15 1992-10-16 Thomson Csf Procede de codage et de decodage d'informations, par blocs, et dispositifs de codage et de decodage, pour la mise en oeuvre de ce procede
US5086488A (en) * 1989-08-19 1992-02-04 Mitsubishi Denki Kabushiki Kaisha Transform coding apparatus
US5142380A (en) * 1989-10-23 1992-08-25 Ricoh Company, Ltd. Image data processing apparatus
JP3071205B2 (ja) * 1990-01-23 2000-07-31 オリンパス光学工業株式会社 画像データの符号化装置および符号化方法
US5303058A (en) * 1990-10-22 1994-04-12 Fujitsu Limited Data processing apparatus for compressing and reconstructing image data
US5262854A (en) * 1992-02-21 1993-11-16 Rca Thomson Licensing Corporation Lower resolution HDTV receivers

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4394774A (en) * 1978-12-15 1983-07-19 Compression Labs, Inc. Digital video compression system and methods utilizing scene adaptive coding with rate buffer feedback
US5051840A (en) * 1988-12-14 1991-09-24 Fuji Photo Film Co., Ltd. Device for coding a picture signal by compression
US5046121A (en) * 1989-01-31 1991-09-03 Konica Corporation Image data compression apparatus
EP0426260A2 (de) * 1989-11-03 1991-05-08 Datacube Inc. Adaptiver Zonenkodierer

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ISO/IEC 11172-3, International Standard, First edition, 1993-08-01 *
TEICHNER, D.: Der MPEG-2-Standard. In: FKT, 48. Jg., Nr. 4/1994, S. 155-163 *

Also Published As

Publication number Publication date
JPH07106979A (ja) 1995-04-21
US5535290A (en) 1996-07-09
DE4429017A1 (de) 1995-04-27
JP3247804B2 (ja) 2002-01-21

Similar Documents

Publication Publication Date Title
DE4429017B4 (de) Verfahren zum Codieren von Daten in einem Datenkompressionssystem, Kompressions/Dekompressionsverfahren sowie Dekompressionssystem zum Dekomprimieren von komprimierten Daten
DE69015695T2 (de) Einrichtung zur Transformationskodierung.
DE69535569T2 (de) Verfahren zur Synchronisationsrückgewinnung und Vorrichtung zur variablen Längendekodierung
DE69735679T2 (de) Verfahren zur Bilddecodierung
DE19840835C2 (de) Vorrichtung und Verfahren zum Entropiecodieren von Informationswörtern und Vorrichtung und Verfahren zum Decodieren von Entropie-codierten Informationswörtern
DE69127739T2 (de) Bilddatenverarbeitungsgerät
DE69932959T2 (de) Verlustfreies Kodierungs- und Dekodierungsverfahren
DE69122595T2 (de) Aufzeichnungs- und Abspielgerät
DE69014440T2 (de) Sprachcodierungs-/-decodierungssystem.
DE68927960T2 (de) Bildsignal-, Kodier- und Dekodiervorrichtung
DE3850035T2 (de) Datenkomprimierungssystem mit Expandierungsschutz.
DE3750853T2 (de) Verfahren zur Bildsignalkodierung mittels Orthogonal-Transformation.
DE69726661T2 (de) Verfahren und vorrichtung zur kodierung eines digitalen informationssignales
DE69813349T2 (de) Vorrichtung zur Kontrolle der Datenmenge und Kodierer dieselbige anwendend
DE3851164T2 (de) Verfahren und Vorrichtung zur variablen Längenkodierung.
DE69535710T2 (de) Dekodierer variabler Länge für bitgestopfte Daten
DE60211171T2 (de) Verarbeitung von einem komprimierten mediensignal
DE19634600A1 (de) Bildsignalkodiervorrichtung und zugehöriges Verfahren
DE4217008C2 (de) HDTV-Dekodierer
DE4241131A1 (en) Signal encoder selecting suitable signal transformation - selects output from parallel connected transformation unit having greatest measured energy and encodes
DE69735835T2 (de) Dekodierer variabler Länge und Verfahren zur Dekodierung zweier Kodewörter pro Takt
EP1472888B1 (de) Kontextsensitive kodierung und dekodierung eines videodatenstroms
DE69928616T2 (de) System zur extrahierung von codierungsparametern aus videodaten
EP1277346B1 (de) Vorrichtung und Verfahren zum Analysieren der spektralen Darstellung eines decodierten Zeitsignales
EP0752788A2 (de) Videocoder und -decoder

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20130301