PatentDe  


Dokumentenidentifikation DE60210348T2 07.12.2006
EP-Veröffentlichungsnummer 0001467308
Titel Bildidentifizierungssystem
Anmelder Bio-Key International, Inc., Eagan, Minn., US
Erfinder Wendt, Barry M., Las Vegas, Nevada 89134, US;
Lacous, Mira K., Eagan, Minneapolis 55122, US;
Zarm, Gary L., Lakeville, Minnesota 55044, US;
Wittig, Benedict, Deceased, US
Vertreter PAe Splanemann Reitzner Baronetzky Westendorp, 80469 München
DE-Aktenzeichen 60210348
Vertragsstaaten AT, BE, BG, CH, CY, CZ, DE, DK, EE, ES, FI, FR, GB, GR, IE, IT, LI, LU, MC, NL, PT, SE, SK, TR
Sprache des Dokument EN
EP-Anmeldetag 15.11.2002
EP-Aktenzeichen 040770976
EP-Offenlegungsdatum 13.10.2004
EP date of grant 29.03.2006
Veröffentlichungstag im Patentblatt 07.12.2006
IPC-Hauptklasse G06K 9/62(2006.01)A, F, I, 20051017, B, H, EP

Beschreibung[de]
HINTERGRUND DER ERFINDUNG

Die vorliegende Erfindung betrifft allgemein Bildidentifikationssysteme. Insbesondere betrifft die vorliegende Erfindung Verfahren und Prozeduren zur Verbesserung der Leistung und Verlässlichkeit von Bildidentifikationssystemen.

Bildidentifikationssysteme wurden bereits in der Vergangenheit verwendet, wobei eine Anwendung biometrische Bildidentifikationssysteme sind. Eine Art biometrischer Bildidentifikationssysteme ist ein Fingerabdruck-Identifikationssystem. In einem Fingerabdruck-Identifikationssystem platziert ein Anwender eine Fingerspitze auf einer Scan-Oberfläche einer Fingerabdruck-Bildlesevorrichtung. Jede Papillarlinie der Epidermis (äußerste Hautschicht) weist Schweißtröpfchen auf, welche Feuchtigkeit erzeugen, die in Kombination mit öligen Ausscheidungen und anderen natürlicherweise auf einer Fingerspitze vorhandenen Substanzen ein Scannen eines Bildes eines Fingerabdrucks erlauben. (Die vorliegende Erfindung kann ebenfalls erfolgreich auf Bilder angewendet werden, welche von Leservorrichtungen erzeugt werden, die sich nicht auf den Feuchtigkeitsgehalt der Haut verlassen, um ein Bild aufzunehmen.) Die Fingerabdruck-Bildlesevorrichtung erzeugt ein gescanntes Bild durch Aufnahme eines Bildes der charakteristischen Eigenschaften der Papillarlinien eines Fingerabdrucks, welche auf der Spitze eines Fingers vorhanden sind. In vielen Systemen wird das Bild dann mit einer Datenbank anderer gespeicherter Fingerabdruckbilder oder Fingerabdruck-Bildmuster zum Zweck der Überprüfung, Authentifizierung oder einer anderen Form der Analyse verglichen.

Sicherheitssysteme, welche Fingerabdruck-Identifizierungstechnik verwenden, haben das Potential, verlässlich und einfach zu verwenden zu sein. Diese Vorteile ergeben sich aus der Tatsache, dass die Technik es nicht erfordert, dass ein Systemanwender das geringste Wissen, wie beispielsweise ein Passwort, eine persönliche Identifikationsnummer, eine Kombination oder eine andere Art von Code, behält. Auch muss ein Anwender keine Karte, keinen Schlüssel und keine andere physische Vorrichtung besitzen, um Zugang zu einer gesicherten Umgebung zu erhalten. Ein Fingerabdruck-Sicherheits-Berechtigungsschlüssel ist im Gegensatz zu einem kenntnis oder besitzbasierten Sicherheits-Berechtigungsschlüssel fast unmöglich zu verlieren, stehlen oder vergessen.

Ein Artikel von Ratha et al. ("A Real-Time Matching System for Large Fingerprint Databases", IEEE Transactions on Pattern Analysis and Machine Intelligence, Bd. 18, Nr. 2, 1986, Seiten 799–812 (des englischen Textes]) offenbart ein automatisiertes Fingerabdruck-Identifikationssystem, welches Kern- und Deltapunkte verwendet, um die Papillarliniendichte und minutiöse Punkte in einem Fingerabdruck zu bestimmen. Die Information wird in einem Eins-zu-Eins-Abgleich eines Fingerabdrucks mit den in einer Datenbank gespeicherten verwendet.

Die Entwicklung praktischer Sicherheitssystemanwendungen, welche Fingerabdruck-Bildidentifikationstechnik verwenden, wurde durch eine allgemeine Nicht-Wiederholgenauigkeit von Daten eines Bildscans mit einem anderen behindert. Insbesondere können physikalische Variationen, welche in der Umgebung einer Fingerabdruck-Lesevorrichtung vorhanden sind, wesentliche Inkongruenzen eines Bildscans eines Fingerabdrucks im Vergleich zu einem nachfolgend aufgenommenen Bildscan desselben Fingerabdrucks verursachen.

Differenzen in Temperatur, der Menge an auf die Scanoberfläche aufgebrachtem Druck, Feuchtigkeitsgehalt des Fingers, sowie die Auswirkungen von Medikamenteneinnahme und Unterschiede im Blutdruck können zu wesentlichen Inkongruenzen zwischen einem Bildscan und einem anderen beitragen. Diese nicht deckungsgleichen Ergebnisse verhindern die Entwicklung der meisten Fingerabdruck-Identifikationstechnik-Anwendungen, da widersprüchliche Daten zu einer inakzeptabel hohen Anzahl falscher Akzeptanzen (Vielfachidentifikationen, welche eine Übereinstimmung mit falschen Personen einschließen) und falscher Zurückweisungen (Nichterkennung eines eingetragenen Anwenders) für Anwendungen führen, welche sofortige und unüberwachte Vergleiche zwischen einem gescannten Fingerabdruck-Bild und einer Datenbank mit Fingerabdruck-Bildern oder Fingerabdruck-Mustern erfordern können. Ein weiteres Problem im Zusammenhang mit vielen Bildidentifikationssystemen ist die geringe Datenmenge, welche durch das typische System von jedem Bild gesammelt wird. Beispielsweise sind die meisten Fingerabdruck-Identifikationssysteme minutienbasiert, was typischerweise bedeutet, dass nur Erhöhungen, Inseln und Gabelungen katalogisiert und für die Analyse verfügbar gemacht werden. Ein idealer durch ein minutienbasiertes System durchgeführter Bildscan sammelt typischerweise maximal ca. 50 nützliche Datenpunkte, und diese Zahl kann durch Datenpunkte, welche möglicherweise aufgrund der vorstehend beschriebenen Interferenz in der Umgebung des Bildlesers nicht auftreten, weiter verringert werden. Die Unterscheidungsfähigkeit des typischen minutienbasierten Identifikationssystems ist nicht ausreichend für Anwendungen, welche sofortige und exakte Vergleiche zwischen einem gescannten Echtzeitbild und einer Datenbank potentiell passender Bilder oder Muster erfordern. Zusätzlich sind Systeme, welche nur eine geringe Anzahl nützlicher Datenpunkte sammeln, anfälliger für betrügerisch erzeugte Fingerabdruck-Fälschungen.

Noch ein weiteres Problem im Zusammenhang mit den durchschnittlichen Bildidentifikationssystemen ist, dass sie sich als ineffizientes Modell zur Durchführung von Vergleichen zwischen einem gescannten Echtzeitbild und einer Datenbank potentiell passender Bilder oder Muster erweisen. Die meisten Systeme vergleichen das gescannte Echtzeitbild oder -muster, welches von diesem Scan abgeleitet wird, mit jedem der in einer Bild- oder Musterdatenbank enthaltenen Bilder oder Muster auf einer Eins-zu-Eins-Basis, bis ein passendes Paar ermittelt wird. Je nach Größe der Datenbank kann die zur Ermittlung eines passenden Paares erforderliche Zeit beträchtlich sein.

Aufgrund dieser klassischen Beschränkungen der Bildidentifikationstechnik waren Bildidentifikations-Anwendungen typischerweise auf die Verwendung in Niedrigsicherheits- und/oder überwachten Umgebungen verwendet, in welchen eine schnelle Verarbeitung keine Priorität hat. Beispielsweise arbeiten viele Gesetzeshütungsagenturen, welche gegenwärtig Fingerabdruck-Identifikationssysteme verwenden, innerhalb der Beschränkungen minutienbasierten Abgleichs. Ein minutienbasiertes System kann in einer derartigen Umgebung geeignet sein, wo ein Experte für Fingerabdrücke verfügbar sein kann, um die nötige Zeit aufzubringen, um das System zu überwachen und in Fällen von Mehrfach-Übereinstimmung mit einer Online-Datenbank als Vermittler tätig zu werden.

Minutienbasierte Systeme und andere traditionelle Fingerabdruck-Identifikationssysteme sind nicht für unüberwachte Massenmarktanwendungen geeignet, wie beispielsweise für Bankautomaten, welche ein Fingerabdruck-Identifikationssystem beinhalten und es erfordern, dass ein Anwender einen gültigen Scan eines Fingerabdrucks abgibt, wenn er eine Bankkarte zur Durchführung eines Geldtransfers verwendet. Auch sind die traditionellen Systeme ungeeignet für Berechtigungssysteme, welche zur selektiven und sofortigen Gewährung von Zugang zu Orten und Vorrichtungen, wie beispielsweise Computern, Computernetzwerken, Örtlichkeiten, Fahrzeugen und Einrichtungen basierend auf dem Erhalt eines authorisierten Bildes entworfen sind. Eine effiziente und effektive Funktionalität dieser Arten von Anwendungen hängen von einem Niveau schneller und präziser Analyse ab, welches durch das traditionellen Fingerabdruck-Bildidentifikationssystem nicht durchgängig erreicht werden kann.

Ein weiterer Vorteil im Zusammenhang mit einem Berechtigungssystem, welches eine Bildidentifkation beinhaltet, besteht darin, dass ein derartiges System einstellbar ist, d.h. das Unterscheidungsniveau oder die Abgleichungserfordernisse während eines Bildvergleichs können basierend auf der Art der zu sichernden Umgebung und dem erwünschten damit zusammenhängenden Sicherheitsniveau angepasst werden. Aufgrund von Nachteilen wie der Nicht-Wiederholgenauigkeit von Daten, falschen Übereinstimmungs-Akzeptanzen und falschen Übereinstimmungs-Ablehnungen sind der Bereich und die Anzahl von Niveaus, innerhalb welcher ein traditionelles Bildidentifikationssystem eingestellt werden kann, eng beschränkt. Ein derartiges System kann möglicherweise überhaupt nicht einstellbar sein. Selbst das höchste Unterscheidungsniveau in einem traditionellen System liefert eine im wesentlichen beschränkte Unterscheidungsmenge.

ZUSAMMENFASSUNG DER ERFINDUNG

Verfahren und Prozeduren zur Verbesserung der Leistung und Zuverlässigkeit der Bildanalyse innerhalb eines Bildidentifikationssystems weisen eine Reihe von Bildqualifikationsfunktionen auf, welche zur schnellen Verarbeitung eines Bruchteils verfügbarer gescannter Bilddaten und Lieferung von Feedback an einen Systemnutzer bezüglich der Bildqualität und Authentizität ausgelegt sind. In einer Ausführungsform wird die Bildverarbeitung unterbrochen, falls eine Bildqualifikation zu der Schlussfolgerung führt, dass das gescannte Bild gefälscht oder von unzureichender Qualität ist.

Ebenfalls in der vorliegenden Erfindung enthalten sind Funktionen, die dazu ausgelegt sind, Bildmuster basierend auf ursprünglichen Bilddaten zu erzeugen und derartige Bildmuster in einer durchsuchbaren Datenbank zu katalogisieren. In Übereinstimmung mit einer Ausführungsform umfasst die Erzeugung eines Bildmusters die Analyse und Manipulation von Bilddaten, welche von einem Bildleser empfangen werden, sowie neuen von dort stammenden Datensätzen. In einer durchsuchbaren Datenbank eingetragene Bildmuster können in Übereinstimmung mit einer Ausführungsform der vorliegenden Erfindung entweder von einem einzigen Scan eines Objekts oder von zwei oder mehr Scans desselben Objekts abgeleitet werden.

Die vorliegende Erfindung weist auch Funktionen zum Vergleich eines Bildmusters mit einem anderen auf. In Übereinstimmung mit einer Ausführungsform werden eine Reihe von Schiebe- und Rotations-Algorithmen auf mindestens eines der Bildmuster angewendet, bis eine Position identifiziert wird, an welcher die beiden Muster sich am besten vergleichen. Eine Marke, welche eine Beziehung oder einen Prozentsatz von Datenelementen darstellt, die zwischen den beiden Bildmustern gemeinsam sind, wird berechnet. In Übereinstimmung mit einer Ausführungsform ist der Ähnlichkeitsgrad, welcher nötig ist, damit zwei Bildmuster als übereinstimmend betrachtet werden, einstellbar.

Schließlich liefert die vorliegende Erfindung Funktionen zur Erstellung einer schnellen Bestimmung, ob überhaupt eines von potentiell tausenden (oder mehr, d.h. Millionen oder hunderten von Millionen) von Bildmustern in einer durchsuchbaren Datenbank ein erwünschtes Ähnlichkeitsniveau im Vergleich mit einem Ziel-Bildmuster aufweist. In Übereinstimmung mit einer Ausführungsform wird anstelle des spezifischen Vergleichs von Bildmustern ein Satz von Datenbank-Indexschlüsseln definiert, welche unterschiedliche Bildmustereigenschaften beschreiben, die definiert sind und die Durchführung allgemeiner anstelle spezifischer Vergleiche erlaubt. In Übereinstimmung mit einer Ausführungsform können Unterscheidungsniveaus eingestellt werden.

Aus einem ersten Aspekt liegt die vorliegende Erfindung in einem Verfahren zum effizienten und präzisen Vergleich eines ersten Bildes mit einer Vielzahl anderer Bilder gemäß Anspruch 1.

Aus einem zweiten Aspekt liegt die vorliegende Erfindung in einem Verfahren gemäß Anspruch 7.

Andere bevorzugte Merkmale der Erfindung sind in den beiliegenden Ansprüchen ausgeführt.

KURZBESCHREIBUNG DER ZEICHNUNGEN

1 ist ein Blockdiagramm eines Fingerabdruck-Bilderzeugungssystems;

2 ist ein Ablaufdiagramm, welches Operationen darstellt, die innerhalb des erfindungsgemäßen Fingerabdruck-Bilderzeugungssystems auszuführen sind;

3 ist eine Piktogrammdarstellung eines beispielhaften Satzes von Bildscan-Parametern;

4 ist ein Blockdiagramm, welches einen Satz von Prozedurkomponenten entsprechend eines Bildqualifikationsabschnitts der in 2 gezeigten Operationen darstellt;

5 ist eine Darstellung eines rohen Scanbildes;

6 ist eine Darstellung eines Zwischenbildes, welches in Übereinstimmung mit einem Vorverarbeitungsabschnitt der in 4 gezeigten Operationen erzeugt wird;

7 ist eine Darstellung eines monochromen Bildes, welches in Übereinstimmung mit dem Vorverarbeitungsabschnitt der in 4 gezeigten Operationen erzeugt wird;

8A ist eine Darstellung eines monochromen Hildes, welches von einer Mylar-Filmquelle unter Verwendung einer LED-Lichtquelle innerhalb eines Bildlesers abgeleitet wird;

8B ist eine Darstellung eines monochromen Bildes, welches von einer Papierquelle unter Verwendung einer LED-Lichtquelle innerhalb eines Bildlesers abgeleitet wird;

8C ist eine Darstellung eines monochromen Bildes, welches von einer lebenden Fingerquelle unter Verwendung einer LED-Lichtquelle innerhalb eines Bildlesers abgeleitet wird;

9A ist eine Darstellung eines monochromen Bildes, welches von einer Mylar-Filmquelle unter Verwendung einer Infrarot-Lichtquelle innerhalb eines Bildlesers abgeleitet wird;

9B ist eine Darstellung eines monochromen Bildes, welches von einer Papierquelle unter Verwendung einer Infrarot-Lichtquelle innerhalb eines Bildlesers abgeleitet wird;

9C ist eine Darstellung eines monochromen Bildes, welches von einer lebenden Fingerquelle unter Verwendung einer Infrarot-Lichtquelle innerhalb eines Bildlesers abgeleitet wird;

10 ist eine Darstellung eines monochromen Bildes nachdem eine Konturspur in Übereinstimmung mit einem Steigungstabellen-Erzeugungsabschnitt der in 4 gezeigten Operationen abgeschlossen wurde;

11 ist eine Darstellung eines monochromen Bildes mit einer auf einer Steigungstabelle basierten Steigungsschablone, wobei die Steigungstabelle in Übereinstimmung mit dem Steigungstabellen-Erzeugungsabschnitt der in 4 gezeigten Operationen abgeschlossen wurde;

12 ist eine Darstellung eines Histogramms, welches in Übereinstimmung mit einem Histogramm-Erzeugungsabschnitt der in 4 gezeigten Operationen abgeschlossen wurde;

13 ist eine Darstellung des Histogramms, welches über einem Rohscanbild liegt, von dem das Histogramm abgeleitet wurde;

14 ist eine Darstellung einer Zelle des Histogramms;

15 ist ein Blockdiagramm, welches einen Satz von Prozedurkomponenten entsprechend einem Mustererzeugungsabschnitt der in 2 gezeigten Operationen darstellt;

16 ist ein Blockdiagramm, welches einen Satz von Prozedurkomponenten entsprechend einem Vorverarbeitungsabschnitt der in 15 gezeigten Operationen darstellt;

17 ist eine Darstellung eines korrigierten Rohscanbildes;

18 ist eine Darstellung eines Zwischenbildes, welches in Übereinstimmung mit einem Vorverarbeitungsabschnitt der in 15 gezeigten Operationen darstellt;

19 ist eine Darstellung eines vergrößerten Bildes;

20 ist eine Darstellung eines monochromen Hildes, welches in Übereinstimmung mit einem Vorverarbeitungsabschnitt der in 15 gezeigten Operationen erzeugt wurde;

21 ist eine Darstellung eines monochromen Bildes, nachdem Unregelmäßigkeiten in dem Bild geortet und ausgefüllt wurden;

22 ist eine Darstellung eines ausgefüllten monochromen Bildes;

23 ist eine Darstellung eines geglätteten und ausgefüllten monochromen Bildes;

24 ist eine Piktogramm-Darstellung eines alternativen Satzes beispielhafter Bildscan-Parameter;

25 ist eine Darstellung eines monochromen Bildes, nachdem eine Konturenspur in Übereinstimmung mit einem Steigungstabellen-Erzeugungsabschnitt der in 15 gezeigten Operationen abgeschlossen wurde;

26 ist eine Darstellung eines monochromen Bildes mit einer auf einer Steigungstabelle basierten Steigungsschablone, wobei die Steigungstabelle in Übereinstimmung mit dem SteigungstabellenErzeugungsabschnitt der in 15 gezeigten Operationen abgeschlossen wurde;

27 ist eine Blockdiagramm, welches einen Satz von Prozedurkomponenten entsprechend einem Drahtrahmen-Erzeugungsabschnitt der in 15 gezeigten Operationen darstellt;

28 ist eine Darstellung eines monochromen Bildes nach einer ersten Entfernung von Pixeln von Bildpapillarlinien;

29 ist eine Darstellung eines monochromen Bildes mit einer umfassenden Darstellung von Pixelentfernungs-Durchgängen, welche während der Ausdünnung des monochromen Bildes auf die zentralsten Papillarlinien-Pixel erfolgt sind;

30 ist eine Darstellung von 29, welche weiter eine Schablone eines verdünnten monochromen Bildes mit rohen Drahtrahmenlinien aufweist;

31 ist eine Darstellung eines verdünnten monochromen Bildes mit rohen Drahtrahmenlinien;

32 ist eine Darstellung eines verdünnten monochromen Bildes, nachdem überschüssige Pixel von den rohen Drahtrahmenlinien entfernt wurden;

33 ist eine Darstellung der Beziehung zwischen einem verdünnten monochromen Bildes, nachdem überschüssige Pixel entfernt wurden, und einem entsprechenden monochromen Bild;

34 ist eine Darstellung eines verdünnten monochromen Bildes, wobei die überschüssigen Pixel entfernt wurden, welches eine Darstellung von Daten aus einer Endpunkttabelle enthält;

