DE19539702A1 - Verfahren und Vorrichtung zur Übertragung digitaler Bilddaten - Google Patents
Verfahren und Vorrichtung zur Übertragung digitaler BilddatenInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims description 20
- 230000005540 biological transmission Effects 0.000 title claims description 18
- 230000015654 memory Effects 0.000 claims abstract description 73
- 238000012546 transfer Methods 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 12
- 238000001914 filtration Methods 0.000 abstract description 23
- 239000011159 matrix material Substances 0.000 abstract description 6
- 239000000872 buffer Substances 0.000 description 13
- 238000006243 chemical reaction Methods 0.000 description 12
- 230000009466 transformation Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000012216 screening Methods 0.000 description 3
- 239000003086 colorant Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 241001432959 Chernes Species 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003707 image sharpening Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling 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.
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.
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.
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.
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)
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 |
-
1995
- 1995-10-25 DE DE1995139702 patent/DE19539702A1/de not_active Withdrawn
Patent Citations (2)
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)
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 |