hands-on lab

Automate Image Labeling with Amazon Rekognition

Up to 1h
Get guided in a real environmentPractice with a step-by-step scenario in a real, provisioned environment.
Learn and validateUse validations to check your solutions every step of the way.
See resultsTrack your knowledge and monitor your progress.


Amazon Rekognition allows you to detect objects and scene details from images. It provides a stateless and secure API that simply returns a list of related labels, with a certain confidence level.

In this hands-on lab, you will build a serverless system that runs object detection when images are uploaded to an Amazon S3 bucket. You will use AWS Lambda for the processing logic and you will use Amazon DynamoDB to store the results of the label detection.

Learning Objectives

Upon completion of this beginner-level lab, you will be able to:

  • Create an Amazon S3 bucket
  • Create an AWS Lambda function
  • Configure an AWS Lambda function to trigger on an upload to Amazon S3
  • Implement image label detection using Amazon Rekognition and Python

Intended Audience

  • Cloud Engineers
  • Data Engineers


Knowledge of the following will be beneficial but is not required:

  • Amazon S3
  • AWS Lambda
  • Amazon Rekognition
  • Python

The following courses can be used to fulfill the prerequisites:


February 21st, 2024 - Resolved an issue with the S3 trigger and the provided sample images

July 3rd, 2023 - Updated instructions and screenshots to reflect the latest UI

March 11th, 2021 - Updated AWS Lambda lab steps to reflect latest user interface updates

January 22nd, 2021 - Updated AWS Lambda lab steps to reflect latest user interface updates

December 8th, 2020 - Updated all instructions and screenshots to address issues with the UI being outdated

February 21st, 2020 - Updated instructions to clarify the need to use the provided code and the detect labels API for the lab to function correctly

January 10th, 2019 - Added a validation Lab Step to check the work you perform in the Lab

About the author

Learning paths

Andrew is a Labs Developer with previous experience in the Internet Service Provider, Audio Streaming, and CryptoCurrency industries. He has also been a DevOps Engineer and enjoys working with CI/CD and Kubernetes.

He holds multiple AWS certifications including Solutions Architect Associate and Professional.

Covered topics

Lab steps

Logging In to the Amazon Web Services Console
Object Detection Context and Limitations
Creating an Amazon S3 Bucket
Creating an AWS Lambda Function with an Amazon S3 trigger
Implementing the Object Detection Logic
Testing the Labelling System with New Images