I. Hintergrund der Erfindung.
I.1. Definitionen.
-
Ein Fingerabdruck ist ein spezielles Muster, bestehend aus Linien,
die den auf den Fingern, Handflächen und Sohlen erscheinenden
Kammlinien und Tälern entsprechen. Seit Bertillon's
Untersuchungen zu Beginn dieses Jahrhunderts ist gut bekannt, daß
Fingerabdrücke spezielle spezifische Merkmale (Minutiae) aufweisen, die
einzigartig sind und die Identifikation von Menschen über ihre
Fingerabdrücke ermöglichen. Definitionsgemäß ist ein derartiges
spezifisches Merkmal entweder (1) eine Verzweigung, d.h. der Ort, wo
eine gegebene Linie sich in zwei unterschiedliche Linien aufgabelt
(Fig. 4) oder (2) das Ende einer Kammlinie, d.h. der Ort, wo eine
gegebene Linie endet (Fig. 5). Spezifische Merkmale werden
gewöhnlicherweise mit drei Koordinaten aufgezeichnet: zwei
Koordinaten "x" Lind "y" für die Position des spezifischen Merkmales
relativ zu einem Koordinatensystem und eine Koordinate "a", die
einen Winkel angibt, der der durchschnittlichen Richtung der
Linien um den Punkt des spezifischen Merkmales entspricht. (Siehe
Fig. 4, 5).
-
Das automatische "Vergleichen" von Fingerabdrücken unter
Steuerung eines Allzweckcomputers ist ein Verfahren, in dem zwei
unterschiedliche Fingerabdrücke verglichen werden, um zu ermitteln,
ob sie vom selben Finger stammen und damit von derselben Person.
Der automatische Vergleich von zwei Fingerabdrücken verwendet
eine Zahl, bekannt als die "Vergleichszahl", um den Grad
anzugeben, nach dem zwei gegebene Fingerabdrücke ähnlich aussehen; je
größer die Zahl ist, desto größer ist die Wahrscheinlichkeit, daß die
beiden Fingerabdrücke von demselben Finger stammen.
-
Die automatische "Identifizierung" eines Fingerabdruckes unter der
Steuerung eines Allzweckcomputers ist das Verfahren, einen
gegebenen Fingerabdruck, einen sogenannten "Suchabdruck", mit einer
Datenbank zu vergleichen, die ein Set von Fingerabdrücken enthält,
"abgelegte Fingerabdrücke" genannt, um zu bestimmen, ob die
Datenbank einen abgelegten Fingerabdruck enthält, der vom selben
Individuum stammt wie der Suchfingerabdruck. Wenn daher die
Datenbank N abgelegte Fingerabdrücke enthält, entspricht eine
Identifizierung N Vergleichen. Der Vergleich des Suchabdruckes
mit jedem der N abgelegten Fingerabdrücke erzeugt N
Vergleichszahlen, die nach abnehmendem Wert sortiert werden. Die
Identifizierung resultiert typischerweise in einer kurzen Liste von
"Kandidaten", die die abgelegten Fingerabdrücke sind, die die
besten Vergleichszahlen erzielt haben. Die Genauigkeit eines
automatischen Systems zum Vergleich und zur Identifizierung von
Fingerabdrücken wird in Abhängigkeit von seiner Eignung gemessen, den
richtigen Abdruck in der Liste der Topkandidaten einzuordnen.
-
Die generellen Quellen von Fingerabdruckdaten für solch eine
Datenbank sind (1) "Zehn-Abdruckkarten", die typischerweise die
gefärbten Abdrücke von allen zehn Fingern eines gegebenen
Individuums aufweisen, (2) latente Abdrücke, die ein oder mehrere Teile
von hinterlassenen Fingerabdrücken sind, z.b. an einem Tatort und
(3) Fingerabdruckbilder, die "live" mit einem optischen
Fingerabdrucklesegerät zum direkten Ablesen von Fingerabdrücken von der
Hand erhalten werden.
-
Eine Zehn-Abdruckkarte enthält prinzipiell alphanumerische Daten,
wie Name und Alter, und zehn nach Einfärbung mit Tinte
abgerollte Fingerabdrücke. Die Fingerabdrücke werden in zwei Sets
gruppiert, eines für jede Hand. Eine ungefähre Orientierung der
Abdrücke auf jeder Karte ist bekannt, da die Fingerverbindungslinie
in der Regel parallel zu der Basislinie der Karte für die fünf
Fingerabdrücke derselben Hand ist.
-
Im Gegensatz dazu ist die Ausrichtung latenter Abdrücke generell
nicht bekannt, da nur ein Teil des Fingerabdruckes erhältlich ist.
Weiterhin weisen latente Abdrücke häufig eine sehr schlechte
Bildqualität auf. Als Ergebnis wurde das Problem eines akuraten
Vergleiches von einer akuraten Identifizierung von latenten Abdrücken
lage Zeit als Hauptproblem bei herkömmlichen automatischen
Fingerabdruckidentifizierungssystemen betrachtet.
I.2. Einrichtungen zum Durchführen der Vergleichsfunktion
(Matcher).
-
Im Stand der Technik zu automatischen
Fingerabdruckidentifizierungssystemen ist gut bekannt, daß die Vergleichsoperation
vorzugsweise anhand der spezifischen Merkmale des Fingerabdruckes
vorgenommen wird und nicht anhand des gesamten Abbildes von
dem Fingerabdruck. Daher weist eine elementare
Vergleichsoperation den Vergleich von zwei Sets von spezifischen Merkmalen auf,
d.h. von zwei Punktesets, wobei jeder Punkt drei Koordinaten "x",
"y" und "a" aufweist. Eine elementare Vergleichseinrichtung
(Matcher) zielt darauf ab, die beiden Sets von Punkten
übereinanderzulegen, um die Anzahl der spezifischen Merkmale,
die bei beiden Fingerabdrücken übereinstimmen, zu zählen.
-
Wegstein beschreibt eine Reihe von elementaren Matchern dieser
Art in Technical Note 538, National Bureau of Standards, Publ.
1970. Diese Matcher, M19, M27 und M32 genannt, bestimmen, ob
zwei Fingerabdrücke vom selben Finger kommen oder nicht, durch
Messung der Dichte von Punktgruppen im Dx-Dy-Raum, wobei Dx
und Dy die jeweiligen Unterschiede in x- und y-Koordinaten der
spezifischen Merkmale von zwei Fingerabdrücken sind. In dieser
Technical Note angegebene experimentelle Ergebnisse zeigen, daß
Punkte im Dx-Dy-Raum dazu neigen, am Rand angeordnet zu sein,
wenn sie von unterschiedlichen Fingerabdrücken kommen, während
Punkte von Fingerabdrücken desselben Fingers dazu neigen,
Gruppen zu bilden.
-
Bei dem M19 Matcher wird davon ausgegangen, daß die zur
Überlagerung der beiden Sets von Punkten der spezifischen Merkmale
erforderliche Transformation lediglich eine Translation ist. Der
M27 Matcher ist ein M19 Matcher mit einer neuen Zählfunktion,
darauf ausgelegt, auch größere Translationsverschiebungen zu
berücksichtigen. Der M32 Matcher berücksichtigt geringfügige
Rotationen zwischen zwei Fingerabdrücken auf die folgende Weise:
Zunächst wird ein M27 Vergleich zwischen den beiden
Fingerabdrücken gemacht; daun wird einer der beiden Abdrücke um
"V" Grad aus seiner ursprünglichen Position verdreht und ein neuer
M27 Vergleich wird durchgeführt. Alles in allem besteht eine M32
Vergleichsoperation aus sieben M27 Vergleichen, die folgenden
Werten für den Winkel V entsprechen, d.h. V = -15, -10, -5, 0,
+5, +10, +15 Grad.
I.3. Probleme beim Vergleichen in früheren automatischen
Fingerabdruckidentifizierungssystemen.
-
Ein automatisches Fingerabdruckidentifizierungssystem verwendet
eine Fingerabdruckdaten enthaltende Datenbank, eine
Vergleichseinrichtung und einen entsprechend ausgestatteten
Allzweckcomputer. In der Regel werden Fingerabdrücke von Zehn-Abdruckkarten
automatisch in der Datenbank kodiert, was bedeutet, daß die Punkte
der spezifischen Merkmale von einer automatischen Einrichtung
ermittelt werden. Trotzdem ist es manchmal wünschenswert, daß
ein Bediener die Zehn-Abdruckkartenfingerabdruckdaten manuell
kodiert. Fingerabdruckdaten von latenten Abdrücken werden in der
Regel manuell in der Datenbank kodiert wegen der schlechten
Qualität des Fingerabdruckbildes, obwohl es manchmal möglich ist,
Daten von einem latenten Abdruck automatisch zu kodieren, wenn
der Abdruck von guter Qualität ist.
-
Da Genauigkeitsunterschiede bei der Kodierung zwischen den
spezifischen Merkmalen, die von unterschiedlichen Bedienern
kodiert werden, auftreten können oder zwischen den spezifischen
Merkmalen, die von einem Bediener und denen, die automatisch
eingegeben werden, muß die Vergleichseinrichtung in dem
Identifizierungssystem
das Vorliegen einer gewissen Ungenauigkeit im
Hinblick auf eine oder mehrere der drei kodierten Koordinaten, die
den Punkt des spezifischen Merkmales repräsentieren,
berücksichtigen. Die bekannten automatischen
Fingerabdruckidentifizierungssysteme scheitern jedoch daran, Kompensationsmaßnahmen
bereitzustellen, die diesen Grad von Ungenauigkeit bei der Kodierung der
spezifischen Merkmale zu berücksichtigen.
-
Eine Vergleichseinrichtung versucht, zwei Sets von spezifischen
Merkmalspunkten aneinanderanzupassen oder übereinander zu
legen durch Überlagerung des eineil Sets auf das andere. Im Hinblick
auf den Versuch, einen latenten Abdruck zu vergleichen und zu
identifizieren, existiert in den bekannten, zuvor beschriebenen
Vergleichseinrichtungen ein weiteres Genauigkeitsproblem bei der
Identifizierung, da die Orientierung und die Position des latenten
Abdruckes im Verhältnis zu der Orientierung und der Position eines
abgelegten Abdruckes generell nicht bekannt sind. Weiterhin
können die Unterschiede zwischen einem latenten Abdruck und
abgelegten Abdrücken im Hinblick auf Abstand und Winkel eine
kritische Bedeutung bei der erfolgreichen Identifizierung darstellen,
insbesondere wenn der latente Abdruck ein sehr kleiner Teil des
unbekannten Fingerabdruckes darstellt oder wenn das Muster des
latenten Abdruckes symmetrisch ist, wobei in diesem Fall der
latente Abdruck sogar mit der oberen Seite nach unten in der
Datenbank kodiert werden kann.
-
Die gleichen Probleme in Verbindung mit Orientierung und
Position treten auf, wenn Fingerabdrücke von Zehn-Abdruckkarten
verglichen werden, allerdings nicht mit der gleichen Schwere, da
die einzig erhältliche Information die ist, daß die
Winkelunterschiede zwischen den Fingerabdrücken von den beiden Karten als
klein angenommen werden können im Vergleich zu der
Orientierung eines latenten Abdruckes, der 180º im Vergleich zu den
abgelegten Abdrücken betragen kann.
-
Ein weiteres, nicht von bekannten Systemen gelöstes Problem bei
der automatischen Fingerabdruckidentifizierung ist die
Abhängigkeit
von der Qualität der zu berücksichtigenden Abdrücke bei einem
korrekten Vergleich von spezifischen Merkmalen eines
Suchabdruckes mit denen eines abgelegten Abdruckes. Bei den aus dem
Stand der Technik bekannten Systemen wird zur Berücksichtigung
dieser Tatsache keine Kompensation vorgenommen, weder durch
Anpassung der Vergleichszahlen oder auf andere Weise, um
entweder die erhöhte Wahrscheinlichkeit einer Übereinstimmung
anzuzeigen, wenn qualitativ hochwertige Abdrücke verglichen werden,
oder aber um eine verringerte Wahrscheinlichkeit anzuzeigen, wenn
einer der Abdrücke von schlechterer Qualität ist.
-
Gleichermaßen scheitern die gattungsgemäßen Systeme bei der
Berücksichtiguiig des Typs von spezifischen Merkmalen, die während
des Vergleichsprozesses verglichen werden. Da eine größere
Wahrscheinlichkeit eines zutreffenden Vergleiches besteht, wenn
Kammlinienenden mit Kaminlinienenden verglichen werden oder
Verzweigungen mit Verzweigungen als beim Vergleich von
Kammlinienendungen mit Verzweigungen, stellt eine Berücksichtigung
dieses Faktors eine Verbesserung der Verläßlichkeit des automatischen
Identifizierungssystemes dar.
II. Beschreibung der Erfindung
-
Erfindungsgemäß haben wir ein Verfahren zur automatischen
Identifizierung von Fingerabdrücken geschaffen, bei dem die
spezifischen Merkmale eines zu identifizierenden gesuchten Abdruckes
bezüglich ihrer Orts- und Winkelkoordinaten, d.h. der Richtung,
mit den Orts- und Winkelkoordinaten von spezifischen Merkmalen
mehrerer in einer Fingerabdruckdatenbank abgelegter Abdrücke
verglichen werden, um das Vorliegen oder Nichtvorliegen einer
Übereinstimmung des gesuchten Abdruckes mit einem oder
mehreren der abgelegten Abdrücke zu bestimmen, gekennzeichnet durch
folgende Schritte: Kopieren mindestens eines spezifischen
Merkmals des gesuchten Abdruckes unter individueller Abänderung
mindestens einer der Orts- oder Winkelkoordinaten des spezifischen
Merkmals im Hinblick auf den Rest des Fingerabdruckbildes,
wodurch mindestens ein zusätzliches spezifisches Merkmal erhalten
wird, das sich von der erwähnten Suchabdruckeinzelheit in
mindestens einer seiner Koordinaten unterscheidet und Einfügen der
kopierten spezifische Merkmale in das Set von
suchabdruckspezifischen Merkmalen, die mit den spezifischen Merkmalen der
abgelegten Abdrucke verglichen werden.
II.1. Kurzbeschreibung der Abbildungen.
-
Fig. 1 ist eine generelle Darstellung eines
Fingerabdruckidentifiziertingssystems gemäß der vorliegenden
Erfindung.
-
Fig. 2 zeigt in einer generellen Darstellung ein in Fig. 1
inkorporiertes Vergleichssubsystem.
-
Fig. 3 zeigt eine generelle Darstellung einer in Fig. 2
inkorporierten Vergleichseinrichtung.
-
Fig. 4 zeigt die drei Koordinaten eines spezifischen
Merkmales in Form einer Verzweigung.
-
Fig. 5 zeigt die drei Koordinaten eines spezifischen
Merkmales in Form eines Endes einer Kammlinie.
-
Fig. 6 zeigt fünf spezifische Merkmale eines Suchabdruckes,
relativ zu einem beliebigen Koordinatensystem.
-
Fig. 7 zeigt fünf spezifische Merkmale des abgelegten
Abdruckes entsprechend Fig. 6, relativ zu einem
weiteren beliebigen Koordinatensystem.
-
Fig. 8 zeigt die spezifischen Merkmale des in Fig. 6
dargestellten Suchabdruckes nach Rotation der
Bezugsachsen um einen Winkel von PI/6.
-
Fig. 9 zeigt die spezifischen Merkmale des in Fig. 6
angegebenen Suchabdruckes nach Rotation der Bezugsachsen
um einen Winkel von PI/4.
-
Fig. 10 zeigt die spezifischen Merkmale des abgelegten
Abdruckes über die spezifischen Merkmale des
Suchabdruckes überlagert nach der PI/6-Rotation von Fig. 8.
-
Fig. 11 zeigt die spezifischen Merkmale des abgelegten
Abdruckes, überlagert auf die spezifischen Merkmale des
Suchabdruckes nach der PI/4-Rotation von Fig. 9.
-
Fig. 12 zeigt, wie Pre-Rotationswinkel kodiert werden in
Übereinstimmung mit der vorliegenden Erfindung.
-
Fig. 13 und 14 zeigen zwei übereinstimmende Darstellungen der
Anordnung von Daten in Verbindung mit spezifischen
Merkmalen si und sj von Suchabdrücken in
Übereinstimmung mit der vorliegenden Erfindung, wenn eine
Toleranz "t" auf die Pre-Rotationswinkel angelegt
wird, die ihrerseits auf die kodierten spezifischen
Merkmale des Suchabdruckes angewandt werden.
-
Fig. 15 zeigt eine bevorzugte Datenanordnung in bezug auf
zwei unterschiedliche spezifische Merkmale Si und sj
eilles Suchabdruckes m Übereinstimmung mit der
vorliegenden Erfindung, wobei eine Toleranz "t"
angewendet wird.
-
Fig. 16 zeigt die Erzeugung von fiktiven spezifischen
Merkmalen in Übereinstimmung mit der vorliegenden
Erfindung.
-
Fig. 17 zeigt die Ausgestaltung eines generalisierten
Suchpuffers, konstruiert in Übereinstimmung mit der
vorliegenden Erfindung unter Verwendung der
Datenanordnung von Fig. 15 oder der unten angegebenen
Tabellen A-D nach Erzeugung von fiktiven spezifischen
Merkmalen, falls vorhanden, in Übereinstimmung mit
Fig. 16.
-
Fig. 18 ist ein Blockdiagramm einer bevorzugten Ausführung
der Hardwarevergleichseinrichtung
(Hardwarematcher), dargestellt in Fig. 3 und konstruiert in
Übereinstimmung mit der vorliegenden Erfindung.
-
Fig. 19 ist ein Blockdiagramm einer bevorzugten Ausführung
einer Datenablegemanagementeinheit, dargestellt in
Fig. 18 und konstruiert in Übereinstimmung mit der
vorliegenden Erfindung.
-
Fig. 20 ist ein Blockdiagramm einer bevorzugten Ausführung
einer Suchdalenmanagementeinheit, dargestellt in Fig.
18 und konstruiert in Übereinstimmung mit der
vorliegenden Erfindung.
-
Fig. 21 ist ein Blockdiagramm einer bevorzugten Ausführung
einer Translationsverarbeitungseinheit, dargestellt in
Fig. 18 und konstruiert in Übereinstimmung mit der
vorliegenen Erfindung.
-
Fig. 22 ist ein Blockdiagramm einer bevorztigten Ausführung
einer Adressen- und Zuordnungsverarbeitungseinheit,
dargestellt in Fig. 18 und konstruiert in
Übereinstimmung mit der vorliegenden Erfindung.
-
Fig. 23 ist ein Blockdiagramm einer bevorzugten Ausführung
einer Zahlentafelmanagementeinheit, dargestellt in
Fig. 18 und konstruiert in Übereinstimmung mit der
vorliegenden Erfindung.
-
Fig. 24 zeigt alternative Projektionen von Resultaten aus
Vergleichen spezifischer Merkmale und ist nützlich zur
Erläuterung des Effektes bei Abfragung einer
kontinuierlichen
Funktion in Übereinstimmung mit der
vorliegenden Erfindung, um den Punkt der größten
Dichte zu bestimmen.
-
Fig. 25 zeigt eine Funktion "f(n)", verwendet in
Übereinstimmung mit der Erfindung, um eine Vergleichszahl
zu erzeugen.
II.2.1. Beschreibung einer Vergleichseinrichtung (Matcher) und
ihrer Umgebung.
-
Fig. 1 zeigt, daß ein automatisches
Fingerabdruckidentifizierungssystem nach der Erfindung eine Reihe von unterschiedlichen
Subsystemen enthält, die untereinander über ein
Hochgeschwindigkeitsnetzwerk kommunizieren. Das Netzwerk ist so aufgebaut, daß jeder
Netzwerksknoten mit jedem anderen Netzwerkknoten
kommunizieren kann; jedes Subsystem ist ein Netzwerkknoten.
-
Das Identifizierungssystem nach Fig. 1 enthält ein
Zehn-Abdruckkarteneingabesubsystem mit Kameraeinrichtungen zur Erstellung
von Bildern von den zehn Fingerabdriicken auf jeder Karte; diese
Bilder werden dann elektronisch über geeignete
Schaltkreiseinrichtungen von einer analogen in eine digitale Darstellung
umgewandelt, um es einem Allzweckcomputer zu ermöglichen, die
resultierenden Daten zu verarbeiten.
-
Das Identifizierungssystem von Fig. 1 weist ein Kodiersubsystem
auf, das elektronisch über geeignete Schaltkreiseinrichtungen das
als Ausgabe des Zehn-Abdruckkarteneingabesubsystems erhaltene
digitale Bild jedes Fingerabdruckes verwendet, um die spezifischen
Merkmale in jedem Fingerabdruck zu ermitteln und ihre "x"-, "y
"- und "a"-Koordinaten zu berechnen.
-
Das Identifizierungssystem von Fig. 1 weist ein Subsystem zur
Eingabe latenter Abdrücke auf, das verwendet wird, um gleichermaßen
Bild- und spezifische Merkmalsdaten für einen gegebenen latenten
Abdruck mittels geeigneter Schaltkreiseinrichtungen zu erhalten.
-
Wegen der üblicherweise schlechten Qualität von latenten
Abdrücken werden solche Abdrucke üblicherweise manuell verarbeitet; die
spezifischen Merkmale werden dann in der Datenbank von einem
Bediener kodiert unter Verwendung einer interaktiven Einrichtung,
wie z.B. einer Maus, einem Trackball, einer Tastatur und einem
hochauflösenden Videomonitor.
-
Das Identifizierungssystem nach Fig. 1 weist ein
Bildspeichersubsystem auf, das zur Speicherung der Bilder von allen
Fingerabdrücken in der Datenbank verwendet wird; diese Bilder können
während des Verifizierungsprozesses zur Bestätigung der von der
Vergleichseinrichtung erstellten Kandidatenliste von
übereinstimmenden Fingerabdrücken aufgerufen werden.
-
Das Identifizierungssystem von Fig. 1 weist ein
Vergleichssubsystem auf, das eine Reihe von Operationen in seiner spezifischen
Merkmaldatenbank durchführt, z.B. Einfügung von Abdrücken,
Entfernung von Abdrücken und Suche nach passenden Abdrücken.
Im Falle der "Suche" ist die Eingabe für das Vergleichssubsystem
in der Regel die spezifischen Merkmalsdaten des Suchabdruckes
zuzüglich einiger Klassifizierungsinformation, die erforderlich ist,
um, falls erforderlich, die Anzahl der abgelegteii, mit dem
Suchabdruck zu vergleichenden Abdrücke zu reduzieren. Die Ausgabe des
Vergleichssubsystems ist eine Liste von passenden abgelegten
Fingerabdrücken, d.h. eine Kandidatenliste, sortiert unter
Verwendung eines Vergleichszahlenalgorithmus.
-
Das Identifizierungssystem nach Fig. 1 weist ein
Verifizierungssubsystem auf, das es einem Fingerabdrucktechniker ermöglicht, auf
einem hochauflösenden Videomonitor sowohl Bild als auch
spezifische Merkmale des Suchabdruckes mit denen der abgelegten, in der
Kandidatenliste von dem Vergleichssubsystem vorgeschlagenen
Abdrücke zu vergleichen. Wenn der Suchabdruck nicht in der
Datenbank mit den abgelegten Abdrücken auffindbar ist, kanu eine
Einfügung des Suchabdruckes in die Datenbank durch das
Vergleichssubsystem veranlaßt werden.
-
Das Identifiziertingssystem nach Fig. 1 weist ein zentrales
Computersubsystem auf, das die Operationen aller weiteren Subsysteme
reguliert und steuert, insbesondere wenn Schlaugen oder zeitweilige
Puffer bearbeitet werden, wie es weiter unten beschrieben wird.
-
In Fig. 2 erkennt man, daß ein erfindungsgemäß konstruiertes
Vergleichssubsystem mindestens eine Vergleichseinrichtung (dargestellt
im Detail in Fig. 3) und vorzugsweise eine Mehrzahl von solchen
Vergleichseinrichtungen aufweist. Die Mehrzahl von
Vergleichseinrichtungen ist an ein Netzwerk augeschlossen, das entweder das
unter Fig. 1 angegebene Netzwerk oder ein spezifisches, dem
Vergleichssubsystem zugeordnetes Netzwerk sein kann. Die Operation
aller Vergleichseinrichtungen wird durch eine
Vergleichssteuereinrichtung gesteuert, die vorzugsweise einen Allzweckeomputer und
eine Speichereinrichtung aufweist. Die Vergleichssteuereinrichtung
ist ein Zwischenglied zwischen jeder der Vergleichseinrichtungen
und aller weiteren Komponenten des Identifizierungssystemes nach
Fig. 1. Wenn eine Suche von dem in Fig. 1 dargestellten
Zentralcomputer gestartet wird, leitet die Vergleichssteuereinrichtung die
Suchabdruckdaten an alle verbundenen Vergleichseinrichtungen
weiter und holt sich dann die Suchergebnisse jeder verbundenen
Vergleichseinrichtung zurück, um diese au den Zentralcomputer
weiterzuleiten.
-
In Fig. 3 erkennt man, daß eine erfindungsgemäße
Vergleichseinrichtung einen Allzweckcomputer aufweist, der eine
Hardwarevergleichseinrichtung steuert (dargestellt im Detail in Fig. 18), die zur
Durchführung der Suchen verwendet wird, und eine
Massenspeichereinrichtung, die verwendet wird, um den Teil der spezifische
Merkmaledatenbank zu speichern, der von dieser gegebenen
Vergleichseinrichtung gemanagt wird.
II.2.2. Beschreibung der Vergleichsprinzipien.
-
Der Vergleichsprozeß gemäß der vorliegenden Erfindung stützt sich
auf den Vergleich von zwei Sets von Drei-Koordinatenpunkten,
spezifische Merkmalspunkte genannt, von denen jeder als
Vektorabbildung
visualisiert werden kann. Fig. 4 und 5 definieren die
drei Koordinaten für die zwei Typen von spezifschen Merkmalen
(Verzweigung und Ende einer Kammlinie respektive), die in
Betracht gezogen werden. Die Buchstaben 'x' und 'y' bezeichnen die
Positions- oder Ortskoordinaten, und der Buchstabe 'a' gibt die
dritte Koordinate an, d.h. der Winkel zwischen der x-Achse und
der Richtung der Linien um den Punkt des spezifischen Merkmales.
-
Fig. 6 gibt einen Suchabdruck mit seinen spezifischen Merkmalen
wieder (um die Erklärung übersichtlicher zu machen, wurden
lediglich fünf spezifische Merkmale, gekennzeichnet mit den Zahlen
1 bis 5, abgebildet). Jedes spezifische Merkmal ist durch einen
Kreis gekennzeichnet, der seine x- y-Position definiert und eine
kurze Linie (oder Schwanz), die den Winkel a wiedergibt. Das
Referenzkoordinatensystem ist mit folgenden Symbolen bezeichnet
(φs, xs, ys).
-
Fig. 7 zeigt einen abgelegten Abdruck, der mit dem in Fig. 6
dargestellten Suchabdruck übereinstimmt. Jedes spezifische Merkmal
ist durch ein Kreuz, das die x-, y-Position definiert, und eine kurze
Linie (oder Schwanz), die den Winkel a wiedergibt, symbolisiert.
Die spezifischen Merkmale sind von 1 bis V durchnumeriert; das
spezifische Suchmerkmal 1 entspricht dcin abgelegten spezifischen
Merkmal 1, das spezifische Suchmerkmal 2 entspricht dem
abgelegten spezifischen Merkmal II, etc. Das
Referenzkoordinatensystem ist mit folgenden Symbolen bezeichnet (φf,
xf, yf).
-
Fig. 8 zeigt die spezifischen Merkmale des Suchabdruckes in Fig. 6
nach Rotation der Suchabdruckachsen um einen Winkel von PI/6.
Das neue Referenzkoordinatensystem ist bezeichnet mit (φ's, x's,
y's). Fig. 9 zeigt die spezifischen Merkmale des Suchabdruckes von
Fig. 6 nach Rotation der Suchabdruckachsen um einen Winkel von
PI/4. Das neue Referenzkoordinatensystem ist bezeichet mit
x"s, y"s).
-
Fig. 10 zeigt die Überlagerung der spezifischen Merkmale des
abgelegten Abdruckes nach Fig. 7 und der spezifischen Merkmale des
Suchabdruckes nach Rotation von PI/6, wie in Fig. 8 angegeben.
Dies bedeutet, daß wir wählten: (φf, xf, yf) = (φ's, x's, y's). Die
Länge der gestrichelten Pfeile in Fig. 10 zeigt die erforderlichen
Translationen, um das spezifische Suchmerkmal 1 mit jedem der
fünf spezifischen abgelegten Merkmale (I-V) zu überlagern, um sie
passend zur Positionierung zu machen. Führt man die gleichen
Berechnungen für die spezifischen Suchmerkmale 2, 3, 4 und 5
separat im Hinblick auf jedes der fünf spezifischen abgelegten
Abdrucksmerkmale durch, so erkennt man, daß diese Translationen
alle unterschiedlich sind und daher die Berechnungen einen
Fehlvergleich anzeigen.
-
Fig. 11 zeigt die Überlagerung der spezifischen Merkmale eines
abgelegten Abdruckes gemäß Fig. 7 und die spezifischen
Suchabdruckmerkmale nach Rotation von PI/4, wie in Fig. 9 angegeben.
Dies bedeutet, daß wir wählen: (φf, xf, yf) = (φ"s, x"s, y"s). Es
zeigt sich, daß von den 25 möglichen, die Translation angebenden
gestrichelten Pfeilen, die gezogen werden können (eine für jedes
Paar spezifischer Merkmale von abgelegtem Abdruck und
Suchabdruck) fünf identisch in Länge und Richtung sind. Weiterhin kann
man feststellen, daß diese gemeinsame Translation, die
(definitionsgemäß) die spezifischen Suchabdruckmerkmale mit den
spezifischen Merkmalen des abgelegten Abdruckes im Hinblick auf
die Positionen übereinstimmen läßt, sie ebenfalls im Hinblick auf
die Winkel übereinstimmen läßt. Daher wird festgestellt, daß fünf
übereinstimmende spezifische Merkmalpunkte zwischen dem
Suchabddruck von Fig. 6 und dem abgelegten Abdruck von Fig. 7
existieren.
-
Diese gemeinsame Translation, die mit gestrichelten Pfeilen in Fig.
1 dargestellt wurde, ist "DIE" Translation, die nach "DER"
Rotation um PI/4 am besten den Suchabdruck zu dem abgelegten
Abdruck passend macht und eine Überlagerung der fünf spezifischen
Suchmerkmale und der fünf abgelegten Merkmale in bezug auf
Position und Winkel erzeugt.
II.2.3. Organisation der Daten für den Suchabdruck.
-
Da die Suchabdruckdaten während einer Suche in einer Datenbank
mit N abgelegten Abdrücken konstant bleiben, haben wir entdeckt,
daß es vorteilhaft ist, einige nutzliche Werte aus diesen Daten
vorauszuberechnen, um die Arbeit in der Vergleichseinrichtung zu
vereinfachen und/oder die Vergleichseinrichtung schneller zu machen.
Beispielsweise ist es vorteilhaft, die neuen Koordinaten der
spezifischen Merkmale des Suchabdruckes für jede vorgegebene
Pre-Rotation im voraus zu berechnen. Bei der Durchführung einer solchen
vorherigen Berechnung ist es vorteilhaft, die möglichen Werte für
den Rotationswinkel "A" in einem endlichen Set zu wählen, das n-
Vielfache einer elementaren Größe alpha enthält, so daß n
multipliziert mit alpha gleich einer vollständigen Rotation um 360º
entspricht, was unter Betrachtung der Fig. 12 leicht verstanden werden
kann.
-
Der Winkel Ak kann daher die Werte (0, 1, 2, ..., (n-1))
einnehmen, entsprechend (0, alpha, 2 mal alpha, ..., (n-1) mal alpha),
wobei der Maximalwert für A definiert ist als:
-
Am: Am = (n-1) mal alpha = (n-1)
-
Fig. 13 zeigt vorausberechnete Daten-Spalten-Tabellen für si und
sj, die die spezifischen Suchmerkmale ith und jth betreffen. Die
Spalten-Tabelle für si ist so organisiert, daß sie an der Linie Ak die
drei Koordinaten (x, y, a) für si enthält, nachdem die
Referenzachsen um einen Winkel mit dem Wert Ak rotiert worden sind. Wenn
die Koordinaten für si relativ zu den vorherigen Achsen (x, y, a)
und die Koordinaten für si relativ zu den neuen Achsen (x', y', a')
sind, so sind die folgenden Beziehungen zwischen (x, y, a) und (x',
y', a') gut bekannt:
-
x' = xcosAk + ysinAk
-
y' = -xsinAk + ycosAk
-
a' = a - Ak
-
Es ist manchmal vorteilhaft, eine Begrenzung der möglicherweise
existierenden Winkeldifferenzen vorzugeben zwischen dem
Suchabdruck und dem abgelegten Abdruck, d.h. eine in "Toleranz"; wie
sich aus Fig. 12 ergibt, kann dies erfolgen durch Wahl des
Pre-Rotationswinkels Ak in einem Bereich, der kleiner als 360º ist und der
symmetrisch um den Nullwert ist, das bedeutet, wenn "t" die
Toleranz in Grad wiedergibt, ist der Bereich At2 ≤ Ak ≤ At1, wobei
At1 = t Grad und At2 = -t Grad und für Ak keine Werte selektiert
für Winkel größer als At1 oder kleiner als At2 werden.
-
Geht man nun noch einmal zurück zu Fig. 13, so zeigt die Spalten-
Tabelle vorausberechnete Daten für eine Toleranz von t Grad. Dies
bedeutet, die nicht berechneten Werte, die Werten des Winkels Ak
entsprechen, die außerhalb des im Hinblick auf die Toleranz t
definierten Winkelbereichs liegen, sind in der Spalten-Tabelle durch die
Legende "leer" wiedergegeben, und die drei neuen Koordinaten für
die spezifischen Merkmale si, sj nach Pre-Rotation der
Referenzachsen um Ak sind bezeichnet mit: RAk(si), RAk(sj).
-
Es sollte hervorgehoben werden, daß die Anwendung einer
Toleranz t auf den Bereich von Winkel Ak nicht zwingend erforderlich
ist in dem erfindungsgemäßen Verfahren bzw. bei der
erfindungsgemäßen Vorrichtung. Es handelt sich jedoch um eine
leicht implementierbare Technik, die zur Beschleunigung des
Vergleichsprozesses eingesetzt werden kann. Wenn eine Toleranz t
nicht in dem Bereich um Winkel Ak angewendet wird, erscheinen
keine "leer"-Werte in der Spalten-Tabelle nach Fig. 13 (z.B. siehe
Tabelle A, unten).
-
In Übereinstimmung mit der vorliegenden Erfindung wird die
erzielte Translation, die den Ort eines spezifischen Suchmerkmales
korrespondierend macht zu dem Ort eines spezifischen abgelegten
Merkmales, berücksichtigt, wenn und nur, wenn diese Translation
auch die Winkel der zwei betrachteten spezifischen Merkmale
identisch macht. Daher sind bei einem angenommenen abgelegten
spezifischen Merkmal (xf, yf, af), die einzigen Translationen, die
berücksichtigt werden, die, die im Hinblick auf ein abgelegtes
Merkmal vorausberechnet wurden, dessen Winkel "NACH" einer
bestimmten Pre-Rotation dem Winkel (af) für das gegebene
spezifische abgelegte Merkmal entspricht. Dieser Aspekt der vorliegenden
Erfindung führt zu einer Reorganisation der vorausberechneten
Suchabdrucksdaten, wie in Fig. 14 dargestellt.
-
Unter Bezug auf Fig. 14 wird deutlich, daß die Spalten-Tabellen für
die spezifischen Merkmale si und sj so sortiert wurden, daß die
Reihe k Elemente enthält dergestalt, daß der Winkel für ihr
spezifisches Merkmal gleich k ist. Dieser wichtige Aspekt der
vorliegenden Erfindung wird deutlich unter Bezug auf die folgenden
Beispiele:
-
Tabelle A ist eine Spalten-Tabelle für die spezifischen Merkmale si,
sj und sl, die die folgenden Koordinaten haben:
-
si = (x&sub0;, y&sub0;, 3)
-
sj = (x'&sub0;, y'&sub0;, 5)
-
sl = (x"&sub0;, y"&sub0;, 6)
-
Durch Auswahl von in = 64 (Fig. 12) kommen vierundsechzig Pre-
Rotationswinkel zum Einsatz und die Reihennummer der Spalten-
Tabelle entspricht dem Pre-Rotationswinkel des spezifischen
Merkmales, z.B. in Reihe 2 sind die Koordinaten R&sub2;(sj) = (x'&sub2;,
y'&sub2;, 3) des spezifischen Merkmals die drei Koordinaten des
spezifischen sj-Merkmals nach Pre-Rolation der Koordinatenachsen um
einen Winkel definiert durch n=2. Bei der Vorausberechnung der
Daten von Tabelle A wurde keine Toleranz t angewendet. Daher ist
Tabelle A analog zu der Darstellung der vorausberechneten Daten
in Fig. 13, bis darauf, daß Tabelle A keine "leer"-Werte enthält, da
keine Toleranz angelegt wurde.
Tabelle A
-
Tabelle B zeigt eine bevorzugte Sortierung der Daten von Tabelle A
dergestalt, daß nach Pre-Rotation alle Koordinatenwerte für si, sj,
sl einer Reihe, deren Reihennummer dem Winkel des spezifischen
Merkmales nach Pre-Rotation entspricht, denselben Winkel
aufweisen, d.h. den Winkel vorgegeben durch die Reihennummer.
Dementsprechend ist Tabelle B analog zu der Darstellung der
vorausberechneten Daten in Fig. 14 und 17.
Tabelle B
-
Tabelle C zeigt eine Spalten-Tabelle für die spezifischen Merkmale
si, sj und sl, bei der eine Toleranz t an die Pre-Rotationswinkel der
Spalten-Tabelle A angelegt wurde, z.B. t = 2, so daß lediglich fünf
Pre-Rotationswinkelwerte, Ak, "gultig" sind, d.h. 0, 1, 2, 62 und
63, wobei 62 und 63 n-2 und n-1 respektive in Fig. 12 entsprechen
und damit Spiegelbilder der Pre-Rotationsvektoren bei 1 und 2
respektive sind. In Tabelle C erzeugen "ungültige"
Pre-Rotationswinkel "leer"-Werte, die durch gestrichelte Linien angegeben sind.
Damit ist Tabelle C analog zu der Darstellung der
vorausberechneten Daten in Fig. 13, 14. Zusätzlich wurden die berechneten Daten
von Tabelle C gemäß den Reihen von Tabelle B sortiert.
Tabelle C
-
Die Positionen der "leer"-Werte in Tabelle C hängen von dem
Ausgangswert des Winkels des spezifischen Suchmerkmales ab. Damit
kann jede Reihe gültige und auch ungültige Daten enthalten, die alle
mit den Koordinatendaten jedes spezifischen abgelegten
Abdrucksmerkmales verglichen werden müßten, wodurch die Dauer der
Vergleichsoperation in ungewünschter Weise vergrößert würde, ohne
daß damit ein Vorteil einhergeht. Um die
Operationsgeschwindigkeit dramatisch zu verbessern, werden die berechneten Daten von
Tabelle C, wie in Tabelle D gezeigt, sortiert.
Tabelle D
-
Tabelle D ist analog zu der Darstellung der berechneten Daten in
den Fig. 14, 15 und 17. Insbesondere beinhaltet die Reorganisation
der berechneten Daten in Tabelle D ein Verschieben der nicht-
"leer"-Werte zur Linken in jeder Reihe, wo dies möglich ist. Als
Ergebnis kann keine Reihe gültige Daten aufweisen, die nach (oder
rechts davon) ungültigen Daten auftreten. Daher ist der
Vergleichsprozeß, so bald in einer Reihe uiigültige Daten auftreten, im
Hinblick auf diese Reihe beendet.
-
Die Neuorganisation der Daten, beispielhaft in den Tabellen B und
D angegeben, ist sehr vorteilhaft bei der Erhöhung der
Geschwindigkeit des Vergleichsprozesses: Bei einem gegebenen spezifischen
abgelegten Merkmal f besteht nicht länger die Notwendigkeit, das
spezifische Merkmal f mit allen in einer Spalten-Tabelle für ein
spezifisches Suchmerkmal s abgelegten Werten zu vergleichen, um
eine mögliche Übereinstimmung festzustellen. Es reicht aus, das
abgelegte spezifische Merkmal f mit dem Inhalt der Spalten-Tabelle
für das spezifische Merkmal s in der Reihe zu vergleichen, deren
Nummer gleich dem Wert des Winkels für das abgelegte spezifische
Merkmal f ist. Entweder enthält dieses Feld einen "leer"-Wert, und
keine Verknüpfting ist möglich, oder das Feld enthält gültige Daten,
und eine Translation muß berechnet werden. Weiterhin ist es
sicher, daß diese Translation das spezifische Merkmal f und das
spezifische Merkmal s für sowohl den Ort als auch den Winkel
übereinstimmend machen kann.
-
Betrachtet man nun Fig. 15, so ist dort die in Verbindung mit
Tabelle D diskutierte Verbesserung dargestellt: Die zwei
ursprünglichen Spalten mit Daten für spezifische Suchmerkmale si und sj
wurden in einer einzigen Tabelle zusammengefaßt unter
Verwendung der folgenden Regel: Für eine gegebene Reihe werden die
nicht-"leer"-Werte nach links verschoben, was bedeutet, daß man
den linken Eingang der Tabelle füllt vor dem rechten Eingang. Fig.
14 und Fig. 15 unterscheiden sich in den Reihen, die einen "leer"-
Wert für si und einen gültigen Wert für sj enthalten. Eine
Wiederholung dieser Operation für alle spezifischen Suchmerkmale im
Hinblick auf die Tabellen B, C und D und die Fig. 14 und 15 führt
zu einer Organisation des Suchpuffers (Spalten-Tabelle), dargestellt
in Fig. 17, bei der die Reihe Ak enthält: (1) auf der Linken: Werte
von spezifischen Suchmerkmalen, die nach einer gegebenen Pre-
Rotation (die in der Tabelle gespeichert ist) Kandidaten sind, die
mit allen abgelegten spezifischen Merkmalen mit einem Winkel von
Ak übereinstimmen und (2) zur Rechten: eine Liste von "leer"-
Werten. Es sollte hervorgehoben werden, daß nun: (1) nicht-"leer"-
Werte, gespeichert in einer gegebenen Spalte, NICHT von
demselben spezifischen Suchmerkmal stammen und (2) die Anzahl von
"leer"-Werten nicht dieselbe ist für unterschiedliche Reihen.
-
Fig. 16 ist hilfreich bei der Erläuterung eines weiteren Aspektes der
vorliegenden Erfindung, der sogenannten "Replikation" oder
"Duplikation" von spezifischen Merkmalen. Hauptaufgabe dieses
Aspektes der Erfindung ist, mit der inherenten Inkonsistenz
zwischen spezifischen Merkmalen umzugehen, die automatisch in der
Datenbank und den spezifischen Merkmalen, die manuell in der
Datenbank kodiert werden, da bei der mantiellen Eingabe eine
höhere Fehlerwahrscheinlichkeit gegeben ist, insbesondere wenn
Abdrücke von schlechter Bildqualität, wie z.B. latente Abdrucke,
kodiert werden.
-
Bei diesem Aspekt der Erfindting wird jedes spezifische
Suchmerkmal mit Koordinaten (x, y, a) in seinem lokalen Bereich des
Suchabdruckes repliziert oder dupliziert durch davon ausgehende
Erzeugung von "fiktiven" oder "falschen" spezifischen Merkmalen.
Die falschen spezifischen Merkmale werden, ausgehend von dem
spezifischen Suchmerkmal, durch Hinzufügen zu seinen
Koordinaten (oder durch Subtraktion davon) von inkrementalen Konstanten
x&sub0;, y&sub0; und a&sub0;, die repräsentativ für den bei dem Kodierungsprozeß
zu erwartenden Fehlergrad sind. Bei einem typischen
Fingerabdruck liegt der Abstand zwischen zwei aufeinanderfolgenden Linien
im Bereich von 0,3 bis 0,5 mm. Ein typischer Fehler beim
automatischen Eingabeprozeß ist, daß eine Linie übersprungen wird, wenn
ein Punkt eines spezifischen Merkmales kodiert wird, d.h. ein
Fehler von ungefähr 0,4 mm für die kodierten x- und
y-Koordinaten. Für den Fall des Pre-Rotationswinkels, wo alpha gleich 5,6
Grad entspricht, d.h. n = 64, kanu ein typischer Fehler bei der
Kodierung des Winkels das Zweifache des Wertes von alpha
einnehmen. Damit können im hinblick auf typische Fehler in diesen
Bereichen eine oder mehr "falsche" spezifische Merkmale von
einem Bediener repliziert werden, der sie manuell in der Datenbank
kodiert unter Verwendung einer interaktiven Einrichtung, wie einer
Maus mit einem Trackball, mit einer Tastatur und einem
hochauflösenden Videomonitor. Durch eine solche Modifizierung der
Koordinaten ergibt sich eine signifikante Wahrscheinlichkeit, daß die so
erzeugten "falschen" spezifischen Merkmale das "tatsächliche" oder
"richtige" spezifische Merkmal einschließen oder ein spezifisches
Merkmal, dessen Koordinaten dichter au das "tatsächliche" oder
"richtige" spezifische Merkmal kommen, als die für das spezifische
Suchmerkmal kodierten Koordinaten.
-
Fig. 16 zeigt beispielhaft zwei interessante Fälle, bei denen die
"falschen" spezifischen Merkmale durch Modifizierung des Winkels
ohne Modifizierung des Ortes (Punkt P) erzeugt wurden und durch
Modifizierung der x-y-Koordinaten, aber nicht des Winkels (Punkt
M). Es wird deutlich, daß beide Modifizierungstechniken
gleichzeitig für dasselbe spezifische Merkmal eingesetzt werden können.
-
Im Hinblick auf das erfindungsgemäße Verfahren und den Apparat
zum Vergleich der spezifischen Merkmale wird kein Unterschied
zwischen "richtigen", "falschen" uiid "tatsächlichen" spezifischen
Merkmalen gemacht. Alle werden hiernach als "generalisierte
spezifische Suchmerkmale" bezeichnet. Zurückkommend auf Fig. 16
wird die dargestellte Spalten-Tabelle oder der Suchpuffer als
"generalisierter Suchpuffer" bezeichnet. Zweckmäßigerweise weist
dieser Reihen mit folgendem Inhalt auf: (1) zur Linken: Werte,
stammend aus generalisierten spezifischen Suchmerkmalen, die
nach bekannter Rotation Kandidaten sind für eine Übereinstimmung
mit spezifischen abgelegten Merkmalen eines gegebenen Winkels
und (2) zur Rechten: eine Liste von leer-Werten, die nicht
verarbeitet werden sollen.
II.2.4. Operation der Hardwarevergleichseinrichtung nach
Fig. 18.
-
Unter Bezug auf die Fig. 3 und 18 versieht der Allzweckcomputer
die Hardwarevergleichseinrichtung mit Befehlen über
Steuerleitungen 12 und Steuereinrichtungen 11; der Computer empfängt
Botschaften (typischerweise die Angabe über das Ende des Laufese)
von Steuereinheiteinrichtungen 11 über Leitung 13. Die
Hardwarevergleichseinrichtung enthält eine Managementeinheit 31
für abgelegte Daten, eine Managementeinheit 41 für die Suchdaten,
eine Translationsberechnungseinheit 51 und zwei Reihen von
Zähltabellenmanagementeinheiten 71 a und 71b, deren Operation
durch die beiden Adress- und Hilfsberechnungseinheiten 61a und
61b gesteuert werden.
-
Bei Betrieb der Hardwarevergleichseinrichtung wird zunächst die
Leitung 28 aktiviert, um alle Fehleinrichtungen auf Null zu setzen.
Dann wird die Suchdatenmanagementeinheit 41, die
Speichereinheiten mit direktem Zugriff atifweist, mit generalisierten
spezifischen Suchmerkmalsdaten geladen unter Verwendung der
Steuerleitung 22 und der Datenleitung 42. Ablagepuffereinrichtungen 83a
der Managementeinheit 31 für abgelegte Daten werden dann unter
Verwendung der Steuerleitung 14 und der Datenleitung 32a mit
Daten geladen, die unterschiedliche abgelegte Fingerabdrücke
betreffen. Schließlich, während die Ablagepuffereinrichtung 83b über
Steuerleitung 14 und Datenleitung 32b geladen wird, werden die
zum Start des Vergleiches der in der Managementeinbeit 41 für
Suchdaten abgelegten Suchabdruckdaten mit den in der
Ablagepuffereinrichtung 83a gespeicherten Daten für abgelegte Abdrücke
erforderlichen Steuerleitungen aktiviert, um die folgenden
Operationen für jeden abgelegten Fingerabdruck in der Puffereinrichtung
83a für abgelegte Abdrücke durchzuführen:
-
(a) Für jedes spezifische Merkmal f mit den Koordinaten (xf, yf,
af) für den gerade verarbeiteten abgelegten Fingerabdruck und
-
(b) für jedes generalisierte spezifische Suchmerkmal s mit den
Koordinaten (xs, ys) und dem Pre-Rotationswinkel Ak, das in der
Reihe af des Suchpuffers lokalisiert ist:
-
1) Berechnen der Translation (X, Y), die erforderlich ist, (xs,
ys) auf (xf, yf) zu überlagern;
-
2) Inkrementieren von zwei Zählereinrichtungen (Einrichtungen
131 in Fig. 23) entsprechend:
-
(i) dem Pre-Rotationswinkel Ak und (ii) der Translation
(X, Y);
-
3) falls erforderlich, Nachstellen des Maximalwerts in anderen
Zählereinrichtungen (Einrichtungeil 135 in Fig. 23) und
seiner entsprechenden 'Koordinaten' (A, X, Y) für die häufigste
vorgenommene Transformation für jede der zwei Reihen von
Zählereinrichtungen (131);
(b2) Aktivieren des Signales für das "Laufende".
-
Das 'Laufende'-Signal wird aktiviert jedesmal, wenn ein abgelegter
Abdrdruck auf diese Weise verarbeitet wird. Das 'Laufende'-Signal
ermöglicht es dem Computer, die in den Zähleinrichtungstabellen
abgelegten Maximalwerte und ihre Koordinaten (Amax, Xmas,
Ymas) zu lesen, um eine Zahl zu berechnen, die von den in den
Zähleinrichtungen für ähnliche Transformationen abgelegten
Werten abhängt, d.h. für Koordinaten (A, X, Y), die geringfügig
voneinander abweichen. Nachdem alle abgelegten Abdrücke oder
Ablageabdruckpuffereinrichtungen 83a verarbeitet worden sind, wird
der Vergleich der Suchabdruckpufferdaten mit den Daten der
Ablageabdruckpuffereinrichtting 83b begonnen, um die vorhergehen den
Operationen zu initiieren und zu vervollständigen, während die
Ablageabdruckpuffereinrichtung 83a mit neuen abgelegten
Fingerabdrücken geladen wird, usw.
-
Alle diese Operationen werden verständlich aus den folgenden
Beschreibungen der Komponenten der Hardwarevergleichseinrichtung,
unter Zugrundelegung der Fig. 19 bis 23, während Fig. 18 einen
generellen Überblick über die Vergleichseinrichtung gibt.
II.2.5. Beschieibung der Ablagedatenmanagementeinheit.
-
Fig. 19 zeigt, daß die Ablagedatenmanagementeinheit 31
Ablageabdruckpuffereinrichtungen 83a und 83b aufweist, bei denen es sich
um Speichereinrichtungen mit direktem Zugriff handeln kann, die
in zwei unterschiedlichen Weisen operieren. Die über 'Ladungs'-
Steuerleitung 14 getriebene Ablageabdruckpuffereinrichtung 83b
wird über Datenleitung 32b geladen. Zur gleichen Zeit wird die
Ablageabdruckpuffereinrichtung 83a, gesteuert über
'Lauf'-Steuerlinie 16, wird in) "Vergleichs"-Modus betrieben. Es soll
festgehalten werden, daß aus Übersichtlichkeitsgründen in der Zeichnung
Signalleitungen nicht doppelt dargestellt sind, obwohl sie alle
aufweisen:
ein Set für Ablageabdruckpuffereinrichtung 83a und ein Set
für Ablageabdruckpuffereinrichtung 83b. Falls vorhanden, erfolgt
die Datenausgabe über Leitungen 35-39 von der
Ablageabdruckpuffereinrichtung, die im "Run"-Modus ist.
-
Eine grundsätzliche Aufgabe der Ablagedatenmanagementeinheit 31
ist, die Translationsberechnungseinheit 51 in Fig. 18 mit den
Koordinaten der abgelegten spezifischen Merkmale zu versorgen. Mit
anderen Worten handelt es sich um eine adressenerzeugende
Einrichtung für Ablageabdruckdaten, die von Steuerleitungen 16, 17,
33 und 18 angesprochen wird.
-
Typischerweise werden Daten spezifischer Merkmale von 128
unterschiedlichen abgelegten Fingerabdrücken von einer
Massenspeichereinrichtung in generalisierte Ablageabdruckpuffereinrichtungen
83a geladen. Die Steuerleitung 18 arbeitet, um die Adressierung
des ersten spezifischen Merkmales des abgelegten Fingerabdruckes
8, zu erzeugen, der gerade mit dem Suchfingerabdruck verglichen
wird.
-
Der Übergang von einem spezifischen Merkmal eines abgelegten
Abdruckes zu dem nächsten wird über
Inkrementalzählereinrichtungen 81 bewerkstelligt. Für das Ergebnis des
Inkrementierungsvorganges (über Leitung 87) und der Start-Adresse (über Leitung 18)
representative Steuersignale werden zu Addiereinrichtungen 82
geleitet, die auf Leitung 88 die Adressierung des gegenwärtigen
spezifischen Merkmales in der generalisierten Ablagepuffereinrichtung
83a erzeugt.
-
Der Zähleinrichtung 81 für spezifische Merkmale abgelegter
Abdrücke wird ein Wertwechsel (Leitung 87) über ein Steuersignal auf
der "Inkremental"-Leitung 86 gestattet. Das Steuersignal auf
Leitung 86 wird über eine logische Schaltkreiseinrichtung 80 erzeugt,
die über drei Steuerleitungen 16, 17 und 33 versorgt wird.
Steuerleitung 16 ist die 'Run'-Leitung. Steuerleitung 17 ist eine Uhr, die
zur Synchronisation der Berechnungen der unterschiedlichen Teile
der Hardwarevergleichseinrichtung verwendet wird. Steuerleitung
33 ist von Leitung 43 (Fig. 18) abgeleitet, die ein Ausgang der
Suchdatenmanagementeinheit 41 ist. Die Steuerleitung 33 wird zur
Angabe verwendet, ob oder ob nicht die aktuelle generalisierte
Tabelle für spezifische Suchmerkmale einen 'leer'-Wert enthält. Falls
"ja", bedeutet dies, daß das akt tielle abgelegte spezifische Merkmal
mit allen nicht 'leer'-Werten der generalisierten spezifischen
Suchmerkmale aus der aktuellen Reihe der Suchdateninanagementeinheit
41 verglichen wurde. Daher wird die Zähleinrichtung 81 für
spezifische Merkmale abgelegter Abdrücke nur dann verstellt, wenn und
nur wenn die Steuersignale auf Steuerleitungen 16, 17 und 33
gleichzeitig angeben: Laufmodus und Uhrpuls und Ende einer
Reihe auf der Suchdatenmanagementeinheit 41, respektive.
-
Die Zählereinrichtung 81 (Fig. 19) für spezifische Merkmale
abgelegter Abdrücke wird auch durch Steuerleitung 15 angesprochen;
diese Leitung erzeugt ein "Reset"-Signal (Fig. 19), das dazu dient,
die Zählereinrichtung auf Null zu setzen. Die Resetfunktion wird
einmal durchgeführt vor der Inituerung des Vergleiches des
aktuellen abgelegten Fingerabdruckes gegen den aktuellen
Suchfingerabdruck, dergestalt, daß die Ausgabe 88 der
Addierschaltkreiseinrichtung 82 gleich ist einer Start-Adresse plus Null. Der erste Wert
von Leitung 88 ist daher gleich der Adresse des ersten spezifischen
Merkmales für den aktuellen abgelegten Abdruck.
-
Der Inhalt der Ablageabdruckpuffereinrichtung 83a bei der durch
Leitung 88 angegebenen Adresse wird über Leitungen 35, 36, 37,
38, 39 und 90 ausgegeben, die die für das spezifische Merkmal des
aktuellen abgelegten Abdruckes vorhandenen Daten übermitteln.
Leitungen 35, 36 und 37 transportieren die drei Koordinaten (af,
xf, yf), wie weiter oben beschrieben, während die Leitungen 38
und 39 den "Typ" tf und die "Qualität" qf transportieren. Der
"Typ" ist ein binäres Informationssignal, das angibt, ob das
spezifische Merkmal an der Hand entweder eine Verzweigung oder
das Ende einer Kammlinie ist, während die "Qualität" eine Zahl ist,
die die Deutlichkeit des Fingerabdruckes in dem Bereich, in dem
das spezifische Merkmal lokalisiert ist, repräsentiert. Die Qualität
ist damit verknüpft mit der Wahrscheinlichkeit, daß das kodierte
spezifische Merkmal ein richtiges spezifisches Merkmal ist oder
nicht. Die Zahl, die die Qualität des spezifischen Merkmales
angibt, liegt in einem Bereich zwischen 0 und N, wobei eine
Qualität von "qf" gleich 0 die höchste Klarheit bedeutet; je größer
der Wert von qf wird, desto schlechter wird die Klarheit des
Fingerabdruckes in dem Bereich des zu betrachtenden spezifischen
Merkmales und desto kleiner wird die Wahrscheinlichkeit, daß das
kodierte spezifische Merkmal ein richtiges oder aktuelles
spezifisches Merkmal ist. Bevorzugt wird N = 63 gewählt, d.h. die
Information über die Qualität qf hat 64 unterscliiedliche mögliche
Werte.
-
Wieder zurückkommend zu Fig. 19, übermittelt die Leitung 90
einen Flagbit, der angibt, ob das aktuelle spezifische Merkmal des
Ablageabdruckes das letzte ist oder nicht. Bei gleichzeitiger Angabe
des Endes der aktuellen Daten (über Leitung 90) der spezifischen
Ablageabdruckmerkmale und Angabe des Endes einer Reihe aus
der Suchabdruckdatenmanagementeinheit (über Leitung 89), gibt
die logische Schaltkreiseinrichtung 85 ein "Ende des aktuellen
Laufs"-Signal über Leitung 34, um Einrichtung 11 zu steuern (Fig.
18). Das 'Laufende'-Signal wird aktiviert, wenn und nur wenn die
Steuersignale auf Leitungen 89 und 90 gleichzeitig jeweils das Ende
einer Reihe und letztes spezifisches Ablagemerkmal anzeigen.
II.2.6. Beschreibung der Suchabdruckdatenmanagementeinheit.
-
Bezugnehmend auf Fig. 20, weist die
Suchabdruckdatenmanagementeinheit 41 eine generalisierte Suchabdruckpuffereinrichtung
103 auf, wie sie unter Bezug auf Fig. 17 beschrieben wurde, die
eine Speichereinrichtung mit direktem Zugriff aufweist und eine
adressenerzeugende Einrichtung, die logische
Schaltkreiseinrichtungen 100, 101 und Spaltenzählereinrichtungen 102 aufweist. Die
adressenerzeugende Einrichtung wird durch Steuerleitungen 19, 20
und 21, Datenleitung 35 (die ein Atisgang der
Ablagedatenmanagementeinheit 31, wie in Fig. 18 gezeigt ist) und eine interne
Steuerleitung 109 gesteuert.
-
Eine grundsätzliche Aufgabe der adressenerzeugenden Einrichtung
ist, die Adressen für alle generalisierten spezifischen Suchmerkmale
zu erzeugen, die in einer Reihe einer generalisierten
Suchpuffereinrichtung 103 angeordnet sind, wobei die Reihennummer gleich dem
Winkel af des aktuellen spezifischen Ablageabdruckmerkmals ist.
Dies wird erreicht über Verknüpfung des über Datenleitung 35
gelieferten Winkelwertes und der Atisgabe 107 der
Spaltenzählereinrichtung 102 und ergibt die volle Adresse 108.
-
Ähnlich im Aufbau zu der zuvor beschriebenen Zählereinrichtung
81 für spezifische Ablageabdrucktnerkniale (Fig. 19) wird in der
Ablagedatenmanagementeinheit 31 eine Spaltenzählereinrichtung
102 von zwei Steuerleitungen 105, 106 angesprochen. Leitung 105
ist die "Inkrement"-Steuerleitung, die es der Zählereinrichtung
ermöglicht, zu ihrer Ausgabe 107 eins dazuzuzählen, während die
Leitung 106 die "Reset"-Steuerleitung ist, die die Ausgabe 107 auf
einen Nullwert einstellt.
-
Die "Inkrement"-Leitung 105 wird über die Antwort der logischen
Schaltkreiseinrichtung 100 auf Signale der Steuerleitungen 19 und
20 versorgt. Steuerleitung 19 ist die "Run"-Steuerleitung,
entsprechend der "Run"-Steuerleitung 16 für die
Ablagedatenmanagementeinheit 31, während die Steuerleitung 20 eine
"Uhr"-Steuerleitung ist. Die "Uhr"-Steuerleitung 20 hat die gleiche Periode wie
"Uhr"-Steuerleitung 17, weiter oben beschrieben in Verbindung mit
Einheit 31; zwischen den beiden Uhrsignalen ist jedoch ein Abstand
erforderlich, um die Tatsache zu berücksichtigen, daß das Signal 35
eine Ausgabe der Ablagedatenmanagementheinheit 31 ist, während
Steuerleitungen 19 und 20 Ausgabesignale direkt von der
Steuereinleitung 11 transportieren (Fig. 18). Die
Spaltenzählereinrichtung 102 wird über die Inkrementleitung 105 schrittweise
verstellt, wenn und nur wenn die Steuersignale über die Leitungen 19
und 20 gleichzeitig jeweils den Run-Modus und Uhrpuls anzeigen.
-
Die 'Reset'-Leitung 106 wird erzeugt über logische
Schaltkreiseinrichtungen 101 von Steuerleitungen 21 und 109. Steuerleitung 21 ist
eine "Beginn des Laufes"-Steuerleitung, ähnlich der Steuerleitung
15 der Einheit 31. Die Leitung 21 wird durch Steuereinrichtungen
11 einmal vor jedem Vergleich des Suchabdruckes und jedes der
abgelegten Abdrücke aktiviert. Die Leitung 109 transportiert ein
Steuersignal, das innerhalb der
Suchabdruckdatenmanagementeinheit 41 durch eine "ungültige Werte"-Detektiereinrichtung
104 erzeugt wird, wie weiter unten im Detail beschrieben ist. Das
Steuersignal auf Leitung 109 ist die 'Ende einer Reihe'-Anzeige.
Spaltenzählereinrichtung 102 wird resettet, wenn und nur wenn die
Steuersignale über Leitungen 21 und 109 anzeigen: Beginn eines
Laufes oder Ende einer Reihe.
-
Die unterschiedlichen Effekte der 'Ende einer Reihe'-Anzeige auf
die Zähleinrichtung 81 (verwendet in der
Ablagedatenmanagementeinheit 31) für abgelegte spezifische Merkmale und
Spaltenzählereinrichtung 102 (verwendet in der
Suchdatenmanagementeinheit 41) sind wie folgt. Da die 'Ende einer Reihe'-Anzeige
bedeutet, daß das spezifische Merkmal des aktuellen abgelegten
Abdruckes mit allen eventuell übereinstimmenden spezifischen Merkmalen
des Suchabdruckes verglichen worden ist, impliziert das Ende einer
Reihe-Signal die Notwendigkeit für die Inkrementierung der
Zähleinrichtung 81 für spezifische Ablagemerkmale, um die Daten (a,
x, y, t, q) für das spezifische Merkmal des nächsten abgelegten
Abdruckes auszugeben, während weiterhin die Notwendigkeit für ein
Reset der Spaltenzähleinrichtung 102 impliziert wird, um eine
Adresse 108 entspreclieiid der ersten Spalte der generalisierten
Suchabdruckpuffereinrichtung 103 zu erzeugen und dabei den
Vergleichsprozeß im Hinblick auf die spezifischen Merkmale des
nächsten Ablageabdruckes mit den Suchabdruckdaten in der
Puffereinrichtung 103 bei der Reihennummer, die gleich dem Winkel af des
nächsten spezifischen Ablageabdruckmerkmales ist, zu
wiederholen.
-
Der Inhalt der generalisierten Suchabdruckpuffereinrichtung 103
bei der durch Leitung 108 angezeigten Adresse wird über Leitungen
44, 45, 46, 47 und 48 ausgegeben, die die für das aktuelle
generalisierte spezifische Suchmerkmal erhältlichen Daten übermitteln. Die
Leitungen 45 und 46 transportieren den "Typ" ts und die "Qualität"
qs. Die Leitung 44 transportiert den Wert A des Winkels, um den
die Referenzachsen des Suchabdruckes rotiert wurden, um die
neuen Koordinaten (x's, y's) des aktuellen generalisierten
spezifischen Merkmales zu erhalten. Um den "Hardware"-Aufbau der
Translationsberechnungseinheit 51 (Fig. 18) zu vereinfachen,
können die negativen Werte (-x's, -y's) dieser Koordinaten in einer
generalisierten Suchabdruckpuffereinrichtung 103 anstelle voll (x's,
y's) gespeichert werden. Die gespeicherten Werte werden über
Datenleitungen 47 und 48 transportiert. Wie in Fig. 18 dargestellt,
stellen Datenleitungen 47 und 48 eine Eingabe für die
Translationsberechnungseinheit 51 dar, wie es auch die Ausgaheleitungen 36
und 37 sind, die xf- und yf-Daten von der
Ablagedatenmanagementeinheit 31 transportieren. Die Datenleitungen 45 und 46 und
38 und 39 von der Einheit 31, die die "Typ"- und "Qualitäts"-Daten
der jeweiligen spezifischen Merkmale des Such- und abgelegten
Abdruckes transportieren, sind an Adressier- und
Kontributionseinheiten 61a und 61b angeschlossen, mit denen Datenleitung 44, die
die Winkeldaten A transportiert, auch verknüpft ist.
-
Bevor man sich nun der Beschreibung der Detektiereinrichtung 104
für ungültige Werte zuwendet, wird hervorgehoben, daß, wenn die
Koordinaten (x, y) eines Vektors innerhalb eines gegebenen
Bereiches von x- und y-Werten gespeichert werden, die Koordinaten (x',
y') der Abbildung desselben Vektors dann nach einer gegebenen
Rotation in einem größeren Bereich von x- und y-Werten
gespeichert werden müssen, z.B. wenn die ursprünglichen Koordinaten
(x, y) in dem Bereich [-100, + 100] liegen, d.h. -100 ≤ x ≤ 100
-100 ≤ y ≤ 100, dann können die Koordinaten (x', y') nach einer
Pre-Rotation außerhalb des Bereiches [-100, + 100] fallen. Zum
Beispiel, wenn man x = y = +100 wählt und den Vektor um PI/4
verdreht, so erhält man x' = 141, y' = 0. Es zeigt sich, daß dies
der schlimmste Fall ist, d.h. der Bereich [-141, + 141] ist
ausreichend, um alle möglichen Werte (x', y') abzudecken, wie auch
immer der Pre-Rotationswinkel gewählt wird, wenn x und y in dem
Bereich [-100, + 100] liegen. Beispielsweise ist es unmöglich, x'
= y' = 200 zu erhalten für x, y in einem Bereich [-100, + 100].
-
Bevorzugt werden die Koordinatenwerte (-x's, -y's) der
spezifischen Suchmerkmale, die über Datenleitungen 47 und 48
transportiert werden, in einem Bereich abgespeichertn, der mindestens
zweimal so groß ist, wie der Bereich, in dem die Koordinatenwerte
(xf, yf) von abgelegten Abdrücken, die über Datenleitungen 36 und
37 transportiert werden, gespeichert sind. In einer Ausgestaltung
der vorliegenden Erfindung können die Koordinaten in der
Ablagepuffereinrichtung 83a und 83b in 8 Bits gespeichert werden, um
256 unterschiedliche Werte zu ermöglichen, während die
x-y-Koordinaten für den Suchabdruckpuffer 103 auf 9 Bits gespeichert
werden können, um 512 uuterschiedliche Werte zu ermöglichen. Wie
bereits erwähnt, sind einige dieser 512 Werte "unmögliche" oder
"ungültige" Werte. Dieses Merkmal wird verwendet, um das, was
zuvor (z.B. Tabellen C, D supra) als "leer"-Werte bezeichnet
wurde, zu repräsentieren.
-
Nimmt man nun Bezug auf Fig. 20, so sind Datenleitungen 47 und
48 mit einer Detektiereinrichtung 104 für ungültige Werte
verbunden, deren Ausgabe 43 (die "Reihenende"-Anzeige) zu der
Ablagedatenmanagementeinheit 31 (über Leitung 33) geschickt wird zu
den Adressier- und Kontributionsberechnungseinheiten 61a und 61b
(über Leitung 63) und zu der logischen Schaltkreiseinrichtung 101
der Suchpuffermanagementeinlieit 41 (über Leitung 109).
-
Es soll festgehalten werden, daß Fig. 20 die
Suchdatenmanagementeinheit 41 in ihrem Betriebsinodus zeigt. Vor Start des Laufes
wird die generalisierte Suchabdruckpuffereinrichtung 103 mit
Suchabdruckdaten aus dem Computerspeicher geladen, bevor die Suche
begonnen wird. Dies wird erreicht durch Aktivierung der
Steuerleitung 22, genannt die "Ladungs"-Steuerleitung, während die
Datenleitung 42 dazu verwendet wird, die zu ladenden Daten in die
generalisierte Suchabdruckpuffereinrichtung 103 zu transportieren.
II.2.7. Beschreibung der Translationsberechnungseinheit.
-
Fig. 21 zeigt eine Translationsberechnungseinheit 51 mit zwei
Addierschaltkreiseinrichtungen 110, 111 mit vier
Dateneingabeleitungen
und zwei Datenausgabeleitungen. Zwei Eingabeleitungen 37,
37 sind Datenausgaben von der Ablagedatenmanagementeinheit 31
(Fig. 19), während zwei Eingabeleitungen 47 und 48
Datenausgaben von der Suchdatenmanagementeinheit 41 (Fig. 20) sind.
-
Insbesondere die Datenleitungen 36, 37 transportieren die
Koordinaten (sf, yf) für das aktuelle spezifische abgelegte Merkmal,
während die Datenleitungen 47 und 48 die negativen Werte (-x's, -y's)
der Koordinaten für das aktuelle pre-rotierte generalisierte spezielle
Suchmerkmal tragen. Die zur Überlagerung des spezifischen
Suchmerkmals (x's, y's) auf das spezifische Ablagemerkmal (xf, yf)
erforderliche Translation weist die Koordinaten (X, Y) auf, die
erhalten werden durch Anlegen der vier Datenleitungen an jeweils
zwei Addiereinrichtungen, x-Addierschaltkreiseinrichtung 110 und
y-Addierschaltkreiseinrichtung 111. Die
Addierschaltkreiseinrichtung 110, Leitung 52, transportiert die Summe X der zwei
Eingabeleitungen 47 und 36. Die Ausgabe der
y-Addierschaltkreiseinrichtung 111, Leitung 53, transportiert die Summe Y der beiden
Eingabeleitungen 48 und 37.
-
Um einen Überlauf bei den Berechnungen zu vermeiden, bewegen
sich die von den Ausgabedatenleitungen 52 und 53 transportierten
X- und Y-Werte in einem größeren Bereich als die zur Speicherung
der vier Eingabewerte verwendeten. In der
Suchdatenberechnungseinheit 41 sind die Leitungen 36 und 37 typischerweise 8 Bit
groß (was 256 unterschiedliche Werte erlaubt), während die
Leitungen 47 und 48 9 Bits groß sind (was 512 unterschiedliche Werte
ermöglicht); die Ausgabedatenleitungen 52 und 53 sind mit 10 Bits
ausgelegt (was 1024 unterschiedliche Werte ermöglicht).
II.2.8. Beschreibung der Adressier- und
Kontributionsberechnungseinheiten.
-
Fig. 18 zeigt zwei identische Adressier- und Kontributionseinheiten
61a und 61b, die durch dieselben Steuerleitungen 23, 24, 62 und 63
betrieben werden und über dieselben Dateneingabeleitungen 44, 45,
46, 52, 53, 38 und 39 versorgt werden. Jede der Einheiten 61(a),
61(b) erzeugt jeweils eine Steuerleitung 64(a), 64(b) und vier
Datenleitungen 65a-68a, 65b-68b, die jeweils Eingabeleitungen für
Tabellenzählmanagementeinheiten 71a, 71b sind, wie weiter unten
im Detail beschrieben. Jeder Adressier- und
Kontributionsberechnungseinheit 61a, 61b ist eine eigene
Tabellenzählmanagementeinheit 71a, 71b zugeordnet. Die Eingabeleitungen für die Einheiten
61a und 61b haben dieselben Eingaben, während ähnliche
Ausgabeleitungen von den Einheiten 61a und 61b unterschiedliche Ausgaben
haben, wie mehr im Detail weiter unten beschrieben wird.
-
Geht man nun über zu Fig. 22, so ist dort eine der beiden Einheiten
61a dargestellt. Wegen der zur Speicherung der Koordinaten für die
spezifischen Such- und Ablagemerkmale verwendeten Bereiche ist
die Anzahl der unterschiedlichen Translationen, die von der
Translationsberechnungseinheit 51 ausgegeben werden können, sehr
groß. Eine der Aufgaben der Einheit 61a ist, den Wert A des Pre-
Rotationswinkels und die Werte (X, Y) der Translation in kleineren
Bereichen zu projezieren, um die Anzahl der erlörderlichen Zähler
in der zugeordneten Tabellenzählmanagementeinheit 71a zu
reduzieren. Dies wird erreicht mittels Translationstabelleneinrichtungen
120 für X, 121 für Y und 122 for A. Diese Translationstabellen
können in PROMs (Programmable Read Only Memory) gespeichert
werden.
-
X-Tabelleneinrichtung 120 empfängt zwei Eingabeleitungen,
Datenleitung 52, die die X-Koordinate der Translation für die
aktuellen spezifischen Ablage- und Suchmerkmale transportiert, die eine
Ausgabe der Translationsberechnungseinheit 51 ist und
Datenleitung 24 von Steuereinrielitung 11, die die "xy-Modus"-Leitung ist.
Die "xy-Modus"-Leitung ermöglicht die Selektierung
unterschiedlicher, in der X-Translationstabelle 120 abgelegter Funktionen. Diese
Funktionen schließen die Auswahl der Anzahl von Bits (innerhalb
vordefinierter Werte) ein, die verwendet werden können, um den
von der Datenleitung 65a transportierten Ausgabewert x zu
speichern. Typischerweise werden 4 oder 5 Bits, das entspricht 16 oder
32 unterschiedlichen Werten, gewählt. Diese Funktionen schließen
weiterhin die Bestimmung ein, ob oder ob nicht einige
Eingabewerte
ungültig sind, z.B. Translationen größer als die halbe Größe
des Fingerabdruckabbildes. Diese "Überlauf"-Bedingung wird
durch eine x-Überlauf"-Leitung 125 transportiert.
-
Y-Tabelleneinrichtung 121 hat denselben Aufbau und dieselbe
Funktionsweise wie die X-Tabelleneinrichtung 120. Ihre Eingaben
sind "xy-Modus"-Leitung 24 und Leitung 53, die den von der
Translationsberechnungseinheit 51 ausgegebenen X-Wert
transportieren. Aus diesen Eingaben erzeugt die y-Tabelle 121 die zweite
Koordinate y für die Translation, transportiert über Datenleitung
66a, und die 'y-Überlauf'-Leitung 126.
-
"A"-Tabelleneinrichtung 122 ist sehr ähnlich zu den
X-Tabellen- 120 und Y-Tabelleneinrichtungen 121. Sie gibt über Datenleitung
67a den Pre-Rotationswinkel "a" ("a" = Ak) des Wertes A aus,
transportiert über Datenleitung 44 und Steuerleitung 23, die die 'a-
Modus'-Leitung ist. Die 'a-Modus'-Leitung ermöglicht die
Wiedergabe der Winkel auf 5 oder 6 Bits, was 32 oder 64
unterschiedlichen Werten entspricht. Für die A-Tabelleneinrichtung 122 ist
keine säberlauf'-Leitung vorgesehen, da generalisierte spezifische
Merkmale entsprechend der ung~ltigen Pre-Rotationswinkelwerte
nicht in der generalisierten Suchabdruckpuffereinrichtung 103
gespeichert sind. Sie wurden vielmehr durch "leer"-Werte ersetzt, um
unnötige Vergleiche zu vermeiden und dadurch die Geschwindigkeit
der Operation der Vergleichseinrichtung zu erhöhen.
-
Um nicht ungültige Translationen berücksichtigen zu müssen, gibt
Einheit 61a auf Leitung 64a ein 'ungültiges Wert'-Signal aus, das
durch eine logische Schaltkreiseinrichtung 124 von zwei externen
Steuerleitungen 62 und 63 und zwei internen Steuerleitungen 125
und 126 erzeugt wird. Unter Bezug auf Fig. 18 ist Leitung 63 das
"Reihenende"-Signal der Suchdatenmanagementeinheit 41. Dieses
Signal zeigt ah, daß die aktuellen generalisierten spezifischen
Suchmerkmale ein 'leer'-Wert ist, d.h. ungültige Daten. Leitung 62
ist das 'Laufende'-Signal, das durch Ablagedatenmanagekmenteinheit
31 erzeugt wird. Die Leitungen 125 und 126 sind säberlauf'-Leio
tungen, die von Translationstabelleneinrichtungen 120 und 121
kommen. Die logische Schaltkreiseinrichtung 124 gestattet das
'ungültige Wert'-Signal 64a, wenn und nur, wenn die Steuersignale
auf den Leitungen 62, 63, 125 und 126 anzeigen: Laufende oder
Ende einer Reihe oder x-Überlauf oder y-Überlauf.
-
Fig. 22 zeigt, daß zusätzlich zu den Leitungen 65a, 66a und 67a,
die die aktuelle Pre-Rotation und Translation repräsentieren, die
Einheit 61a eine weitere Ausgabeleitung 68a erzeugt. Diese Leitung
transportiert die Kontribution, bezeichnet mit "c" in Verbindung
mit der aktuellen Pre-Rotation und Translation. Die Kontribution ist
eine Ausgabe von "c" -Tabelleneinrichtungen 123 entsprechend der
von den Dateneingabeleitungen 45, 46, 38 und 39 transportierten
Werte. Die Leitungen 45 und 46 sind Ausgaben der
Suchdatenmanagementeinheit 41 und tragen den "Typ" und die
"Qualität" für die aktuellen spezifischen Suchmerkmale. Die
Leitungen 38 und 39 sind Ausgaben der Datenmanagementeinheit 31
und transportieren die gleichen Daten für die aktuellen spezifischen
Ablagemerkmale.
-
Es ist unter Fingerabdrucktechnikern gut bekannt, daß infolge von
Über- oder Unterfärbung der Typ eines spezifischen Merkmales in
demselben Fingerabdruck von einem Abdruck zu dem nächsten
wechseln kann; die meisten der spezifischen Merkmale in
demselben Fingerabdruck behalten jedoch ihren Typ (Verzweigung oder
Ende einer Linie) von einem Abdruck zu dem nächsten. Daher kann
gesagt werden, daß, wenn zwei spezifische Merkmale bezüglich
Lokalisierung, Winkel und Typ übereinstimmen, die
Wahrscheinlichkeit, daß sie dieselben Abdrücke sind, größer ist, als wenn sie
lediglich bezüglich Lokalisierung und Winkel übereinstimmen.
-
Die "c"-Tabelleneinrichtung 123 enthält folgendermaßen Daten
dergestalt, daß die "Kontribution" für zwei spezifische Merkmale
desselben Types größer ist als die "Kontribution" bei zwei
spezifischen Merkmalen von unterschiedlidien Typen. Ähnlich wird der
"Kontribution" ein Bonuswert gegeben, wenn eines der beiden
spezifischen Merkmale von guter "Qualität" ist. Kein solcher Bonus
wird gegeben, wenn beide spezifische Merkmale von schlechter
Qualität sind.
-
Wie oben im Detail beschrieben, wird die Qualität durch eine Zahl
in einem Bereich von 0 bis N wiedergegeben. In der bevorzugten
Ausgestaltung entspricht N gleich 63 und ein spezifisches Merkmal
wird als gutes spezifisches Merkmal behandelt, wenn ihm eine
Qualitätszahl q ≤ 7 zugeordnet wird. Somit, wenn qs und qf die
Zahlen für die Qualitäten des aktuellen Suchabdruckmerkmales und
des aktuellen spezifischen Ablageabdruckmerkmales respektive
sind, wird der Bonus für gute Qualität nach folgenden Regeln
berechnet, die einen Bonus für gute Qualität hinzufügen:
-
(1) wenn qs < 8 oder qs < 8, dann ist der Bonus 1 und
-
(2) wenn qs > 8 und qf > 8, dann ist der Bonus 0.
-
Zusammenfassend ist die "c"-Tabelleneinrichtung 123 so aufgebaut
und ausgelegt, daß die Kontribution "c" einem Standardwert
entspricht (z.B. 5) plus einem Bonuswert, falls vorhanden, für
gewöhnliche Typen (z.B. 1) plus einem Bonuswert, falls vorhanden,
für gute Qualität (z.B. 1).
II.2.9. Beschreibung der Tabellenzählmanagementeinheiten
(Einheiten 71a, 71b in Fig. 18).
-
Die Aufgabe einer Tabellenzählmanagementeinheit 71, dargestellt
in Fig. 23, ist, einen raschen Zugriff auf die Translation zu
ermöglichen, die in Verbindung mit einer vorgegebenen Pre-Rotation am
häufigsten in einer Übereinstimmung zwischen einem spezifischen
Suchmerkmal und einem spezifischen abgelegten Merkmal
resultiert. Dementsprechend erfolgt ein Updaten von zwei Tabellen
durch die Einheit 71 nach jedem verarbeiteten Paar spezifischer
Merkmale, das ein spezifisches Such- und ein spezifisches
Ablagemerkmal aufweist. Diese Tabellen sind Zählertabelleneinrichtungen
131 und "max"-Tabelleneinrichtungen 135, die einen Speicher mit
direktem Zugriff aufweisen.
-
Die Zählertabelleneinrichtung 131 enthält eine
Zählerschaltkreiseinrichtung für jede unterschiedliche durchgeführte Transformation,
z.B. Pre-Rotation und Translation, wie zuvor beschrieben,
wiedergegeben durch das Wertetriplet (x, y, a), transportiert durch
Datenleitungen 65, 66 tind 67 und Ausgabe von der zugeordneten
Adressier- und Kontributionsberechnungseinheit; jede
Zählerschaltkreiseinrichtung ist mit einem Triplet (x, y, a) verbunden.
-
"Max"-Tabelleneinrichtung 135 enthält die Daten in Verbindung
mit dem aktuellen Maximalgehalt der Zählertabelleneinrichtung
131, d.h. für alle Paare von spezifischen Such- und
Ablagemerkmalen, die bereits verarbeitet worden sind. Die
"Max"-Tabelleneinrichtung 135 enthält am Ende des Laufes den Maximalgehalt der
Zählertabelleneinrichtung 131.
-
Die Zählertabelleneinrichtung 131 wird durch drei unterschiedliche
Steuerleitungen 27, 28 und 136 betrieben, die unterschiedlichen
Funktionsmodi aufweisen. Die Steuerleitung 28 ist eine "Reset"-
Leitung, die die Einstellung eines Ausgangs 0-Wertes in allen
unterschiedlichen Zählerschaltkreiseinrichtungen erlaubt. Diese
Leitung wird einmal aktiviert vor der Initiierung eines Laufes. Die
Steuerleitung 27 ist die "Lese"-Leitung, die nach dem Ende des
Laufes verwendet wird, um es dem Computer zu ermöglichen, die
Inhalte der Zählertabellen 131 über Datenleitungen 72 zu lesen, um
die Vergleichszahlen zu berechnen. Die Steuerleitung 136 ist die
"Updateermöglichungs"-Leitung, die von der logischen
Schaltkreiseinrichtung 130 generiert wird als Aufwort zu Steuersignalen der
Steuerleitungen 25, 26 und 64. Die Leitungen 25 und 26, erzeugt
durch Steuereinrichtung 11 (Fig. 18), sind jeweils die
"Run"-Leitung und die "Uhr"-Leitung, die dieselben sind wie die "Run" und
"Uhr"-Leitungen, bereits beschrieben unter Bezug auf die
Ablagedatenmanagementeinheit 31 (Fig. 19) und
Suchdatenmanagementeinheit 41 (Fig. 20). Die Leitung 64, die eine Ausgabe der
verbundenen Adressier- und Kontributionsberechnungseinheiten
61(a), 61(b) (Fig. 18) ist, zeigt an, ob die von den Eingabeleitungen
65, 66 und 67 transportierten Daten gültig sind oder nicht. Die
Steuerleitung 136 ermöglicht das Updaten der
Zählertabelleneinrichtung 131, wenn und nur wenn die Steuersignale auf den
Steuerleitungen 25, 26 und 64 gleichzeitig anzeigen: Laufmodus und
Uhrpuls und gültige Daten.
-
In dem Run-Modus gibt die Zählertabelleneinrichtung 131 auf ihre
"Daten aus"-Leitung 139 den aktuellen Inhalt der
Zählereinrichtung, verknüpft mit dem Wertetriplet (x, y, a) aus. Dies wird
erreicht über Verknüpfung dieser Werte und Behandlung von ihnen
als eine Adresse für die Zählertabelleneinrichtung 131. Die
Addierschaltkreiseinrichtung 132 wird eingesetzt, um die Summe 140 des
aktuellen Zählereinrichtungswertes 139 zu berechnen und die
aktueile Kontribution "c", geliefert über Datenleitung 68. Die Summe
wird abgeleitet zu Leitung 141, die die 'Daten in'-Leitung für
Zählertabelleneinrichtung 131 ist. Wenn die Steuerleitung 136 es
ermöglicht, erfolgt ein Updaten des Inhalts der aktuellen
Zählereinrichtung mit dem von Leitung 149 transportierten Wert.
-
Die Ausgabe 140 der Addiereinrichtung 132 wird zu einer
Vergleichsschaltkreiseinrichtung 133 geleitet, die auch über Leitung
146 den aktuellen Maximumwert gespeichert in der
"max"-Tabelleneinrichtung 135 erhält. Die Ausgabe 147 der
Vergleichsschaltkreiseinrichtung 133 und eine Ableitung 137 von der
'Updateermöglichungs'-Leitung 136, die das Updaten der
Zählertabelleneinrichtung 131 steuert, werden zu einer logischen
Schaltkreiseinrichtung 134 geleitet, um ein weiteres 'Updateermöglichungs'-
Signal zur ausschließlichen Verwendung durch die
"max"-Tabelleneinrichtung 135 zu generieren. Das Updaten der "max"-
Tabelleneinrichtung 135 wird ermöglicht, wenn und nur wenn die
Steuersignale auf den Leitungen 137 tind 147 gleichzeitig anzeigen:
Ermögliche ein Updaten der Zählertabelleneinrichtung 131, und der
Wert transportiert auf der Eingabeleitung 140 des Komparators 133
ist größer als der Wert, der auf der Eingabeleitung 146 transportiert
wird.
-
Wenn die "Updateermöglichungs"-Leitung 148 es erlaubt, erfolgt
ein gleichtzeitiges Updaten der vier Speicherzellen, die die max-
Tabelleneinrichtung 135 darstellen, mit den Daten auf der Leitung
142, abgeleitet von der Ausgabe 140 der
Addierschaltkreiseinrichtung 132 (der nette Wert des Maximuminhaltes der
Zählertabelleneinrichtung 131) und Leitungen 143, 144 und 145, erhalten
von den Eingabedatenleitungen 65, 66 und 67 (das Triplet der
Werte (x, y, a), die die aktuelle Pre-Rotation und Translation
repräsentieren).
-
Die "Max"-Tabelleneinrichtung 135 spricht auch auf
Steuerleitungen 138 und 29 an. Steuerleitung 138 ist eine
"Reset"-Steuerleitung, die von "Reset"-Steuerleitung 28 für
Zählerrtabelleneinrichtung 131 abgeht; sie wird verwendet, um alle Daten in der "max"-
Tabelleneinrichtung 135 auf Null zu setzen. Steuerleitung 29 ist
eine "Lese"-Steuerleitung, die es dem Computer (Fig. 3)
ermöglicht, über vier Datenleituitgen 731 bis 734 den Inhalt der "max"-
Tabelleneinrichtung 135 zu lesen. Zur Erhöhung der
Bequemlichkeit wurden zwei Sets der vier Datenleitungen 731, 732, 733, 734
in zwei einzelnen Ausgabedatenleitungen 37a, 73b in Fig. 18
zusammengefaßt.
-
Wie zuvor angegeben, sind zwei Adressier- und
Kontributionsberechnungseinheiten 61a und 61b uiid zwei
Tabellenzählmanagementeinheiten 71a und 71b in der in Fig. 18 dargestellten
Vergleichseinrichtung vorhanden. Dies ist, um potentiell unerwünschte
Effekte zu vermeiden, die durch die Weise entstehen, in der Pre-
Rotationen und Translationen zur Verwendung in der
Tabellenzählmanagementeinheit kodiert werden.
-
Es sollte erinnert werden, daß die Koordinaten (A, X, Y) aus
großen Bereichen in kleinere Bereiche projiziert werden. Bei
Abfrage einer kontinuierlichen Funktion, d.h. wenn die Werte der
Funktion nur für eine begrenzte Anzahl von unterschiedlichen
Werten der Variable eingesetzt werden, ist bekannt, daß, je kleiner
die Anzahl der genommenen Werte ist, desto geringer der
Informationsgehalt ist, der aus der begreitzten Anzahl von Werten
abgeleitet werden kann.
-
Weiterhin zeigt Fig. 24 die Analyseergebnisse der Dichte von
Werten, die von der abgefragten Funktion geliefert werden. Die
exakten Werte, die von einer gegebenen Funktion genommen werden,
sind mit kleinen vertikalen Balken wiedergegeben, auf die als
Marken Bezug genommen wird. Nach Projizierung dieser Werte in 10
gleichwertige Felder bezeichnet als 'Projektion A", erkennt man,
daß Feld 1 eine Marke aufweist, Feld 2 leer ist, Feld 3 Marken
aufweist, usw. Wenn die Dichte der betrachteten Funktion geschätzt
wird durch Auswahl des Feldes, in dem die meisten Marken
gefallen sind, dann sind die Felder 3, 4 und 6, die alle 3 Marken
enthalten, Kandidaten.
-
Die Dichte der Marken innerhalb der Felder 3 und 4 ist jedoch
größer als die Dichte innerhalb des Fedes 6. Weiterhin ist der wahre
Akkumulationspunkt, d.h. der Punkt der größten Dichte, dichter an
der Grenze zwischen den beiden Feldern 3 und 4.
-
Diese Abschätzung der Dichte kann korrigiert werden unter
Verwendung einer geringfügig abgeänderten Regel, wenn die richtigen
Werte in einen schmaleren Bereich projiziert werden, wie in
'Projektion B' dargestellt; ein Vergleich von 'Projektion A' und
'Projektion B' zeigt, daß die unterschiedlichen Felder um einen
Weg entsprechend der Hälfte der Größe eines Feldes verschoben
wurden.
-
Als Ergebnis wurden die Inhalte der zehn Felder vollständig
verändert, insbesondere enthält nun Feld 3 sechs Marken, was eine
bessere Anzeige für die Dichte der Marken ist. Ein einfacher Vergleich
der Inhalte der Felder, die die meisten Marken in den Projektionen
A und B enthalten, reicht aus, um die beste Dichteanzeige
auszuwählen.
-
Da drei unabhängige Koordinaten (A, X, Y) in den
Vergleichtechniken in der vorliegenden Erfuidung projiziert werden, sollten
2x2x2 (=2³) oder acht unterschiedliche
Zählertabelleneinrichtungen 131 vorhanden sein, um die zuvor beschdriebenen Effekte
zweckmäßig berücksichtigen zu können. Wir haben jedoch
entdeckt,
daß sich zwischen dem Vorteil, den man mit dieser
Verbesserung erzielt, und den Kosten der zu ihrer Realisierung
erforderlichen Hardware ein Kompromiß herstellen läßt. Experimente haben
gezeigt, daß es ausreicht, wenn lediglich zwei unterschiedliche
Zählertabelleneinrichtungen 131 eingesetzt werden. Darüberhinaus
wird die zweite Zählertabelle voll der ersten Zählertabelle abgeleitet
durch gleichzeitige Translation aller drei Koordinaten um einen
Wert, der der halben Größe des Feldes relativ zu dieser Koordinate
entspricht. Somit müssen die Ausgabeleitungen (Steuerleitung 64
und Datenleitung 65 bis 68) der Adressier- und
Kontributionsberechnungseinheiten 61a und 61b nicht zwingendermaßen die
gleiche Information bereitstellen. Es ist vielmehr vorteilhaft, wie
wir entdeckt haben, daß diese nicht die gleiche Information
bereitstellen. Z.B. kanu ein Überlauf für eine Einheit und nicht für
die andere Einheit existieren, wie man in Fig. 24 erkennt, bei der
die Marke, die in Projektion A in Zelle 1 fällt, in Projektion B
überläuft. Wie zuvor beschrieben, sind alle weiteren
Steuerleitungen für die Einheiten 61a und 61b (Leitungen 23, 24, 62 und 63)
gleich für diese beiden Einheiten.
-
Wie zuvor beschrieben, enthält die Vergleichseinrichtung nach Fig.
2 einen Allzweckcomputer (Fig. 3), dessen eine Funktion ist, eine
Vergleichszahl zu berechnen. Grundsätzlich berücksichtigt die
bevorzugte Vergleichszahl die Kontribution von zwei spezifischen
Merkmalen (einem spezifischen Suchabdruckmerkmal und einem
spezifischen Ablageabdruckmerkmal), die verglichen werden, d.h.
die Größe, um die die Zählereinrichtung 131 inkrementiert wird,
und die Natur der Zahlenfunktion selbst, d.h. bei mindestens einer
und vorzugsweise mehreren Zählertabelleneinrichtungen 131 sollte
die spezielle Vergleichszahlenfunktion einen Wert berechnen, der
so groß wie möglich ist, wenn der Suchabdruck und der abgelegte
Abdruck von demselben Finger stammen.
-
Wir ziehen es vor, eine Funktion "f(n)" zu verwenden, in der "n"
die Auzahl der spezifischen Ablageabdruckmerkmale ist, wie in
Fig. 25 dargestellt. Wie in Fig. 25 dargestellt, für 1 ≤ n ≤ 50,
f(n) = 1.3; für n in dem Bereich von 50 ≤ n ≤ 110, f(n) = 1 +
(80-n)/100; für 110 ≤ n ≤ 112, f(n) = 0.7. Für jeden Vergleich
des Suchabdruckes gegen einen abgelegten Abdruck selektieren
wir, welche der Zählertabelleneinrichtung 131a, 131b das beste
Maximum gibt, und berechnen die Vergleichszahl von den 26
Feldern, um den Maximalgehalt der ausgewählten
Zählertabelleneinrichtung 131a, 131b. Wenn "b" den Wert dieses
Maximums bezeichnet und "d" den Wert des zweiten Maximums in
den 26 umgebenden Feldern bezeichnet, wird die Vergleichszahl
"M" nach der folgendell Formel berechnet:
-
M = (b² + d²)x(W)x(f(n)),
-
in der W die Stimme der Quadrate der Werte der umgebenden 26
Felder bezeichnet.
II.2.10. Schlußfolgerung
-
Die speziellen Schaltkreise in der spezifischen Ausgestaltung eines
automatischen Fingerabdruckidentifikationssystems, konstruiert in
Übereinstimmung mit der vorliegenden Erfindung und beschrieben
unter Bezug auf die Fig. 18 bis 23, kann aus diskreten Elementen
oder vorzugsweise integrierten Schaltkreisen gebaut werden. Die
nachfolgende Tabelle gibt Beispiele für solche Komponenten an.
Tabelle E
-
Alle logischen Einheiten, beschrieben unter Bezug auf die
Abbildungen enthalten Standard-TTL- oder -PAL-Komponenten.
-
Somit sind in Übereinstimmung mit der vorliegenden Erfindung
neue Methoden für die automatische Identifizierung von
Fingerabdrücken und neue Apparate zur Durchführung der automatischen
Identifizierung von Fingerabdrücken weiter oben im Detail
beschrieben worden.
-
Während spezifische Ausgestaltungen der Erfindung offenbart
worden sind, so bleiben Abwandlungen im Verfahren und strukturellen
Details innerhalb des Bereiches der anhängenden Ansprüche, z.B.
die Verwendung von "negativen" logischen Schaltkreisen anstelle
von "positiven" logischen Schaltkreisen ist möglich und auch
beabsichtigt. Es besteht daher keine Absicht einer Limitierung auf die
Zusammenfassung oder die exakte hier präsentierte Offenbarung.