私的AI研究会 > FaceRec1

顔認証/顔認識 (Face recognition)†

 実用的なAI開発に向けて「顔認証/顔認識 (Face recognition)」システム検討する。
 「PyTorch ではじめる AI開発 6」で保留となっている項目についても再度検証してみる。

※ 最終更新:2024/01/16 

顔認証とは†


● あらかじめ登録された人物の画像に対し「顔検出」→「特徴点検出」→「顔照合」の手順で顔認証を行う。
 画像引用 →「顔認証とは」

● 参考 → 「顔認証 (Face recognition) 概要」

顔認識/顔認証の例†

  1. 画像から顔を検出して切り出し、顔画像として保存する
    ・顔の検出結果から顔領域を切り抜く
    ・ランドマークの位置が一定になるようにアフィン変換
    ・目・鼻・口の位置が一定になるように正規化(どの顔も同じ大きさ)し 顔画像をファイルに保存
  2. 顔画像から特徴を抽出、特徴辞書として保存する
    ・あらかじめ読み込んでおいた正規化された顔画像から特徴を抽出
    ・抽出した特徴をファイルやデータベースなどに辞書として保存

  3. 入力画像から顔を検出し特徴を抽出、特徴辞書と比較して顔認識する
    ・顔を検出し 正規化して特徴を抽出
    ・辞書に含まれる特徴と比較する
    ・例えばコサイン距離を利用した場合 値は同じ人物では大きく、別の人物では小さくなる
     閾値以上かつスコアが最も高いものを選ぶ

 引用サイト → https://qiita.com/UnaNancyOwen/items/8c65a976b0da2a558f06

プロジェクトの準備†

InsightFace†

 InsightFace は、オープンソースの2D&3D深層顔解析ツールボックス。
 InsightFace を使えば、顔の配置(目・鼻・口などの配置)まで認識できる。

InsightFace のインストール†

ONNX Runtime†

InsightFace のテスト†

InsightFace でカメラ入力をテスト†

Face Recognition†

 dlib を使った Python の顔認識ライブラリ Face Recognition を使って、顔認証を試す。

パッケージ(dlib/face_recognition) のインストール†

「face recognition」パッケージのテスト†

テスト画像の準備†

用意したテスト画像でのテスト†

カメラによるリアルタイム顔判定†

更新履歴†

 

参考資料†