
Welcome to this course on Amazon Rekognition
Introduction to Deep Learning, Amazon Rekognition Service and Demo using the AWS Management Console
You will need an AWS free tier account, A computer with a Browser, Node.js and a Code Editor installed
Getting Started with Amazon Rekognition
Explains how the Detect Faces API locates faces in an image and returns facial landmarks, age range, gender, emotions, and attributes with confidence scores, via bucket upload or base64 input.
Explore how Amazon Rekognition analyzes facial demographics and sentiment in real time to deliver dynamic, targeted ads to store displays based on customer images.
Create a node.js lambda named fetchad to analyze customer images with Amazon Rekognition for demographic and emotion data, then publish targeted ads via SMS using API gateway and DynamoDB.
Learn how to create and deploy a RESTful API named advertisement with Amazon API Gateway, integrating it with a Lambda backend, configuring query parameters, mapping templates, CORS, and deployment stages.
Build a web page to upload a customer image to an S3 bucket and display resulting ad image via an API Gateway backed service, using Cognito unauthenticated identities for access.
Index faces into a collection, search for similar faces by image, and map results with external image IDs using Amazon Rekognition APIs in a family photo search workflow.
Create a lambda function named indexface that triggers on uploads to the face index bucket to index faces with Amazon Rekognition, creating Friends Family collection if needed and logging results.
Create and test HTML web client to upload an image to an Amazon S3 bucket, using Cognito identity pools for unauthenticated access; validate the upload with Lambda and CloudWatch logs.
Create another S3 bucket to act as an input repository in us east region, set a bucket policy allowing anonymous read and write from any domain, and save.
Create a lambda function that detects all faces, crops each, and searches a Rekognition collection, using async waterfall and parallel processing to overcome the largest-face limitation.
Set up and test a searchfaces lambda function in AWS, uploading a zip, configuring memory and timeouts, and validating results with images in S3 using Rekognition.
Expose a rest API named picture album with Amazon API Gateway integrated to a Lambda function, configure filename query parameter and body mapping templates, test, and deploy to Dev.
Enhance the web client to enable image searches by uploading a selected file to a face search bucket, then call the picture album API to retrieve and display matching results.
Use the enhanced web client to upload and index facial images, run searches against the collection, and review results and logs via CloudWatch and Lambda.
Introduce the compare faces api for live verification against reference badge images, returning a green or red status based on similarity scores for badge-based access control.
Create two S3 buckets for Amazon Rekognition development: face-badges and face-scan; set anonymous read and write policies, then upload sample and comparison images.
Create a verifyface lambda function to compare badge image in the face badges bucket with life scan image in the face scan bucket using a 90 percent similarity threshold.
Create an IAM role for a Lambda function with a custom policy, granting Rekognition compare faces API access, get object access to face and face badges buckets, create log streams.
Set up a Cognito identity pool, create a web client, and test verification by uploading an image that triggers a lambda call to compare with a reference.
Explore how the Detect Labels API detects objects, scenes, and concepts from images, with S3 or direct input, and index results in ElasticSearch for fast search.
Create an elasticsearch domain in the management console, select the latest 5.3 engine and smallest instance, enable open access, then review and create to obtain the endpoint for a lambda.
Walks through creating a lambda function that detects image labels with Rekognition and indexes them into Elasticsearch when images are uploaded to the travel history bucket.
Set up and test the index labels lambda function to run on uploads to the travel bucket, then index labels to the ElasticSearch travel domain and verify with CloudWatch logs.
Walk through creating the searchlabels lambda function to query an ElasticSearch domain, set up a project folder, paste index.js, configure the host endpoint, and log results to cloud watch.
Set up the searchlabels lambda function, configure test events, increase timeout to 30 seconds, and verify indexed labels return a match in logs; next, expose the function via API Gateway.
Expose a travel api with Amazon api gateway and connect it to a lambda function, configure request mapping and a search query string, enable cors, and deploy.
Build a web client to upload travel photos and search them using a travel API, wired with identity pool credentials and an API gateway, with index.html, cascading stylesheet, and JavaScript.
Learn to use the DetectModerationLabels API to detect explicit and suggestive content, understand the parent-child label hierarchy with confidence scores, and implement browser-based moderation via S3 or base64 input.
Enable unauthenticated access for amazon rekognition by configuring cognito identity pool and web client, then test moderation labels by converting images to binary and evaluating explicit nudity or suggestive content.
Explore how the RecognizeCelebrities API identifies famous individuals from an uploaded image, returning matched celebrity names, confidence scores, bounding boxes, landmarks, and optional links for more info.
Create a web client that lets users select an image, calls recognised celebrities api to detect faces, and displays each celebrity name in album list while testing with two images.
Amazon Rekognition is a sophisticated deep learning based service from Amazon Web Services (AWS) that makes it easy to add powerful visual search and discovery to your own applications. With Rekognition using simple APIs, you can quickly detect objects, scenes, faces, celebrities and inappropriate content within images. You can also search, analyze, organize and compare faces.
"I love how you structured the course (demo and code) and most importantly you showed how to use the technology. Most of the course that I've seen and taken lack the latter part." - Sovanna Chuon, Student
"It is exactly what I was looking for: a quick and clear introduction to AWS Rekognition." - Miguel Cabral, Student
"Buen curso, ritmo adecuado y entendible, tal vez falta entrar más en detalle en el código pero en general muy recomendable." - Eduardo Vargas Aguirre, Student
Are you a Developer looking to incorporate visual search and Image recognition capabilities to your own Applications using the recently launched Amazon Rekognition service from AWS? Are you an Architect or Tech Lead willing to explore reference Architectures and implementations on how Amazon Rekognition fits in with other AWS service offerings to solve Real-world problems? Either way, you are in the right place.
This course emphasize on learning by doing. You will be developing 6 complete end-to-end solutions with different capabilities of Amazon Rekognition. You will be developing the following projects:
Deliver Dynamic Targeted Advertisement Content
Intelligent Family Photo Search App
Face Based Authentication and Verification System
Travel Photo Smart Search App
Enhance the Travel Photo Smart Search App with Image Moderation
Celebrity Recognizer
In the process, you will also interact with and learn to use the following AWS services
S3
Lambda Function
API Gateway
DynamoDB
ElasticSearch
Cognito
SNS
CloudWatch
Identity and Access Management
***Important Update - ImageMagick Fix***
September 15, 2019
ImageMagick is no longer bundled with the Node.js 10.x runtime in Lambda due to security reasons. I have included a lecture with all the instructions to install and use a lambda layer to address this issue.