opencv でファイルの中の画像認識して、それに番号をふって保存したいです。
どのようなプログラムを書けば良いのでしょうか
発生している問題・エラーメッセージ
imwrite で保存する際に、face1.jpg face2.jpg face3.jpgの様にface番号という形で保存したい
該当のソースコード
python
ソースコード
import cv2
import numpy as np
import glob
CASCADE_PASS = '/usr/share/opencv/haarcascades/haarcascade_frontal_face_alt2.xml'
face_cascade = cv2.CascadeClassifier(CASCADE_PASS)
files = glob.glob("/home/pi/workspace/photo/*.jpg")
for fname in files:
bgr = cv2.imread(fname, cv2.IMREAD_COLOR)
gray = cv2.cvtColor(bgr, cv2.COLOR_BGR2GRAY)
face_rects = face_cascade.detectMultiScale(gray, 1.1, 2)
if len(face_rects) > 0:
for (x,y,w,h) in face_rects:
cv2.rectangle(bgr, (x,y), (x+w,y+h), (255,0,0), 3)
cv2.imwrite("face.jpg", image)
break
else: cv2.imwrite("no.jpg", image)
回答1件
あなたの回答
tips
プレビュー