35 ist eine Darstellung eines verdünnten monochromen Bildes, wobei die überschüssigen Pixel entfernt wurden, welches eine Darstellung von Daten aus einer Mittelpunkttabelle enthält;

36 ist eine Darstellung eines verfeinerten Satzes von Drahtrahmenlinien;

37 ist eine Darstellung, welche die Beziehung zwischen dem verfeinerten Satz von Drahtrahmenlinien und einem entsprechenden monochromen Bild zeigt;

38 ist eine Darstellung, welche die Beziehung zwischen einem weiter verfeinerten Satz von Drahtrahmenlinien, einschließlich fester Endpunkte, und einem entsprechenden monochromen Bild zeigt;

39 ist eine Darstellung, welche die Beziehung zwischen dem weiter verfeinerten Satz von Drahtrahmenlinien, einschließlich fester und verbundener Endpunkte, und einem entsprechenden monochromen Bild zeigt;

40 ist eine graphische Darstellung eines Fingerabdruck-Gabelungsbildelementes;

41 ist eine graphische Darstellung eines Fingerabdruck-Erhöhungsbildelementes;

42 ist eine Darstellung eines Drahtrahmen-Fingerabdruckbildes, in welchem qualifizierte Gabelungen und Erhöhungen eingekreist wurden;

43 ist eine Darstellung des Drahtrahmen-Fingerabdruckbildes, in welchem qualifizierte Gabelungen und Erhöhungen eingekreist und Vektorsegmente verfolgt wurden;

44 ist ein Blockdiagramm, welches einen Satz von Prozedurkomponenten darstellt, der mit einem Eins-zu-Eins-Bildvergleichsprozess zusammenhängt;

45 ist ein Blockdiagramm, welches einen Satz von Prozedurkomponenten darstellt, der mit einem Eins-zu-Viele-Datenbank-Bildvergleichsprozess zusammenhängt.

AUSFÜHRLICHE BESCHREIBUNG BEISPIELHAFTER AUSFÜHRUNGSFORMEN

Die vorliegende Erfindung betrifft Verfahren und Prozeduren zur Verbesserung der Leistung und Verlässlichkeit von Bildidentifikationssystemen im Allgemeinen. Die erfindungsgemäßen Konzepte könnten innerhalb von Systemen angewandt werden, welche zum Betrieb in Verbindung mit einer großen Vielfalt an Bildtypen ausgelegt sind, einschließlich Nummernschildbildern, graphischen Bildern und textbasierten Bildern, jedoch nicht auf diese beschränkt. Zusätzlich stellt die vorliegende Erfindung Verfahren und Prozeduren bereit, welche im Speziellen geeignet zur Verbesserung der Leistung und Verlässlichkeit insbesondere von Fingerabdruck-Identifikationssystemen sind. Während der Rest der ausführlichen Beschreibung die vorliegende Erfindung mit Bezug auf Fingerabdruck-Bildidentifikationssysteme beschreibt, sollte sich verstehen, dass die Konzepte der vorliegenden Erfindung ebenso innerhalb anderer Arten von Bildidentifikationssystemen angewendet werden könnten.

1 ist ein Blockdiagramm eines Fingerabdruck-Bilderzeugungssystems 10, innerhalb welchem die Verfahren und Prozeduren der vorliegenden Erfindung angewendet werden könnten. Das Bilderzeugungssystem 10 weist einen Leserabschnitt 12, eine Bildanalyse-/-verarbeitungsvorrichtung 14 und eine durchsuchbare Datenbank 16 auf, welche weiter einen Ausgang 15 einschießt. Der Leserabschnitt 12 könnte ein beliebiger aus einer Vielzahl bekannter Systeme sein, welcher in der Lage ist, ein Bild eines Fingerabdrucks zu scannen und zu dem Bild gehörige Daten zu einer Bildanalysevorrichtung, wie beispielsweise der Bildanalyse-/-verarbeitungsvorrichtung 14, zu übertragen.

In vielen Fällen weist der Leserabschnitt 12 eine optische Vorrichtung auf, welche eine reflektierende Vorderseite umfasst, die dazu ausgelegt ist, den abzubildenden Finger aufzunehmen. Licht wird in die optische Vorrichtung durch einen Lichtstrahler eingegeben, und ein optisches Bild des Fingers wird aus der optischen Vorrichtung an einen Bilderzeuger reflektiert, welcher das Bild empfängt und ein analoges Bildsignal erzeugt, das das empfangene optische Signal anzeigt. In vielen Systemen wird das analoge Signal dann zu einem herkömmlichen Analog-Digital-Wandler übertragen, welcher eine digitale Entsprechung des analogen Signals erzeugt. Das digitale Signal wird zu einem digitalisierten Bild reformatiert, welches gespeichert werden kann, und in Übereinstimmung mit einer Ausführungsform der vorliegenden Erfindung manipuliert. Schließlich wird das digitalisierte Bild aus dem Leserabschnitt heraus zu einer Bildanalyse-/-verarbeitungsvorrichtung 14 übertragen. Die Bildanalyse-/-verarbeitungsvorrichtung 14 unterscheidet sich je nach Anwendung, analysiert jedoch im Allgemeinen die empfangenen Bilddaten für eine große Vielfalt an Zwecken und Anwendungen.

Wie nachfolgend noch ausführlich beschrieben wird, kann die Bildanalyse-/-verarbeitungsvorrichtung 14 ein Bildmuster basierend auf den speziellen Merkmalen und Eigenschaften jedes von dem Leserabschnitt 12 empfangenen Bildes erzeugen. Diese Bildmuster sind mehr als Faksimiles ihrer zugeordneten Fingerabdruck-Bilder und weisen eine einzigartige Vielzahl von Datenelementen auf, welche analytische Möglichkeiten liefern, die ein Teil der vorliegenden Erfindung sind.

In einem allgemeinen Sinn der vorligenden Erfindung kann angenommen werden, dass die Bildanalyse-/-verarbeitungsvorrichtung 14 Datenelemente eines Bildmusters mit Datenelmenten mindestens eines anderen Bildmusters, welches innerhalb der durchsuchbaren Datenbank 16 gespeichert ist, vergleicht. Die in der Datenbank 16 enthaltenen Bildmuster entsprechen im Voraus erhaltenen gescannten Bildern, während das im Moment verglichene Bildmuster typischerweise einem gegenwärtig gescannten Bild entspricht. Das Fingerabdruck-Bilderzeugungssystem 10 ist durch den Einbau dieses Verfahrens in der Lage, schnell und effizient zu bestimmen, ob das dem gegenwärtig gescannten Fingerabdruck entsprechende Bildmuster im Wesentlichen einem Beliebigen der innerhalb der durchsuchbaren Datenbank 16 enthaltenen Bildmuster ähnelt. Wie nachfolgend noch ausführlicher beschrieben, erfordert das System 10 einen bestimmten Grad an Ähnlichkeit, damit eine Übereinstimmung angezeigt wird. In Übereinstimmung mit einer Ausführungsform ist der erforderliche Grad an Ähnlichkeit anpassbar und kann basierend auf der Art der Umgebung, für welche das System 10 Sicherheit liefern soll, eingestellt werden. Auf diese Weise liefert das Fingerabdruck-Bilderzeugungssystem 10 ein effizientes und präzises Fingerabdruck-Bildidentifkationssystem, welches beispielsweise als Sicherheitsmaßnahme zur Bestimmung verwendet werden kann, ob die Person, die einen Finger auf dem Leserabschnitt 12 platziert, zum Betreten eines Raums, zum Zugang zu einem Bankkonto oder zur Ergreifung einer weiteren beliebigen Vielfalt von Aktionen berechtigt werden sollte.

Wie in 1 gezeigt, weist die durchsuchbare Datenbank 16 einen Ausgang 15 auf. Die genaue Art von Ausgang 15 hängt von dem Kontext ab, in welchem das Bilderzeugungssystem 10 verwendet werden soll. Beispielsweise könnte der Ausgang 15 ein Identifikations-Indikator eines in der durchsuchbaren Datenbank 16 enthaltenen Bildes sein, welches im Wesentlichen mit dem durch den Leserabschnitt 12 gescannten Bild übereinstimmt. Dies ist lediglich ein Beispiel der vielen potentiellen Formen des Ausgangs 15.

2 ist ein Ablaufdiagramm, welches Operationen darstellt, die innerhalb des Systems 10, insbesondere innerhalb der Analyse-/Verarbeitungsvorrichtung 14 ausgeführt werden. Der Prozess beginnt, wenn die Bildanalyse-/-verarbeitungsvorrichtung 14 Bilddaten von dem Leserabschnitt 12 empfängt. Nach dem Empfang von Bilddaten führt die Bildanalyse-/-verarbeitungsvorrichtung 14 zunächst, wie durch Block 18 in 2 dargestellt, eine Reihe von Bildqualifikationsfunktionen durch.

Einzelheiten zur Bildqualifikation 18 werden mit Bezug auf 4 noch ausführlicher beschrieben. Kurz gesagt umfasst die Bildqualifikation 18 eine schnelle Verarbeitung eines Bruchteils der verfügbaren Bilddaten, um sicherzustellen, dass das empfangene Bild ein Scan eines echten Fingerabdrucks (im Gegensatz zu einem gefälschten Fingerabdruck) ist und eine ausreichende Qualität aufweist, um mit der Verarbeitung fortzufahren. Führt der Bildqualifikationsprozess zu der Schlussfolgerung, dass das gescannte Bild gefälscht oder von unzureichender Qualität ist, so kann die Verarbeitung des Bilds angehalten oder unterbrochen werden. In einem derartigen Fall wird dem Systemanwender das Feedback geliefert, welches identifizierten Unzulänglichkeiten zugehörig ist, und eine Fortsetzung des Prozesses wird nur dann zugelassen, wenn die Unzulänglichkeiten korrigiert wurden. Nur ein Bruchteil von verfügbaren Bilddaten wird während der Bildqualifikation 18 verarbeitet, um die Verarbeitung zu beschleunigen und es zu ermöglichen, dass Feedback an einen Systemanwender im Wesentlichen auf Echtzeitbasis geliefert wird.

Wenn das Bild qualifiziert ist, ist der nächste Schritt, wie durch Block 20 in 2 angezeigt, die Schaffung eines Bildmusters. Die Mustererzeugung 20 wird ausführlicher mit Bezug auf 15 beschrieben. Kurz gesagt umfasst die Mustererzeugung 20 die Analyse und Manipulation von Bilddaten, welche von dem Leserabschnitt 12 empfangen wurden, sowie neuen von dort stammenden Datensätzen, bis ein Bildmuster erzeugt wurde. Aufgrund eines erhöhten Bedarfs an Genauigkeit sind die während der Mustererzeugung 20 verarbeiteten Bilddaten ein kompletter Bilddatensatz im Gegensatz zu dem Bruchteil-Satz, der während der Bildqualifikation 18 verarbeitet wird. Während die Prozedur zur Schaffung und die Zusammensetzung eines Bildmusters nachfolgend ausführlicher beschrieben wird, sollte betont werden, dass ein Bildmuster eine Sammlung von Daten basierend auf dem ursprünglichen Druckbild ist, und kein Faksimile des ursprünglichen Druckbildes ist.

Nachdem ein Bildmuster erzeugt wurde, kann das Bildmuster für einen oder zwei Zwecke verwendet werden. Der erste ist, wie in 2 angezeigt, die Mustereintragung 22. Die Mustereintragung 22 ist der Prozess, mit welchem Bildmuster in die durchsuchbare Datenbank 16 eingetragen und darin katalogisiert werden. Die in der Datenbank 16 eingetragenen Bildmuster können entweder entweder von einem einzigen Scan eines Fingerabdruckbildes oder aber von zwei oder mehr Scans desselben Fingerabdruckbildes abgeleitet sein. Wenn zwei oder mehr Scans verwendet werden, um ein Bildmuster zu erzeugen, werden widerspruchsfreie Musterelemente, welche sich von Scan zu Scan zeigen, in dem Bildmuster vermerkt. Widersprüchliche Musterelemente, beispielsweise Diskrepanzen in den Bilddaten, welche das Ergebnis vorstehend erwähnter Variationen in der Umgebung des Lesers sind, werden eliminiert.

Wenn zwei oder mehr Scans während der Mustereintragung 22 verwendet werden, kann der Finger nach jedem Scan vom Leserabschnitt 12 entfernt werden und wird dann anschließend erneut platziert, bevor der nächste Scan vorgenommen wird.

Eine wesentliche Zeitdauer kann zwischen Scans vergehen. Da Umgebungsfaktoren, wie beispielsweise Fingerdruck, Fingerfeuchtigkeit und Fingerpositionierung sich von Scan zu Scan unterscheiden können, erhöht die Entfernung des Fingers vom Leserabschnitt 12 zwischen Scans die Wahrscheinlichkeit, dass Umgebungs-Ungleichmäßigkeiten eliminiert werden, wenn sie sich nicht in jedem einzelnen Scan zeigen.

Wie durch Block 24 in 2 angezeigt, kann der andere Zweck, für welchen ein Bildmuster verwendet werden kann, der Mustervergleich 24. Der Mustervergleich 24 wird nachfolgend ausführlicher beschrieben. Kurz gesagt ist der Mustervergleich 24 ein Prozess, welcher verwendet werden kann, um ein Bildmuster mit einem anderen zu vergleichen. Der Mustervergleich 24 wird zur Anwendung einer Reihe von Schiebe- und Rotationsalgorithmen auf mindestens eines der Bildmuster erzielt, bis eine Position identifiziert wird, in welcher die Muster am besten verglichen werden können. Dann wird eine Marke berechnet, welche eine Beziehung oder einen Prozentsatz von Datenelementen darstellt, die zwischen den beiden Bildmodellen gemeinsam sind.

Wie durch Block 26 in 2 angezeigt, könnte eine Datenbanksuche 26 anstelle von oder in Kombination mit dem Mustervergleich 24 durchgeführt werden. Die Datenbanksuche 26 wird nachfolgend ausführlicher beschrieben. Kurz gesagt beinhaltet die Datenbanksuche 26 eine schnelle und effiziente Bestimmung, welche – falls überhaupt eines – von potentiell tausenden oder sogar Millionen von Bildmustern innerhalb der Datenbank 16 einen erwünschten Grad an Ähnlichkeit im Vergleich mit einem Ziel-Bildmuster aufweisen. Das Zielbild kann ein Bildmuster sein, welches mit einem gegenwärtig gescannten Bild in Zusammenhang gebracht wird. Anstelle des speziellen Vergleichs von Bildmustern wird ein Satz von Datenbank-Schlüsseln, welche unterschiedliche Bildmuster-Eigenschaften beschreiben, definiert und ermöglicht allgemeine anstelle von spezifischen Vergleichen während des Datenbank-Suchvorgangs 26. Der erwünschte Grad an Ähnlichkeit ist einstellbar und könnte basierend auf einer erwünschten Verarbeitungsgeschwindigkeit und einem erwünschten Grad an Sicherheit sowie anderen Eigenschaften gewählt werden, welche die Umgebung anzeigen, für die das System 10 Sicherheit liefern soll.

Es sollte betont werden, dass beinahe alle, wobei eine Anti-Spoofing-Prozedur, die nachfolgend in dieser Anwendung beschrieben wird, eine Hauptausnahme darstellt, der Verfahren und Prozeduren der vorliegenden Erfindung nicht abhängig vom Einschluss eines bstimmten Leserabschnitts 12 sind und nachgerüstet werden können, um mit einer beliebigen Lesertechnik zu arbeiten. Zum Zweck der Illustration von Ausführungsbeispielen der vorliegenden Erfindung wird jedoch ein beispielhafter Satz von Bildscanparametern, welche einem beispielhaften Leserabschnitt 12 entsprechen, angenommen. Insbesondere entsprechen die beispielhaften Parameter einer SACcatTM-Fingerabdruck-Leservorrichtung, welche durch Secured Access Control Technologies (die als BIO-Key International operiert) aus Eagan, Minnesota, angeboten und vermarktet wird.

3 ist eine piktographische Darstellung von Details, welche zu dem beispielhaften Satz von Bildscan-Parametern gehören. Die beispielhaften Parameter werden im Allgemeinen durch das Bezugszeichen 28 angezeigt und sind nicht bedeutend für die vorliegende Erfindung. Der beispielhafte Leserabschnitt 12, welcher die beispielhaften Parameter 28 erzeugt, beinhaltet illustrativ eins Kamera, welche ein Aspektverhältnis von 4 zu 3 aufweist und 64 Grauskalen-Abstufungen liefert, wobei kein Wert für die vorliegende Erfindung bedeutend ist. Wie durch 3 dargestellt, weisen die Bildscan-Parameter 28 einen Scanbereich 30 auf, welcher größer ist als ein Verarbeitungsbereich 32. Der Verarbeitungsbereich 32 ist Teil des Scanbereichs 30, und ist der einzige Bereich des Scanbereichs 30, welcher Daten liefert, die tatsächlich für die Analyse erfasst werden. Innerhalb des Scanbereichs 30 existieren 510 Zeilen und 488 Pixel pro Zeile. Zum Zweck der Vereinfachung der Erläuterung der vorliegenden Erfindung soll angenommen werden, dass der Leserabschnitt 12 keine lineare Verzerrung aufgrund von Optik erzeugt (es wird ein flaches Bild angenommen).

4 ist ein Blockdiagramm, welches einen Satz von Prozedurkomponenten darstellt, die dem Bildqualifikations(18)-Abschnitt der in 2 dargestellten Operationen entspricht. Es sollte betont werden, dass das Hauptziel der Bildqualifikation 18 darin besteht, sicherzustellen dass die durch die Bildanalyse-/-verarbeitungsvorrichtung 14 vom Leserabschnitt 12 empfangenen Bilddaten ein Scan eines nicht gefälschten Fingerabdrucks sind und eine für die anschließende Bildverarbeitung geeignete Qualität aufweisen.

Wie vorstehend erwähnt, können alle der Funktionen innerhalb der Bildqualifikation 18 unter Verwendung eines Bruchteils der potentiall für die Analyse verfügbaren Bilddaten ausgeführt werden. Die Bildanalyse-/-verarbeitungsvorrichtung 14 kann einen kompletten Satz Bilddaten von dem Leserabschnitt 12 empfangen, verwendet jedoch nur jede zweite Zeile und jedes zweite Pixel an Information zur Analyse während der Bildqualifikation 18. Anders gesagt wird nur ein Viertel der Daten innerhalb des Verarbeitungsbereichs 32 während der Bildqualifikation 18 analysiert. Der Zweck der Verarbeitung nur eines Bruchteils der verfügbaren Daten ist es, die Verarbeitung zu beschleunigen, wodurch ein Feedback bezüglich der Bildqualität und der Authentizität an einen Systemanwender im Wesentlichen auf Echtzeitweise geliefert werden kann. Nach Emfpang des Echtzeit-Feedback wird dem Systemanwender dann erlaubt, variablen anzupassen (den auf die Scanoberfläche aufgebrachten Druck zu verändern, eine nicht gefälschte Bildquelle zu erzeugen, überschüssige Feuchtigkeit vom Finger abzuwischen, etc.), bis aller negative Feedback ausgemerzt ist und der Bildscan eine ausreichende Qualität aufweist, um mit der Verarbeitung des Bildes fortzufahren.

Ausführlicher beginnt die Bildqualifikation 18 mit der Vorverarbeitung 34 (s. 4). Wenn die Bildanalyse-/-verarbeitungsvorrichtung 14 Bilddaten vom Leserabschnitt 12 empfängt, so sind diese in einem Rohscanformat, auch als Grauskalenformat bekannt. Der allgemeine Zweck der Vorverarbeitung 34 ist es, Daten zu reduzieren. Insbesondere ist es der Zweck, das Rohscanbild in ein monochromes Bild oder Binärbild umzuwandeln, welches für eine anschließende Bildqualifikations(18)-Verarbeitung erwünscht ist. Die Vorverarbeitung 34 kann verwendet werden, um das Rohscanbild in ein Bild umzuwandeln, welches einzelne Bits beinhaltet, die schwarz oder weiß sind.

