シコウノキロクスマートフォン用の表示で見るシコウノキロクアラサー男が自由を手に入れるまでの思考と試行の記録。Pythonでお手軽顔検出|Dlibのface_recognitionでCNNとHOG+SVM2017-10-01Pythonでお手軽顔検出|Dlibのface_recognitionでCNNとHOG+SVMPython・Web人の顔を用いたディープラーニングのデータセットを用意するための準備です。ディープラーニングの勉強をするためにデータセットを作る必要がありますが、用意が面倒!opencvのhaarlikecascadeは誤検出多いしな...アイドル顔認識業界の大御所であるすぎゃーん神のサイトを舐め回すように参考にさせてもらっているのですが、氏でもデータセットを用意するための顔検出は苦労しているようです。ぎゃーんメモもっと楽に顔画像のデータセットを楽に用意できないかなー。ネットサーフィンしていたところ、Dlibのface_recognitionのver1.0がリリースされていて良さげ。いうことで、face_recognitionを簡単に説明して性能を堪能します。cascadeも含めて検出率と速度を比較!shikouno.hatenablog.comこまけーことはいいんだよ!って方はgithubに飛べば幸せになれるんやで。速度まとめDlibのface_recognition機械学習のライブラリといえばscikit-learnが有名ですが、Dlibも中々イケてるようですね。googleトレンドを見ても同じくらい検索されています。トレンド調べた限り、顔検出や顔認識をサクッと使う場合はDlibの方が良さそう。Dlibにもscikit-learnでも見たことあるような図がありますね。お互い意識しているのかな。Qiita今回紹介するface_recognitionを用いると、Dlibの顔関係モデルのサクッと感をさらに向上させることができます。はまってしまいましたが、過去記事を参照してもらえれば解決するはず。hisafi/compare_face_detectorこのDlibのface_recognition、学習済みのCNNとHOG+SVMを用いることができます。face_recognitionの使い方たった3行!インポートして、画像読み込んで、モデルで顔検出!face_locationsのデフォルトモデルはHOG+SVMですが、model引数にcnnを指定してあげるとCNNでの顔検出となります。rightのタプルです。複数検出される場合はタプルのタプル。cascadeと併せて比較しています。用いたコードは以下のとおり。img_result結果は以下の通り。cascadeが緑、HOG+SVMが赤、CNNが青となっています。cascadeはメガネや顔の傾きがあると不検出。HOG+SVMは顔の輪郭が異なる場合は不検出。速度jupyterのマジックコマンドを使って比較しました。hisafi/compare_face_detectorコードは以下の通り。sGPUを使っていないためCNNは結構処理が遅くて、他と10倍以上の差がありますね。つらいな...まとめデータセットを作る場合、Dlibのface_recognitionの検出率がかなり高いので用いると楽できそう。検出率重視ならCNN、速度重視ならHOG+SVM。顔の検出範囲が異なるためどちらが良いのかは要検証。今回も画像は師匠が作成したサイトからお借りしました。cascade分類器で顔認識デジカメなどに搭載されている顔認識。(3)スポンサードリンクはてなブログをはじめよう!shikounoさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。