使用opencv-python实现人脸识别

简洁的代码完成人脸识别,本文用到的人脸识别分类器在opencv-python的安装目录下可以找到,文件名haarcascade_frontalface_alt2.xml
上代码

import cv2
def getFaceIDimg(img):
    cv2.namedWindow('1')
    num = 0
    frame = cv2.imread(img)
    gray = cv2.cvtColor(frame,cv2.COLOR_RGB2GRAY)#灰度化,如果此行出现问题可使用cv2.imread(img,0)直接以灰度化读取
    cv2.imshow('1',frame)
    #加载分类器
    classifier = cv2.CascadeClassifier('123.xml')
    判断图片中人脸数量
    faces = classifier.detectMultiScale(gray,scaleFactor=1.2,minNeighbors=1,minSize=(32,32))
    for face in faces:
        x,y,w,h, = face
        image = frame[y:y+h,x:x+w]
        #注意!此处采用绝对路径
        cv2.imwrite('C:/Users/SLH/Desktop/data/{}.jpg'.format(num),image)
        num+=1
    cv2.waitKey(10)
    cv2.destroyAllWindows()
if __name__ == '__main__':
    getFaceIDimg('zb2.jpg')

OK,这样我们就能识别照片中的人脸啦。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值