Während der Vorverarbeitung 34 wird ein Rohscanbild, ähnlich des Rohscanbildes 46 in 5, vom Leserabschnitt 12 empfangen und zunächst in ein Zwischenbild, ähnlich des Zwischenbildes 48 in 6, umgewandelt. Wie die Figuren darstellen, ähnelt das Zwischenbild 48 dem Rohscanbild 46, weist jedoch Verbesserungen von Hauptmerkmalen auf. Um die Bildumwandlung abzuschließen, kann jedes Pixel im Zwischenbild 48 durch Durchschnittsbildung einer n × n-Pixelmatrix (wobei n größer ist als 1) erzeugt werden, welche dem Rohscanbild 46 entnommen wird. In Übereinstimmung mit einer Ausführungsform werden 3 × 3-Pixelmatrizen verwendet. Das Pixel (neuer Pixelwert) bei Reihe y und Spalte × im Zwischenbild 48 wird angegeben durch:

Der nächste Schritt in der Vorverarbeitung 34 kann darin bestehen, das Zwischenbild 48 (6) in ein monochromes Bild ähnlich dem monochromen Bild 50 in 7 umzuwandeln. Die Umwandlung von dem Zwischenbild 58 (6) in das monochrome Bild 50 (7) kann wie folgt erzielt werden: Jedes Pixel in dem monochromen Bild wird durch Vergleich des 5 × 5-Durchschnittswerts eines aus dem Zwischenbild 48 entnommenen Pixels mit einem 3 × 3-Durchschnitt für dieselbe Pixelstelle erzeugt. Es sollte sich verstehen, dass unterschiedliche Größen von Pixelmatrizen verwendet werden könnten, ohne vom Schutzumfang der vorliegenden Erfindung abzuweichen. Das Pixel (neuer Pixelwert) bei Reihe y und Spalte x in dem monochromen Bild ergibt sich wie folgt:

Mit Bezug auf 4 ist ein weiterer Prozess innerhalb der Bildqualifikation 18 das Anti-Spoofing 36. Damit das Fingerabdruck-Bilderzeugungssystem 10 Anti-Spoofing-Techniken beinhalten kann, wie hierin beschrieben, muss ein Leserabschnitt 12, welcher sowohl eine Infrarotlichtquelle als auch eine LED-Lichtquelle zum Abstrahlen von Licht in eine optische Vorrichtung aufweist, in dem System enthalten sein. Natürlich können in anderen Lesevorrichtungen andere Anti-Spoofing-Techniken implementiert werden. Das Anti-Spoofing 36 ist ein Verfahren zum Erfassen eines nicht lebenden Fingers, wie beispielsweise eines gefälschten Fingers, einer Zeichnung auf Papier oder eine Fotodarstellung auf Mylar-Folie. Das Anti-Spoofing liefert auch Schutz gegen eine im Voraus aufgenommene Wiedergabe von lebenden Scans. Das Anti-Spoofing kann die Aufnahme und den Vergleich von zwei aufeinanderfolgenden Bildern umfassen, wobei das erste Bild durch eine Infrarotlichtquelle von der Seite beleuchtet wird und das zweite Bild von hinten durch eine sichtbare LED-Lichtquelle beleuchtet wird.

Der Anti-Spoofing-Prozess beginnt, indem sichergestellt wird, dass die von hinten beleuchtete LED-Lichtquelle abgeschaltet ist. Als nächstes wird die von der Seite beleuchtete Infrarotlichtquelle eingeschaltet. Das Schalten der Lichtquellen kann auf einer Zufallsbasis durchgeführt werden, um Szenarien gegenzusteuern, in welchen im Voraus aufgenommene Abbildungen wiedergegeben werden. Das mit Infrarotlicht beleuchtete Bild wird aufgenommen und in einer Ausführungsform in Übereinstimmung mit der vorstehend beschriebenen Vorverarbeitung 34 vorverarbeitet, um ein erstes monochromes Bild zu erzeugen. Die monochromen Bilder 58, 59 und 60, welche in 9A, 9B bzw. 9C gezeigt sind, stellen Bilder dar, welche mit Hilfe einer Infrarotlichtquelle abgeleitet wurden, um auf einer Mylar-Folienquelle, einer Papierquelle bzw. einer lebenden Fingerquelle enthaltene Bilder zu scannen.

Der nächste Schritt im Anti-Spoofing-Prozess besteht darin, die Infrarotlichtquelle abzuschalten und die von hinten beleuchtete LED-Lichtquelle einzuschalten, um ein zweites Bild aufzunehmen, welches vorverarbeitet und in ein zweites monochromes Bild umgewandelt werden kann. Die monochromen Bilder 52, 54 und 56, welche in 8A, 8B bzw. 8C gezeigt sind, stellen Bilder dar, welche unter Verwendung einer von hinten beleuchteten LED-Lichtquelle abgeleitet wurden, um Bilder von einer Mylar-Filmquelle, einer Papierquelle bzw. einer lebenden Fingerquelle zu scannen.

Im letzten Schritt des Anti-Spoofing werden die monochromen Bilder mit Infrarotursprung mit den monochromen Bildern mit LED-Ursprung verglichen und übereinstimmende Pixelwerte vermerkt. Im Allgemeinen erzeugen Bildscans von lebenden Fingern eine sehr hohe Korrelation von ähnlichen Werten im Vergleich zu Bildern, die auf gefälschten Bildquellen basieren. Beispielhaft sind die Bilder 56 und 62 im Wesentlichen gleich, während die Hauptmerkmale in den Bildern 52 und 58 sowie den Bildern 54 und 60 Pixel beinhalten, deren Werte im Wesentlichen gegensätzlich zueinander sind (d.h. ein Merkmal, welches in einem Bild schwarz ist, ist in dem entsprechenden Vergleichsbild nicht schwarz). wenn das Fingerabdruck-Bilderzeugungssystem 10 mit Ergebnissen konfrontiert wird, die anzeigen, dass ein nicht lebendes Bild gezeigt wurde, kann es eine weitere Verarbeitung beenden, bis ein lebender Finger zum Scannen präsentiert wird.

Es sollte sich verstehen, dass während das Anti-Spoofing-Verfahren in Bezug auf den Vergleich von monochromen Scanbildern beschrieben wurde, der Anti-Spoofing-Prozess ebenso auf Rohscan- oder andere Bildkonfigurationen angewendet werden könnte. Da monochrome Bilder sich jedoch aus einem beschränkten Bereich von Pixelwerten zusammensetzen, liefern sie ein glattes vergleichbares Modell, welches typischerweise ein klares und präzises Ergebnis erzeugt.

Mit Bezug auf 4 ist eine weitere Komponente innerhalb des Bildqualifikations(18)-Prozesses die Steigungstabellenerzeugung 38. Der Zweck der Steigungstabelle, wenn sie einmal erzeugt ist, besteht nicht darin, Informationen zu erzeugen, welche direkt verwendet werden, um dem Systemanwender Feedback zu liefern, sondern ein statistisches Werkzeug zu erzeugen, welches als Hilfe in der anschließenden Bildqualifikations(18)-Verarbeitung verwendet wird. Insbesondere könnte die Steigungstabelle verwendet werden, um die Histogrammerzeugung 40 zu ergänzen, und könnte während der Druckzentrum-Bestimmung 42 verwendet werden.

Um die Steigungstabellen-Erzeugung 38 zu beginnen, wird das während der Vorverarbeitung 34 erzeugte monochrome Bild, beispielhaft das monochrome Bild 50 (7) zunächst in eine Matrix von n × n Pixelgittern geteilt (wobei n größer als 1 ist). In einer Ausführungsform wird eine Matrix von 8 × 8 Pixelgittern verwendet. In Übereinstimmung mit dieser Ausführungsform und in Übereinstimmung mit beispielhaften Bildscanparametern 28 (3) weist eine Matrix von 8 × 8 Pixelgittern 27 Gitter in x-Richtung und 29 Gitter in y-Richtung auf.

Zur Unterstützung der Erzeugung der Steigungstabelle wird zunächst eine Roh-Steigungstabelle erzeugt. Die Roh-Steigungsdatentabelle ist beispielhaft, in Übereinstimmung mit beispielhaften Parametern 28, eine zweidimensionale Matrix 27 × 29, wobei jeder Eintrag in die Tabelle drei Einträge umfasst:

  • 1. Eine Zählung der Änderungen der x-Koordinate.
  • 2. Eine Zählung der Änderungen der y-Koordinate.
  • 3. Eine Zählung der geprüften Pixel.

Die Roh-Steigungstabelle wird erzeugt durch Durchführung einer Konturenverfolgung der Merkmale innerhalb jedes Pixelgitters der Matrix aus Pixelgittern, in welche das monochrome Bild 50 geteilt wurde. Mit Wanderung der Spur durch die Pixelgitter werden die drei in der Roh-Steigungsdatentabelle enthaltenen Elemente um 1 erhöht. Nachfolgend ein Diagramm, welches die Werte zeigt, die zu der Roh-Steigungsdatentabelle für die acht möglichen nächsten Pixelkombinationen hinzugefügt werden sollen (p ist das aktuelle Pixel, N ist das nächste Pixel, * steht für ein gewöhnliches Pixel und dient als Füller zu Darstellungszwecken):

Das Bild 64 in 10 ist eine Darstellung eines monochromen Bildes nachdem die Konturverfolgung abgeschlossen wurde.

Nachdem die Konturverfolgung durch jedes Pixelgitter abgeschlossen wurde und die Roh-Steigungsdatentabelle vollständig ist, ist die Steigungstabelle bereit zur Erzeugung. Die Steigungstabelle ist eine zweidimensionale Matrix und ist in Übereinstimmung mit beispielhaften Parametern 28 (3) 27 × 29. Jeder Eintrag in der Steigungstabelle besteht aus einem einzelnen Eintrag, nämlich der Steigung einer Papillarlinie oder von Papillarlinien, welche durch jedes einzelne Pixelgitter fließen. Zu Beginn sind alle Einträge in der Steigungstabelle auf ein -eins (ungültige Steigung) gesetzt. Die Steigung für jedes Pixelgitter wird mit Hilfe von Informationen aus der Roh-Steigungsdatentabelle berechnet und wird spezifisch wie folgt berechnet:

Bild 66 in 11 ist eine Darstellung eines monochromen Bildes mit einer Steigungsschablone basierend auf einer abgeschlossenen Steigungstabelle.

Mit Bezug auf 4 ist eine weitere Komponente der Bildqualifikation 18 die Histogrammerzeugung 40. Ein vollständiges Histogramm wird innerhalb des Bilderzeugungssystems 10 verwendet, um die Qualität gescannter Fingerabdruck-Bilddaten sowie die Eignung der Bilddaten für anschließende Verarbeitung zu bestimmen.

Ein vollständiges Histogramm ist eine vieldimensionale n × n-Matrix (wobei n größer als 1 ist), beispielsweise zweidimensional, und in Übereinstimmung mit beispielhaften Parametern 28 (3) eine 6 × 6-Matrix. Jede Zelle innerhalb der Matrix entspricht einem Abschnitt der analysierten Bilddaten. Bild 68 in 12 ist eine Darstellung eines vollständigen Histogramms, welches die Zelle 67 enthält, zusätzlich zu anderen nicht bezeichneten Zellen. Bild 70 in 13 ist eine Darstellung desselben abgeschlossenen Histogramms, welches über dem Rohscanbild liegt, von dem das Histogramm beispielhaft abgeleitet wurde. Die Zuordnung unterschiedlicher Abschnitte eines Bildes zu unterschiedlichen Zellen der Histogramm-Matrix macht vielfache individuelle Qualitätsbestimmungen für begrenzte Mengen an Bilddaten möglich, welche jeder der unterschiedlichen Histogrammzellen entsprechen, anstatt dass eine einzige Qualitätsbestimmung für den gesamten Bilddatensatz erfolgt. Diese vielfachen Qualitätsbestimmungen können verwendet werden, um selektiv Abschnitte der Bilddaten auszuschließen, welche Zellen entsprechen, die niedrige Qualitätscharakteristika zeigen. Nachdem Zellen mit niedriger Qualität ausgeschlossen wurden, kann eine positive oder negative Systembestimmung dahingehend erfolgen, ob genügend Datenzellen von annehmbarer Qualität für die anschließende Verarbeitung verfügbar sind.

Jede Zelle eines Histogramms kann eine Histogrammliste aufweisen. Die Histogrammliste ist in Übereinstimmung mit dem vorstehend beschriebenen beispielhaften Leserabschnitt 12 eine Matrix von 64 Einträgen (null bis 63). Jedem Eintrag wird ein Pixelwert zugeordnet (der beispielhafte Leserabschnitt 12 weist 64 potentielle Pixelwerte auf) und umfasst eine Zählung der Anzahl von Bilddatenpixeln mit dem zugeordneten Pixelwert. Jede Histogrammzelle umfasst ebenfalls beispielhaft eine Zählung der Anzahl von Pixeln innerhalb der Zelle, welche verarbeitet und in der Histogrammliste klassifiziert werden.

Es sollte sich verstehen, dass manche Lesertechniken Histogramme mit unterschiedlichen Konfigurationen erfordern können, damit präzise Qualitätsbestimmungen erfolgen können. Beispielsweise können manche Techniken des Leserabschnitts 12 einen breiteren oder engeren Bereich von Pixelwerten einschließen. Es sollte sich verstehen, dass maßgeschneiderte Histogramme zur Unterbringung anderer Techniken für Leserabschnitte 12 noch immer in den Schutzumfang der vorliegenden Erfindung fallen.

Eine ausführlichere Beschreibung der Funktionen, welche während der Erzeugung einer beispielhaften zweidimensionalen 6 × 6-Histogrammmatrix während des Abschnitts der Histogrammerzeugung 40 der Bildqualifikation 18 durchgeführt werden, ist wie folgt:

In einer Ausführungsform der Histogrammerzeugung 40 wird die Bildqualität in vier Klassifikationen aufgeteilt:

  • 1. Ausgezeichnet.
  • 2. Gut.
  • 3. Ausreichend.
  • 4. Schlecht.

Zusätzlich können diejenigen Bereiche, von welchen angenommen wird, dass sie eine ausreichende oder schlechte Qualität aufweisen, zwei zusätzliche Attribute aufweisen: zu dunkel oder zu hell.

Die exakten Details bezüglich der Arten von Datenelemente, welche in einem abgeschlossenen Histogramm aufgezeichnet sind und wie diese Datenelemente interpretiert werden, um die Bildqualitäts-Klassifikation sich in Abhängigkeit von der Art der erwünschten Daten und dem Leserabschnitt 12 zu unterscheiden, welcher innerhalb des Fingerabdruck-Bilderzeugungssystems 10 verwendet wird. Anders gesagt kann die Qualitäts-Klassifikation in Übereinstimmung mit der Art der erwünschten Bildqualitätsdaten und in Übereinstimmung mit einem bestimmten Leserabschnitt 12 eingestellt werden.

In einer Form der Qualitäts-Klassifikation weisen die in jeder Histogrammzelle aufgezeichneten Daten sieben bestimmte Datenelemente auf. Im Interesse der Vereinfachung der Beschreibung soll den sieben Datenelementen die Bezeichnung A–G verliehen werden. Die Histogrammzelle 72 in 12 weist die Datenelemente A–G auf, welche beispielhaft den folgenden Informationen entsprechen:

Gleichung 6

  • A. Stellt die Anzahl von Pixeln in der Histogrammliste dar, welche den weißesten 25% der gelisteten Pixelwerte entsprechen.
  • B. Stellt die Anzahl von Pixeln in der Histogrammliste dar, welche den weißesten 35% der gelisteten Pixelwerte entsprechen.
  • C. Maximale Höhe zwischen Punkten B und F. (nicht verwendet bei der Qualitätsbestimmung)
  • D. Durchschnittlicher Pixelwert. (nicht verwendet in der Qualitätsbestimmung)
  • E. Minimale Höhe zwischen Punkten B und F. (nicht verwendet in der Qualitätsbestimmung)
  • F. Stellt die Anzahl von Pixeln in der Histogrammliste dar, welche den schwärzesten 35% der gelisteten Pixelwerte entsprechen.
  • G. Stellt die Anzahl von Pixeln in der Histogrammliste dar, welche den schwärzesten 25% der gelisteten Pixelwerte entsprechen.

In Übereinstimmung mit einer Form der Qualitätsbestimmung wird die Bilddatenqualität durch Vergleichen der Spalten im Zusammenhang mit den Punkten A, B, F und G bestimmt. Insbesondere wird die Bilddatenqualität beispielhaft wie folgt bestimmt:

Wie nachfolgend noch ausführlicher beschrieben, wird Feedback mit Bezug zu der bestimmten Bildqualität an einen Systemanwender in übereinstimmung mit der Feedback-Interaktion 44 geliefert.

Unter erneuter Bezugnahme auf 4 ist die Druckzentrums-Bestimmung 42 eine weitere Komponente, welche in der Bildqualifikation 18 enthalten sein könnte. Die Druckzentrums-Bestimmung 42 wird durch Analyse von Bilddaten durchgeführt, um das Zentrum des zugehörigen Druckbildes zu finden. Eine Weise, wie die Druckzentrums-Bestimmung 42 erzielt werden könnte, ist durch die Anwendung eines Satzes von Filterregeln auf Daten, welche in der Steigungstabelle enthalten sind, die während der Steigungstabellenerzeugung 38 erzeugt wird. Nach der Bestimmung des Druckzentrums erfolgt eine weitere Bestimmung, ob ein neuer Scan erfolgen sollte, wobei der Finger des Systemanwenders erneut auf einer Bilderzeugungsoberfläche des Leserabschnitts 12 positioniert wird. Feedback mit Bezug auf diese weitere Bestimmung wird an einen Systemanwender in Übereinstimmung mit der Feedback-Interaktion 44 geliefert.

Unter erneuter Bezugnahme auf 4 ist die Feedback-Interaktion 4 eine weitere potentielle Komponente der Bildqualifikation 18. Wie vorstehend erwähnt, ist der Leserabschnitt 12 der Fingerabdruck-Bilderzeugung 10 (1) in der Lage, einen Live-Scan eines Fingerabdrucks zu erfassen, In Übereinstimmung mit der Feedback-Interaktion 44 werden, wenn die Bildanalyse-/-verarbeitungsvorrichtung 14 Fingerabdruck-Bilddaten von dem Leserabschnitt 12 empfängt und die Funktionen der Bildqualifikation 18 an einem Bruchteil dieser Daten durchführt, im Wesentlichen Echtzeit-Feedback und -Anweisungen an den Anwender des Systems 10 bezüglich unzureichender Eigenschaften der gescannten Bilddaten geliefert, welche verbessert werden könnten. Feedback und Anweisungen für die Korrektur von Unzulänglichkeiten von Bilddaten könnten sich auf die geeignete Positionierung des Fingers des Benutzers auf dem Leserabschnitt 12 beziehen (Druckzentrums-Bestimmung 42). Alternativ können sie sich auf die Detektion eines lebenden Fingers (Anti-Spoofing 36) oder auf Bilddaten-Qualitätscharakteristika (Histogrammerzeugung 40) beziehen. In einer Ausführungsform der vorliegenden Erfindung kann auch Feedback geliefert werden, welches sich auf den Feuchtigkeitsgehalt des Fingers des Systemanwenders bezieht.

Nachdem die Bildqualifikation 18 abgeschlossen ist, ist der nächste Schritt, wie durch Block 20 in 2 angezeigt, die Schaffung eines Bildmusters. 15 ist ein Blockdiagramm, welches einen Satz prozeduraler Komponenten darstellt, die die Musterschaffung 20 ausmachen. Um die Präzision der Musterschaffung 20 zu verbessern, werden im Wesentlichen alle verfügbaren Bilddaten, alle innerhalb des beispielhaften Verarbeitungsgebiets 32 (3) enthaltenen Bilddaten, der Bildanalyse-/-verarbeitungsvorrichtung 14 für die Mustererzeugungs(20)-Verarbeitung verfügbar gemacht. Dies kontrastiert mit dem Bruchteil von Daten, welche während der Bildqualifikation 18 aus Geschwindigkeits- und Effizienzgründen verarbeitet werden. Während einige der Komponenten der Musterschaffung 20 Komponenten der Bildqualifikation 18 ähneln, wird keiner der während der Bildqualifikation 18 erzeugten Datensätze während der Musterschaffung 20 verwendet. Wie die Bildqualifikation 18 beginnt die Musterschaffung 20 mit einem Satz roher Scanbilddaten und fährt von diesem Punkt aus fort.

