-
Vorverzerrer zur Aufbereitung von Runs vor einer RI-Codierung" Die
Erfindung betrifft einen Vorverzerrer zur Aufbereitung von Runs vor einer Runlängecodierung
zweipegeliger Videosignale, bei der die Runs in Codeworte gleicher Länge codiert
werden und das Auftreten eines Codewortes mit N gleichen Zeichen einer Art dem empfangsseitigen
Decodierer anzeigt, daß das darauffolgende Codewort dem gleichen Run angehört.
-
Bei der Runlängecodierung zweipegeliger Videosignale, insbesondere
binärer getakteter Faksimilesignale mit fester Codewortlänge ist es erforderlich,
längere Runs, deren Länge mit nur einem Codewort
nicht darstellbar
ist, in kürzere Runs zu zerlegen. Der tDerlauf über die von der Codewortlänge maximal
erlaubte Runlanze muB vom Decodierer erkennbar sein, damit beim uebergang ziim nächsten
Codewort der logische Pegel des Ausgangssignals nicht umgeschaltet wird.
-
Es ist bekannt, zur Zerlegung eines längeren Runs in mehrere Codeworte
bei einer Codewortlänge von N Bits das Auftreten eines Codewortes mit N Einsen als
Vberlaufmeldung zu benutzen (NIZ 1973, H. 2, S. 91 bis 94). Ein Nachteil dieses
Verfahrens ist jedoch, daß man dabei mit einem einzelnen Codewort eine Runlänge
von lediglich maximal 2N-2 Bildelementen codieren kann.
-
3ei langen Codeworten ist der Nachteil gering. Die Codewortlänge richtet
sich jedoch nach der mittleren Runlänge, die bei Schrift und bei detailreichen Zeichnungen
verhältnisnäßig kurz ist. Bei Codewortlängen von beispielsweise zwei oder drei Bits
wirkt sich der Nachteil bereits erheblich aus, da dann für Runlängen von zwei bzw.
sechs Bildelementen zwei statt ein Codewort erforderlich sind.
-
Der Erfindung liegt die Aufgabe zugrunde, den Stand der Technik zu
verbessern. Insbesondere soll die Anzahl der notwendigen Codeworte reduziert werden.
-
Diese Aufgabe wird durch die im Anspruch 1 genannte Erfindung gelöst.
-
Durch den Vorverzerrer gemäß der Erfindung ist es nunmehr möglich,
mit einem einzigen, N Bits umfassenden Codewort effektiv Runlängen bis zu 2 Bildelemente
zu codieren. Das binäre Bildsignal wird hierbei vor dem RL-Codierer so vorverzerrt,
daß bei einer Codewortlänge von N Bits Runlängen von 2N oder eines Vielfachen von
2N Bildelementen nicht mehr auftreten. Codeworte, die aus N Einsen bestehen, treten
nur dann auf, wenn ein Run länger als 2N Bildelemente ist. Solche Codeworte stellen
effektiv eine Folge von 2N gleichen Bildelementen dar und liefern zur gleichen Zeit
die Uberlaufmeldung. Dadurch wird eine eineindeutige Decodierung gewährleistet.
Die Vorverzerrung hat, wie verarbeitete Bilder zeigen, keinen Einfluß auf die Bildqualität,
denn die beim Auftreten einer Runlänge von 2 oder von k 2N Bildelementen, wobei
k = 1, 2, 3 ... bedeutet, entstehende Eantenverschiebung um einen Bildpunkt liegt
in der Größenordnung der durch die zeitliche Diskretisierung eines binären Faksimilesignals
auftretenden Kantenverschiebung.
-
Die Erfindung gestattet es also, ohne Verluste an Bildqualität höhere
Kompressionsfaktoren zu erreichen, da auch Runlängen von 2 und 2N Bildelementen
mit einem einzigen, N Bit umfassenden Codewort codiert werden können. Der Vorteil
ist umso größer, je kleiner die Codewortlänge N gewählt ist, was besonders für die
Codierung von Schrift- und Schreibmaschinentextvorlagen von Bedeutung ist.
-
Vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung sind
in den Unteransprüchen angegeben.
-
Ein Ausführungsbeispiel der Erfindung für eine Codewort länge von
drei Bit wird nun anhand der Figur 1 näher erläutert.
-
Figur 1 zeigt einen Vorverzerrer V, der zur Aufbereitung von Runs,
die von einem Bildabtaster 1 geliefert werden, vor einem Runlängencodierer 17 geschaltet
ist. Dieser Runlängencodierer codiert in diesem Beispiel Runs in Codeworte gleicher,
drei Bit umfassender langen Da das Auftreten eines Codewortes mit N gleichen Zeichen
einer Art, beispielsweise Einsen, dem hier nicht gezeigten empfangsseitigen Decodierer
anzeigt, daß das darauffolgende Codewort dem gleichen Run angehört, sind im Vorverzerrer
Schaltungsmaßnahmen
getroffen, welche die Runlänge von genau 2 Bildelemente oder von einem ganzzahligen
Vielfachen dieser Bildelementenanzahl zugunsten des darauffolgenden Runs um ein
Bildelement verkürzen.
-
Diese Verkürzung zugunsten des darauffolgenden Runs wird am einfachsten
dadurch erreicht, daß die Schaltung des Vorverzerrers so ausgelegt ist, daß das
letzte Bildelement eines genau k 2N Bildelement umfassenden Runs (k - 1, 2, 3 ...)
invertiert wird. Zur Invertierung ist in Figur 1 ein erstes Antivalenzelied 12 vorgesehen,
dessen einer Eingang am Ausgang eines Schieberegisters 4 angeschlossen und dessen
anderem Eingang ein Signal zur Invertierung zugeführt ist. Das Signal zur Invertierung
wird über eine an einem Nlodulo-N-Zähler 5 angeschlossene Logik 6 abgenommen und
über ein UND-Glied 10 nur dann weitergegeben, wenn ein an der ersten und zweiten
Stufe des Schiebregisters 4 angeschlossenes zweites Antivalenzglied 9 das Ende eines
k 2N langen Runs anzeigt.
-
Der Modulob Zähler 5 ist außerdem über ein drittes Antivalenzglied
7 an der zweiten und dritt-en Stufe des Schieberegisters 4 aageschlossen.
-
Die Wirkungsweise der Schaltung ist folgende.
-
Ein vom Taktgenerator 3 gesteuerter Bildabtaster 1 liefert ein binäres
taktsynchrones Videosignal 2. Das Videosignal wird in einem 3-stufigen Schieberegister
4 eingespeist, der die binären Werte von drei aufeinanderfolgenden Bildelementen
z.B.
-
A, B und C festhält.
-
Der Zähler 5 hat die Aufgabe, die Runlänge festzustellen. Seine Ausgänge
sind mit den Eingängen eines Verknüpfungsgliedes 6 verbunden. Im Ausführungsbeispiel
besteht das Verknüpfungsglied aus einem UND-Glied. Dieses gibt an seinem Ausgang
nur dann ein Signal ab, wenn die vorgegebene maximale Runlänge, die im angegebenen
Beispiel bei einer Codewortlänge von drei Bits acht Bildelemente beträgt, auftritt.
-
Schieberegister 4 und Modulo-N-Zähler 5 werden vom Takt des Taktgenerators
weitergeschaltet. Jedoch zählt der Zahler 5 nur dann den BildelemententaBt, wenn
an seinem Eingang E ein eine logische "?" kennzeichnendes Signal anliegt. Ein eine
logische "?" kennzeichnendes Signal an seinem mit "reset" gekennzeichneten Eingang
stellt den Zahler auf seine Anfangsstellung zurück.
-
Beim Auftreten von zwei gleichen benachbarten Bildelementen A und
B im Schieberegister 4 gibt das Antivalenzglied 7 kein Signal ab, so daß der Inverter
8 den Zähler veranlaßt, den Takt und damit aufeinanderfolgende gleichartige Bildelemente
zu zählen.
-
ueber das Antivalenzglied 9 wird jeweils das Bildelement B mit dem
ihm zeitlich nachfolgenden Bildelement C verglichen. Ist B 6 C, so gibt das Antivalenzglied
9 an seinem Ausgang ein einer logischen "1" entsprechendes Signal ab. Somit gibt
das UND-Glied 10 an seinem Ausgang nur dann ein Signal ab, wenn ein Run maximaler
Länge vom Zähler 5 gezählt wurde und dadurch die an den Ausgängen des Zählers 5
angeschlossene Verknüpfungsschaltung an dem zweiten Eingang des UND-Gliedes 10 ein
Signal abgibt und am ersten Eingang des UND-Gliedes 10, infolge ungleicher Bildelemente
B und C ebenfalls ein Signal steht. In diesem Fall soll nun erfindungsgemäß das
letzte Bildelement B vor dem Videosignalwechsel in seinem binären Wert umgepolt,
d. h. invertiert werden.
-
Zur Invertierung des Bildelementes wird das aus dem Schieberegister
4 auslaufende binäre Videosignal 11 über das Antivalenzglied 12 mit einem Steuersignal
13 verknüpft. Das Steuersignal 13
wird durch Verzögern des vom UND-Glied
10 erzeugten Signals um eine Takteinheit durch das digitale Verzögerungsglied 14
gewonnen. Zur Verzögerung des Steuersignals 13 um eine Takteinheit wird dem digitalen
Verzögerungsglied 14 der Takt T des Taktgenerators 3 zugeführt. Die Verzögerung
ist notwendig, damit das letzte und nicht das vorletzte Bildelement des Runs maximaler
Länge umgepolt wird.
-
Der modifizierte Run 16 am Ausgang des Antivalenzgliedes 12 wird schließlich
dem an sich bekannten Runlängencodierer 17 zugeführt.
-
Bei jedem Auftreten eines Signalüberganges zwischen den Bildpunkten
A und B der zweiten und dritten Stufe des Schieberegisters Ä gibt das Antivalenzglied
7 ein Signal ab, welches den flodulo-N-Zähler 5 auf seinen Anfangswert zurücksetzt.
-
Das Verzögerungsglied 14 läßt sich einsparen, wenn ein 4-stufiges
Schieberegister 4 verwendet wird, dessen erste drei Stufen mit den Antivalenzgliedern
9 und 7 so beschaltet ist wie in Figur 1 angegeben. Zur erforderlichen Verzögerung
der Bildelemente zur Invertierung des letzten Bildelementes eines k 2N langen Runs
ist jedoch die Leitung 11, welche zum ersten
Eingang des Antivalenzgliedes
12 führt nicht an den Ausgang der dritten Stufe des Schieberegisters 4 anzuschließen,
sondern an den Ausgang der vierten Stufe des Schieberegisters.