目の検出器(haarcascade_eye.xml)はLib/site-packages/cv2/data/にある。
サンプルコード
import cv2
# .xmlはLib/site-packages/cv2/data/にある
face_cascade = cv2.CascadeClassifier(
'haarcascade_frontalface_default.xml')
eye_cascade = cv2.CascadeClassifier(
'haarcascade_eye.xml')
img = cv2.imread("Lenna.png")
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
faces = face_cascade.detectMultiScale(gray)
for x, y, w, h in faces:
# cv2.rectangle(img, (x, y), (x+w, y+h), (0, 0, 255), 1)
face_color = img[y:y+h, x:x+w]
face_gray = gray[y:y+h, x:x+w]
eyes = eye_cascade.detectMultiScale(face_gray)
for (ex, ey, ew, eh) in eyes:
cv2.rectangle(face_color, (ex, ey), (ex+ew, ey+eh), (0, 255, 0), 1)
cv2.imshow("result", img)
cv2.waitKey(0)
cv2.destroyAllWindows()