DE2921123A1 - Datenverarbeitungsanlage zur verarbeitung von bilddaten - Google Patents

Datenverarbeitungsanlage zur verarbeitung von bilddaten

Info

Publication number
DE2921123A1
DE2921123A1 DE19792921123 DE2921123A DE2921123A1 DE 2921123 A1 DE2921123 A1 DE 2921123A1 DE 19792921123 DE19792921123 DE 19792921123 DE 2921123 A DE2921123 A DE 2921123A DE 2921123 A1 DE2921123 A1 DE 2921123A1
Authority
DE
Germany
Prior art keywords
data
processing system
image
data processing
unit
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.)
Withdrawn
Application number
DE19792921123
Other languages
English (en)
Inventor
Hans Dieter Ing Grad Boehring
Ulrich Ing Grad Borger
Wolfgang Ing Grad Bothe
Jens Dipl Ing Christiansen
Dietrich Dr Ing Meyer-Ebrecht
Ralph Dipl Ing Weissel
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.)
Philips Intellectual Property and Standards GmbH
Original Assignee
Philips Patentverwaltung GmbH
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 Philips Patentverwaltung GmbH filed Critical Philips Patentverwaltung GmbH
Priority to DE19792921123 priority Critical patent/DE2921123A1/de
Publication of DE2921123A1 publication Critical patent/DE2921123A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0007Image acquisition

Landscapes

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

