ヤマムギ

growing hard days.

*

Amazon Rekognitionでイベント参加者の顔写真を解析して似ている人ランキングをその場で作る

      2017/10/19

2017/9/21に開催されたAWS Cloud Roadshow 2017 大阪のナイトイベント「JAWS-UG in AWS Cloud Roadshow 2017 大阪」の一部の企画として、当日お越しいただいた参加者の顔写真と、事前に設定している6人の有名人の写真との顔比較を行って、一番似ている人に豪華景品、という催し物をしました。

前日までに準備しておけばよかったのですが、前日まで夜な夜なパーティーが続いていたため、当日の朝に1時間半で準備しました。

結論は、Amazon Rekognitionを使えば、こんなことも1時間半で実現出来てしまうんだと、感動とそしてかなりほっとしました。

構成はこちらです。

Amazon AthenaとQuickSightは15分程度で出来ました。

Lambda Function

ソースコードはこちらです。

ランタイムはPython 3.6です。

Rekognitionクライアントをboto3.clientで作ります。

compare_facesで比較します。

SourceImageとTargetImageを比較します。

両方ともS3にJPGとPNG形式で画像があるので、バケット名とキーを指定します。

SimilarityThresholdで最低の敷居値を指定します。
今回は類似値0.1%とかも全部拾って欲しいので0を指定しました。

responseのFaceMatchesにSimilarityという値があるので、それ拾って別のS3バケットへJSONで格納します。

S3に格納した後はAthenaでクエリー発行してテーブル構造にしてQuickSihtで可視化します。

Athenaでテーブルを作ったときのQuery

GUIから設定してクエリーを生成することが出来ます。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , , , , ,

  関連記事

AWS Lambda KMSを使って環境変数を暗号化、復号化する(Python)

Lambda内で外部APIを使用する場合などをユースケースとして、環境変数をKM …

EC2 VyOSで/etc/resolv.confを設定しました

EC2でVyOSを起動してSSHで接続して確認していたところ、どうもVyOSから …

ChatGPT APIをTeamsボットから使いました(AWS Lambda(Python) + API Gateway)

ChatGPT APIが有償で利用可能になったので、会社のTeamsボットに実装 …

Amazon Aurora Serverless 課金確認

Amazon Aurora Serverlessを使い始めてみましたの記事で書い …

EC2:RunInstances APIにリクエストしてEC2インスタンスを起動(署名バージョン4、Postman)

AWSのAPIリクエストってHTTPでもよかったですよね?って思って、確認のため …

AWSセルフマネージドAD環境にリモートデスクトップで接続

AWSクイックスタートのActive Directory Domain Serv …

Cloud9でCodeWhispererを使用する

アクセス権限 Cloud9のEC2に設定するIAMロールのIAMポリシーで co …

CloudFrontからのバーチャルホストなサイトのテストってどうしてます?

このブログの構成です。 AWSで構築しています。 4つのサイトを1つのEC2で配 …

Amazon Connectのパスワードどころかユーザー名も忘れたのでEmergency accessした

長い間放置していたAmazon Connect環境にアクセスしようとしたところ、 …

AWS Code Commitをプライベートリポジトリとして使う

GitHubでもいいんですが、アクセスキーとかパスワードとかコンフィグ系で書いて …