DE3854360T2 - Bildinformationscodeverarbeitungssystem. - Google Patents

Bildinformationscodeverarbeitungssystem.

Info

Publication number
DE3854360T2
DE3854360T2 DE3854360T DE3854360T DE3854360T2 DE 3854360 T2 DE3854360 T2 DE 3854360T2 DE 3854360 T DE3854360 T DE 3854360T DE 3854360 T DE3854360 T DE 3854360T DE 3854360 T2 DE3854360 T2 DE 3854360T2
Authority
DE
Germany
Prior art keywords
pattern
component
block
object block
pixels
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 - Lifetime
Application number
DE3854360T
Other languages
English (en)
Other versions
DE3854360D1 (de
Inventor
Ming-Kou Chou
Hajime Enomoto
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of DE3854360D1 publication Critical patent/DE3854360D1/de
Application granted granted Critical
Publication of DE3854360T2 publication Critical patent/DE3854360T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/004Predictors, e.g. intraframe, interframe 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/40Picture signal circuits
    • H04N1/409Edge or detail enhancement; Noise or error suppression
    • 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/415Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information in which the picture-elements are subdivided or grouped into fixed one-dimensional or two-dimensional blocks

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)

Description

    HINTERGRUND DER ERFINDUNG 1) Technisches Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft ein Bildinformationscode- Verarbeitungssystem, in dem eine Bitmusterinformation, die ein zwei-wertiges Bild ausdrückt, in einer Faksimileanwendung oder ähnlichem komprimiert und codiert wird.
  • 2) Beschreibung des Standes der Technik
  • Wie an sich bekannt, wird für eine Faksimileübertragung eine Seite eines Dokumentes unter optischer Abtastung gesendet, mit beispielsweise 8 Linien/mm und Abtastintervallen von 8 Pixeln/mm, und daher wird eine große Menge von digitaler Bildinformation, die in einem Bitmuster enthalten ist, das durch die obige Abtastung erhalten worden ist, gesetzt oder gespeichert.
  • Demgemäß sind unterschiedliche redundante Komprimierungs-Codierungssysteme entwickelt worden; typische Vertreter von ihnen sind die, die als Faksimilecodierungsstandard von dem CCITT (International Telegraph and Telephone Consultative Committee) empfohlen worden sind.
  • Wie weiterhin wohlbekannt ist, zeigt die Empfehlung ein eindimensionales MH-Codierungssystem, sowie ein sequentielles zweidimensionales MR-Codierungssystem.
  • In dem MH-System komprimiert eine Lauflängencodierung für ein Bitmuster aus zwei-wertiger Bildinformation, das entlang einer Abtastlinie erhalten worden ist, die Information durch Konversion in ein vergleichsweise kurzes Codewort, das kontinuierliche Bits kombiniert, die einen gleichen Wert aufweisen.
  • In dem MR-System wird ein Bitmuster entlang einer Abtastlinie mit einem Bitmuster entlang der benachbarten nächsten Abtastlinie verglichen, und ein Differenzbitmuster wird erhalten. Das Differenzbitmuster wird unter Verwendung der Prinzipien der Lauflängencodierung codiert, und durch sequentielle Anwendung des gleichen Prozesses wird im allgemeinen eine höhere Informationskompression erhalten als mit dem MH-System.
  • Diese Kompressionscodierungssysteme können Informationen mit einem bestimmten Maß an Befriedigung als ein System für allgemeine Anwendungen, das auf unterschiedliche Bildinformationen angewendet wird, komprimieren. Indessen verwenden diese Systeme kein Merkmal der Figur des Objektbildes, und wenn die Merkmale der Figur berücksichtigt werden, wird eine höhere Kompression der Information möglich, und ein Codierungssystem, mit dem die obige Kompression durchgeführt werden kann, ist erwünscht.
  • Die US-A-3 980 809 beschreibt ein Bildkompressionssystem. Vorherbestimmte Blöcke aus einlaufenden Daten werden mit einer Bibliothek aus Referenzmustern verglichen. Wenn einige Bits der einlaufenden Datenblöcke mit den ausgewählten Referenzmustern unangepaßt verbleiben, werden die unangepaßten Bits notiert und ein weiteres Referenzmuster, das an die unangepaßten Bits angepaßt ist, wird gesucht. Der Bildatenblock wird demnach als eine Zusammensetzung aus Referenzmustern codiert.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Eine Aufgabe der vorliegenden Erfindung liegt in der Bereitstellung eines Bildinformationscodierungs-Verarbeitungssystemes, in dem eine Kompressionsrate in einem Codierungsvorgang einer zwei-wertigen Bildinformation erhöht werden kann, indem die geometrischen Merkmale der Information verwendet werden.
  • Diese Aufgabe wird durch ein Bildinformationscodierungs-Verarbeitungssystem nach Anspruch 1 gelöst.
  • Gemäß eines ersten Aspektes der vorliegenden Erfindung wird ein Bildinformationscodierungs-Verarbeitungssystem vorgesehen, das ein Komponentenmuster-Versorgungsmittel, ein Komponentenmuster- Prozessormittel und ein Codeprozessormittel umfaßt. Das System empfängt Bitmusterinformationen als ein Eingangssignal und gibt einen codierten Ausgang aus.
  • Gemäß eines zweiten Aspektes der vorliegenden Erfindung wird ein Bildinformationscodewort-Verarbeitungssystem vorgesehen, das desweiteren ein Divisionsmarken-Prozessormittel zusätzlich zu den Elementen des ersten Aspektes der vorliegenden Erfindung umfaßt.
  • Das Codeprozessormittel ordnet vorherbestimmte Codewörter in einer vorherbestimmten Ordnung oder Folge an, wobei die Codewörter die Komponentenmuster identifizieren, die ein Bitmuster ausdrücken, und es fügt eine vorherbestimmte Divisionsmarke zwischen benachbarten Codewörtern ein.
  • Das Divisionsmarken-Prozessormittel detektiert, ob eine Kopfmarke des Codewortes vorherbestimmte Bedingungen für das zuvor arrangierte Codewort erfüllt, und es verhindert eine Einfügung der Divisionsmarke zwischen den Codewörtern.
  • Gemäß eines dritten Aspektes der vorliegenden Erfindung wird ein Bildinformationscodierungs-Verarbeitungssystem vorgesehen, das ein Vorhersagemuster-Versorgungsmittel umfaßt, wie beispielsweise ein Vorhersageprozessormittel und ein Codeprozessoremittel als ein Codebildungsmittel. Das System empfängt Bitmusterinformationen, bestimmt ein vorherbestimmtes Codewortausdruckbitmuster eines rechteckigen Blockes, der eine vorherbestimmte Dimension aufweist, durch die die zwei-wertige Bildinformation, die durch das Bitmuster ausgedrückt wird, geteilt wird, und es gibt die codierten Ausgänge aus.
  • Das Vorhersagemuster-Versorgungsmittel erzeugt ein Vorhersagemuster aus Bitmustern aus wenigstens einem Block.
  • Das Codebildungsmittel bildet ein Objektblockcodewort unter Verwendung einer vorherbestimmten Marke, die eine Koinzidenz zwischen einem Bitmuster des Objektblockes und einem Vorhersagemuster andeutet, das durch die Bitmuster von Blöcken bestimmt wird, die in Kontakt mit dem Objektblock an vorherbestimmten Seiten stehen, und in dem Fall einer Nicht-Koinzidenz unter Verwendung des notwendigen vorherbestimmten Codewortes, das ein vorherbestimmtes Bitmuster ausdrückt.
  • KURZE BESCHREIBUNG DER ZEICHNUNG
  • Fig. 1 ist ein Blockdiagramm, in dem der Aufbau einer ersten Ausführungsform der vorliegenden Erfindung dargestellt ist;
  • Fig. 2 ist ein detailliertes Blockdiagramm, in dem die Ausführungsform aus Fig. 1 dargestellt ist;
  • Fig. 3 ist ein Flußdiagramm der Verarbeitungsschritte in einem Komponentenmusterprozessor aus Fig. 2;
  • Fig. 4 ist ein Flußdiagramm zum Bilden eines expandierten Blockes in der Ausführungsform aus Fig. 2;
  • Fign. 5A, 5B und 5C sind Diagramme, in denen die Vorverarbeitung in den Ausführungsformen erläutert wird;
  • Fign. 6A und 6B sind Diagramme, in denen ein Prozeß zum Erhalten eines Primimplikanten in den Ausführungsformen dargestellt ist;
  • Fig. 7 ist ein Diagramm, in dem Beispiele der Primimplikanten in den Ausführungsformen dargestellt sind;
  • Fig. 8 ist ein Diagramm, in dem ein expandierter Block in den Ausführungsformen erläutert ist;
  • Fig. 9 ist ein Blockdiagramm, in dem der Aufbau einer zweiten Ausführungsform der vorliegenden Erfindung dargestellt ist;
  • Fig. 10 ist ein Diagramm, in dem ein Flußdiagramm des Divisionsmarkenprozessors in der Ausführungsform aus Fig. 9 dargestellt ist;
  • Fign. 11A und 11B sind Diagramme, in denen ein zweites Beispiel einer Divisionsmarkenabkürzung in der Ausführungsform aus Fig. 9 dargestellt ist;
  • Fign. 12A und 12B sind Diagramme, in denen ein drittes Beispiel einer Divisionsmarkenabkürzung in der Ausführungsform aus Fig. 9 dargestellt ist;
  • Fig. 13 ist ein Blockdiagramm, in dem ein Aufbau einer dritten Ausführungsform der vorliegenden Erfindung dargestellt ist;
  • Fig. 14 ist ein Diagramm, in dem ein Flußdiagramm der Verarbeitungsschritte der Ausführungsform aus Fig. 13 dargestellt ist; und
  • Fig. 15 ist ein Diagramm, in dem ein Mustervorhersageprozeß erläutert ist.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Im folgenden werden Ausführungsformen der vorliegenden Erfindung erläutert. Fig. 1 zeigt ein Blockdiagramm einer ersten Ausführungsform, und Fig. 2 ist eine detailliertere Ansicht der Fig. 1.
  • In Fig. 1 umfaßt ein System gemäß der ersten Ausführungsform einen Komponentenmusterprozessor (KOMP.MUST.PROZ.) 10, einen Komponentenmuster-Versorgungsbereich (KOMP.MUS.VERSORGUNG) 6 und einen Codeprozessor (CODE PROZ.) 11. Eine Bitmusterinformation (Bit PAT. Inf.) 1 wird an den Komponentenmusterprozessor 10 als ein Eingangssignal angelegt.
  • Ein Ausgang des Codeprozessors 11 ist als codierter Ausgang 7 dargestellt. Der Komponentenmusterprozessor 10 wird mit Komponentenmustern versorgt, die für die Bildung eines Bitmusters nötig sind, und zwar von einem Komponentenmuster- Versorgungsbereich 6, und er bildet ein angepaßtes Codewort des Komponentenmusters. Der Codeprozessor 11 kombiniert ein Codewort für ein Bitmuster eines Blockes, das in der zweiwertigen Bildinformation enthalten ist.
  • Die Bitmusterinformation 1 ist eine zwei-wertige (2-valued), zu verarbeitende Bildinformation. Um die Bitmusterinformation 1 zu codieren, wird das zwei-wertige Bild in rechteckige Blöcke oder quadratische Blöcke aufgeteilt, die eine vorherbestimmte Dimension aufweisen, und in rechteckige expandierte Blöcke, die eine vorherbestimmte Anzahl von Blöcken aufweisen. Der Komponentenmuster-Versorgungsbereich 6 speichert oder erzeugt eine Mehrzahl von Arten von Komponentenmustern, die zum Aufbau des Bitmusters von einem jeden der expandierten Blöcke notwendig sind. Das Komponentenmuster wird hergestellt, um das benötigte Bitmuster nur durch sich selbst auszudrücken oder durch mehr als zwei logische Additionen, und es ist ein angepaßtes Codewort zur Unterscheidung gegeben.
  • Der Komponentenmusterprozessor 10 empfängt die expandierte Blockinformation in der Bitmusterinformation 1, und ein Block, der bei einer vorherbestimmten Information in den Blöcken angeordnet ist, die in dem expandierten Block enthalten sind, wird als ein Objektblock bestimmt. Der Objektblock wird wie folgt verarbeitet.
  • Dies bedeutet, daß das Bitmuster des expandierten Blockes mit dem Kouiponentenmuster in dem Komponentenmuster- Versorgungsbereich 6 zusammengestellt wird, ein Satz der Komponentenmuster, der beispielsweise dem Satz von "1" Bits in dem Objektbitmuster entspricht, wird erhalten, und dann werden die Komponentenmuster ausgewählt, die für die Vervollständigung des Bitmusters des Objektblockes notwendig sind.
  • Da ein Teil des Bitmusters eines jeden Objektblockes im allgemeinen in dem Komponentenmuster enthalten ist, das bereits in anderen expandierten Blöcken ausgewählt worden ist, ist es für die ausgewählten Komponentenmuster in diesem Prozeß nicht notwendig, den Satz der Bits zu bedecken.
  • Der Codeprozessor 11 empfängt ein angepaßtes Codewort eines jeden Komponentenmusters, das in dem obigen Prozeß ausgewählt worden ist, und dann wird ein Codewortzug, der eine Anordnung aus einem oder mehreren von angepaßten Codewörtern ist, als ein Codewort für den gegenwärtigen Objektblock gebildet. Dann erzeugt der Codeprozessor 11 einen codierten Ausgang, in dem die Grenzen des Codewortes durch Divisionsmarken dargestellt sind.
  • Die Bildung eines Komponentenmusters wird nun erläutert.
  • [Bildung eines Komponentenmusters]
  • In Fig. 1 ist die Bitmusterinformation 1 eine zwei-wertige Bildinformation für ein zu verarbeitendes Objektsignal. Beispielsweise wird die Bitmusterinformation in einer Faksimilevorrichtung verwendet.
  • Wenn das zwei-wertige Bild, das die Bitmuster für Buchstaben und Bilder umfaßt, beispielsweise in 4 x 4 quadratische Bitblöcke aufgeteilt wird, sind die typen (types of stroke), die in den Blöcken auftauchen, im allgemeinen auf eine kleine Zahl beschränkt.
  • Demgemäß wird das Objektmuster in so wenig Komponentenanschläge oder -striche (component strokes) wie möglich aufgeteilt, wobei die Anzahl von notwendigen Komponentenstrichtypen zum Bilden aller Muster als so niedrig wie möglich bestimmt wird, und wenn das Codewort, das die Bitmuster eines jeden Blockes durch ein angepaßtes Codewort für den Komponentenstrich ausdrückt, erhalten wird, kann die Kompression der Bildinformation durchgeführt werden.
  • Indessen existieren Informationen vom Rauschtyp in der Bitmusterinformation nach der unmittelbaren Abnahme von einem Originalbild, und solche Bitmuster werden vorzugsweise eliminiert. Darüberhinaus wird, um den Kompressionseffekt zu verstärken, vorzugsweise eine Vorverarbeitung zum Vereinfachen der Bitmuster durchgeführt, die in den obigen Blöcken auftauchen, so daß das von dem Bitmuster reproduzierte Bild sich nicht verschlechtert.
  • In dieser Vorverarbeitung ist, wenn ein Pixelbit in dem Bitmuster eines monochromatischen zwei-wertigen Bildes keine der folgenden Bedingungen (1) und (2) erfüllt, das Bit ein illegales Pixel, und das illegale Bit oder ein Bit nahe dem illegalen Bit wird invertiert, um das illegale Bit zu eliminieren.
  • Bedingung (1):
  • Drei benachbarte Bits, die die gleiche Farbe (weiß oder schwarz) wie ein Objektbit aufweisen, existieren in der oberen, unteren, linken oder rechten Richtung von dem Objektbit.
  • Bedingung (2):
  • Zwei Bits, die die gleiche Farbe haben wie das Objektbit und die benachbart zu dem Objektbit in der oberen, unteren, linken oder rechten Richtung sind, sind diagonal benachbart zueinander.
  • In den Fign. 5A, 5B und 5C sind Beispiele von illegalen Bits dargestellt, und zwar durch einen Kreis auf der linken Seite der Figur. Die illegalen Bits werden verarbeitet wie auf der rechten Seite der Figur. In Fig. 5A wird die Grenzlinie zwischen weiß und schwarz geglättet, und in Fig. 5B wird die feine Linie betont. Das nach der Verarbeitung verbleibende illegale
  • Bit wird verarbeitet, um das Bild zu vereinfachen, wie beispielsweise in Fig. 5C gezeigt.
  • In dieser Ausführungsform wird ein Ausdruckssystem (expression system) mittels eines Primimplikanten (prime implicant) verwendet, um die obige vorverarbeitete Bitmusterinformation zu verschlüsseln. Dieses System ist ein bevorzugtes Mittel zum Erhalten eines geeigneten Komponentenmusters. Unter Verwendung dieses Systemes wird ein 4 x 4 Bitblockmuster durch den oben erwähnten Komponentenmustersatz ausgedrückt.
  • In diesem System wird der zuvor erwähnte Block so hergestellt, daß er der Karnaugh Karte entspricht, die in der Schaltkreistheorie wohlbekannt ist (McCluskey, E. J.: Introduction to the Theory of Switching Circuits, McGrow Hill (1965)), und die Werte ("0" und "1"), die weiße und schwarze Tönungen in einem Bitmuster ausdrücken, werden einem Block der Karnaugh-Karte zugeteilt, und dann kann das schwarze Muster, das durch eine "1" ausgedrückt ist, als ein Satz von Punkten betrachtet werden, die eine logische Gleichung erfüllen.
  • Dies bedeutet, wie oben dargestellt, daß wenn die Blöcke 4 x 4 Bits sind, die Karnaugh-Karte ein Diagramm zum Zeigen eines Zustandes einer logischen Gleichung ist, die aus vier logischen Variablen X&sub1;, X&sub2;, X&sub3; und X&sub4; besteht, wie in Fig. 6B dargestellt. 16 Blöcke entsprechen Kombinationen, die einen speziellen Wert von logischen Variablen aufweisen, die an der oberen Seite und der linken Seite angedeutet sind.
  • Beispielsweise werden in dem Fall des Musters, das in Fig. 6A dargestellt ist, logische Werte zugeordnet, wie sie in Fig. 6B dargestellt sind. Ein Satz, der aus der minimalen Anzahl von Primimplikanten besteht, die die logische Gleichung durch eine bekannte Sequenz unter Verwendung der obigen Karnaugh-Karte in Fig. 6B ausdrücken können, unter Verwendung einer vereinfachten logischen Gleichung, wird erhalten.
  • Wenn eine Mehrzahl von Sätzen aus Primimplikanten existiert, wird der Satz ausgewählt, der die minimale Anzahl von Variablen hat, so daß ein Primimplikant einen so großen wie möglichen Bereich des Musters bedecken kann.
  • Demnach wird in dem Beispiel der Karnaugh-Karte aus Fig. 6B eine logische Gleichung f = X&sub2; &sub3; + X&sub1;, die durch einen Primimplikanten X&sub2; &sub3; und einem Primimplikanten X&sub1; gebildet wird, definiert.
  • Die obige Verarbeitung wird für das Bitmuster durchgeführt, das in den Blöcken auftaucht, und dann werden alle Primimplikanten erhalten, die für den Ausdruck der Blockmuster notwendig sind.
  • Um ein Komponentenmuster zu erhalten, müssen die folgenden Überlegungen durchgeführt werden. Für ein schwarzes Bild und einen weißen Hintergrund wird beispielsweise der Primimplikant &sub2;, der das schwarze Muster einer jeden der Spalten bei linken und rechten Karten ausdrückt, ausgeschlossen, da die Erscheinungen (appearances) von ihnen gering ist. D. h., &sub2; wird ausgedrückt durch &sub1; &sub2; + X&sub1; &sub2;. Weiterhin werden alle weißen Blöcke als ein Primimplikant addiert.
  • Die Primimplikanten, die durch den obigen Prozeß erhalten werden, werden beispielsweise als 37 Beispiele durch die Karnaugh- Kartennotation ausgedrückt, wie in Fig. 7 dargestellt. Dort sind die Zahlen unter jedem Primimplikanten die Sequenzen der Erscheinungen von Bitmustern, die aus zwei Testkarten für das Faksimile erhalten worden sind, wie sie in dem CCITT definiert sind, und zwar als eine Referenz. Die oberen Zahlen zeigen eine Testkarte und die unteren Zahlen zeigen die andere Testkarte.
  • Der Komponentenmuster-Versorgungsbereich 6 speichert die Bitmuster, die einem jeden der obigen Primimplikanten entsprechen, als ein Komponentenmuster. Jedem Komponentenmuster wird ein angepaßtes Codewort gegeben, das beispielsweise eine Zahl ist, um die Komponentenmuster zu unterscheiden.
  • Daher drückt das Komponentenmuster, das in dem Komponentenmuster-Versorgungsblock 6 gespeichert ist, ein Bitmuster aus, das in einem Block durch eine oder über zwei logische Additionen auftaucht, in klarer Übereinstimmung mit der Karnaugh-Karte.
  • Der Komponentenmuster-Versorgungsbereich 6 kann ausgebildet werden, um das oben erwähnte notwendige Komponentenmuster zu erzeugen, das ein Bitmuster in Antwort auf die Anfrage von dem Komponentenmusterprozessor 10 erzeugt.
  • [Blockcodierung]
  • Der Komponentenmusterprozessor 10 umfaßt eine Extraktion des Primimplikantenbereiches 101, eine Extraktion des Komponentenmusterbereiches 102, und eine Anordnung für den Komponentenmusterbereich 103; er empfängt Informationen von einem Block als Bitmusterinformation 1 über einen Blockextraktionsbereich 5; er vergleicht die Information mit den Komponentenmustern; und er wählt den Satz mit der minimalen Anzahl eines Komponentenmusters oder Komponentenmustern aus, die mit dem Satz von Bits aus dem Block identisch sind, durch Auswahl beispielsweise der kleinsten möglichen Anzahl von Komponentenmustern, die zu dem schwarzen Bitsatz gehören.
  • Der Codeprozessor 11 umfaßt einen Komponentenmustercode-Speicherbereich 111 und einen angepaßten Musterverschlüssler 112, und er ordnet angepaßte Codewörter einer geeigneten Ordnung an, nachdem die angepaßten Codewörter der Komponentenmuster, die in jedem Block durch den Komponentenmusterprozessor 10 ausgewählt worden sind, empfangen worden sind. Dann bestimmt der Codeprozessor 11 das Codewort als ein Ausdruckscodewort für den Block, und er fügt eine vorherbestiminte Marke ein, die von dem angepaßten Mustercodewort als eine Divisionsmarke unterschieden werden kann, d. h. ein Segmentierungscodewort, und zwar zwischen die angepaßten Codewörter.
  • Die Divisionsmarke ist im allgemeinen notwendig, da die Bitlänge des Codewortes variabel ist; indessen ist, wie später erwähnt werden wird, eine Abkürzung der Divisionsmarke zwischen den Codewörtern möglich, die spezielle Verhältnisse aufweisen, so daß der codierte Ausgang weiter verkürzt werden kann.
  • Fig. 3 zeigt die Verarbeitungsschritte des Komponentenmusterprozessors 10 aus Fig. 2. Im Schritt 31 (S31) wird nach Extraktion des Primimplikanten ein extrahierter Primimplikant ausgewählt. Im Schritt 32 (S32) schreitet, wenn eine Auswahl nicht erfolgt ist, der Prozeß zum Schritt 34 (S34) vor. Wenn eine Auswahl durchgeführt wird, schreitet der Prozeß zum Schritt 33 (S33) fort. Im Schritt 33 wird bestimmt, ob das Komponentenmuster eine Anpassung oder eine Fehlanpassung zum Primimplikanten ist. Wenn das ausgewählte Muster an dem Primimplikanten angepaßt ist, schreitet der Prozeß zum Schritt 34 fort, und wenn nicht, kehrt der Prozeß zum Schritt 32 zurück. Im Schritt 34 wird das angepaßte Komponentenmuster angeordnet und zu einem angepaßten Mustercodierer 112 ausgegeben.
  • [Expandierte Blockcodierung]
  • In der oben beschriebenen Blockcodierung wird die Codierung für jeden 4 x 4 Bitblock durchgeführt. Bei der im folgenden noch zu erwähnenden Expansion kann beispielsweise eine expandierte Blockcodierung, die vier Blöcke mit quadratischer Domäne umfaßt, eine höhere Codierungskompression erhalten. Die Blockcodierung ist ein spezielles Beispiel, in dem die expandierte Blockcodierung zu einem Block degeneriert und ihr Prozeß vereinfacht wird.
  • In der expandierten Blockcodierung, in der ein Block beispielsweise 4 x 4 Bits hat, wird ein expandierter Block derart definiert, daß er vier benachbarte Blöcke in der oberen, unteren, linken und rechten Richtung aufweist. Wenn ein Block codiert wird, beispielsweise der Block (der im folgenden als Objektblock bezeichnet wird), der bei der oberen linken Position angeordnet ist, werden beispielsweise die folgenden Prozesse durchgeführt.
  • Für diese Prozesse werden die Komponentenmuster für den expandierten Block gebildet und vorbereitet. In diesem Beispiel wird, anstelle der obigen vier Variablen X&sub1; bis X&sub4;, eine 8 x 8 Karnaugh-Karte verwendet, die sechs Variable von X&sub1; bis X&sub6; aufweist (vergl. Fig. 8), und in der Karte wird das Bitmuster angewendet, und ein Primimplikant wird erhalten.
  • Hier sind, in den derart erhaltenen Primimplikanten, lediglich die Primimplikanten expandierte Primimplikanten, die die Muster der Objektblöcke bedecken. Das Komponentenmuster wird durch die expandierten Primimplikanten gebildet.
  • In dem Beispiel aus Fig. 8 ist der Block A der Objektblock, die Blöcke A, B, C und D bilden einen expandierten Block und X&sub2; , X&sub1; , X&sub1; und X&sub1; , die von gestrichelten Linien umgeben sind, sind die expandierten Primimplikanten.
  • Das Komponentenmuster, das dem expandierten Primimplikanten entspricht, der auf die obige Art und Weise erhalten worden ist, wird in dem Komponentenmuster-Versorgungsbereich 6 gebildet und gespeichert, und ein angepaßtes Codewort wird ihm gegeben.
  • Der Komponentenmusterprozessor 10 empfängt eine expandierte Blockinformation, in der ein zu verarbeitender Block der Objektblock ist, um sequentiell jeden Block der Bitmusterinformation 1 zu verarbeiten. Die expandierte Blockinformation wird mit dem Komponentenmuster von dem Komponentenmuster-Versorgungsbereich 6 verglichen, und ein Satz mit der minimalen Anzahl von Komponentenmustern wird ausgewählt, wobei dieser Satz ein Satz aus Komponentenmustern ist, die zu einem Satz aus schwarzen Bits gehören und der notwendig ist, um das Bitmuster des Objektblockes zu vervollständigen.
  • Wo die benachbarten Blöcke in der Reihenfolge von links nach rechts und von oben nach unten als ein Objektblock verarbeitet werden, mit Ausnahme eines oberen linken Blockes, wird jeder Block wenigstens einmal als ein Mitglied eines anderen als des Objektblockes des expandierten Blockes verarbeitet, bis jeder Block als ein Objektblock verarbeitet ist. Im allgemeinen werden in jedem Block Bits, die in dem Komponentenmuster enthalten sind, die einen anderen Block als den Objektblock bestimmen, als ein Teil davon enthalten sein.
  • Daher speichert der Komponentenmusterprozessor 10 die oben erwähnten verarbeiteten Bits für jeden Block des verarbeiteten expandierten Blocks. Wenn der Block erneut in den expandierten zu verarbeitenden Block eingeführt wird, ist es nicht notwendig, die bereits verarbeiteten Bits durch das ausgewählte Komponentenmuster zu bedecken, d. h. die Bits sind "nicht zu beachtetende" Bits ("don't care" bits) in der Schaltkreistheorie.
  • Der Komponentenmusterprozessor 10 wählt das Komponentenmuster aus, dessen Satz zu dem Satz von schwarzen Bits des expandierten Blocks gehört. Zu diesem Zeitpunkt kann der Satz der oben erwähnten verarbeiteten Bits zu dem Satz der schwarzen Bits gehören oder nicht.
  • Für den Objektblock wird der Minimum-Komponentenmustersatz aus dem Satz der Komponentenmuster ausgewählt, so daß der Satz der nicht verarbeiteten Bits in dem Satz der schwarzen Bits zu dem ausgewählten Satz der Komponentenmuster gehört.
  • In dem Beispiel aus Fig. 8 können, wenn X&sub2; des Objektblocks (Gitters) bereits der Satz aus verarbeiteten Bits ist, X&sub1; &sub6;, X&sub1; und x&sub1; das Komponentenmuster sein. Wenn in den Blöcken B, C und D die verarbeiteten Bits nicht enthalten sind, wird das Komponentenmuster entsprechend x&sub1; ausgewählt, so daß die meisten nicht verarbeiteten schwarzen Bits bedeckt sind.
  • Der Codeprozessor 11 empfängt das angepaßte Codewort aus Komponentenmustern, die von dem Komponentenmusterprozessor 10 ausgewählt worden sind, wie zuvor erwähnt, in jedem Objektblock und erzeugt sequentiell einen codierten Ausgang 7, wie im Fall der Blockcodierung.
  • Fig. 4 zeigt Prozeßschritte, die den expandierten Block verwenden. Im Schritt 41 (S41) wird ein neuer Objektblock A ausgewählt. Im Schritt 42 (S42) wird das Komponentenmuster im Block A extrahiert, und im Schritt 43 (S43) wird eine expandierte Blockdefinition (EXP.BLOCK.DEF.) durchgeführt. Wenn die Definition möglich ist, schreitet der Prozeß zum Schritt 45 (S45) fort. Wenn die Definition nicht möglich ist, schreitet der Prozeß zu Schritt 44 (S44) fort. Im Schritt 45 wird der Primimplikant extrahiert, und in einem Schritt 47 (547) wird der Primimplikant in dem expandierten Block, der ein Komponentenmuster aus Block A enthält, extrahiert. Nach Schritt 47 schreitet der Prozeß zu Schritt 46 (S46) fort. Im Schritt 44 wird der gewöhnliche Prozeß wie für periphere Blöcke durchgeführt. Im Schritt 46 wird der extrahierte Primimplikant als ein expandiertes Blockkomponentenmuster ausgewählt. Nach den Schritten 44 und 46 schreitet der Prozeß zu dem Codeprozessor 11 weiter. Nach dem Schritt 46 wird demgegenüber im Schritt 48 (S48) das Bitmuster, das im Schritt 46 in den Blöcken B, C und D ausgewählt worden ist, als "von keinem Interesse" markiert. Im Schritt 49 (S49) wird der benachbarte Block als ein neuer Objektblock A ausgewählt. Wenn die Auswahl möglich ist, schreitet der Prozeß zum Schritt 41 zurück, und wenn keine Auswahl möglich ist, wird der Vorgang beendet.
  • Eine zweite Ausführungsform der vorliegenden Erfindung wird im folgenden unter Bezugnahme auf die Fig. 9 erläutert. Diese Ausführungsform ist mit einem Divisionsmarkenprozessor 12 ausgestattet, und zwar zusätzlich zu den Komponenten, die in Zusammenhang mit der ersten Ausführungsform beschrieben worden sind. Der Divisionsmarkenprozessor 12 empfängt einen Ausgang des Codeprozessors 11 und verhindert einen Divisionsmarkenausgang zwischen den Codewörtern, die bestimmte Bedingungen erfüllen.
  • In dieser Ausführungsform wird die Bedingung, in der die Kopfmarkierung eines Codewortes nicht in den vorangegangenen Codewörtern enthalten ist, übernommen. Der Divisionsmarkenprozessor 12 überprüft das Verhältnis zwischen jedem Codewort und der wnächsten Kopfmarke. und wenn die Bedingung erfüllt ist, wird die Einfügung einer Divisionsmarke bei einem Punkt, der dem vorangegangenen Codewort vorangeht, unterdrückt, und als ein Ergebnis hiervon kann der codierte Ausgang 8 verkürzt werden. Der Divisionsmarkenverkürzungsprozeß wird im folgenden erläutert.
  • [Divisionsmarkenverkürzungsprozeß]
  • Wie in der vorangegangenen Beschreibung muß im allgemeinen eine vorherbestimmte Divisionsmarke zwischen Codewörtern des codierten Ausganges 7 eingefügt werden, um eine Grenze von Codewörtern zu zeigen. Der Divisionsmarkenprozessor 12 in Fig. 9 vergleicht ein Codewort auf dem codierten Ausgang und die folgende Kopfmarke des nächsten Codewortes (angepaßtes Komponentenmustercodewort), und wenn die Kopfmarke nicht in dem vorangegangenen Codewort enthalten ist, kann die Divisionsmarke, die vor der Kopfmarke angeordnet sein sollte, weggelassen werden, und demnach kann ein kürzerer codierter Ausgang erhalten werden.
  • In der Vorrichtung, die den codierten Ausgang 8 verwendet, wird das Signal des codierten Ausgangs 8 aus dem Kopf entnommen, und wenn das nächste Signal des Codewortzuges, der von dem Codewort gefolgt wird, der im folgenden bestimmt werden wird, oder die Divisionsmarke eine Divisionsmarke oder ein Codewort ist, das die vorangegangenen Bedingungen erfüllt, wird der Codewortzug als ein Code betrachtet.
  • In einem ersten Beispiel für die obigen Bedingungen werden die angepaßten Codewörter der Komponentenmuster in einer vorherbestimmten Reihenfolge addiert. Der Codeprozessor 11 ordnet die angepaßten Codewörter der ausgewählten Komponentenmuster in einein Block zu einem Codewortzug an, und zwar in einer vorherbestimmten Reihenfolge.
  • Der Divisionsmarkenprozessor 12 vergleicht die letzte Marke eines Codewortes und die Kopfmarke des nächsten Codewortes und, wenn die zwei Marken nur in der vorherbestimmten Reihenfolge sind, wird die Divisionsmarke gelassen wie sie ist, und wenn die zwei Marken die gleichen sind oder nicht in der vorherbestimmten Reihenfolge sind, wird die Divisionsmarke eliminiert.
  • In einem zweiten Beispiel für die obigen Bedingungen detektiert, wenn angenommen wird, daß Komponentenmuster entsprechend einem jeden Priinimplikanten, die die vorangehenden logischen Gleichungen bilden, bereitgestellt werden, der Divisionsmarkenprozessor 12, ob das Komponentenmuster, das durch die Kopfmarke des Codewortes unterschieden wird, zu dem Satz der Komponentenmuster gehört, die durch die Marke des vorangegangenen Codewortes unterschieden worden sind (d. h. vollständig in dem Bitmuster des Satzes enthalten sind), oder umgekehrt, ob die erstere zum letzteren gehört, und unter derartigen Bedingungen wird die Divisionsmarke eliminiert.
  • Diese Bedingung ist in dem folgenden Zustand erfüllt, in dem beispielsweise, wie in den Fig. 11A und 11B gezeigt, das angepaßte Codewort durch Pi ausgedrückt wird, das Komponentnmuster des linken Blockes in Fig. 11A durch P&sub1; + P&sub2; ausgedrückt wird, und das Kopfkomponentenmuster, das in dem folgenden rechten Block enthalten ist, als P&sub3; ausgedrückt wird.
  • D. h., daß wenn in diesem Beispiel P&sub3; = P&sub1; + P&sub2; + P&sub3; ist und P&sub3; in dem linken Blockcodewort enthalten ist, das Bitmuster, das dadurch ausgedrückt wird, wie in Fig. 11B gezeigt, das Bitmuster identisch mit P&sub3; ist und der obige Zustand nicht mit der Definition übereinstimmt, daß der Bitmusterausdruck der logischen Gleichung entspricht, die Primimplikanten umfaßt. Daher wird P&sub3; nicht in dem linken Blockcodewort eingefügt, und es kann zu diesem Zeitpunkt, wenn die Divisionsmarke abgekürzt wird, die Grenze des Codewortes unterschieden werden.
  • In dem Beispiel der dritten Bedingung macht, unter der Annahme, daß die Bitmusterinformation 1 vollständig vorverarbeitet wird, wie zuvor erwähnt, der Divisionsmarkenprozessor 12 vorübergehend ein Bitmusterkombinations-Komponentenmuster, das durch eine Kopfmarke des Codewortes und der vorangegangenen Codewortmarke unterschieden wird, und wenn das vorübergehend hergestellte Bitmuster ein Bitmuster enthält, das durch die Vorverarbeitung eliminiert wird, wird die Divisionsmarke abgekürzt.
  • Wo die Bedingung, die in den Fig. 12A und 12B dargestellt ist, erfüllt ist, wird das Muster des linken Blockes in Fig. 12A durch P&sub1; + P&sub2; ausgedrückt, und das Komponentenmuster des Kopfes des folgenden rechten Blockes durch wird durch P&sub3; ausgedrückt.
  • D. h., daß wenn das obige P&sub3; mit P&sub1; + P&sub2; kombiniert wird, das kombinierte Bitmuster sich ergibt, wie in Fig. 12B dargestellt. Die in Fig. 12B mit einem Kreis umgebenen Bits sind illegale Bits. Dieser Zustand zeigt, daß die Vorverarbeitung nicht vollständig ist und nicht mit der Annahme übereinstimmt. Daher wird in diesem Fall die Divisionsmarke abgekürzt.
  • Der Divisionsmarkenprozessor 12 führt die Abkürzung der Divisionsmarke durch, indem eine oder eine Kombination aus mehr als zwei Bedingungen durchgeführt wird.
  • In Fig. 10 ist ein Flußdiagramm des Divisionsmarkenprozessors der zweiten Ausführungsform dargestellt.
  • Im Schritt 51 (S51) bestimmt das Signal von dem Codeprozessor die Ordnung der Komponentenmuster. Wenn die Ordnung eines vorangegangenen Komponentenmusters höher oder gleich der Ordnung des nächsten Komponentenmusters ist, schreitet der Prozeß zu dem Schritt 54 (S54) fort. Wenn die Ordnung der Komponenteninuster niedriger ist als die Ordnung des nächsten Komponenteninusters, schreitet der Prozeß zum Schritt 52 (S52) fort. Im Schritt 52 wird der Einschluß zwischen den Komponentenmustern bestimmt. Wenn einer in dem anderen enthalten ist, schreitet der Prozeß zum Schritt 54 weiter. Wenn nicht, schreitet der Prozeß zum Schritt 53 (S53) weiter. Im Schritt 53 wird durch die logische Summe des vorangegangenen (oder vorigen) und des nächsten (oder nachfolgenden) Musters die Erzeugung des illegalen Bitmusters detektiert. Wenn die Erzeugung stattfindet, schreitet der Prozeß zum Schritt 54 weiter. Wenn die Erzeugung nicht stattfindet, endet der Prozeß und das System gibt den codierten Ausgang aus. Im Schritt 54 wird die Abkürzung der Divisionsmarke verarbeitet, und der Prozeß nach dem Schritt 54 ist der gleiche wie der beim Schritt 53.
  • Eine dritte Ausführungsform der vorliegenden Erfindung wird im folgenden beschrieben. In Fig. 13 bezeichnet das Bezugszeichen 13 einen Vorhersageprozessor, der einen Koinzidenzzustand, etc. zwischen einem Vorhersagemuster von einem Vorhersagemuster-Versorgungsbereich 9 und einem Bildbitmuster anlegt, und zwar an einen Komponentenmusterprozessor 14, und 15 ist ein Codeprozessor, der einen codierten Ausgang 16 aus der Koinzidenzzustandsmarkierung erzeugt, die von dem Komponentenmusterprozessor 14 angelegt wird, und dem angepaßten Codewort des Komponentenmusters.
  • Der Vorhersagemuster-Versorgungsbereich 9 erzeugt ein Vorhersagemuster, um ein Bitmuster eines Blockes vorherzusagen, nachdem es von einem Bitmuster des Blockes verarbeitet worden ist, der bei einer vorherbestimmten, in Beziehung stehenden Position angeordnet ist, und zwar für einen sequentiell verarbeiteten Block.
  • Der Vorhersageprozessor 13 vergleicht in jedem Objektblock das Bitmuster des Blockes mit Vorhersagemustern, die aus dem Vorhersagemuster-Versorgungsbereich 9 entnommen worden sind, basierend auf den Bitmustern des Blockes, der ein vorherbestimmtes benachbartes Verhältnis aufweist, und bildet eine vorherbestimmte Markierung, die einen Koinzidenzzustand von beiden Muster zeigt, und ein notwendiges Bitmuster in jedem Zustand, das von dem Koinzidenzzustand verschieden ist. Die gebildeten Muster werden an den Komponentenmusterprozessor 14 angelegt.
  • Der Komponentenmusterprozessor 14 verschlüsselt das angelegte Bitmuster bezüglich dem Komponentenmuster-Versorgungsbereich 6 nur in einem Fall, mit Ausnahme des Koinzidenzzustandes, legt das Codewort des ausgewählten Komponentenmusters und die Markierung des Koinzidenzzustandes an den Codeprozessor 15 an, und der Codeprozessor 15 gibt den codierten Ausgang 16 aus.
  • Eine Mustervorhersage, die in dieser Ausführungsform verwendet wird, wird im folgenden erläutert.
  • [Mustervorhersage]
  • In dem oben erwähnten Blockcodierungssystem und in dem expandierten Blockcodierungssystem wird ein Bitmuster des folgenden Blockes aus einem bereits definierten Block vorhergesagt, wenn die Vorhersage und das folgende Bitmuster koinzidieren, wobei lediglich ein "Erfolg" der Koinzidenz mit der Vorhersage unterdrückt wird, und die Codierung, die das reale Bitmuster ausdrückt, wird direkt abgekürzt, und demnach wird der codierte Ausgang verkürzt.
  • Darüberhinaus wird, wo das Vorhersagemuster zu dem realen Bitmuster gehört, der Ausdruck "partieller Erfolg" gemacht, und ein Codewort, das das Bit ausdrückt, das in dem Vorhersagemuster gemacht worden ist, wird dem Ausdruck hinzugefügt. Demnach kann eine weitere Informationskoinpression erwartet werden.
  • In einem Fall, der sich von "Erfolg" und "partiellem Erfolg" unterscheidet, wird "Ausfall" ausgedrückt, und das gesamte Bitmuster wird verschlüsselt.
  • Der Vorhersageprozessor 13 in Fig. 13 legt die obige Vorhersage beispielsweise an das Bitmuster des Blockes an, das von der Bitmusterinformation 1 angelegt worden ist, und die Ergebnisse werden in den Komponentenmusterprozessor 14 übermittelt.
  • Der Vorhersagemuster-Versorgungsbereich 9 nimmt ein Vorhersagemuster auf oder errechnet es aus dem Bitmuster, das die Grundlage des zu vorhersagenden Vorhersagemusters ist, und legt das Gleiche an den Vorhersageprozessor 13 an.
  • Wie beispielsweise in Fig. 15 dargestellt, wird das Bitmuster des Blockes D durch die Bitmuster der Spalten von Block C und der Zeilen von Block B in Kontakt mit der oberen und linken Seite des Blockes D vorhergesagt. Das Vorhersagemuster wird durch eine logische Summe aus zwei Bitmustern gebildet, so daß das obere Spaltenbitmuster und das linke Zeilenbitmuster sich zu allen Spalten und Zeilen des Blockes D bewegen, wie er ist.
  • Im einzelnen wird, wenn das Bitmuster der 4 x 4 Karnaugh-Karte entspricht, das Vorhersagemuster durch die logische Summe aus jeder logischen Gleichung ausgedrückt, und zwar nur in den Teilen, die die Buchstaben X&sub3; und X&sub4; der logischen Gleichung ausdrücken, die das vierte Zeilenmuster aus Block B ausdrücken, und die Buchstaben X&sub1; und X&sub2; der logischen Gleichung, die das vierte Spaltenmuster aus Block C ausdrücken.
  • Der Vorhersageprozessor 13 legt für den Objektblock D ein Bitmuster der vierten Zeile in Block B, benachbart zu der linken und der vierten Spalte in Block C, benachbart zum obigen Vorhersagemusterteil 9 an. Dann empfängt der Vorhersageprozessor 13 ein Vorhersagemuster D' und vergleicht dieses mit dem realen Bitmuster aus Block D.
  • Als ein Ergebnis hiervon wird, wenn beide Muster koinzidieren, eine vorherbestimmte Marke "Erfolg", die eine erfolgreiche Koinzidenz ausdrückt, an den Komponentenmusterprozessor 14 angelegt. Der Komponentenmusterprozessor 14 gibt in diesem Fall beispielsweise die "Erfolg"-Marke an den Codeprozessor 15 aus, wie sie ist, und der Prozeß des Blockes wird dann beendet. Der Codeprozessor 15 bestimmt die "Erfolg"-Marke als ein Codewort des Blockes und gibt einen codierten Ausgang 16 aus.
  • Wenn ein Teil des Musters des Blockes D mit einem Vorhersagemuster D' koinzidiert, d. h. in dem Fall, daß in dem Beispiel aus Fig. 15 das Vorhersagemuster in dem D'-Teil überall schwarz ist und das alles andere weiß ist, während es in dem realen Muster D' schwarz ist und D" in Fig. 15 partiell schwarz ist, d. h. eine partielle Koinzidenz erreicht ist, entfernt der Vorhersageprozessor 13 den Teil, der mit dem Vorhersagemuster koinzidiert, er macht ein partielles Muster, das ein D"-Muster ist, und legt das partielle Muster und die vorherbestimmte "partielle Erfolg"-Marke an den Komponentenmusterprozessor 14 an.
  • Der Komponentenmusterprozessor 14 wählt einen Satz des Komponentenmusters, das das angelegte partielle Muster bildet, von dem Komponentenmuster-Versorgungsbereich 6 aus und legt den Satz zusammen mit einer "partieller Erfolg"-Marke an den Codeprozessor 15 an. Daher führt der Codeprozessor 15 beispielsweise eine Vorlokalisierung der "partieller Erfolg"-Marke zum Codewortzug des angepaßten Codewortes des Komponentenmusters durch.
  • Wenn das Vorhersagemuster und das Muster des Blockes D sich nicht in einem der zwei obigen Zustände befinden, legt der Vorhersageprozessor 13 eine vorherbestimmte "Ausfall"-Marke und das Bitmuster des Blockes D an den Komponentenmusterprozessor 14 an.
  • Der Komponentenmusterprozessor 14 wählt einen Satz von Komponentenmustern, die das angelegte Bitmuster von dem Komponentenmuster-Versorgungsbereich 6 bilden aus, und legt den Satz zusammen mit einer "Ausfall"-Marke an den Codeprozessor 15 an. Der Codeprozessor 15 führt eine Vorlokalisierung der "Ausfall"- Marke zum Codewortzug des angepaßten Codewortes des Komponentenmusters durch.
  • In diesem System können, unter Verwendung von geeigneten Marken, wie "Erfolg", "partieller Erfolg" und "Ausfall", diese Marken als Divisionsmarken fungieren und die Divisionsmarke des codierten Ausgangs 16 abkürzen.
  • Fig. 14 zeigt ein Flußdiagramm des Vorhersageprozesses.
  • Zunächst wird in einem Schritt 61 (S61) ein Objektblock D ausgewählt, und in einem Schritt 62 (S62) werden der obere benachbarte Block B und der linke benachbarte Block C ausgewählt. Dann wird in einem Schritt 63 (S63) das Bitmuster der vierten Zeile im Block B extrahiert. Demgegenüber schreitet nach dem Schritt 62 der Prozeß zum Schritt 64 (S64) weiter. Im Schritt 64 wird das Bitmuster der vierten Spalte in Block C extrahiert. Nach den Schritten 63 und 64 schreitet der Prozeß zum Schritt 65 (S65) weiter. Im Schritt 65 wird das Vorhersagemuster im Block D entnommen oder errechnet. Die Muster aus den Schritten 61 und 65 werden in Schritt 66 (S66) verglichen. Wenn die Koinzidenz der zwei Muster erhalten wird, wird der Prozeß als "Erfolg" behandelt. Wenn keine Koinzidenz erhalten wird, schreitet der Prozeß zum Schritt 67 (S67) weiter. Im Schritt 67 wird der Einschluß zwischen den zwei Muster bestimmt. Wenn ein Muster in dem anderen enthalten ist, wird der Prozeß als "partieller Erfolg" behandelt. Wenn ein Muster nicht in dem anderen enthalten ist, wird der Prozeß als "Ausfall" behandelt und schreitet zum Schritt 68 (S68) weiter. Im Schritt 68 wird das Bitmuster des Blockes D gelassen wie es ist, und der Prozeß schreitet zu dem des Komponentenmusterprozessors weiter. Wenn der Prozeß ein "partieller Erfolg" ist, wird nach dem Schritt 67 das enthaltene Muster in dem Bitmuster des Objektblockes D im Schritt 69 (569) als "Von keinem Interesse"-Zustand aufgefaßt. Nach dem Schritt 69 schreitet der Prozeß so weiter, wie auch nach dem Schritt 68.
  • Wie aus dem oben gesagten deutlich wird, kann die vorliegende Erfindung für ein Bildinformations-Codeverarbeitungssystem verwendet werden, und für eine zwei-wertige Bildinformation, die mit einer höheren Codekompressionsrate komprimiert und codiert ist.

