DE19539702A1 - Verfahren und Vorrichtung zur Übertragung digitaler Bilddaten - Google Patents

Verfahren und Vorrichtung zur Übertragung digitaler Bilddaten

Info

Publication number
DE19539702A1
DE19539702A1 DE1995139702 DE19539702A DE19539702A1 DE 19539702 A1 DE19539702 A1 DE 19539702A1 DE 1995139702 DE1995139702 DE 1995139702 DE 19539702 A DE19539702 A DE 19539702A DE 19539702 A1 DE19539702 A1 DE 19539702A1
Authority
DE
Germany
Prior art keywords
data
frequency
image
memory
clock signals
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
DE1995139702
Other languages
English (en)
Inventor
Hermann Fuchsberger
Juergen Wack
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.)
AgfaPhoto GmbH
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 DE1995139702 priority Critical patent/DE19539702A1/de
Publication of DE19539702A1 publication Critical patent/DE19539702A1/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
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation

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 zum Verändern des Rasters digitaler 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 Interpolations­ filters berechnet. Die Filterkoeffizienten, mit denen die ursprünglichen Daten multipliziert werden, sind dabei aus einem geometrischen Verhältnis des neu er­ zeugten Bildpunktes zu einer bestimmten Umgebung der alten Bilddaten errech­ net.
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 zum Umrechnen der Rasterung jeweils von einem Rechner durchgeführt wird, 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 Raster-Umrechnung ist deshalb relativ langsam.
Es ist Aufgabe der Erfindung, ein Verfahren und eine Vorrichtung anzugeben, die das Verändern von Rastern digitaler Bilddaten auf der Basis einfacher elektroni­ scher Schaltungskomponenten in kurzer Zeit erlauben.
Diese Aufgabe wird gelöst durch die kennzeichnenden Merkmale des Verfah­ rensanspruchs 1 und des Vorrichtungsanspruchs 11. Vorteilhafte Ausführungs­ formen der Erfindung sind Gegenstand der Unteransprüche.
Erfindungsgemäß ist vorgesehen, daß bei der Bildübertragung zwischen zwei Bildsignalspeichern über eine Filterschaltung die Übertragung der Daten zwi­ schen einen der beiden Bildsignalspeicher und der Filterschaltung mit digitalen Taktsignalen einer ersten Frequenz zeitlich gesteuert wird, daß eine Datenüber­ tragung zwischen dem anderen der beiden Bildsignalspeicher und der Filterschal­ tung nur dann erfolgt, wenn die Taktsignale der ersten Frequenz und Taktsignale einer zweiten, gegenüber der ersten unterschiedlichen Frequenz jeweils einen vorbestimmten Wert annehmen.
Dieses Verfahren bzw. diese Vorrichtung erlaubt eine flexible Umrechnung des Rasters digitaler Bilddaten innerhalb einer Pipeline-Bildsignalschaltung. Die Bild­ daten werden dabei mit einem vorgegebenen Systemtakt durch die Schaltungs­ anordnung (Pipeline) geschoben. Die Übernahme der Daten am Eingangs- bzw. Ausgangsspeicher, d. h. vor bzw. nach der Filterschaltung wird entsprechend dem gewünschten Umrechnungsverhältnis zwischen dem ersten und dem zwei­ ten Raster mittels eines sogenannten Takt-Enable-Registers gesteuert. Das Takt- Enable-Register erzeugt hier insbesondere die Taktsignale der zweiten, gegen­ über der ersten unterschiedlichen Frequenz. Die zweite Frequenz ist vorzugs­ weise niedriger als die erste Frequenz, so daß über eine sehr einfach zu hand­ habende Abfolge von Speicherinhalten in dem Takt-Enable-Register das ge­ wünschte Umrechnungsverhältnis erzeugbar ist. Erste und zweite Taktfrequenz stehen vorzugsweise in einem ganzzahligen Verhältnis. Das Takt-Enable-Regi­ ster wirkt als Steuerspeicher, der die Übertragung der Daten zwischen einem der Bildspeicher und der Filterschaltung steuert.
Im Falle der Dezimation des Rasters wird die Datenübernahme am Ausgangs­ register des Filters in dem gewünschten Verhältnis gehemmt (disabled), so daß die gewünschte Anzahl von Ausgangswerten entsteht. Vorteilhafterweise ist jedem Ausgangswert ein Satz Filterkoeffizienten zugeordnet, so daß die Werte benachbarter Bildpunkte dem gewünschten Filter entsprechend gewichtbar sind.
Im Falle der Interpolation wird die Datenübernahme am Eingangsregister ent­ sprechend dem gewünschten Umrechnungsverhältnis gehemmt (disabled), so daß am Ausgang zusätzliche Werte auf Basis der Werte entstehen, aus denen das jeweils vorhergehende Datenwort berechnet wurde. Der Koeffizientensatz für das Filter wird hierbei vorteilhafterweise geändert. Jedem Ausgangswert ist auch hier ein Satz Filterkoeffizienten zugeordnet.
Es hat sich weiter als vorteilhaft erwiesen, die elektronischen Komponenten zur Bildformat-Umrechnung in eine Pipeline-Bildverarbeitungsstufe zu integrieren und einen Datenaustausch von Bilddaten zwischen einem Bildspeicher, welcher ein komplettes Bild enthält und der Pipeline-Bildverarbeitungsstufe von einer Steuer­ einheit - insbesondere einer CPU- oder einer DMA-Einheit - über eine zentrale Steuerleitung durchzuführen, wobei über die Steuerleitung auch Daten zwischen anderen Gerätekomponenten übertragbar sind.
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üpfungs­ matrix 27 der Fig. 3 zu einem Ausgangswert. Die Eingangswerte werden dabei jeweils 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 49 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 Ra­ ster 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 20 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 Regi­ ster 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 Rechenstu­ fen 84, 85 und 86. Dabei kann selbstverständlich vorgesehen werden, daß ent­ sprechende Filterkoeffizienten, welche auf die Multiplikationsstufen der Rechen­ einheiten 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 Multi­ plizierstufen 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 zum Verändern des Rasters digitaler Bilddaten bei der Bild­ übertragung zwischen zwei Bildsignalspeichern (39, 41) über eine Filter­ schaltung (40), dadurch gekennzeichnet, daß die Übertragung der Da­ ten zwischen einem der beiden Bildsignalspeicher (39, 41) und der Filter­ schaltung (40) mit digitalen Taktsignalen (25) einer ersten Frequenz zeit­ lich gesteuert wird und daß eine Datenübertragung zwischen dem ande­ ren der beiden Bildsignalspeicher (39, 41) und der Filterschaltung (40) nur dann erfolgt, wenn die Taktsignale (25) der ersten Frequenz und Takt­ signale (29) einer zweiten, gegenüber der ersten unterschiedlichen Fre­ quenz jeweils einen vorbestimmten Wert annehmen.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die erste und die zweite Frequenz zueinander in einem ganzzahligen Verhältnis stehen.
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Über­ tragung der Daten zwischen einem der Bildspeicher (39, 41) und der Fil­ terschaltung (40) über einen Steuerspeicher (42) gesteuert wird.
4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekenn­ zeichnet, daß der Steuerspeicher (42) die Taktsignale (25) der ersten, insbesondere höheren Frequenz empfängt und daraus die Taktsigna­ le (29) der zweiten, insbesondere niedrigeren Frequenz erzeugt.
5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekenn­ zeichnet, daß die die erste Frequenz größer als die zweite Frequenz ist, daß die mit den Taktsignalen (25) der ersten Frequenz gesteuerte Daten­ übertragung zwischen einem Eingangsspeicher (39) und der Filterschal­ tung (40) erfolgt und die zweite Datenübertragung zwischen der Filter­ schaltung und einem Ausgangsspeicher (41).
6. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die erste Frequenz größer als die zweite Frequenz ist, daß die mit den Taktsignalen der ersten Frequenz gesteuerte Datenübertragung zwi­ schen der Filterschaltung (40) und einem Ausgangsspeicher (41) erfolgt und die zweite Datenübertragung zwischen einem Eingangsspeicher (39) und der Filterschaltung (40).
7. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekenn­ zeichnet, daß den von der Filterschaltung (40) zum Ausgangsspei­ cher (41) übertragenen Daten ein vorgegebener Satz von Filterkoeffizien­ ten zugeordnet ist.
8. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekenn­ zeichnet, daß der Datenaustausch von Bilddaten zwischen einem Bild­ speicher (6, 7) und einer Pipeline-Bildverarbeitungsstufe (2) von einer Steuereinheit (18,19, 21) über eine zentrale Steuerleitung (23) erfolgt, über die auch Daten zwischen anderen Gerätekomponenten (22) über­ tragbar sind.
9. Vorrichtung nach Anspruch 8, dadurch gekennzeichnet, daß die Steuer­ einheit (18) eine CPU ist.
10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, daß die Steuer­ einheit (19) eine DMA-Einheit ist.
11. Vorrichtung zum Verändern des Rasters digitaler Bilddaten bei der Bild­ übertragung zwischen zwei Bildsignalspeichern (39, 41) über eine Filter­ schaltung (40), dadurch gekennzeichnet, daß Steuermittel (37, 42, 44) vorgesehen sind, die den Datentransfer vom ersten Bildsignalspei­ cher (39, 41) in die Filterschaltung (40) und von der Filterschaltung (40) in den zweiten Bildspeicher (39, 41) zeitlich derart steuern, daß Daten nur dann zwischen einem der Bildsignalspeicher (39, 41) und der Filterschal­ tung (40) übertragen werden, wenn an einem bestimmten Steuer­ element (44) gleichzeitig zwei Taktsignale (25, 29) unterschiedlicher Frequenz jeweils einen bestimmten Wert haben.
12. Vorrichtung nach Anspruch 11, dadurch gekennzeichnet, daß die Steuer­ mittel einen Taktgeber (37) umfassen, der Taktsignale einer ersten Fre­ quenz erzeugt.
13. Vorrichtung nach Anspruch 12, dadurch gekennzeichnet, daß die Steuer­ mittel einen Steuerspeicher (42) umfassen, der die Taktsignale (25) des Taktgebers (37) empfängt und daraus Taktsignale (29) einer zweiten, niedrigeren Frequenz erzeugt.
14. Vorrichtung nach Anspruch 13, dadurch gekennzeichnet, daß als Steuer­ element (44) ein Komparator vorgesehen ist, der die Taktsignale (25) des Taktgebers und des Steuerspeichers (42) vergleicht und bei einem be­ stimmten Vergleichsergebnis ein Freigabesignal an den zweiten Bildspei­ cher (39, 41) für den Beginn der dortigen Datenübertragung sendet.
DE1995139702 1995-10-25 1995-10-25 Verfahren und Vorrichtung zur Übertragung digitaler Bilddaten Withdrawn DE19539702A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE1995139702 DE19539702A1 (de) 1995-10-25 1995-10-25 Verfahren und Vorrichtung zur Übertragung digitaler Bilddaten

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE1995139702 DE19539702A1 (de) 1995-10-25 1995-10-25 Verfahren und Vorrichtung zur Übertragung digitaler Bilddaten

