1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| import cv2
face = cv2.CascadeClassifier("./haarcascades/haarcascade_frontalface_default.xml") eye = cv2.CascadeClassifier("./haarcascades/haarcascade_eye.xml") img = cv2.imread("./photo.jpg")
faceRects = face.detectMultiScale( img, scaleFactor=1.1, minNeighbors=5, minSize=(100, 100), maxSize=(200, 200) ) eyeRects = eye.detectMultiScale( img, scaleFactor=1.1, minNeighbors=5, minSize=(25, 25), maxSize=(200, 200) ) print(faceRects, type(faceRects)) print(eyeRects, type(eyeRects)) cv2.rectangle(img, (0, 0), (140, 40), (0, 255, 255), -1)
cv2.putText(img, "Finding " + str(len(faceRects)) + " face", (3, 15), cv2.FONT_HERSHEY_COMPLEX, 0.5, (255, 0, 0), 1) cv2.putText(img, "Finding " + str(len(eyeRects)) + " eye", (3, 30), cv2.FONT_HERSHEY_COMPLEX, 0.5, (255, 0, 0), 1)
for x, y, w, h in faceRects: cv2.rectangle(img, (x, y), (x + w, y + h), (0, 0, 255), 1) for x, y, w, h in eyeRects: cv2.rectangle(img, (x, y), (x + w, y + h), (0, 0, 255), 1) cv2.imshow("image", img) cv2.waitKey() cv2.destroyAllWindows()
|