DE2340250C2 - Verfahren und Vorrichtung zur redundanzreduzierenden Codierung eines aus Blöcken zu je N Bits bestehenden Nachrichtenstromes - Google Patents

Verfahren und Vorrichtung zur redundanzreduzierenden Codierung eines aus Blöcken zu je N Bits bestehenden Nachrichtenstromes

Info

Publication number
DE2340250C2
DE2340250C2 DE2340250A DE2340250A DE2340250C2 DE 2340250 C2 DE2340250 C2 DE 2340250C2 DE 2340250 A DE2340250 A DE 2340250A DE 2340250 A DE2340250 A DE 2340250A DE 2340250 C2 DE2340250 C2 DE 2340250C2
Authority
DE
Germany
Prior art keywords
binary
line
coding
circuit
shift register
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
Application number
DE2340250A
Other languages
English (en)
Other versions
DE2340250A1 (de
Inventor
Lalit Yorktown Heights N.Y. Bahl
Daniel I. Tel Aviv Barnea
Hisashi Mohegan Lake N.Y. Kobayashi
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2340250A1 publication Critical patent/DE2340250A1/de
Application granted granted Critical
Publication of DE2340250C2 publication Critical patent/DE2340250C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • H04N1/411Bandwidth or redundancy reduction for the transmission or storage or reproduction of two-tone pictures, e.g. black and white pictures
    • H04N1/413Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information
    • H04N1/417Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information using predictive or differential encoding
    • H04N1/4175Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information using predictive or differential encoding involving the encoding of tone transitions with respect to tone transitions in a reference line

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

a) Lokalisieren der binären Einsen in einem Block /— 1 des Nachrichtenstromes und Speichern der Bitstellennummer j'i jeder binären Eins dieses Blockes,
b) Lokalisieren der binären Einsen in dem nachfolgenden Block / und Speichern der Bitsteilennummer/t+t jeder binären Eins dieses Blockes,
c) Berechnen einer ganzen Zahl /als Funktion des. Abstandes zwischen der Stelle einer binären Eins im Block ι und der zugeordneten Stelle einer binären Eins im Block /-1,
d) Erzeugen eines eindeutigen Codewertes, dessen Länge vom Wert der Zahl / abhängt und Übertragen dieses Codewortes zu einer Empfangsstation.
2. Vorrichtung zur Durchführung des Verfahrens nach Anspruch !,gekennzeichnetdurch
a) eine erste Lokalisierschaltung (14, Fig. IA) zum Lokalisieren der binären Einsen in einem Block (/'— 1) und zum Speichern der Bitstellennummer// jeder binären Eins dieses Blocks,
b) eine zweite Lokalisierschaltung (16) zum Lokalisieren der binaren Einsen in dem nachfolgenden Block / und zum Speichern der Bitstellennummer/*+] jeder binären Eins im Block λ
c) eine Schaltung (28) zur Berechnung einer ganzen Zahl /als Funktion des Abstandes jeder binären Eins im Block i, von der jeweils zugeordneten binären Eins im Block /—1,
d) einen Codewortgenerator (30), der aus der Zahl / ein eindeutiges Codewort erzeugt, dessen Länge vom Wert der Zahl /abhängt, und
e) eine Ausgabeschaltung (32) zur Übertragung des Codewortes zu einer Empfangsstation.
50
3. Vorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Schaltung zur Berechnung der ganzen Zahl /enthält:
a) eine Schaltung (20) zur Berechnung einer Größe Ib nach der Gleichung Ib=N-J'/, in der Λ/die Nummer der letzten Bitstelle eines durch Abtasten einer Zeile eines Dokumentes gebildeten Blocks und//die Stelle einer binären Eins in der Abtastzeile /— 1 bezeichnet,
b) eine Schaltung (22) zur Berechnung einer Größe Ia nach der Gleichung U=j'i—jk— 1, in der jk die Stelle der vorher gefundenen binären Eins in der Zeile /bezeichnet,
c) eine Schaltung (24) zur Berechnung einer Größe /) nach der Gleichung /i=l/*+i-//|, in der jk+\ die Stelle einer gerade gefundenen binären Eins in der Zeile /bezeichnet,
d) eine Schaltung 26 zur Berechnung einer Größe h durch Auswahl der kleineren der Größen U und/flund
e) eine Schaltung (28) zur Berechnung der Zahl / nach einer der folgenden Gleichungen:
undyt+1 >jj ist /- 2Z1 + 1 wenn I1^I1 undA+i ^Jl I= Ii+I2 +I wenn /, > J2
4. Vorrichtung nach den Ansprüchen 2 und 3, dadurch gekennzeichnet, daß der Codewortgenerator einen Speicher (32; Fig.6C) enthält, in dem eine Reihe von Codewörtern unterschiedlicher Länge gespeichert sind, deren jedes durch eine eindeutige Indexzahl identifiziert ist, und daß eine Vorrichtung zum Tabellenlesen vorgesehen ist, über die unter Benutzung der ganzen Zahl / als Index für den Speicherzugriff zu einem Codewort möglich ist, das der Ausgabeschaltung zugeführt wird.
5. Vorrichtung nach den Ansprüchen 2 bis 4, dadurch gekennzeichnet, daß der Codewortgenerator enthält:
a) ein erstes Schieberegister zur Aufnahme der ganzen Zahl /,
b) ein zweites mit dem ersten verbundenes Schieberegister,
c) eine Steuerschaltung für das Verschieben der binär dargestellten Zahl /aus dem ersten in das zweite Schieberegister, bis nur noch die höherstelligen Bits sich im ersten Schieberegister befinden,
d) an die Steuerschaltung angeschlossene Zähler zur Zählung der Anzahl der Verschiebungen,
e) eine Schaltung zur Erzeugung eines binären »1 «-Signals bei jeder Erhöhung des Zählerinhaltes, und
f) eine Schaltung zur Übertragung eines binären »u«-Signals, nachdem die Schaltung nach Merkmal e) keine »!«-Signale mehr liefert
Die Erfindung bezieht sich auf ein Verfahren und eine Vorrichtung zur redundanzreduzierenden Codierung eines aus Blöcken zu je N Bits bestehenden Nachrichtenstromes, bei dem ein Block aus den beim Abtasten einer Zeile einer Vorlage erhaltenen Bits besteht
Bei der Übertragung digitaler Daten ist es sehr erwünscht, die Menge der Daten, deren Übertragung notwendig ist, zu verringern. Verschiedene Verfahren sind auf dem Gebiet der Bildtelegraphie-Kopiergeräte angegeben worden, um eine Verdichtung binärer Daten für die Übertragung zu erreichen. Ein solches Verfahren ist angegeben worden in der Veröffentlichung »Entropy of Printed Matter« von R. B. Arps, Report 31, Stanford Electronics Laboratory, 1969. Vorhersagende Codierverfahren, wie sie in der genannten Veröffentlichung diskutiert werden, sagen ganz allgemein Informationsbits vorher aufgrund der Bildpunkte, die den vorherzusagenden umgeben und summieren dann die Vorhersage mit dem tatsächlichen Informationsbit in einer Modulo-2-Addition. Dies hat ein Fehlermuster zur Folge, das sehr wenige binäre Einsen aufweist, da die Information ganz allgemein dazu tendiert, einen hohen
Grad von Redundanz aufzuweisen, und die meisten Vorhersagen werden daher als richtig befunden. Andere Beispiele für vorhersagende Codiereinrichtungen sind in dem US Patent 29 05 756 beschrieben.
Ein Codierverfahren, das verwendet werden kann, um Daten zu verdichten, wenn die Eingangsfolgen lange Perioden von relativ konstanten Sigpslen aufweisen, ist die Lauflängencodierung. Bei dieser Codierung wird jedes Bit in der Datenfolge verglichen mit dem vorhergehenden Bit, und ein Ausgangscode »1« wird nur erzeugt, wenn eine Änderung auftritt Es wird eine Zählung der Anzahl von Null-Ausgangssignalen zwischen aufeinanderfolgenden Eins-Ausgangssignalen vorgenommen, und das Zählergebnis wird codiert und der Ausgangsschaltung zugeführt Ein Beispiel für einen Lauflängencodierer ist in dem US Patent 32 13 268 beschrieben.
Aus der deutschen Offenlegungsschrift 21 01 447 ist es bekannt bei der Lauflängencodierung zur Erzeugung einer komprimierten Digitaldarstellung eines zu übertragenden Bildes auch die in zwei aufeinanderfolgenden Abtastzeilen enthaltene Redundanz zu berücksichtigen.
Ein Problem, das bei der Lauflängencodierung auftritt, besteht darin, daß bei rasch aufeinanderfolgenden Änderungen der abgetasteten Bitwerte dieses Codierverfahren anstatt zu einer Datenverdichtung zu einer Datenerweiterung führen kann. Beispielsweise findet man beim Codieren einer Reihe von Zeilen eines Dokumentes, auf dem sich ein dichter schreibmaschinengeschriebener Text befindet, lange Reihen von gleichen Daten im allgemeinen nicht mit Ausnahme derjenigen Gebiete, in denen eine Hintergrundinfo· mation vorhanden ist
Der Erfindung liegt daher die Aufgabe zugrunde, ein Codierverfahren anzugeben, das auch bei rasch aufeinanderfolgenden Änderungen der abgetasteten Bitwerte noch eine Verdichtung der zu übertragenden Daten liefert
Diese Aufgabe wird mit Hilfe eines Verfahrens zur redundanzreduzierenden Codierung eines aus Blocken zu je N Bits bestehenden Nachrichtenstromes, bei dem ein Block aus den beim Abtasten einer Zeile einer Vorlage erhaltenen Bits besteht, gelöst, das bei der Codierung sowohl die innerhalb eines Blockes vorhandene Redundanz als auch die zwischen zwei aufeinanderfolgenden Blöcken bestehende berücksichtigt und durch folgende Verfahrensschritte gekennzeichnet ist:
a) Lokalisieren der binären Einsen in einem Block 1—1 des Nachrichtenstromes und Speichern der Bitstellennummer j'i jeder binären Eins dieses Blockes,
b) Lokalisieren der binären Einsen in dem nachfolgenden Biock / und Speichern der Bitstellennummer jk+1 jeder binären Eins dieses Blockes,
c) Berechnen einer ganzen Zahl / als Funktion des Abstandes zwischen der Stelle einer binären Eins im Block 1 und der zugeordneten Stelle einer binären Eins im Block /— 1,
d) Erzeugen eines eindeutigen Codewortes, dessen Länge vom Wert der Zahl / abhängt und Übertragen dieses Codewortes zu einer Empfangsstation.
Im folgenden wird die Erfindung in Verbindung mit den Zeichnungen näher beschrieben, von denen zeigt bzw. zeigen
Fie. IA und IB ein Blockschaltbild des Datenverdichtungssystems,
F i g. 2 ein Diagramm der Wahrscheinlichkeitsverteilung für das Vorhandensein einer binären Eins an aufeinanderfolgenden Bitstellen in einer Zeile eines Dokumentes, wie sie bei der üblichen Lauflängencodierung benutzt wird, unter der Voraussetzung, daß der Wert an deryi-ten Stelle Eins beträgt,
F i g. 3 eine graphische Darstellung der Wahrscheinlichkeitsverteilung für das Vorhandensein einer binären Eins an aufeinanderfolgenden Bitstellen einer Zeile / eines Dokumentes, wie sie bei der Differenzcodierung angewendet wird, unter der Voraussetzung, daß der Wert der >ten Stelle in der Zeile 1-1 und der jit-ten Stelle auf der Zeile /beide Eins sind,
F i g. 4 Beispiele für die vier möglichen Fälle bei der Berechnung einer ganzzahligen Differenz,
p i g. 5 eine schematische Darstellung eines Beispiels für das Codierverfahren, wie es für zwei aufeinanderfolgende Zeilen eines digitalisierten Dokumentes Anwendung findet
F i g. 6A, 6B und 6C ein Schaltbild einer Vorrichtung zur Durchführung der Differenzcodierung,
F i g. 7 ein Schaltbild einer Vorrichtung zur Bildung eines zu übertragenden Codewortes.
Bei der bekannten Lauflängencodierung ist es allgemein erwünscht die Stellen der binären Einsen in jeder Zeile zu codieren. Es werde angenommen, daß π binäre Eines in einer Zeile /an den Stellen (i,j\\ (i, }&..., (i, ja) vorhanden sind und daß der Codierer gerade das Codieren des Vorhandenseins eins binären Eins-Bits in der Stelle jk beendet hat Dann kann das nächste binäre Eins-Bit in irgendeiner der A/-./* Stellen./*+ \Jk+2,..., N, vorhanden sein, wobei N die letzte Bitstelle in der Zeile i darstellt Die wahrscheinlichste Stelle für das Auftreten der nächsten binären Eins ist j»+l, die nächste wahrscheinliche Stelle ist y*+2 usw. Die den Stellen zugeordneten Wahrscheinlichkeiten für das nächstwahrscheinliche Auftreten einer binären Eins sind in F i g. 2 dargestellt. Die senkrechten Linien in F i g. 2 sind eine Anzeige für die Wahrscheinlichkeit, eine binäre Eins an einer Stelle vorzufinden, wobei eine längere Linie eine höhere Wahrscheinlichkeit anzeigt. Wenn die nächste binäre Eins, die auf die Stelle (i, jk) folgt, in der Stelle (i, jk+1) erscheint, wird diese Bitstelle durch das Codewort codiert, das der Gleichung entspricht L=fk+\—jk- Daher wird jede binäre Eins in der Zeile transformiert in eine ganze Zahl (seine Lauflänge von der voraufgehenden binären Eins in der Zeile), die dann codiert wird in einer Form der Lauflängencodierung. Wenn die binären Einsen mehr oder weniger unabhängig auftreten, wird die Verteilung der ganzen Zahlen L angenähert durch eine geometrische Verteilung, für die optimale Codierverfahren bekannt sind. Als Beispiel sei das Verfahren erwähnt, das S. W. Golomb beschreibt in dem Aufsatz »Run Length Encoding«, IEEE Transactions on Information Theory, IT-12, Seiten 399 bis 401, JuIi 1966.
Wenn jedoch die verdichteten Daten einem Schriftstück entstammen, das eine strenge Korrelation zwischen der Information in aufeinanderfolgenden Zeilen besitzt ist es möglich, einen Differenzcode zur Angabe der Stelle jeder binären Eins in der Zeile zu verwenden. Es sei bemerkt, daß die Redundanz zwischen aufeinanderfolgenden Zeilen deutlicher hervortritt wenn anstatt der direkten Codierung der digitalisierten Information eines Dokumentes die digitalisierte Information zuerst in ein Vorhersagefehlermuster transformiert wird. Ein Beispiel für eine
Vorrichtung zur Entwicklung eines Vorhersagefehlermusters ist in der eingangs erwähnten Veröffentlichung von Arps angegeben. Es ist auch möglich, einen sehr einfachen Prädiktor zu verwenden, wie beispielsweise einen Punktprädiktor, der nur den voraufgehenden Punkt in der Zeile benutzt, um den nächsten Punkt vorherzusagen.
Bei dem Differenzcodierverfahren, das hier dargestellt wird, werden die Stellen mit binären Einsen in einer voraufgehenden Zeile dazu benutzt, die Stellen mit binären Einsen in der laufenden Zeile zu codieren. Die binären Einsen in der Zeile /-1 mögen sich an den
Stellen (i-1,/,), (i- \J'2) (i- \J'„)befinden. Bei der
üblichen Lauflängencodierung kann die (k+\) binäre Eins sich in irgendeiner der N-jk auf jk folgenden Stellen befinden. Die binäre Eins in der voraufgehenden Zeile, die als Bezugspunkt zu benutzen ist, ist definiert durch
Es sei Z1 -\jk+i-j',\ Es sei I2 = min (IA, IB)
40
dann gibt es vier mögliche Fälle, für die Beispiele in der Fig. 4 gezeigt sind. Die Fälle sind die folgenden:
Falll -/= 1 wenn/,=0
Fall 2- I=II1 wenn I2^Z1 undA+1 >j', Fall 3 - Z = 2Z1 +1 wenn I2>Z, und A+i <j'i M Fall 4 - Z = 1 +Z1 + Z2 wenn Z2 < Z,
Es sei bemerkt, daß der Fall 1 in den Fail 3 eingeschlossen sein kann durch ändern von
55
Die vier in Fig.4 dargestellten Fälle illustrieren die Stellen der binären Einsen in den Zeilen /'— 1 und / und die Werte von IA, Ib, /i und I2. Ein .^bezeichnet die Stelle einer binären Eins und ein - zeigt eine binäre Null an.
Für einen speziellen Fall codiert das Verdichtungssystem nach dem Berechnen der Zahl /diese durch einen geeigneten Verdichtungscode. Da die Wahrscheinlichkeitsverteilung der Zahl / nicht geometrisch ist, sind übliche Verfahren zur Lauflängencodierung, wie sie oben beschrieben wurden, nicht für die Codierung von / geeignet Es wurde gefunden, daß die Verteilung für die Zahl /sehr gut angenähert wird durch Wahrscheinlichkeit (I) t» 2"("+" wenn
Ein optimaler Code für diese Verteilung wird folgendermaßen erhalten. Es seien y, y2 ... yb die b niederstelligsten Bits in der binären Darstellung von /, wobei 2» ^ /< 2fr+ K Das Codewort C (I) für /ist definiert durch
C(Z) = 1 1...1 Oy1
Vb
20
Wenn j'i die Stelle der ersten binären Eins nach der Stelle jk in der Zeile /1 ist dann wird erwartet daß der nächste Fehler in der Zeile / sich in der Nachbarschaft von j'i befindet. Die wahrscheinlichste Stelle für die (k+1) binäre Eins in Zeile Ost j'i, die nächstwahrscheinliehen Stellen sind //+1 und j'i-1 usw. F i g. 3 stellt graphisch die Wahrscheinlichkeitsverteilung dar für das Finden einer binären Eins an aufeinanderfolgenden Stellen /in bezug auf das Vorhandensein einer Binären Eins an der Stelle j'i in der Zeile ;'— 1.
Es gibt Ia= j'i—jk— 1 Stellen links von j'i und Ib" N-j'i Stellen rechts von/λ in denen die binäre Eins auftreten kann. Jede Stelle auf der Zeile /ist eine ganze Zahl /=1,2,..., N-jk zugeordnet die die Wahrscheinlichkeit für das Auftreten der (k+1) binären Eins in dieser Stelle angibt. Die Zahl /, die dem tatsächlichen Auftreten der binären Eins an der Stelle JJt+1 entspricht kann folgendermaßen berechnet werden:
Dieses Codewort C (I) besteht aus b binären Einsen, auf die eine Null folgt, auf die die letzten b Bits der binären Darstellung von / folgen. Wenn die Zahl / in einem Zähler enthalten ist, wird ihr Codewort in einfacher Weise erhalten durch Ändern des höchststelligen von Null verschiedenen Bits zu Null und durch Voranstellen von b Einsen. Die ersten wenigen Codeworte sind die folgenden:
2 3 4
C(I)
100
101
11000
non
1110000
15 1110111
und so weiter.
In F i g. 5 ist als Beispiel für das Codierverfahren seine Anwendung auf zwei Zeilen binärer Information dargestellt Wie vorher angegeben wurde, werden die binären Einsen in der Zeile / codiert mit bezug auf die Stellen der binären Einsen in der Teile ι-1. Jede der Größen, die zur Berechnung der Zahl / erforderlich ist ist unter der Bitstelle angegeben. Die zugehörigen binären Einsen werden durch die Linie identifiziert die die binäre Eins aus der Zeile /— 1 mit der binären Eins in der Zeile ; verbindet Nachdem die Zahl / gewonnen wurde, wird das Codewort entsprechend dem vorher erläuterten Verfahren errechnet und in dem Beispiel angegeben. Dieses Beispiel dient lediglich zur Erläuterung und soll kein wirkliches Informationsmuster darstellen.
In den Fig. IA und IB ist ein Blockschaltbild des Datenverdichtungssystems dargestellt das eine Vorrichtung zur Differenzcodierung der digitalen Information aufeinanderfolgender Zeilen eines Dokumentes enthält Die binären Information zweier aufeinanderfolgender Zeilen, die die Daten des Dokumentes darstellen, werden über die Leitungen 10 und 12 den Lokalisiervorrichtungen 14 und 16 zugeführt Die Lokalisiervorrichtung 14 bestimmt die Stelle der binären Eins in der Datenzeile 1, die die Daten in der Zeile /—1 des Dokumentes darstellt Die Speichervorrichtung 18 enthält jib welches die Bitstelle in der Datenzeile 2 ist an der die letzte binäre Eins gefunden wurde. Die Datenzeile 2 stellt die Daten in der Zeile / des Dokumentes dar. Nachdem die Stellen mit binären
Einsen in den Datenzeilen 1 und 2 gefunden wurden, erfolgt in der .Vorrichtung 20 eine Berechnung zur Bestimmung der Größe Ib=N-J1I. Die Größe Ib gibt den Abstand von der binären Eins in Datenzeile 1 bis zum Ende der Zeile 1 an. Gleichzeitig mit der Berechnung von Ib wird in der Vorrichtung 22 die Größe Ia entsprechend der Beziehung
berechnet. Die Größe U stellt die Entfernung zwischen der vorher gefundenen Eins in der Datenzeile 2 und der Stelle der binären Eins in Datenzeile 1 dar. Gleichzeitig mit der Berechnung der Größen Ia und Ib erfolgt in der Vorrichtung 24 eine Berechnung zur Bestimmung der Größe Ii=jk+i-j', die die Differenz der Stelle der binären Eins in der Datenzeile 2 und der Stelle der binären Eins in der Datenzeile 1 darstellt.
Vor der Berechnung des Wertes für die Zahl /, aus der das Lauflängen begrenzte Differenz-Codewort berechnet wird, wird die Größe I2 in der Vorrichtung 26 entsprechend der Beziehung /2 = min (Ia, Ib) berechnet. Nach dem Vorliegen der Größen Ib, U, h und I2 erfolgt eine Bestimmung bezüglich des anwendbaren Falles für die Berechnung der Zahl / in Übereinstimmung mit den in F i g. 1A gezeigten Gleichungen. Diese Berechnung erfolgt in der Vorrichtung 28. Zur Erleichterung des Verständnisses der Erfindung und zur Vereinfachung ihrer Beschreibung sind die in F i g. 4 gezeigten Fälle 1 und 3 kombiniert worden und stellen einen Fall dar. Der Fall, in dem / bestimmt wird, ist eine Funktion eines Vergleichs zwischen den Größen U und h und der relativen Werte von jk+\ bis j'i. Die vier in der Vorrichtung 28 behandelten Fälle berücksichtigen die Codierung der Steile einer binären Eins in der Datenzeile 2 für alle möglichen Stellen einer in der Datenzeile 1 vorhandenen binären Eins.
Nach der Berechnung der Zahl / erfolgt in der Vorrichtung 30 eine Berechnung oder ein Tabellenlesen zur Bestimmung des geeigneten Codewortes, das die spezielle Zahl /, die in der Vorrichtung 28 berechnet wurde, darstellt Dieses Codewort wird dann dem Pufferspeicher 32 zugeführt und von dort auf die Übertragungsleitung, die zur Empfangsstation führt Es sei bemerkt, daß, obwohl sich die Beschreibung der Erfindung auf die Übertragung verdichteter lnforma- 4S tion bezieht die Prinzipien der Erfindung in gleicher Weise auf Vorrichtungen zur Speicherung verdichteter Daten auf Speichermedien wie Magnetplatten, Magnetbänder oder gleichwertige Vorrichtungen anwendbar sind.
Die empfangenen Codewörter werden über die Leitung 40 einer Datenstation zugeführt jedes Codewort wird dann decodiert durch Aufsuchen der geeigneten Zahl /, die dem Codewort in der Vorrichtung 42 entspricht Unter der Annahme, daß Information aus der Mitte des Dokumentes decodiert wird, sind die Größen //und jk m den Vorrichtungen 44 und 46 verfügbar. Mit diesen Größen j'i und y* wird eine Rechnung in den Vorrichtungen 48 und 50 zur Bestimmung der Größen h und Ia durchgeführt Dann wird die Größe I2 durch Auswahl der kleineren der beiden Größen Ia oder Ib berechnet Dies geschieht in der Vorrichtung 52.
Nachdem nun alle erforderlichen Größen, d. h. Ia, Ib, h, Jk und / zur Verfugung stehen, erfolgt in der Vorrichtung 54 eine Berechnung der Stelle jk+i der nächsten binären Bns in der betreffenden Zeile, die decodiert wird. Beim Decodieren entspricht der Fall Γ dem Decodieren des Codewortes, das in Übereinstimmung mit den Fällen 1 und 3 im Codierer entwickelt wurde. Der Fall 2' entspricht der Decodierung des Codewortes, der Zahl /, die entsprechend dem Fall 2 im Codierer berechnet wurde. Die Fälle 3' und 4' entsprechen dem Decodieren des Codewortes für die Zahl /, die im Fall 4 im Codierer berechnet wurde. Nachdem jk+i in der Vorrichtung 54 berechnet wurde, wird eine binäre Eins in dem Speicher 56 an der Stelle gespeichert, die y*+i entspricht, und alle Stellen zwischen den Stellen /'* und jk+\ werden mit Nullen gefüllt. Das in F i g. 1B gezeigte Decodierverfahren dauert an, bis das gesamte Dokument decodiert und im Speicher 56 gespeichert ist. Zu diesem Zeitpunkt kann das Dokument in der Vorrichtung 58 durch irgend eine der üblichen Druck- oder Anzeigevorrichtungen gedruckt oder angezeigt werden. Es sei bemerkt, daß das Dokument seriell anstatt des gesamten Datenblockes gedruckt oder angezeigt werden kann. Dies ist eine Frage des gewählten Entwurfs.
In den Fig.6A, 6B und 6C ist ein Schaltbild der in Fig. IA dargestellten Vorrichtungen zur Differenzcodierung für die Berechnung der Zahl / gezeigt. Der Codierer verarbeitet zwei aufeinanderfolgende Zeilen eines Dokumentes, die als binäre Ströme dargestellt sind und den Schieberegistern 1 und 2 zugeführt werden. Zur Erläuterung und Erleichterung des Verständnisses wird der in den F i g. 6A und 6C dargestellte Codierer im Betrieb beschrieben. Es sei angenommen, daß alle Flipflops, Zähler, Akkumulatoren und die zugehörige Schaltung in den Anfangszustand gebracht wurden, und daß der Codierer aufeinanderfolgende Zeilen der Information verarbeitet hat. Zu irgendeinem Zeitpunkt während der Codierung der Daten des Dokumentes ist die Zeile /— 1 in dem Schieberegister 1 vorhanden und die Zeile /im Schieberegister 2. Der Codierer verschiebt die Information in den Schieberegistern 1 und 2 kontinuierlich und prüft jede Bitstelle in den Zeilen auf das Vorhandensein einer Eins. Auf der Grundlage der Zählergebnisse, die gespeichert werden, wird eine Zahl / entsprechend dem in Verbindung mit den Fig. IA und IB vorher beschriebenen Verfahren berechnet Alle Information wird dem Codierer über die Leitung 100 zugeführt, die die Eingangsleitung für das Schieberegister 2 ist Nach der Codierung der Zeile /werden die der Zeile 1 entsprechenden Daten in das Schieberegister 1 übertragen und Zeile /+1 gelangt gelangt in das Schieberegister 2. Diese Übertragung aufeinanderfolgender Zeilen dauert so lange an, bis die gesamten Dokumentdaten codiert sind.
Beginnend mit den Daten, die den Zeilen /—1 im Schieberegister 1 und / im Schieberegister 2 entsprechen, beginnen die Schiebesteuervorrichtungen 102 und 104 die binären Ziffern in ihren entsprechenden Schieberegistern um eine Stelle nach rechts zu verschieben, bis eine binäre Eins in der rechten Stufe jedes Schieberegisters festgestellt wird. Das Schieberegister 2 ist ein rückgekoppeltes Schieberegister und erlaubt daher, daß die Zeile /nach Beendigung der Codierung zur weiteren Übertragung in das Schieberegister 1 zur Verfügung steht Mit den Schiebesteuerschaltungen 102 und 104 sind Zähler 1 und 2 verbunden. Diese Zähler enthalten als Zählergebnis die Anzahl der von den zugehörigen Schieberegistern vorgenommenen Verschiebungen vor dem Auftreten einer binären Eins in der rechten Stelle der Register. Die Zähler 1 und 2 arbeiten gleichzeitig mit den Schiebesteuerschaltungen 102 und 104. Unter der Annahme, daß der Codierer in
Betrieb war, und eine bestimmte Anzahl binärer Nullen 150 bestimmt die Größe lA durch Subtrahieren der in
in beiden Schieberegistern 1 und 2 verschoben wurden dem Speicher 152 gespeicherten Größe, die jk+1
bis binäre Einsen gefunden wurden, weisen die Zähler 1 dargestellt, in bezug auf den im Zähler 1 vorgefundenen
und 2 Zählerstände auf, die die Anzahl der Verschiebun- Wert, der j' darstellt. Die Größe Ib wird durch
gen anzeigen. Die Schieberegister 1 und 2 beenden die 5 Subtrahieren der im Zähler 1 gespeicherten Größe von
Verschiebungen, wenn die Schiebesteuerschaltung 102 dem gespeicherten Wert N, der sich in dem Speicher 154
und 104 keinen /-Impuls über die Leitungen 106 und 108 befindet und die maximale Größe einer Zeile darstellt
erhält Solange als eine Null in der rechten Stelle der berechnet
Schieberegister 1 und 2 vorhanden ist bieten die Nach der Berechnung der Größen Ia und Ig kann die
ODER-Glieder 110 und 112 zusammen mit den io Größe /2 durch Auswahl der kleineren der beiden
Nicht-Gliedern 114 und 116 ein binäres Eins-Signal dem Größen Ia und IB bestimmt werden. Dies wird mittels
Eingang der ODER-Glieder 118 und 120 dar, so daß die der Vergleichsschaltung 156 und der zugehörigen
Schiebesteuerschaltungen 102 und 104 eine weitere Torschaltungen der Vorrichtung 26 erreicht Nachdem
Verschiebung der binären Information in den zugehöri- nun die Größen /1 und V2 bestimmt wurden, wird die Zahl
gen Schieberegistern bewirken. Das Vorhandensein 15 / für den entsprechenden Fall unter der Steuerung der
eines binären Eins-Signals in der rechten Stufe der Taktimpulse P 2 bis PS in Verbindung mit der
Schieberegister verursacht einen Null-Impuls auf den Summierschaltung berechnet Die Zahl / befindet sich
Leitungen 106 und 108, und daher sperren die nach dem Taktimpuls PS in dem Akkumulator 160.
Schiebesteuerschaltung 102 und 104 das weitere Wenn der Taktimpuls P 2 erscheint wird der Torschal-
Verschieben der Information in den Schieberegistern 1 20 tung 162 ein Eins-Impuls angeboten, der es ermöglicht
und 2. Die Schiebesteuerschaltungen 102 und 104 die Größe /1 über das ODER-Glied 161 in den
nehmen nach der Berechnung der Zahl / für die jk+1 · Akkumulator 160 übertragen. Nach dem Taktimpuls PI
binäre Eins im Schieberegister 2 ihren Betrieb wieder erscheint der Taktimpuls P3 und wenn die Fälle 1, 2
auf. Der Betrieb der Schieberegister 1 und 2 kann auch oder 3 vorhanden sind, öffnet ein Impuls auf der Leitung
unterbrochen werden, wenn das Ende der Zeilen 1— 1 25 164 in Verbindung mit dem Taktimpuls PZ die
und / festgestellt wird. Dies wird erreicht durch Torschaltung 162 und ermöglicht eine Addition der
Vergleichen der Zählergebnisse in den Zählern 1 und 2 Größe /1 zum Inhalt des Akkumulators 160. Die
mit einem in dem Speicher 154 gespeicherten Wert N, Bestimmung, ob der Fall 1,2 oder 3 vorliegt erfolgt über
der die Länge der binären Darstellungen in den Zellen die Vergleichsschaltung 166, welche die Größe /2 mit der
des Dokumentes angibt. Wenn ein Vergleich der Inhalte 30 Größe /1 vergleicht Wenn bei der Codierung der Fall 2
der Zähler 1 und 2 mit N Gleichheit ergibt, kann dadurch vorliegt, stellt die Größe im Akkumulator 160 die
ein Eins-Impuls auf den Leitungen 122 oder 124 erzeugt. richtige Zahl / dar, und es ist keine weitere Berechnung
Der Eins-Impuls auf der Leitung 124 dient dazu, das erforderlich. Daher haben die restlichen Taktimpulse
Flipflop 126 zu setzen, das die Rücksetzsteuervorrich- keine Wirkung auf den Akkumulator 160. Wenn der Fall
tung 128 aktiviert Wenn das Ende der Zeile /—1 im 35 4 vorliegt, dann ist zum Zeitpunkt des Taktimpulses P 4
Schieberegister 1 festgestellt wird, sperrt ein Eins-Im- ein Impuls auf der Leitung 170 vorhanden, der
puls auf der Leitung 122 das weitere Verschieben des zusammen mit dem Taktimpuls PA die Torschaltung 172
Inhalts des Schieberegisters und der Zählerstand im öffnet, wodurch ermöglicht wird, daß die Größe /2 zu
Zähler 1, der yv/enthält, ist gleich Ν. Dann werden alle dem in dem Akkumulator 160 enthaltenen Wert
weiteren binären Einsen in dem Schieberegister 2 40 summiert wird. Da ein Impuls auf der Leitung 174
relativ zur Bitstelle Ncodiert vorhanden ist wird die Torschaltung 176 beim
Unter der Annahme, daß das Ende der Zeile noch Auftreten des Taktimpulses PS geöffnet und eine
nicht erreicht wurde, und das Verschieben in beiden binäre Eins wird in den Akkumulator 160 addiert Die im
Schieberegistern 1 und 2 durch die Schiebesteuerschal- Akkumulator 160 erhaltene Größe stellt die Zahl / für
tungen 102 und 104 unterbrochen wurde, ist ein 45 den Fall 4 dar. Wenn auf der anderen Seite bei der
Eins-Impuls auf den Leitungen 130 und 132, die zu dem Codierung der Fall 1 oder 3 vorlag, würde der
UND-Glied 124 führen, vorhanden. Ein Eins-Ausgangs- Taktimpuls PA unwirksam gewesen sein, für das
signal des UND-Gliedes 134 setzt das Flipflop 136, das Weiterleiten der Größe I2 in den Akkumulator 160, da
den Taktgeber 138 startet Dieser Taktgeber 138 auf der Leitung 170 ein Null-Impuls vorhanden wäre,
erzeugt acht Taktimpulse in der in F ig. 6B dargestellten 50 Beim Taktimpuls P5 wäre ein Impuls auf der Leitung
Reihenfolge. Der erste Impuls Pl öffnet die Torschal- 178 vorhanden, der über die Leitung 174 die
tungen 140,142,144 und 146, um den Inhalt des Zählers Torschaltung 176 öffnet und es daher ermöglicht daß
2, den Wert N, den Inhalt des Zählers 1 »nd den Wert die binäre Eins zum Inhalt des Akkumulators 160
jk+\ der Rechensijhaltung zur Bestimmung der Zahl / addiert wird. Dies würde die richtige / für den Fall 1
zuzuleiten. Der Inhalt des Zählers 2 wird mit dem des 55 oder 3 ergeben.
Zählers 1 in der Vergleichsschaltung 148 verglichen, um Nach der Berechnung der Zahl / erfolgt ein
die Positionen der im Schieberegister 2 gefundenen Tabellenlesen, bei dem / als Index für die Bestimmung
binären Einsen in bezug auf die Stelle der im des geeigneten Codewortes benutzt wird. Für das hier
Schieberegister 1 gefundenen binären Eins zu bestim- dargelegte Beispiel gibt es 1062 mögliche Codeworte,
men. Dieser Vergleich ist notwendig, um /1 entspre- 60 Es sei bemerkt daß diese Menge nur als Beispiel dient,
chend der in der Vorrichtung 24 in Fig. IA gezeigten ebenso wie die speziellen gezeigten Codewörter.
Beziehung zu bestimmen. Die Berechnung wird durch Nachdem die Codewörter bestimmt wurden, wird das
die Vorrichtung 24 durchgeführt Diese Berechnung binäre Bitmuster, das jedem Codewort entspricht in den
besteht aus einer einfachen Subtraktion der kleineren Pufferspeicher 32 geladen und der Übertragungsleitung
Größe von der größeren und erfordert in diesem Punkt 65 zugeführt Nach dem Taktimpuls PS erscheint der
keine weitere Erklärung. Taktimpuls P6, der den Inhalt des Zählen» 2 auf /*+i
Gleichzeitig mit der Berechnung von /1 werden die erhöht Der Taktimpuls P 7 öffnet die Torschaltung 190,
Größen Ia und Ib berrchnet Die Subtrahierschaltung um das Speichern der Größe jk in der Speichervorrich-
tung 152 zu ermöglichen. Zu diesem Zeitpunkt vergleicht die Vergleichsschaltung i92 j'mit jk+\. Wenn j' kleiner ist, wird die Torschaltung 194 geöffnet und ermöglicht, das das Null-Signal am Ausgang des Flipflops 196 über den Inverter 198 die Schiebesteuerschaltung 192 veranlaßt, den Inhalt des Schieberegisters 1 zu verschieben, bis der Inhalt des Zählers 1 dem Wert y'i+i entspricht. Dann fährt die Schiebesteuerschaltung 102 fort, den Inhalt des Schieberegisters 1 zu verschieben und beendet die Verschiebungen bei der nächsten binären Eins.
Empfangsseitig ist das Decodierverfahren für die lauflängenbegrenzten Differenzcodewörter, die über die Übertragungsleitung empfangen werden, ähnlich dem Verfahren, das der in den Fig.6A, 6B und 6C gezeigte Codierer durchführt mit der Ausnahme, daß die Berechnungen dem in der Vorrichtung 54 gezeigten Gleichungen entsprechen. Diese Rechnungen sind von einfacher Art und können mittels üblicher Schaltungen durchgeführt werden, da sie nur Addition, Subtraktion und Vergleiche enthalten.
Als Alternative dazu, die Codewortbestimmung durch Tabellenlesen zu erreichen, ist eine Schaltung zur Berechnung des Codewortes in F i g. 7 dargestellt. Für den besonderen, bei dem Ausführungsbeispiel benutzten Code wird das Codewort errechnet durch Bestimmen der Länge des Wortes, das die Zahl /darstellt. Speichern einer Reihe von binären Einsen, mit einem Nullbit in der niedrigsten Stelle, welche Reihe die gleiche Länge als das Wort besitzt, das die Zahl / darstellt, und dann Anhängen als niederstellige Bits die binären Bits der Zahl /minus des Bits der höchsten Stelle.
Das Codewort wird berechnet durch Laden der Zahl / in das Schieberegister 190. Die Schiebesteuerschaltung 192 verschiebt jeweils ein Bit des Binärwortes /aus dem Schieberegister 190 in das Schieberegister 194 unter der Steuerung des Ausgangssignals der Vergleichsschaltung 196, welche ein Muster von lauter Nullen und in der niedrigsten Stelle des Schieberegister 190 eine binäre Eins erwartet Wenn dieses Muster festgestellt wird, erscheint ein Impuls auf der Leitung 198, der das Flipflop 200 setzt und die durch die Schiebesteuerschaltung 192 bewirkten Verschiebungen beendet Zu diesem Zeitpunkt enthält der Auf/Abwärtszähler 202 die Anzahl der vorgenommenen Verschiebungen, die vor dem erfolgreichen Vergleich in der Vergleichsschaltung 196 vorgenommen wurden.
Während der Verschiebungen unter der Steuerung der Verschiebesteuerschaltung 192 wird eine Reihe von Eins-Impulsen über die Leitung 208 zum Pufferspeicher für jeden Verschiebesteuerimpuls übertragen, der von der Verschiebesteuerschaltung 192 erzeugt wird. Diese Reihe von Eins-Impulsen stellt den ersten Teil des Codewortes dar. Im Anschluß an diesen ersten Teil gelangt ein Null-Impuls auf die Leitung 208 während der Zeit, in der die Verzögerungsvorrichtung 220 das Steuern des Auf/Abwärtszählers 202 verhindert
Der Inhalt des Auf/Abwärtszählers 202 wird dazu benutzt, eine Reihe von Verschiebungen durch die Verschiebesteuerschaltung 192 zu steuern, um die binäre Information, die im Schieberegister 194 vorhanden ist, auf die Pufferspeicherleitung 208 zu übertragen. Durch dieses Ausschieben des Inhalts des Schieberegisters 194 gelangt das Binärwort, das der Zahl / entspricht, auf die Leitung 208, ohne die höchste Bitstelle, die sich noch im Schieberegister 190 befindet. Wenn die Vergleichsschaltung 204 den Zählerstand Null des Auf/Abwärtszählers 202 feststellt, ist das gesamte Codewort zur Pufferleitung 208 übertragen worden. Zu diesem Zeitpunkt erzeugt die Vergleichsschaltung 204 einen Impuls auf der Leitung 210, der das UND-Glied 212 durchschaltet, dessen Ausgangsimpuls wiederum das Flipflop 214 setzt Der Ausgangsimpuls des Flipflops 214, der auf der Leitung 216 erscheint, dient dazu, dem Pufferspeicher mitzuteilen, daß das Codewort vollständig und daß keine weiteren Arbeitsgänge im Pufferspeicher für das Codewort /, das dem laufenden /entspricht, notwendig sind.
Während das Ausführungsbeispiel anhand einer Wahrscheinlichkeitsverteilung beschrieben wurde, die eine hohe Wahrscheinlichkeit dafür besitzt eine binäre Eins in der Umgebung des Bezugspunktes j' zu finden, könnten auch andere Annahmen über die Wahrscheinlichkeitsverteilung getroffen werden, abhängig von der Art des Dokumentes, dessen Inhalt digitalisiert wird. Im allgemeine Fall würde daher nach der Bestimmung einer Wahrscheinlichkeitsverteilung, die das wahrscheinlichste Auftreten von binären Einsen im Hinblick auf den Bezugspunkt j' wiedergibt, eine Zahl / berechnet werden als Funktion der abgeleiteten Funktion der Wahrscheinlichkeitsverteilung. Darüber hinaus kann die Wahrscheinlichkeitsverteilung von anderen Überlegungen abhängig gemachten werden, als dem nächsten Auftreten einer binären Eins in der voraufgellenden Zeile. Beispielsweise kann eine Reihe binärer Einsen in der voraufgehenden Zeile dazu verwendet v/erden, einen Differenzcode zu entwickeln für eine binäre Eins in der folgenden Zeile.
Während die Erfindung beschrieben wurde, anhand des in binärer Form vorliegenden digitalisierten Inhalts seines Dokumentes und anhand der Entwicklung eines Differenzcodes für schwarze Bildpunkte auf nachfolgenden Zeilen, sei bemerkt daß der offenbarte Differenzcodierer auch Anwendung finden kann zur Verdichtung eines Vorhersagefehlermusters, das durch einen geeigneten Prädiktor entwickelt wird. Es ist auch möglich, die Wirksamkeit von Differenzlauflängencodes zu erhöhen, wenn ein Prädiktor vor dem vorliegenden Verdichtungssystem einen gewissen Grad von Redundanz in aufeinanderfolgenden Zeilen zufügt Eine Möglichkeit einen solchen Vorcode zu implementieren, besteht darin., in die Fehlervorhersagende Codiervorrichtung ein Schema einzubauen zur Einführung absichtlicher Fehler in aufeinanderfolgenden Zeilen der Information an Punkten direkt unter tatsächlich vorhergesagten Fehlern der aufeinanderfolgenden Zeilen.
Hierzu 8 Blatt Zeichnungen

Claims (1)

  1. Patentansprüche:
    Verfahren zur redundanzreduzierenden Codierung eines aus Blöcken zu je N Bits bestehenden Nachrichtenstroms, bei dem ein Block aus den beim Abtasten einer Zeile einer Vorlage erhaltenen Bits besteht, das bei der Codierung sowohl die innerhalb eines Blockes vorhandene Redundanz als auch die zwischen zwei aufeinanderfolgenden Blöcken bestehende berücksichtigt, gekennzeichnet durch folgende Verfahrensschritte:
DE2340250A 1972-08-18 1973-08-09 Verfahren und Vorrichtung zur redundanzreduzierenden Codierung eines aus Blöcken zu je N Bits bestehenden Nachrichtenstromes Expired DE2340250C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US00281895A US3833900A (en) 1972-08-18 1972-08-18 Image compaction system

Publications (2)

Publication Number Publication Date
DE2340250A1 DE2340250A1 (de) 1974-02-28
DE2340250C2 true DE2340250C2 (de) 1982-11-04

Family

ID=23079220

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2340250A Expired DE2340250C2 (de) 1972-08-18 1973-08-09 Verfahren und Vorrichtung zur redundanzreduzierenden Codierung eines aus Blöcken zu je N Bits bestehenden Nachrichtenstromes

Country Status (7)

Country Link
US (1) US3833900A (de)
JP (1) JPS5224363B2 (de)
CA (1) CA996275A (de)
DE (1) DE2340250C2 (de)
FR (1) FR2196557B1 (de)
GB (1) GB1411521A (de)
IT (1) IT990702B (de)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3980809A (en) * 1973-07-16 1976-09-14 International Business Machines Corporation Encoding logic for reduced bandwidth pictorial data transmission system
JPS587109B2 (ja) * 1974-09-09 1983-02-08 ケイディディ株式会社 フアクシミリシンゴウ ノ ジヨウホウヘンカガソアドレスフゴウカホウシキ
JPS5818824B2 (ja) * 1975-11-07 1983-04-14 ケイディディ株式会社 フアクシミリシンゴウノ フゴウカホウシキ
US4125861A (en) * 1977-08-18 1978-11-14 Bell Telephone Laboratories, Incorporated Video signal encoding
US4355306A (en) * 1981-01-30 1982-10-19 International Business Machines Corporation Dynamic stack data compression and decompression system
US4536801A (en) * 1981-10-01 1985-08-20 Banctec, Inc. Video data compression system and method
US4633505A (en) * 1984-11-23 1986-12-30 Xerox Corporation Character compression technique
DE3680109D1 (de) * 1986-09-26 1991-08-08 Univ Northwestern Myoelektrisch gesteuerte kuenstliche hand.
US4783834A (en) * 1987-02-20 1988-11-08 International Business Machines Corporation System for creating transposed image data from a run end or run length representation of an image
US6728412B1 (en) * 1999-10-29 2004-04-27 S.V.V. Technology Innovations, Inc. Method and apparatus for on-the-fly image coding
JP3729172B2 (ja) * 2002-12-16 2005-12-21 ソニー株式会社 画像符号化装置及び方法、並びに符号化画像復号化装置及び方法
DE102007020292A1 (de) * 2007-04-30 2008-11-13 Siemens Ag Verfahren zur Komprimierung von Daten unter Verwendung einer Lauflängen-Kodierung insbesondere für medizinische Bilddaten
US8989507B2 (en) * 2010-07-05 2015-03-24 International Business Machines Corporation Bitmap compression for fast searches and updates
CN111726117B (zh) * 2019-03-20 2024-07-12 中国石油化工股份有限公司 数字岩心数据并行压缩编码方法及并行解压解码方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2905756A (en) * 1956-11-30 1959-09-22 Bell Telephone Labor Inc Method and apparatus for reducing television bandwidth
US2921124A (en) * 1956-12-10 1960-01-12 Bell Telephone Labor Inc Method and apparatus for reducing television bandwidth
US3061672A (en) * 1960-07-25 1962-10-30 Sperry Rand Corp Run length encoder
US3051778A (en) * 1960-10-20 1962-08-28 Bell Telephone Labor Inc Sequential scan television with line interpolation
DE1162398B (de) * 1961-10-24 1964-02-06 Ibm Verdichter fuer Daten, die aus Bits verschiedener Wertigkeit bestehen
US3347981A (en) * 1964-03-18 1967-10-17 Polaroid Corp Method for transmitting digital data in connection with document reproduction system
US3510576A (en) * 1966-10-03 1970-05-05 Xerox Corp Data sampler circuit for determining information run lengths
US3478266A (en) * 1966-11-22 1969-11-11 Radiation Inc Digital data redundancy reduction methods and apparatus
US3521241A (en) * 1967-01-03 1970-07-21 Ibm Two-dimensional data compression
DE2055234A1 (de) * 1970-11-10 1972-05-18 Licentia Gmbh Verfahren und Schaltungen zum Codieren von Bildsignalen
JPS5015093B1 (de) * 1970-12-31 1975-06-02

Also Published As

Publication number Publication date
JPS4960412A (de) 1974-06-12
FR2196557B1 (de) 1976-04-30
IT990702B (it) 1975-07-10
US3833900A (en) 1974-09-03
DE2340250A1 (de) 1974-02-28
GB1411521A (en) 1975-10-29
JPS5224363B2 (de) 1977-06-30
CA996275A (en) 1976-08-31
FR2196557A1 (de) 1974-03-15

Similar Documents

Publication Publication Date Title
DE69925774T2 (de) Arithmetisches Kodierung- Dekodierung- sowie Warscheinlichkeitsschätzungsverfahren
DE2652459C2 (de) Umsetzvorrichtung für Binärsignale variabler Länge
DE2340250C2 (de) Verfahren und Vorrichtung zur redundanzreduzierenden Codierung eines aus Blöcken zu je N Bits bestehenden Nachrichtenstromes
DE2264090C3 (de) Datenverdichtung
DE2830924C2 (de) Digitale Verarbeitungseinrichtung
DE3686697T2 (de) Fehlertoleranter kodierer zur umwandlung eines thermometerkodes in einen binaeren kode.
DE2614916C2 (de) Konverter zur Codeumwandlung
DE2508706A1 (de) Codieren und decodieren mit einem code variierbarer wortlaenge und gegebenem bitzahlverhaeltnis
DE3687285T2 (de) Verfahren und anordnung zur modifizierung eines lauflaengenbegrenzten codes.
DE2751097A1 (de) Triggerschaltungseinheit
DE2418653B2 (de) Vorrichtung zum Anzeigen eines Extremwertes einer Folge von Digitalwerten
DE2805294C2 (de) Codierende Übertragungsanlage für Faksimile-Signale
DE68923012T2 (de) Kodierungs- und Dekodierungsverfahren variabler Länge, Kodierungs- und Dekodierungsvorrichtung zur Ausführung dieses Verfahrens.
DE69125424T2 (de) Vorrichtung zur variablen Längenkodierung und Vorrichtung zur variablen Längendekodierung
DE2160528C3 (de) Digitaler Differential-integrator
DE3204428A1 (de) Steueranordnung zum verschieben von auf dem bildschirm eines sichtgeraetes dargestellten zeichen
DE2727627C2 (de) Dekoder zur Parallelumsetzung von binären Zeichendaten in ein Punktmatrixformat
DE1803222B2 (de) Verfahren zum zusammenfassen pulscodierter nachrichten
DE2403651A1 (de) Schaltungsanordnung fuer die nicht-lineare umwandlung zum uebertragen digitaler signale
DE2826454C3 (de) Faksimilesignal-Codiersystem
EP0414016A2 (de) Verfahren zur Bildung eines Prädiktionsbildes
DE2842374C2 (de) Verfahren und Vorrichtung zur Code- Umsetzung
DE68927020T2 (de) Kodierungs- und Dekodierungsverfahren und Gerät
DE69113072T2 (de) Verfahren und Vorrichtung zur Datenkompression.
DE69323545T2 (de) Bit serieller dekodierer

Legal Events

Date Code Title Description
OD Request for examination
D2 Grant after examination
8339 Ceased/non-payment of the annual fee