DE19539716A1 - Verfahren und Vorrichtung zur Filterung digitaler Bilddaten - Google Patents

Verfahren und Vorrichtung zur Filterung digitaler Bilddaten

Info

Publication number
DE19539716A1
DE19539716A1 DE1995139716 DE19539716A DE19539716A1 DE 19539716 A1 DE19539716 A1 DE 19539716A1 DE 1995139716 DE1995139716 DE 1995139716 DE 19539716 A DE19539716 A DE 19539716A DE 19539716 A1 DE19539716 A1 DE 19539716A1
Authority
DE
Germany
Prior art keywords
filter
data
image
filtering
stages
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
DE1995139716
Other languages
English (en)
Inventor
Hermann Fuchsberger
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.)
Agfa Gevaert AG
Original Assignee
Agfa Gevaert AG
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 Agfa Gevaert AG filed Critical Agfa Gevaert AG
Priority to DE1995139716 priority Critical patent/DE19539716A1/de
Publication of DE19539716A1 publication Critical patent/DE19539716A1/de
Withdrawn 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/40Scaling of whole images or parts thereof, e.g. expanding or contracting

Landscapes

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

Description

Die Erfindung betrifft ein Verfahren und eine Vorrichtung zur Filterung gerasterter Bilddaten gemäß dem Oberbegriff des Anspruchs 1.
In der digitalen Bildverarbeitung ist es oft notwendig, ein gegebenes Raster von Bilddaten in ein anderes Raster umzusetzen, beispielsweise ein Bildraster von 1024 × 1024 Punkten in ein Raster von 680 × 680 Punkten.
Die Wahl der Rastergröße hängt dabei von den jeweiligen Anforderungen an die Auflösungsqualität der übertragenen Bilder, aber auch von der Rechen- bzw. Speicherkapazität der für die Bildverarbeitung zur Verfügung stehenden elektro­ nischen Komponenten ab. Bei der Abtastung, der Verarbeitung und der Ausgabe von Bildern ist insbesondere das Shannonsche Abtasttheorem zu beachten. Es besagt, daß bei einem bandbegrenzten Signal die Abtastfrequenz mindestens doppelt so groß sein muß wie die größte im Signal auftretenden Frequenz. Wird dieses Theorem nicht eingehalten, so treten bei den übertragenen Bildern stö­ rende Moir´-Muster auf.
Bei der Umrechnung einer ersten Rasterung in eine zweite Rasterung ist zu unterscheiden zwischen der Interpolation, bei der das neue Raster mehr Raster­ punkte als das alte aufweist und andererseits der Dezimation, bei der die neue Rasterung weniger Rasterpunkte als die alte Rasterung aufweist.
Bei der Dezimation handelt es sich im Prinzip um eine Vorfilterung, d. h. um eine Bandbegrenzung, bei der die Bildsignale zunächst in einen höheren Frequenz­ bereich transformiert und anschließend mit einer neuen, niedrigeren Frequenz abgetastet werden. Die höhere Ausgangsfrequenz und die Abtastfrequenz stehen dabei in einem ganzzahligen Verhältnis.
Bei der Interpolation werden neue Zwischenwerte mit Hilfe eines Interpolationsfil­ ters berechnet. Die Filterkoeffizienten, mit denen die ursprünglichen Daten mul­ tipliziert werden, sind dabei aus einem geometrischen Verhältnis des neu erzeug­ ten Bildpunktes zu einer bestimmten Umgebung der alten Bilddaten errechnet.
Prinzipien zur Rasterung von Bilddaten sowie zur Umrechnung von Rasterungen sind z. B. von Peter Haberecker in "Digitale Bildverarbeitung, Grundlagen und Anwendungen", C. Hanser-Verlag München, 4. Auflage (1991), insbesondere in den Kapiteln 2.2, 5.1, 5.2, 5.3 und 6.5 beschrieben.
Nachteilig bei den dort gezeigten Verfahren ist, daß die Rechenoperationen zur Filterung der Bilddaten jeweils von einem Rechner durchgeführt werden, der die ursprünglichen Daten sowie die neu berechneten Daten über Verbindungs­ schnittstellen aus verschiedenen Speichern abholt bzw. in diese lädt. Dies führt zu dem Nachteil, daß durch das Abholen bzw. Laden von Bilddaten relativ viel Zeit benötigt wird. Die Filterung ist deshalb relativ langsam.
Es ist Aufgabe der Erfindung, ein Verfahren und eine Vorrichtung anzugeben, die die Filterung gerasterter Bilddaten auf der Basis einfacher elektronischer Schal­ tungskomponenten in kurzer Zeit erlauben.
Diese Aufgabe wird gelöst durch die kennzeichnenden Merkmale des Verfah­ rensanspruchs 1 und des Vorrichtungsanspruchs 10. Vorteilhafte Ausführungs­ formen der Erfindung sind Gegenstand der Unteransprüche.
Erfindungsgemäß ist vorgesehen, daß in der Filterschaltung mehrere gleichartige Rechenstufen betrieben werden und daß die Umschaltung zwischen verschiede­ nen Filterrastern dadurch erfolgt, daß mit den Rechenstufen entweder gleichzeitig an verschiedenen Datensätzen oder an ein und demselben Datensatz Rechen­ operationen durchgeführt werden. Die Erfindung ist insbesondere für Verfahren zur Verarbeitung von Bilddaten farbiger Vorlagen geeignet. Die Datensätze sind hier jeweils verschiedenen Farben zugeordnet. Die erfindungsgemäße Schaltung ermöglicht dadurch, entweder die verschiedenen Farb-Datensätze gleichzeitig mit jeweils einem Filterraster zu verarbeiten oder nur einen Datensatz einer Farbe oder z. B. ein Luminanz-Signal Y mit einem größeren Filterraster zu verarbeiten.
Für eine mehrdimensionale Filterung, insbesondere eine zweidimensionale, kann auch vorgesehen sein, mehrere Filterstufen hintereinander zu schalten, bei­ spielsweise zwei Filterstufen für eine zweidimensionale Filterung nacheinander vorzusehen. Die in der ersten Filterstufe verarbeiteten Bildwerte finden dann Ein­ gang in die zweite Filterstufe.
Die für eine Filteroperation vorgesehenen Multiplikations-Faktoren können ent­ weder fest in Speichern gespeichert werden oder variabel, insbesondere ver­ änderbar in einer Zeilenrichtung ausgelegt sein.
Die Umschaltung der Rechenstufen zwischen der ersten Betriebsart mit dem ersten Filterraster und der zweiten Betriebsart mit dem zweiten Filterraster kann vorteilhaft durch Multiplexer vorgesehen werden. Mehrere dieser Multiplexer kön­ nen durch ein gemeinsames Schaltsignal entsprechend den beiden Betriebsarten umgeschalten werden.
Nachfolgend werden Ausführungsbeispiele der Erfindung anhand mehrerer Figuren erläutert.
Es zeigen:
Fig. 1 ein System zur Aufnahme, Übertragung und Wiedergabe digitaler Bild­ signale,
Fig. 2 elektronische Komponenten zur digitalen Bildverarbeitung,
Fig. 3 eine Prinzipdarstellung zur Veranschaulichung einer Filtertechnik,
Fig. 4 elektronische Komponenten eines Datenfilters,
Fig. 5 eine zweite Prinzipdarstellung für eine Filtertechnik,
Fig. 6 elektronische Komponenten eines Datenfilters,
Fig. 7 eine Schaltskizze eines Datenfilters und
Fig. 8 einen weiteren Datenfilter.
In Fig. 1 sind Bildvorlagen 4, insbesondere auf fotografischem Film 3 dargestellt. Die Bildvorlagen 4 können positive oder negative Bilder sein, insbesondere far­ bige Bildvorlagen. Sie werden entlang einer Transportrichtung A an einer Kame­ ra 5 vorbeibewegt, die Bilddaten B erfaßt. Die Bilddaten werden von der Kamera über Leitungen C, C1 wechselweise in zwei Bildspeicher 6 und 7 übertragen. Während die Datenübertragung auf dem Pfad C in den Speicher 7 erfolgt, wird aus dem anderen Speicher 6 entlang D die Bildinformation in einen Bildverarbei­ tungs-Prozessor 2 eines Computers 1 eingespielt. Dort werden die Bilddaten digital verarbeitet und dann in einen der Bildspeicher 8, 9 geladen. Die Übertra­ gung zwischen den Bildspeichern 6, 7 und der Verarbeitungsstufe 2 erfolgt auf den Pfaden D, D1 wechselweise, wie bereits vorher auf den Pfaden C, C1. Das­ selbe gilt für die Bildübertragung auf den Pfaden E, E1 und F und F1. Auf den zuletzt genannten Pfaden F, F1 werden die Bildinformationen in eine Ausgabe­ vorrichtung 10 übertragen, z. B. in einen Drucker mit einer Kathodenstrahlröhre, die Bilder auf fotografisches Kopierpapier belichtet oder einen Tintenstrahldrucker oder einen Thermodrucker. Der Drucker 10 gibt die Bildsignale der Bildspei­ cher 8, 9 aus, wobei die dortigen Bildsignale jeweils die Signale mehrerer Bildvor­ lagen 4 enthalten. Im fotografischen Bereich sind derartige zusammengesetzte Bilder unter dem Begriff Indexprint bekannt.
Fig. 2 zeigt Einzelheiten des Computers 1. Die von der Kamera 5 aufgenomme­ nen, analogen Daten werden im Computer 1 von einem Analog-Digital-Wand­ ler 12 in digitale Signale mit mindestens 8 Bit Graustufentiefe transformiert. Ent­ sprechend farbiger Bildvorlagen 4 erzeugt die Kamera RGB-Signale für die drei Grundfarben Rot, Grün und Blau. Diese Bildsignale werden bildweise im Wechsel in die beiden Bildspeicher 6, 7 geladen. Jeder dieser beiden Bildspeicher ist in Bereiche für rote, grüne und blaue Signale eingeteilt oder nochmals in drei sepa­ rate Speicherbausteine untergliedert. Die Bildspeicher 6, 7 sind über eine zentrale Datenleitung 23 (CPU-Bus) mit einer Zentralrecheneinheit (CPU) 18 verbunden. Der Datentransfer kann entweder durch ein Software-Programm über die CPU 18 gesteuert werden oder über sogenannte Direct-Memory-Access-Komponenten (DMA). Über die Steuerungselemente können die Bilddaten aus den Bildspei­ chern 6, 7 entweder über die zentrale Datenleitung 23 an den Pipeline-Prozes­ sor 2 geschickt werden oder direkt, ohne über die zentrale Datenleitung 23 gehen zu müssen, über die Pipeline-Datenleitung 24. Die Bilddaten werden dabei je­ weils zeilenweise durch die Pipeline 2 geschoben.
In dem Pipeline-Prozessor finden folgende Operationen mit den Datendaten statt:
In einem Farbumsetzer 13, umfassend einen Speicher, der eine Look up-Tabelle (LUT) enthält, werden Farbkorrekturen durchgeführt. Die Interpolations-Dezima­ tions-Einheit 14 verändert die Rasterung der Bilddaten. Hier werden z. B. die von der Kamera stammenden 640 × 640 Bildpunkte in 1024 × 1024 Bildpunkte umge­ rechnet, die der über die Schnittstelle 22 angeschlossene Drucker 10 verarbeiten kann.
Nach der Einheit 14 durchlaufen die Bilddaten einen Transformationsspeicher (LUT), der eine Farbtransformation von RGB in ein anderes Farbsystem, z. B. YUV durchführt. Anschließend werden die Bilddaten durch ein Bildverschär­ fungsfilter 16 geschleust, in dem Operationen im Ortsraum der Bilddaten durch­ geführt werden, um z. B. Schärfe oder Kontrast der Bilddaten zu verändern. An­ schließend durchlaufen die Bilddaten einen zweiten Farbtransformationsspeicher (LUT) 17, bei dem die Rücktransformation vom YUV- in den RGB-Raum erfolgt. Von dort aus werden die Daten wiederum entweder über die zentrale Daten­ leitung 23 oder direkt über die Leitung 24 an einen Bildspeicher 8 bzw. einen Bildspeicher 9 übermittelt. Von dort können sie wechselweise über die Daten­ leitung 23 weitergeleitet werden. Die Datenübernahme kann auch hier entweder software-gesteuert über die CPU 18 oder über das DMA 21 direkt erfolgen (wie bei Bildspeicher 7 mit DMA 19). Auch die CPU-Aktionen können über ein DMA 20 gesteuert werden.
In Fig. 3 ist veranschaulicht, wie innerhalb der Einheit 14 eine Dezimation der Bilddaten im Verhältnis 3 : 2 erfolgt. Eingangssignale 26, die in Fig. 3 mit Ziffern 1 bis 21 entsprechend ihrer zeitlichen Abfolge numeriert sind, werden mit Takt­ signalen 25 in eine Filterschaltung eingelesen. Innerhalb der Filterschaltung werden jeweils mehrere Eingangssignale, hier genau drei, verwendet, um ein Ausgangssignal 28 zu erzeugen. Die Verknüpfungsmatrix 27 veranschaulicht diese Rechenoperation. Die Ausgangssignale 28 sind mit entsprechenden Num­ mern 32 wiederum zeitlich aufsteigend numeriert.
Das Einlesen der Eingangssignale wird mit den Taktsignalen 25 gesteuert. Die Taktsignale nehmen dabei wechselweise die Zustände Eins (High) 30 oder Null (Low) 31 an. Das Einlesen erfolgt jeweils im High-Zustand der Taktsignale 25.
Die berechneten Filterwerte 28 werden aus dem Filter der Verknüpfungsmatrix 27 nur dann ausgelesen, wenn die Taktsignale 29, welche ebenfalls zwischen zwei Zuständen 30, 31 periodisch hin und hergeschalten werden, in einem vorbe­ stimmten Zustand, hier Eins (High) ist.
Die Frequenzen der Eingangs-Taktsignale 25 und der Ausgangs-Taktsignale 33 stehen in einem ganzzahligen Verhältnis, das dem gewünschten Dezimations­ verhältnis, hier 3 : 2, entspricht.
Die Ausgangssignale 28 der Verknüpfungsmatrix 27 sind nur dann auslesbar, wenn die Taktsignale 25 der ersten Taktfrequenz und die Taktsignale 29 der zweiten Frequenz, d. h. der Teilungsfrequenz, beide in einem vorgegebenen Zu­ stand sind. Im vorliegenden Beispiel müssen beide Taktsignale den Zustand Eins (High) annehmen, damit ein Ausgangssignal 28 ausgelesen wird. Die Ausgangs­ signale 28 liegen dann ebenfalls in getakteter Form, entsprechend einer Takt­ frequenz vor, die den Taktsignalen 33 entspricht.
Fig. 4 zeigt eine geeignete elektronische Schaltung, mit der das in Fig. 3 darge­ stellte Verfahren durchgeführt werden kann. Die Eingangsdaten werden über eine Eingangsschnittstelle 38 auf der Datenleitung 35 in einen Eingangsbildspei­ cher 39, hier ein Zeilenbildspeicher mit z. B. 1024 Speicherzellen, eingelesen. Das Einlesen in den Zeilenbildspeicher 39 wird mit Taktsignalen, die vom Fre­ quenzgenerator (Clock CLK) 37 erzeugt werden. Die Steuerung erfolgt über die Taktsignalleitung 36.
Die im Bildspeicher 39 gespeicherten Bilddaten werden ebenfalls mit den Takt­ signalen der im Signalgenerator 37 erzeugten Frequenz vom Bildspeicher 39 in die Filterschaltung 40 übernommen. Die Filterschaltung 40 verknüpft benach­ barte, d. h. zeitlich aufeinanderfolgende Bilddaten gemäß der Verknüpfungsma­ trix 27 der Fig. 3 zu einem Ausgangswert. Die Eingangswerte werden dabei je­ weils mit Koeffizienten multipliziert, welche in einem Koeffizientenspeicher 43, hier ein first-in/first-out (FIFO)-Register abgespeichert sind. Das Auslesen der Koeffizienten aus dem Speicher 43 erfolgt zeitsynchron zur Datenübertragung zwischen Filter 39 und 40 mit den Taktsignalen des Signalgenerators 37. Für ein Umrechnungsverhältnis n : m (n<m) stehen n-Koeffizienten zur Verfügung. Der Koeffizientensatz kann für jede neue Bildzeile neu aus einem übergeordneten Koeffizientenspeicher geladen werden.
Das Auslesen der im Filter 40 berechneten Ausgangswerte in einen Ausgangs­ speicher 41 wird folgendermaßen gesteuert: Die im Signalgenerator 37 erzeugten Taktsignale werden direkt an ein logisches Gatter 44 angelegt. Im vorliegenden Ausführungsbeispiel ist dieses Gatter ein AND-Gatter. Am zweiten Eingang die­ ses AND-Gatters 44 werden Taktsignale einer zweiten Frequenz angelegt, die von einem zweiten Takt-Signalgenerator erzeugt werden. Im vorliegenden Aus­ führungsbeispiel ist dieser zweite Taktgenerator, welcher Taktsignale einer gegenüber dem ersten Taktgenerator 37 unterschiedlichen Frequenz erzeugt, ein Speicher 42, der auf seiner Eingangsseite die Taktsignale des ersten Taktgenera­ tors 37 empfängt. Über seine Speicherinhalte Null bzw. Eins erzeugt er auf seiner Ausgangsseite Taktsignale der zweiten Frequenz. Der Steuerspeicher 42 wirkt dadurch als Clock-Enable-Register. Im vorliegenden Ausführungsbeispiel ist er ein first-in/first-out-Speicher (FIFO).
Die Datenübernahme von der Filterschaltung 40 zum Speicher 41 wird gesteuert von den Signalen, die am Ausgang des AND-Gatters 44 erzeugt werden. Diese Signale entsprechen hinsichtlich ihrer zeitlichen Abfolge der in der Signale 33 von Fig. 3. Damit lassen sich die im Filter 40 berechneten Ausgangswerte in dem gewünschten Teilungsverhältnis 3 : 2 gegenüber den Eingangswerten austasten und somit die gewünschte Rasterumrechnung beim Übertragen der Bilddaten vom Bildspeicher 39 in den Bildspeicher 41 durchführen. Am Ausgang des Fil­ ters 40 werden nur diejenigen Werte verwendet, die entsprechend dem Raster­ verhältnis benötigt werden (vgl. Pfeile zum Output-Datenstrom der Fig. 3). Bei einem Rasterverhältnis von 3 : 2 wird beispielsweise jeder dritte berechnete Aus­ gangswert nicht weitergetaktet. Die Daten stehen am Ausgangsspeicher 41 ent­ sprechend der Eingangsreihenfolge an.
In Fig. 5 ist dargestellt, wie Eingangssignale 50 über eine Verknüpfungsmatrix 51 zu Ausgangssignalen 52 interpoliert werden können. Hier werden - ähnlich wie bei der Dezimation der Fig. 3 - aus mehreren Eingangswerten jeweils ein Aus­ gangswert berechnet. Mit unterbrochenen Linien ist hier jeweils gezeigt, wie ein neuer Zwischenwert aus mehreren Eingangswerten entsteht.
Fig. 6 zeigt eine Schaltungsanordnung, mit der eine Interpolation durchführbar ist. Die vom Taktgenerator 37 erzeugten Taktsignale werden hier dazu verwendet, die Datenübernahme vom Filter 40 in den Ausgangsspeicher 41 zu steuern. Die Übernahme der Eingangsdaten vom Eingangsspeicher 39 in die Filterschal­ tung 40 wird hier über das AND-Gatter 44 gesteuert. Am AND-Gatter 44 liegen einerseits Taktsignale einer ersten Frequenz des Taktgenerators 37 an, anderer­ seits Taktsignale einer zweiten Frequenz, welche im taktgesteuerten Register 42 erzeugt werden. Das Frequenzverhältnis der beiden am AND-Gatter 44 anliegen­ den Taktsignale bestimmt hier die Auslesefrequenz der Bilddaten aus dem Bild­ speicher 39. Die Anordnung bewirkt, daß eine Interpolation der Bilddaten bei der Übertragung vom Bildspeicher 39 in den Bildspeicher 41 erfolgt, wobei das Raster der Bilddaten genau in dem Verhältnis verändert wird, in dem die beiden Taktfrequenzen an den Eingängen des AND-Gatters 44 stehen.
Der Koeffizientenspeicher 43 enthält wiederum die nötigen Faktoren, mit denen die Eingangs-Bildsignalwerte beaufschlagt werden, um die gewünschten Aus­ gangs-Bildwerte zu erzeugen. Die Faktoren können individuell verschieden sein, je nach Nummer der Eingangs-Bildsignale.
Je nach gewünschtem Umrechnungsverhältnis der Rasterungen in den Bildspei­ chern 39 und 41 werden die Inhalte des Speichers 42 verändert. Die im Filter 40 durchgeführten Multiplikationen sind durch veränderbare Werte des Koeffizien­ tenspeichers 43 anpaßbar.
Die Schaltungen der Fig. 4 und 6 können so miteinander kombiniert werden, daß die Gesamtschaltung sowohl für eine Interpolation als auch für eine Dezima­ tion bei einstellbaren Umrechnungsverhältnissen möglich ist.
In Fig. 7 sind Details der Filterschaltung 40 dargestellt. Es sind drei Datenleitun­ gen 55, 56 und 57 vorgesehen, auf denen Farbbildsignale für die drei Grundfar­ ben Rot (R), Grün (G) und Blau (B) in die Filterschaltung eingespeist werden können. Nach Durchlaufen einer ersten, vertikal wirkenden Filterstufe 53 werden die jeweiligen, einer Farbe entsprechenden Datensätze an eine zweite Filter­ stufe 54 übergeben, in der sie horizontal, d. h. innerhalb einer Bildzeile gefiltert werden. Die Trennlinie 83 markiert den Übergang zwischen der vertikalen Filte­ rungsstufe 53 und der horizontalen Filterungsstufe 54. Die gefilterten Daten R′, G′, bzw. B′ werden auf den Leitungen 80, 81 und 82 ausgegeben.
Die Filterschaltung erlaubt, die gerasterten, d. h. punktweise vorliegenden Bild­ daten mit einem variablen Filterraster zu filtern. Die Datensätze R, G, B werden bei diesem Ausführungsbeispiel jeweils mit einem 3 × 3-Filterraster gefiltert. Hierzu sind in jedem Farbkanal (R, G, B) entsprechende Filterkomponenten vor­ gesehen, die Filterberechnungen vornehmen.
Die gezeigte Filteranordnung kann aber auch für eine 9 × 9-Filterung verwendet werden. Dazu wird nur der Eingangskanal R benutzt, auf dem dann ein Daten­ satz Y in die Schaltung eingespeist wird. Die Multiplexer 61, 68, 78 und alle ande­ ren Multiplexer der Anordnung sind dann an ihrem "Eins"-Eingang auf Durchlaß geschalten. Die gefilterten Daten Y′ werden am Ausgang 81 ausgegeben. Die Filteranordnung wird damit über die jeweiligen Multiplexer zwischen den beiden Filterrastern 3 × 3 bzw. 9 × 9 umgeschalten. Die Steuerungseingänge S der Mul­ tiplexer werden dazu vorteilhafterweise alle von einem gemeinsamen Steue­ rungssignal gesteuert, sie können aber auch jeweils separat geschalten werden. Jeder Multiplexer schaltet je nach Eingangssignal entweder den Eingang Eins zu seinem Ausgang durch oder den Eingang Null. Die Eingänge Null der Multi­ plexer 68 und 78 sind blind, d. h. sie sind in jedem Fall auf "Low" (L) gesetzt und damit deaktiviert.
Vertikale Filterung
Die Umschaltung zwischen den beiden Filterrastern 3 × 3 und 9 × 9 wird im fol­ genden, nur für die Stufe 53, d. h. nur für ein 3- bzw. 9-Filter näher beschrieben. Stufe 53 führt im vorliegenden Ausführungsbeispiel eine vertikale Filterung senk­ recht zur Zeilenrichtung der Bildsignaldaten durch. In der Filterungskomponen­ te 53 sind in jedem der drei Farbkanäle R, G, B Rechenstufen 84, 85 und 86 vor­ gesehen. Sie umfassen jeweils drei Multipliziereinheiten 65, 66 und 67 sowie eine Additionsstufe 69, die die Daten der Multiplizierer addiert. Zwischen Multiplizier- Einheiten und Additionsstufe kann selbstverständlich jeweils ein Zwischenspei­ cher vorgesehen sein. In den jeweiligen Rechenstufen 84, 85 und 86 erfolgt in jedem Farbkanal die Multiplikation mit jeweiligen Multiplikationskoeffizienten, die in nicht gezeigten Registern gespeichert sind. Die Parallel-Register 62, 63 und 64 nehmen die Eingangs-Bildsignale auf. Das Register 62 nimmt dabei jeweils einen aktuellen, mit dem Systemtakt ankommenden Punkt-Signalwert auf und speichert ihn für einen Systemtakt. Gleichzeitig wird dieser Wert im Zeilenpuffer 58 gespei­ chert und mit dem nächsten Systemtakt innerhalb des Zeilenpuffers um einen Registerplatz weitergeschoben. Beim Überlauf des Zeilenpuffers wird dessen erster, übergelaufener Wert in den nächsten Zeilenpuffer 59 geschrieben. Sobald dieser Puffer 59 aufgefüllt ist, gibt er den ersten Datenwert an das Register 64 weiter. Mit dem nächsten Systemtakt können dann die aktuellen Werte der Regis­ ter 62, 63 und 64 in den Multiplizierstufen 65, 66 und 67 mit jeweiligen Koeffi­ zienten multipliziert und in der Stufe 69 addiert werden, wodurch eine Filterung senkrecht zur Zeilenrichtung erfolgt. Diese Filterung entspricht der Filterung dreier benachbarter Werte verschiedener Zeilen. Es ist klar, daß für einen Filter über vier Zeilen hinweg lediglich ein zusätzlicher Zeilenpuffer sowie ein zusätzliches Register und eine Multiplizierstufe entsprechend den Komponenten der Filterung dreier Daten nötig ist.
Die zu filternden Eingangsdaten werden in den Zeilenpuffern 58, 59 und 60 je­ weils solange vor der Rechenoperation gespeichert, bis alle nachfolgenden, für die Rechenoperation benötigten Daten in den anderen Zwischenspeichern ge­ speichert sind. Die Größe der Zeilenpuffer ist dabei genau entsprechend einer eingangsseitigen, definierten Zeilengröße ausgelegt. Die Zeilenpuffer können hinsichtlich ihrer Speicherkapazität auch variabel ausgelegt werden, so daß ein­ gangsseitig verschiedene Zeilenlängen verarbeitbar sind.
Zur Umschaltung der Filtereinrichtung 53 auf eine Filterung über neun Bildzeilen hinweg, werden die beiden Multiplexer 61 so geschalten, daß der Zeilenpuffer 60 jeweils Daten an das nächstliegende Register des nächsten Kanals weitergeben kann. Der Zeilenpuffer 60 des Kanals R gibt damit die Daten an das erste Regis­ ter des Kanals G weiter. Die Berechnung der neuen Werte entsprechend des neuen Filters erfolgt dann entsprechend in den jeweils gleichartigen Rechen­ stufen 84, 85 und 86. Dabei kann selbstverständlich vorgesehen werden, daß entsprechende Filterkoeffizienten, welche auf die Multiplikationsstufen der Recheneinheiten 84, 85 und 86 wirken, unterschiedliche Größe haben.
Durch die Umstellung des Filters auf die Filtergröße 9 wird ein Datensatz Y, wel­ cher über Leitung 55 in die Filterstufe 53 einläuft, nacheinander durch die Zeilen­ puffer der verschiedenen Kanäle R, G und B geschleust, bis der letzte, d. h. zur neunten Zeile gehörende Wert an der Leitung 55 anliegt. Dann erfolgt die Rechenoperation der neun aufeinanderfolgenden Bildzeilen in den Stufen 84, 85 und 86 gleichzeitig, die Addition in den Additionsstufen 69 wird durchgeführt und die dabei errechneten Werte an der nächsten Additionsstufe 69 zu einem neuen Ausgangswert verrechnet.
Horizontale Filterung
Die Filterung in der horizontalen Filterungsstufe 54 erfolgt im Prinzip genauso, wie bei der vertikalen Filterungsstufe. Die Bilddaten werden hier aber nicht durch parallele Register geschleust, sondern durch Schieberegister 71, 72, 73. Diese Schieberegister besitzen jedoch jeweils einen parallen Ausgang zu den Multipli­ zierstufen 74, 75 bzw. 76. Die in diesen Multiplizierstufen berechneten Werte werden in der Addierstufe 77 zu einem gefilterten Zeilen-Ausgangswert addiert.
Zur Umschaltung von einem Filter, der jeweils drei benachbarte Bildpunkte einer Zeile zu einem neuen Ausgangswert berechnet auf einen Filter, der jeweils neun nebeneinanderliegende Bildpunkte filtert, dienen auch hier wieder Multiplexer 70. Ist der Multiplexer-Eingang "Null" durch ein Steuersignal S aktiviert, so wirkt der Filter als Filter über 3 Punktwerte, ist der Multiplexer-Eingang "Eins" aktiviert, so wirkt die Schaltung als Filter über 9 Punktwerte. Die Rechenstufen 87, 88, 89 erfüllen analoge Aufgaben wie die Rechenstufen 84, 85, 86 des vertikalen Filters. Bei der Verwendung der Filterschaltung 54 als Filter über 9 Bildpunkte ist auch der Multiplexer 78 auf den Eingang Eins geschalten, so daß die in Rechen­ stufen 87, 88, 89 berechneten Werte in der Stufe 79 zum Ausgangswert Y- addiert werden.
Im genannten Ausführungsbeispiel ist ein n × m-Filter gezeigt, wobei n = m = 3. Es ist klar, daß durch entsprechende Veränderung der Komponentenzahl in den Zeilen- bzw. Spaltenfiltern beliebige Filterkombinationen realisierbar sind. Der Eingangsfilter 53, welcher k = 3 Eingänge in 55, 56, 57 hat, ist damit entweder nutzbar als n-Filter gleichzeitig für k-Signale oder auch als k × n-Filter für nur ein Signal. In einem zeilenorientierten, softwaregesteuerten Block-Datenübertra­ gungssystem können die vertikalen Koeffizienten nach jeder Zeile neu geladen werden, so daß hier keine vertikale Koeffizienten-Registerbank notwendig ist. Das Laden der vertikalen Koeffizienten beeinflußt in einem solchen System die Datenübertragungsrate nur unwesentlich.
Fig. 8 zeigt eine Schaltung für einen zweidimensionalen Filter (3 × 3) für Dezima­ tion und Interpolation. Die Daten werden über eine Leitung 90 in den Filter einge­ speist. Die Stufe 91 führt die vertikale Filterung durch, die Stufe 92 die horizontale Filterung. Bei der vertikalen Multiplikationsstufe 93 sind die Koeffizienten inner­ halb einer Zeile konstant, in der Multiplikationsstufe 94 sind die Koeffizienten innerhalb einer Zeile variabel. Sie sind im Koeffizienten FIFO 94 gespeichert. Die gefilterten Daten werden über die Leitung 96 ausgegeben.
Mit der Schaltung sind verschiedene Filterungs- bzw. Umrechnungsmöglichkeiten auswählbar. Dazu sind Auswahleingänge 97 und 98 vorgesehen. Auf der Aus­ wahlleitung 97 kann z. B. zwischen den Funktionen Interpolation und Dezimation des Filters umgeschalten werden. Bei der Dezimation liegt dann auf der Lei­ tung 100 das Signal Eins an, zur Interpolation liegt dort das Signal Null an.
Das Filter kann z. B. als Verschärfungsfilter verwendet werden, wenn an den bei­ den Eingängen 100 und 101 der Wert Eins anliegt. Um die Reihenfolge der Daten nach einer Dezimations-Interpolations-Funktion zu erhalten, müssen alle nachfol­ genden Verarbeitungsstufen des Filters mit dem Takt des Ausgangsregisters 102 getaktet werden. Deshalb ist der Ausgang 95 vorgesehen, der Taktsignale ent­ sprechend dieser Taktfrequenz ausgibt. Das Clock-Enable FIFO wird zu Beginn einer gewünschten Filteroperation vom Rechner beschrieben, der Rechner setzt das Clock-FIFO nach jeder Bildzeile wieder zurück. Über die Leitung 98 erfolgt die Verbindung zu einer zentralen Rechnereinheit (CPU).
Es ist klar, daß ein Fachmann anhand der o. g. Ausführungsbeispiele ohne weite­ res neue Ausführungsbeispiele angeben kann, indem Filteranordnungen ver­ schiedener Dimensionen angegeben werden. Auch andere Details können selbstverständlich ohne weiteres abgewandelt werden, beispielsweise indem der Taktgeber der zweiten Frequenz kein Takt-Enable-Register sondern eine zweite, mit dem ersten Taktgeber synchronisierte Uhr ist.

