0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

AWS Rekognitionで簡単に顔認証ができた

Posted at

AWS Rekognitionは画像分析が簡単にできるサービスです。
今回はCliを利用して顔認証をしていきます。

コレクションを作成

まずは顔の情報を保存するためのコレクションを作成します。

$ aws rekognition create-collection  --collection-id "Face"
CollectionArn: aws:rekognition:ap-northeast-1:000000000:collection/Face
FaceModelVersion: '5.0'
StatusCode: 200

コレクションへ顔を登録

作成したコレクションに顔画像を登録します。
画像はS3にあげてから、それを指定して登録します。
external-image-idを画像に写っている人の名前とかにすると認識時にわかりやすくなります。

$ aws rekognition index-faces \
       --image '{"S3Object":{"Bucket":"hogehoge-bucket","Name":"hogehoge.jpg"}}' \
       --collection-id "Face" \
       --max-faces 1 \
       --quality-filter "AUTO" \
       --detection-attributes "ALL" \
       --external-image-id "kaotesuto"

コレクションに登録されたか確認します。

 $ aws rekognition list-faces --collection-id "Face"
FaceModelVersion: '5.0'
Faces:
・・・・・・・
 ExternalImageId: kaotesuto

コレクションの画像と比較

コレクションに登録された画像の中に、同じ人の顔があるか検索します。
CLIですとこちらもS3の画像を指定する必要があります。
S3を経由したくない場合はAWS SDKを利用してPHPなどから画像を直接AWS Rekognitionへ送ることが可能です。

$ aws rekognition search-faces-by-image \
     --image '{"S3Object":{"Bucket":"hogehoge-bucket","Name":"hogehoge.jpg"}}' \
     --collection-id "Face"
FaceMatches:
- Face:
    BoundingBox:
      Height: 0.5754799842834473
      Left: 0.31725001335144043
      Top: 0.16239699721336365
      Width: 0.4426969885826111
    Confidence: 99.98900604248047
    ExternalImageId: kaotesuto
  Similarity: 100.0

今回は同じ画像を使ったのでSimilarityが100で完全一致しました。
試して見る際は別の写真などを試してみてください!

まとめ

コレクションを作って登録するだけで簡単に顔認証が可能になります。
表情が変わっていてもかなりの精度で認識をしてくれます。
これを使って顔認証システムなど作るのも面白いと思います!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?