Claims (12)

1. Ein Bilddatenverarbeitungssystem zum Verschlüsseln von binären Daten, die Bildpixel repräsentieren, die erste und zweite Werte aufweisen, wobei das genannte System zunächst die genannten binären Daten in Objektblöcken gruppiert, wobei jeder Objektblock einen 2p x 2q Block aus Pixeln in dem genannten Bild repräsentiert, und worin beliebige Erstwert-Pixel innerhalb eines jeden der genannten 2p x 2q Blöcke aus Pixeln ein Muster für eine Analyse bildet, welches System umfaßt:
ein Mittel (6) zum Speichern oder Erzeugen von Daten, die eine Mehrzahl von unterschiedlichen Komponentenmustern darstellen, wobei jedes Komponentenmuster ein Muster aus Pixeln des ersten Wertes ist;
ein Mittel (10/14) zum Verarbeiten der Daten eines jeden Objektblockes, um das Muster der Erstwert-Pixel zu analysieren, die durch den genannten Objektblock repräsentiert werden, in einen Satz der genannten Komponentenmuster, wobei der Satz der Komponentenmuster im wesentlichen das genannte dargestellte Muster reproduziert; und
ein Codierungsinittel (11/15) zum Erzeugen, für jeden Objektblock, eines Objektblockcodes der den entsprechenden Satz von Komponentenmustern identifiziert;
dadurch gekennzeichnet, daß
das Verarbeitungsmittel (10/14) angepaßt ist, die Objektblockdaten basierend auf einer Darstellung der genannten Daten als eine 2p x 2q Karnaugh-Karte zu analysieren, und durch Auswerten der logischen Funktion, der die genannte Darstellung entspricht, wobei jeder Ausdruck der genannten ausgewerteten logischen Funktion ein ausgewerteter Primimplikant ist;
das Komponentenmusterspeicher- oder -erzeugungsmittel (6) angeordnet ist, Komponentenmusterdaten zu speichern oder zu erzeugen, die Primimplikanten einer 2p x 2q Karnaugh-Karte entsprechen; und
das Verarbeitungsmittel (10/14) die Komponentenmuster als den genannten Satz von Komponentenmustern identifiziert, die den ausgewerteten Primimplikanten entsprechen.
2. Ein Bildatenverarbeitungssystem nach Anspruch 1, worin die genannten Objektblöcke in expandierten Blöcken gruppiert werden, von denen jeder eine ganzzahlige Anzahl von Objektblöcken enthält, und das Verarbeitungsmittel (10/14) angepaßt ist, den präzisen binären Wert die Daten bei einer gegebenen Zelle der genannten Karnaugh-Kartendarstellung eines Objektblockes in einem bestimmten expandierten Block nicht zu beachten, wenn die vorige Verarbeitung von Daten in dem expandierten Block eine Zuordnung eines Komponentenmusters auf ein Muster enthielt, das das Pixel enthält, auf das sich die genannte Daten bezieht.
3. Ein Bilddatenverarbeitungssystem nach Anspruch 1 oder 2, worin ein Mittel vorgesehen ist, um die binären Daten vorzuverarbeiten, um dadurch isolierte Pixel des genannten ersten oder zweiten Wertes in dem Pixelbild, das durch die genannten binären Daten dargestellt ist, eliminiert werden.
4. Ein Bilddatenverarbeitungssystem nach Anspruch 3, worin das Komponentenmusterspeicher- oder -erzeugungsmittel (6) angeordnet ist, Komponentenmuster zu speichern oder zu erzeugen, die eine Untermenge, i.f. Subsatz genannt, der Primimplikanten für eine 2p x 2q Karnaugh-Karte entsprechen, wobei der genannte Subsatz die Primimplikanten repräsentiert, die häufiger in logischen Ausdrücken auftreten, die von Darstellungen der Bilddaten als Karnaugh-Karten abgeleitet sind.
5. Ein Bilddatenverarbeitungssystem nach Anspruch 3, worin das Komponentenmusterspeicher- oder -erzeugungsmittel (6) angeordnet ist, Komponentenmuster zu speichern oder zu erzeugen, die einem Subsatz von Primimplikanten für eine 2p x 2q Karnaugh-Karte entsprechen, wobei der genannte Subsatz die Primimplikanten wegläßt, die Gruppen von Pixeln des ersten Wertes entsprechen, die logisch aneinandergrenzen, aber physikalisch nicht aneinandergrenzen.
6. Ein Bilddatenverarbeitungssystem nach einem der vorigen Ansprüche, worin das Codierungsmittel (11) angepaßt ist, Divisionsmarken zur Einfügung zwischen auf einanderfolgenden Objektblockcodes einzufügen, um Grenzen dazwischen zu markieren, und worin ein Mittel (12) vorgesehen ist, um die Einfügung einer Divisionsmarke zwischen aufeinanderfolgenden Objektblockcodes zu sperren, wenn die Sequenz aus Komponentenmustern, die durch Teile der genannten aufeinanderfolgenden Objektblockcodes benachbart zu der genannten Grenze identifiziert ist, eine Sequenz ist, die nicht innerhalb eines einzelnen Objektblockcodes auftreten kann.
7. Ein Bilddatenverarbeitungssystem nach Anspruch 6, worin das Codierungsmittel (11) angepaßt ist, einen jeden Objektblockcode derart zu bilden, daß jedes Komponentenmuster in dem genannten Satz aus Mustern in dem Objektcodeblock in einer vorherbestimmten Ordnung identifiziert ist, und das Behinderungsmittel (12) angepaßt ist, die Einfügung einer Divisionsmarke bei der Grenze zwischen auf einanderfolgenden Objektblockcodes zu sperren, wenn die Sequenz aus Komponentenmustern, die durch Objektblockcodeteile vor und nach der Grenze angedeutet ist, die genannte vorherbestimmte Ordnung verletzt.
8. Ein Bilddatenverarbeitungssystem nach Anspruch 6, worin das Verarbeitungsmittel (10) angepaßt ist, jedes Muster in einen Satz aus Komponentenmustern zu analysieren, so daß keines der Komponentenmuster in dem Satz ein Subsatz eines anderen der Komponentenmuster in dem genannten Satz ist, und das genannte Behinderungsmittel (12) angepaßt ist, die Einfügung einer Divisionsmarke an der Grenze zwischen aufeinanderfolgenden Objektblockcodes zu sperren, wenn ein Komponentenmuster, das durch einen Objektblockcodeteil auf einer Seite der Grenze angedeutet ist, ein Subsatz einer Komponente ist, die durch einen Objektblockcodeteil auf der anderen Seite der Grenze angedeutet ist.
9. Ein Bilddatenverarbeitungssystein nach Anspruch 6, worin ein Mittel vorgesehen ist, um die binären Daten vorzuverarbeiten, wodurch isolierte Pixel des genannten ersten oder zweiten Wertes in dem Pixelbild eliminiert werden, das durch die genannten binären Daten dargestellt ist, und das genannte Behinderungsmittel (12) angepaßt ist, die Einfügung einer Divisionsmarke an der Grenze zwischen aufeinanderfolgenden Objektblockcodes zu verhindern, wenn eine Überlagerung von Komponentenmustern, die durch Objektblockcodeteile vor und nach der Grenze angedeutet ist, ein Muster erzeugt, das isolierte Pixel des genannten ersten oder zweiten Wertes enthält.
10. Ein Bilddatenverarbeitungssystem nach Anspruch 1, 3, 4 oder 5, welches desweiteren umfaßt:
ein Vorhersagemittel (9) zum Verarbeiten von einem oder von mehreren ersten Objektblöcken, um ein Muster aus Pixeln des ersten Wertes vorherzusagen, von denen erwartet wird, daß sie durch einen weiteren Objektblock dargestellt werden; und ein Vergleichsmittel (13) zum Vergleichen des vorhergesagten Musters mit dem aktuellen Muster der Erstwert-Pixel, die durch den genannten weiteren Objektblock dargestellt sind, und zum Anzeigen von allen Überschußpixeln des ersten Wertes in dem aktuellen Muster, die nicht in dem vorhergesagten Muster zugegen sind, worin
das Verarbeitungsmittel (14) angepaßt ist, die Muster der Überschußpixel des ersten Wertes zu analysieren, die durch das Vergleichsmittel angezeigt sind, in einen entsprechenden Satz aus Komponentenmustern; und
das Codierungsmittel (15) angepaßt ist, den genannten weiteren Objektblock gemäß dem Ausgang des Vergleichsmittels zu codieren, wobei der sich ergebende Objektblockcode einen ersten Teil enthält, der angibt, ob das vorhergesagte Muster, das dem aktuellen Muster glich, ein Subsatz des aktuellen Musters war oder keine dieser Bedingungen erfüllte, und, mit Ausnahme des Falles, in dem das vorhergesagte Muster dem aktuellen Muster glich, einen zweiten Teil, der den Satz der Komponentenmuster identifiziert, die durch das Vergleichsmittel als den genannten Pixeln des ersten Wertes entsprechend identifiziert worden sind.
11. Ein Bilddatenverarbeitungssystein nach Anspruch 10, worin das Vorhersagemittel (9) derart angeordnet ist, daß der genannte eine oder die mehreren ersten Objektblöcke, die in dem Vorhersagemittel verarbeitet worden sind, zwei Objektblöcke sind, die Blöcke von Pixeln repräsentieren, die benachbart zu zwei vorherbestimmten Seiten des Blockes aus Pixeln sind, der durch den genannten weiteren Objektblock repräsentiert wird.
12. Ein Bilddatenverarbeitungssystem nach Anspruch 11, worin das genannte Vorhersageinittel (9) angepaßt ist, ein vorhergesagtes Muster basierend auf den Mustern der Erstwert- Pixel in den Pixelblöcken zu erzeugen, die durch die genannten zwei Objektblöcke an ihren Seiten benachbart zu dem genannten weiteren Objektblock repräsentiert werden.
DE3854360T 1987-03-25 1988-03-23 Bildinformationscodeverarbeitungssystem. Expired - Lifetime DE3854360T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62070727A JPS63236472A (ja) 1987-03-25 1987-03-25 画像情報符号化処理装置