Claims (14)

1. Verfahren zur Filterung gerasterter Bilddaten durch eine Filterschal­ tung (40, 53) mit einem variablen Filterraster, dadurch gekennzeichnet, daß in der Filterschaltung (40, 53) mehrere gleichartige Rechenstufen (84, 85, 86) betrieben werden und daß die Umschaltung zwischen verschiede­ nen Filterrastern dadurch erfolgt, daß mit den Rechenstufen (84, 85, 86) entweder gleichzeitig an verschiedenen Datensätzen (R, G, B) oder an ein und demselben Datensatz (Y) Rechenoperationen durchgeführt werden.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die zu filtern­ den Eingangsdaten eines Datensatzes jeweils solange vor den Rechen­ operationen in Zwischenspeichern (58, 59, 60) gespeichert werden, bis alle nachfolgenden, für die Rechenoperationen benötigten Daten des Da­ tensatzes in den Zwischenspeichern (58, 59, 60) gespeichert sind.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die Zwischen­ speicher (58, 59, 60) Bildpunkt für Bildpunkt ausgelesen werden und die ausgelesenen Bildpunktdaten dann in den Rechenstufen (84, 85, 86) zu neuen Punktwerten verrechnet werden.
4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekenn­ zeichnet, daß den verschiedenen Datensätzen (R, G, B) jeweils verschie­ dene Farben zugeordnet sind.
5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekenn­ zeichnet, daß für eine zweidimensionale Filterung zwei Verarbeitungsschrit­ te vorgesehen sind, wobei in jedem der beiden Verarbeitungsschritte ge­ mäß den kennzeichnenden Merkmalen von Anspruch 1 vorgegangen wird.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß für den ersten Verarbeitungsschritt in einer Spaltenrichtung und der zweite Verarbei­ tungsschritt in einer Zeilenrichtung erfolgt, und daß vor dem ersten Verar­ beitungsschritt jeweils die Datensätze (R, G, B) einer vollständigen Bild­ zeile in Zwischenspeichern (58, 59, 60) gespeichert werden.
7. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekenn­ zeichnet, daß die Rechenoperationen Multiplikationen und Additionen umfassen.
8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, daß veränderbare Faktoren für die Multiplikationen in Speichern gespeichert werden.
9. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekenn­ zeichnet, daß die Umschaltung der Rechenstufen (84, 85, 86) gleichzeitig durch ein gemeinsames Schaltsignal an mehreren Schaltern (61) erfolgt.
10. Vorrichtung zur Filterung gerasterter Bilddaten durch eine Filterschal­ tung (40, 53) mit einem variablen Filtersatz, dadurch gekennzeichnet, daß die Filterschaltung (40, 53) mehrere gleichartige Rechenstufen (85, 84, 86) aufweist sowie Mittel (61, 68) zum Umschalten der Filterschaltung (40, 53) zwischen zwei Betriebsarten, wobei ein Datensatz (Y, R, G, B) in der ersten Betriebsart jeweils nur eine der Rechenstufen (84, 85, 86) durch­ läuft und in der zweiten Betriebsart mehrere.
11. Vorrichtung nach Anspruch 10, dadurch gekennzeichnet, daß die Mittel (61, 68) zum Umschalten Multiplexer umfassen, die über eine ge­ meinsame Schaltsignalleitung ansteuerbar sind.
12. Vorrichtung nach einem der Ansprüche 10 oder 11, dadurch gekenn­ zeichnet, daß für eine zweidimensionale Filterung zwei Filterkomponen­ ten (53, 54) vorgesehen sind, wobei in die zweite Filterkomponente (54) die aus der ersten Filterkomponente (53) errechneten Daten als Ein­ gangssignale eingespeist werden.
13. Vorrichtung nach einem der Ansprüche 10 bis 12, dadurch gekenn­ zeichnet, daß Speicherelemente (58, 59, 60) vorgesehen sind, die in der zweiten Betriebsart Daten zwischenspeichern.
14. Vorrichtung nach Anspruch 12, dadurch gekennzeichnet, daß am Aus­ gang der ersten Filterkomponente (53) ein Schalter (68) vorgesehen ist, mit dem die Ausgangswerte der ersten Filterkomponente (53) an eine Rechenstufe (69), insbesondere zur Addition, leitbar sind.
DE1995139716 1995-10-25 1995-10-25 Verfahren und Vorrichtung zur Filterung digitaler Bilddaten Withdrawn DE19539716A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE1995139716 DE19539716A1 (de) 1995-10-25 1995-10-25 Verfahren und Vorrichtung zur Filterung digitaler Bilddaten

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE1995139716 DE19539716A1 (de) 1995-10-25 1995-10-25 Verfahren und Vorrichtung zur Filterung digitaler Bilddaten

