Architecture Overview - Auto Check-In App

Architecture Overview

Deploying this solution builds the following environment in the AWS Cloud.

        Auto Check-In App architecture diagram

Figure 1: Auto Check-In App architecture

The AWS CloudFormation template deploys an Amazon API Gateway, an Amazon Cognito user pool, AWS Lambda functions, Amazon DynamoDB tables, Amazon Rekognition, Amazon CloudWatch, and an Amazon Simple Storage Service (Amazon S3) bucket.

When an attendee registers for your event, they can upload a photo which is stored in an Amazon S3 bucket. The upload to Amazon S3 triggers a Lambda function that calls the Amazon Rekognition IndexFaces API. Amazon Rekognition extracts facial features into a feature vector and creates a face_id. Then, the vector is stored in a face collection, and the face_id and corresponding user name are stored in a DynamoDB table.

At the event, an operator uses the solution’s Python-based UI and a camera to take a picture of the attendee, crop the photo, and send the photo to Amazon API Gateway which triggers a Lambda function that calls the Amazon Rekognition SearchFacesByImage API. Amazon Rekognition extracts the facial features from the image into a feature vector and compares the vector to the vectors in the face collection. When Amazon Rekognition finds a face with high similarity, the face_id is used to retrieve the user name. The user name is sent to the operator’s laptop showing that the attendee has been authenticated.