Wie entferne ich den Hintergrund von einem Fingerabdruck?

8

Ich habe ein Fingerabdruckbild von einem Sliding-Scanner. Die Ausgabe hat jedoch keinen sauberen Hintergrund. Es sieht so aus:

dreckig http://img208.imageshack.us/img208/2622/dirtiy0.png

Ich möchte den Hintergrund entfernen, damit die weitere Verarbeitung genauer ist. Etwas wie das:

gereinigt http://img515.imageshack.us/img515/7530/cleanhh6.png

Wie geht das? Welche Bildverarbeitungstechnik (falls vorhanden) kann verwendet werden? Danke.

    
yuku 22.10.2008, 05:34
quelle

5 Antworten

7

Sie können das Frequenzspektrum für den Bereich um die Pixel überprüfen. Je weniger hochfrequente Komponenten Sie haben, desto wahrscheinlicher ist es, dass das Pixel Teil des Hintergrunds ist.

Der ausgeklügeltste Weg wäre, eine FFT eines Pixelblocks auszuführen und das Spektrum direkt zu überprüfen. Da Fingerabdrücke ein unterschiedliches Frequenzspektrum haben, sollte es leicht sein, Hintergrund von Fingerabdruck zu trennen.

Die Verwendung von Wavelets könnte ebenfalls einen Versuch wert sein. Damit können Sie das Bild direkt in Teilbänder der interessierenden Frequenz aufteilen. Ein gutes Wavelet zu finden, erfordert jedoch viel Übung.

Wenn Sie eine nicht übertriebene Lösung wünschen, kann in Ordnung sein, wenn Sie einen Hochpassfilter des Bildes ausführen und es für einen einfachen Maskensuchlauf verwenden. Hier ist ein grober Überblick, wie das funktioniert:

  1. Normalisieren Sie das Bild: Das dunkelste Pixel wird -1, das hellste Pixel wird 1. Sie können -128 / 127 auch verwenden, wenn Sie lieber mit Bytes arbeiten.

  2. Führe eine gaußsche Unschärfe über das Bild. Experimentiere mit dem Radius.

  3. subtrahiere das normalisierte Bild vom verwackelten Bild. Behandeln Sie Überläufe, indem Sie auf -1 und 1 sättigen. Das Bild wird nun ungefähr so ​​aussehen, als wäre es Kantenerkennung, aber mit Grautönen anstelle einer binären Maske.

  4. Führen Sie eine Maskenübergabe über das Bild aus Schritt 3 aus. Je höher der absolute Wert jedes Pixels ist, desto höher ist die Wahrscheinlichkeit, dass es Teil des Fingerabdrucks ist. Sie können eine Maske generieren, indem Sie einen guten Schwellenwert auswählen.

  5. Verwenden Sie die Maske, um Ihr Quellbild vorzubereiten.

Um es komplett zu machen, können Sie es auch mit Bildmorphologie machen:

  1. Führen Sie einen Kantendetektor auf Ihrem Bild aus. Die Verwendung des Canny-Detektors ist eine gute Wahl, aber ein einfacher 3x3-Kanten-Detektor-Kernel würde ebenfalls funktionieren.

  2. Führen Sie mehrere Dilatationsdurchläufe an den Kanten aus. Dies wird bei jedem Durchgang einen Rand um alle weißen Pixel herum wachsen lassen und die Kanten dicker machen. Tun Sie dies, bis der gesamte Bereich des Fingerabdrucks mit weißen Pixeln bedeckt ist. In deinem Beispiel denke ich, dass 4 oder 5 Pässe ausreichen.

  3. Sie können das erweiterte Bild jetzt direkt als Maske verwenden.

Link: Erweiterung Ссылка

    
Nils Pipenbrinck 22.10.2008 06:33
quelle
6

Sie könnten einen Kantenerkennungsfilter versuchen. Das würde helfen, das Hintergrundrauschen zu beseitigen und die Fingerabdruckmerkmale für den Rest der Verarbeitung zu schärfen.

