DE3418624C2 - - Google Patents

Info

Publication number
DE3418624C2
DE3418624C2 DE3418624A DE3418624A DE3418624C2 DE 3418624 C2 DE3418624 C2 DE 3418624C2 DE 3418624 A DE3418624 A DE 3418624A DE 3418624 A DE3418624 A DE 3418624A DE 3418624 C2 DE3418624 C2 DE 3418624C2
Authority
DE
Germany
Prior art keywords
value
data value
data
sum
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
DE3418624A
Other languages
English (en)
Other versions
DE3418624A1 (de
Inventor
Katsura Yokohama Jp Kawakami
Shigeo Kawasaki Jp Shimazaki
Etsuko Tokio/Tokyo Jp Hirokami
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP58088527A external-priority patent/JPS59214376A/ja
Priority claimed from JP58088531A external-priority patent/JPS59214377A/ja
Priority claimed from JP58098348A external-priority patent/JPS59223846A/ja
Priority claimed from JP58104444A external-priority patent/JPS59229669A/ja
Priority claimed from JP59045832A external-priority patent/JPS60189579A/ja
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of DE3418624A1 publication Critical patent/DE3418624A1/de
Application granted granted Critical
Publication of DE3418624C2 publication Critical patent/DE3418624C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/02Affine transformations

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Description

Die Erfindung betrifft eine Vorrichtung gemäß dem Oberbegriff des Patentanspruchs 1.
Aus der EP-A-O 093 429 ist eine derartige Vorrichtung entnehmbar, die zum Umsetzen eines in Form einer Matrix vorhandenen zweidimensionalen Bilds in ein vergrößertes oder verkleinertes Bild dient, dessen Bildpunkte ebenfalls matrixförmig angeordnet sind. Bei dieser Umsetzung wird die Periodizität der ortsmäßigen Beziehung zwischen den Bildelementen der ersten Matrix und denen der zweiten Matrix ausgenutzt und die Bildelemente der zweiten Matrix in Abhängigkeit von dieser Periodizität und der Koordinatenbeziehungen unter Zuhilfenahme des maßstabsabhängigen Verhältnisses zwischen der ersten und der zweiten Matrix berechnet. Hierzu werden Grundzyklen der Matrizenkoordinaten sowie Grundzyklen für unterschiedliche Zeilen- und Spaltennummern entsprechender Matrixpunkte vorab gespeichert. Allerdings ist relativ große Speicherkapazität erforderlich, sofern eine ausreichende Anzahl derartiger Vergleichswerte vorhanden sein soll. Andernfalls ließe sich nur eine geringe Anzahl von Vergrößerungs- oder Verkleinerungsfaktoren einstellen.
Beim Gegenstand der EP-A-O 009 378 findet keine derartige Transformation von Bildelementen zwischen zwei Matrixgitterfeldern statt, sondern es ist vielmehr beabsichtigt, einen ausgewählten Vorlagenabschnitt gegebenenfalls unter Maßstabsveränderung an einer anderen Wiedergabeposition abbilden zu können. Die Vergrößerung oder Verkleinerung des ausgewählten Vorlagenabschnitts erfolgt hierbei in Abhängigkeit vom jeweils vorgegebenen Maßstabsverhältnis. Über die Art der vorrichtungstechnischen Gewinnung der den einzelnen Maßstabsfaktoren zugeordneten Verhältnisse sind dieser Druckschrift keine näheren Angaben entnehmbar.
Darüber hinaus geht aus der US-PS 43 81 547 ein Verfahren als bekannt hervor, bei dem zur geometrischen Abänderung eines Vorlagenbilds gleichzeitig mit dem aufeinanderfolgenden Auslesen der Vorlagenbilddaten Gewichtskoeffizienten, die einem vorgewählten Vergrößerungsverhältnis entsprechen, ausgelesen werden. Diese beiden Größen bestimmen die Adresse, unter der aufeinanderfolgend auf einen Speicher zugegriffen wird. Das Wiedergabebild wird anschließend durch Additionen und Divisionen der aus dem Speicher ausgelesenen Daten und der Gewichtsfaktoren erhalten. Auch hier findet folglich keine Transformation zwischen den Elementen zweier Gitter statt.
Ferner wird bei dem als "affine Umsetzmatrix" bekannten Verfahren ein erwünschtes Maßstabsverhältnis mit einem Liniensegment multipliziert, auf welchem Bildelemente des ursprünglichen Bildfelds gelegen sind. Hierzu muß jedoch eine Multiplikation für jedes Bildelement des ursprünglichen Bildfelds ausgeführt werden. Da die Multiplikation eine große Anzahl von Rechenschritten umfaßt, wird zum Verarbeiten aller binären Bildsignale eines Bildfelds längere Zeit benötigt.
Der Erfindung liegt die Aufgabe zugrunde, eine Vorrichtung gemäß dem Oberbegriff des Patentanspruchs 1 zu schaffen, die bei verhältnismäßig einfachem Aufbau eine rasche Umsetzung entsprechend der gewünschten Abbildungsbeziehung ermöglicht.
Diese Aufgabe wird mit den im kennzeichnenden Teil des Patentanspruchs 1 angegebenen Merkmalen gelöst.
Die bei der erfindungsgemäßen Vorrichtung vorgesehenen Einrichtungen somit nur Additions-, Subtraktions-, Größenbestimmungs- und Längenverschiebungsschritte aus, so daß eine gewünschte Abbildungsbeziehung, d. h. eine Formatänderung oder eine Bilddrehung, einfach und rasch realisiert werden kann.
Vorteilhafte Ausgestaltungen der Erfindung sind in den Unteransprüchen angegeben.
Die Erfindung wird nachstehend anhand von Ausführungsbeispielen unter Bezugnahme auf die Zeichnung näher erläutert. Es zeigt
Fig. 1a 1b und 2 Darstellungen zur Beschreibung des der Erfindung zugrundeliegenden Prinzips,
Fig. 3 eine Darstellung eines Ausführungsbeispiels der Vorrichtung,
Fig. 4 eine Darstellung eines dem Ausführungsbeispiel nach Fig. 3 entsprechenden Programmablaufplans, während Fig. 4a eine Abwandlung zeigt, die angewandt wird, wenn ein ursprüngliches Bildfeld vergrößert wird,
Fig. 5 eine Darstellung eines gegenüber Fig. 3 abgewandelten Ausführungsbeispiels,
Fig. 6 ein Ablaufdiagramm, das dem Ausführungsbeispiel nach Fig. 5 entspricht,
Fig. 7 eine Darstellung des Ergebnisses der Bilddatenübertragung,
Fig. 8 ein Blockschaltbild einer Schaltung,
Fig. 9 eine Darstellung eines Programmablaufplans für die Schaltung nach Fig. 8,
Fig. 10 eine Darstellung des Prinzips einer Drehung, durch die ein ursprüngliches Bildfeld in eine gewünschte Lage gedreht wird,
Fig. 11 ein Ausführungsbeispiel zur Ausführung der Drehung gemäß Fig. 10 und
Fig. 12 einen Programmablaufplan für das Ausführungsbeispiel nach Fig. 11.
Vor der ausführlichen Beschreibung der Erfindung ist es zweckdienlich, das der Erfindung zugrundeliegende Prinzip anhand der Fig. 1a und 1b zu erläutern. Es sei zuerst in Betracht gezogen, daß ein gewählter Bereich eines auf dem Bildschirm einer Kathodenstrahlröhre angezeigten Bilds unter einem gewünschten Verhältnis m/n zu vergrößern oder zu verkleinern ist. Jedes der Bildelemente auf dem Schirmbild ist durch einen Binärpegel "1" oder "0" dargestellt und an der Überkreuzung einer Zeile mit einer Spalte einer Quadratmatrix gelegen, um es mit dem Zeilen-Spalten-Format eines nachfolgend beschriebenen Bildspeichers in Übereinstimmung zu bringen. Es sei angenommen, daß ein Satz aus acht ursprünglichen binären Bilddaten a(i = 1 bis 8), die die Bilddichten der Bildelemente auf einer Zeile 1 darstellen, unter einem Verkleinerungsverhältnis von 5/8 auf einem Satz aus fünf binären Bilddaten b j (J = 1 bis 5) zu verkleinern ist, die auf einer Zeile 2 angeordnet sind, wie es in Fig. 1a gezeigt ist. Zur Vereinfachung wird zunächst das Rasterintervall bzw. der Rasterabstand als Einheit angenommen.
Die Bildelementelage ist durch ein Koordinatensystem dargestellt; wenn die Zeilennummer bekannt ist, wird jedes Bildelement durch eine ganze Zahl festgelegt, die die Spalte darstellt, auf der das Bildelement liegt. Eine Bruchzahl, die im Ablauf einer Berechnung abgeleitet wird, wird als "Rest" in einem Register gespeichert. Nach Fig. 1b sind ursprüngliche Bilddaten a₁ bis a₈ auf der Abszisse eines Koordinatensystems angeordnet, auf dessen Ordinate Verkleinerungs-Bilddaten b₁ bis b₅ angeordnet sind. Eine ausgezogene Linie 3 hat ein Steigungsverhältnis bzw. eine Steilheit von 5/8, was dem Verkleinerungsverhältnis entspricht, wobei Punkte S₁ bis S₈ an Überkreuzungen angeordnet sind, die in einer zur Ordinate parallelen Richtung gemessen der Umsetzungslinie 3 am nächsten liegen.
Ein Indexzeichen j stellt den Ausgabezeiger bzw. die Ausgabeadresse eines nachfolgend beschriebenen Speichersystems dar und ist eine Funktion eines Eingabezeigers bzw. einer Eingabeadresse i gemäß folgendem Zusammenhang:
j(i) = [(m/n)(i-1) + Ro] (1)
wobei i = 1, 2, . . .n ist, j = 1, 2, . . .m ist und, falls Ro = m/2n ist, die folgende Gleichung gilt:
j(i) = [(m/n)(i-1) + m/2n] + 1 = [(m/n)(i-(1/2))] + 1 (2)
Daher kann die Gleichung (2) ausgeschrieben werden zu:
j = [(5/8)(i-1) + 5/16)] + 1 (3)
Eine gestrichelte Linie 4 in Fig. 1b stellt die Gleichung (3) dar, während die ausgezogene Linie 3 folgende Gleichung darstellt:
j = (5/8) {(i-(1/2)} + 1/2 (4)
Zuerst wird in dem Speicher als "Rest" ein Anfangswert m/2n (= 5/16) eingestellt, wenn die Adresse i gleich "1" ist und die Adresse j auf "1" eingestellt wird. Durch das Aufstufen der Adresse i auf "2" wird dem Anfangswert 5/16 für den Rest das Verkleinerungsverhältnis 5/8 hinzuaddiert, so daß sich eine Summe von 15/16 ergibt, während die Adresse j unverändert bleibt. Das gleiche Verkleinerungsverhältnis 5/8 wird jedesmal dann addiert, wenn die Adresse i aufgestuft wird. Wenn der Gesamtwert "1" übersteigt, wird ein Übertragsignal mit dem Einheitswert "1" aus dem Register abgeleitet, wobei der darin gespeicherte Gesamtwert auf 9/16 verringert wird, wenn die Adresse i auf "3" und die Adresse j auf "2" aufgestuft werden. Daher bleibt die Adresse j unverändert, wenn der Registerinhalt kleiner als "1" ist, und wird aufgestuft, wenn der Inhalt den Wert "1" übersteigt. Bei der Wiederholung des vorstehend beschriebenen Vorgangs ergibt das Register einen Übertrag, wenn die Adresse i zu "3", "4", "6" und "7" wird, wobei jeweils gemäß Fig. 2 dementsprechend die Adresse bzw. der Zeiger j aufgestuft wird.
Fig. 3 zeigt schematisch den Innenaufbau eines Mikroprozessors gemäß einem Ausführungsbeispiel der Erfindung. Das Ausführungsbeispiel weist ein Restregister 10, eine Einstellvorrichtung 11 für das Einstellen eines Anfangsrestes Ro in dem Register 10 und einen Addierer 12 auf, der einen Teil des Rechenwerks des Mikroprozessors bildet.
Zur Verallgemeinerung des Konzepts der erfindungsgemäßen Vorrichtung wird das Rasterintervall bzw. der Rasterabstand durch eine Größe L dargestellt, welche ihrerseits durch L Stufen des Restregisters 10 dargestellt wird. Ein Aufstufungsregister 13 speichert eine Konstante C, die gleich (m/n)× L ist, wobei dieser Wert an den Addierer 12 angelegt wird und mit einem in dem Register 10 gespeicherten Wert R addiert wird, was eine Summe von R + C ergibt. Dieser Summenwert wird zu dem Register 10 zurückgeführt.
Das Register 10 wird durch Eingangsimpulse getriggert, die von einer Taktquelle 14 über ein Schaltglied 15 her zugeführt werden, welches durch ein Ausgangssignal eines Flip-Flops 16 geschaltet wird, dessen Setzeingang mittels einer nicht gezeigten "Ausführung"-Taste einer Tastatur angesteuert wird und dessen Rücksetzeingang mit dem Ausgang eines programmierbaren Zählers 17 verbunden ist. Dieser Zähler 17 ist so geschaltet, daß er bei Betätigung der "Ausführung"-Taste gelöscht wird und sein Eingangssignal aus dem Schaltglied 15 aufnimmt, um die Taktimpulse zu zählen, bis ein Wert T erreicht ist, der die Anzahl der in dem gewählten Bildbereich enthaltenen Bildelemente angibt und der durch ein Befehlssignal aus der Tastatur im Voraus eingestellt wird. Somit wird das Schaltglied 15 für ein Intervall eingeschaltet, das dem voreingestellten Wert T entspricht.
Ein Bildspeicher 18 speichert binäre Signale aus einem erwünschten Bereich einer Sichtanzeigevorrichtung 19 zum aufeinanderfolgenden Zuführen derselben zu einem Eingaberegister 21 über eine Schaltvorrichtung 20, wobei entsprechend dem Ende von Verkleinerungs-Berechnungsvorgängen an einer jeweiligen Zeile die Bildsignale einer nachfolgenden Zeile zugeführt werden. Das Eingaberegister 21 weist eine Vielzahl von Speicherstellen auf, die Ursprungsdatenorte bzw. Ursprungsdatenpunkte eines ersten Bildfelds bestimmen, an welchen die ursprünglichen Bilddatenbits gelegen sind, und die durch einen Taktimpuls aus dem Schaltglied 15, der als Adresse i angelegt wird, um eine Bitstelle nach links verschoben werden. Die verschobenen Bilddaten a i werden aufeinanderfolgend an ein Ausgaberegister 22 angelegt, das eine Vielzahl von Speicherstellen enthält, die Bestimmung- bzw. Zieldatenpunkte eines zweiten Bildfelds bestimmen, in das die eingegebenen Bilddaten a i übertragen werden.
Entsprechend einem jeweiligen Taktimpuls wird das Register 10 mit der Summe R + C aus dem Addierer 12 beschickt. Wenn der gespeicherte Summenwert den Maximalwert L übersteigt, wird von dem Register 10 ein Übertragssignal abgegeben und von dem Speicherwert automatisch der Wert L subtrahiert, so daß eine Bruchzahl R verbleibt, die durch den nächsten auslösenden Taktimpuls dem Addierer 12 zugeführt wird, um mit dem Aufstufungswert C addiert zu werden.
Das Ausgaberegister 22 wird durch einen Zeiger bzw. die Adresse j, die aus einem Übertragungsdetektor 23 jedesmal dann angelegt wird, wenn in dem Restregister 10 ein Überlauf auftritt, um eine Bitstelle nach links verschoben, wodurch binäre Ausgangs-Bildsignale b j erzeugt werden. Der Schalter 20 wird so geschaltet, daß die Ausgangs-Bildsignale b j an dem Bildspeicher 18 angelegt werden, damit sie an der Sichtanzeigevorrichtung 19 in einem Bereich angezeigt werden, der unter dem Verhältnis m/n verkleinert ist. Auf die Übertragung der Ausgangsdaten bzw. Bildsignale b j zu dem Bildspeicher hin werden aus dem Bildspeicher zu dem Eingaberegister 21 Eingangsbildsignale für die nächste Zeile übertragen. Dieser Vorgang wird wiederholt, bis der voreingestellte Wert T in dem Zähler 17 erreicht ist.
Fig. 4 zeigt ein Ablaufdiagramm, das dem beschriebenen Ausführungsbeispiel zugeordnet ist. Anfänglich wird ein Zeitzählungswert t des Zählers 17 auf "0" eingestellt (Schritt 30), während ein Rest R anfänglich auf Ro eingestellt wird (Schritt 31). Die Adresse i wird um "1" aufgestuft (Schritt 32), wonach bei einem Additions-Schritt 33 der Rest R mit dem Aufstufungswert C addiert wird. Der addierte Rest wird bei einem Überprüfungsschritt 34 mit dem Wert L verglichen. Falls R gleich oder größer als L ist, schreitet die Steuerung zu einem Schritt 35 weiter, bei dem L von R subtrahiert wird, wonach die Adresse j um "1" aufgestuft wird (Schritt 36). Falls R kleiner als L ist, werden die Schritte 35 und 36 übersprungen, während ein Schritt 37 dadurch ausgeführt wird, daß b j auf a i eingestellt wird. Der Zählwert t wird um "1" aufgestuft (Schritt 38), wonach die Steuerung über einen Schritt 39 zu dem Schritt 32 zurückkehrt, um die vorangehend genannten Schritte 32 bis 38 zu wiederholen, bis t gleich oder größer als der voreingestellte Wert T wird.
Ursprüngliche Bilder können auf eine zu dem vorstehend beschriebenen Verkleinerungsprozeß entgegengesetzte Weise vergrößert werden. Daher werden bei dem Ausführungsbeispiel nach Fig. 3 die ursprünglichen Bilddaten in das Ausgaberegister 22 gespeichert und entsprechend einer Aufstufung des Zeigers bzw. der Adresse j in das Eingaberegister 21 verschoben, aus dem sie entsprechend einer unter gleichmäßigen Intervallen auftretenden Aufstufung des Zeigers bzw. der Adresse i abgegeben werden. Wenn eine Bildvergrößerung erwünscht ist, ist es bei dem Ablaufdiagramm nach Fig. 4 lediglich erforderlich, die Pfeilrichtung bei dem Schritt 37 umzukehren, wie es bei 37 a in Fig. 4a gezeigt ist.
Fig. 5 zeigt eine Darstellung einer praktischen Ausführungsform des Ausführungsbeispiels nach Fig. 3, wobei den Teilen in Fig. 3 entsprechende Teile mit den gleichen Bezugszeichen bezeichnet sind. Dem Aufstufungsregister 13 nach Fig. 3 entspricht ein Zähler-Register 13 a, das einen Wert P speichert, der das Produkt aus einem Abstand L und m ist, und ein Nenner-Register 13 b, das einen Wert -Q speichert, der das Produkt aus dem Abstand L und n ist. Gleichermaßen ist der Addierer 12 in einen ersten Addierer 12 a, der die Summe von R aus dem Register 10 und dem Zähler P abgibt, und einen zweiten Addierer 12 b aufgeteilt, der die Summe aus R und dem Nenner -Q abgibt. Das binäre Ausgangssignal des Addierers 12 b wird einem Negativ- bzw. Minus-Detektor 24 zugeführt, der dann, wenn das Additionsergebnis des Addierers 12 b einen negativen Wert hat, ein Ausgangssignal an eine Multiplexer- Steuereinheit 25 abgibt, die einen ersten und einen zweiten Multiplexer 26 bzw. 27 steuert. Diese Multiplexer werden so gesteuert, daß der erste Multiplexer 26 an das Register 10 anfänglich das Ausgangssignal (R + P) des Addierers 12 a anlegt, wonach der zweite Multiplexer 27 in Abhängigkeit vom Ausgangssignal des Minus-Detektors 24 gesteuert wird. Falls die Addition mittels des Addierers 12 b einen positiven Wert ergibt, liegt die Multiplexer- Steuereinheit 25 an den ersten und den zweiten Multiplexer Befehlssignale in der Weise an, daß dem Register 10 das Ausgangssignal des Addierers 12 b zugeführt wird. Von dem Register 10 wird ein Übertragssignal erzeugt, um die Adresse j um "1" aufzustufen. Falls ein negativer Wert vorliegt, bewirkt das Ausgangssignal des Minus-Detektors 24, daß die Steuereinheit 25 Befehlssignale in der Weise erzeugt, daß das Ausgangssignal des Registers 10 statt dessen wieder an dieses angelegt und kein Übertragssignal erzeugt wird.
Fig. 6 zeigt ein Ablaufdiagramm, das dem Ausführungsbeispiel nach Fig. 5 zugeordnet ist, wobei den Schritten nach Fig. 4 entsprechende Schritte mit den gleichen Bezugszeichen bezeichnet sind. Bei einem Schritt 33 a wird der Rest R mit dem Zähler P summiert, während bei einem Schritt 34 a überprüft wird, ob R gleich oder größer als der Nenner Q ist. Falls RQ gilt, schreitet das Programm zu einem Schritt 35 a, bei dem Q von R subtrahiert wird, und danach zu einem Schritt 36 weiter, bei dem die Adresse j aufgestuft wird. Falls R kleiner als Q ist, werden die Schritte 35 a und 36 bis zu einem Schritt 37 übersprungen, bei dem b j mit a i fortgeschrieben bzw. auf den neuesten Stand gebracht wird.
Bei den vorstehend beschriebenen Ausführungsbeispielen können bei einer Verkleinerung eines bei 40 in Fig. 7 gezeigten Buchstabens T möglicherweise gemäß der Darstellung bei 41 der Steg und die Arme an den beiden Enden des Querstrichs des Buchstabens T entfallen, falls binäre Pegel "1" für die Spalte a₄ verloren gehen. Dies kann dadurch vermieden werden, daß das Ausführungsbeispiel nach Fig. 3 in der in Fig. 8 gezeigten Weise abgewandelt wird, gemäß der an den Ausgang des Eingaberegisters 21 ein Ergänzungsregister 45 für das Festhalten des Bildsignals für die Dauer eines Bits angeschlossen ist. Ein ODER-Glied 46 ist mit einem ersten Eingang an eine am weitesten rechts gelegene Bitstelle 22 a des Ausgaberegisters 22 und mit einem zweiten Eingang an den Ausgang des Ergänzungsregisters 45 angeschlossen. Der Ausgang des ODER-Glieds 46 ist an die am weitesten rechts gelegene Bitstelle 22 a angeschlossen. Bei dieser Gestaltung wird in dem ODER-Glied 46 ein Paar beliebiger aufeinanderfolgender Bilddatenbits a i und b j so kombiniert, daß ein logischer Pegel "1" erzeugt wird, wenn eines der eingegebenen Bits den binären Pegel "1" hat. Der logische Pegel "1" hat. Der logische Pegel "1" aus dem ODER-Glied 46 wird in die am weitesten rechts liegende Bitstelle des Ausgaberegisters 22 eingegeben. Falls b j den binären Pegel "0" hat und a i den binären Pegel "1" hat, wird aus dem ODER-Glied 46 in die Bitstelle 22 a der sich ergebende logische Pegel "1" eingegeben, um damit den binären Zustand von b j auf "1" zu ändern. Falls bei dem nächsten Triggerzeitpunkt a (i + 1) den binären Pegel "0" hat, bleibt der binäre Pegel "1" von b j unverändert. Wenn daher die am weitesten rechts gelegene Bitstelle 22 a mit dem Datenwert a₁ gefüllt ist, wird dieser mit dem Datenwert a₂ erneuert, so daß ein binärer Pegel "1" bei 43 in der Spalte b₁ eines verkleinerten Bilds 42 als 43′ rekonstruiert wird. Wenn gleichermaßen die am weitesten rechts gelegene Bitstelle 22 a mit dem Datenwert a₃ gefüllt ist, wird dieser mit einem binären Pegel "1" des Datenwerts a₄ als b₃ erneuert, wodurch in der Spalte b₃ die binären Pegel "1" für den Steg des Buchstabens T rekonstruiert werden. Auf gleichartige Weise werden die Daten a₆ und a₇ kombiniert, um die binären Pegel "1" in der Spalte b₅ zu rekonstruieren.
Fig. 9 zeigt ein dem Ausführungsbeispiel nach Fig. 8 zugeordnetes Ablaufdiagramm. Dieses Ablaufdiagramm ist allgemein demjenigen nach Fig. 4 gleichartig, unterscheidet sich jedoch von diesem darin, daß es zusätzlich sowohl einen Schritt 51 zum Speichern eines Eingangsdatenwerts a i in einen Speicher als Ausgangsdatenwert b j vor der Aufstufung der Adresse i bei dem Schritt 32 als auch einen Schritt 52 enthält, bei dem b j auf das Ergebnis der logischen Summierung von b j und a i zurückgestellt wird, falls der Rest R kleiner als L ist. Der Schritt 37, bei dem b j auf a i zurückgestellt wird, wird ausgeführt, nachdem bei dem Schritt 36 die Adresse j aufgestuft worden ist.
Fig. 10 veranschaulicht die Arbeitsweise eines weiteren Ausführungsbeispiels, mit dem eine Drehung eines ursprünglichen Bilds erzielbar ist. Zu Vereinfachung wird davon ausgegangen, daß ein ursprüngliches Bild binäre Bilddaten a₁ bis a₈ enthält, die wie bei den vorangehenden Ausführungsbeispielen jeweils unter einem Abstand L längs einer Geraden 60 angeordnet sind. Die Gerade 60 soll um einen Winkel R geschwenkt werden, so daß die Daten zu angenommenen Punkten b₁ bis b₈ längs einer Linie 61 versetzt werden. Die angenommenen Orte für die Bilddaten b i werden im weiteren zu mit c₁ bis c₇ bezeichneten nahegelegenen Rasterkreuzpunkten folgendermaßen verlegt:
Der Ort des Datenwertsb i auf der Linie 61 ist durch die Koordinaten j = X bi und k = Y bi folgendermaßen gegeben:
j = X bi = Rxo + (i-1)Δ x = Rxo + (i-1)L cos R (5)
k = Y bi = Ryo + (i-1)Δ y = Ryo + (i-1)L sin R (6)
wobei mit Rxo und Ryo der Ort von b i auf X-Y-Koordinaten dargestellt ist. Der Datenwert b i wird durch Analogie zwischen der Gleichung (1) und den Gleichungen (5) und (6) mit dem Maßstabverhältnis m/n entsprechend cos R und sin R in den Datenwert c jk umgesetzt.
Fig. 11 zeigt eine schematische Darstellung eines Schaltungsaufbaus eines Mikroprozessors, mit dem das in Fig. 10 dargestellte Prinzip verwirklicht wird. Dieses Ausführungsbeispiel weist allgemein ein X-Restregister 70 und ein Y-Restregister 71 auf, die jeweils auf Anfangs- Restwerte Rxo und Ryo rückstellbar sind. Das X- Restregister 70 hat L Bitstellen, deren Inhalt in einem Addierer 72 mit einem L cos R darstellenden binären Signal aus einem Cosinusregister 73 summiert wird, wobei der Binäreingang des Restregisters mit dem Ausgang des Addierers 72 verbunden ist. Gleichermaßen hat das Y-Restregister 71 L Bitstellen, deren Inhalt in einem Addierer 74 mit einem L sin R darstellenden binären Signal aus einem Sinusregister 75 summiert wird, wobei der Binäreingang des Restregisters mit dem Ausgang des Addierers 74 verbunden ist. Die Restregister 71 und 72 werden auf gleichartige Weise wie das in Fig. 3 gezeigte Restregister durch Impulse aus einem Impulsgenerator getriggert und führen Übertragssignale jeweils Übertrag-Detektoren 76 bzw. 77 zu.
Die ursprünglichen Bilddaten werden entsprechend der aus der Taktquelle 14 zugeführten Adresse i in ein Eingaberegister 78 eingegeben und zu einem Schreib/Lesespeicher 79 mit einer Matrixanordnung von Speicherstellen verschoben, welche als Funktion der Ausgangssignale eines X-Adressenregisters 80 und eines Y-Adressenregisters 81 adressierbar sind, die jeweils aus den Übertragdetektoren 76 bzw. 77 die Zeiger bzw. Adressen J bzw. K empfangen. Der in dem X-Adressenregister 80 gespeicherte Adressencode gibt den Ort des auf die X-Achse des Koordinatensystems nach Fig. 10 projizierten Bilddatenwerts b i an, während der Adressencode in dem Y-Adressenregister 81 den Ort des auf die Y-Achse projizierten Bilddatenwerts b i angibt. Der aus dem Eingaberegister 78 zugeführte Bilddatenwert wird in eine als Funktion der X- und Y-Adressencodes adressierten Speicherstelle als Bilddatenwert c jk eingespeichert und aus dem Speicher 79 über einen Schalter 82 zu einem Bildspeicher 83 und damit zu einer Sichtanzeigevorrichtung 84 ausgelesen.
Die Funktionsweise des Ausführungsbeispiels nach Fig. 11 wird nun anhand des Ablaufdiagramms in Fig. 12 erläutert. Nach Vorbereitungen bei Schritten 90 und 91, bei denen jeweils t auf "0" und Restwerte Rx und Ry auf Rxo bzw. Ryo eingestellt werden, wird die Adresse i um "1" aufgestuft (Schritt 92), wonach in dem Addierer 72 L cos R mit Rx addiert wird (Schritt 93). Rx wird mit L verglichen; falls Rx gleich oder größer als L ist, schreitet das Programm zu einem Schritt 95 weiter, bei dem L von Rx subtrahiert wird. Das Register 70 ergibt einen Übertrag, so daß der Übertragdetektor 76 die Adresse j um "1" aufstuft (Schritt 96); danach schreitet das Programm zu einem Schritt 97 weiter. Falls Rx kleiner als L ist, ergibt sich kein Überlauf des Registers 70, so daß das Programm zu dem Schritt 97 fortschreitet.
Bei dem Schritt 97 wird L sin R mit Ry addiert, wonach Ry mit L verglichen wird (Schritt 98). Falls Ry gleich oder größer als L ist, ergibt sich ein Überlauf des Registers 71, so daß L von Ry subtrahiert wird (Schritt 99), die Adresse k mittels des Übertragdetektors 77 um "1" aufgestuft wird (Schritt 100) und das Programm zu einem Schritt 101 fortschreitet. Falls Ry kleiner als L ist, schreitet das Programm von dem Schritt 98 zu dem Schritt 101 weiter.
Entsprechend den Zeigern bzw. Adressen j und k werden Datenbits c jk in den Schreib/Lesespeicher 79 eingespeichert (Schritt 101). Der Zeitwert t wird um "1" aufgestuft (Schritt 102), wonach der vorstehend beschriebene Ablauf wiederholt wird, bis t gleich oder größer als die durch T dargestellte Gesamtanzahl der Bits in der ursprünglichen Bildfläche wird.
Zur Ausführung der Programmierung können herkömmliche Allzweck-Datenprozessoren für die schnelle Berechnung zur binären Bildverarbeitung verwendet werden, jedoch ist es vorteilhaft, den Schaltungsaufbau solcher Prozessoren so zu verändern, daß deren Arbeitsgeschwindigkeit weiter gesteigert wird.

Claims (8)

1. Vorrichtung zur Durchführung der Übertragung von Bilddaten von ersten Gitterpunkten zu zweiten Gitterpunkten innerhalb eines Koordinatensystems, wobei die Bilddaten der ersten Gitterpunkte in einem ersten oder einem zweiten Speicherstellensatz gespeichert und die Bilddaten zwischen den Speicherstellensätzen in Übereinstimmung mit einer gewünschten Abbildungsbeziehung übertragen werden und eine Taktgebereinrichtung zum Erzeugen von Taktimpulsen vorhanden ist, gekennzeichnet durch eine auf die Taktimpulse ansprechende erste Einrichtung (10 bis 12, 23; 70 bis 77) zum wiederholten Addieren eines ersten Datenwerts (R o , R; Rx o , Rx, Ry o , Ry) mit einem konstanten zweiten Datenwert (C; L cos R, L sin R ) unter Bildung eines entsprechenden Summenwerts und zum Festlegen des ersten Datenwerts auf den Differenzwert zwischen dem Summenwert und einem vorbestimmten Wert, wenn die Summe den vorbestimmten Wert übersteigt, bzw. zum Festlegen des ersten Datenwerts auf den Summenwert, wenn der Summenwert kleiner ist als der vorbestimmte Wert, durch eine zweite Einrichtung, die den ersten Speicherstellensatz aufweist und entsprechend den Taktimpulsen eine Längenverschiebung der gespeicherten Bilddaten bei einer Maßstabsverkleinerung in einer ersten Richtung bzw. bei einer Maßstabsvergrößerung in einer zweiten Richtung durchführt, und durch eine dritte Einrichtung, die den an die zweite Einrichtung angeschlossenen zweiten Speicherstellensatz (22; 79) enthält und unter Steuerung durch die erste Einrichtung (10 bis 12, 23; 70 bis 77) bei den vorbestimmten Wert übersteigendem Summenwert eine Längsverschiebung der Bilddaten bei einer Maßstabsverkleinerung in der ersten Richtung von der zweiten Einrichtung zur dritten Einrichtung bzw. bei einer Maßstabsvergrößerung in der zweiten Richtung von der dritten zur zweiten Einrichtung durchführt.
2. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß der konstante zweite Datenwert das Produkt aus dem Abstand zwischen aufeinanderfolgenden Gitterpunkten und einem Maßstabsverhältnis zwischen den ersten und den zweiten Gitterpunkten und der vorbestimmte Wert den Abstand darstellen.
3. Vorrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die erste Einrichtung ein Schieberegister (10), dessen Speicherstellenanzahl dem vorbestimmten Wert entspricht, eine Einstelleinrichtung (11) zum Einstellen eines Anfangswertes (R o ) im Schieberegister (10) als erstem Datenwert und eine Addiereinrichtung (12) zum Addieren des im Schieberegister (10) gespeicherten ersten Datenwerts und des zweiten Datenwerts (C; P) und zum Zuführen eines den Summenwert darstellenden dritten Datenwerts (R + C; R + P) zum Schieberegister (10) aufweist, wobei das Schieberegister (10) durch die Taktimpulse zum Zusammenfassen des ersten und des dritten Datenwerts angesteuert wird und, wenn die Summe aus dem ersten und dem dritten Datenwert den vorbestimmten Wert übersteigt, ein Übertragssignal erzeugt, durch das die dritte Einrichtung zur Verschiebung der darin gespeicherten Bilddaten gesteuert wird.
4. Vorrichtung nach Anspruch 3, dadurch gekennzeichnet, daß die Addiereinrichtung (12 a) die Summe aus dem ersten Datenwert und einem das Produkt aus dem Abstand und einer Dimension der ersten Gitterpunkte darstellenden Datenwerts bildet, daß eine zweite Addiereinrichtung (12 b) die Summe aus dem ersten Datenwert des Schieberegisters (10) und einem das negative Produkt aus dem Abstand und einer weiteren Dimension darstellenden Datenwert bildet und einen Ausgabedatenwert (R-Q) erzeugt, und daß eine weitere Einrichtung (24 bis 27) vorgesehen ist, die den Ausgabedatenwert an das Schieberegister (10) zum Zusammenfassen mit dem ersten Datenwert anlegt, wenn der Ausgabedatenwert einen positiven Wert besitzt, bzw. an das Schieberegister (10) wieder den ersten Datenwert (R) des Schieberegisters (10) anlegt, wenn der Ausgabedatenwert einen negativen Wert besitzt.
5. Vorrichtung nach einem der vorhergehenden Ansprüche, gekennzeichnet durch eine ODER-Gliedanordnung (46) zum Bilden der logischen Summe aus einem Teil der in einer Speicherstelle der dritten Einrichtung auftretenden Bilddaten und einem nachfolgenden Teil der in einer Speicherstelle der zweiten Einrichtung auftretenden Bilddaten sowie zum Zuführen ihres Ausgangssignals zu der erwähnten Speicherstelle der dritten Einrichtung.
6. Vorrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die zweite und die dritte Einrichtung jeweils ein Schieberegister (21, 22; 70, 71) aufweisen.
7. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß der konstante zweite Datenwert den Cosinus eines Winkels darstellt, um den ein den zweiten Gitterpunkten entsprechendes zweites Bildfeld gegenüber einem den ersten Gitterpunkten entsprechenden ersten Bildfeld zu drehen ist, und der vorbestimmte Wert den Abstand zwischen den jeweiligen Gitterpunkten in dem ersten und dem zweiten Bildfeld darstellt, und daß eine auf die Taktimpulse ansprechende vierte Einrichtung (71, 74, 75) vorgesehen ist, die zum Bilden eines zweiten Summenwerts einen dritten Datenwert (Ry) mit einem vierten Datenwert (L sin R ) addiert, der dem Sinus des Winkels entspricht, und die vom zweiten Summenwert den vorbestimmten Wert subtrahiert, und den dritten Datenwert auf das Subtraktionsergebnis festlegt und die Bilddaten in einer zur ersten Richtung senkrechten dritten Richtung verschiebt, wenn der zweite Summenwert den vorbestimmen Wert übersteigt, wobei die Speicherstellen der dritten Einrichtung (79 bis 81) in einem Matrixmuster angeordnet sind.
8. Vorrichtung nach einem der vorhergehenden Ansprüche, gekennzeichnet durch eine Einstelleinrichtung (11) zum Einstellen des ersten Datenwerts auf einen erwünschten Anfangswert.
DE19843418624 1983-05-19 1984-05-18 Verfahren und einrichtung zur bilddatenverarbeitung unter anwendung von additions- und subtraktionsvorgaengen Granted DE3418624A1 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP58088527A JPS59214376A (ja) 1983-05-19 1983-05-19 画像デ−タ処理装置
JP58088531A JPS59214377A (ja) 1983-05-19 1983-05-19 画像デ−タ処理装置
JP58098348A JPS59223846A (ja) 1983-06-02 1983-06-02 演算処理装置
JP58104444A JPS59229669A (ja) 1983-06-10 1983-06-10 画像デ−タ処理装置
JP59045832A JPS60189579A (ja) 1984-03-09 1984-03-09 画像デ−タ処理装置

Publications (2)

Publication Number Publication Date
DE3418624A1 DE3418624A1 (de) 1984-11-22
DE3418624C2 true DE3418624C2 (de) 1987-06-19

Family

ID=27522501

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19843418624 Granted DE3418624A1 (de) 1983-05-19 1984-05-18 Verfahren und einrichtung zur bilddatenverarbeitung unter anwendung von additions- und subtraktionsvorgaengen

Country Status (2)

Country Link
US (1) US4602346A (de)
DE (1) DE3418624A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10149213A1 (de) * 2001-10-05 2003-04-24 Sci Worx Gmbh Verfahren zur Skalierung von Bilddaten-Samples und Vorrichtung hierzu
US6717695B1 (en) 1997-03-27 2004-04-06 OCé PRINTING SYSTEMS GMBH Method and circuit for the production of compressed or expanded images, and printer with such circuit

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0143533B1 (de) * 1983-09-29 1993-04-07 Matsushita Electric Industrial Co., Ltd. Expansions- und/oder Ziehungsverfahren und -gerät für Bilddaten
JPS61249088A (ja) * 1985-04-26 1986-11-06 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション 図形塗りつぶし方法
JP2635034B2 (ja) * 1986-06-26 1997-07-30 ウォング・ラボラトリーズ・インコーポレーテッド エラー項平均化を用いるビットマップ像の解像度交換法
US5371839A (en) * 1987-02-27 1994-12-06 Hitachi, Ltd. Rendering processor
US4829587A (en) * 1987-03-02 1989-05-09 Digital Equipment Corporation Fast bitonal to gray scale image scaling
US5251322A (en) * 1987-08-13 1993-10-05 Digital Equipment Corporation Method of operating a computer graphics system including asynchronously traversing its nodes
US5129013A (en) * 1987-10-13 1992-07-07 At&T Bell Laboratories Graphics image editor
US4835607A (en) * 1987-11-16 1989-05-30 Technology, Inc. Method and apparatus for expanding compressed video data
US4991022A (en) * 1989-04-20 1991-02-05 Rca Licensing Corporation Apparatus and a method for automatically centering a video zoom and pan display
US5125043A (en) * 1989-06-23 1992-06-23 Microterm, Inc. Image processing with real time zoom logic
US5155588A (en) * 1990-02-06 1992-10-13 Levien Raphael L Color correction and apparatus for photographic reproduction
US5204916A (en) * 1991-08-06 1993-04-20 Eastman Kodak Company Tile-oriented technique for collectively performing image rotation, scaling and digital halftone screening
US5384909A (en) * 1991-12-19 1995-01-24 International Business Machines Corporation Precision automatic scrolling for an image display system
US5463720A (en) * 1992-09-28 1995-10-31 Granger; Edward M. Blue noise based technique for use in a halftone tile oriented screener for masking screener induced image artifacts

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3976982A (en) * 1975-05-12 1976-08-24 International Business Machines Corporation Apparatus for image manipulation
US4052699A (en) * 1976-06-30 1977-10-04 International Business Machines Corporation High speed real time image transformation
GB1547119A (en) * 1977-12-09 1979-06-06 Ibm Image rotation apparatus
US4267573A (en) * 1978-06-14 1981-05-12 Old Dominion University Research Foundation Image processing system
JPS5540460A (en) * 1978-09-14 1980-03-21 Fuji Xerox Co Ltd Image transfer device
JPS5676683A (en) * 1979-11-28 1981-06-24 Ricoh Co Ltd Processing method for picture deformation
JPS57138685A (en) * 1981-02-23 1982-08-27 Hitachi Ltd Graphic conversion for graphic indicator
US4610026A (en) * 1982-04-30 1986-09-02 Hitachi, Ltd. Method of and apparatus for enlarging/reducing two-dimensional images
GB2129652B (en) * 1982-10-27 1986-06-04 Matsushita Electric Ind Co Ltd Method and apparatus for processing image signal

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6717695B1 (en) 1997-03-27 2004-04-06 OCé PRINTING SYSTEMS GMBH Method and circuit for the production of compressed or expanded images, and printer with such circuit
DE10149213A1 (de) * 2001-10-05 2003-04-24 Sci Worx Gmbh Verfahren zur Skalierung von Bilddaten-Samples und Vorrichtung hierzu

Also Published As

Publication number Publication date
DE3418624A1 (de) 1984-11-22
US4602346A (en) 1986-07-22

Similar Documents

Publication Publication Date Title
DE3418624C2 (de)
DE2754270C2 (de)
DE3248451C2 (de) Positionsanzeigergenerator und damit ausgerüstetes Fernsehmonitorsystem
DE2755728B2 (de) Kathodenstrahlröhren-Anzeigegerät
DE2801536A1 (de) Zeichenerkennungsvorrichtung
DE2712224A1 (de) Datenverarbeitungsanlage
DE2261141C3 (de) Einrichtung zur graphischen Darstellung von in einem Computer enthaltenen Daten
DE1236834B (de) Rechengeraet
DE3824977A1 (de) Bildrotationseinrichtung
DE2854782C2 (de) Datenverarbeitungssystem und Verfahren zum Ersetzen eines Datenblocks in einem Schnellspeicher
DE2833175A1 (de) Signalgenerator fuer ein anzeigesystem
DE3507584C2 (de)
DE3441640A1 (de) Streifenfeldspeichercontroller
DE3701599A1 (de) Vielfunktions-arithmetisch-logische-schaltung
DE3518280A1 (de) Sichtanzeigeanordnung
DE1907966C3 (de) Photoelektronische Setzmaschine
DE3735654C2 (de) Elektronischer Rechner
DE1959896A1 (de) Verfahren zur Aufzeichnung von Spuren mit durch Tangentenschnittpunkt festgelegter Punktabtastung fuer grafische Anzeigeeinrichtungen
DE3518281A1 (de) Sichtanzeige-interpolationsschaltung
DE2425380C2 (de) Datenverarbeitungsanlage zur parallelen Ausführung von Verarbeitungsoperationen
DE4103880C2 (de) Bildverarbeitungsgerät und -verfahren
DE2244128A1 (de) Bildschirm-sichtgeraet
DE2631073C3 (de) Vorrichtung zur Struktur- und Textur-Analyse zumindestens eines Mediums
DE1549454A1 (de) Einrichtung zur abgerundeten Anzeige einer gespeicherten Zahl
DE3412714C2 (de)

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee