===== OpenCV3で顔認識 ===== せっかくOpenCV3をインストールしたので、お決まりの顔認識をやってみたい! xmlファイルのダウンロードのときに気をつける必要がある。 ==== 開発環境 ==== Windows 8.1\\ Anaconda 4.4.0 (64-bit)\\ Python 3.6 Python3.6へのOpenCV3のインストールについては、[[windowsにopencv3をインストール|こちら(WindowsにOpenCV3をインストール)]]をご覧ください。 ==== python3.5の場合の開発環境作成 ==== conda create -n py35 python=3.5 activate py35 conda install -c https://conda.anaconda.org/menpo opencv3 conda install jupyter numpy matplotlib jupyter notebook ==== 1.フォルダ構成 ==== 今回は、\\ C:/python/opencv/ フォルダ下に、\\ faces.jpg : 画像ファイル\\ haarcascade_frontalface_alt2.xml : OpenCV3顔検出用xmlファイル\\ を保存して、そのフォルダでipynbファイルを作成し、pythonスクリプトを入力します。 ==== 2.画像の用意 ==== 人の顔がうつっている写真を用意して保存する。今回は、https://www.photo-ac.com/から以下の画像をダウンロードして、faces.jpgという名前で保存した。 {{:pasted:20170811-233338.png}} {{:pasted:20170811-234329.png}} ==== 3.OpneCV-master.zipのダウンロード ==== 欲しいのは、https://github.com/opencv/opencv/tree/master/data/haarcascadesの中のxmlファイル群なのだが、ダウンロードに失敗するリスクがあるので、最初は、全部一度にZIPファイル(約83MBもありますが)をダウンロードするのが間違いないです。 https://github.com/opencv/opencv {{:pasted:20170811-233524.png}} ZIPファイルをダウンロードして解凍したら、opencv-master.zip > opencv-master > data > haarcascades の中の、「haarcascade_frontalface_alt2.xml」を、上記のfaces.jpgと同じフォルダにコピー。 {{:pasted:20170811-233800.png}} {{:pasted:20170811-233949.png}} コピーした後の状態 {{:pasted:20170811-233349.png}} ==== 4.顔認識スクリプトの実行 ==== Anaconda Promptからjupyter notebookを起動して、以下のスクリプトをコピペして、Shift+Enterで実行。 実行した結果は以下の通り。 {{:pasted:20170811-234628.png}} {{:pasted:20170811-234648.png}} ===== 参考 ===== https://github.com/hisafi/haarcascade_opencv\\ haar-like cascade detectorで顔認識\\ 大阪Pythonの会#04のハンズオン資料 http://shikouno.hatenablog.com/entry/2017/07/28/231123\\ 20170728 PythonでOpenCV|haar-like cascade分類器で顔認識 http://ai-coordinator.jp/opencv_face\\ 2017/6/6 大量の画像から顔の部分のみトリミングして保存する方法