2. 강연 중 질문하는 방법
자신이 질문한 내역이 표시되며,
전체 공개로 답변된 내용은 검은색,
질문자 본인에게만 공개로 답변된
내용은 붉은 색으로 돌아옵니다.
본 컨텐츠는 고객의 편의를 위해 AWS 서비스 설명을 위해 온라인 세미나용으로 별도로 제작, 제공된 것입니다. 만약
AWS 사이트와 컨텐츠 상에서 차이나 불일치가 있을 경우, AWS 사이트(aws.amazon.com)가 우선합니다. 또한 AWS
사이트 상에서 한글 번역문과 영어 원문에 차이나 불일치가 있을 경우(번역의 지체로 인한 경우 등 포함), 영어 원문이
우선합니다.
AWS는 본 컨텐츠에 포함되거나 컨텐츠를 통하여 고객에게 제공된 일체의 정보, 콘텐츠, 자료, 제품(소프트웨어 포함) 또는 서비스를 이용함으로 인하여 발생하는
여하한 종류의 손해에 대하여 어떠한 책임도 지지 아니하며, 이는 직접 손해, 간접 손해, 부수적 손해, 징벌적 손해 및 결과적 손해를 포함하되 이에 한정되지
아니합니다.
고지 사항(Disclaimer)
3. 본 세션의 주요 주제
• 인공지능 등록대와 안면 기반 사용자 확인 사례
• 컴퓨터 비전의 중요성
• Rekognition과 적절한 실시간 이미지 분석 방법 선택하기
• 인공지능 키오스크 프로젝트 설계하기
• 인공지능 키오스크 프로젝트 구축해보기
10. Amazon S3 이미지 데이터량 증가 추이
“There are 3,700,000,000 internet users in 2017
1,200,000,000,000 photos will be taken in 2017” (9% YoY Growth)
Source: InfoTrends Worldwide
활용가능한 이미지의 폭발적인 성장 추세
11. Also Universal, Ubiquitous, and essential
Media and
entertainment
Public safety
2021년이면 하루에
859PB의 데이터 생성
주문형 비디오를 보는
사용자는 2021년
세계적으로 2억명에
이름
2018년까지 미국에서만
4천 5백만 가구가
스마트 홈 시스템 사용
Smart home
비디오 또한 가파르게 성장해왔습니다.
12. 다양한 컴퓨터 비전의 활용 영역
거의 모든 사업군에서 이미지의 활용은 중요하지만,
이미지와 비디오를 지능적으로 분석하는 컴퓨터 비전을 위해서는
딥러닝과 이를 활용하는 개발환경 구성 등 다양한 요소가 필요합니다.
13. FRAMEWORKS AND INTERFACES
AW S D E E P L E AR N I N G API
Apache MXNet TensorFlowCaffe2 Torch KerasCNTK PyTorch GluonTheano
PLATFORM SERVICES
V I S I O N L A N G U A G E
A P P L I C A T I O N S E R V I C E S
Amazon
Rekognition
Amazon Polly Amazon Lex
Amazon
Rekognition Video
Amazon Transcribe Amazon Translate Amazon Comprehend
Alexa for Business
V R / I R Amazon Sumerian
Amazon Kinesis
Video Streams
AWS 머신러닝 스택과 컴퓨터 비전
Amazon SageMaker AWS DeepLens
15. 다양한 실시간 이미지 분석 방법
• 간단한 실시간 이미지 분석 예제
• Amazon Rekognition Image
• 디바이스에서 직접 분석하는 방법
• AWS Greengrass ML Inference
• AWS DeepLens
• 실시간 영상 활용 방법
• Amazon Kinesis Video Streams
• Amazon Rekognition Video
• Sagemaker 등을 활용한 DIY 모델 활용
자세한 내용은 “AWS 기반의 영상 실시간 분석 솔루션 알아보기” 강연을 참고하세요
16. 다양한 실시간 이미지 분석 방법
대표 서비스 특징
클라이언트
지원 플랫폼
이미지 분석
서비스 활용
Amazon Rekognition
Image
• 프레임 단위 혹은 원하는 시점에 이미지 분석을 수행
-> 비용 조절 가능
• 딥러닝 모델 학습 불필요
• API 형태로 바로 이용 -> 개발이 가장 단순
- Javascript 포함
가장 다양한 언어 지원
디바이스에서
직접 분석
AWS Greengrass ML
Inference
AWS DeepLens
• Local에서 추론이 일어나므로 빠른 응답이 가능하며,
오프라인 상태에서도 분석 가능
• 디바이스는 상대적으로 높은 처리능력이 요구됨
- DeepLens
Python 2.7
비디오 분석
서비스 활용
Amazon Kinesis Video
Stream (수집)
Amazon Rekognition
Video (분석)
• 이미지 기반으로 할 수 없는 분석
(eg, 사람 추적, 행동 추적) 가능
• 상대적으로 높고 안정적인 네트워크 대역을 요구
- Kinesis Video
Stream (Producer)
C++, Java, Android
Amazon Rekognition Image를 활용하면 클라이언트 플랫폼의 제약으로 부터 자유로운 웹
기반의 컴퓨터 비전 어플리케이션을 손쉽게 구성할 수 있습니다.
22. 얼굴 인식 응용
§ 가족 사진 공유 서비스 : 각 가족 구성원 얼굴 인식
구분
§ 엔터테인먼트 및 언론사 : 특정인, 유명인 사진을
여러 뉴스와 기사들에서 취합하여 데이터화하여
서비스 구현
§ 캠퍼스 및 사무 공간 : 특정 공간이나 회사 등에
허가 받은 사람 출입
§ 공공 안전 : 용의자 추적 자동화
24. 프로젝트 소개
• 개요
• Rekognition을 활용한 실시간 얼굴 인식 웹 애플리케이션 구성
• 인공지능 키오스크는 시나리오 2번에 프린트 기능만 추가하여 제작
• 목적
• Amazon Rekognition와 관리형 서비스를 활용하여 사물 인식, 안면 인식 등 대표적인
컴퓨터 비전 주제를 활용한 웹 애플리케이션 작성
• 이 실습을 통해 사용자 확인이나 감정 분석 등 다양한 유스케이스로 확장 가능한 실시간
안면 인식 기능을 빠르고 간편하게 구현할 수 있습니다.
• 세부 시나리오
• 데모 1 : 객체 인식 데모
• 데모 2 : 실시간 얼굴인식 데모
25. 프로젝트 소개
• Related AWS Services
• Rekognition
• S3 (Storage, Web Hosting)
• DynamoDB
• Cognito
• Required Environment
• Laptop with webcam
• Firefox browser(HTTPS 미사용 시 웹캠 접근을 위해)
• AWS CLI, Git Client
• Related Technology
• AngularJS
• No Server-side logic
26. Amazon Rekognition
활용되는 API
객체 및 장면 인식 얼굴 분석 얼굴 비교 얼굴 인식 유명인사 인식 이미지 조정
부적절한 컨텐츠 필터링
데모 1 데모 2 데모 1데모 2
indexFaces
SearchFacesbyImage
detectFacesdetectLabels DetectModerationLabels
27. Demo #1 시나리오 : 객체 인식
객체 인식. 사물, 장소, 인물 등에서
라벨을 추출합니다.
객체 및 장면 인식
객체 인식을 통한 성인 컨텐츠
식별합니다.
이미지 조정
• Rekognition API를 위한 이미지
제공은 직접 Byte 데이터를
전달하거나 S3 상의
이미지(jpg/png)를 지원합니다.
• 웹 호스팅용 S3와 별개로
Rekognition Endpoint와 동일
리전을 사용해야합니다.
S3 상에 이미지 저장
28. Demo #1 Architecture Diagram
• Rekognition API를 위한 이미지
제공은 직접 Byte 데이터를
전달하거나 S3 상의
이미지(jpg/png)를 지원합니다.
• 웹 호스팅용 S3와 별개로
Rekognition Endpoint와 동일
리전을 사용해야합니다.
S3 상에 이미지 저장
• Rekognition API 사용, S3 Upload 등을
위한 권한을 제공합니다.(2번)
• 이 데모에서는 별도의 인증 절차를
제공하지 않고, 인증 되지 않은 사용자
(unAuth) Role에 해당 권한을
부여합니다.
Cognito
2
3
4
1
29. Demo #1 Code : 객체 인식
• detectLabels
• 객체 인식 : 사물, 장소, 인물 등에서 라벨을 추출합니다.
• 파라미터
• Image : S3Object or Byte Data
• MaxLabels : 검색되는 최대 라벨 수
• MinConfidence : 최소 신뢰도 점수
30. Demo #2 시나리오 : 얼굴 인식
detectFaces API를 통해 얼굴을 검출하고,
제공하는 여러가지 특징(성별,나이대,
랜드마크 등 ) 중 감정 정보를 보여줍니다.
얼굴 인식 (감정 분석)
• indexFaces API를 통해 이미지상의 얼굴을
Face Collection에 등록합니다.
• Face Collection을 이용해도 얼굴의
메타정보만이 저장될 뿐 이미지는 저장되지
않습니다.
• 얼굴과 매칭되는 이름, 사진을 보관하기 위해,
S3, DynamoDB를 활용합니다.
얼굴 등록
• searchFacesByImage API를 통해
유사한 얼굴을 찾은 후 DynamoDB
상에서 해당 Face Id와 함께 등록된
사용자 정보를 보여줍니다.
얼굴 검색
31. Demo #2 Architecture Diagram
• indexFaces API를 통해 이미지상의 얼굴을
Face Collection에 등록합니다.(3번)
• Face Collection을 이용해도 얼굴의
메타정보만이 저장될 뿐 이미지는 저장되지
않습니다.
• 얼굴과 매칭되는 이름, 사진을 보관하기 위해,
S3(4번), DynamoDB(5번)를 활용합니다.
얼굴 등록
• Rekognition API 사용, DynamoDB 접속,
S3 Upload 등을 위한 권한을
제공합니다(2번).
• 이 데모에서는 별도의 인증 절차를 제공하지
않고, 인증 되지 않은 사용자 (unAuth)
Role에 해당 권한을 부여합니다.
Cognito
32. Demo #2 Code : 얼굴 분석
• detectFaces
• 얼굴을 검출하고, 제공하는 여러가지 특징(성별,나이대, 랜드마크 등 ) 중 감정 정보를 보여줍니다.
• 파라미터
• Image : Byte Data
• Attributes : 분석될 특징 항목
페이지 로딩시 web cam 초기화 : video element에 재생
프레임마다 video로 부터
Byte 형태의 이미지 생성
34. 프로젝트 소개
• 소스코드 (Github)
• https://github.com/junghee-kang/rekognition-demo
• 구성 가이드
• http://bit.ly/2pjEQAv
• 소요 시간
• 30분 (배포 20분, 시연 10분)
• 세부 시나리오
• 데모 1 : 객체 인식 데모
• 데모 2 : 실시간 얼굴인식 데모
35. 배포 절차
1. Git Repository 복제
git clone https://git-codecommit.ap-northeast-2.amazonaws.com/v1/repos/rekognition-demo
2. CloudFormation 스택 생성 3. Application 수정 및 배포
…중략
region: 'us-east-1',
upload_bucket_name: 'demogo-s3upload-xxxxxxxx',
identity_pool_id: 'us-east-1:xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxxxxxx',
face_collection :'rekognition-demo-go',
ddb_table:'rekognition-demo-go'
포함되어 있는 CloudFormation 템플릿
파일(cfn_template.json)을 통해 스택 생성
- CloudFormation으로 생성된 Output을 바탕으로
Application 환경 파일(js/config.js)을 수정합니다
- 수정된 Application을 s3 배포합니다.
aws s3 cp . s3://webhosting_url --recursive --acl public-read
36. 배포 절차
4. 실시간 얼굴인식을 위한 Face collection 생성
Application 환경 파일(js/config.js)의 face_collection과 동일하게 생성
$ aws rekognition create-collection --collection-id rekognition-demo-go --region us-east-1
5. 구축 완료 및 실습!
Firefox 브라우저에서 S3 web hosting endpoint로 접속