顔で個人を判定(簡易版)
2022.11.07
■経緯
顔でして個人を特定してログインするプロトを作ってみたい。
イメージとしてはiPhoneのfaceID。
例えば従業員の顔データを登録しておき、ドアの前で顔認証を行いロックを解除する。
■調査
普通の2次元の顔写真データが対象であれば既にライブラリが多々ある。
いずれも画像データをベクトル化し、内積やコサイン類似度を使って似てる度合を算出する。
閾値を設けてOK・NGを判定、というような方式。
閾値の設定で、判定を厳しくしたり緩くしたり調整する。
iPhoneのfaceIDのような奥行き付きデータ(RGB-Dデータ)を対象としたライブラリは自作する必要がありそう。
RGB-Dデータを学習させてモデルを作って、内積から類似度判定というロジックは流用できると思う。
■試しに使ってみたライブラリ
facenet
https://github.com/davidsandberg/facenet
■facenet所感
2次元画像での簡易判定であれば充分使える。
WebカメラとPCを接続して個人判定くらいでよければ、開発コストも抑えられる。
ただ本格的にやるのであればデプスカメラ(3Dカメラ)を使って奥行きデータまで使って判定する必要がある。
そうしないとマスクの有無、眼鏡の有無、双子の違い等が正確に判定できない。
デプスカメラは高価だし、奥行きデータまで使って精度の高いモデルを作るにもは開発コストは結構かかると思う。
最新記事
- APIサービスをどう作るか
- C++による組込みプログラミング
- CUDAでGPUプログラミング
- BERTでチャットボット
- 脆弱性チェックツール
- Flutterでデスクトップアプリ
- MMPoseを使って姿勢推定(骨格検知)
- Laravel Livewire3を使ってみる
- Lineミニアプリ
- RustとPHPのパフォーマンス比較
- ボクシングをモーションキャプチャー
- Virtualbox上のUbuntuにDocker環境を作れ・・・
- AWSでのIPv6対応
- AWSのRDSでブルー/グリーンデプロイ
- 20年ぶりにCOBOL
- フィッシングメールのソースを見る
- GCPのVertex AIの注意点
- Azure AZ-900 に合格
- 数年ぶりにRubyを触る
- Godotはunityの代わりになるのか?