Description

  • Datenverarbeitungsanlage zur Verarbeitung von Bilddaten.
  • Die Erfindung betrifft eine Datenverarbeitungsanlage zur Verarbeitung von Daten, die die Helligkeitsinformation der Bildelemente von Bildern darstellen, mit einem diese Daten aufnehmenden Arbeitsspeicher.
  • In der digitalen Informationsverarbeitung spielen in zunehmendem Maße Bilder eine wichtige Rolle. Bildinformation wird im einfachsten Falle dargestellt durch eine Anzahl von Datenwörtern, die die kodierten Grauwerte eines Bildes darstellen. Diese Datenwörter bilden beispielsweise in einem Speicher eine zweidimensionale Datenmatrix aus einigen Tausenden bis zu mehreren Millionen Matrixelementen. Die Grundfunktionen der Verarbeitung von Bildinformationen sind Erfassung und Speicherung von Bildern, Anwendung mathematischer Operationen auf Bilder (z.B. zur Synthese von Bildern aus nicht-bildhafter Primärinformation, zur Filterung von Bildern oder zur Analyse des Bildinhaltes) sowie die Wiedergabe von Bildern. Für die Durchführung der verschiedenartigen Verarbeitungsschritte bei der Realisierung dieser Grundfunktionen sind Rechengeräte notwendig, die die Datenmatrizen der angegebenen Größe genügend schnell verarbeiten können. Insbesondere ist in vielen Fällen eine Verarbeitungsgeschwindigkeit erwünscht, bei der die Anzahl der verarbeiteten Bildelemente pro Zeiteinheit gleich ist der Anzahl Bildelemente, die in der gleichen Zeit mittels einer handelsüblichen Fernsehkamera aufgenommen oder auf einem handelsüblichen Bildschirm dargestellt werden.
  • Zur Verarbeitung von Bilddaten ist es einerseits üblich, allgemeine Vielzweckrechner einzusetzen. Diese können leicht auf die unterschiedlichsten Aufgabenbzw Bildoperationen programmiert werden. Dies hat jedoch der Nachteil, daß die Verarbeitungsgeschwindigkeit bei den ersten #ten tnlgen zu gering ist, so daß verhältnismäßig lar;ls;e MTartezeiten erforderlich werden und eine Echtzeit-Bildverarbeitung nicht möglich ist, sofern nicht außergewöhnlich große Anlagen verwendet werden, die jedoch für die meisten Anwendungsfälle der Bildverarbeitung viel zu teuer sind. Die Rechengeschwindigkeit von kleineren Vielzweckrechnern läßt sich zwar durch zusätzliche spezielle Rechenelemente erhöhen, jedoch wird dann auch der Aufwand wesentlich größer. Eine andere Möglichkeit besteht darin, wenn besonders kostengünstige Lösungen gefordert werden, problemangepasste Spezialrechner zu entwickeln, die jedoch einerseits einen hohen Entwicklungsaufwand erfordern und andererseits nicht anpassungsfähig an veränderte Aufgabenstellungen, d.h. an modifizierte oder grundsätzlich unterschiedliche Bildoperationen, sind.
  • Aufgabe der Erfindung ist es daher, eine Datenverarbeitungsanlage zur Verarbeitung von Bilddaten anzugeben, die eine sehr hohe Rechengeschwindigkeit ermöglicht und. andererseits an unterschiedliche Aufgaben leicht anpassbar ist und ein günstiges Verhältnis von Aufwand zu Leistung bietet.
  • Diese Aufgabe wird erfindungsgemäß bei der eingangs genannten Datenverarbeitungsanlage gelöst durch - einen Arbeitsspeicher, der die Daten aller Bildelemente mindestens eines Bildes gleichzeitig speichert, - mehrere Recheneinheiten, die über einen gemeinsamen Datenbus und einen gemeinsamen Adressenbus mit dem Ar- beitsspeicher verbunden sind und von denen jede Recheneinheit eine andere festgelegte Verarbeitung von Daten des Bildes bzw. der Bilder (Bildoperation) selbstständig durchführt und einen eigenen Adressengenerator enthält, der die durch die Bildoperation bestimmte Folge der Adressen des Arbeitsspeichers erzeugt und diesem über den Adressenbus zuführt, und eine Steuereinheit 9 die mit den Recheneinheiten über Steuerleitungen verbunden ist und durch darauf übertragene Steuersignale mindestens den Start und da Ende der Durchführung der Bildoperation in den Recheneinheiten steuert und durch darauf übertragene Zustandssignale-Zustandsmeldungen der Recheneinheiten empfängt.
  • Ein wesentliches Element der erfindungsgemäßen Datenverarbeitungsanlage ist der Arbeitsspeicher, auf den alle Recheneinheiten zugreifen können und der die Daten aller Bildelemente mindestens eines Bildes gleichzeitig speichert, während bei bekannten Anlagen stets kleinere Speicher verwendet werden, die jeweils nur einen Teil der Daten eines Bildes enthalten, wobei der Rest der Bilddaten bzw. die gesamten Bilddaten auf einem Großraumspeicher wie z.B. eine Magnetplatte gespeichert sind und nach Bedarf in den Arbeitsspeicher eingelesen werden. Dies erfordert einen erheblichen Zeitaufwand, wodurch die Verarbeitungsgeschwindigkeit bekannter Anlagen stark reduziert wird. Ferner sind für die unterschiedlichen Bildoperationen jeweils spezielle, optimal angepasste Recheneinheiten vorgesehen, die nur solche Elemente enthalten, die für die Durchführung der Bildoperation unbedingt notwendig sind. Dazu gehört erfindungsgemäß auch ein Adressengenerator. Da bei verschiedenen Bildoperationen die Daten der Bildelemente eines Bildes bzw. mehrerer Bilder in sehr unterschiedlicher Reihenfolge verarbeitet werden, jedoch innerhalb einer Bildoperation in einer sehr konstanten Folge, die insbesondere bei homogenen Bildoperationen sehr einfachen Gesetzen gehorcht, kann der Adressengenerator in den entsprechenden Rechenein- heiten sehr einfach aufgebaut sein. Dadurch erübrigt sich eine zentrale Adressenberechnung, die sonst sehr flexibel und somit aufwendig sein müsste und zeitaufwendig wäre, so daß bei üblichen Vielzweckrechnern die Adressenberechnung einen wesentlichen Anteil der Gesamtrechenzeit ausmacht.
  • Daher kann die Steuereinheit, die die zentrale Steuerung aller Recheneinheiten versorgt, sehr einfach aufgebaut sein, so daß der Grundaufwand für die erfindungsgemäße Datenverarn beitungsanlage im Falle von nur wenigen verschiedenen Bild operationen entsprechend gering ist.
  • Da die Ubertragungsgeschwindigkeit von Daten auf einem Datenbus allgemein merklich größer ist als die Arbeitsgeschwindigkeit besonders von großen Speichern, die für den Arbeitsspeicher hauptsächlich in Betracht kommen, ist es zweckmäßig, daß der Datenbus aus einem ersten Datenbus, der Daten zum Arbeitsspeicher überträgt, und aus einem zweiten Datenbus besteht, der Daten vom Arbeitsspeicher zu den Recheneinheiten überträgt, wobei beide Datenbusse unabhängig voneinander Daten übertragen. Dadurch wird der Datenbus optimal ausgenutzt, und es ist auf diese Weise leichter eine gewisse Parallelarbeit im Zeitmultiplex mehrerer Recheneinheiten möglich, wie später erläutert wird.
  • Da bei manchen Bildoperationen, wie bereits erwähnt, die Adressenfolge beim Zugriff auf Bilddaten einfachen Gesetzen gehorcht, insbesondere der natürlichen Adressenfolge entspricht, ist es zweckmäßig, daß der Adressengenerator Zähler enthält. Bei etwas komplizierteren Folgen ist es dagegen zweckmäßig, daß der Adressengenerator eine Verarbeitungseinheit mit einem Akkumulator enthält. Da die Folge der Adressen fast immer zyklisch mit einem kurzen Zyklus ist, ist eine solche Verarbeitungseinheit für die Adressenberechnung und insbesondere deren Steuerung einfach.
  • Bei der Zusammenarbeit von Arbeitsspeicher und Recheneinheiten besteht ferner die Möglichkeit, innerhalb eines Arbeitstaktzyklus gleichzeitig eine oder mehrere Rechenoperationen an Bilddaten in einer Recheneinheit durchzuführen, die Bilddaten für die in dem folgenden Taktzyklus durchzuführenden Rechenoperationen aus dem Arbeitsspeicher in das Rechenelement zu übertragen und die mit der Rechenoperation in dem vorangegangenen Taktzyklus erzeugten Ergebnis-Bilddaten in den Arbeitsspeicher zu übertragen. Diese Arbeitsweise ermöglicht eine erhebliche Steigerung der Rechengeschwindigkeit, da kein zusätzlicher Zeitaufwand für die Datentransportoperation notwendig ist. Die Adresse für das Auslesen und die Adresse für das Rücz--ehreiben weisen dann einem konstanten Abstand auf, der von der Bildoperation und gegebenenfalls Modifikationen der Bildoperation abhängt, so daß es nach einer weiteren Ausgestaltung der Erfindung zweckmäßig ist, daß der Adressengenerator eine Verzögerungseinheit enthält, die von einer Adressiereinheit aufeinanderfolgend erzeugte Adressen am Eingang erhält und eine Anzahl Perioden eines Taktsignals verzögert am Ausgang abgibt, wobei der Eingang und der Ausgang der Verzögerungseinheit mit dem Adressenbus verbunden ist. Diese Maßnahme ist besonders dann zweckmäßig, wenn der Datenbus aus zwei getrennten Datenbussen für die beiden Übertragungsrichtungen besteht. Falls auch der Adressenbus aus zwei getrennten Adressenbussen besteht, die die Adressen für die einzuschreibenden und auszulesenden Daten gleichzeitig zum Arbeitsspeicher übertragen, können Eingang und Ausgang der Verzögerungseinheit direkt mit dem Adressenbus verbunden sein. Falls jedoch nur eine Adresse übertragen werden kann, ist es zweckmäßig, daß eine Umschalteinheit periodisch abwechselnd den Eingang und den Ausgang der Verzögerungseinheit mit dem Adressenbus verbindet. Diese Periode entspricht zweckmäßig einer Taktperiode bzw. einem Arbeitszyklus des Arbeitsspeichers. Um insbesondere bei Modifikationen von Bildoperationen verschiedene Unterschiede zwischen Auslese- und Einschreibadresse einstellen zu können, ist es zweckmäßig, daß die Verzögerungszeit der Verzögerungseinheit umschaltbar ist.
  • Es ist zweckmäßig, wenn zumindest ein Teil der Steuerlei- tungen einen allen Recheneinheiten gemeinsamen Steuerbus bildet. Dies ergibt einen einfachen Aufbau der erfindungsgemäßen Datenverarbeitungsanlage sowie eine einfache und flexible Erweiterungsmöglichkeit durch nachträgliches Zufügen zusätzlicher Recheneinheiten. Dabei können einzelne Steuerleitungen vorhanden sein, die von der Steuereinheit direkt zu nur jeweils einer Recheneinheit führend Aucj der artige Leitungen können mit dem Steuerbus zusammengefas:t sein.
  • Um die Recheneinheit möglichst optimal auszunutzen, ist es zweckmäßig, daß weitere Steuersignale der Steuereinheit die Durchführung der Bildoperationen zumindest in einigen Recheneinheiten modifiziert. Diese weiteren Steuersignale entsprechen zum Teil dem Befehlskode in den Befehlen üblicher Rechenanlagen, wobei der Befehlskode hier jedoch nicht grundsätzlich unterschiedliche Operationen. steuert, sondern die Bildoperation in einer RecheneinheitZim wesentlichen festgelegt und wird durch die weiteren Steuersignale nur an verschiedene Bedingungen oder Aufgaben angepasst. Dabei ist es zweckmäßig, daß die Recheneinheiten für modifizierbare Bildoperationen Speicher für mindestens einen Teil der weiteren Steuersignale enthalten. In diesem Falle muß die Steuereinheit diese weiteren Steuersignale nur kurzzeitig insbesondere vor Beginn der Bildoperation aussenden.
  • Manche Operationen, beispielsweise eine nichtlineare Grauwertverschiebung, benötigen eine Anzahl Hilfsdaten, die Parameter für die betreffende Bildoperation darstellen, beispielsweise eine Zuordnungstabelle. Um die gleiche Recheneinheit für Bildoperationen mit verschiedenen Parametern verwenden zu können, ist es zweckmäßig, daß zumindest einige Recheneinheiten über die Steuerleitungen Steuerdaten von der Steuereinheit empfangen und in einem Steuerspeicher zwischenspeichern, wobei die Steuerdaten Parameter für Bildoperationen sind. Dadurch können solche Recheneinheiten optimal ausgenutzt werden.
  • Manche Bildoperationen, beispielsweise eine Histogrammaufnahme eines Bildes, liefern als Ergebnis keine neuen Bilddaten, sondern Ergebnisdaten, die vorzugsweise außerhalb der Recheneinheiten weiterverarbeitet werden. Es ist daher zweckmäßig, daß mindestens einige Recheneinheiten die Ergebnisdaten von Bildoperationen über die Steuerleitungen zur Steuereinheit übertragen. Andererseits ist es auch zweckmäßig, daß mindestens einige Recheneinheiten #rgebnis speicher enthalten, die bei der Bildoperation elltstehende Ergebnisdaten aufnehmen. Diese Ergebnisdaten können dann möglicherweise für spätere Bildoperationen verwendet werden. Falls eine Übertragung der Ergebnisdaten zur weiteren Verarbeitung in der Steuereinheit erforderlich ist, ist es zweckmäßig, daß die Recheneinheiten mit Ergebnisspeichern deren Inhalt nach Abschluß der betreffenden Bildoperation zur Steuereinheit übertragen. Auf diese Weise wird die Übertragungszeit der Ergebnisdaten kurz, und die Steuereinheit wird wenig dadurch belastet.
  • Um bei einigen Bildoperationen die Anzahl von Datenübertragungen zu verringern bzw. benötigte Daten nur einmal zu übertragen, ist es zweckmäßig, daß mindestens einige Recheneinheiten Pufferspeicher für einen Teil der jeweils als nächstes zu verarbeitenden Bilddaten enthalten. Durch die Verringerung der Anzahl von Datenübertragungen kann die gesamte Verarbeitungsgeschwindigkeit dadurch gesteigert werden.
  • Bei der bisherigen Beschreibung wurde angenommen, daß die Bilddaten bereits in der Datenverarbeitungsanlage vorhanden sind. Um die Bilddaten jedoch dort hineinzubringen bzw.
  • daraus abzuführen, ist es zweckmäßig, daß mindestens eine Eingabe-Recheneinheit vorgesehen ist,die Bilddaten von außerhalb der Datenverarbeitungsanlage empfängt und die nur ausgangsseitig an den Datenbus bzw. an den ersten Datenbus angeschlossen ist, und daß mindestens eine Ausgabe-Recheneinheit vorgesehen ist, die Bilddaten nach außerhalb der Datenverarbeitungsanlage abgibt und die nur eingangsseitig an den Datenbus bzw. an den zweiten Datenbus angeschlossen ist. Dadurch ergibt sich ein sehr übersichtlicher Aufbau der gesamten Datenverarbeitungsanlage, der deren Modularität nicht stört. Der Anschluß und die Steuerung dieser Eingabe- und Ausgabe-Recheneinheiten erfolgt also in glei cher Weise wie auch bei den anderen Recheneinheiten. Es können auch mehrere Eingabe- und Ausgabe-Recheneinhe.'ten vorhanden sein, die Bilddaten aus verschiedenen Quellen erhalten bzw. zu verschiedenen Stellen außerhalb der An lage weiterleiten, beispielsweise Massenspeicher.
  • Auf die vorstehend beschriebene Weise wird also eine Datenverarbeitungsanlage erhalten, die alle vorkommenden Bildoperationen durchführen kann. Es ist jedoch möglich, daß in besonderen Anwendungsfällen Bildoperationen auftreten, die nur sehr selten benötigt werden. Hierfür ist die Verwendung jeweils einer speziellen Recheneinheit, auch wenn diese einfach aufgebaut ist, unter Umständen nicht ganz kostengünstig. Es ist daher zweckmäßig, daß mindestens eine Recheneinheit eine programmgesteuerte Verarbeitungseinheit mit einem Programmspeicher enthält, dessen Inhalt über die Steuerleitungen einschreibbar ist. Eine solche programmgesteuerte Verarbeitungseinheit kann eine universelle Rechenanlage oder im einfachsten Falle ein entsprechender Mikroprozessor sein. Damit lassen sich dann Bildoperationen durchführen, die nur sehr selten vorkommen und bei denen die insbesondere die Verarbeitungsgeschwindigkeit nicht entscheidend ist. Da bei solchen besonderen Bildoperationen die Folge der Adressen beim Auslesen und Rückschreiben jeweils unterschiedlich ist, muß daher auch die Adressenberechnung programmgesteuert erfolgen. Dafür ist es zweckmäßig, daß die Verarbeitungseinheit zwei Prozessoreinheiten umfasst, von denen die eine nur mit dem Datenbus und die andere nur mit dem Adressenbus verbunden ist, wobei beide Prozessoreinheiten über interne Steuerleitungen zur gegenseitigen, insbesondere abwechselnden Steuerung verbunden sind. Da diese beiden Prozessoren zumindest teilweise für ihren Verwendungszweck vorpro - grammiert sein können, können sowohl Adressen wie auch Daten mit optimaler Geschwindigkeit verarbeitet werden, so daß sich trotz Verwendung von nicht sehr schnellen Prozessoren eine relativ kurze Durchführungszeit einer Bildoperation für ein gesamtes Bild ergibt. Ferner wird die Steuereinheit auch bei Verwendung programmgesteuerter Recheneinheiten wenig belastet, da diese Recheneinheiten sich für die Steuereinheit ebenso wie die festprogrammierten Recheneinheiten verhalten.
  • Manchmal ist es erwünscht, insbesondere bei einem auszugebenden Bild zusätzliche Information anzubringen, beispielsweise Textinformation zu überlagern. Hierfür ist es zweckmäßig, daß parallel zum Arbeitsspeicher mindestens ein Zeichenspeicher an den Adressenbus sowie eingangsseitig an Steuerleitungen zur Aufnahme kodierter graphischer Zeichen und ausgangsseitig über einen Generator zur Erzeugung graphischer Zeichen an den Datenbus angeschlossen ist, wobei der Zeichengenerator ebenfalls an den Adressenbus angeschlossen ist. Der Adressenbereich des Zeichenspeichers kann teilweise mit dem Adressenbereich des Arbeitsspeichers übereinstimmen, so daß die Zeichen dem Bild unmittelbar überlagert werden, oder es kann ein anderer, über dem Adressenbereich des Arbeitsspeichers liegender Adressenbereich gewählt werden, oder Adressenspeicher und Zeichenspeicher können durch zusätzliche Steuersignale ein- und ausgeschaltet werden. Im übrigen verhält sich dieser Zeichenspeicher ebenso wie der Arbeitsspeicher, so daß insbesondere von der Steuereinheit keine wesentlichen Steuerfunktionen notwendig sind. Es können auch mehrere Zeichenspeicher vorgesehen sein, wobei einer dieser Zeichenspeicher auch graphische Symbole in Form von Vektoren erzeugen kann.
  • Um eine-Eingriffsmöffllichkeit in den Ablauf von Bildoperationen, insbesondere in deren Aufeinanderfolge, zu ermöglichen, ist es zweckmäßig, daß mit der Steuereinheit eine Bedienungseinheit verbunden ist, über die Kommandos in die Steuereinheit eingebbar sind. Auf diese Weise können auch einzelne Bildoperationen von Hand gestartet werden.
  • Ausführungsbeispiele der Erfindung werden nachstehend an Hand der Zeichnung näher erläutert. Es zeigen: Fig. 1 ein Blockschaltbild der gesamten Datenverarbeitungsanlage, Fig. 2 ein Zeitdiagramm für die Erläuterung zeit verschachtelter Parallelarbeit, Fig. 3 den grundsätzlichen Aufbau einer Eingabe-Recheneinheit, Fig. 4 den grundsätzlichen Aufbau einer Recheneinheit zur Grauwertverschiebung, Fig. 5 den grundsätzlichen Aufbau einer Recheneinheit für eine lokale Bildoperation an jeweils mehreren Bildpunkten gleichzeitig, Fig. 6 den grundsätzlichen Aufbau einer Recheneinheit zur Verarbeitung von Bilddaten mehrerer Bilder gleichzeitig, Fig. 7 den grundsätzlichen Aufbau einer Recheneinheit zur Histogrammermittlung, Fig. 8 den grundsätzlichen Aufbau eines Adressengenerators mit konstantem bzw. einstellbarem Unterschied zwischen Leseadresse und Rückschreibadresse, Fig. 9 den grundsätzlichen Aufbau einer programmierbaren Recheneinheit mit zwei Prozessoren, Fig.10 den grundsätzlichen Aufbau eines Zeichenspeichers.
  • In Fig. 1 ist ein Blockschaltbild einer #Datenverarbeitungsanlage zur Verarbeitung von Bilddaten dargestellt. Diese umfasst einen Arbeitsspeicher 21 sowie eine Anzahl Recheneinheiten, von denen hier die Recheneinheiten 1, 3, 5 und 7 beispielsweise dargestellt sind. Je nach Anwendungsfall, wenn noch weitere Bildoperationen erforderlich sind, können noch weitere Recheneinheiten vorgesehen werden.
  • Alle Recheneinheiten sind mit dem Arbeitsspeicher 21 über einen gemeinsamen Datenbus 11 verbunden, der aus zwei getrennten, voneinander unabhängigen Datenbussen 13 und 15 besteht, wobei der Datenbus 13 Bilddaten von den Recheneinheiten zum Arbeitsspeicher 21 und der Datenbus 15 Bild daten vom Arbeitsspeicher 21 zu den Recheneinheiten über trägt.
  • Alle Recheneinheiten 1, 3, usw. sind außerdem über einen gemeinsamen Adressenbus 17 mit dem Arbeitsspeicher 21 verbunden. Darüber werden von den jeweils aktiven Recheneinheiten die Adressen der aus dem Arbeitsspeicher 21 auszulesenden oder dorthin rückzuschreibenden Bilddaten gesteuert. Dieser Adressenbus hat somit nur eine Ubertragungsrichtung.
  • Ferner sind alle Recheneinheiten 1, 3, usw. sowie der Arbeitsspeicher 21 über einen gemeinsamen Steuerbus 19 mit der zentralen Steuereinheit 23 verbunden. Uber diesen Steuerbus überträgt die Steuereinheit 23 Befehlssteuersignale zu den Recheneinheiten, insbesondere um in einer Recheneinheit eine Bildoperation zu starten oder zu beenden, und die Recheneinheiten übertragen über den Steuerbus 19 Zustandssignale, beispielsweise die Meldung einer vollständigen Durchführung einer Bildoperation, an die Steuereinheit 23. Der Steuerbus 19 kann auch einzelne Leitungen, die direkt von der Steuereinheit 23 zu nur jeweils einer Recheneinheit führen, enthalten, über die die betreffende Recheneinheit adressiert wird, um die auf den anderen Leitungen von der Steuereinheit 23 ausgesandten Steuersignale aufzunehmen bzw. selbst Zustandssignale abzugeben, sofern nicht über die allen Recheneinheiten gemeinsamen Steuerleitungen Adressensignale zur Adressierung der Recheneinheiten übertragen werden. Wesentlich ist, daß die Steuereinheit 23 nur über den Steuerbus mit den weiteren Elementen verbunden ist, so daß die Steuereinheit 23 weder Bilddaten noch deren Adressen empfängt oder verarbeitet. Die Steuereinheit 23 steuert vielmehr ausschließlich das Zusammenarbeiten der Recheneinheiten untereinander und mit dem Arbeitsspeicher und verarbeitet höchstens Ergebnisdaten von bestimmten Recheneinheiten.
  • Mit der Steuereinheit 23 ist ferner eine Bedienungseinheit 25 verbunden, über die Kommandos zur oder Melde signale von der Steuereinheit 23 übertragen werden Dadurch kann vol einer Bedienungsperson beispielsweise in den Ablauf einer Folge von Bildoperationen eingegriffen werden, oder es können bestimmte Bildoperationen gezielt gestartet werden.
  • Außerdem ist über die Bedienungseinheit 25 eine Anzeige der momentan ablaufenden Bildoperation bzw. der momentan arbeitenden Recheneinheit oder Recheneinheiten möglich.
  • Die Steuereinheit 23 ist im einfachsten Falle im wesentlichen eine Ablaufsteuerung, die eine Folge von Bildoperationen steuert. Solche Ablaufsteuerungen sind allgemein bekannt und enthalten im wesentlichen Zähler für die Steuerung von Folgen von Funktionen. Da die Steuereinheit 23 aber auch beispielsweise Zustandsmeldungen der Recheneinheiten verarbeiten muß, ist es zweckmäßiger, hierfür einen der handelsüblichen Mikroprozessoren einzusetzen, die entsprechend fest programmiert sind. Bei anderen Anwendungsfällen, insbesondere wenn viele Ergebnisdaten von einigen.
  • Recheneinheiten zu verarbeiten sind, ist es zweckmäßig, für die Steuereinheit 23 eine übliche Vielzweck-Rechenanlage zu verwenden. Darin ist allgemein eine Bedienungseinheit vorhanden, so daß in diesen Fällen die zusätzliche Bedienungseinheit 25 wegfallen kann.
  • In Fig. 1 ist außerdem noch ein Zeichenspeicher 27 dargestellt, dessen Dateneingang an den Steuerbus 19 und dessen Adresseneingang parallel zu dem Arbeitsspeicher 21 an den Adressenbus 17 angeschlossen ist. Der Datenausgang des Zeichenspeichers ist über einen Zeichengenerator 39 mit dem Datenbus 15 verbunden, über den Daten zu den Recheneinheiten übertragen werden. Außerdem ist der Zeichenspeicher 27 mit dem Zeichengenerator 39 ebenso wie der Arbeitsspeicher 21 an den Steuerbus 19 angeschlossen, über den beispielsweise das abwechselnde oder gleichzeitige Arbeiten beider Speicher oder das Umschalten von Einschrei ben auf Auslesen gesteuert werden kann. Abgesehen vor) dem Dateneingang des Zeichenspeicbers 27 sind somit beide SpeX cher 21 und 27 parallel geschaltet, so daß der Zeichenspeicher 27 eine Erweiterung des Arbeitsspeichers 21 für die Darstellung von Zeichen und graphischen Symbolen darstellt.
  • In Fig. 1 sind die Busse 13 bis 19 jeweils als eine einfache Verbindung dargestellt. Tatsächlich bestehen diese Busse jedoch zweckmäßig aus einer Anzahl paralleler Leitungen, wie für den Steuerbus 19 bereits angedeutet wurde, so daß insbesondere auf den Datenbussen 13 und 15 jeweils ein vollständiges Datenwort und auf dem Adressenbus 17 jeweils eine vollständige Adresse parallel übertragen werden kann, um die Ubertragungsgeschwindigkeit zu erhöhen.
  • Die Busse sind daher lediglich zur besseren uebersicht in Fig. 1 sowie auch in den folgenden Figuren als einzelne Verbindung dargestellt.
  • Die einzelnen Recheneinheiten 1, 3, 5, 7 usw. in Fig. 1 weisen, obwohl sie für unterschiedliche Bildoperationen ausgelegt sind, in mindestens einer Hinsicht stets den gleichen prinzipiellen Aufbau auf, nämlich aus einem Adressengenerator 31n und der eigentlichen Verarbeitungseinheit 38n für die Bilddaten, wobei n die Nummer der Recheneinheit angibt. Diese beiden grundsätzlichen Elemente, die in verschiedenen Recheneinheiten selbstverständlich allgemein unterschiedlich aufgebaut sind, arbeiten weitgehend getrennt voneinander, wie später an Hand von Beispielen für bestimmte Rechenelemente noch näher erläutert wird.
  • Die Recheneinheit 5 in Fig. 1 ist für das Eingeben von Bilddaten von außerhalb der dargestellten Datenverarbeitungsanlage vorgesehen, und zwar hier für die Eingabe der von einer Fernsehkamera erzeugten Daten. Diese in analoger Form erzeugten Daten werden über die Leitung 52 in die Verarbeitungseinheit 385 eingegeben, dort mindestens in eine digitale Darstellung umgewandelt und dann über den Datenbus 13 dem Arbeitsspeicher 21 zugef~uhri.O GLeichzei tig erzeugt der Adrèssengenerator 315 eine Folge von Adressen, so daß die zugeführten Bilddaten aufeirìanderf folgend im Arbeitsspeicher 21 abgespeichert werden. Um eine eindeutige Zuordnung von Bildpositionexl zu Adressen zu erhalten, erzeugt der Adressengenerator 315 außerdem Synchronisiersignale bzw. empfängt solche von der Fernsehkamera über die Leitungen 54. Bei einer Recheneinheit, die beispielsweise die Verbindung zu einem externen Massenspeicher für Bilddaten herstellt, können über der Leitung 54 entsprechende Leitungen Taktsignale übertragen werden.
  • In entsprechender Weise ist die Recheneinheit 7 für die Ausgabe von Bilddaten nach außerhalb aufgebaut. Die Verarbeitungseinheit 387 empfängt die aus dem Arbeitsspeicher 21 über den Datenbus 15 ausgelesenen digitalen Bilddaten und wandelt diese in analoge Bildinformation um, die über die Leitung 56 einem externen Monitor zugeführt wird. Dabei erzeugt der Adressengenerator 317 die aufeinanderfolgenden Adressen der aus dem Arbeitsspeicher 21 auszulesenden Bilddaten sowie Synchronisiersignale, die über die Leitungen 58 übertragen werden. Diese Synchronisiersignale können jedoch auch in der Verarbeitungseinheit 387 in bekannter Weise mit den analogen Bilddaten zu einem vollständigen Fernsehsignal verarbeitet werden, so daß dann nur die Leitung 56 zu dem Monitor führt.
  • In Fig. 2 sind zwei Möglichkeiten für die Durchführung eines Komplexes von mehreren Bildoperationen an einem Bild dargestellt. In Zeile a der Fig. 2 ist angedeutet, wie die Bildinformationen von außen in den Arbeitsspeicher 21 übertragen werden. Da eine Feriisehkamera als Quelle der Bilddaten angenommen ist, werden die Daten jeweils einer Bildzeile unmittelbar aufeinanderfolgend eingeschrieben, was durch die kurzen waagerechten Striche angedeutet ist, während zwischen den Zeilen eine titertragungspause während des Zeilenrücklaufes in der Fernsehkamera eintritt.
  • Nach der vollständigen Eingcthe eines Bildes wird an den Bilddaten eine y --Korl-ektur der Bilddaten vorgenommen, wofür die gesamten Bilddaten unmittelbar auSeinanderfolgene ausgelesen, jeweils einzeln umgesetzt und danach wieder zurückgeschrieben werden. Dabei tritt keine Pause auf, wie in der Zeile b angedeutet ist.
  • Danach erfolgt eine zweidimensionale Filterung der Bilddaten, wobei jeweils die Daten einer Gruppe von Bildelementen ausgelesen und dann einer Verarbeitung unterworfen werden, die hier wesentlich länger dauert als eine Datenübertragung, so daß der Arbeitsspeicher jeweils nur verhältnismäßig kurz mit dazwischenliegenden längeren Pausen belegt ist, wie durch die senkrechten Striche in der Zeile c angedeutet ist.
  • Die Verarbeitungszeit für diese Folge von Bildoperationen kann wesentlich verkürzt werden, wenn die Bildoperationen zeitverschachtelt ablaufen. Zunächst wird eine Zeile bzw.
  • eine Mindestanzahl von Bildzeilen eingelesen, was gegenüber den Zeilen a bis c in vergrößertem Maßstab in Zeile d dargestellt ist. Da der Vorgang der Bildabtastung in der Fernsehkamera von außen praktisch nicht beeinflußbar ist, erhält diese Bildoperation die höchste Priorität. In der Pause während des Zeilenrücklaufes, wenn keine Datenübertragung von der Kamera erfolgt, können die beiden anderen Bildoperationen durchgeführt werden. Da bei der vorher erwähnten v -Korrektur eine kontinuierliche Belegung des Arbeitsspeichers erfolgt, ist es zweckmäßig, der zweidimensionalen Filterung die zweite Prioritätsebene zuzuordnen, so daß zu Beginn der Zeilenrücklaufpause zunächst die Daten für einen Verarbeitungsschritt der digitalen zweidimensionalen Filterung übertragen werden was an die Steuereinheit 23 in Fig.lzurückgemeldet wird, und diese startet danach die in der untersten Prioritatsebene arbeitende v -Korrektur. Diese Bildopeiation wird jedoch unterbrochen, sobald ein Verarbeitungsschritt der Filterung beendet ist und für den nächsten [erarbeitungsschritt der Arbeitsspeicher wieder belegt werden muß Danach kann wieder die v -Korrektur be.gj#rnien# bis die Kamera mit der Übertragung der nächsten B dze:ile beginnt. Dies ist in den Zeilen e und f der Fig da:rgeste]lt, wobei die Zeile e die v -Korrektur und die Zeile f die Filterung darstellt. Wenn der Beginn der Übertragung einer neuen Zeile in die Datenübertragung für einen Verarbeitungsschritt der digitalen Filterung fallen würde, würde letztere auch unterbrochen, da die Übertragung von der Fernsehkamera die höchste Priorität hat. Durch diese verschachtelte Verarbeitung ist es jedoch möglich, daß die verarbeiteten Bilddaten eines Bildes nur kurze Zeit nach der Beendigung der Eingabe dieses Bildes bereits vollständig vorliegen und beispielsweise zu einem Monitor zur Darstellung übertragen werden können. Hierfür ist nur eine einfache Prioritätssteuerung durch die Steuereinheit 23 erforderlich.
  • In Fig. 3 ist der Aufbau einer Recheneinheit für die Eingabe von Bilddaten über eine Fernsehkamera mehr im einzelnen dargestellt. Die über die Leitung 52 zugeführten analogen Daten werden in einem Verstärker 51 gegebenenfalls verstärkt und dann einem Analog-Digitalwandler 53 zugeführt, der die analogen Daten im Takte eines Taktsignals CL abtastet und in digitaler Form gegebenenfalls über eine Anpassungseinheit 55 dem Datenbus 13 zuführt. Parallel zu der Abtastung der analogen Daten wird auch der Taktgenerator 31, der hier durch einen Zähler realisiert ist, durch das Taktsignal CL jeweils um einen Schritt weitergeschaltet, so daß auf dem Datenbus 17 die jeweils nächste Adresse erscheint. Über die Leitungen 54 wird der Zähler 31 mit der zeilenweisen Abtastung synchronisiert, beispielsweise durch Rücksetzen jeweils der Zählerstufen niedrigster Wertigkeit, so daß im Arbeitsspeicher schließlich eine matrixartige Anordnung der Bilddaten entsprechend dem abgetasteten Bild vorhanden ist. Das Taktsignal CL kann beispielsweise über den Steuerbus 19 von der zentralen Steuereinheit 23 übertragen werden.
  • In Fig. 4 ist der interne AuSbau einer Recheneimlieit für eine sogenannte Punktcperation von Bilddaten mehr im einzelnen dargestellt Damit werden also die Daten der Bildpunkte einzeln unabhängig voneinander verarbeitet, beispielsweise um die Grauwerte so zu verschieben, daß alle Grauwerte im Bild gleich häufig auftreten, oder um die bereits erwähnte v -Korrektur durchzuführen, oder um eine Pseudo-Farbdarstellung eines an sich schwarz-weißen Bildes zu erzeugen, wobei den verschiedenen Helligkeitsstufen zur besseren Erkennbarkeit verschiedene Farben zugeordnet werden.
  • Da die Bilddaten einzeln und unmittelbar verarbeitet werden, besteht der Adressengenerator 31 hier wieder aus einem Zähler, der das Taktsignal CL von dem Datenbus 19 erhält und dem Datenbus 17 die aufeinanderfolgenden Adressen zum Auslesen und Rückschreiben der Bilddaten aus dem Arbeitsspeicher zuführt. Die aus dem Arbeitsspeicher ausgelesenen und über den Datenbus 15 abgegebenen Daten werden einem Demultiplexer 63 zugeführt, der gegebenenfalls einen Pufferspeicher für ein Datenwort enthalten kann. Dieser Demultiplexer 63 führt die Bilddaten entweder dem Adresseneingang eines Schreib-Lese-Speichers 34, eines Festwertspeichers 61 oder dem Dateneingang einer arithmetisch-logischen Einheit 67 zu, und zwar gesteuert durch einen Befehlsspeicher 33, der vor Beginn der Bildoperation einen kodierten Steuerbefehl über den Steuerbus 19 erhält und diesen dekodiert abgibt, wie durch die mehreren-Ausgänge des Befehlsspeichers 33 angedeutet ist.
  • Dadurch wird auch der Multiplexer 65 gesteuert, der in entsprechender Weise wie der Demultiplexer 63 den Datenausgang der Einheit 34, 61 oder 67 dem Datenbus 13 zur Übertragung zum Arbeitsspeicher zuführt.
  • Für eine y-Korrektur wird der über den Datenbus 15 vom Arbeitsspeicher zugeflihrte Bildpunktwert dem Adresseneingang des Festwertspeichers 61 zugeführt, der a,l jedem Speicherplatz den dem adressierenden Datenwort zugeordneten korrigierten Helligkeitswert enthält und diesen dem Mtilei~# plexer 65 zuführt.
  • Falls jedoch eine variable Verschiebung dei Helligkeitswerte der Bildpunkte erforderlich ist, werden die aus dem Arbeitsspeicher ausgelesenen Bilddaten dem Adresseneingang eines Parameterspeichers 34 zugeführt, dessen Inhalt vor Beginn der Bildoperation über den Steuerbus 19 aus der Steuereinheit 23 eingeschrieben worden ist. Da diese eingeschriebenen Werte eine variable Korrektur der ursprünglichen Bilddaten ermöglichen, können sie als Parameter der Bildoperation aufgefasst werden.
  • In der arithmetisch-logischen Einheit 67 können die Bilddaten schließlich entsprechend dem Inhalt eines Speichers 69 verändert oder maskiert werden.
  • In Fig. 5 sind zwei Ausführungen einer Recheneinheit für sogenannte lokale Bildoperationen wie beispielsweise eine digitale zweidimensionale Filterung sowie die dafür erforderliche Adressenfolge schematisch dargestellt. Für eine solche Bildoperation müssen jeweils die Bilddaten einer Untermatrix der Bildmatrix gewichtet miteinander verknüpft werden, wobei diese Untermatrix schrittweise über das gesamte Bild verschoben wird. In Fig. 5 a ist die Adressenfolge für eine solche Untermatrix von neun Bildpunkten dargestellt. Ausgehend von dem linken oberen Punkt der Untermatrix werden zunächst die beiden folgenden Punkte der Zeile ausgelesen, danach erfolgt ein Sprung auf den dem ersten Punkt entsijrechenden Punkt der nächsten Zeile, wonach die darauf folgenden beiden Punkte übertragen werden, und dann erfolgt schließlich ein Sprung auf den entsprechenden Punkt der übernächsten Zeile und die beiden darauf folgenden ne. Nach einem abgeschlossenen Verarbeitungsschritt erfolgt von der letzten Adresse ein Sprung auf den zweiten Punkt der ersten Zeile, und danach folgt wieder die gleiche Adressenfolge, wodurch also eine um einen Punkt ~rerschobErte Un-U.ermatrix ausgelesen wird. Dabei muß lediglich da #:r:i, werLYl die Untermatrix am rechten Bildrand angekommen ist 9 nach einem Verarbeitungsschritt ein Sprung auf den ersten Punkt der zweiten Zeile erfolgen.
  • Diese Adressenfolge wird durch die Elemente 71 bis 77 in Fig. 5 erzeugt. Dabei ist der Block 71 ein Zähler, der das Taktsignal CL als Zähltakt erhält und dessen Zählerausgänge mit dem Adresseneingang eines Festwertspeichers 73 verbunden sind. Dieser Zähler 71 durchläuft einen Zyklus von neun Schritten, und der Festwertspeicher 73 enthält bei jeder Zählerstellung einen der zugehörigen Adressendifferenz entsprechenden Wert, der dem einen Eingang eines Addierers 75 zugeführt wird. Der Ausgang des Addierers ist mit dem Eingang eines Speicherregisters 77 verbunden, dessen Ausgang mit dem Adressenbus 17 und dem anderen Eingang des Addierers 75 verbunden ist. Mit jedem Taktsignal CL übernimmt das Register 77 die Summe aus der vorhergehenden Adresse und der Differenz zur nächsten Adresse, so daß auf dem Adressenbus 17 eine Adressenfolge entsprechend der Fig. 5 a erscheint. Am Ende dieser Adressenfolge wird die Erzeugung neuer Adressen unterbrochen, beispielsweise durch Sperren des Taktsignals CL zum Zähler 71 und zum Register 77, oder der Zähler 71 durchläuft noch eine der Verarbeitungszeit der adressierten Daten entsprechende Anzahl Stellungen, bei denen der Festwertspeicher 73 den Wert 0 abgibt, so daß die Adresse nicht verändert wird.
  • Die aus dem Arbeitsspeicher über den Datenbus 15 zuge- führten Daten der adressierten Bildpunkte werden in einem Pufferspeicher 37 eingelesen, und zwar unter Steuerung einer Ablauf-Steueranordnung 38', die selbst wieder durch das Taktsignal CL gesteuert wird Nach dem Einlesen werden diese Daten in entsprechender Kombinalion der arithmetischen Einheit 38 zugeführt und dort nach einem der Filterung entsprechenden Rechens chema ve #-#nü1i% und über den Datenbus 13 dem Arbeitsspeicher angeführt und iJi in diesen zurückgeschrieben.
  • Aus der in Fig. 5 a dargestellten Adressenfolge ist zu erkennen, daß jeder Bildpunkt mehrmals im Mteitsspeicher adressiert wird, wobei der Pufferspeicher 37 die Daten von neun Bildpunkten aufnehmen muß. Dies erfordert eine große Anzahl von Datenübertragungen, die die Verarbeitungsgeschwindigkeit herabsetzt. Eine andere Möglichkeit, die gleiche Bildoperation durchzuführen, wobei jedoch jeder Bildpunkt nur einmal übertragen werden muß, ist in Fig. 5c dargestellt. Dort ist der Pufferspeicher für die aus dem Arbeitsspeicher ausgelesenen Daten ein Schieberegister mit einer Gesamtkapazität von zwei vollen Bildzeilen zuzüglich drei Bildpunkten. Diese Schieberegister 37 sind in Serie geschaltet und erhalten parallel das Taktsignal CL als Schiebetakt, das gleichzeitig auch dem hier als einfachen Zähler ausgeführten Adressengenerator 31 zugeführt wird.
  • Die Ausgänge jeweils der ersten drei Schieberegisterelemente der beiden oberen Schieberegister sowie die Ausgänge der unteren drei Elemente sind mit der Verarbeitungseinheit 38-- verbunden.
  • Der Zähler 31 erzeugt auf dem Adressenbus 17 aufeinanderfolgende Adressen, die das im Arbeitsspeicher enthaltene Bild zeilenweise auslesen. Die ausgelesenen Bilddaten werden über den Datenbus dem Eingang des oberen Schieberegisters 37 zugeführt, durchlaufen dieses mit den folgenden Taktsignalen, bis sie an dessen Ausgang erscheinen und dem Eingang des zweiten Schieberegisters zugeführt werden, das sie ebenfalls durchlauienund schließlich den letzten drei Speicherelementen 37 zugeführt wird. Dies geschieht aufeinanderfolgend mitfaus dem Arbeitsspeicher ausgelesenen Bildpunkten, so daß nach dem Auslesen von vollständigen zwei Zeilen sowie den ersten drei Punkten der dritten Zeile die Verarbeitungseinhei 38 gerade die Bildpunkte der ersten Untermatrix zugeführt erhält. Deren Daten werden nun verarbeitet und über den Datenbus 13 zum Arbeit speicher zurückübertragen, und mit dem nächsten Taktsignal CL werden die Daten der Bildpunkte der um einen Bild punkt verschobenen Untermatrix der Verarbeitungseinheit 38 zugeführt, usw. Dadurch wird mit jedem Taktsignal CL eine vollständige Untermatrix verarbeitet, wobei für die Verarbeitungseinheit 38 ein entsprechender Aufbau angenommen ist, beispielsweise aus einem Netzwerk von mehreren Addierern, so daß die Verarbeitung mit maximaler Geschwindigkeit und somit wesentlich schneller als bei der Ausführung nach Fig. 5 d erfolgt. Es ist allerdings ein größerer Pufferspeicher 37 erforderlich, andererseits ist dafür der Adressengenerator 31 wieder einfacher aufgebaut.
  • Eine Anordnung zur Verarbeitung von zwei Bildern miteinander ist in Fig. 6 dargestellt, wobei die Bilder beispielsweise vom selben Objekt zu verschiedenen Zeiten stammen können und voneinander subtrahiert werden, so daß lediglich die Veränderung des Objektes zwischen diesen beiden Zeitpunkten übrig bleibt. Dafür wird beispielsweise der Arbeitsspeicher 21 in zwei Bereiche 21a und 21b eingeteilt, wie in Fig. 6a dargestellt ist, von denen jeder ein anderes der beiden Bilder in untereinander übereinstimmender Weise aufnimmt. Die Adressen entsprechender Bildpunkte beider Bilder mögen sich dabei nur in den höchstwertigen Adressenbit unterscheiden. Die beiden Bilder können dann ohne weiteres nacheinander in den Arbeitsspeicher 21 über den Datenbus 13 eingespeichert werden, wobei beispielsweise der in Fig. 3 dargestellte Zähler 31 lediglich nach dem Einschreiben des ersten Bildes nicht von vorn zu zählen beginnen darf, sondern bei entsprechender Länge weiter zählen muß. Wenn dann beim Auslesen der Bilddaten die Adressenbits niedrigerer Wertigkeit auf dem Adressenbus 17 jeweils erst dann weiterschalten, wenn das höchstwertige Adressenbit nacheinander beide Werte angenommen hat, werden die Bildpunkte beider Bilder quasi parallel, d.h. mit einem Schrittabstand, ausgelesen und über den Datenbus 15 der entsprechenden Verarbeitungseinheit zugeführt.
  • Diese Verarbeitungseinheit j..st. in Figo 6b dargestellt. Der Adressengenerator 31 besteht hier wieder aus einem Zähler, der das Taktsignal CL als Zähltakt erhält. Der Ausgang niedrigster Wertigkeit dieses Zählers 31 wird einmal als Adressenbit höchster Wertigkeit dem Adressenbus 17 und andererseits einem Demultiplexer 30 zugeführt, so daß auf diese Weise einerseits entsprechende Bildpunkte beider Bilder unmittelbar aufeinanderfolgend im Arbeitsspeicher 21 adressiert und die über den Datenbus 15 ankommenden Daten abwechselnd dem Pufferspeicher 37a und 37b zugeführt werden, so daß nach jeweils zwei Taktsignalen CL diese beiden Pufferspeicher entsprechende Bildpunkte beider Bilder enthalten. Die Ausgänge der Pufferspeicher 37a und 37b sind mit einem Subtrahierer 38 verbunden, der die Differenz zwischen beiden Bildpunkten bildet und über den Datenbus 13 zum Arbeitsspeicher 21 zurücküberträgt, wo sie beispielsweise das eine der beiden Ursprungsbilder überschreiben.
  • Fig. 7 zeigt eine Recheneinheit zur Auswertung von Bilddaten, und zwar in diesem Falle zum Erstellen eines Grauwert-Histogramms, d.h. es wird für jeden möglichen Grauwert festgestellt, wie häufig er vorkommt. Dafür werden die Daten aller Bildpunkte eines Bildes nacheinander ausgelesen, wofür als Adressengenerator 31 wieder ein Zähler vorgesehen ist, der durch das Taktsignal CL nacheinander durch alle Stellungen schaltet und somit nacheinander alle Adressen dem Adressenbus 17 zuführt. Die ausgelesenen und über den Datenbus 15 zugeführten Bilddaten werden dem Adresseneingang ei einesinpeichers 35 zugeführt, der für je- den Grauwert einen Speicherplatz für eine mehrstellige Dualzahl aufweist. Diese Speicherplätze enthalten zu Anfang der Bildoperation den Wert 0, und der Inhalt eines adressierten Speicherplatzes wird einem Addierer 38 zugeführt, dort um den Wert ~1' erhöht und in den gleichen Speicherplatz zurückgeschrieben Auf diese Weise werden die Anzahlen der Grauwerte jeweils getrennt aufsummiert.
  • Wenn die Daten aller BildiJunkte eines Bildes zugeführt worden sind, wird der 4#Cressengenerator 31 abgeschaltet 19 und über den Steueibu.s/ein Zähler 40 gestartet, der ebenfalls das Taktsignal CL eIs %ähltakt erhält und dessen Zählerausgänge ebenfalls m den Adresseneigängen des Speichers 35 verbunden id. Dieser Zähler 40 adressiert nun nacheinander alle Speicherplätze des Speichers 35, und deren Inhalt wird über den Steuerbus 19 der Steuereinheit 23 in Fig. 1 zugeführt. Diese Recheneinheit erzeugt somit keine neuen Bilddaten und ist daher auch nicht mit dem Datenbus 13 zum Zuführen von Daten zum Arbeitsspeicher 21 verbunden. Die über den Steuerbus 19 ausgelesene Häufigkeitsverteilung der Grauwerte des Bildes kann in der Steuereinheit 23 dafür verwendet werden, um Parameterwerte, beispielsweise 34 in Fig. 4 eingegebenen Parameterwerte, für eine nachfolgende Bildoperation zu erzeugen, durch die die Helligkeitswerte der Bildpunkte so verschoben werden, daß sich eine etwa gleichmäßige Verteilung aller Helligkeitswerte ergibt.
  • Bei verschiedenen Bildoperationen werden die erzeugten Bilddaten an einer Adresse im Arbeitsspeicher 21 zurückgeschrieben, die einen festen Abstand zur ausgelesenen Adresse bzw. zur zuletzt ausgelesenen Adresse aufweisen.
  • Dies gilt beispielsweise für die Recheneinheit nach Fig. 5, insbesondere nach Fig. 5c,oder für Recheneinheiten, in denen die Bilddaten eine mehrstufige Verarbeitungseinheit ohne Schleife durchlaufen, so daß die nächsten Bilddaten bereits darin eingegeben werden können, bevor die vorhergehenden Bilddaten vollständig verarbeitet am Ausgang er- scheinen. Dafür können zwei Adressengeneratoren vorgesehen werden, von denen einer die auszulesenden und der andere die rückzuschreibenden Adressen erzeug-Us wenn nicht der gleiche Adressengenerator beide Adressen erzeugen kann, wie dies beispielsweise bei der Anc.xd.nt##ig nach Fig 5b durch entsprechende Auslegung des Zåh:lels 71 und des Speichers 73 möglich ist. Bei einem einfachen Adressengenerator, insbesondere in Form eines e:in~sokleI Zählers, und einem konstanten Abstand zwischen auszulesender uiid rück zuschreibender Adresse ist dagegen eillc Är.J.ordi#ng nach Fig 8 zweckmäßiger. Darin besteht der Adi--.e#sengenerator aus den Elementen 81, 83, 85 und 87, wobei die Adressiereinheit 81 vom Taktsignal CL gesteuert die Folge der Lese- bzw. Rückschreibadressen erzeugt und im einfachsten Falle aus einem Zähler besteht. Diese Adressenfolge wird einmal einer Umschalteinheit 87 sowie auch einer Verzögerungseinheit 83 zugeführt, die aus einem mehrstufigen Schieberegister besteht, dessen Inhalt ebenfalls durch das Taktsignal CL oder einen durch Taktuntersetzung davon abgeleiteten Schiebetakt jeweils um eine Stufe weitergeschoben wird, wobei der Inhalt der letzten Stufe jeweils gelöscht wird. Die Ausgänge der Schieberegisterstufen sind über Umschalter, die über den Dekoder 85 durch Signale auf dem Steuerbus 19 gesteuert werden, mit dem anderen Eingang der Umschalteinheit 87 verbunden. Falls die betreffende Bildoperation keine Modifikation zulässt oder bei allen Modifikationen derselbe Adressenabstand zwischen Lese- und Schreibadresse besteht, können die Umschalter auch weggelassen und der Ausgang der letzten Stufe des entsprechend lang gewählten Schieberegisters direkt mit der Umschalteinheit 87 verbunden sein. Diese Umschalteinheit 87 wird ebenfalls durch das Taktsignal CL gesteuert und führt abwechselnd die am Eingang oder am Ausgang der Verzögerungseinheit 83 vorhandene Adresse dem Adressenbus 17 zu, und zwar jeweils nach einer Adresse oder nach einer Anzahl von Adressen der einen Art, wie dies beispielsweise bei der Anordnung nach Fig. 5 erforderlich ist. Wenn der Adressenbus 17 so ausgelegt ist, daß gleichzeitig zwei Adressen übertragen werden können, beispielsweise weil ein Arbeitsspeicher verwendet wird, der gleichzeitig eine Adresse auslesen und eine andere Adresse einschreiben kann, kann die Umschalteinheit 87 auch entfallen.
  • Für bestimmte Bildoperationen kann es zweckmäßig sein, eine programmierbare Recheneinheit . zusehen Ein Beispiel für eine solche programmierbare Rec:heneirlheit ist in Fig. 9 dargestellt. Diese enthält zwei Prozessoren 43 und 45, die jeweils einen Mikroprozessor enthalten können Im unteren Teil der Prozessoren ist jeweils der Programmspeicher 43? bzw. 45' enthalten, der über den Steuerbus 19 von der Steuereinheit 23 in Fig. 1 geladen werden kann. Der untere Prozessor 43 dient hier zur Verarbeitung der Bilddaten, die über den Datenbus 15 zugeführt und über den anderen Datenbus 13 wieder zum Arbeitsspeicher 21 in Fig. 1 zurückgebracht werden. Der Prozessor 45 dient zur Erzeugung der Adressenfolge und weist nur einen Datenausgang auf, der mit dem Adressenbus 17 verbunden ist. Diese beiden Prozessoren 43 und 45 sind über interne Steuerleitungen 49 miteinander verbunden, die insbesondere eine gegenseitige Synchronisation der beiden Prozessoren gewährleisten, so daß der Prozessor 45 jeweils erst dann eine neue Adresse erzeugt, wenn der Prozessor 43 die Daten des jeweils nächsten Bildpunktes ermittelt hat, oder umgekehrt, abhängig davon, welcher von beiden Vorgängen schneller abläuft. Mit einer solchen programmierbaren Steuereinheit können auch sehr komplizierte und unterschiedliche Bildoperationen durchgeführt-werden, jedoch allgemein auf Kosten der Verarbeitungsgeschwindigkeit. In besonderen Fällen kann die programmierbare Recheneinheit auch aus einem vollständigen universellen Vielzweckrechner bestehen.
  • An Hand der Fig. 10 sollen Aufbau und Funktion des Zeichenspeichers 27 mit Zeichengenerator 39 näher erläutert werden. Der Zeichenspeicher 27 ist ein Schreib-Lese-Speicher, der über den Adressenbus 17 adressiert wird und über den Steuerbus 19 die kodierten Zeichen aufeinanderfolgend er- hält. Über weitere Leitungen des Steuerbus 19 wird das Einschreiben bzw. Auslesen für den Zeichenspeicher 27 sowie das Einschalten des Zeichengenerators 39 gesteuert.
  • Der Zeichenspeicher 27 enthält dabei nicht für jeden Bildpunkt, sondern jeweils nur für eine Zeiciienmatrix einen Speicherplatz, so daß er weselltlich kleiner ist als der Arbeitsspeicher 21.
  • Beim Auslesen werden die kodierten Zeichen dem 7eichengenerator 39 zugeführt, wobei Vuil den-Actressen auf dem Adressenbus 17 die höheren Adiessenbfts dem Zeichenspeicher 27 und die niedrigeren AdressenbiLss die die Position innerhalb der Zeichenmatrix angeben, dem Zeichengenerator 39 zugeführt werden. Die Ausgangssignale des Zeichengenerators 39, die vorzugsweise nur zwei verschiedene Werte entsprechend maximaler und minimaler Helligkeit aufweisen, werden über den Datenbus 15 insbesondere direkt der Recheneinheit für die Ausgabe von Bilddaten, d.h. der Recheneinheit 7 in Fig. 1, zugeführt. In ähnlicher Weise kann auch ein Zeichengenerator für Vektorendarstellung aufgebaut sein.
  • Die vorstehend beschriebenen Elemente der Datenverarbeitungsanlage zur Verarbeitung von Bilddaten stellen nur Ausführungsbeispiele dar, wobei für weitere Bildoperationen noch andere, insbesondere zusätzliche Recheneinheiten vorgesehen werden können.

Claims (20)

  1. PATENTANSPRÜCHE Datenverarbeitungsanlage zur Verarbeitung von Daten, die die Helligkeitsinformation der Bildelemente von Bildern darstellen, mit einem diese Daten aufnehmenden Arbeitsspeicher, gekennzeichnet durch - einen Arbeitsspeicher (21), der die Daten aller Bildelemente mindestens eines Bildes gleichzeitig speichert, - mehrere Recheneinheiten (1, 3, 5 ...), die über einen gemeinsamen Datenbus (11; 13, 15) und einen gemeinsamen Adressenbus (17) mit dem Arbeitsspeicher (21) verbunden sind und von denen jede Recheneinheit eine andere festgelegte Verarbeitung von Daten des Bildes bzw. der Bilder (Bildoperation) selbstständig durchführt und einen eigenen Adressengenerator (31) enthält, der die durch die Bildoperation bestimmte Folge der Adressen des Arbeitsspeichers erzeugt und diesem über den Adressehbus (17) zuführt, und - eine Steuereinheit (23), die mit den Recheneinheiten (1, 3, 5 ...) über Steuerleitungen (19) verbunden ist und durch darauf übertragene Steuersignale mindestens den Start und das Ende der Durchführung der Bildoperationen in den Recheneinheiten steuert und durch darauf übertragene Zustandssignale Zustandsmeldungen der Recheneinheiten empfängt.
  2. 2. Datenverarbeitungsanlage nach Anspruch 1, dadurch gekennzeichnet, daß der Datenbus (11) aus einem ersten Datenbus (13), der Daten zum Arbeitsspeicher (21) überträgt, und aus einem zweiten Datenbus (15) besteht, der Daten vom Arbeitsspeicher zu den Recheneinheiten (1, 3, 5...) überträgt, wobei beide Datenbusse unabhängig voneinander Daten übertragen.
  3. 3. Datenverarbeitungsanlage nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß der Adressengenerator (31) Zähler enthält.
  4. 4. Datenverarbeitungsanlage nach Anspruch 1, 2 oder 3, dadurch gekennzeichnet, daß der Adressengenerator (31) eine Verarbeitungseinheit/mit einem Akkumulator (75, 77) enthält,
  5. 5. Datenverarbeitungsanlage nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, daß der -Adressengenerator (31) eine Verzögerungseinheit (83) enthält, die von einer Adressiereinheit (81) aufeinanderfolgend -erzeugte Adressen am Eingang erhält und eine Anzahl Perioden eines Taktsignals verzögert am Ausgang abgibt, wobei der Eingang und der Ausgang der Verzögerungseinheit mit dem Adressenbus (17) verbunden ist.
  6. 6. Datenverarbeitungsanlage nach Anspruch 5, dadurch gekennzeichnet, daß eine Umschalteinheit (87) periodisch abwechselnd den Eingang und den Ausgang der Verzögerungseinheit (83) mit dem Adressenbus (17) verbindet.
  7. 7. Datenverarbeitungsanlage nach Anspruch 5 oder 6, dadurch gekennzeichnet, daß die Verzögerung der Verzögerungseinheit (83) umschaltbar ist.
  8. 8. Datenverarbeitungsanlage nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, daß zumindest ein Teil der Steuerleitungen (19) einen allen Recheneinheiten (1, 3, 5 ...) gemeinsamen Steuerbus bildet.
  9. 9. Datenverarbeitungsanlage nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, daß weitere Steuersignale der Steuereinheit (23) die Durchfu~hliung der Bildoperation zumindest in einigen Recheneiribeiten (1, 3,...) modifizieren.
  10. 10. Datenverarbeitungsanlage nach Anspruch 9, dadurch gekennzeichnet, daß die Recheneinheiten (1,3,...) für modifizierbare Bildoperationen Speicher (33) für mindestens einen Teil der weiteren Steuersignale enthalten.
  11. 11. Datenverarbeitungsanlage nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, daß zumindest einige Recheneinheiten (1, 3, ...) über die Steuerleitungen (19) Steuerdaten von der Steuereinheit (23) empfangen und in einem Steuerspeicher (34) zwischenspeichern, wobei die Steuerdaten Parameter für Bildoperationen sind.
  12. 12. Datenverarbeitungsanlage nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, daß mindestens einige Recheneinheiten (1,3, ...) die Ergebnisdaten von Bildoperationen über Steuerleitungen (19) zur Steuereinheit (23) übertragen.
  13. 13. Datenverarbeitungsanlage nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, daß mindestens einige Recheneinheiten (1, 3, ...) Ergebnisspeicher (35) enthalten, die bei der Bildoperation entstehende Ergebnisdaten aufnehmen.
  14. 14. Datenverarbeitungsanlage nach Anspruch 13, dadurch gekennzeichnet, daß die Recheneinheiten (1, 3, ...) mit Ergebnisspeichern (35) deren Inhalt nach Abschluß der betreffenden Bildoperation zur Steuereinheit (23) übertragen.
  15. 15. Datenverarbeitungsanlage nach.Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, -daß mindestens einige Recheneinheiten (1, 3, ...) Puffeaspeicher mindestens (37) für einen Teil der jeweils als nächstes zu verarbeitenden Bilddaten enthalten.
  16. 16. Datenverarbeitungsanlage nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, daß mindestens eine Eingabe-Recheneinheit (5) vorgesehen ist, die Bilddaten von außerhalb der Datenverarbeitungsanlage empfängt und die nur ausgangsseitig an den Datenbus bzw. an den ersten Datenbus (13) angeschlossen ist, und daß mindestens eine Ausgabe-Recheneinheit (7) vorgesehen ist, die Bilddaten nach außerhalb der Datenverarbeitungsanlage abgibt und die nur eingangsseitig an den Datenbus bzw. an den zweiten Datenbus (15) angeschlossen ist.
  17. 17. Datenverarbeitungsanlage nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, daß mindestens eine Recheneinheit (1, 3, ...) eine programmgesteuerte Verarbeitungseinheit mit einem Programmspeicher (43',45') enthält, dessen Inhalt über die Steuerleitungen (19) einschreibbar ist.
  18. 18. Datenverarbeitungsanlage nach Anspruch 17, dadurch gekennzeichnet, daß die Verarbeitungseinheit zwei Prozessoreinheiten (43, 45) umfasst, von denen die eine (43) nur mit dem Datenbus (11; 13, 15) und die andere (45) nur mit dem Adressenbus (17) verbunden ist, wobei beide Prozessoreinheiten über interne Steuerleitungen (49) zur gegenseitigen, insbesondere abwechselnden Steuerung verbunden sind.
  19. 19. Datenverarbeitungsanlage nach Anspruch i oder einem der folgenden, dadurch gekennzeichnet, daß parallel zum Arbeitsspeicher (21) mindestens ein Zeichenspeicher (27) an den Adressenbus (17) sowie eingangsseitig an Steuerleitungen (19) zur tufnaha me kodierter graphischer Zeichen und ausgang.C#sei tig über einen Generator (39) zur Erzeugung g phischer Zeichen an den Datenbus (11 bzwe 3) ante schlossen ist, wobei der Zeichengenerator (39) ebenfalls an den Adressenbus (17) angeschlossen ist.
  20. 20. Datenverarbeitungsanlage nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, daß mit der Steuereinheit (23) eine Bedienungseinheit (25) verbunden ist, über die Kommandos in die Steuereinheit eingebbar sind.
DE19792921123 1979-05-25 1979-05-25 Datenverarbeitungsanlage zur verarbeitung von bilddaten Withdrawn DE2921123A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19792921123 DE2921123A1 (de) 1979-05-25 1979-05-25 Datenverarbeitungsanlage zur verarbeitung von bilddaten

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19792921123 DE2921123A1 (de) 1979-05-25 1979-05-25 Datenverarbeitungsanlage zur verarbeitung von bilddaten

Publications (1)

Publication Number Publication Date
DE2921123A1 true DE2921123A1 (de) 1980-12-04

Family

ID=6071612

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19792921123 Withdrawn DE2921123A1 (de) 1979-05-25 1979-05-25 Datenverarbeitungsanlage zur verarbeitung von bilddaten

Country Status (1)

Country Link
DE (1) DE2921123A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0114203A2 (de) * 1982-10-29 1984-08-01 Kabushiki Kaisha Toshiba Ein Bildprozessor
EP0118053A2 (de) * 1983-02-09 1984-09-12 Hitachi, Ltd. Bildsignalverarbeitungsgerät

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0114203A2 (de) * 1982-10-29 1984-08-01 Kabushiki Kaisha Toshiba Ein Bildprozessor
EP0114203A3 (en) * 1982-10-29 1986-08-13 Kabushiki Kaisha Toshiba Processor and method of processing image data
US4713789A (en) * 1982-10-29 1987-12-15 Tokyo Shibaura Denki Kabushiki Kaisha Processor and method of processing image data
EP0118053A2 (de) * 1983-02-09 1984-09-12 Hitachi, Ltd. Bildsignalverarbeitungsgerät
EP0118053A3 (en) * 1983-02-09 1986-08-13 Hitachi, Ltd. Image signal processor

Similar Documents

Publication Publication Date Title
DE4231158C5 (de) Verfahren und Einrichtung für die Zusammensetzung und Anzeige von Bildern
DE2932525C2 (de)
DE3141196A1 (de) Videobildverarbeitungsvorrichtung
DE3419219C2 (de) Steuervorrichtung für ein Bildschirmgerät
DE3718501A1 (de) Videoanzeigegeraet
DE10101073B4 (de) Bildaufbereitungsvorrichtung mit niedrigeren Speicherkapazitätsanforderungen und Verfahren dafür
DE2950712A1 (de) Einrichtung zur erzeugung eines elektronischen hintergrundrasterfeldes
DE3804938A1 (de) Bildverarbeitungseinrichtung
DE2261141C3 (de) Einrichtung zur graphischen Darstellung von in einem Computer enthaltenen Daten
DE3114925C2 (de)
DE3534205C2 (de)
DE69635368T2 (de) Hochgeschwindigkeitssystem zur Ausrichtung und Verlegung von Schwellenmatrizen während der Erzeugung von binären Halbtonbildern
EP0038002B1 (de) Anordnung zum Darstellen von Zeichen an einem Bildschirm einer Anzeigeeinheit
DE2510542A1 (de) Digitale bildwiedergabevorrichtung mit mehreren bildschirmen
DE2324063C3 (de) Pufferspeichereinrichtung
DE3933253A1 (de) Einrichtung und verfahren zur durchfuehrung von booleschen rasteroperationen an quellen- und zieldaten
EP0230076A2 (de) Verfahren und Anschaltungsanordnung zur Auflösungsumwandlung von binären Pseudo-Halbtonbildern
DE2654010A1 (de) Fernsehanordnung
EP0006131A1 (de) Verfahren zur Übertragung von Aufzeichnungen mit gemischtem Darstellungsinhalt auf einen Sichtanzeigeschirm, insbesondere in Fernsprechanlagen
DE3305709A1 (de) Verfahren zur steuerung der lichtemissionsintensitaet in einer kurvenschreibervorrichtung und vorrichtung zur durchfuehrung des verfahrens
DE2921123A1 (de) Datenverarbeitungsanlage zur verarbeitung von bilddaten
DE3046972C2 (de) Steuerschaltung zum Erzeugen von Punktmusterdaten
DE4103880C2 (de) Bildverarbeitungsgerät und -verfahren
DE2439102A1 (de) Verfahren zum darstellen von bildern in form von digitalen daten
DE2244128A1 (de) Bildschirm-sichtgeraet

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee