「SORACOM UG Online Handson #1 ~スマホで顔認証編~」に参加しました
久しぶりのSORACOM UG勉強会に参加しました。
目次
SORACOM Air メタデータサービス機能とは
ソラコム maxさん
メタデータサービスはシステム開発で役に立つサービス。
SORACOMでのメタデータは、SIMのメタ情報。
SIMそのものから見た時にいっこ外側の情報ということですね。
回線管理の自動化や設定情報の配布に使用できる。
タグとユーザーデータを取得できるうちのユーザーデータを使ってハンズオンをするそうです。
楽しみ♫
ハンズオン
手順はこちら、SORACOM回線を使ったスマートフォンとAWSサービスを用いた画像認識サービスを構築するです。
環境
私は、直接スマートフォンにSIMを差さずにSORACOM plan-DU SIMをSpeed Wi-Fi NEXT W05で使ってみるで設定したSpeed Wi-Fi NEXT W05ルーターをWiFiで使ってハンズオンしてみました。
ハンズオン本編
ソースコードはGithubIoTkyoto/soracom-ug-reko-handsonにあります。
Step1 Cloud9起動してCLI
東京リージョンで手順はt2.microでしたが、けちってt3.nanoのCloud9を起動しました。
CloudShellでもできるだろうという話でしたが、CloudShell向けの手順はまだ作ってないということでCloud9利用でした。
Githubからソースをcloneして、CLIのバージョン確認でStep1は完了です。
ちなみに本日時点でのCLIバージョンはaws-cli/1.18.223 Python/2.7.18 Linux/4.14.214-160.339.amzn2.x86_64 botocore/1.19.63でした。
Step2 S3バケットとRekognitionコレクションの作成
S3バケットをマネジメントコンソールで作成して、プロフィール写真を1枚アップロード。
そしてCLIからRekognitionのコレクションを作成しました。
そのコレクションにS3バケットにアップロードしたプロフィール写真をインデックスしました。
Rekognitionコレクションはじめて使いましたが、比較対象のマスタ画像として使うことができるのですね。
CompareFacesでは2つのオブジェクトを指定しますが、その方法よりもマスタ管理がすっきりできますし、何千枚も元となる画像に総当りしようとすると、ロジックがめちゃめちゃ大変になる
Step3 顔認証用のWeb API(Lambda+API Gateway)を作成
Lambdaが使用するIAMロールに次のようなインラインポリシーを追加するのですが、手順はアカウントがアスタリスクでした。
ですが、ここはRekognitionのコレクション指定なので、アカウントIDは指定しておいても大丈夫ですよね。
なので、指定しました。
|
1 2 3 4 5 6 7 8 9 10 11 |
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "rekognition:SearchFacesByImage", "Resource": "arn:aws:rekognition:ap-northeast-1:123456789012:collection/yamashita-collection" } ] } |
API Gatewayは使用量プランを使いますので、APIキー必須にしています。
Step4 SORACOMメタデータサービスを設定する
メタデータサービスの有効化はSIMグループに対して設定するのですね。
JSON形式のユーザーデータを登録しました。
JavaScriptアプリケーションで、SORACOMのメタデータにアクセスして先程のユーザーデータを取得しているのですね。
なるほど。
ここで理解できました。
こうすることで、SIMグループに設定した独自の情報(ユーザーデータ)をクライアントアプリケーションに個別に渡せるのですね。
こんなユーザーデータを設定しました。
|
1 2 3 4 5 |
{ "apiEndpoint": "https://xxxxxxx.execute-api.ap-northeast-1.amazonaws.com/prod/search", "apiKey": "xxxxxxxxxxxxxxxxxx" } |
このユーザーデータをこちらのコード
soracom-ug-reko-handson/webapp/src/components/SearchFacesSoracom.vueの、getSoracomMetadataで取得しています。
Step5 動作確認
S3で運営によって用意していただいているハンズオン用デモアプリにスマートフォンからアクセスします。
まずは、SORACOMのSIMではない回線で。
SORACOMメタデータが取得できないエラーになりました。
WiFiをSORACOMメタデータを設定したSIMがささっているWi-Fi NEXT W05に変更して画面更新したところ、ユーザーデータに設定した、APIエンドポイントとAPIキーが取得できています。
今の顔写真をアップロードしました。
二日酔いでぼさぼさです。
Rekognitionのコレクションに設定したのはこちらの宣材写真です。
メガネもしてませんし、いやあさわやかですね。
99.45%で一致しました。
すごいですね〜
まとめ
最後は記念写真です!
勉強会ってやっぱりいいですね。
質問や意見交換もできるし。
本編とは関係ないですが、今回のフロントエンドで使われてたVue.jsの勉強を始めたいなあと思ってて、相談したらこちらの本をおすすめいただきました。
さっそく購入したので、勉強開始するっす。
SORACOM-UG運営の皆さま、ありがとうございました!
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。
「AWS教科書 AWS認定デベロッパーアソシエイト テキスト&問題集 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
関連記事
-
-
Alexa Day 2018 で「金融機関向けAmazon Echo/Alexaへの取り組み事例紹介」を聞きました
Alexa Day 2018 で「金融機関向けAmazon Echo/Alexa …
-
-
ヤマムギ vol.9 (AWS)EC2からAWS CLIコマンドを実行してみようハンズオン 手順
このブログは2020/5/5に開催しました、「ヤマムギ vol.9 (AWS)E …
-
-
業を営む(To engage in business)
この記事は、クラウド営業 Advent Calendar 2018に参加した記事 …
-
-
DevLOVE関西 「サイボウズ開発の現場」に行ってきました
DevLOVE関西 「サイボウズ開発の現場」に行ってきました 所感 「KAIZE …
-
-
Developers Summit 2018「 IoTサービスを始める際に必要なこととは」を聞きました
以下は、思ったことや気になったことをメモしていますので、必ずしも登壇者の発表内容 …
-
-
「四国クラウドお遍路 2021 -コロナ後の地方創生-」に参加しました
徳島サテライト会場 今年の四国クラウドお遍路 2021 -コロナ後の地方創生-は …
-
-
「MonotaRo Tech #3 テスト自動化」に行ってきました
モノタロウさんの「MonotaRo Tech #3 テスト自動化」に行ってきまし …
-
-
Java SE 7 Silver 試験対策セミナーで模擬問題の解説をマークダウンでメモってみた
Java SE 7 Silver 試験対策セミナーに行って、模擬問題にチャレンジ …
-
-
AWS Summit 2016 Tokyoに参加してきました (Day3)
飛天3日目です。 JAWS-UGブースのすぐ前にあったこのお水がめちゃめちゃおい …
-
-
「GitLab Meetup Tokyo #7: 新年度応援&GitLab 11.0」にSNS & ブログ枠で参加しました
GitLabのミートアップがあるのか!さすが大東京! GitLabのもとユーザと …







