寄稿しました。
もくじ
環境
- Python2系
- WinPython-64bit-2.7.10.3
- OpenCV3.1.0
Detectfaces_img.py
# -*- coding: utf-8 -*- import numpy as np import cv2 import datetime def main(): # 動画取り込み capture = cv2.VideoCapture(0) # 顔判定辞書ファイル読み込み face_cascade = cv2.CascadeClassifier("./data/haarcascades/haarcascade_frontalface_default.xml") while(1): ret, frame = capture.read() if not ret: print 'Could not capture frame' exit() # 顔検出の実行 face = face_cascade.detectMultiScale(frame , 1.1 , 3) # 短形を描く for (x , y , width , height) in face : # 画像を保存 now=datetime.datetime.now() filename=(now.strftime("%Y%m%d-%M%H%S.png")) cv2.imwrite("./output/" + filename, frame) # 描画 cv2.rectangle(描画する画像, 短径の1つの頂点, 反対側にある頂点, const Scalar& 色, 太さ) cv2.rectangle(frame, (x, y) , (x + width, y + height) , (166, 236, 147) ,2) # 表示させます cv2.imshow("Camera Image", frame) # キーを押すとループを止めて破棄します。ウィンドウを終了させます。 ※break重要 if cv2.waitKey(10) > 0 : capture.release() cv2.destroyAllWindows() break # キャプチャのリリース capture.release() # ウィンドウの破棄 cv2.destroyAllWindows() if __name__ == '__main__': main()