Publications (1)

Publication Number Publication Date
DE19539716A1 true DE19539716A1 (de) 1997-04-30

Family

ID=7775731

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1995139716 Withdrawn DE19539716A1 (de) 1995-10-25 1995-10-25 Verfahren und Vorrichtung zur Filterung digitaler Bilddaten

Country Status (1)

Country Link
DE (1) DE19539716A1 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3240473A1 (de) * 1982-11-02 1984-05-03 Telefonbau Und Normalzeit Gmbh, 6000 Frankfurt Verfahren zur wiedergabe von bildschirmtext-seiten auf dem monochromen bildschirm eines grautonfaehigen fernsehmonitors

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3240473A1 (de) * 1982-11-02 1984-05-03 Telefonbau Und Normalzeit Gmbh, 6000 Frankfurt Verfahren zur wiedergabe von bildschirmtext-seiten auf dem monochromen bildschirm eines grautonfaehigen fernsehmonitors

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Bildverarbeitung in Videoechtzeit. In: Design & Elektronik 20/1990, S. 86-89 *

Similar Documents

Publication Publication Date Title
DE3313392C2 (de)
DE3619427C2 (de)
DE2746285C2 (de) Fernseh-Bildverarbeitungssystem
DE2636093C3 (de) Vorrichtung zur Kontrastverbesserung eines aus punktförmigen Elementen zusammengesetzten Bildes
DE2640157C2 (de) Verfahren und Anordnung zum redundanzvermindernden Codieren von Bildern
DE2406824A1 (de) Anlage und verfahren zur herstellung von rasterbildern fuer druckzwecke
DE3804938A1 (de) Bildverarbeitungseinrichtung
DE2703579A1 (de) System zur verarbeitung von videosignalen
DE2648596A1 (de) Verfahren und vorrichtung zur darstellung eines signalverlaufes auf einem aufzeichnungstraeger
DE4019508A1 (de) Digitale video-aufzeichnungs/wiedergabe-vorrichtung
DE3629195A1 (de) Farbbildverarbeitungsgeraet
WO1981002206A1 (en) Process for obtaining a better image restitution in the reproduction technique
DE69433392T2 (de) Videodatenprozessor und Videosignaldatenverarbeitung
EP0095514A1 (de) Verfahren und Einrichtung zur Reproduktion eines Bildes mit gröberer Auflösung als bei der Bildabtastung
DE3511890C2 (de)
DE3637018C2 (de) Adaptive Filteranordnung
DE69827597T2 (de) Bildprozessor und integrierte schaltung dafür
CH629315A5 (de) Verfahren zur aenderung der bildpunktmaessigen zerlegung von halbtonbildern beim uebergang von der abtastung zur reproduktion.
DE3723590A1 (de) Einzelbild-zusammensetzschaltung mit farbsuchtabelle
CH641902A5 (de) Verfahren zur wiedergabe von strichinformationen.
DE3507336A1 (de) Bildverarbeitungseinrichtung
DE3505796C2 (de)
DE3900489C2 (de) Einrichtung zur Erzeugung von Steuersignalen für eine Videomischeinrichtung
DE19539716A1 (de) Verfahren und Vorrichtung zur Filterung digitaler Bilddaten
DD256154A1 (de) Verfahren und schaltungsanordnung zur mustervorbereitung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8181 Inventor (new situation)

Free format text: FUCHSBERGER, HERMANN, 85737 ISMANING, DE WACK, JUERGEN, 85567 GRAFING, DE

8130 Withdrawal