Feb
15
2018
opencv 人脸识别
# coding:utf-8 import sys import cv2 clicked = False def onMouse(event, x, y, flags, param): global clicked if event == cv2.EVENT_LBUTTONUP: clicked = True cv2.namedWindow('FindFaces') cv2.setMouseCallback('FindFaces', onMouse) # 待检测的图片路径 imagepath = r'./510089245799447657.jpg' # 获取训练好的人脸的参数数据,这里直接从GitHub上使用默认值 face_cascade = cv2.CascadeClassifier(r'./haarcascade_frontalface_default.xml') # 读取图片 image = cv2.imread(imagepath) gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY) # 探测图片中的人脸 faces = face_cascade.detectMultiScale( gray, scaleFactor = 1.15, minNeighbors = 5, minSize = (5,5), flags = cv2.CASCADE_SCALE_IMAGE ) print ("发现{0}个人脸!".format(len(faces))) print('Click window or press any key to Exit.') for(x,y,w,h) in faces: cv2.rectangle(image,(x,y),(x+w,y+w),(0,255,0),2) cv2.imshow("FindFaces",image) while True: if cv2.waitKey(1) == -1 and clicked: cv2.destroyAllWindows() break
最活跃的读者