Publications (2)

Publication Number Publication Date
DE3854360D1 DE3854360D1 (de) 1995-10-05
DE3854360T2 true DE3854360T2 (de) 1996-02-08

Family

ID=13439861

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3854360T Expired - Lifetime DE3854360T2 (de) 1987-03-25 1988-03-23 Bildinformationscodeverarbeitungssystem.

Country Status (4)

Country Link
US (1) US5113457A (de)
EP (1) EP0284511B1 (de)
JP (1) JPS63236472A (de)
DE (1) DE3854360T2 (de)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5282256A (en) * 1988-05-13 1994-01-25 Canon Kabushiki Kaisha Binary image data coding method having the function of correcting errors derived from coding
DE69108010T2 (de) * 1990-11-21 1995-07-06 Polaroid Corp Druckgerät.
EP0514504B1 (de) * 1990-11-21 1997-04-23 Polaroid Corporation Druckverfahren
US5818970A (en) * 1991-04-26 1998-10-06 Canon Kabushiki Kaisha Image encoding apparatus
US5262878A (en) * 1991-06-14 1993-11-16 General Instrument Corporation Method and apparatus for compressing digital still picture signals
WO1993021603A1 (en) * 1992-04-22 1993-10-28 Microsoft Corporation Method and system for transferring a bit-mapped image using vertical and horizontal rules
US5367385A (en) * 1992-05-07 1994-11-22 Picturetel Corporation Method and apparatus for processing block coded image data to reduce boundary artifacts between adjacent image blocks
US5634079A (en) * 1992-05-15 1997-05-27 Zenith Data Systems Corporation System for providing for a parallel port with standard signals and a flash recovery mode with second predetermined signals redefining parallel port with alternate functions
NL9201415A (nl) * 1992-08-06 1994-03-01 Oce Nederland Bv Werkwijze en inrichting voor het coderen en decoderen van digitale beeldgegevens.
JP2575595B2 (ja) * 1992-10-20 1997-01-29 インターナショナル・ビジネス・マシーンズ・コーポレイション イメージフレームの圧縮方法及びデータ処理システム
JPH0681826U (ja) * 1993-05-11 1994-11-22 日本フルハーフ株式会社 荷物運搬具用案内レ−ル
US5610657A (en) * 1993-09-14 1997-03-11 Envistech Inc. Video compression using an iterative error data coding method
JPH07170521A (ja) * 1993-12-15 1995-07-04 Canon Inc 画像処理装置
US5742346A (en) * 1994-08-09 1998-04-21 Picture Tel Corporation Spatially adaptive blur filter
US6307967B1 (en) 1995-09-29 2001-10-23 Kabushiki Kaisha Toshiba Video coding and video decoding apparatus
US6754268B1 (en) 1995-09-29 2004-06-22 Kabushiki Kaisha Toshiba Video coding and video decoding apparatus
US5883678A (en) 1995-09-29 1999-03-16 Kabushiki Kaisha Toshiba Video coding and video decoding apparatus for reducing an alpha-map signal at a controlled reduction ratio
FR2751773B1 (fr) * 1996-07-23 1998-10-02 France Telecom Procede de compression d'images binaires
GB2362055A (en) * 2000-05-03 2001-11-07 Clearstream Tech Ltd Image compression using a codebook
JP2004280157A (ja) * 2003-03-12 2004-10-07 Toshiba Corp 画像処理装置
US8473428B2 (en) * 2008-12-18 2013-06-25 Cisco Technology, Inc. Generation and use of specific probability tables for arithmetic coding in data compression systems
CN109963175B (zh) * 2019-01-29 2020-12-15 中国人民解放军战略支援部队信息工程大学 基于显隐性潜在因子模型的电视产品精准推荐方法及系统

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3726993A (en) * 1971-12-10 1973-04-10 Xerox Corp Data compression methods and apparatus
US3980809A (en) * 1973-07-16 1976-09-14 International Business Machines Corporation Encoding logic for reduced bandwidth pictorial data transmission system
FR2257183B1 (fr) * 1974-01-04 1976-11-26 Cit Alcatel Systeme de transmission fac-simile d'une image
US4028731A (en) * 1975-09-29 1977-06-07 International Business Machines Corporation Apparatus for compression coding using cross-array correlation between two-dimensional matrices derived from two-valued digital images
GB2038142B (en) * 1978-12-15 1982-11-24 Ibm Image data compression
JPS5583373A (en) * 1978-12-20 1980-06-23 Matsushita Electric Ind Co Ltd Signal suppressing transmission system
US4261018A (en) * 1979-06-18 1981-04-07 Bell Telephone Laboratories, Incorporated Progressive image transmission
US4325085A (en) * 1980-06-09 1982-04-13 Digital Communications Corporation Method and apparatus for adaptive facsimile compression using a two dimensional maximum likelihood predictor
US4409623A (en) * 1981-01-31 1983-10-11 Nippon Telegraph & Telephone Public Corporation Method and equipment for processing gray scale facsimile signal
US4555802A (en) * 1983-01-10 1985-11-26 International Business Machines Corporation Compaction and decompaction of non-coded information bearing signals
US4606069A (en) * 1983-06-10 1986-08-12 At&T Bell Laboratories Apparatus and method for compression of facsimile information by pattern matching
US4593374A (en) * 1983-10-18 1986-06-03 Rca Corporation Teletext magazine code detector
US4577227A (en) * 1983-10-18 1986-03-18 Rca Corporation Teletext framing code detector
JPS61123279A (ja) * 1984-11-20 1986-06-11 Fujitsu Ltd 画像デ−タ復元回路
DE3685878D1 (de) * 1986-03-14 1992-08-06 Ant Nachrichtentech Verfahren zur verringerung der datenmenge bei der bildkodierung.

