DeepLens 顔認識、顔認証のサンプルの動作確認
皆さん、こんにちは、こんばんわ。
His First Japan 合同会社 代表社員の字引淳です。
週末3日かけてDeeoLensのサンプルアプリを動作確認しました。
Deeplensのサンプルアプリを調べだしたのが2週間くらい前。
このサンプル(https://github.com/medcv/OneEyeFaceDetection)に行きついて、どうやればいいかを調べだして、1週間。
このサンプルのイシュー(https://github.com/medcv/OneEyeFaceDetection/issues/1)を見て、一筋縄ではいかないことを確信し、動作確認を決意するまでに4日。
ソースをデプロイしてトライアンドエラーをして、方法を考察しながら、3日。
ソースの読み込みをして、何をしているのかを知るところから始めた。
見る限り大したことをしていないことがわかるので、1日で行けると読んで、動作確認を開始。
Pythonのライブラリの依存関係に苦しめられ、何回も、Deeplensをごみ箱に投げ込みたい衝動をこらえて、デプロイ回数35回。
まぁ、少ないほう。
仕事じゃ、200回とかデプロイして動作確認することがあるんでね。
最初は、AWS Lamdaの設定方法も良くわからない、モデルは何を使えばいいのかなどのサンプルのReadMeに書いてないことを考察し、導き出すことに時間がかかりました。
そういう時は、難しく考えるのではなく、シンプルに考えればいい。
叩けば出る埃のようにエラーが出る。
会社の仕事のほうが、様々な人の作るコードがあるので、もっと大変だよね。
でも、このサンプルのエンジニアのPythonコードは、Javaっぽいから読みやすいし、そもそも、動作することは確認されているものだからね。
ようやく、画面に表示したときは、「やったー!」と、声を上げてしまいました。
このサンプルでは、99.3%の精度があるそうです。
息子と娘にカメラをのぞかせたところ、僕と認識されていました。
嫁にカメラをのぞかせたところ、unknownと表示されていたので安心しました。
遺伝で特徴をとらえている場合は、誤認識される可能性があるということがわかりました。
そういえば、昔、ヒカルゲンジのメンバーの子供が「99%他人」だというようなことがワイドショーを賑わせていたことがありましたね。
これで写してみれば、きっと「99%」の確率で真実が見えるでしょうね。
とはいえ、なんだかんだで、動作してくれてよかった。
いい勉強になりました。
あとがき
あと、これをAWSのWebコンソールで確認していると、画面が高い頻度で固まる。
数分経って、また動き出す。を繰り返す。
なんか、メモリ管理がうまくいってないような感じがする。
これを掘り下げるかどうかは、今は決めないけど、IOTエンジニアとしては、見ておきたいところですね。