Die globale COVID-19-Pandemie hat die Notwendigkeit beschleunigt, Benutzer in mehreren Branchen wie Finanzdienstleistungen, Versicherungen und Gesundheitswesen online zu verifizieren und einzubinden. Wenn es um die Benutzererfahrung geht, ist es entscheidend, eine reibungslose Transaktion bereitzustellen und gleichzeitig einen hohen Standard für die Identitätsprüfung aufrechtzuerhalten. Die Frage ist, wie verifiziert man echte Menschen in der digitalen Welt?
Amazon-Anerkennung bietet vortrainierte Gesichtserkennungs- und Analysefunktionen zur Identitätsprüfung für Ihre Online-Anwendungen wie Banking, Benefits, E-Commerce und vieles mehr.
In diesem Beitrag stellen wir das Designmuster „ID + Selfie“ zur Identitätsprüfung vor Beispielcode Sie können verwenden, um Ihren eigenen REST-Endpunkt für die Identitätsprüfung zu erstellen. Dies ist ein gängiges Entwurfsmuster, das Sie in vorhandene oder neue Lösungen integrieren können, die eine gesichtsbasierte Identitätsprüfung erfordern. Der Benutzer präsentiert eine Form der Identifizierung wie einen Führerschein oder Reisepass. Der Benutzer nimmt dann mit der Anwendung ein Echtzeit-Selfie auf. Wir vergleichen dann das Gesicht aus dem Dokument mit dem Echtzeit-Selfie, das auf ihrem Gerät aufgenommen wurde.
Die Amazon Rekognition CompareFaces-API
Kern des Gestaltungsmusters „ID + Selfie“ ist der Abgleich des Gesichts auf dem Selfie mit dem Gesicht auf dem Ausweisdokument. Dazu verwenden wir die Amazon Rekognition CompareFaces
API. Die API vergleicht ein Gesicht im Quelleingabebild mit einem oder mehreren Gesichtern, die im Zieleingabebild erkannt wurden. Im folgenden Beispiel vergleichen wir einen Musterführerschein (links) mit einem Selfie (rechts).
Quelle | Target |
Das Folgende ist ein Beispiel für den API-Code:
In der werden mehrere Werte zurückgegeben Antwort der CompareFaces-API. Wir konzentrieren uns auf die Similarity
Wert zurückgegeben in FaceMatches
um zu überprüfen, ob das Selfie mit der angegebenen ID übereinstimmt.
Verstehen der wichtigsten Tuning-Parameter
SimilarityThreshold
ist standardmäßig auf 80 % eingestellt und gibt nur Ergebnisse mit einem Ähnlichkeitswert von mindestens 80 % zurück. Passen Sie den Wert an, indem Sie die angeben SimilarityThreshold
Parameters.
QualityFilter
ist ein Eingabeparameter, um erkannte Gesichter herauszufiltern, die eine erforderliche Qualitätsleiste nicht erfüllen. Die Qualitätsleiste basiert auf einer Vielzahl gängiger Anwendungsfälle. Verwenden QualityFilter
um den Qualitätsbalken durch Angabe festzulegen LOW
, MEDIUM
, oder HIGH
. Wenn Sie Gesichter mit schlechter Qualität nicht filtern möchten, geben Sie an NONE
. Der Standardwert ist NONE
.
Lösungsüberblick
Sie können eine „ID + Selfie“-API für die digitale Identitätsprüfung erstellen, indem Sie die folgenden Komponenten bereitstellen:
- Eine REST-API mit einer POST-Methode, die es uns ermöglicht, die Selfie- und Identifizierungsnutzdaten zu senden und eine Antwort zurückzugeben, in diesem Fall den Ähnlichkeitswert
- Eine Funktion zum Empfangen der Nutzdaten, zum Konvertieren der Bilder in das richtige Format und zum Aufrufen von Amazon Rekognition
compare_faces
API.
Wir implementieren Amazon API-Gateway für die REST-API-Funktionalität und AWS Lambda für die Funktion.
Das folgende Diagramm veranschaulicht die Lösungsarchitektur und den Workflow.
Der Workflow enthält die folgenden Schritte:
- Der Nutzer lädt das erforderliche Ausweisdokument und ein Selfie hoch.
- Der Client übermittelt das Ausweisdokument und das Selfie an den REST-Endpunkt.
- Der REST-Endpunkt gibt einen Ähnlichkeitswert an den Client zurück.
- Eine Auswertung erfolgt über die Geschäftslogik in Ihrer Anwendung. Wenn beispielsweise der Ähnlichkeitswert unter 80 % liegt, besteht die digitale Identitätsprüfung nicht; andernfalls besteht es die digitale Identitätsprüfung.
- Der Client sendet den Status an den Benutzer.
Lambda-Code
Die Lambda-Funktion wandelt die eingehende Nutzlast für jedes Bild von Base64 in Byte um und sendet dann die Quelle (Selfie) und das Ziel (Identifikation) an Amazon Rekognition compare_faces
API und gibt den im Hauptteil der API-Antwort erhaltenen Ähnlichkeitswert zurück. Siehe folgenden Code:
Stellen Sie das Projekt bereit
Dieses Projekt ist für die Bereitstellung verfügbar AWS-Beispiele an. Nach der Installation können Sie HEIC-Dateien mit der AWS Cloud-Entwicklungskit (AWS-CDK). Sie können das Repository klonen und den folgenden AWS CDK-Prozess verwenden, um es in Ihrem AWS-Konto bereitzustellen.
- Richten Sie einen Benutzer ein, der über Berechtigungen zum programmgesteuerten Bereitstellen der Lösungsressourcen über das AWS CDK verfügt.
- Richten Sie die AWS-Befehlszeilenschnittstelle (AWS-CLI). Anweisungen finden Sie unter Konfigurieren der AWS CLI.
- Wenn Sie das AWS CDK zum ersten Mal verwenden, erfüllen Sie die in aufgeführten Voraussetzungen Arbeiten mit dem AWS CDK in Python.
- Klonen Sie die GitHub-Repository.
- Erstellen Sie die virtuelle Umgebung. Welchen Befehl Sie verwenden, hängt von Ihrem Betriebssystem ab:
- Wenn Sie Windows verwenden, führen Sie den folgenden Befehl in Ihrem Terminalfenster aus der Quelle des geklonten Repositorys aus:
- Wenn Sie Mac oder Linux verwenden, führen Sie den folgenden Befehl in Ihrem Terminalfenster aus der Quelle des geklonten Repositorys aus:
- Installieren Sie nach der Aktivierung der virtuellen Umgebung die Standardabhängigkeiten der App:
- Nachdem die Umgebung eingerichtet und die Anforderungen erfüllt sind, können wir den AWS CDK-Bereitstellungsbefehl ausgeben, um dieses Projekt in AWS bereitzustellen:
API-Aufrufe durchführen
Wir müssen die Nutzlast im base64-Format an den REST-Endpunkt senden. Wir verwenden eine Python-Datei, um den API-Aufruf durchzuführen, der es uns ermöglicht, die Quell- und Zieldateien zu öffnen, sie in base64 zu konvertieren und die Nutzdaten an das API-Gateway zu senden. Dieser Code ist im Repository verfügbar.
Beachten Sie, dass die SOURCE
und TARGET
Die Dateispeicherorte befinden sich in Ihrem lokalen Dateisystem, und die URL ist die API-Gateway-URL, die während der Erstellung des Projekts generiert wurde.
Aufräumen
Wir haben das AWS CDK verwendet, um dieses Projekt zu erstellen, damit wir unser Projekt lokal öffnen und den folgenden AWS CDK-Befehl ausgeben können, um die Ressourcen zu bereinigen:
Zusammenfassung
Da haben Sie es, das Designmuster „ID + Selfie“ mit einer einfachen API, die Sie in Ihre Anwendung integrieren können, um eine digitale Identitätsprüfung durchzuführen. Im nächsten Beitrag unserer Serie bauen wir dieses Muster weiter aus, indem wir Text aus dem Ausweisdokument extrahieren und eine Sammlung von Gesichtern durchsuchen, um Duplikate zu vermeiden.
Um mehr zu erfahren, besuchen Sie die Amazon Rekognition-Entwicklerhandbuch zum Erkennen und Analysieren von Gesichtern.
Über die Autoren
Mike Ames ist Principal Applied AI/ML Solutions Architect bei AWS. Er hilft Unternehmen dabei, maschinelles Lernen und KI-Dienste einzusetzen, um Betrug, Verschwendung und Missbrauch zu bekämpfen. In seiner Freizeit findet man ihn beim Mountainbiken, Kickboxen oder Gitarrespielen in einer Metalband der 90er.
Noah Donaldson ist ein Lösungsarchitekt bei AWS, der Bundesfinanzorganisationen unterstützt. Er ist begeistert von der KI/ML-Technologie, die manuelle Prozesse reduzieren, das Kundenerlebnis verbessern und zur Lösung interessanter Probleme beitragen kann. Außerhalb der Arbeit verbringt er gerne Zeit mit seinem Sohn auf dem Eis, spielt Hockey, jagt mit seiner ältesten Tochter und wirft mit seiner jüngsten Tochter Körbe.
- AI
- Kunst
- KI-Kunstgenerator
- KI-Roboter
- Amazon-Anerkennung
- künstliche Intelligenz
- Zertifizierung für künstliche Intelligenz
- Künstliche Intelligenz im Bankwesen
- Roboter mit künstlicher Intelligenz
- Roboter mit künstlicher Intelligenz
- Software für künstliche Intelligenz
- AWS Maschinelles Lernen
- Blockchain
- Blockchain-Konferenz ai
- Einfallsreichtum
- dialogorientierte künstliche Intelligenz
- Krypto-Konferenz ai
- Dalls
- tiefe Lernen
- Grundlagen (100)
- Google Ai
- Maschinelles Lernen
- Plato
- platon ai
- Datenintelligenz von Plato
- Plato-Spiel
- PlatoData
- Platogaming
- Skala ai
- Syntax
- Zephyrnet