OpenCV3で顔認識
開発環境
Windows8.1
Python 3.6.1
Anaconda 4.4.0 (64-bit)
Tensorflow 1.2.1
Keras 2.0.6
よくある顔認識!やってみる。
(参考)
http://blog.mudatobunka.org/entry/2016/10/03/014520
(0)認識用の画像のダウンロード
などから、人の顔がうつった画像をダウンロードして、faces.jpgという名前で保存。
(1)OpenCV3をインストール
以下にしたがってインストール。(Python 3.5の方が楽)
(2)評価器のダウンロード
顔検出用のxmlファイル群をダウンロード
https://github.com/opencv/opencv/tree/master/data/haarcascades
今回は、以下の6個のxmlファイルをダウンロードした。
ファイル構成は以下の通り。
(3)jupyter notebookの起動と、コードをコピペして実行。
http://blog.mudatobunka.org/entry/2016/10/03/014520
2016-10-03
Python+OpenCV で顔検出 – OpenCV に付属の評価器を試す
上記サイト様のコードをコピペさせていただきました。以下のコードを、コピペ。
テスト
どうしても、xmlファイルが読み込めない。
Python 3.6はあきらめて、Python 3.5 環境でやってみる。
(4)
http://qiita.com/yoppe/items/38005f415a5b8b884c7d
conda info -e
$ pip install environment_kernels
$ jupyter notebook --generate-config
以下のGiyhubから丸ごとダウンロード。ありがたい!
https://github.com/hisafi/haarcascade_opencv
同じ環境で、自分で、
https://github.com/opencv/opencv/tree/master/data/haarcascades
からダウンロードしたxmlファイルを用いて同じコードでやってみる。
error: (-215) !empty() in function cv::CascadeClassifier::detectMultiScale
というエラーだが、今まで5時間くらいがちゃがちゃやってみて、おそらく、これは、xmlファイルが読み込めていないエラーと思われた。
ということは、xmlファイルのダウンロードに失敗している可能性が考えられる。
xmlファイルというものを知らなかったのであるが、<!DOCTYPE html>では、htmlファイルであろう。
Githubからxmlファイルをダウンロードするときに、haarcascade_frontalface_alt2.xml などのxmlファイルを、右クリック>名前を付けてリンク先を保存。。。 として保存してしまっていたのだが、これでは、リンク先のGithubのhtmlファイルが保存されてしまっていた。それで、xmlファイルがちゃんと保存されていなかったために、
cascade_path = “haarcascade_frontalface_alt2.xml"
のところでいつも失敗していたのであった。python3.5とか3.6とか関係なかった。。。
xmlファイルをダウンロードする場合は、GituhubのOpencvの一番上のリンクに行って、
Clone or Download > ZIPファイルで全部ダウンロードするか、
https://github.com/opencv/opencv
ダウンロードしたいxmlファイルをクリックして、リンク先の内容をテキストでコピーして、自分のパソコン上にxmlファイルを作成して、そこにコピペするか、「Raw」を押してから、それを保存する必要がある。いや、Rawでもダメだった。コピペする必要がある。でも、やっぱり、かなりややこしいので、
「GituhubのOpencvの一番上のリンクに行って、
Clone or Download > ZIPファイルで全部ダウンロード」
が一番間違いがないと思われる。約83MBあるけれど、、、
https://github.com/opencv/opencv/blob/master/data/haarcascades/haarcascade_frontalface_alt2.xml
これで、コピペして、haarcascade_frontalface_alt2.xml を保存。
うまくいった。
python3.6 でやってみる
できた。pythonのバージョンの問題ではなく、xmlファイルを正しくダウンロードできていないのが問題であった。これに気付くのに5時間くらいかかった。。。(´・ω・`)
ディスカッション
コメント一覧
まだ、コメントがありません