Die Musterschaffung 20 beginnt in Übereinstimmung mit 15 mit dem Anti-Spoofing 74. Das Anti-Spoofing 74 ist ein optionaler Schritt und wird im Wesentlichen in gleicher Weise und aus denselben Gründen durchgeführt wie vorstehend mit Bezug auf das Anti-Spoofing 36, einer prozeduralen Komponente der Bildqualifikation 18, beschrieben. Ein zentraler Unterschied zwischen dem Anti-Spoofing 74 und dem Anti-Spoofing 36 besteht jedoch darin, dass das Anti-Spoofing 74 mit Hilfe eines vollständigen Datensatzes durchgeführt wird, während das Anti-Spoofing 36 nur unter Verwendung eines Bruchteils verfügbarer Daten durchgeführt wird. Der Zweck des Anti-Spoofing 74 liegt darin, weiter sicherzustellen, dass die Quelle des Rohscanbildes nicht gefälscht ist. Wenn das Anti-Spoofing 74 zu der Anzeige führt, dass die Quelle des Rohdatenbildes gefälscht ist, kann eine anschließende Verarbeitung beendet werden, bis eine gültige Bildquelle dem System 10 beigebracht wird.

Das Anti-Spoofing 74 könnte mit Hilfe von Roh-Scanbilddaten oder einem während der Musterschaffung 20 erzeugten alternativen Bilddatenformat durchgeführt werden. Beispielsweise könnte das Anti-Spoofing 74 unter Verwendung monochromer Bilder durchgeführt werden, welche wie nachfolgend beschrieben das Produkt der Vorverarbeitung 76 sind. Anders gesagt, könnte das Anti-Spoofing 74, während es in 15 als der erste Schritt der Musterschaffung 20 dargestellt wurde, auch später in dem Musterschaffungs(20)-Prozess durchgeführt werden, oder der Schritt könnte, da das Anti-Spoofing 74 optional ist, völlig weggelassen werden.

Ein früher Schritt in dem Musterschaffungs(20)-Prozess ist, wie durch Block 76 in 15 angezeigt, die Vorverarbeitung 76. Der Zweck der Vorverarbeitung 76 ist es, ein monochromes Bild mit einem angepassten Aspektverhältnis zu erzeugen, welches auch ebene und klare Merkmale aufweist, die für eine anschließende Verarbeitung geeignet sind. Die Vorverarbeitung 76 unterscheidet sich von dem vorstehend mit Bezug zur Bildqualifikation 18 beschriebenen Vorverarbeitungsschritt. Insbesondere wird die Vorverarbeitung 76 unter Verwendung eines kompletten Satzes verfügbarer Bilddaten, anstatt nur eines Bruchteils, durchgeführt. Zusätzlich weist die Vorverarbeitung 76 einige zusätzliche Schritte auf, welche dazu gedacht sind, Unregelmäßigkeiten und Ungleichmäßigkeiten in dem sich ergebenden monochromen Bild zu beseitigen. Während diese Schritte für die Bildqualifikation 18 nicht nötig sind, erweisen sie sich als vorteilhaft für die anschließende Verarbeitung während der Musterschaffungs(20)-Verarbeitung.

16 ist ein Blockdiagramm, welches die prozeduralen Haputkomponenten der Vorverarbeitung 76 darstellt. Wie durch Block 90 angezeigt, ist ein früher Schritt des Prozesses die Erzeugung eines Satzes von Bilddaten ähnlich der Rohscan-Bilddaten, jedoch mit einem modifizierten Aspektverhältnis. Das Aspektverhältnis kann auf eine 1-zu-1-Konfiguration angepasst werden. Die Korrektur des Aspektverhältnisses ist notwendig für die anschließende Verarbeitung, welche eine Rotation des Bildes und seiner entsprechenden Daten beinhaltet. Die Musterschaffung 20 könnte wahrnehmbar ausgeführt werden, ohne das Bildaspektverhältnis anzupassen, doch die Anpassung ist vorteilhaft für Prozeduren, welche nach der Musterschaffung 20 ausgeführt werden, so beispielsweise den Mustervergleich 24.

Das Aspektverhältnis eines Rohscanbildes kann modifiziert werden, indem das Rohscanbild Zeile für Zeile kopiert wird und die Zeilen zu gegebener Zeit und an gegebener Stelle nachgebildet werden, um ein korrigiertes Rohscanbild mit der erwünschten Aspektverhältnisskala zu erzeugen. Das Bild 98 in 17 ist eine Darstellung eines korrigierten Rohscanbildes, wobei das Aspektverhältnis eines Rohscanbildes auf 1 zu 1 angepasst wurde.

Eine weitere Komponente der Vorverarbeitung 76 ist in Übereinstimmung mit Block 92 in 16 die Umwandlung eines korrigierten Rohscans (Bild 98 in 16) in ein monochromes Bild. Da ein monochromes Bild, welches dementsprechend erzeugt wurde, auf allen verfügbaren Bilddaten im Zusammenhang mit einem Bild mit einem modifizierten Aspektverhältnis basiert, ist es unwahrscheinlich, dass dieses monochrome Bild identisch mit dem während der Bildqualifikation 18 erzeugten ist. Zusätzlich werden Merkmale innerhalb des monochromen Bildes der Musterschaffung 20, wie nachfolgend noch beschrieben, schließlich modifiziert und manipuliert, um bestimmte Bildcharakteristika zu betonen. Diese Betonung von Bildcharakteristika ist vorteilhaft für die Musterschaffung 20, aber unnötig für die Bildqualifikation 18.

Der erste Schritt in der Umwandlung eines korrigierten gescannten Rohbildes in ein monochromes Bild kann die Schaffung eines Zwischenbildes sein. Der Zweck der Schaffung eines Zwischenbildes ist die Durchschnittsbildung von Merkmalen innerhalb des korrigierten Rohscanbildes, welche vorherrschend zu hell oder zu dunkel sind, möglicherweise aufgrund des Feuchtigkeitsgehalts des Fingers eines Systemanwenders oder von Beleuchtungsmerkmalen. Die Durchschnittsbildung dieser Merkmale schafft ein resultierendes Bild, welches eine vollständigere und kontinuierlichere Drahtrahmenerzeugung liefert, die in anschließenden Verarbeitungsschritten folgt. In Übereinstimmung mit einer Ausführungsform wird zur Erzeugung des Zwischenbildes jedes Pixel durch Durchschnittsbildung einer 5 × 5-Pixel-Matrix gewählt, welche einem korrigierten Rohscan eines Bildes entnommen wird (wobei korrigiert bedeutet, dass das Bildaspektverhältnis angepasst wurde). Das Pixel (neuer Pixelwert) in Zeile y und Spalte x in dem Zwischenbild ergibt sich wie folgt:

Bild 100 in 18 ist eine Darstellung eines Zwischenbildes. Es sollte sich verstehen, dass Pixelmatrizen anderer Größe während der Umwandlung in das Zwischenbildformat verwendet werden könnten.

Die Umwandlung von einem korrigierten Rohscanbildformat in ein monochromes Bildformat, nachdem ein Zwischenbild erhalten wurde, kann die Anwendung eines Kantenerfassungsalgorithmus auf das Zwischenbild umfassen, um ein verbessertes Bild zu erzeugen. Der Kantenerfassungsalgorithmus kann wie folgt angewendet werden:

Gleichung 9

  • Setze neuen Pixelwert auf sechsmal den Wert des Pixels im Zwischenbild bei Zeile y und Spalte x.
  • Subtrahiere von neuem Pixelwert den Wert des Pixels im Zwischenbild bei Zeile y – 1 und Spalte x – 1.
  • Subtrahiere von neuem Pixelwert den Wert des Pixels im Zwischenbild bei Zeile y – 1 und Spalte x + 1.
  • Subtrahiere von neuem Pixelwert den Wert des Pixels im Zwischenbild bei Zeile y + 1 und Spalte x – 1 Subtrahiere von neuem Pixelwert den Wert des Pixels im Zwischenbild bei Zeile y + 1 und Spalte x + 1.
  • Wenn der neue Pixelwert kleiner ist als null, setze neuen Pixelwert gleich null.
  • Speichere neuen Pixelwert im verbesserten Bild bei Zeile y und Spalte x.

Bild 102 in 19 ist eine Darstellung eines verbesserten Bildes nachdem der Kantendetektionsalgorithmus angewendet wurde.

Der abschließende Schritt des Abschnitts von Block 92 der Vorverarbeitung 76 (16) besteht darin, das verbesserte Bild in ein monochromes Bildformat umzuwandeln. Jedes Pixel in dem monochromen Bild kann beispielsweise durch Bestimmung eines Durchschnitts-Pixelwertes eines großen Gitterbereichs und Vergleichen dieses Durchschnitts mit dem durchschnittlichen Pixelwert eines kleineren Gitterbereichs für die gleiche Pixelposition erzeugt werden. Eine Schwellen-Trennungsvarianz zwischen den Durchschnitts-Pixelwerten der großen und kleinen Pixelgitter wird zur Bestimmung der Einstellung der entsprechenden Pixel an dieser Position auf einen Weiß- oder Schwarzpegel verwendet (d.h. das monochrome Bildergebnis). Pixelgittergrößen und Schwellenwerte können so gewählt werden, dass sie den Charakterstika des verwendeten Bildlesers gerecht werden. Das Pixel (neuer Pixelwert) in Zeile y und Spalte x in dem monochromen Bild kann sie wie folgt ergeben:

Bild 104 in 20 ist eine Darstellung eines dementsprechend erzeugten monochromen Bildes.

Eine weitere Komponente der Vorverarbeitung 76 ist, wie durch Block 94 in 16 angezeigt, die Lokalisierung und Ausfüllung von Unregelmäßigkeiten, insbesondere kleinen Löchern, innerhalb des monochromen Bildes. Die Lokalisierung und Ausfüllung kleiner Löcher im monochromen Bild ist nötig, damit ein Drahtrahmenbild, welches anschließen von dem monochromen Bild während der Musterschaffung 20 abgeleitet wird, keine Blasen oder Leerstellen darin aufweist. Der Unregelmäßigkeiten-Lokalisierungsprozess wird durch Scannen eines monochromen Bildes, wie beispielsweise Bild 104 in 20, durchgeführt, bis ein unverarbeiteter Pixelwert von null erfasst wird. An diesem Punkt wird das erfasste Pixel als verarbeitet markiert, und eine rekursiv abfallende Routine wird aufgerufen. Jedes Pixel mit wert null wird als verarbeitet markiert und entsprechende x- und y-Koordinaten in einer Tabelle gespeichert. Wenn keine weiteren Pixel mit Wert null lokalisiert werden können, wird die Größe der Bereiche mit nullwertigen Pixeln berechnet (Anzahl von x- und y-Koordinateneinträgen in der Tabelle). Wenn beispielsweise die Bereichsgröße 35 Pixel oder weniger beträgt, wobei die 35 Pixelwerte basierend auf den mit Bezug zu 3 dargestellten Bildcharakteristika gewählt werden, und vorausgesetzt die Form des Bereichs entspricht in etwa einem Kreis, so wird der Bereich mit Hilfe eines Pixelwertes von 255 ausgefüllt. Die Anzahl von Pixeln, die nötig sind, damit ein Bereich für eine Ausfüllung in Frage kommt, kann angepasst werden, um einem bestimmten Leserabschnitt 12 zu entsprechen, ohne vom Geist der vorliegenden Erfindung abzuweichen. Wenn das gesamte monochrome Bild geprüft wurde, ist der Prozess in Block 94 abgeschlossen.

Bild 106 in 21 ist eine Darstellung eines monochromen Bildes, wie beispielsweise des Bildes 104 in 20, nachdem Unregelmäßigkeiten lokalisiert und zu Zwecken der beispielhaften Darstellung mit Pixeln von im Wesentlichen gleichem Weißwert gefüllt wurden. Die Zentrumskoordinaten der weißen ausgefüllten Bereiche innerhalb des Bildes 106 in 21 und die Größe dieser Bereiche können in einer Tabelle gespeichert und als Datenelementpunkte klassifiziert werden. Diese Datenelementpunkte, welche illustrativ als Mikrominutien bezeichnet und durch ihre Position und zugehörigen Steigungswert der Papillarlinie, auf welcher sie liegen, klassifiziert sind, stellen Bilddatenpunkte dar, welche einzigartig für einen bestimmten Systemanwender sind und in Kombination mit anderen Datenelementpunkten katalogisiert und im Vergleiche eines Satzes von Bildscandaten mit einem anderen verwendet werden können. Die mikrominutiösen Punkte sind klein (sehr klein, beispielsweise wenige tausendstel Zentimeter im Durchmesser), und stellen im wahrscheinlichsten Fall die Positionen der Schweißpunkte eines Systemanwenders dar. Es sollte sich verstehen, dass die Anzahl in einem Bildscan identifizierter mikrominutiöser Punkte im Wesentlichen von den Auflösungsfähigkeiten eines bestimmten Leserabschnitts 12 sowie vom Zustand der Fingerspitze (feucht, trocken, beschädigt, etc.) abhängt. Je höher die Auflösungsfähigkeit des Leserabschnitts 12, umso mehr mikrominutiöse Punkte stehen für die Identifikation zur Verfügung.

Die letzte Komponente der Vorverarbeitung 76 besteht im Übereinstimmung mit Block 96 in 16 darin, Bildelemente innerhalb des monochromen Bildes zu ebnen und auszufüllen. Im Fall von Fingerabdruck-Bilddaten sind die Bildelemente innerhalb des monochromen Bildes typischerweise Fingerabdruck-Papillarelemente. Der Ebnungs- und Füllprozess ist so ausgelegt, dass Pixel an der Grenze von Fingerabdruck-Papillarelementen hinzugefügt und weggenommen werden. Die Ebnung der Grenzlinien entlang der Papillarelemente optimiert die Qualität der anschließend erzeugten Drahtrahmenbilder, welche von dem fertigen monochromen Bild später im Musterschaffungsprozess 20 abgeleitet werden.

Das Eingangssignal des Ebnungs- und Füllprozesses 96 kann beispielsweise das monochrome Bild sein, nachdem es in Übereinstimmung mit Block 94 ausgefüllt wurde. Bild 108 in 22 ist eine Darstellung eines ausgefüllten monochromen Bildes, wobei ausgefüllte Pixel keinen im Wesentlichen weißen Wert mehr beinhalten, wie dies in 21 der Fall war. Das Ausgangssignal des Ebnungs- und Füllprozesses 96 ist ein ebenes monochromes Bild ähnlich Bild 110 in 23. Zur Durchführung der Transformation wird jedes Pixel in dem ausgefüllten monochromen Bild als das Zentrum einer 3 × 3-Matrix verwendet. Jedes der umgebenden acht Pixel wird verwendet, um einen Index in eine Tabelle zu bilden. Der Inhalt jedes Tabelleneintrages enthält zwei Flags:

  • 1. Tue nichts
  • 2. Setze das zentrale Pixel

Nachfolgend sind die Indizes in die Tabelle für diejenigen Werte angeführt, die das Set-Flag enthalten. Alle anderen Tabelleneinträge enthalten das Tue-nichts-Flag. [wobei der Indexwert gleich der Binärsumme vorhandener Pixelpositionen ist und als Hexadezimalwert dargestellt wird (d.h. Pixelposition 4, falls vorhanden, = 24. was einem Dezimalwert von 16 entspricht); und wobei Zählung gleich Anzahl vorhandener Pixel in einer 3 × 3-Matrix um die zentrale Pixelposition "P" herum.]

Mit Bezug auf 16 kann, nachdem die Bildebnung und Ausfüllung 96 abgeschlossen ist, die Vorverarbeitung 76 ebenfalls abgeschlossen werden.

Eine weitere prozedurale Komponente der Musterschaffung 20 ist in Übereinstimmung mit Block 78 in 15 die Steigungstabellenerzeugung 78. Die Steigungstabellenerzeugung 78 ähnelt im Wesentlichen der Steigungstabellenerzeugung 38, welche vorstehend mit Bezug auf 4 und die Bildqualifikation 18 beschrieben wurde. Der Hauptunterschied zwischen der Steigungstabellenerzeugung 78 und der Steigungstabellenerzeugung 38 besteht darin, dass während der Steigungstabellenerzeugung 78 alle verfügbaren Bilddaten verarbeitet werden anstelle nur eines Bruchteils verfügbarer Bilddaten. Zusätzlich umfasst die Steigungstabellenerzeugung 78 die Verarbeitung eines einzigartigen monochromen Bildes, welches in Übereinstimmung mit den Prozeduren der Vorverarbeitung 76 erzeugt wurde, anstelle des beschränkten monochromen Bildes, welches in Übereinstimmung mit den Prozeduren der Vorverarbeitung 34 erzeugt wurde.

Während die Steigungstabellenerzeugung 38 in Übereinstimmung mit beispielhaften Bildscanparametern 28, welche in mit Bezug auf 3 definiert sind, die an der Verarbeitung einer beispielhaften Matrix von 8 × 8 Pixelgittern mit 27 Gittern in x-Richtung und 29 Gittern in y-Richtung beteiligt ist, beinhaltet die Steigungstabellenerzeugung 78 die Verarbeitung eines kompletteren Datensatzes und einer entsprechend unterschiedlichen Gitterkonfiguration. Zusätzlich können während der Musterschaffung 20 beispielhafte Parameter 28 in Übereinstimmung mit Aspektverhältnis-Anpassungen variieren, welche während der Vorverarbeitung 78 erfolgt sind. Beispielsweise ist 24 eine Darstellung eines alternativen Satzes beispielhafter Bildscanparameter 112, welche einen Scanbereich 114 und einen Verarbeitungsbereich 116 beinhalten. Alternative beispielhafte Bildscanparameter 112 ähneln beispielhaften Scanparametern 28, doch der Verarbeitungsbereich 116 reflektiert eine beispielhafte Änderung der Größenkonfiguration, welche auftreten kann, wenn das Aspektverhältnis des Bildscans während der Vorverarbeitung 76 angepasst wird.

Daher wird beispielhaft in Übereinstimmung mit beispielhaften Bildscanparametern 112 die Steigungstabellenerzeugung 78 erzielt durch Teilen des dem Verarbeitungsbereich 116 entsprechenden Bildes in eine beispielhafte Matrix von 10 × 10 Pixelgittern. Angesichts der Tatsache, dass jedes Pixel und jede Zeile analysiert werden soll, ergibt dies 44 Gitter in x-Richtung und 60 Gitter in y-Richtung. Es sollte betont werden, dass die präzisen Werte, die dem Steigungstabellen-Erzeugungsprozess zugehören, von den Charakteristika des bestimmten verwendeten Leserabschnitts 12 abhängen. Die Analyse kann darauf zugeschnitten werden, jeden beliebigen Leserabschnitt 12 unterzubringen.

Wie vorstehend mit Bezug auf die Steigungstabellenerzeugung 38 erläutert, existieren zwei Tabellen, welche während des Steigungstabellen-Erzeugungsprozesses geschaffen werden: die Rohsteigungsdatentabelle und die Steigungstabelle. In Übereinstimmung mit beispielhaften Scanparametern 112 ist die Rohsteigungsdatentabelle eine zweidimensionale Matrix, welche aus 44 × 60 Zellen besteht, wobei jede Zelle in der Rohsteigungsdatentabelle aus drei einzelnen Einträgen besteht:

  • 1. Einer Zählung der Änderungen der x-Koordinate.
  • 2. Einer Zählung der Änderungen der y-Koordinate.
  • 3. Einer Zählung der getesteten Pixel.

Die Rohsteigungsdatentabelle wird geschaffen durch Durchführung einer Konturverfolgung des während der Vorverarbeitung 76 erzeugten monochromen Hildes. Bei der Wanderung der Spur durch die Pixelgitter werden die drei in der Rohsteigungstabelle enthaltenen Elemente nach und nach erhöht. Nachfolgend ist ein Diagramm angeführt, welches die Werte zeigt, die für die acht nächsten Pixelkombinationen hinzuzufügen sind (P ist das aktuelle Pixel, N ist das nächste Pixel, * stellt ein gewöhnliches Pixel dar und ist ein Füllelement zu Darstellungszwecken):

Bild 118 in 25 ist eine Darstellung des monochromen Bildes, welches in Übereinstimmung mit der Vorverarbeitung 76 erzeugt wird, nachdem eine Konturverfolgung abgeschlossen ist. Wenn das gesamte Bild nachverfolgt wurde und die Rohsteigungsdatentabelle abgeschlossen ist, wird die Steigungstabelle erzeugt. Beispielhaft ist die Steigungstabelle ebenfalls eine zweidimensionale Matrix, bestehend aus 44 × 60 Zellen. Jeder Eintrag in die Steigungstabelle besteht aus einem einzelnen Eintrag, und zwar der Steigung des Papillarlinie oder der Papillarlinien, welche sich durch das entsprechende Gitter ziehen. Anfänglich werden alle Einträge in der Steigungstabelle auf –1 (ungültige Steigung) gesetzt. Die Steigung für jedes Pixelgitter wird mit Hilfe von Informationen aus der Rohsteigungsdatentabelle berechnet, die Berechnung ist wie folgt:

