-
In
der Bildverarbeitung ist es häufig
wünschenswert,
ein Bild in zwei oder mehrere voneinander getrennte Bilddarstellungen
zu zerlegen, wie etwa ein gescanntes Farbbild. In diesem Zusammenhang
werden diese Darstellungen als Hintergrund- und Vordergrundbilder
bezeichnet. Dieses Descreening wird teilweise auch eingesetzt, um
Halbtonmuster zu entfernen, die in einem ursprünglich eingescannten Bild existieren
können.
Zum Beispiel können
diese Halbtonmuster für
das menschliche Auge unangenehme Artefakte verursachen, wenn sie
nicht ordnungsgemäß entfernt
werden. Der traditionelle Ansatz für diese Zerlegung oder das
Descreening ist es, das Farbbild zu filtern, um es unscharf zu gestalten.
Diese unscharfen Ergebnisse werden danach unterstützend bei
der Bestimmung eingesetzt, wie stark das Bild unscharf gestaltet
und schärfer
gestaltet werden muss, um die Zersetzung zu erzeugen. Für gewöhnlich kann
diese Unschärfe
unter Verwendung eines „symmetrischen
Pyramidenfilters" erreicht
werden. Allgemein bekannt sind symmetrische Pyramidenfilter mit
begrenztem Ansprechverhalten eines Impulses (FIR).
-
Das
U.S. Patent US-A-5.359.674 beschreibt eine integrierte Schaltung
zur Implementierung einer Pyramidenfilteroperation für Bildverarbeitungsanwendungen
in Echtzeit, mit Eingabeverzögerungsschaltungen
und einem Faltungsprozessor.
-
Das
Dokument „Minimum
Number of Adders for Implementing a Multiplier and its Application
to the Design of Multiplierless Digital Filters" von Li, IEEE Transactions on Circuits
and Systems II: Analog and Digital Signal Processing, IEEE Inc.
New York, USA, Band 42, Nr. 7, Seiten 453–460, beschreibt ein Verfahren
zur Implementierung eines Multiplizierers unter Verwendung einer
minimalen Anzahl von Addierern auf der Basis des kanonischen Ausdrucks
mit Vorzeichen der Multiplikanten.
-
Das
Dokument „A
High-Speed Pyramid Image Coding Algorithm for a VLSI Implementation" von Sahinoglou et
al, IEEE Transactions on Circuits and Systems for Vide Technology,
IEEE Inc., New York, USA, Band 1, Nr. 4, Seiten 369–374, beschreibt eine
Wavelet-basierte Methode unter Verwendung von Codierung und Decodierung
zur Implementierung einer Pyramidenfilteroperation.
-
Ein
Nachteil dieser Bildverarbeitungstechnik ist es jedoch, dass die
Komplexität
um ein Vielfaches zunimmt, wenn eine Reihe von Pyramidenfiltern
unterschiedlicher Größe parallel
eingesetzt wird, um mehrere unscharfe Bilder zu erzeugen, um die
gerade beschriebene Technik anzuwenden. Bei einem groben Ansatz
für diese
mehrfache Pyramidenfilterung handelt es sich um den Einsatz mehrere
FIR-Filter, die parallel angeordnet sind, wie dies in der Abbildung
aus 1 veranschaulicht ist. Ein derartiger Ansatz zeigt,
dass die Entwicklung und der Aufbau schneller „symmetrischer Pyramidenfilterarchitekturen" zur parallelen Erzeugung
unterschiedlicher unscharfer Bilder aus einem einzigen Quellenbild
wünschenswert
sein kann.
-
Die
für jeden
FIR-Block aus 1 in Klammern dargestellten
Zahlen stellen den Pyramidenfilter mit entsprechender Länge dar.
Zum Beispiel sind (1, 2, 1) die Filterkoeffizienten für einen
symmetrischen Pyramidenfilter mit begrenztem Ansprechverhalten eines
Impulses (FIR) der Ordnung oder der Länge 3. In ähnlicher Weise stellen (1,
2, 3, 2, 1) die Koeffizienten für
einen FIR-Pyramidenfilter der Ordnung 5 dar, und so weiter.
-
Leider
weist der in der Abbildung aus 1 dargestellte
Ansatz auch Nacheile auf. Zum Beispiel kann Ineffizienz eine Folge
redundanter Berechnungen sein. Ferner verwenden FIR-Implementierungen häufig Multipliziererschaltungen.
Zwar gibt es Implementierungen zur Reduzierung von Multiplizierern oder
zum Verzicht auf Multiplizierer, wie etwa in Verbindung mit Verschiebungs-
und Summierungsschaltkreisanordnungen, so kann dies zu einer höheren Taktung
führen
und somit den Durchsatz der Schaltung reduzieren. Somit ist es erforderlich,
die Implementierungen oder Architekturen zum Pyramidenfiltern zu
verbessern.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
Der
Gegenstand der Erfindung ist in dem abschließenden Abschnitt der Patentschrift
speziell ausgeführt
und eindeutig beansprucht. Die Erfindung sowie deren Aufbau und
Funktionsweise, in Verbindung mit den Aufgaben, Merkmalen und Vorteilen wird
in Bezug auf die folgende genaue Beschreibung am besten verständlich,
wenn diese in Verbindung mit den beigefügten Zeichnungen gelesen wird.
In den Zeichnungen zeigen:
-
1 ein
Blockdiagramm eines groben Ansatzes zur Implementierung einer mehrfach
Pyramidenfilterarchitektur mit begrenztem Ansprechverhalten eines
Impulses (FIR);
-
2 ein
Ausführungsbeispiel
eines multipliziererfreien Pyramidenfilters gemäß der vorliegenden Erfindung;
-
3 ein
Ausführungsbeispiel
einer Teilkomponente eines Pyramidenfilters gemäß der vorliegenden Erfindung;
-
4 das
Ausführungsbeispiel
aus 2 unter Verwendung des Ausführungsbeispiels aus 3;
-
5 eine
Tabelle einer chronologischen Folge der Zustandsvariablen-Signalabtastwerte
für eine
Implementierung eines Pyramidenfilters gemäß der vorliegenden Erfindung;
und
-
6 eine
Tabelle einer chronologischen Folge der gefilterten Ausgabesignal-Abtastwerte
für eine
Implementierung eines Pyramidenfilters gemäß der vorliegenden Erfindung.
-
GENAUE BESCHREIBUNG
DER VORLIEGENDEN ERFINDUNG
-
In
der folgenden genauen Beschreibung sind zahlreiche besondere Einzelheiten
ausgeführt,
um ein umfassendes Verständnis
der vorliegenden Erfindung zu vermitteln. Für den Fachmann auf dem Gebiet
ist es jedoch ersichtlich, dass die vorliegende Erfindung auch ohne
diese besonderen Einzelheiten ausgeführt werden kann. In anderen
Fällen
wurde auf die nähere
Beschreibung allgemein bekannter Verfahren, Prozesse, Komponenten
und Schaltungen verzichtet, um die vorliegende Erfindung nicht unnötig zu verschleiern.
-
Wie
dies bereits vorstehend im Text beschrieben worden ist, kann Pyramidenfiltern,
im Besonderen symmetrisches Pyramidenfiltern in Verbindung mit Farbbildern
oder mit der Farbbildverarbeitung eingesetzt werden, um das Bild
einer Zerlegung oder einem Descreening zu unterziehen, wie etwa
in ein Hintergrundbild und ein Vordergrundbild. Der Umfang der vorliegenden
Erfindung ist jedoch diesbezüglich
nicht beschränkt,
und wobei in diesem Zusammenhang Pyramidenfilterarchitekturen besonders
wünschenswert
sind, welche die Rechenkomplexität
oder Verarbeitung und/oder die Hardwarekosten reduzieren bzw. senken.
In ähnlicher
Weise sind ebenfalls wünschenswert
Implementierungen, die frei von Multiplizierern sind, das heißt, sie
verwenden in der Implementierung keine Multiplikationen. Wünschenswert
sind sie, da sich derartige Implementierungen oder Ausführungsbeispiele
kostengünstiger implementieren
lassen als Ausführungsbeispiele,
die Multipliziererschaltungen einsetzen.
-
Der
Umfang der vorliegenden Erfindung ist zwar nicht darauf beschränkt, allerdings
veranschaulicht die Abbildung aus 2 ein Ausführungsbeispiel 200 eines
Pyramidenfilters gemäß der vorliegenden
Erfindung. Das Ausführungsbeispiel 200 umfasst
eine vereinheitlichte, multipliziererfreie, kaskadierte, symmetrische
Pyramidenfilterarchitektur zum Erzeugen einer Mehrzahl gefilterter
Ausgangssignalströme
für eine
Reihe oder eine Folge von Pyramidenfiltern mit unterschiedlicher
Ordnung, wobei die Erzeugung der Ausgangssignalströme parallel
erfolgt. In dem vorliegenden speziellen Ausführungsbeispiel wird ein gefilterter
Ausgangssignalstrom bei jedem Taktzyklus für jeden Pyramidenfilter einer
anderen implementierten Ordnung erzeugt, wobei der Umfang der vorliegenden
Erfindung jedoch nicht darauf beschränkt ist. Das spezielle vorliegende
Ausführungsbeispiel
ist nicht nur recheneffizient, sondern es liefert auch gute Ergebnisse
in Bezug auf den Durchsatz.
-
Die
Abbildung aus 2 wird in Verbindung mit einer
besonderen Darstellung verständlich.
Zum Beispiel kann ein Eingangsquellensignal X, wie folgt bezeichnet
werden:
X = (x0, x1,
..., Xi-2, Xi-1,
Xi, Xi+1, Xi+2, ...)
-
Bei
der digitalen oder diskreten Signalverarbeitung kann das Filtern
als eine Faltungsoperation ⎕ des Eingangssignals ausgedrückt werden,
und wobei ein Filter F in diesem Zusammenhang einen digitalen Filter
mit endlicher Länge
aufweist, der hierin als Filter mit begrenztem Ansprechverhalten
eines Impulses (FIR) bezeichnet wird. Der gefilterte Ausgangssignalstrom
ist wie folgt gegeben:
Y = X ⎕ F
-
Wie
dies bereits vorstehend im Text beschrieben worden ist, werden in
dem besonderen Ausführungsbeispiel
der vorliegenden Erfindung Pyramidenfilter verwendet. Diese Filter
werden für
gewöhnlich
unter Verwendung digitaler Filter mit ungeraden Längen oder
Ordnungen implementiert, wie etwa 3, 5, 7, 9, etc. Einige Beispiele
dieser digitalen Filter sind wie folgt gegeben:
F3 =
(1, 2, 1)
F5 = (1, 2, 3, 2, 1)
F7 = (1, 2, 3, 4, 3, 2, 1)
F9 =
(1, 2, 3, 4, 5, 4, 3, 2, 1)
...
FN =
(1, 2, 3, ..., [N – 1]/2,
..., 3, 2, 1)
-
Für die vorstehenden
Filter können
die gefilterten Ausgangssignale oder die Ausgangssignalströme wie folgt
dargestellt werden:
B3 = X ⎕ F3 = (b0 3,
b1 3, ..., bi-1 3, bi 3, bi+1 3,
...) Ergebnis des Eingangssignals X, gefiltert durch F3
B5 = X ⎕ F5 =
(b0 5, b1 5, ..., bi-1 5, bi 5,
bi+1 5, ...) Ergebnis des
Eingangssignals X, gefiltert durch F5
B7 =
X ⎕ F7 = (b0 7, b1 7,
..., bi-1 7, bi 7, bi+1 7, ...) Ergebnis des Eingangssignals X, gefiltert
durch F7
B = X ⎕ F9 = (b0 9,
b1 9, ..., bi-1 9, bi 9, bi+1 9,
...) Ergebnis des Eingangssignals X, gefiltert durch F9
...
BN = X ⎕ FN =
(b0 N, b1 N, ..., bi-1 N, bi N,
bi+1 N, ...) Ergebnis des
Eingangssignals X, gefiltert durch FN
-
Eine
alternative Möglichkeit
zur empirischen Darstellung der gefilterten Ausgangssignalabtastwerte
ist wie folgt gegeben:
bi 3 =
xi-1 + 2xi + xi+1
bi 5 = xi-2 + 2xi-1 + 3xi + 2xi+1 + xi+2
bi 7 = xi-3 +
2xi-2 + 3xi-1 +
4xi + 3xi+1 + 2xi+2 + xi+3
bi 9 = xi-4 +
2xi-3 + 3xi-2 +
4xi-1 + 5xi + 4xi+1 + 3xi+2 + 2xi+3 + xi+4
-
Durch
die Einführung
von, was in diesem Zusammenhang als Zustandsvariablen bezeichnet wird,
können
die obigen Ausdrücke
wie folgt anders ausgedrückt
werden:
bi 3 =
xi + si 3,
mit si 3 = xi-1 + xi + xi+1
bi 5 = bi 3 +
si 5, mit si 5 = xi-2 +
xi-1 + xi + xi+1 + xi+2
bi 7 = bi 5 + si 7,
mit si 7 = xi-3 + xi-2 + xi-2 + xi + xi+1 + xi+2 + xi+3
bi 9 = bi 7 +
si 9, mit si 9 = xi-4 +
xi-3 + xi-2 + xi-1 + xi + xi+1 + xi+2 + xi+3 + xi+4
-
Folglich
kann der gewünschte
Pyramidenfilter wie folgt. ausgedrückt werden:
B3 =
X + S3, mit S3 =
(s0 3, s1 3, s2 3,
..., si-1 3, si 3, si+1 3, ...)
B5 =
B3 + S5, mit S5 = (s0 5,
s1 5, s2 5, ..., si-1 5, si 5,
si+1 5, ...)
B7 = B5 + S7, mit S7 = (s0 7, s1 7, s2 7,
..., si-1 7, si 7, si+1 7, ...)
B9 =
B7 + S9, mit S9 = (s0 9,
s1 9, s2 9, ..., si-1 9, si 9,
si+1 9, ...)
-
Eine
Studie der Abbildung aus 2 veranschaulicht, dass die
berechneten Ausgangssignalströme
B3, B5, B7, B9, etc. der Pyramidenfilter
aus 2 durch das veranschaulichte Ausführungsbeispiel
erzeugt werden.
-
Die
Abbildung aus 5 zeigt eine Tabelle, welche
die chronologische Folge der Zustandsvariablensignale oder der Zustandsvariablensignalströme S2, S3, S4,
... S7 veranschaulicht, die entsprechend
durch die Addierer 210, 220, ..., 260 erzeugt wird,
wie dies in der Abbildung aus 2 dargestellt ist.
In ähnlicher
Weise zeigt die Abbildung aus 6 eine Tabelle,
welche eine chronologische Folge der gefilterten Ausgangssignalströme B3, B5, B7,
etc. zeigt. Wie dies in der Abbildung aus 2 dargestellt ist,
werden diese Ausgangssignalströme
durch die Addierer 270, 280 und 290 erzeugt.
-
Zusätzlich zu
der Bereitstellung der gefilterten Ausgangssignalströme B3, B5, B7 veranschaulicht die
Tabelle aus 6 die Erzeugung dieser gefilterten
Ausgangssignalströme
in chronologischer Reihenfolge der Taktung, wie diese auf das Ausführungsbeispiel
der Pyramidenfilterarchitektur aus 2 angewandt
wird. Wie dies bereits vorstehend im Text ausgeführt worden ist, können Ausgangssignalströme auch
aus Signalabtastwerten wie etwa xi und si erzeugt werden, das heißt, den Eingangssignalabtastwerten
und den Zustandsvariablen-Signalabtastwerten. Die Tabelle aus 6 zeigt,
dass bi 3 einen Taktzyklus
vor si 5 erzeug wird.
Indem somit der Signalabtastwert bi 3 um einen Taktzyklus verzögert wird,
kann er zu si 5 addiert
oder damit summiert werden, so dass bi 5 gemäß den bereits
vorstehend im Text bereitgestellten Gleichungen erzeugt wird. Erreicht
wird dies zum Beispiel durch ein Verzögerungselement oder die digitale Verzögerungseinheit 295 aus 2.
Somit wird der um einen Taktzyklus verzögerte Ausgangssignalabtastwert
B3 mit dem Zustandsvariablen-Signalabtstwert
S5 summiert, so dass die Ausgangssignal-Abtastwerte
B5 erzeugt werden. In ähnlicher Weise können die
digitalen Verzögerungseinheiten 285 und 275 eingesetzt
werden, um entsprechende Ausgangssignal-Abtastströme B5 zu
B7 erzeugen. In ähnlicher Weise kann der Eingangssignal-Abtastwertstrom
X mit S3 verzögert und summiert werden, so
dass der Pyramidenfilter-Ausgangssignal-Abtaststrom B3 erzeugt
wird.
-
Hiermit
wird festgestellt, dass das in der Abbildung aus 2 dargestellte
Ausführungsbeispiel derart
neu gestaltet oder aufgebaut werden kann, dass ein Ausführungsbeispiel
einer Komponente eines Pyramidenfilters gemäß der vorliegenden Erfindung
berücksichtigt
werden kann, wie dies in der Abbildung aus 3 dargestellt
ist. Das Ausführungsbeispiel 300 aus 3 umfasst
eine Pyramidenfilterkomponente mit einer Verzögerungseinheit 310 und drei
Addierern 320, 330 und 340. Für eine hohe
Geschwindigkeit und eine gute Durchsatzleistung können schnelle
Addierer verwendet werden, wie diese etwa in der Literatur vorgeschlagen
werden. Ein „Parallelübertragsaddierer" ist ein derartiges
Beispiel, wobei der Umfang der vorliegenden Erfindung diesbezüglich nicht
beschränkt
ist. In dem speziellen vorliegenden Ausführungsbeispiel sind die Verzögerungseinheit
und die Addierer so gekoppelt, dass in der Pyramide Ausgangssignalabtastwerte
höherer Ordnung
oder Signalabtastströme
und pyramidengefilterte Zustandsvariablen-Signalabtastwerte oder Signalabtastströme aus den
Eingangssignalabtastwerten oder Signalabtastströmen und pyramidengefilterten
Ausgangssignalabtastwerten oder Signalabtastströmen niedriger Ordnung erzeugt
werden. Zum Beispiel in Bezug auf das Ausführungsbeispiel aus 3 umfasst
X die Eingangssignalabtastwerte oder der Signalabtaststrom B umfasst
die pyramidengefilterten Ausgangssignalabtastwerte höherer Ordnung oder
den Signalabtaststrom, und Si stellt die
pyramidengefilterten Zustandsvariablen-Signalabtastwerte oder den
Signalabtaststrom dar. In ähnlicher
Weise umfasst oder zeigt Bi-2 die pyramidengefilterten
Ausgangssignalabtastwerte niedrigerer Ordnung, und Si-2 steht
für die
pyramidengefilterten Zustandsvariablen-Signalabtastwerte oder den
Signalabtaststrom niedrigerer Ordnung. In dem speziellen vorliegenden Ausführungsbeispiel
entspricht die Differenz in Bezug auf die Ordnung zwischen den pyramidengefilterten
Ausgangssignalabtastwerten und Zustandsvariablen-Signalabtastwerten oder Signalabtastströmen zwei,
wobei der Umfang der vorliegenden Erfindung diesbezüglich jedoch
nicht beschränkt
ist.
-
Die
Abbildung aus 4 zeigt das Ausführungsbeispiel
aus 2, wobei das Ausführungsbeispiel aus 3 als
eine Komponente oder Teilkomponente angewandt wird. Die in der Abbildung
aus 4 dargestellte Komponente 410 umfasst
somit die Verzögerungseinheit 295 und
die Addierer 280, 230 und 230 aus 2.
In Bezug auf das Ausführungsbeispiel
aus 4 ist der Pyramidenfilter 200 ferner
als auf einer integrierten Schaltung 400 implementiert
dargestellt. Gemäß der Abbildung
aus 4 umfasst der Pyramidenfilter 200 ferner
eine Folge skalierbarer, kaskadierter, multipliziererfreier Einheiten,
wie etwa 410, 420, etc. In ähnlicher Weise erzeugt jede
Einheit dieser skalierbaren, kaskadierten, multipliziererfreien
Einheiten eine. unterschiedliche Ordnung pyramidengefilterter Ausgangssignalabtastwerte
oder einen Ausgangssignalstrom anderer Ordnung. Zum Beispiel erzeugt
die Einheit 410 Ausgangssignalabtastwerte oder einen Signalabtaststrom
B5, wobei die Einheit 420 Ausgangssignalabtastwerte
oder einen Signalabtaststrom B7 erzeugt, etc.
-
Hiermit
wird festgestellt, dass der Umfang der vorliegenden Erfindung nicht
auf ein bestimmtes Ausführungsbeispiel
oder eine bestimmte Implementierung beschränkt ist. Zum Beispiel kann
ein Ausführungsbeispiel
in Hardware implementiert werden, während ein anderes Ausführungsbeispiel
in Software implementiert werden kann. In ähnlicher Weise kann ein Ausführungsbeispiel
in Firmware vorgesehen sein oder zum Beispiel in einer Kombination
aus Hardware, Software oder Firmware. Gemäß dem Umfang der vorliegenden
Erfindung ist ferner ein Ausführungsbeispiel
möglich,
das einen Gegenstand wie etwa ein Speichermedium umfasst, ohne dass die
Erfindung darauf beschränkt
ist. Auf einem derartigen Speichermedium, wie zum Beispiel einer CD-ROM
oder einer Diskette können
Befehle gespeichert sein, die bei einer Ausführung durch ein System, wie
etwa ein Computersystem oder eine Plattform oder ein Bilddarstellungssystem,
zur Ausführung
eines Ausführungsbeispiels
eines Verfahrens gemäß der vorliegenden
Erfindung führen
können, wie
etwa eines Ausführungsbeispiels
eines Verfahrens zum Filtern oder Verarbeiten etwa eines Bilds oder
Videos, wie dies vorstehend im Text beschrieben worden ist. Zum
Beispiel kann eine Bildverarbeitungsplattform oder ein Bildverarbeitungssystem eine
Bildverarbeitungseinheit, eine Video- oder Bild-Ein-Ausgabevorrichtung
und/oder einen Speicher aufweisen.