Book Image

Computer Vision on AWS

By : Lauren Mullennex, Nate Bachmeier, Jay Rao
Book Image

Computer Vision on AWS

By: Lauren Mullennex, Nate Bachmeier, Jay Rao

Overview of this book

Computer vision (CV) is a field of artificial intelligence that helps transform visual data into actionable insights to solve a wide range of business challenges. This book provides prescriptive guidance to anyone looking to learn how to approach CV problems for quickly building and deploying production-ready models. You’ll begin by exploring the applications of CV and the features of Amazon Rekognition and Amazon Lookout for Vision. The book will then walk you through real-world use cases such as identity verification, real-time video analysis, content moderation, and detecting manufacturing defects that’ll enable you to understand how to implement AWS AI/ML services. As you make progress, you'll also use Amazon SageMaker for data annotation, training, and deploying CV models. In the concluding chapters, you'll work with practical code examples, and discover best practices and design principles for scaling, reducing cost, improving the security posture, and mitigating bias of CV workloads. By the end of this AWS book, you'll be able to accelerate your business outcomes by building and implementing CV into your production environments with the help of AWS AI/ML services.
Table of Contents (21 chapters)
1
Part 1: Introduction to CV on AWS and Amazon Rekognition
5
Part 2: Applying CV to Real-World Use Cases
9
Part 3: CV at the edge
12
Part 4: Building CV Solutions with Amazon SageMaker
15
Part 5: Best Practices for Production-Ready CV Workloads

Implementing the solution

You probably noticed that multiple user flows, such as Check Image Quality, contain the same tasks. We can encapsulate that logic into Python functions (or AWS Lambda functions) to avoid code duplication.

Checking image quality

The first step in every user journey is to confirm that the photograph is usable. For our use case, this means the photo contains one person, and they’re looking at the camera.

The DetectFaces API assesses an image and returns the 100 more prominent faces. You’ll receive high confidence scores for frontal faces and notice performance degradations with photos from obscure angles.

Like other Amazon Rekognition APIs, you must specify either a base64-encoded image or a location within an Amazon S3 bucket:

import boto3
region_name = 'us-east-2'
bucket_name = 'ch04-hotel-use2'
image_name = 'images/Nate-Bachmeier.png'
rekognition = boto3.client('rekognition',region_name...