Bild 120 in 26 ist eine Darstellung eines monochromen Bildes, welches in Übereinstimmung mit der Vorverarbeitung 76 erzeugt wurde und eine Steigungsschablone aufweist, die mit einer vollständigen Steigungstabelle übereinstimmt. Die vollständige Steigungstabelle wird in der anschließenden Verarbeitung verwendet. Insbesondere wird sie als Hilfe während der Drahtrahmenerzeugung 82 in der Verlängerung von Drahtrahmenlinien und in der Entfernung unerwünschter Drahtrahmenlinien verwendet.

In Übereinstimmung mit Block 80 in 15 könnte ein Histogramm während der Musterschaffung 20 erzeugt werden. Ein Histogramm, welches sich aus der Histogrammerzeugung 80 ergibt, könnte verwendet werden, um eine Bestimmung über die Bildqualität innerhalb unterschiedlicher Abschnitte der analysierten Bilddaten durchzuführen. Falls eine Bestimmung erfolgt, dass ein Abschnitt des Gitters von nicht ausreichender Qualität ist, um mit der anschließenden Verarbeitung fortzufahren, so könnte dieser Abschnitt des Gitters unabhängig vom Rest des Musterschaffungs(20)-Prozesses ausgeschlossen werden. Es sollte sich verstehen, dass in Übereinstimmung mit der vorliegenden Erfindung die Histogrammerzeugung 80 an jedem beliebigen Punkt im Musterschaffungs(20)-Prozess durchgeführt werden könnte.

Die Histogrammerzeugung 80 erfolgt im Wesentlichen in gleicher Weise wie die Histogrammerzeugung 40, welche vorstehend mit Bezug auf 4 und die Bildqualifikation 18 beschrieben wurde. Die Hauptunterschiede zwischen der Histogrammerzeugung 80 und der Histogrammerzeugung 40 bestehen darin, dass alle, im Gegensatz zu einem Bruchteil der, verfügbaren Bilddaten während der Histogrammerzeugung 80 verarbeitet werden, und dass die während der Histogrammerzeugung 80 verwendeten Steigungstabellenwerte diejenigen Werte sind, die während der Steigungstabellenerzeugung 78, und nicht während der Steigungstabellenerzeugung 38, erzeugt werden.

Eine bedeutende Komponente der Musterschaffung 20 wird durch Block 82 in 15 angezeigt: die Drahtrahmenerzeugung 82. Die Drahtrahmenerzeugung 82 ist der Prozess der Ausdünnung auf einen speziellen Satz dünner Linien, welche illustrativ als Drahtrahmenlinien bezeichnet werden, wobei die Merkmale, insbesondere die Papillarlinienmerkmale des Fingerabdrucks, innerhalb des in Übereinstimmung mit der Vorverarbeitung 76 erzeugten monochromen Bildes eingeschlossen sind. 27 ist ein Blockdiagramm, welches eine detaillierte Darstellung der prozeduralen Komponenten der Drahtrahmenerzeugung 82 liefert.

Eine der Komponenten der Drahtrahmenerzeugung 82 ist, wie durch Block 122 in 27 dargestellt, die Lokalisierung von Pixeln innerhalb des monochromen Bildes, welche das annähernde Zentrum einer Vielzahl von Kanten sind, im vorliegenden Fall das annährende Zentrum von Papillarlinien des Fingerabdrucks. Sind die Zentrumspixel lokalisiert, so wird eine verdünnte Version des monochromen Bildes durch Ausdünnen der Papillarlinien auf die Zentrumspixel erzeugt, um einen Satz von Drahtrahmenlinien zu schaffen. Ein effektives Verfahren zur Lokalisierung von Pixeln, welche das annährende Zentrum von Papillarlinien darstellen, und um gleichzeitig das monochrome Bild auf einen Satz von Drahtrahmenlinien zu verdünnen, ist wie folgt (natürlich könnten andere Verfahren ebenso verwendet werden):

Bild 134 in 28 ist eine Darstellung eines monochromen Bildes nach einer ersten Entfernung von Pixeln von Papillarlinien des Bildes. Bild 136 in 29 ist eine Darstellung eines monochromen Bildes mit einer umfassenden Darstellung von Pixelentfernungs-Durchgängen, welche während der Ausdünnung des monochromen Bildes auf zentrale Bildlinienpixel erfolgen. Bild 138 in 30 ist eine Darstellung von 29, welche weiter eine Schablone eines ausgedünnten monochromen Bildes mit Roh-Drahtrahmenlinien aufweist. Bild 140 in 31 ist schließlich eine Darstellung eines verdünnten monochromen Bildes mit Roh-Drahtrahmenlinien.

Die Ausdünnungsprozess-Prozedur aus Block 122 (27) erzeugt eine verdünnte Version des monochromen Bildes, welche Drahtrahmenlinien aufweist, die an einigen Stellen mehr als ein Pixel dick sein können. Zusätzlich kann das ausgedünnte Bild als Ganzes Pixel aufweisen, welche nicht zu irgend einer Linie gehören. Entsprechend ist, wie durch Block 124 in 27 angezeigt, eine weitere Komponente der Drahtrahmenerzeugung 82 die Entfernung von überschüssigen Pixeln 124. Die Komponente 124 kann wie folgt vorangehen: Die ausgedünnte Version des monochromen Bildes wird gescannt, bis ein Pixel mit einem Wert ungleich null lokalisiert wird. Dann werden die umgebenden acht Pixel verwendet, um einen Index in einer Tabelle zu bilden. Der Eintrag in der Tabelle enthält Flags, welche die potentiell durchzuführenden Operationen definieren:

  • 1. Entferne Zentrumspixel
  • 2. Entferne Zentrumspixel und setze ein neues Pixel (M).
  • 3. Setze ein neues Pixel (N).

Nachfolgend die Indexe der Tabelle: [wobei der Indexwert gleich der Binärsumme von vorhandenen Pixelpositionen ist und als Hexadezimalwert angegeben wird (d.h. Pixelposition 4, falls vorhanden, = 24. also gleich Hexadezimalwert 16); und wobei Zählung gleich Anzahl vorhandener Pixel in einer 3 × 3-Matrix, welche die zentrale Pixelposition "P" umgeben.]

Bild 142 in 32 ist eine Darstellung einer ausgedünnten Version eines monochromen Bildes nachdem überschüssige Pixel entfernt wurden. Bild 144 in 33 ist eine Darstellung, welche die Beziehung zwischen einer ausgedünnten Version eines monochromen Bildes ohne überschüssige Pixel und einem entsprechenden monochromen Bild demonstriert (Papillarlinien des monochromen Bildes in weiß).

Nachdem die ausgedünnte Version des monochromen Bildes erzeugt und überschüssige Pixel von den Drahtrahmenlinien entfernt wurden, können, wie durch Block 126 in 27 dargestellt, können Endpunkt- und Mittelpunkttabellen konstruiert werden. Um diese Tabellen zu konstruieren, werden die Drahtrahmenlinien gescannt und alle Endpunkte (diejenigen Pixel auf den Drahtrahmenlinien, welche nur ein anderes Pixel berühren) werden in der Endpunkttabelle katalogisiert. Bild 146 in 34 ist eine Darstellung eines ausgedünnten monochromen Bildes (überschüssige Pixel entfernt), welches eine Darstellung von Daten von einer Endpunkttabelle enthält (weiße Punkte stellen Endpunkte dar). Beim Scannen der Drahtrahmenlinien werden die Mittelpunkte (diejenigen Pixel, welche mehr als zwei andere Pixel berühren) in der Mittelpunkttabelle katalogisiert. Bild 148 in 35 ist eine Darstellung eines ausgedünnten monochromen Bildes, welches eine Darstellung von Daten von einer Mittelpunkttabelle enthält (weiße Punkte stellen Mittelpunkte dar).

Die Punkte innerhalb der Endpunkt- und Mittelpunkttabellen werden in der anschließenden Verarbeitung verwendet. In einer Ausführungsform werden die Punkte verwendet, um einmalige Datenelemente, wie beispielsweise Spitzen, Lücken und Anti-Papillarlinien zu identifizieren. Diese Datenelemente können identifiziert und katalogisiert werden, was durch Daten, welche die präzise Position von Endpunkten oder Mittelpunkten beschreiben, sowie Steigungswerte, welche mit an den Punkten angebrachten Linien im Zusammenhang stehen, erfolgt. Die Ausrichtung dieser Datenelemente ist einmalig für einen bestimmten Systemanwender und kann verwendet werden, um einen Satz von Bilddaten zu verifizieren oder ihn mit einem oder mehreren anderen Sätzen von Bilddaten abzugleichen.

Nachdem überschüssige Pixel von den in dem ausgedünnten monochromen Bild enthaltenen Drahtrahmenlinien entfernt wurden, besteht der nächste Schritt in der Drahtrahmenerzeugung 82 in Übereinstimmung mit Block 128 in 27 darin, einen verfeinerten Satz von Drahtrahmenlinien zu erzeugen, indem überschüssige Zweige entfernt werden. Wie aus Bild 142 in 32 hervorgeht, enthalten die Drahtrahmenlinien innerhalb des ausgedünnten monochromen Bildes zahlreiche kleine Zweige, welche von den Hauptlinien abstehen. Die Entfernung einer Auswahl dieser Zweige hinterlässt einen verfeinerten Satz von Drahtrahmenlinien, welche für die anschließende Minutien- und Vektorsegmentextraktion relativ eben sind.

Der Zweigentferntungsprozess von Block 128 kann sich auf Daten stützen, welche aus Endpunkt- und Steigungstabellen entnommen werden, die beide vorher im Musterschaffungs(20)-Prozess erzeugt wurden. Jeder Eintrag in die Endpunkttabelle wird verwendet, um ein Liniensegment zu lokalisieren, das einen Endpunkt aufweist. Das Segment wird von dem Endpunkt entlang des entsprechenden Liniensegments für sieben Pixel zurückverfolgt, oder aber so lange, bis ein Mittelpunkt lokalisiert wird. Beträgt die Segmentlänge weniger als fünf Pixel, so wird es unbedingt entfernt (die Pixel werden aus dem Bild gelöscht). Endet das Segment an einem Mittelpunkt, so wird die Steigung des Segments mit der Steigung von Bildelementen in derselben Nähe verglichen. Steigungsdaten werden aus der Steigungstabelle abgeleitet. Ist die Differenz zwischen den beiden Steigungen größer als 25 Grad, so wird das Segment entfernt. Bild 150 in 36 ist eine Darstellung eines verfeinerten Satzes von Drahtrahmenlinien, welche sich aus der Entfernung überschüssiger Drahtrahmenzweige ergeben. Bild 152 in 37 ist eine Darstellung, welche die Beziehung zwischen dem verfeinerten Satz von Drahtrahmenlinien und einem entsprechenden monochromen Bild demonstriert (Papillarlinien des Bildes in weiß).

Nachdem der verfeinerte Satz von Drahtrahmenlinien erzeugt wurde, können überschüssige Pixel nochmals aus dem Bild entfernt werden. Beispielsweise werden überschüssige Pixel lokalisiert und auf dieselbe Weise wie vorstehend mit Bezug auf Gleichung 15 beschrieben entfernt. Die Endpunkttabelle und die Mittelpunkttabelle können entweder neu berechnet werden bevor, oder aber beispielhaft nachdem, überschüssige Pixel nochmals entfernt werden bzw. wurden.

Wie durch Block 130 in 27 demonstriert, ist eine weitere prozedurale Komponente der Drahtrahmenerzeugung 82 die Fixierung der Endpunkte. Wie aus Bild 150 in 36 hervorgeht, können Segmente am Ende einer Linie innerhalb des verfeinerten Satzes von Drahtrahmenlinien sich krümmen oder können einen Steigungswinkel darstellen, welcher nicht mit Steigungstabelleneinträgen in derselben Nähe übereinstimmt.

In Übereinstimmung mit Block 130 kann, um diese Mängel zu korrigieren, jeder Eintrag in der Endpunkttabelle verwendet werden, um bei der Schaffung eines weiter verfeinerten Satzes von Drahtrahmenlinien zu helfen. Entsprechend wird jeder Eintrag in der Endpunkttabelle verwendet, um ein entsprechendes Liniensegment sieben Pixel zurückzuverfolgen, oder aber so lange, bis ein Mittelpunkt getroffen wird. Wird ein Mittelpunkt getroffen, so wird das Segment wiederhergestellt. Wird kein Mittelpunkt getroffen, so wird die Linie aus dem Drahtrahmenbild entfernt. Nachdem die Linie entfernt wurde, wird der Steigungstabelleneintrag für den Endpunkt des Liniensegments aus der Steigungstabelle abgerufen. Dieser Steigungswert wird verwendet, um ein neues Liniensegment zu erzeugen, indem ein Linienzieh-Algorithmus verwendet wird, und zwar vom Endpunkt bis zum Ende des monochromen Bildes. Bild 154 in 38 ist eine Darstellung, welche die Beziehung zwischen einem weiter verfeinerten Satz von Drahtrahmenlinien, einschließlich fixer Endpunkte, und einem entsprechenden monochromen Bild zeigt (Papillarlinien des Bildes weiß).

Die Endpunkt- und Mittelpunkttabellen können neu berechnet werden, nachdem die Endpunkte in Übereinstimmung mit Block 130 fixiert wurden, und nach der Schaffung eines weiter verfeinerten Satzes von Drahtrahmenlinien.

Wie durch Block 132 in 27 demonstriert, ist eine weitere prozedurale Komponente der Drahtrahmenerzeugung 82 die Verbindung von Endpunkten. Datenelemente von Papillarlinien des Fingerabdrucks können aufgrund von Papierschnitten, Blasen, Verbrennungen, Hautfalten, Feucht-/Trocken-Bedingungen oder aufgrund anderer Bildscanprobleme, wie beispielsweise diejenigen durch Umwelteinflüsse in der Umgebung des Bildlesers 12 verursachten, unterbrochen sein. In Übereinstimmung mit der Endpunktverbindung 132 wird versucht, Endpunkte auf eine Weise zu verbinden, welche bestimmte Lücken in den Papillarlinien überbrückt.

In Übereinstimmung mit einer Form der Endpunktverbindung 132 wird jeder Eintrag in der Endpunkttabelle mit allen anderen Einträgen in der Endpunkttabelle verglichen. Befinden sich zwei beliebige Punkte innerhalb sechs Pixel voneinander und ist die Steigung entsprechender Linien innerhalb 25 Grad voneinander, werden die Segmente verbunden. Bild 156 in 39 ist eine Darstellung, welche die Beziehung zwischen einem weiter verfeinerten Satz von Drahtrahmenlinien, einschließlich fixierter und verbundener Endpunkte, und einem entsprechenden monochromen Bild demonstriert (Papillarlinien des Bildes in weiß). Die Endpunkt- und Mittelpunkttabellen können erneut berechnet werden, nachdem die Endpunkte verbunden wurden. Nachdem die Endpunkte innerhalb des weiter verfeinerten Satzes von Drahtrahmenlinien verbunden wurden, ist ein vollständiges Drahtrahmenbild, basierend auf einem entsprechenden monochromen Bild, in Übereinstimmung mit der Drahtrahmenerzeugung 82 abgeschlossen.

Nachdem ein monochromes Bild in ein vollständiges Drahtrahmenbild umgewandelt wurde, besteht die nächste Komponente der Musterschaffung 20 in Übereinstimmung mit Block 84 in 15 darin, das vollständige Drahtrahmenbild zu analysieren, um Gabelungen und Erhöhungen des Fingerabdrucks zu lokalisieren, damit diese katalogisiert und innerhalb eines Bildmusters zusammen mit anderen Datenelementen aufgenommen werden können. In Übereinstimmung mit einer Ausführungsform sind relativ zu Abschnitt 12 die Bildauflösung und mit Bezug auf 40 allgemeine Datenelemente im Zusammenhang mit einer Gabelung wie folgt:

Gleichung 16

  • – Schenkelsegmente 162, 164 und 168. Diese Segmente weisen die gleiche Länge auf, und jedes weist mindestens einen Ursprungspunkt am Mittelpunkt 158 auf. In Übereinstimmung mit einer Ausführungsform wird jedes Segment auf 17 Pixel gesetzt.
  • – Die Koordinaten des Mittelpunktes 158. Dieser Punkt wird zur Definition einer Gabelung verwendet. Die obere linke Ecke des Bildes soll die Koordinaten 0,0 aufweisen. Positive x-Koordinaten sind rechts, positive y-Koordinaten sind abwärts.
  • – Erster Teilungswinkel 160. Dies ist der Winkel zwischen den Schenkelsegmenten 162 und 164, welcher zur Definition einer Gabelung verwendet wird. In Übereinstimmung mit einer Ausführungsform kann der erste Teilungswinkel 160 definitionsgemäß 120 Grad nicht übersteigen.
  • – Richtungswinkel 166. Dieser Winkel ist die Richtung einer Gabelung und wird zur Definition einer Gabelung verwendet. In Übereinstimmung mit einer Ausführungsform kann der Richtungswinkel 166 Werte zwischen 0 und 359 Grad aufweisen.
  • – Es sollte sich verstehen, dass der Winkel zwischen den Schenkelsegmenten 162 und 168 der größte Winkel aller Winkel zwischen Schenkelsegmenten ist.
  • – Eine Zählung der Anzahl von 20 (beispielhaft 20) Pixelsegmenten, welche sich von Punkt 158 entlang der mit dem Schenkelsegment 162 verbundenen Drahtrahmenlinie erstrecken, wird zur Definition von Datenpunkten im Zusammenhang mit einer Gabelung verwendet. Es wird angenommen, dass dies das erste Schenkelsegmentfeld darstellt.
  • – Eine Liste (von Längenzählungen) der x- und y-Koordinaten der 20 (beispielhaft 20) Pixelsegment-Endpunkte wird konstruiert, um Datenpunkte innerhalb eines ersten Schenkelsegmentfeldes zu katalogisieren, Schenkelsegmentfeld-Datenpunkte können ebenfalls als Vektorsegment-Datenpunkte bezeichnet und in Übereinstimmung mit einer Ausführungsform, sowie in Übereinstimmung mit der vorliegenden Erfindung, verwendet werden, um ein Bildmuster mit einem anderen zu vergleichen. Gabelungen werden als ein Ursprung für die Katalogisierung von Vektorsegment-Datenpunkten verwendet.
  • – Eine Zählung der Anzahl von 20 (beispielhaft 20) Pixelsegmenten, welche sich von Punkt 158 entlang der mit dem Schenkelsegment 164 verbundenen Drahtrahmenlinie erstrecken, wird konstruiert, um Datenpunkte innerhalb eines zweiten Schenkelsegmentfeldes zu katalogisieren.
  • – Eine Liste (der Längenzählung) der x- und y-Koordinaten der 20 (beispielhaft 20) Pixelsegment-Endpunkte wird konstruiert, um zweite Schenkelsegmentfeld-Datentpunkte (Vektorsegment-Datenpunkte) zu katalogisieren.
  • – Eine Zählung der Anzahl von 20 (beispielhaft 20) Pixelsegment-Endpunkte, welche sich von Punkt 158 aus entlang einer mit dem Schenkelsegment 168 verbundenen Drahtrahmenlinie erstrecken, wird verwendet, um Datenpunkte im Zusammenhang mit einer Gabelung zu definieren. Es wird angenommen, dass dies das dritte Schenkelsegmentfeld darstellt.
  • – Eine Liste (der Längenzählung) der x- und y-Koordinaten der 20 (beispielhaft 20) Pixelsegment-Endpunkte wird konstruiert, um dritte Schenkelsegmentfeld-Datenpunkte (Vektorsegment-Datenpunkte) zu katalogisieren.
  • – In Übereinstimmung mit einer Ausführungsform beträgt die maximale Anzahl von Schenkelsegmenten für jedes Feld von Datenpunkten 20 (beispielhaft 20).

Es sollte betont werden, dass die exakten Werte, insbesondere Werte, welche Pixelzählungen und Segmentzählungen entsprechen, modifiziert werden könnten, ohne von der vorliegenden Erfindung abzuweichen. Unterschiedliche Techniken des Leserabschnitts 12 (1) können derartige Modifikationen erforderlich machen.

Die in der vorliegenden Erfindung im Kontext illustrativer Ausführungsbeispiele gelieferten bestimmten Werte sind lediglich als illustrative Werte zu betrachten.