Publications (1)

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

Family

ID=7775725

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1995139702 Withdrawn DE19539702A1 (de) 1995-10-25 1995-10-25 Verfahren und Vorrichtung zur Übertragung digitaler Bilddaten

Country Status (1)

Country Link
DE (1) DE19539702A1 (de)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0538908A1 (de) * 1986-01-22 1993-04-28 Konica Corporation Bildverarbeitungssystem mit der Fähigkeit zum Vergrösserungs- und Verkleinerungsbetrieb
DE3420919C2 (de) * 1983-06-06 1995-04-13 Canon Kk Bildverarbeitungssystem

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3420919C2 (de) * 1983-06-06 1995-04-13 Canon Kk Bildverarbeitungssystem
EP0538908A1 (de) * 1986-01-22 1993-04-28 Konica Corporation Bildverarbeitungssystem mit der Fähigkeit zum Vergrösserungs- und Verkleinerungsbetrieb

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IBM Technical Disclosure Bulletin, Vol. 29, No. 3, August 1986, S. 1286-1288 *

Similar Documents

Publication Publication Date Title
DE2640140C2 (de) Verfahren und Anordnung zur redundanzvermindernden Bildcodierung
DE2950712C2 (de) Einrichtung zur Erzeugung eines elektronischen Hintergrundrasters
DE3233288C2 (de)
DE3619427C2 (de)
DE3313392C2 (de)
DE2746285C2 (de) Fernseh-Bildverarbeitungssystem
DE3202365C2 (de) Datenspeicher mit Fensterabtastung
DE3631333C2 (de)
DE2648596A1 (de) Verfahren und vorrichtung zur darstellung eines signalverlaufes auf einem aufzeichnungstraeger
DE2703579A1 (de) System zur verarbeitung von videosignalen
DE2406824A1 (de) Anlage und verfahren zur herstellung von rasterbildern fuer druckzwecke
DE2640157A1 (de) Verfahren und anordnung zum redundanzvermindernden codieren von bildern
DE2317440A1 (de) Musteraufbereitungsanordnung
DE3628349A1 (de) System zur verarbeitung von signalen nach einem pyramiden-algorithmus in realzeit
DE3632639C2 (de) Einrichtung zum Hochgeschwindigkeitsverarbeiten von Bilddaten durch Faltung
WO1981002206A1 (en) Process for obtaining a better image restitution in the reproduction technique
EP0095514A1 (de) Verfahren und Einrichtung zur Reproduktion eines Bildes mit gröberer Auflösung als bei der Bildabtastung
DE3511890A1 (de) Verfahren und vorrichtung zur herstellung von farbauszuegen
DE1909657C3 (de) Digitales Filter
DE3900489C2 (de) Einrichtung zur Erzeugung von Steuersignalen für eine Videomischeinrichtung
DE2350018C3 (de) Bildanalysator
DE19601564A1 (de) Digitale Bildinterpolationsvorrichtung mit einer Vielzahl von Interpolationskernen
DE19539702A1 (de) Verfahren und Vorrichtung zur Übertragung digitaler Bilddaten
DE2538544A1 (de) Vorrichtung zur korrektur der abschattung von videobildern
DE19539716A1 (de) Verfahren und Vorrichtung zur Filterung digitaler Bilddaten

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8120 Willingness to grant licenses paragraph 23
8127 New person/name/address of the applicant

Owner name: AGFAPHOTO GMBH, 51373 LEVERKUSEN, DE

8139 Disposal/non-payment of the annual fee