認証速度 0.19 秒の「AI顔認証」 Face01

IoT NEWS ロゴ

IoT NEWS の 2020年3月24日の記事
認証速度0.3秒、精度99%の、AI顔認証入退室管理ソリューション」というタイトルでソフトバンク子会社の日本コンピュータビジョン株式会社様(以下JCV)の企業紹介がありました。

IoT NEWS より引用
IoT NEWS より引用

そこで現在リリースしている Face01 がどの程度の認証速度があるか、またその認証速度を計測することにしました。

認証速度を計測する

一枚のフレームから個人を特定するまでの認証速度は以下のように計測しました。

import time

time1 = time.time()
# 内部処理
time2 = time.time()
elapsed_time = time2 - time1

フレーム上に四角形と名前を表示し、さらに標準出力画面に出力するまでを「内部処理」としました。

顔認証描画ウィンドウと標準出力された計測時間
顔認証描画ウィンドウと標準出力された計測時間

経過時間を 100 サンプルとり、これらの平均値と標準偏差を計算しました。
平均値の計算式は
=ROUND(AVERAGE(A1:A100), 2)
標準偏差の計算式は
=ROUND(STDEV.P(A1:A100), 2)
としました。

計算結果

CUDA 環境下で 2500 サンプルを取り測定し直したところ、
平均処理時間 0.19 秒
標準偏差 0.07
となりました。
この時の 1 フレームあたりのビデオ解像度は 984 x 554 です。

平均処理時間計算結果
平均処理時間計算結果

処理時間についてのまとめ

両者の計算機リソースを同一化していない時点で、計測時間の「比較」は無意味です。
Face01 は一般家庭用 PC しか使っておりませんので Face01 のスピードは専用環境によって今よりずっと早くなります。

実際の顔認証スピード検証動画

数字だけでは分かりにくいので Face01 の認証スピードを実感できるデモ動画を用意しました。

認証精度を比較する

そもそも「精度」とは?

「精度99%」という言葉は広告として使うぶんには良いですが、現実的には意味が通りません。なぜなら弊社ブログの「本人拒否率と他人受入率の改善」でご紹介したように認証には下のような相関関係があるからです。

FAR と FRR の相関図
FAR と FRR の相関図

「精度」が仮に「顔の類似度」の事であれば、上の図に明らかなように限りなく「FAR (他人受入率)」が上がってしまいます。

「精度 99% 」のまとめ

「精度 99%」には「なんかすごそう」というイメージがあります。
ただ実際には「交差ポイント ( EER )」をどれだけ下げられるか、がポイントになります。本人拒否率が低くかつ他人受入率が低い状態が好ましいのです。
強い顔認証の場合はこれを非常に低いレベルまで落とし込みます。
弱い顔認証の場合は人間の認知率より精度の良いところでコストとのバランスを取りながら設定します。
こちらの解説記事「顔認証システムの選び方」で詳しく説明しております。
この解説記事を読んでいただければ、改めて顔認証システムの選び方、求めている性能は何なのかがおのずと見えてくると思います。

弊社の「Face01 シリーズ」は弱い顔認証を採用しています。
非常にコストパフォマンスがよく、正確性も非常に高く、マスク着用でも顔認証ができます
御社の顔認証システムの SDK として、是非ご活用ください。

Face01 linux 1.0.4 の動作検証動画

Follow me!