Die Lokalisierung einer möglichen Gabelung kann mit der während der Drahtrahmenerzeugung 82 geschaffenen Mittelpunkttabelle beginnen. Jeder Eintrag in die Mittelpunkttabelle wird als potentielle Gabelung betrachtet. Beginnend mit einem Mittelpunkteintrag in der Mittelpunkttabelle wird jedes sich davon erstreckende Segment nachverfolgt. Wenn eine Länge von 17 Pixeln erreicht ist, werden die entsprechenden x- und y-Koordinaten in einer Liste angeordnet und eine Schenkelsegment-Zählung wird erhöht. Die Nachverfolgung endet jedoch unter einer der folgenden Bedingungen:

  • 1. Eine Zählung von 20 (beispielhaft 20) Schenkelsegmenten wird erreicht.
  • 2. Ein Endpunkt wird erfasst (aus der Endpunkttabelle)
  • 3. Ein Mittelpunkt aus der Mittelpunkttabelle wird erfasst.

Wenn die Linien-Nachverfolgung abgeschlossen ist, können drei Winkel für potentielle Gabelungen berechnet werden:

  • 1. Der Winkel zwischen den Schenkelsegmenten 162 und 164.
  • 2. Der Winkel zwischen den Schenkelsegmenten 164 und 168.
  • 3. Der Winkel zwischen den Schenkelsegmenten 162 und 168.

Diese Winkel werden in aufsteigender Reihenfolge sortiert. Der kleinste Winkel zwischen den Segmenten 162 und 164 wird als Teilungswinkel gespeichert. Als Nächstes wird der Winkel 166 mit Hilfe des Punktes 167 als Koordinaten 0,0 berechnet. Nachdem die Schenkelsegmente identifiziert und entsprechende Winkel berechnet wurden, ist eine Liste von Gabelungen konstruiert worden. Die Gabelungen sind beispielhaft durch die Mittelpunkttabelle definiert.

Eine Erhöhung wird als besonderer Fall von Gabelung betrachtet. Mit Bezug auf 41, wobei 40 und 41 gemeinsame Elemente identische Bezugszeichen aufweisen, sind beispielhafte allgemeine Datenelemente im Zusammenhang mit einer Erhöhung, sowie darauf basierende Annahmen, wie folgt:

Gleichung 17

  • – Der Endpunkt 182 der Erhöhung 165. Dieser Punkt ist der Mittelpunkt 158 des besonderen Falles von Gabelung.
  • – Die obere linke Ecke des Bildes ist wiederum die Koordinate 0,0. Positive Werte von x sind rechts und positive Werte von y abwärts.
  • – Mit Hilfe der Richtung der des Erhöhungs(165)-Segments, welches sich von Punkt 170 bis zum Endpunkt 172 erstreckt, als Richtung erstreckt sich das Ende der Erhöung bis zu den Punkten 162 und 164.
  • – Die Punkte 162 und 164 fallen zusammen.
  • – Der Richtungswinkel 174 stellt die Richtung der Erhöhung dar. In Übereinstimmung mit einer Ausführungsform wird angenommen, dass der Richtungswinkel Werte zwischen 0 und 359 aufweisen kann.
  • – Der Winkel zwischen dem Segment, welches sich zwischen den Punkten 172 und 162 erstreckt, und dem Segment, welches sich zwischen Punkt 172 und 164 erstreckt (erster Teilungswinkel 160) wird auf null gesetzt.
  • – Das Segment, welches sich vom Endpunkt 172 zu den Punkten 162/164 erstreckt, weist dieselbe Länge auf wie das Segment, welches sich vom Punkt 170 zum Endpunkt 172 erstreckt. In Übereinstimmung mit einer Ausführungsform wird angenommen, dass jedes Segment auf 17 (dieser Wert kann variieren) Pixel gesetzt wird.
  • – Eine Zählung der Anzahl von 20 (dieser Wert kann variieren) Pixelsegment-Endpunkten, welche von Punkt 158 entlang der Erhöhung 165 verfolgt, wird zur Definition von Datenpunkten im Zusammenhang mit einer Erhöhung verwendet. Es wird angenommen, dass dies die erste Schenkelsegmentfeldliste ist.
  • – Eine Liste (der Längenzählung) der x- und y-Koordinaten der 20 (dieser Wert kann variieren) Pixelsegment-Endpunkte wird konstruiert, um die ersten Schenkelsegmentfeld-Datenpunkte zu katalogisieren. Diese Datenpunkte sind Vektorsegment-Datenpunkte und können verwendet werden, um ein Bildmuster mit einem anderen zu vergleichen.
  • – Die beiden verbleibenden Segmentfeldlisten enthalten nur einen Punkt 162/164. Dieser Punkt wird berechnet durch Verlängerung des Segments im Zusammenhang mit der ersten Segmentfeldliste um 17 (dieser Wert kann variieren) Pixel.
  • – Die maximale Anzahl von 20 (dieser Wert kann variieren) Pixelsegmenten in dem ersten Schenkelsegmentfeld beträgt beispielhaft 20.

Die Lokalisierung einer möglichen Erhöhung kann mit der während der Drahtrahmenerzeugung 82 geschaffenen Endpunkttabelle beginnen. Jeder Eintrag in der Endpunkttabelle wird als potentielle Erhöhung betrachtet. Beginnend mit einem Eintrag in der Endpunkttabelle wird das entsprechende Liniensegment nachverfolgt. Wenn eine Länge von 17 (dieser Wert kann variieren) Pixeln erreicht ist, werden die entsprechenden x- und y-Koordinaten in einer Liste angeordnet, und eine Schenkelsegmentzählung wird erhöht. Die Nachverfolgung endet unter einer der folgenden Bedingungen:

  • 1. Eine Zählung von 20 (dieser Wert kann variieren) Segmenten wird erreicht.
  • 2. Ein Endpunkt wird erfasst (aus der Endpunkttabelle).
  • 3. Ein Mittelpunkt aus der Mittelpunkttabelle wird erfasst.

Damit Erhöhungen innerhalb eines Bildmusters eingeschlossen werden können, kann verlangt werden, dass sie bestimmte Qualifizierungsstandards erfüllen. Entsprechend wird, nachdem ein Vektorsegment nachverfolgt wurde, das sich von Punkt 170 zum Endpunkt 172 erstreckende Element entlang desselben Winkels bis 162/164 verlängert. Falls während der Verlängerung eine Bild-Papillarlinie überquert wird, wird die entsprechende Erhöhung nicht gespeichert, und wird nicht in ein Bildmuster aufgenommen. Zusätzlich wird eine Linie senkrecht zu dem sich vom Endpunkt 172 zu Punkt 162/164 erstreckenden Segment in beide Richtungen über eine Distanz von beispielhaft 20 (dieser Wert kann variieren) Pixeln verlängert. Wenn keine dieser 20 (dieser Wert kann variieren) Pixellinien eine Bild-Papillarlinie kreuzt, wird die Erhöhung nicht gespeichert. Die Abstände während der senkrechten Verlängerung werden dann verglichen, um festzustellen, ob der Endpunkt 172 in etwa der Mittelpunkt ist. Ist dies nicht der Fall, so wird die Erhöhung nicht gespeichert. Die Ausgabe dieses Prozesses ist eine Liste qualifizierter Erhöhungen, welche durch die Endpunkttabelle definiert sind. Der Richtungswinkel 174 wird als Hilfe bei der Definition von Erhöhungen verwendet, und wird unter Verwendung von Punkt 170 als Koordinaten 0,0 berechnet.

Zusätzlich zur Lokalisierung müssen, um innerhalb eines Bildmusters eingeschlossen zu werden, Erhöhungen und Gabelungen bestimmte Qualifikationen erfüllen. Wie vorstehend beschrieben, werden Erhöhungen gleichzeitig mit ihrer Lokalisierung qualifiziert. Gabelungen müssen jedoch in Übereinstimmung mit Block 86 in 15, um innerhalb eines Bildmusters eingeschlossen zu werden, mehrere Qualifikationen zusätzlich zu denjenigen während des Gabelungs-Lokalisierungsprozesses auferlegten erfüllen. Mit Bezug auf 40 wird nachstehend eine Liste von Filterregeln angeführt, die möglicherweise verwendet werden müssen, um Gabelungen für den Eintrag in ein Bildmuster weiter zu qualifizieren:

Gleichung 18

  • – Mit der Annäherung des ersten Teilungswinkels 160 an 120 Grad steigt das Risiko, dass der Teilungswinkel mit Hilfe der falschen Schenkelanstiege definiert wird. Entsprechend ist die erste Filterregel, dass der erste Teilungswinkel 160 kleiner als 115 Grad sein muss.
  • – Mindestens zwei der Gabelungsschenkel müssen drei oder mehr 20 (dieser Wert kann variieren) Pixelsegmente aufweisen.
  • – Die Steigung der Schenkelsegmente 162, 164 und 168 muss innerhalb von 30 Grad von der Steigungstabelle für denselben Bereich liegen.

Bild 176 in 42 ist eine Darstellung eines Drahtrahmenbildes, innerhalb welchem qualifizierte Gabelungen und Erhöhungen eingekreist sind. Endpunkte und Mittelpunkte sind mit weißen Punkten identifiziert. Bild 178 in 43 ist eine Darstellung eines Drahtrahmenbildes, innerhalb welchem dieselben qualifizierten Gabelungen und Erhöhungen eingekreist sind. Innerhalb von Bild 178 wurden Vektorsegment-Datenpunkte (wobei sich die beispielhaften 20 Pixelsegmente von einer qualifizierten Erhöhung oder Gabelung erstrecken) nachverfolgt und sind in weiß gezeigt. Vektorsegment-Datenpunkte folgen annähernd Drahtrahmenlinien, welche sich mit einer qualifizierten Gabelung und Erhöhung verbinden, und können zum Vergleich eines Bildmusters mit einem anderen verwendet werden.

In Übereinstimmung mit Block 88 in 15 ist der letzte Schritt im Mustererzeugungs(20)-Prozess der Aufbau eines Bildmusters basierend auf einem vollständigen Drahtrahmenbild und davon abgeleiteten Bildelementen. Ein vollständiges Bildmuster besteht aus folgenden Elementen:

Gleichung 19

  • – Eine Zählung qualifizierter Gabelungen
  • – Eine Zählung qualifizierter Erhöhungen
  • – Eine Gabelungs- und Erhöhungsliste, welche Folgendes umfasst:

    – Den Mittelpunkt (Mittelpunkt 158 für Gabelungen oder Endpunkt 172 für Erhöhungen, s. 40 und 41), welcher mit x- und y-Koordinaten identifiziert ist.

    – Den Richtungswinkel (Winkel 166 für Gabelungen oder Winkel 174 für Erhöhungen)

    – Den Teilungswinkel (Winkel 160 für Gabelungen oder ein Nullwert für Erhöhungen)

    – Drei Schenkelsegmentfelder (Vektorsegmentfelder), welche Folgendes umfassen:

    a) Zählung von 20 (dieser Wert kann variieren) Pixelsegmenten, welche sich von einem Punkt innerhalb ensprechender Erhöhung/Gabelung aus erstrecken.

    b) Liste von x-Koordinaten-Endpunkten entsprechend 20 (dieser Wert kann variieren) Pixelsegmenten.

    c) Liste von y-Koordinaten-Endpunkten entsprechend 20 (dieser Wert kann variieren) Pixelsegmenten.
  • – Datendarstellungen von Liniensegmenten oder Vektorsegmenten, welche nicht durch Gabelungen oder Erhöhungen verwendet werden.

Gabelungen sind innerhalb eines Bildmusters durch die Kreuzung von Papillarlinien-Segmenten definiert. Mit Bezug auf 40 kann die in einem Bildmuster für eine Gabelung aufgezeichnete Information wie folgt sein:

Gleichung 20

  • – Die x- und y-Koordinaten des Mittelpunktes 158.
  • – Erster Teilungswinkel 160.
  • – Richtungswinkel 166.
  • – Eine Liste der x- und y-Koordinaten, welche die aus dem Mittelpunkt 158 hervorspringenden Vektor-/Schenkelsegmente nachverfolgen. Diese Punkte weisen einen gleichen Abstand (beispielhaft 20 Pixel) voneinander auf. Die Nachverfolgung und Sammlung von 20 (dieser Wert kann variieren)-Pixel-Vektor-/Schenkelsegmenten dauert an, bis:

    – Die Nachverfolgung endet am Zentrum einer Gabelung.

    – Das Ende des Segments wird erreicht.

    – Ein Höchstwert von vierzig 20 (dieser Wert kann variieren)-Pixel-Segmenten wird aufgezeichnet.

Erhöhungen sind definiert durch die Endung eines Papillarsegments. Der Endpunkt muss annähernd auf halbem Weg zwischen zwei Papillarsegmenten liegen und darf, wenn er für eine bestimmte Menge von Pixeln, beispielhaft 10 oder 20 (oder ein anderer geeigneter Wert), verlängert wird, kein anderes Papillarelement berühren. Mit Bezug auf 41 kann die in einem Bildmuster für eine Erhöhung aufgezeichnete Information wie folgt sein:

Gleichung 21

  • – Die x- und y-Koordinaten des Endpunktes 172.
  • – Erster Teilungswinkel 160 (definitionsgemäß beträgt dieser Wert null).
  • – Richtungswinkel 174.
  • – Eine Liste der x- und y-Koordinaten, welche die vom Punkt 172 abgehenden Vektor-/Schenkelsegmente. Diese Punkte sind voneinander gleich weit (beispielhaft 20 Pixel) entfernt. Die Nachverfolgung dauert an, bis:

    – Ankunft am Zentrum einer Gabelung.

    – Das Ende des Drahtrahmensegments erreicht wird.

    – Ein Höchstwert von vierzig 20 (dieser Wert kann variieren)-Pixel-Segmenten aufgezeichnet wird.

Papillarsegmente, welche nicht durch Gabelungen oder Erhöhungen verwendet werden, können in einem Bildmuster wie folgt aufgezeichnet werden:

Gleichung 22

  • – Eine Liste von x- und y-Koordinaten, welche die von Endpunkten abgehenden Papillarelemente nachverfolgen. Diese Punkte sind gleich weit (beispielhaft 20 Pixel) voneinander entfernt. Die Nachverfolgung dauert an, bis:

    – Die Nachverfolgung am Zentrum einer Gabelung endet.

    – Das Ende des Segments erreicht ist.

    – Ein Höchstwert von vierzig 20 (dieser Wert kann variieren)-Pixel-Segmenten aufgezeichnet wird.

Informationen innerhalb eines Bildmusters können in Übereinstimmung mit dem folgenden Datenspeicherformat gespeichert werden:

Es soll nochmals betont werden, dass die exakten Werte, insbesondere Werte, welche Pixelzählungen und Segmentzählungen entsprechen, modifiziert werden könnten, ohne von der vorliegenden Erfindung abzuweichen. Unterschiedliche Techniken des Leserabschnitts 12 (1) können derartige Modifikationen erfoderlich machen. Die gelieferten Werte, ob ausdrücklich angeführt oder nicht, sind lediglich beispielhafte Werte.

Wie durch Block 24 in 2 angezeigt, kann ein vollständiges Bildmuster als Basis für einen Mustervergleich verwendet werden. Diese Technik kann in Verbindung mit der in Übereinstimmung mit der vorliegenden Erfindung durchgeführten Dateiverzeichnissuche verwendet werden, wie nachfolgend beschrieben. Der Mustervergleich 24 ist ein Prozess für den Vergleich eines Bildmusters mit einem anderen.

Der Mustervergleich kann mit Hilfe einer Reihe von Schiebe- und Drehalgorithmen zur Anpassung mindestens eines Bildmusters und anschließende Zählung der Anzahl übereinstimmender Datenelemente erzielt werden. Datenelemente können Gabelungsdarstellungen, Erhöhungsdarstellungen, Vektorsegmente und mikrominutiöse Punkte, sowie Kombinationen daraus, einschließen, sind jedoch nicht darauf beschränkt. Wenn durch Schieben und Rotation die Datenelementzählung sich einem Maximalwert nähert oder diesen erreicht, erreichen oder nähern sich die beiden Muster ihrem maximalen Vergleichspunkt. Mit Hilfe der Zählungen übereinstimmender Datenelemente am oder nahe des maximalen Vergleichspunkts kann ein Treffer, welcher die Beziehung oder den Prozentsatz an Übereinstimmung darstellt, berechnet werden.

Die Theorie hinter dem Mustervergleich 24 ist, dass bei Rotation und Schieben eines Musters die Anzahl übereinstimmender Datenelementpunkte zu- oder abnimmt. Wenn die Anzahl von Punkten, welche für jeden Winkel übereinstimmen, in einem Graph aufgetragen wird, ergibt sich eine glockenförmige Kurve. Das Maximum der Kurve stellt den Punkt dar, an welchem die Muster am besten vergleichbar sind.

Der Prozess kann durch lockeren Vergleich jeder Gabelung und Erhöhung in einem Muster (Muster A) mit allen Gabelungen und Erhöhungen in einem anderen Muster (Muster B) beginnen. Der lockere Vergleich macht es möglich, dass ein nicht passendes Paar ohne bedeutende Aufwendung von Verarbeitungszeit entdeckt wird. Ein detaillierterer Vergleich könnte beispielhaft den lockeren Vergleich ersetzen. Anforderungen, welche während des lockeren Vergleichs verwendet werden, können wie folgt definiert werden:

Gleichung 24

  • – Die Mittelpunkte müssen innerhalb 90 (dieser Wert kann variieren) Pixeln in x-Richtung liegen.
  • – Die Mittelpunkte müssen innerhalb von 120 (dieser Wert kann variieren) Pixeln in y-Richtung liegen.
  • – Die Differenz zwischen Teilungswinkeln liegt innerhalb von plus oder minus 8 Grad.
  • – Die Differenz zwischen Richtungswinkeln liegt innerhalb von plus oder minus 40 Grad.

Eine mögliche Übereinstimmung kann basierend auf dem lockeren Vergleich erzeugt werden. Die mögliche Übereinstimmungstabelle ergibt sich aus dem Gabelungs- oder Erhöhungsindex in Muster A. Jeder Eintrag in die mögliche Übereinstimmungstabelle weist Folgendes auf:

Gleichung 25

  • – Eine Zählung möglicher Übereinstimmungen
  • – Eine Liste der Gabelungs- oder Erhöhungsindizes in Muster B. Diese Liste definiert all diejenigen Punkte in Muster B, welche locker mit dem Punkt in Muster A übereinstimmen.

Der allgemeine Vergleichsprozess wird am besten durch ein einfaches Codierungsbeispiel beschrieben. Insbesondere kann die Codierung wie folgt definiert sein:

Das Ergebnis des letzten Schiebe- und Rotationsprozesses weist mehrere Zählungen auf:

Gleichung 27

  • – Die Anzahl passender Gabelungen.
  • – Die Anzahl passender Erhöhungen.
  • – Die Anzahl passender Segmente.
  • – Die Anzahl nicht passender Segmente.

Für die nachfolgende Beschreibung werden folgende Definitionen verwendet:

Gleichung 28

  • – Gesamtpunkte: Die Summe der Anzahl passender Gabelungen und der Anzahl passender Erhöhungen.
  • – Segmente pro Schenkel: gesamte passende Segmente geteilt durch Anzahl verglichener Schenkel.
  • – Prozent der Punkte: Gesamtpunkte (multipliziert mit 100) geteilt durch das Minimum gesamter Gabelungen und Erhöhungen in Muster A oder Muster B.
  • – Rohprozentsatz: Die Anzahl passender Segmente (multipliziert mit 104) geteilt durch die Summe passender Segmente und nicht passender Segmente.

Mit Hilfe der vorstehenden Zählungen kann ein Prozentsatz von Übereinstimmung berechnet werden (nachfolgend ein anschauliches Beispiel basierend auf einer beispielhaften Leservorrichtung... Werte können sich in Abhängigkeit von der speziellen Lesertechnik ändern).

Gleichung 29

  • – Wenn die Anzahl passender Segmente null beträgt, so beträgt der Übereinstimmungs-Prozentsatz null.
  • – Wenn die Segmente pro Schenkel weniger als vier sind, so– beträgt der Übereinstimmungs-Prozentsatz null.
  • – Wenn die Gesamtpunkte weniger sind als drei, so beträgt der Übereinstimmungs-Prozentsatz null.
  • – Wenn die Gesamtpunkte drei oder vier sind, so beträgt der Übereinstimmungs-Prozentsatz 1/4 der Prozent der Punkte.
  • – Wenn die Gesamtpunkte fünf betragen und die Segmente pro Schenkel mehr als vier sind, so ist der Übereinstimmungs-Prozentsatz der Rohprozentsatz multipliziert mit Prozent der Punkte geteilt durch 800.
  • – Wenn die Gesamtpunkte sechs bis zehn sind und

    – die Segmente pro Schenkel vier sind, so ist der Prozentsatz der Übereinstimmung der Rohprozentsatz multipliziert mit Prozent von Punkten geteilt durch 700.

    – die Segmente pro Schenkel vier bis sieben betragen, ist der Übereinstimmungs-Prozentsatz der Rohprozentsatz multipliziert mit Prozent der Punkte dividiert durch 500.

    – die Segmente pro Schenkel mehr als acht sind, ist der Übereinstimmungs-Prozentsatz der Rohprozentsatz multipliziert mit Prozent der Punkte dividiert durch 300.

    – Sind die Gesamtpunkte mehr als 10, so ist der Übereinstimmungs-Prozentsatz der Rohprozentsatz multipliziert mit Prozent der Punkte dividiert durch 100.