Also Published As

Publication number Publication date
DE3854360D1 (de) 1995-10-05
US5113457A (en) 1992-05-12
EP0284511A2 (de) 1988-09-28
JPS63236472A (ja) 1988-10-03
EP0284511A3 (de) 1991-01-16
JPH053184B2 (de) 1993-01-14
EP0284511B1 (de) 1995-08-30

Similar Documents

Publication Publication Date Title
DE3854360T2 (de) Bildinformationscodeverarbeitungssystem.
DE69922453T2 (de) Bildverarbeitungsgerät, Bildverarbeitungsverfahren und Herstellungsmedia
DE69632620T2 (de) Verfahren und Vorrichtung zur Kodierung und Dekodierung eines Bildes
DE69119882T2 (de) Verfahren und Einrichtung zum Einbringen von Machinenlesbaren, digitalen Daten in Halbtonbilder
DE3546136C2 (de)
DE69523135T2 (de) Bildverarbeitungsvorrichtung und Verfahren
DE69519196T2 (de) Bildverarbeitungsgerät und -verfahren
DE69730109T2 (de) Verfahren und Vorrichtung zum Herstellen von Wasserzeichen
DE68918605T2 (de) Verfahren zur Speicherung und Übertragung von Bilddaten als Bilddatengruppe, passend zur Bildsuche.
DE3850627T2 (de) Vorrichtung zum Codieren von digitalen Videosignalen und eine entsprechende Decodiervorrichtung.
DE3785950T2 (de) Verfahren zur umsetzung der bildelementdichte fuer grautonbilder.
DE68927082T2 (de) Verfahren und Vorrichtung für die Bilddatenkomprimierung
DE4005492C2 (de) Bildcodierverfahren
DE4242796C2 (de) Hocheffizientes Kodierverfahren für mit Zweipegelbildern vermischte natürliche Bilder
DE10120644B4 (de) Bilddatenverdichtungsverfahren und -vorrichtung, welche Bilddaten separat durch Modifizieren der Farbe verdichten
DE3636675A1 (de) Kodierverfahren und -einrichtung
DE2835689A1 (de) Anordnung zur veraenderung der aufloesung bei der bild-datenerfassung und -uebertragung
DE68927477T2 (de) Leistungsfähige Kodierung/Dekodierung in der Zerlegung und im Wiederaufbau eines Hochauflösungsbildes unter Verwendung seiner Kopie geringerer Auflösung
DE3416795C2 (de) Bilddaten-Kompressionssystem
DE3638852C2 (de) Bildverarbeitungsgerät und -verfahren
DE3815586C2 (de) Kompressionsverfahren für Bildsignale
DE69024130T2 (de) Datenkompressionssystem
DE4322364C2 (de) Verfahren zum Erzeugen von Fontdaten
DE3811396C2 (de)
DE3751684T2 (de) Musterverarbeitung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition