raspberry piを利用した顔の表情分析と感情を認識するシステム構築

43
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Hyunmin Kim AWSKRUG リリリリ / Megazone SA Raspberry Pi ををををををををををををを をををををををををををを

Upload: hyunmin-kim

Post on 12-Apr-2017

219 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Hyunmin Kim

AWSKRUG リーダー / Megazone SA

Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

Page 2: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

自己紹介Hyunmin Kim (金鉉敏 , キム・ヒョンミン , 34 )MEGAZONEAWS Solutions ArchitectAWSKRUG カンバム支部 リーダーiOS デベロッパ、 Node.js 開発AWS 大好き!好きなサービス : EC2, S3, Route53, Lambda

Page 3: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

日本旅行が大好き

Page 4: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

会社紹介

Page 5: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

会社紹介2012 韓国内初 AWSパートナーとしてサービス開始

韓国内初 & 最大 AWS Premier Consulting Partner

400 +お客様にサービスを提供

20+ グローバル No.1 ソリューション提供

韓国内唯一 AWS 認定 韓国語 サポートセンター運用韓国内初 AWS Enterprise Support 提供24 / 7 / 365 サポートサービス提供

Page 6: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

このプロジェクトを始めたきっかけAWSKRUG Gangnam 支部の オ・フェグンさんがこの楽しい内容でプレゼンテーションをしてもらいました。

オ・フェグン (harry Oh)YOGIYO  韓国2位配達 APPBackend DeveloperCloud BI Solution, Network Camera,Standalone DVR, Web based Surveillance System

Page 7: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

システムの構成

オさんのラズパイ( 手持ち可能 )

開発中のラズパイカメラ

Page 8: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

開発手順• 写真を定期的にとって S3 へアップロード• 性別、年齢、感情(スマイル)統計• AWS の Serverless サービス利用• CLI 利用• カメラは安いもの(笑)• セキュリティは後で。。。(ㅠㅠ)

Page 9: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

構成• AWS サービスは S3, Lambda,

StepFunctions, RDS 利用• 顔分析は

Amazon Rekognition,MS Face APIFace Plus Plus API 利用

• Ploy.ly を利用したリャート生成

Page 10: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

開発環境• Python 2.7 (virutalenv)• pip• emulambda (lambda Simumator)• AWS CLI• statelint (StepFunctions JSON validator)• ラズパイと WIFI 接続

Page 11: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

S3 Bucket作成• US-WEST-2 OREGON region

jawsdaysfaces bucket 生成• Lifecycle を 1 日に設定• すべての利用者が接続できるように設定注意!サービスで利用する場合

signed url などを利用する

Page 12: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

ラズパイ• 事前準備• WiFi 接続• USB WebCam 接続• fswebcam インストール、設定• AWS CLI インストール、設定• イメージを S3 へ転送確認

Page 13: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

IAM 設定• Lambda 実行権限を持つ

jawsdaysfaces-role 追加• Jawsdaysfaces bucket に policy 追加• 該当 policy を jawsdaysfaces-role に追加• Rekognition, StepFunction policy も追加

AmazonRekognitionFullAccessAWSStepFunctionsFullAccess

Page 14: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

RDS 構築• RDS インスタンス構築• Security Group から Inbound をすべてを許可• RDS の Public アクセスは危険!

Lambda が RDS へ接続するためには同じ VPC を利用する。でも、Lambda が外部と通信するためNAT Gateway が必要

• 開発用のみ利用する• 構築が完了したら endpoint を確認

Page 15: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

TABLE 作成

Page 16: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

Amazon Rekognition

• SDK サポート• IAM Policy で設定• Free Tier 利用可能• EU (Ireland)

US East (N. Virginia)US West (Oregon)

Page 17: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

MICROSOFT FACE API

• Microsoft face api からAPI Key を作成

• 作成した API Key を別途保存• 30,000/ 月 無料

Page 18: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

FACE Plus Plus

• Face Plus Plus console から API Key 作成• 作成した API Key を別途保存• 無料ですが制限がある

Page 19: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

Step Functions

Page 20: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

Step Functions JSON

Page 21: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

テンプレート参照

Page 22: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

Statelint

Page 23: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

顔イメージではない場合

Page 24: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

顔イメージの場合

Page 25: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

Detect Labels (写真分析 )

• Amazon Rekognition に detect_labels API 呼び出し

• Label 名が Human, People, Person と Confidence 値が95 以上の場合顔写真で判別

Page 26: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

JAWS-UG LOGOテスト

Page 27: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

写真テスト

Page 28: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

isFacePhoto

• isFaces の結果による分岐• 顔写真ではない場合

NoFacesPhoto へ• 顔写真の場合 API を並列処理

Page 29: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

顔分析 APIを並列処理Amazon Rekognition, MS Face API, Face Plus Plus の顔分析 API を呼びたし , 分析結果を保存

Page 30: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

サービスごとの結果の違い

Page 31: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

Face Data Process

• Face API から収集した結果からデータを加工する。

Page 32: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

Update Database

• 加工したデータを RDS に保存

Page 33: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

Database確認

Page 34: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

統計 SQL作成年齢と Smile平均

年齢別統計

性別統計

Page 35: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

でも、結果は下記のように。。。

Page 36: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

Plot.lyを利用し、チャートを作成

Page 37: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

作成されたチャート

*^^*

ㅜㅜ

Page 38: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

年齢別統計チャート

Page 39: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

性別チャート

Page 40: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

性別チャート

誰 ?

Page 41: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

性別チャート最近人気ドラマ主人公

Page 42: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

結論- カンナム支部のみんなでラズパイハンズするのは楽しい!- Amazon Rekognition, MS Face API, Face Plus PlusAPI を利用すると低費用でイメージ分析が可能!- StepFunctions と Lambda はよく動作する!- 改善すること ( セキュリティーなど。。。 )

- カンナム支部で改善し、 AWS Summit Seoul 2017 で発表予定

Page 43: Raspberry Piを利用した顔の表情分析と感情を認識するシステム構築

© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

ありがとうございます!発表資料:

http://bit.ly/hyunmin-jawsdays2017