Alternativ kann mit Hilfe der vorstehenden Zählungen eine Übereinstimmungsbeziehung berechnet werden.

Alternative Gleichung 29

  • – Wenn die Gesamtpunktzahl gleich null ist, so ist die Beziehung gleich null.
  • – Wenn der Rotationswinkel zur Ausrichtung der Bilder größer als das zulässige Maximum ist, so ist die Beziehung gleich null. Dieser Wert ist so einstellbar, dass er mit unterschiedlichen Bildgrößen und Aspektverhältnissen funktioniert.
  • – Die Beziehung zwischen zwei Bildern kann definiert sein als die Beziehung zwischen Trefferelementen. Diese Elemente können Folgendes umfassen, sind jedoch nicht darauf beschränkt:

    – Die Anzahl passender Gabelungsdarstellungen

    – Die Anzahl nicht passender Gabelungsdarstellungen

    – Die Anzahl passender Erhöhungen

    – Die Anzahl nicht passender Erhöhungen

    – Die Anzahl passender Segmentdarstellungen

    – Die Anzahl nicht passender Segmentdarstellungen

    – Die Anzahl von Segmentdarstellungen pro Schenkel
  • – Eine Reihe von Berechnungen werden dann durchgeführt, um die Trefferelementwerte zu bestimmen, was Folgendes umfasst:

    – Zur Bestimmung des Trefferelements für die Anzahl passender Gabelungen wird zunächst die Anzahl passender Gabelungen verwendet, um den Gewichtungsfaktor zu bestimmen, welcher in der Berechnung zu verwenden ist. Je größer die Anzahl passender Gabelungen, umso mehr kann das Endergebnis gewichtet werden.

    – Zur Bestimmung des Trefferelements für die Anzahl nicht passender Gabelungen wird zunächst die Anzahl passender Gabelungen verwendet, um den Gewichtungsfaktor zu bestimmen, welcher in der Berechnung zu verwenden ist. Je größer die Anzahl passender Gabelungen, umso geringer ist der Gewichtungsfaktor für die nicht passenden Gabelungen.

    – Zur Bestimmung des Trefferelements für die Anzahl passender Erhöhungen wird zunächst die Anzahl passender Gabelungen verwendet, um den Gewichtungsfaktor zu bestimmen, welcher in der Berechnung zu verwenden ist. Die Anzahl passender Erhöhungen wird dann verwendet, um weiter den Gewichtungsfaktor für dieses Element zu erhalten. Je größer die Anzahl passender Erhöhungen und die Anzahl passender Gabelungen, umso mehr kann das Endergebnis gewichtet werden.

    – Zur Bestimmung des Trefferelements für die Anzahl nicht passender Erhöhungen wird zunächst die Anzahl passender Gabelungen verwendet, um den Gewichtungsfaktor zu bestimmen, welcher in der Berechnung verwendet werden soll. Die Anzahl passender Erhöhungen wird dann verwendet, um weiter den Gewichtungsfaktor für dieses Element zu erhalten. Je größer die Anzahl passender Erhöhungen und die Anzahl passender Gabelungen, umso geringer der Gewichtungsfaktor für die nicht passenden Erhöhungen.

    – Zur Bestimmung des Trefferelements für die Anzahl passender Segmente wird die Gesamtanzahl passender Segmente mit einem Gewichtungsfaktor multipliziert und dann durch die Gesamtsegmente dividiert, welche sich innerhalb des Überlappungsbereichs des Fingerabdruck-Musters befinden.

    – Zur Bestimmung des Trefferelements für die Anzahl nicht passender Segmente werden die nicht passenden Schenkel mit einem Gewichtungsfaktor multipliziert und durch die Anzahl passender Schenkel dividiert.

    – Zur Bestimmung des Trefferelements für die Segmente pro Schenkel wird zunächst die Anzahl passender Gabelungen verwendet, um den Gewichtungsfaktor zu bestimmen, welcher in der Berechnung zu verwenden ist. Die Anzahl passender Erhöhungen wird dann verwendet, um weiter den Gewichtungsfaktor für dieses Element zu erhalten.

    – Diese Berechnungen sind einstellbar, um unterschiedlichen Bildgrößen und Aspektverhältnissen gerecht zu werden. Diese Werte werden dann zusammenaddiert, um eine Wahrscheinlichkeit der Beziehung zwischen den Bildern zu ergeben. Dieser Wert wird dann um soviel angepasst, wie die beiden Bilder sich in der Tat überlappen. Je kleiner der Überlappungsbereich, umso größer die Korrektur an dem wert der Wahrscheinlichkeit der Beziehung.

Der erforderliche Ähnlichkeitsgrad innerhalb eines Bildidentifikations-basierten Sicherheitssystems, ehe zwei Bildmuster für übereinstimmend erklärt werden, kann einstellbar sein. Ähnlichkeitspegel können basierend auf der Art der gesicherten Umgebung eingestellt werden. Ein streng eingestelltes System würde maximale Sicherheit liefern, indem es eine hohe Übereinstimmungs-Beziehung oder einen hohen Prozentsatz erfordert, kann aber anfälliger für die unabsichtliche Abweisung eines Paars übereinstimmender Bildmuster sein. Im Gegensatz dazu würde ein locker eingestelltes System eine kleinere Übereinstimmungs-Beziehung oder einen geringeren Prozentsatz erfordern, und würde dementsprechend einen geringeren Sicherheitsgrad liefern. Ein locker eingestelltes System wäre jedoch anfälliger für fälschliche Übereinstimmungs-Bestimmungen und weniger anfällig für Übereinstimmungs-Abweisungen.

44 ist ein Blockdiagramm, welches einen Satz prozeduraler Komponenten im Zusammenhang mit einem Eins-zu-Eins-Bildvergleichsprozess darstellt. Block 180 zeigt einen ersten beispielhaften Schritt in dem Prozess an, insbesondere die Ableitung eines ersten Bilddatensatzes basierend auf einem ersten Bild und eines zweiten Bilddatensatzes basierend auf dem zweiten Bild. Der erste und der zweite Bilddatensatz weisen eine Vielzahl von Datenelementen auf, welche beispielhaft, aber nicht notwendigerweise, im Zusammenhang mit Fingerabdruck-Bildern stehen. Die beiden Datensätze sind Musterdarstellungen des ersten und des zweiten Bildes und werden beispielhaft entsprechend der vorstehenden Beschreibung in Bezug auf andere in dieser Beschreibung enthaltene Figuren geschaffen.

Block 182 zeigt eine optionale Leistung eines lockeren Vergleichsprozesses an. Beispielhaft enthalten der erste und der zweite Datenelementsatz eine Vielzahl von Datenelementtypen. Die Leistung oder des lockeren Vergleichs, wie vorstehend beschrieben, macht den Vergleichsprozess dadurch wirtschaftlicher, das diejenigen Datenelemente in einem der beiden Sätze eliminiert werden, welche nicht innerhalb einen vorbestimmten Qualifizierungsbereich der Abweichung von einem Datenelement gleichen Typs in dem anderen der beiden Sätze passen.

Block 184 zeigt einen Vergleich von Datenelementen aus dem ersten Bilddatensatz mit Datenelementen aus den zweiten Bilddatensätzen an. Beispielhaft weisen, wie vorstehend beschrieben, Datenelemente Definitionscharakteristika auf, welche numerischer oder mathematischer Natur sind und den Vergleich von Datenelementen vereinfachen. Beispielsweise wird in Übereinstimmung mit einer Ausführungsform während des Vergleichsprozesses ein Qualifizierungsbereich der Abweichung gewählt oder vorbestimmt. Der Qualifizierungsbereich der Abweichung stellt ein toleriertes Differential zwischen einem Definitionscharakteristikum mindestens eines Datenelements der ersten Art aus dem ersten Bilddatensatz und eines entsprechenden mindestens einen Definitionscharakteristikums mindestens eines Datenelements der ersten Art aus dem zweiten Datensatz dar. Eine Vielzahl von Definitionscharakteristika, jedes mit einem Qualifizierungsbereich der Abweichung, kann verwendet werden, um eine einzige Art von Datenelement zu definieren. Eine Zählung von Datenelementen aus dem ersten und dem zweiten Bilddatensatz kann erzeugt werden, wobei die Abweichungsmenge zwischen den Definitionscharakteristika (oder -charakteristikum) sich innerhalb des Qualifizierungsbereichs der Abweichung befindet. Im Grunde ist diese Zählung eine Zählung von Datenelementen in dem ersten Bilddatensatz, welche in etwa mit Datenelementen im zweiten Bilddatensatz übereinstimmen.

Block 186 zeigt eine Überprüfung der Zählung übereinstimmender Datenelemente zur Evaluation, ob die Zählung einen Maximalwert darstellt. Wenn nur ein Vergleich durchgeführt wurde, wurde der Maximalwert noch nicht gefunden. In Situationen, in welchen der Maximalwert nicht erhalten wurde, wird wie durch Block 188 angezeigt, entweder der erste oder der zweite Bilddatensatz und seine darin enthaltenen Datenelemente neu positioniert (z.B. gedreht, verschoben oder beides). Dann kehrt der Prozess zu Block 184 zurück, wo ein neuer Vergleich erfolgt und eine neue Zählung erzeugt wird.

Die Schritte des Vergleichs, der Zählung und der Neupositionierung werden beispielhaft wiederholt, um eine Vielzahl zusätzlicher Zählungen der Datenelemente in dem ersten Bilddatensatz zu erzeugen, welche annähernd mit Datenelementen im zweiten Bilddatensatz übereinstimmen. Wenn, wie vorstehend beschrieben, die Zählung sich einem Maximalwert annähert, geht der Prozess weiter.

Block 190 zeigt den Vergleich des Zählwertes mit einem vorbestimmten Zielwert an. Der vorbestimmte Zielwert kann den gewählten Ähnlichkeitsgrad darstellen, der erforderlich ist, damit das erste und das zweite Bild als übereinstimmend betrachtet werden. Der Zielwert kann basierend auf einem erwünschten Grad und der Umfassendheit einer damit zusammenhängenden Sicherheitsanwendung eingestellt werden. Wie durch Block 192 angezeigt, wird wenn die Zählung größer ist als der vorbestimmte Zielwert, eine positive Übereinstimmung angezeigt. Wie durch Block 194 angezeigt, wird wenn die Zählung geringer ist als der vorbestimmte Zielwert, eine negative Übereinstimmung angezeigt. Der Zählungsvergleich könnte auf der Basis einer Beziehung oder eines Prozentsatzes durchgeführt werden, und Beziehungen oder Prozentsätze könnten anstelle der Zählungen verglichen werden.

Wie durch Block 26 in 2 angezeigt, könnte eine Durchsuchung einer Datenbank 26 durchgeführt werden, entweder anstelle von oder in Kombination mit dem eben beschriebenen Mustervergleich 24. Die Datenbanksuche 26 umfasst eine schnelle und effiziente Bestimmung, ob falls überhaupt eines der potentiell tausenden (oder mehr, d.h. Millionen) von in der Datenbank enthaltenen Bildmustern, einen erwünschten Grad von Ähnlichkeit im Vergleich mit einem gelieferten, d.h. einem Ziel-Bildmuster aufweist.

Zur schnellen Identifikation eines Fingerabdrucks aus einer Datenbank mit tausenden (oder Millionen oder mehr) Abdrücken wird ein Satz von Datenbankschlüsseln definiert. Aufgrund zahlreicher Faktoren (zu trockener Finger, zu feuchter Finger, Position des Fingers bei Platzierung auf dem Scanner, Verzerrungen aufgrund von Druck, etc.) sind Schlüssel von allgemeiner (näherungsweiser) anstatt spezifischer Natur. Diese allgemeinen Schlüssel können die Basis für allgemeine Hochgeschwindigkeitsindexierung bilden.

Ein Satz von Schlüsseln kann mit Hilfe einiger der mit Gabelungs- und Erhöhungs-Bildmusterelementen zusammenhängenden Charakteristika (vorstehend mit Bezug auf 40 und 41 definiert) erzeugt werden. Die in der Schlüsselerzeugung für eine Gabelung verwendete Information besteht mit Bezug auf 40 aus folgenden Charakteristika:

Gleichung 30

  • – Koordinaten des Mittelpunktes 158. Die obere linke Ecke des Bildes wird mit den Koordinaten 0,0 angenommen. Positive x-Koordinaten sind rechts, und positive y-Koordinaten sind abwärts.
  • – Ein erster Teilungswinkel zwischen Schenkelementen 162 und 164 (Teilungswinkel 160).
  • – Ein zweiter Teilungswinkel zwischen den Segmenten 164 und 168.
  • – Die Richtung der Gabelung (Richtungswinkel 166).

Eine Erhöhung wird als besonderer Fall einer Gabelung betrachtet, wobei die folgenden Annahmen mit Bezug auf 41 getroffen werden:

Gleichung 31

  • – Der Endpunkt der Erhöhung (Endpunkt 172) wird zum Mittelpunkt der Gabelung (Mittelpunkt 158).
  • – Unter Verwendung der Richtung des sich von Punkt 170 zum Endpunkt 158/172 erstreckenden Segments als Richtung wird die Erhöhung bis zu den Punkten 162/164 verlängert.
  • – Die Punkte 162 und 164 fallen zusammen.
  • – Der Winkel zwischen den sich von Punkt 158/172 zu den Punkten 162 und 164 erstreckenden Segmente (erster Teilungswinkel, vorstehend als Teilungswinkel 160 bezeichnet) ist gleich null.
  • – Der Winkel zwischen den sich von Punkt 158/172 zu den Punkten 164 und 170 erstreckenden Segmenten (zweiter Teilungswinkel, vorstehend als Richtungswinkel 174 bezeichnet) wird zum Richtungswinkel.

Die in der Schlüsselerzeugung für eine Erhöhung verwendete Information ist folgende:

Gleichung 32

  • – Die Koordinaten des Mittelpunkts/Endpunkts 158/172.
  • – Der erste Teilungswinkel (Teilungswinkel 160). Unter Verwendung der vorstehenden Annahmen ist dieser Winkel gleich null.
  • – Der zweite Teilungswinkel (Richtungswinkel 174).

Bei der Speicherung von Druckmustern in der Datenbank werden zwei Tabellen aktualisiert. Die erste Tabelle, KEY_1, ist eine zweidimensionale Matrix. Der erste Index ist der erste Teilungswinkel, und der zweite Index ist der zweite Teilungswinkel. Es sollte sich verstehen, dass der erste Teilungswinkel 120 Grad nicht überschreiten kann und in Übereinstimmung mit einer Ausführungsform auf 115 Grad beschränkt sein könnte. Zusätzlich kann der zweite Teilungswinkel 180 Grad nicht überschreiten. Der Richtungswinkel kann jeden Wert zwischen null und 359 aufweisen. Die Matrixgröße von KEY_1 beträgt daher 116 (0 bis 115) mal 180 (0 bis 179). Die zweite Tabelle, KEY_2, enthält die Schlüsselinformation. KEY_2 ist eine eindimensionale Matrix mit offenem Ende.

Jeder Eintrag in KEY_1 enthält zwei Elemente, eine Zählung und einen Index in die Tabelle KEY_2. Die Elementzählung definiert die Anzahl von Gabelungen oder Erhöhungen, welche identische Teilungs- und Richtungswinkel aufweisen. Das Indexelement definiert den Startpunkt für die in Tabelle KEY_2 enthaltenen Schlüssel. Ein Eintrag in die Tabelle KEY_2 besteht aus folgenden Elementen:

Gleichung 33

  • – Der x-Koordinate (X_CENTER) des Gabelungszentrums oder Erhöhungs-Endpunkts. Die obere linke Ecke des Bildes wird mit den Koordinaten 0,0 angenommen.
  • – Der y-Koordinate (Y_CENTER) des Gabelungszentrums oder Erhöhungs-Endpunkts. Die obere linke Ecke des Bildes wird mit den Koordinaten 0,0 angenommen.
  • – Dem Index bezüglich der Gabelung oder Erhöhung in dem Muster.
  • – Dem Richtungswinkel.
  • – Der Muster-Identifikationsnummer. Bei der Speicherung der Muster in der Datenbank werden ihnen einmalige Nummern zugewiesen. Diese Nummern beginnen bei einem vorgegebenen Wert, gewöhnlich 10.000.000 und werden mit jedem hinzugefügten Speicherwert um eins erhöht.
  • – Der Finger-Identifikationsnummer. Jedem Finger wird, beginnend mit null, ein numerischer Wert zugewiesen. Dem linken kleinen Finger wird null zugewiesen, dem linken Ringfinger wird eins zugewiesen, der als letzter eingeteilte rechte kleine Finger ist die neun (von links nach rechts).
  • – Regelflags. Dieses Element enthält Informationen über das Fingermuster:

    Ist der Speicherwert als gelöscht markiert?

Die Aktualisierung der Tabellen KEY_1 und KEY_2 kann am besten durch das folgende Codierungsbeispiel beschrieben werden:

Die Tabellen KEY_1 und KEY_2 liefern ein Mittel zur Lokalisierung aller Gabelungen und Erhöhungen mit identischen Winkelcharakteristika. Tabelle KEY_1 liefert eine Zählung und einen Startindex. Tabelle KEY_2 liefert die Schlüsseldaten. Auch sollte sich verstehen, dass die in Tabelle KEY_2 gespeicherten Daten derart gruppiert sind, dass alle Gabelungen und Erhöhungen, welche identische Winkelcharakteristika aufweisen, einander benachbart sind.

Nach der Konstruktion der Tabellen besteht der nächste Schritt darin, übereinstimmende Musterbilder zu identifizieren. Diejenigen Drucke welche eine große Zahl von Gabelungen und Erhöhungen aufweisen, die in etwa zu einem Eintrag in der Datenbank passen, werden am wahrscheinlichsten mit einem hohen Ergebnis verglichen. Mit Hilfe der vorstehenden Tabellen und einiger Filterregeln wird eine mögliche Übereinstimmungstabelle geschaffen. Jeder Eintrag in der möglichen Übereinstimmungstabelle enthält folgende Informationen:

Gleichung 35

  • – Eine Zählung der Anzahl von Gabelungen und Erhöhungen, welche in etwa übereinstimmen.
  • – Den Abstand, sowohl in x- als auch y-Richtung, zwischen den beiden Mittelpunkten (gespeichert als geordnetes Paar).

Wobei in etwa übereinstimmen wie folgt definiert ist:

  • – Die Mittelpunkte müssen innerhalb von 90 (dieser und andere spezifisch angegebene Werte können variieren) Pixeln in x-Richtung liegen.
  • – Die Mittelpunkte müssen innerhalb von 120 (kann variieren) Pixeln in y-Richtung liegen.
  • – Die Winkeldifferenz für den ersten Teilungswinkel befindet sich innerhalb plus oder minus 8 Grad.
  • – Die Winkeldifferenz für den zweiten Teilungswinkel befindet sich innerhalb plus oder minus 8 (kann variieren) Grad.
  • – Der Richtungswinkel befindet sich innerhalb plus oder minus 20 (dieser Wert kann variieren) Grad.

Diese Tabelle wird mit Hilfe der Muster-Identifikationsnummer und der Finger-Identifikationsnummer indiziert. In Übereinstimmung mit einer Ausführungsform wird die Tabelle wie folgt geschaffen:

