De wereldwijde pandemie van COVID-19 heeft de noodzaak om gebruikers online te verifiëren en te onboarden in verschillende sectoren, zoals financiële dienstverlening, verzekeringen en gezondheidszorg, versneld. Als het gaat om gebruikerservaring, is het cruciaal om een soepele transactie te bieden met behoud van een hoge standaard voor identiteitsverificatie. De vraag is, hoe verifieer je echte mensen in de digitale wereld?
Amazon Rekognition biedt vooraf getrainde gezichtsherkenning en analysemogelijkheden voor identiteitsverificatie voor uw online toepassingen, zoals bankieren, voordelen, e-commerce en nog veel meer.
In dit bericht presenteren we het "ID + Selfie" ontwerppatroon voor identiteitsverificatie en voorbeeldcode u kunt gebruiken om uw eigen REST-eindpunt voor identiteitsverificatie te maken. Dit is een algemeen ontwerppatroon dat u kunt opnemen in bestaande of nieuwe oplossingen waarvoor identiteitsverificatie op basis van gezicht vereist is. De gebruiker presenteert een vorm van identificatie zoals een rijbewijs of paspoort. De gebruiker maakt dan een realtime selfie met de applicatie. Vervolgens vergelijken we het gezicht uit het document met de realtime selfie die op hun apparaat is gemaakt.
De Amazon Recognition CompareFaces API
De kern van het ontwerppatroon "ID + Selfie" is de vergelijking van het gezicht in de selfie met het gezicht op het identificatiedocument. Hiervoor gebruiken we de Amazon Rekognition CompareFaces
API. De API vergelijkt een gezicht in de broninvoerafbeelding met een of meer gezichten die zijn gedetecteerd in de doelinvoerafbeelding. In het volgende voorbeeld vergelijken we een voorbeeldrijbewijs (links) met een selfie (rechts).
bron | doelwit |
Het volgende is een voorbeeld van de API-code:
Verschillende waarden worden geretourneerd in de CompareFaces API-antwoord. Wij richten ons op de Similarity
waarde geretourneerd in FaceMatches
om te valideren dat de selfie overeenkomt met de verstrekte ID.
De belangrijkste afstemmingsparameters begrijpen
SimilarityThreshold
is standaard ingesteld op 80% en retourneert alleen resultaten met een overeenkomstscore groter dan of gelijk aan 80%. Pas de waarde aan door de . op te geven SimilarityThreshold
parameter.
QualityFilter
is een invoerparameter om gedetecteerde gezichten uit te filteren die niet voldoen aan een vereiste kwaliteitsbalk. De kwaliteitsbalk is gebaseerd op een verscheidenheid aan veelvoorkomende gebruiksscenario's. Gebruiken QualityFilter
om de kwaliteitsbalk in te stellen door op te geven LOW
, MEDIUM
of HIGH
. Als u gezichten van slechte kwaliteit niet wilt filteren, geeft u op NONE
. De standaardwaarde is NONE
.
Overzicht oplossingen
U kunt een "ID + Selfie" API maken voor digitale identiteitsverificatie door de volgende componenten in te zetten:
- Een REST API met een POST-methode waarmee we de selfie- en identificatie-payload kunnen verzenden en een reactie kunnen retourneren, in dit geval de gelijkenisscore
- Een functie om de payload te ontvangen, de afbeeldingen naar het juiste formaat te converteren en de Amazon Rekognition aan te roepen
compare_faces
API.
We implementeren Amazon API-gateway voor de REST API-functionaliteit en AWS Lambda voor de functie.
Het volgende diagram illustreert de oplossingsarchitectuur en workflow.
De workflow bevat de volgende stappen:
- De gebruiker uploadt het benodigde legitimatiebewijs en een selfie.
- De klant dient het identificatiedocument en de selfie in bij het REST-eindpunt.
- Het REST-eindpunt retourneert een overeenkomstscore naar de client.
- Een evaluatie gebeurt via bedrijfslogica in uw applicatie. Als de gelijkenisscore bijvoorbeeld lager is dan 80%, komt deze niet door de digitale identiteitscontrole; anders doorstaat het de digitale identiteitscontrole.
- De client stuurt de status naar de gebruiker.
Lambda-code
De Lambda-functie converteert de inkomende payload van base64 naar byte voor elke afbeelding en stuurt vervolgens de bron (selfie) en het doel (identificatie) naar de Amazon Rekognition compare_faces
API en retourneert de overeenkomstscore die is ontvangen in de hoofdtekst van het API-antwoord. Zie de volgende code:
Het project implementeren
Dit project is beschikbaar voor implementatie via: AWS-voorbeelden met de AWS Cloud-ontwikkelingskit (AWS CDK). U kunt de repository klonen en het volgende AWS CDK-proces gebruiken om te implementeren op uw AWS-account.
- Stel een gebruiker in die machtigingen heeft om de oplossingsbronnen programmatisch te implementeren via de AWS CDK.
- Stel de AWS-opdrachtregelinterface (AWS CLI). Raadpleeg voor instructies: Configureren van de AWS CLI.
- Als dit de eerste keer is dat u de AWS CDK gebruikt, voltooi dan de vereisten vermeld in: Werken met de AWS CDK in Python.
- Kloon het GitHub-repository.
- Creëer de virtuele omgeving. De opdracht die u gebruikt, is afhankelijk van uw besturingssysteem:
- Als u Windows gebruikt, voert u de volgende opdracht uit in uw terminalvenster vanuit de bron van de gekloonde repository:
- Als u Mac of Linux gebruikt, voert u de volgende opdracht uit in uw terminalvenster vanuit de bron van de gekloonde repository:
- Installeer na het activeren van de virtuele omgeving de standaard afhankelijkheden van de app:
- Nu de omgeving is ingesteld en aan de vereisten is voldaan, kunnen we de AWS CDK-implementatieopdracht geven om dit project op AWS te implementeren:
API-aanroepen doen
We moeten de payload in base64-indeling naar het REST-eindpunt sturen. We gebruiken een Python-bestand om de API-aanroep te doen, waarmee we de bron- en doelbestanden kunnen openen, ze naar base64 kunnen converteren en de payload naar de API Gateway kunnen sturen. Deze code is beschikbaar in de repository.
Merk op dat de SOURCE
en TARGET
bestandslocaties bevinden zich op uw lokale bestandssysteem en de URL is de API Gateway-URL die is gegenereerd tijdens het maken van het project.
Opruimen
We hebben de AWS CDK gebruikt om dit project te bouwen, zodat we ons project lokaal kunnen openen en de volgende AWS CDK-opdracht kunnen geven om de bronnen op te schonen:
Conclusie
Daar heb je het, het "ID + Selfie" ontwerppatroon met een eenvoudige API die je kunt integreren met je applicatie om digitale identiteitsverificatie uit te voeren. In de volgende post in onze serie breiden we dit patroon verder uit door tekst uit het identificatiedocument te extraheren en een verzameling gezichten te doorzoeken om duplicatie te voorkomen.
Kijk voor meer informatie op de Handleiding voor ontwikkelaars van Amazon-herkenning over het detecteren en analyseren van gezichten.
Over de auteurs
Mike Ames is een Principal Applied AI/ML Solutions Architect bij AWS. Hij helpt bedrijven machine learning en AI-diensten te gebruiken om fraude, verspilling en misbruik tegen te gaan. In zijn vrije tijd vind je hem mountainbiken, kickboksen of gitaar spelen in een metalband uit de jaren 90.
Noach Donaldson is Solutions Architect bij AWS en ondersteunt federale financiële organisaties. Hij is enthousiast over AI/ML-technologie die handmatige processen kan verminderen, klantervaringen kan verbeteren en interessante problemen kan helpen oplossen. Naast zijn werk brengt hij graag tijd door op het ijs met zijn zoon die hockey speelt, jaagt met zijn oudste dochter en hoepels schiet met zijn jongste dochter.
- AI
- ai kunst
- ai kunst generator
- je hebt een robot
- Amazon Rekognition
- kunstmatige intelligentie
- certificering van kunstmatige intelligentie
- kunstmatige intelligentie in het bankwezen
- kunstmatige intelligentie robot
- kunstmatige intelligentie robots
- kunstmatige intelligentiesoftware
- AWS-machine learning
- blockchain
- blockchain conferentie ai
- vindingrijk
- conversatie kunstmatige intelligentie
- crypto conferentie ai
- van dall
- diepgaand leren
- Fundamenteel (100)
- google ai
- machine learning
- Plato
- plato ai
- Plato gegevensintelligentie
- Plato-spel
- PlatoData
- platogamen
- schaal ai
- syntaxis
- zephyrnet