-
Diese
Offenbarung betrifft Klassifizierung und Merkmalsextraktion.
-
Die
Merkmalsextraktion ist ein aktuelles Gebiet der Forschung und Entwicklung
in der digitalen Bildverarbeitung und Computervisualisierung, besonders
auf Gebieten der Entwicklung, die auch die Zeichenerkennung auf
der Basis der Merkmale beinhalten. Viele Bilderkennungs-, Bildnachweis-
und Biometrikanwendungen sind zum Beispiel auf der Basis von Verfahren
zur Merkmalsextraktion und Mustererkennung entwickelt worden. Die
Merkmalsextraktion in Fingerabdruckbildern weist einzigartige Aspekte
im Vergleich zu Mehrzweck-Bildverarbeitungsanwendungen auf, zumindest
teilweise auf Grund ihrer speziellen topologischen Charakteristika.
Der größte Teil
der Ansätze,
die in der Literatur vorgeschlagen wurden, transformiert ein Fingerabdruckbild
in ein binäres
Bild, das zumindest teilweise auf der Faltung des Bildes mit Filter
in Verbindung mit bestimmten Varianten der Schwellwertbildung beruht.
Dieser Ansatz hat jedoch mehrere Nachteile, wie zum Beispiel die
Rechenintensität
und die Unfähigkeit,
verrauschte Bilder robust zu verarbeiten. Ferner sind die meisten
Verfahren in der Literatur langsam, kompliziert und schwierig in
Hardware zu implementieren. Es besteht daher ein Bedarf an anderen
Verarbeitungsverfahren und -architekturen zur Unterstützung solcher Verfahren.
-
Die
französische
Patentanmeldung
FR
2 582 831 A1 offenbart ein Verfahren zum Identifizieren
von digitalen Ausdrucken und eine entsprechende Vorrichtung. Das
Verfahren besteht aus dem Erfassen des Bildes eines digitalen Ausdrucks
mittels eines optischen Prozesses, der automatischen Erkennung einer
bestimmten Zahl von charakteristischen Punkten dieses Bildes und
dem Vergleich dieser charakteristischen Punkte mit denen von vorher
erfaßten
Bildern.
-
Der
Artikel "Adaptive
Flow orientation-based Feature Extraction in Finger Print Images" von N.K. Ratha et
al., Pattern Recognition, Pergamon Press Inc., Elmsford, N.Y. USA,
Bd. 28, Nr. 11, S. 1657-1671, offenbart ein Verfahren zum Extrahieren
von strukturellen Merkmalen aus Fingerabdruckbildern. Bei Betrachtung
von Fingerabdruckbildern als strukturiertes Bild wird ein Orientierungsströmungsfeld
berechnet. Der Rest der Stufen im Algorithmus verwendet das Strömungsfeld
zum Entwurf von adaptiven Filtern für das Eingangsbild. Um Kanten
genau zu finden, wird ein Kantensegmentierungsalgorithmus auf der
Basis von Wellenformschutz verwendet. Das Kantenskelettbild wird
unter Verwendung von morphologischen Operatoren zum Bestimmen der Merkmale
gewonnen und geglättet.
Eine große
Zahl von unech ten Merkmalen aus dem festgestellten Satz von Einzelheiten
wird durch eine Nachverarbeitungsstufe beseitigt.
-
Die
Erfindung wird durch die angehängten
Merkmale definiert. Der beanspruchte Gegenstand der Erfindung kann
jedoch sowohl bezüglich
der Organisation als auch des Betriebsverfahrens, zusammen mit Objekten,
Merkmalen und Vorteilen derselben, am besten durch Verweis auf die
folgende detaillierte Beschreibung verstanden werden, wenn sie mit
den begleitenden Zeichnungen gelesen wird, dabei gilt:
-
1 ist
eine Schemadarstellung, die einen Teil einer Ausführungsform
eines Verarbeitungselementes (PE) zeigt, welches zum Klassifizieren
eines Pixels verwendet werden kann;
-
2 ist
eine Schemadarstellung, die zusätzliche
Teile der Ausführungsform
eines Verarbeitungselementes von 1 zeigt;
-
3 ist
eine Schemadarstellung, die einen weiteren Teil der Ausführungsform
von 1 detaillierter zeigt; und
-
4 ist
eine Schemadarstellung, die eine besondere Ausführungsform zeigt, welche mehrere PE-Ausführungsformen
von 1 kombiniert, wobei die PE-Ausführungsformen
in dieser besonderen Ausführungsform
zum Verarbeiten eines 4 × 5-Bildes
kombiniert sind.
-
In
der folgenden detaillierten Beschreibung werden zahlreiche spezielle
Details dargelegt, um für
ein gründliches
Verständnis
des beanspruchten Gegenstandes der Erfindung zu sorgen. Für Fachleute
auf dem Gebiet ist jedoch erkennbar, daß der beanspruchte Gegenstand
der Erfindung ohne diese speziellen Details ausgeführt werden
kann. In anderen Fällen
sind bekannte Verfahren, Prozeduren, Komponenten und Schaltungen
nicht im Detail beschrieben worden, um das Verständnis für den beanspruchten Gegenstand
der Erfindung nicht unnötig
zu erschweren.
-
Der
beanspruchte Gegenstand der Erfindung betrifft die Implementierung
einer chipintegrierten VLSI-Implementierung der Pixelklassifizierung
unter Verwendung topologischer Merkmale. In einer Ausführungsform
werden Merkmale, wie zum Beispiel Scheitel, Tal, Plateau und unbestimmt,
eingesetzt, obwohl natürlich der
beanspruchte Gegenstand der Erfindung bezüglich des Geltungsbereichs
nicht auf die Verwendung des Ansatzes beschränkt ist, der hierin offenbart
wird. Eine beliebige Zahl von Ansätzen für die Pixelklassifizierung kann
implementiert werden, die in den Geltungsbereich des beanspruchten
Gegenstandes der Erfindung fallen.
-
Dennoch
löst in
dem oben genannten Ansatz ein erster Durchlauf durch eine Bildpixelmatrix
die Pixel in sieben Klassen auf, nämlich CR, VA, PL, CV, VP, CP
und UN. Von den sieben Klassen sind CR (Scheitel), VA (Tal), PL
(Plateau) Endklassen.
-
Für diese
spezielle Ausführungsform
einer Architektur zum Verarbeiten von Bildern wird ein Verarbeitungselement 10 (PE)
zum Klassifizieren eines Pixels, wie zum Beispiel in die oben genannten
sieben Klassen, in 1 gezeigt. Eine Bildpixelmatrix
von 'm' Zeilen und 'n' Spalten kann zum Beispiel in dieser
Ausführungsform 'm' Kopien des PE einsetzen, obwohl der
beanspruchte Gegenstand der Erfindung im Geltungsbereich in dieser
Hinsicht nicht eingeschränkt
ist. In dieser Ausführungsform
werden die Pixel in mehreren Spalten während eines Taktimpulses 'gefeuert'. Daher werden in
dieser Ausführungsform
die Spalten in der Art einer Pipeline in die PEs eingegeben.
-
Man
betrachte zum Beispiel ein Pixel an der (i, j)-ten Stelle. Das Verarbeitungselement
PEi hat in dieser Ausführungsform drei (3) Eingangsleitungen
Ri-1, Ri und Ri+1, die den Zeilen i – 1, i and i + 1 entsprechen. Zum
Klassifizieren eines Pixels bei (i, j) wird unter Verwendung des
Ansatzes, der vorher beschrieben wurde, auf die Pixel in seiner
3 × 3-Nachbarschaft
zugegriffen. Die Pixel an einem Ort, der die Indizes i – 1, i und
i + 1 hat, können
aus den Eingangsleitungen Ri-1, Ri bzw. Ri+1 erhalten
werden. Man beachte auch, daß Pixel
an Orten, die denselben Index 'j' haben, während desselben
Taktes gefeuert werden, z. B. werden (i – 1, j), (i, j) und (i + 1,
j) während
desselben Taktimpulses oder Momentes, sagen wir, tj,
gefeuert; dann werden (i – 1,
j – 1),
(i, j – 1)
und (i + 1, j – 1)
während
des Zeitpunktes oder des Impulses tj – 1 gefeuert,
und (i – 1,
j + 1), (i, j + 1) und (i + 1, j + 1) würden während des Zeitpunktes tj + 1 gefeuert werden.
-
Die
folgende Tabelle zeigt die Pixel, die zur Berechnung von a, b, c,
d, e, f, g und h eingesetzt werden, welche zum Klassifizieren eines
bestimmten Pixels in eine der sieben Klassen verwendet werden, sowie
den Taktimpuls, an dem es verfügbar
ist. Tabelle 1
| Benötigte Pixel | Eingangsleitung,
an der es verfügbar
ist | Zeitpunkt,
zu dem es verfügbar
ist | Benötigte Pixel | Eingangsleitung,
an der es verfügbar
ist | Zeitpunkt,
zu dem es verfügbar
ist |
a | i,
j | Ri | tj | i – 1, j | Ri-1 | tj |
b | i,
j | Ri | tj | i
+ 1, j | Ri+1 | tj |
c | i,
j | Ri | tj | i – 1, j – 1 | Ri-1 | tj – 1 |
d | i,
j | Ri | tj | i
+ 1, j + 1 | Ri+1 | tj + 1 |
e | i,
j | Ri | tj | i,
j – 1 | Ri | tj – 1 |
f | i,
j | Ri | tj | i,
j + 1 | Ri | tj + 1 |
g | i,
j | Ri | tj | i
+ 1, j + 1 | Ri+1 | tj – 1 |
h | i,
j | Ri | tj | i – 1, j +
1 | Ri-1 | tj – 1 |
-
Zum
Beispiel können
a, b beim tj-ten Taktimpuls beurteilt werden,
wie gezeigt. Um c, e und g beim tj-ten Taktimpuls
zu berechnen, werden die Daten an den Eingangsleitungen Ri, Ri-1 und Ri+1 beim (tj – 1)-ten
Taktimpuls und Ri beim tj-ten
Taktimpuls verwendet. Um dies zu erreichen, können die Daten an der Eingangsleitung um
einen Takt verzögert
werden. Die D-Flip-Flops 20,
D1, D2 und D3, wie in 1 gezeigt,
erreichen dies in dieser Ausführungsform.
Zum Berechnen von h, d und f werden die Daten an den Eingangsleitungen
Ri, Ri-1 und Ri+1 beim (tj + 1)-ten
Taktimpuls und Ri beim tj-ten
Taktimpuls verwendet. Daher hält
das D-Flip-Flop
D2 die Daten an Eingangsleitung Ri in dieser Ausführungsform zurück.
-
Der
Komparatorblock 30, Ci, hat fünf (5) 8-Bit-Größenkomparatoren
für a,
b, c, e und g in dieser Ausführungsform.
Beim Taktimpuls tj berechnet Ci a,
b, c, e und g für
das Pixel an der Stelle (i, j) der Bildpixelmatrix. Der Komparatorblock 40,
Ci+1, hat drei (3) 8-Bit-Größenkomparatoren
für d,
h und f in dieser Ausführungsform. Ci+1 berechnet d, h und f für das Pixel
an der Stelle (i, j) beim (tj + 1)-ten Taktimpuls.
Man beachte, daß C,
beim Taktimpuls tj + 1 a, b, c, e und g
berechnet, was dem Pixel an der Stelle (i, j + 1) der Pixelmatrix
entspricht; Ci+1 berechnet d, h und f entsprechend
dem Pixel an der Stelle (i, j – 1)
beim Taktimpuls tj.
-
In
dieser speziellen Ausführungsform
stehen h, d und f einen Taktimpuls nach der Verfügbarkeit von a, b, c, e und
g zur Verfügung.
Daher werden a, b, c, e und g um einen Taktimpuls verzögert, hier
durch eine Bank 50 von D-Flip-Flops D4.
Analog wird in dieser Ausführungsform
eine Busbreite von drei binären
Signalwerten für
a, b, c, d, e, f, g und h verwendet. Speziell umfassen die Ausgangssignale
der Größenkomparatoren in
dieser Ausführungsform '+','–' oder '0'. Natürlich schaltet in dieser Ausführungsform
eine Leitung der Komparatorschaltung auf H.
-
Die
Ausgangssignale für
a, b, c, d, e, f, g und h werden dann in vier (4) Verknüpfungsschaltungen 60, P1, P2, P3 und
P4 in dieser Ausführungsform, eingegeben. Diese
Schaltungen kombinieren c mit d, a mit b, g mit h bzw. e mit f.
Die Verknüpfungsschaltungen
P1 bis P4, die für diese
spezielle Ausführungsform
in 3 detaillierter gezeigt werden, implementieren
eine Tabelle, obwohl wiederum der beanspruchte Gegenstand der Erfindung
im Geltungsbereich in dieser Hinsicht nicht eingeschränkt ist.
In dieser Ausführungsform
können sich
in allen Richtungen (a, b), (c, d), (e, f) oder (g, h) Scheitel-,
Tal-, Plateau- oder Unbestimmt-Klassifizierungen
ergeben. Also kann von allen vier (4) Ausgangsleitungen, wobei eine
Leitung in dieser Ausführungsform 1
Bit breit ist, eine Leitung auf H schalten, was das Vorhandensein
einer Scheitel-, Tal-, Plateau- oder Unbestimmt-Klassifizierung
anzeigt.
-
Diese
Ausführungsform
verwendet auch vier (4) Addierglieder, 70. Die 1-Bit-Ausgangsleitungen
CR, VA, PL und UN, wie in 1 gezeigt, werden jeweils dem
Scheitel-Addierer, Tal-Addierer, Plateau-Addierer und Unbestimmt-Addierer
zugeführt
(hierin nachstehend auch als Adderc, Adderv, Adderp und Adderu bezeichnet). Bei vier (4) Richtungen werden
drei (3) Bits in dieser Ausführungsform
zur Darstellung der Summe der Addierglieder verwendet, um die Situation
festzuhalten, bei der dieselbe Klassifikation für jede Richtung auftritt. Die
Ausgangssignale aus den Addierern werden in die Verweistabelle (LUT1) 90 eingegeben, womit das Klassifikationsschema
implementiert wird.
-
Dies
kann natürlich
auf verschiedene Weise, einschließlich der Verwendung von Verknüpfungsschaltungen,
implementiert werden. Der beanspruchte Gegenstand der Erfindung
ist im Geltungsbereich nicht auf eine spezielle Implementierungsweise
beschränkt.
-
Der
Schaltungsblock 80, CK1, wie in
den 1 und 2 gezeigt, hat sieben (7) Ausgangsleitungen CR,
VA, PL, CV, VP, CP und UN. Gemäß der Implementierung
der Verweistabelle oder der Verknüpfungsschaltung des Klassifizierungsschemas
schaltet eine der sieben Leitungen auf H.
-
Diese
Ausführungsform
umfaßt
auch die Fähigkeit,
den durchschnittlichen Grauwert von Scheitel-, Tal- und Plateaupixeln
zu berechnen, um die Pixeltypen CV, VP, CP und UN in einem zweiten
Durchlauf zu klassifizieren, wie in 2 illustriert.
Wenn eine der sieben (7) Ausgangsleitungen vom Schaltungsblock CK1 auf H schaltet, werden die Ausgangsleitungen
CR, VA oder PL zur Freigabe der Addierglieder Adderc, Adderv bzw. Adderp
verwendet. Die Eingangsleitungen, Ris, werden
in die Addierglieder Adderc, Adderv und Adderp eingespeist. Auf
der Basis des Freigabesignals an die Addierglieder wird eines der
Addierglieder, wie zum Beispiel Adderc, Adderv und Adderp, ausgewählt, und
die Addition wird ausgeführt.
Die Zähler,
wie zum Beispiel Counterc, Counterv und Counterp, zählen die
Zahl der Freigabesignale an die entsprechenden Addierglieder, wodurch
sie die Zahl der Scheitel-, Tal- und Plateau-Pixel angeben, die
in der Bildpixelmatrix vorhanden sind. Daher weisen zum Beispiel
Adderc und Counterc die
Summe der Graustufenwerte der Scheitelpixel in der bestimmten Zeile
bzw. die Zahl solcher Scheitel in dieser Zeile auf.
-
In
dieser Ausführungsform
werden nach dem 'Feuern' der gesamten Bildpixelmatrix
die Werte von den Addercs addiert, und die
Werte von den Countercs werden addiert.
Die Summe von den Addiergliedern wird durch die Summe der Werte
der Zähler
geteilt, um den durchschnittlichen Scheitel-Graustufenwert zu erhalten. Eine ähnliche
Operation kann für
Tal- und Plateaupixel ausgeführt
werden.
-
Nach
dem ersten Durchlauf werden die m × n Pixel, die in der Bildpixelmatrix
vorhanden sind, in sieben Klassen eingeteilt. Diese Pixel können in
einem Zwischenspeicher zur weiteren Verarbeitung im zweiten Durchlauf
gespeichert werden. Die Verweistabelle (LUT2) 120 wird
zum Decodieren der sieben (7) Ausgangsleitungen in einen vorher
festgelegten Wert verwendet, wie in LUT2 eingestellt,
um so die Klassifikationen zu widerspiegeln, die die Pixel annehmen
können.
-
Daher
kann diese Ausführungsform
dazu verwendet werden, eine VLSI-Architektur zur Berechnung topologischer
Merkmale für
Graustufenbilder zu implementieren. 4 illustriert
zum Beispiel eine Ausführungsform
zur Verarbeitung von 4 × 5-Bildern
unter Verwendung mehrerer von den PE-Ausführungsformen, die vorher beschrieben
wurden. Diese topologischen Merkmale können zum Extrahieren eines
Binärbildes
aus einem Graustufenbild verwendet werden. Dieses Binärbild kann
dann zum Beispiel für
die Fingerabdruckbildanaly se eingesetzt werden. Ferner kann eine
solche Ausführungsform
auch auf andere Situationen angewendet werden, wie zum Beispiel
die Ausführung
der Kantenerkennung von allgemeinen Bildverarbeitungsanwendungen,
wie sie zum Beispiel in die Computervisualisierung, Mustererkennung
und andere Bildverarbeitungsarchitekturen integriert werden können.
-
Es
versteht sich natürlich,
daß der
beanspruchte Gegenstand der Erfindung im Geltungsbereich nicht auf
eine spezielle Ausführungsform
oder Implementierung beschränkt
ist, obwohl spezielle Ausführungsformen
gerade beschrieben wurden. Eine Ausführungsform kann zum Beispiel
in Hardware erfolgen, während eine
andere Ausführungsform
in Software implementiert werden kann. Analog kann eine Ausführungsform
in Firmware oder einer Kombination zum Beispiel von Hardware, Software
oder Firmware sein. Analog kann eine Ausführungsform einen Gegenstand,
wie zum Beispiel ein Speichermedium, umfassen, obwohl der beanspruchte
Gegenstand der Erfindung in dieser Hinsicht nicht im Geltungsbereich
beschränkt
ist. Solch ein Speichermedium, wie zum Beispiel eine CD-ROM oder
ein Platte, kann darauf gespeichert Befehle enthalten, die bei Ausführung durch
ein System, wie zum Beispiel ein Computersystem oder eine -plattform
oder zum Beispiel ein bildgebendes oder Fingerabdruckbildsystem,
zu einer Ausführungsform
eines Verfahrens gemäß dem beanspruchten
Gegenstand der Erfindung, die ausgeführt wird, führen, wie zum Beispiel einer
Ausführungsform
eines Verfahrens zur Bereitstellung zum Beispiel eines binären Fingerabdruckbildes,
wie vorher beschrieben. Eine Bildverarbeitungsplattform oder ein
Bildverarbeitungssystem kann zum Beispiel eine Bildverarbeitungseinheit,
eine Bild-Eingabe-/Ausgabevorrichtung und/oder -Speicher umfassen.