python使用opencv2人脸识别

来源:互联网 发布:scala二维数组 编辑:程序博客网 时间:2024/06/06 08:33

import cv2

from PIL import Image, ImageDraw


def detectFaces(image_name):

img = cv2.imread(image_name)

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

face_cascade = cv2.CascadeClassifier("D:\Program Files\opencv\data\haarcascades\haarcascade_frontalface_default.xml")

faces = face_cascade.detectMultiScale(gray, 1.2, 5)

result = []

for (x,y,width,height) in faces:

result.append((x,y,x+width,y+height))

return result

def drawFaces(image_name,output):

faces = detectFaces(image_name)

im = Image.open(image_name)

if faces:

draw = ImageDraw.Draw(im)

for f in faces:

draw.rectangle(f,outline = (255,0,255))

im.save(output,'JPEG',quality = 100)

cv2.imshow('hello',output)

cv2.waitKey(0)

return "detected face"

else:

return "no face"

if __name__ == '__main__':

label = drawFaces('pic.jpg','output.jpg')

print label

0 0
原创粉丝点击