Canny Edge Detector könnte ein guter Test sein. Es gibt sogar eine kostenlose Web-Implementierung, die Sie ausprobieren können und eine public-domain Java-Implementierung verfügbar .

EDIT: War neugierig, wie es funktionieren würde, also habe ich die Web-Implementierung auf Standardeinstellungen versucht - nicht schlecht. Es scheint einige "Phantom" -Features zu geben, aber insgesamt sieht es etwas einfacher zu verarbeiten aus.

alt text http://img356.imageshack.us/img356/5/ml00055edgedetectionwp7.png

    
Randy 22.10.2008 06:04
quelle
2

Probieren Sie einige Kontrastverbesserung (z. B. mexikanischer Hut) und danach einige fortgeschrittene Verbesserung. Wir hatten gute Ergebnisse bei der Verwendung von Gabor-Filter-Techniken zur Verbesserung der CT-Bilder von Dendrochronologie. Wir haben Gabor-Filter verwendet, weil sie weit verbreitet mit Fingerabdruck-Anpassungssystemen verwendet werden und unsere Bilder waren etwas ähnlich. Danach müssen Sie nur ein paar (ich würde vorschlagen, lokal adaptive) tresholding, und Sie haben Ihr Binärbild.

    
Joachim Kerschbaumer 22.10.2008 06:43
quelle
1

Um zu beginnen, würde ich den Kontrast auf 100% erhöhen, um ein reines Schwarz-Weiß-Bild (nicht Graustufen) zu erhalten.

    
nickf 22.10.2008 05:53
quelle
1

Es gibt viele Arten von Algorithmen für die Segmentierung von Fingerabdrücken. Einer von ihnen, der für Sensoren (Ihr Fall) gut funktioniert, basiert auf der Mittelwert und Varianz jedes Pixels im Bild. Unten sind die Schritte des Algorithmus, die Sie hier finden können:

Fingerabdrucksegmentierung: Eine Untersuchung verschiedener Techniken und eine Parameterstudie einer varianzbasierten Methode

1. Laden Sie ein Bild mit der Größe R x C Pixel. Hier spielt der Inhalt des Fingerabdrucks keine Rolle, also bedecke ich ihn. Sie können das Rauschen um den Fingerabdruck sehen (kleine Punkte) und dies ist eine gute Bildqualität, die vom Sensor aufgenommen wird, wenn Ihr Bild eine schlechte Qualität und mehr Hintergrundgeräusche aufweist.

2. Ich habe die Normalisierung des Bildes nicht wie im Papier durchgeführt. Daher bestand der nächste Schritt darin, Pixelblöcke der Größe w x w zu definieren und das Bild in nicht überlappende Blöcke zu teilen.

3. Verschieben Sie für jeden Pixel den Block und berechnen Sie den Mittelwert und die Varianz. Speichern Sie jede Varianz in einer Matrix für den weiteren Vergleich. Sie müssen die Grenzen bedrohen.

4. Definieren Sie einen Schwellenwert. In dem Papier für einen w = 15 ist der Schwellenwert T = 210 .

5. Wenn jede Varianz mit dem Schwellenwert verglichen wird, ist sie kleiner, wenn sie kleiner ist, andernfalls ist sie der Fingerabdruck selbst.

Nach all diesen Schritten haben Sie ein Bild mit weniger Hintergrundgeräuschen. Ähnlich wie dieses:

Hier ist der Algorithmus wie in der Zeitung:

Für andere Algorithmen siehe:

Ein verbesserter Fingerabdrucksegmentierungsalgorithmus basierend auf Mittelwert und Varianz

Verbesserte Fingerabdruck-Bildsegmentierung mithilfe einer neuen modifizierten Gradientenmethode

    
Marlos Damasceno 10.07.2015 17:13
quelle

Tags und Links