An diesem Punkt enthält die mögliche Übereinstimmungstabelle eine Liste aller Muster in der Datenbank, welche Kandidaten für den Vergleich darstellen. Das Zählungsfeld enthält eine Zählung der Gabelungen und Erhöhungen, welche in etwa übereinstimmen. Die Distanzliste enthält eine geordnete Liste, Zählungswerteinträge, der Distanzen vom Mittelpunkte des Musters zu denjenigen von Einträgen in der Datenbank. Einige dieser Einträge sind ungültig. Die nachstehende Filterregel versucht einige ungültige Werte zu entfernen. Um ungültige Einträge zu entfernen, wird die Distanzliste zunächst mit Hilfe der x-Distanz in absteigender Reihenfolge sortiert (s. nachstehendes Beispiel). Diese Liste wird dann auf der Suche nach der längsten Nummernfolge, deren Distanz weniger als 40 beträgt, gescannt. Der Start- und End-Index dieser Liste wird dann verwendet um die y-Komponente der geordneten Paare zu sortieren. Die Liste wird dann auf der Suche nach der längsten Nummernfolge, deren Distanz weniger als 40 beträgt, gescannt. Der Start- und End-Index dieser Liste liefert eine neue Zählung als Ersatz für die alte Zählung.

Im vorstehenden Beispiel beträgt die ursprüngliche Zählung 17. Anschließend an die erste Sortierung und Indexlokalisierung beträgt der Startindex 4 und der Endindex 12 (dargestellt durch einen Stern). Die zweite Sortierung und Indexlokalisierung ergibt eine Zählung von 3.

Wenn alle Übereinstimmungszählungen angepasst sind, wird die Tabelle in absteigender Reihenfolge nach Zählung sortiert. Diejenigen Einträge am Anfang der Liste (die höchsten Zählungswerte) stellen diejenigen Muster (aus der Datenbank) dar, welche mit dem gelieferten Scan verglichen werden sollten.

Qualifikationsparamter können auf mehreren Niveaus angepasst werden, um den Eigenschaften des Lesers 12 sowie dem Gesamtsicherheitsniveau gerecht zu werden, was falsche Übereinstimmungen im Verhältnis zu falschen Abweisungen angeht. Beispielsweise könnten die Distanzparamter der Übereinstimmungstabelle so ausgedehnt werden, dass Einträge berücksichtigt werden, deren Distanz größer als 60 im Vergleich zu 40 ist, was im Endeffekt dazu führen würde, dass der Grad an Sicherheit herabgesetzt und dadurch falsche Abweisungen auf Kosten der Erhöhung falscher Akzeptanzen reduziert würden.

Nun, da ein Verfahren der Bildverarbeitung und Verfahren des Bildvergleichs (einschließlich der Verwendung von Datenbankschlüsseln) beschrieben wurden, wird die vorliegende Erfindung im Vergleich mit dieser vorstehenden Beschreibung verwandten Verfahren beschrieben.

45 ist ein Blockdiagramm, welches einen Satz prozeduraler Komponenten im Zusammenhang mit einem eins-zu-vielen- oder Datenbanksuch-Bildverarbeitungsverfahren in Übereinstimmung mit einer Ausführungsform der vorliegenden Erfindung darstellt. Block 196 zeigt einen ersten beispielhaften Schritt in diesem Prozess an, insbesondere die Ableitung eines ersten Bilddatensatzes, welcher auf einem ersten Bild basiert, und einer Vielzahl anderer Bilddatensätze auf der Basis einer Vielzahl anderer Bilder. Der erste und die anderen Bilddatensätze weisen eine Vielzahl von Datenelementen auf, welche beispielhaft, jedoch nicht notwendigerweise, mit Bildern von Fingerabdrücken zusammenhängen. Verschiedene Typen von Datenelementen im Zusammenhang mit Fingerabdruck-Bildern sind vorstehend im Bezug auf eins-zu-eins-Vergleiche beschrieben, aber auch an anderen Positionen innerhalb der vorliegenden Erfindung.

Die aus dem ersten und anderen Bildern abgeleiteten Bilddatensätze sind beispielhaft Musterdarstellungen entsprechender erster und anderer Bilder. Die Bilddatensätze werden beispielhaft erzeugt wie vorstehend mit Bezug auf die anderen in der Beschreibung der vorliegenden Erfindung enthaltenen Figuren beschrieben.

Der nächste, durch Block 198 angezeigte Schritt ist die Schaffung eines Dateiverzeichnisses, welches progressiv basierend auf mindestens einem gemessenen Charakteristikum (z.B. einem bestimmten Winkel, einer Länge, etc.) eine wesentliche Anzahl einer bestimmten Art von Datenelement (z.B. entweder Gabelungsdarstellungen, Erhöhungsdarstellungen, damit im Zusammenhang stehende und nicht im Zusammenhang stehende Vektoren, mikorminutiöse Punkte, etc.) auflistet, die in der Vielzahl anderer Bilddatensätze auftreten. Jedes Datenelement in dem Dateiverzeichnis ist beispielhaft mit einer Identifikaion aufgelistet, welche einen Zusammenhang mit einem bestimmten Bilddatensatz darstellt, innerhalb welchem das Datenelement auftritt.

Block 200 zeigt den nächsten Schritt in dem Prozess an, wobei eine Matrix erzeugt wird, welche eine Zelle mit zwei Einträgen für jede aus einer Reihe (oder im wesentlichen allen) der potentiellen Konfigurationen für dieselbe Art von Datenelement aufweist, die in dem in Schritt 198 geschaffenen Dateiverzeichnis aufgelistet sind. Beispielsweise kann die spezielle Art von Datenelement so gewählt werden, dass sie die Gabelungsdarstellungen ist. Dann kann das gemessene Charakteristikum die Richtung der Gabelung sein. Die Richtung der Gabelung wird als ein Winkel zwischen 0° und 359° angegeben. Somit entsprechen die potentiellen Konfigurationen den unterschiedlichen möglichen Werten innerhalb dieses allgemeinen Bereichs. Beispielsweise können Zellen mit zwei Einträgen für jeden Bereich von 15° geschaffen werden, d.h. je eine Zelle für 0° bis 14°, für 15° bis 29°, für 30° bis 44° usw. Mehr als ein gemessenes Charakteristikum kann verwendet werden. Für Gabelungsdarstellungen können auch der erste und der zweite Trennungswinkel verwendet werden. Auf diese Weise kann jede Zelle mit zwei Einträgen einer Dreiwege-Qualifikation in Winkelbereiche für die Richtung und die erste und zweite Teilung entsprechen. Eine Beispielzelle kann alle Gabelungen mit einer Richtung zwischen 180° und 194° und einem ersten Teilungswinkel zwischen 90° und 105° und einem zweiten Teilungswinkel zwischen 45° und 59° identifizieren.

Block 202 zeigt eine Aufzeichnung von Prozessinformationen innerhalb von Matrixfeldern an. In Übereinstimmung mit einer Ausführungsform wird in einem Eintrag jeder Zelle mit zwei Einträgen ein Quantitätswert aufgezeichnet, welcher eine Anzahl konsekutiver Datenelemente in dem Dateiverzeichnis darstellt, die Charakteristika darstellen, welche in etwa den Charakteristika des einen des Bereichs potentieller Konfigurationen entsprechen, die den Datenelementkonfigurationen entsprechen, die mit dieser Zelle mit zwei Einträgen in Zusammenhang stehen. Beispielhaft wird in dem anderen Eintrag der Zelle mit zwei Einträgen ein Indexwert aufgezeichnet, welcher einem anfänglichen Datenelement entspricht, das die Anzahl von in dem Dateiverzeichnis aufgelisteten konsekutiven Datenelementen beginnt. Anders gesagt, werden die Zellen verwendet, um Positionen innerhalb des progressiven Dateiverzeichnisses von Datenelementen aufzuzeichnen, welche potentiell mit dem Datenelement im Zusammenhang mit einer bestimmten Zellenposition übereinstimmen.

Block 204 zeigt den nächsten Schritt an, wobei eine Identifikation einer Zelle mit zwei Einträgen in der Matrix existiert, welche mit einer Datenelement-Konfiguration mit Charakteristika zusammenhängt, die in etwa mit einem Zieldatenelement identisch sind, also einem Datenelement aus dem ersten Bilddatensatz.

Block 206 zeigt den nächsten Schritt an, wobei das Zieldatenelement mit einer Gruppe von konsekutiven Datenelementen verglichen wird, die in dem Dateiverzeichnis aufgelistet sind, wie durch die Zelle mit zwei Einträgen im Zusammenhang mit diesem Zieldatenelement angezeigt. Wie durch Block 208 angezeigt, wird diese Identifikation und dieser Vergleich von Ziel-Datenelementen mit zusammenhängenden konsekutiven Datenelementen in dem Dateiverzeichnis für zusätzliche Zieldatenelemente wiederholt.

Block 210 zeigt den nächsten Schritt an. Der Schritt umfasst die Berechnung und Notierung einer Menge von Datenelementen in jeder der Vielzahl von anderen Bilddatensätzen, welche in etwa mit Datenelementen, beispielhaft Zieldatenelementen, aus dem ersten Bilddatensatz übereinstimmen. Wenn Zieldatenelemente gefunden werden, welche mit Datenelementen in dem Dateiverzeichnis übereinstimmen, helfen die vorstehenden Identifikatoren bei der Erkenntnis, welcher Bilddatensatz, zu welchem eine Erhöhung der Zählung erfolgen sollte.

Wie durch Block 212 angezeigt, können ähnliche Dateiverzeichnisse, Matrizen und Zählungen für zahlreiche Arten von Datenelementen erfolgen. Beispielhaft werden die Schritte 198 bis 210 mit Hilfe einer Vielzahl von Arten von Datenelementen durchgeführt, und eine einzelne laufende Zählung wird für jeden der anderen Bilddatensätze gehalten.

Block 214 zeigt den nächsten Prozessschritt an. Der Schritt umfasst die Auswahl einer vorgegebenen Anzahl von Bilddatensätzen, welche die höchste Zählung oder die meisten Datenelemente enthält, die in etwa mit Zieldatenelementen aus dem ersten Bilddatensatz übereinstimmen, aus der Vielzahl anderer Bilddatensätze.

Schließlich zeigt Block 216 die Durchführung eines genaueren Vergleichs der vorgegebenen Anzahl von Bilddatensätze mit dem ersten Bilddatensatz an. Der genauere Vergleichsprozess wird beispielhaft verwendet, um zwischen den Bilddatensätzen, und folglich Bildern, zu unterscheiden, welche bei dem Abgleich berücksichtigt oder nicht berücksichtigt werden sollten. In Übereinstimmung mit einer Ausführungsform wird der mit Bezug auf 44 beschriebene eins-zu-eins-Vergleichsprozess als genauerer Vergleichsprozess verwendet.

Obgleich die vorliegende Erfindung mit Bezug auf beispielhafte Ausführungsformen beschrieben wurde, wird sich für Fachleute verstehen, dass Änderungen in Form und Detail der Ausführungsbeispiels vorgenommen werden können, ohne vom Schutzumfang der Erfindung gemäß Definition in den anliegenden Ansprüchen abzuweichen.


Anspruch[de]
Verfahren zum effizienten und exakten Vergleichen eines ersten Bildes mit einer Vielzahl von weiteren Bildern, wobei das Verfahren folgende Schritte aufweist:

Ableitung (196) eines auf dem ersten Bild basierenden ersten Bilddatensatzes und eine auf der Vielzahl von weiteren Bildern basierende Vielzahl von weiteren Bilddatensätzen, wobei jeder Datensatz eine Vielzahl von Datenelementen einschließt und eine Musterdarstellung eines entsprechenden Bildes ist; und

Vergleich von mindestens einem Datenelement in dem ersten Bilddatensatz mit Datenelementen in mindestens einem der Vielzahl von weiteren Bilddatensätzen;

dadurch gekennzeichnet, dass der Vergleich folgende Schritte aufweist:

Erstellung (198) eines Dateiverzeichnisses, das basierend auf mindestens einem gemessenen Merkmal eine Vielzahl einer ersten Art von Datenelementen, die in der Vielzahl von weiteren Bilddatensätzen auftreten, nach und nach auflistet, wobei jedes Datenelement in dem Verzeichnis mit einem Identifikator, der eine Zugehörigkeit zu einem bestimmten Bilddatensatz, in dem das Datenelement auftritt, darstellt, aufgelistet wird; und

Vergleich (206) von dem ersten Bilddatensatz entnommenen Datenelementen einer ersten Art mit den Datenelementen, die nach und nach in dem Verzeichnis aufgelistet werden.
Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das Vergleichen der Datenelemente der ersten Art aus dem ersten Bilddatensatz mit den Datenelementen, die nach und nach in dem Verzeichnis aufgelistet werden, folgende Schritte aufweist:

Erstellung (200) einer Matrix, die eine Zelle mit zwei Feldern für jede aus einer Vielzahl von möglichen Konfigurationen für die erste Datenelementenart aufweist;

Aufzeichnung (202) eines quantitativen Werts in einem ersten Eintrag von mindestens einer Zweifelder-Zelle, wobei der quantitative Wert eine Anzahl von fortlaufenden Datenelementen in dem Verzeichnis darstellt, die Merkmale aufzeigen, die ähnlich den Merkmalen der einen Konfiguration aus der Vielzahl von möglichen Konfigurationen der ersten Datenelementenart sind, die der Zweifelder-Zelle, in welcher der erste Eintrag aufgezeichnet ist, zugeordnet sind; und

Aufzeichnung (202) eines einem anfänglichen Datenelement entsprechenden Indexwertes in einem zweiten Eintrag von mindestens einer Zweifelder-Zelle, wobei das anfängliche Datenelement die Reihe der fortlaufenden Datenelemente, die in dem Verzeichnis aufgelistet sind, anführt.
Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass das Vergleichen der dem ersten Datensatz entnommenen ersten Art von Datenelementen mit den Datenelementen, die nach und nach in dem Verzeichnis aufgelistet werden, folgende Schritte aufweist:

Identifizierung (204) einer Zweifelder-Zelle in der Matrix, die einer Datenelementkonfiguration zugehört, die Merkmale aufweist, die ungefähr identisch mit einem Zieldatenelement sind, das dem ersten Bilddatensatz entnommen worden ist; und

Vergleich (206) des Zieldatenelements mit einer Gruppe aufeinanderfolgender Datenelemente, die in dem Verzeichnis aufgelistet sind, wie von der dem Zieldatenelement zugehörigen Zweifelder-Zelle angezeigt; und

Wiederholung (208) der Identifizierungs- und Vergleichsschritte für mindestens ein zusätzliches Zieldatenelement.
Verfahren nach Anspruch 3, das weiter die Erstellung (210) einer Zählung für jeden der Vielzahl von weiteren Bilddatensätzen aufweist, dadurch gekennzeichnet, dass die Erstellung der Zählung folgenden Schritt aufweist:

Verwendung der den Datenelementen, die in dem Verzeichnis aufgelistet sind, zugehörigen Identifikatoren zum Berechnen und Vermerken einer Menge von Datenelementen in jeder der Vielzahl von weiteren Bilddatensätzen, die in etwa mit den Datenelementen übereinstimmen, die dem ersten Bilddatensatz entnommen worden sind.
Verfahren nach Anspruch 4, das weiter folgende Schritte aufweist:

Auswahl (214) aus der Vielzahl von weiteren Bilddatensätzen eine vorbestimmten Anzahl von Bilddatensätzen, welche die Mehrzahl an Datensätzen aufweisen, die in etwa mit den Datenelementen aus dem ersten Bilddatensatz übereinstimmen; und

Ausführen (216) eines gründlicheren Vergleichs der vorbestimmten Anzahl von Bilddatensätzen mit dem ersten Bilddatensatz.
Verfahren nach Anspruch 4, das weiter folgende Schritte aufweist:

Wiederholung (212) der vorangegangenen Schritte, wobei zumindest eine weitere Art von Datenelementen anstelle der ersten Art von Datenelementen ersetzt wird;

Auswahl (214) aus der Vielzahl von weiteren Bilddatensätzen einer vorbestimmten Anzahl von Bilddatensätzen, welche die Mehrzahl an Datensätzen aufweisen, die in etwa mit den Datenelementen aus dem ersten Bilddatensatz übereinstimmen; und

Ausführung (216) eines gründlicheren Vergleichs der vorbestimmten Anzahl von Bilddatensätzen mit dem ersten Bilddatensatz.
Verfahren zum effizienten und exakten Vergleichen eines ersten Bilddatensatzes mit einer Vielzahl von weiteren Bilddatensätzen, dadurch gekennzeichnet, dass die erste und die Vielzahl von weiteren Bilddatensätzen individuell von Fingerabdruck-Bildern abgeleitet werden und eine Vielzahl von Datenelementen aus einer Vielzahl von Arten einschließt, wobei die Vielzahl von Arten mindestens eine Gabelungsdarstellung, eine Papillarlinienende-Abschnittsdarstellung, eine Darstellung von Vektor-Abschnitten, die einen Teil einer Papillarlinie darstellen, mikrominutiöse Punkte, wie zum Beispiel ein Bereich ohne Papillarleisten, und Kombinationen hiervon aufweisen, wobei das Verfahren folgende Schritte aufweist:

Erstellung (198) eines Verzeichnisses, das auf mindestens einem gemessenen Merkmal basierend eine Vielzahl einer ersten Art von Datenelementen nach und nach auflistet, die in der Vielzahl von weiteren Bilddatensätzen auftreten, wobei jedes Datenelement in dem Verzeichnis einen Identifikator einschließt, der eine Zugehörigkeit zu einem bestimmten Bilddatensatz, in dem das Datenelement auftritt, darstellt;

Erstellung einer Matrix (200) mit einer Zweifelder-Zelle für jede aus einer Vielzahl von möglichen Konfiguration für die erste Art von Datenelementen;

Aufzeichnung (202) eines quantitativen Werts in einem ersten Eintrag von mindestens einer Zweifelder-Zelle, wobei der quantitative Wert eine Reihe von fortlaufenden Datenelementen in dem Verzeichnis darstellt, die Merkmale aufzeigen, die in etwa den Merkmalen der einen Art aus der Vielzahl von möglichen Konfigurationen für die erste Art von Datenelementen ähneln, die der Zweifelder-Zelle, in welcher der erste Eintrag aufgezeichnet wird, zugehörig ist; und

Aufzeichnung (202) eines einem Anfangsdatenelement entsprechenden Indexwertes in einem zweiten Eintrag von mindestens einer Zweifelder-Zelle, wobei das Anfangsdatenelement die Reihe der fortlaufenden Datenelemente, die in dem Verzeichnis aufgelistet sind, anführt;

Identifizierung (204) einer Zweifelder-Zelle in der Matrix, die einer Datenelementkonfiguration zugehörig ist, die Merkmale aufweist, die in etwa identisch mit einem Zieldatenelement einer ersten Art aus dem ersten Bilddatensatz entnommenen ersten Art sind; und

Vergleich (206) des Zieldatenelements mit einer Gruppe von fortlaufenden Datenelementen, die in dem Verzeichnis aufgelistet sind, wie von der dem Zieldatenelement zugehörigen Zweifelder-Zelle angezeigt.
Verfahren nach Anspruch 7, das weiter folgende Schritte aufweist:

Wiederholung (208) der Identifizierungs- und Vergleichsschritte für mindestens ein zusätzliches Zieldatenelement;

Verwendung der den Datenelementen, die in dem Verzeichnis aufgelistet sind, zugehörigen Identifikatoren zum Berechnen und Vermerken einer Menge von Datenelementen in jedem aus der Vielzahl von weiteren Bilddatensätzen, die in etwa mit dem ersten Bilddatensatz entnommenen Datenelementen übereinstimmen;

Auswählen (214) aus der Vielzahl von weiteren Bilddatensätzen eine vorbestimmten Anzahl von Bilddatensätzen, welche die Mehrzahl an Datensätzen aufweisen, die in etwa mit den Datenelementen aus dem ersten Bilddatensatz übereinstimmen.
Verfahren nach Anspruch 7, das weiter folgende Schritte aufweist:

Wiederholung der Identifizierungs- und Vergleichsschritte für mindestens ein zusätzliches Zieldatenelement;

Verwendung der den Datenelementen, die in dem Verzeichnis aufgelistet sind, zugehörigen Identifikatoren zum Berechnen und Vermerken einer Menge von Datenelementen in jedem aus der Vielzahl von weiteren Bilddatensätzen, die in etwa mit dem ersten Bilddatensatz entnommenen Datenelementen übereinstimmen;

Wiederholung (212) der vorangegangenen Schritte, wobei zumindest eine weitere Art von Datenelementen anstelle der ersten Art von Datenelementen ersetzt wird;

Auswahl (214) aus der Vielzahl von weiteren Bilddatensätzen eine vorbestimmten Anzahl von Bilddatensätzen, welche die Mehrzahl an Datensätzen aufweisen, die in etwa mit den Datenelementen aus dem ersten Bilddatensatz übereinstimmen; und

Ausführung (216) eines gründlicheren Vergleichs der vorbestimmten Anzahl von Bilddatensätzen mit dem ersten Bilddatensatz.






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

Patent Zeichnungen (PDF)

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com