ヤマムギ

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から設定してクエリーを生成することが出来ます。


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

【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

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

【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。

 - AWS , , , , ,

ad

ad

  関連記事

Amazon Linux2(EC2)にEC-CUBE 4をインストール

こちらのHOMEお知らせ・コラムAmazon Linux2にEC-CUBE4.0 …

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

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

CloudWatch LogsメトリクスフィルタでNginxのaccess_logから転送バイト数をモニタリングする

ユーザーガイドのApache ログからのフィールドの抽出を見てて、これ、Ngin …

「関西AWSスタートアップ勉強会」に行ってきました

第2回 関西スタートアップAWS勉強会に行ってきました。 akippa 拠点数コ …

[事前準備] JAWS-UG 関西IoT専門支部「マクニカkibo + AWS IoTハンズオン」

来る12/19(土)の JAWS-UG 関西IoT専門支部第一回勉強会「マクニカ …

EC2 Instance Connect向けのセキュリティグループのソースにプレフィックスリストを

EC2 Instance Connect、便利ですね。 キーペア不要で、EC2イ …

AWS Transit Gatewayピアリング接続確認

AWS Transit Gatewayのピアリング接続を使用して、異なるリージョ …

AWS ControlTowerで既存アカウントをまとめて追加

AWS Organizationsに新たに招待したアカウントをAWS Contr …

AWS CodeBuildのチュートリアルをやってみました

こちらユーザーガイドの最初の方にあるチュートリアルです。 コンソールを使用した …

AWS Transfer Family EFS向けのSFTP対応サーバー

EFSファイルシステムは作成済です。 AWS Transfer Family S …