python人脸识别学习记录,调用摄像头,识别人脸

import cv2

def viedoFace():
    # 调用本地摄像头 0允许被调用
    video =cv2.VideoCapture(0)
    faceData = cv2.CascadeClassifier("haarcascade_frontalface_alt.xml")
    i=1
    while(True):
        flag,videoImg=video.read()
        # 使用人脸数据特征包,对比摄像头中的人脸
        faces=faceData.detectMultiScale(videoImg)
        # 镜像 1水平翻转 -1 垂直+水平翻转 0垂直翻转

        for x, y, w, h in faces:
            cv2.rectangle(videoImg, pt1=(x, y), pt2=(x + w, y + h), color=[0, 0, 255], thickness=2)
        # 判断对象是否为元组类型
        if not isinstance(faces,tuple):
            facePhot=videoImg[y:y+h,x:x+w]
            cv2.imwrite("faceImg/per1/%s.jpg"%i,facePhot)
            i+=1
        videoImg = cv2.flip(videoImg, 1)
        videoImg = cv2.resize(videoImg, None, fx=0.8, fy=0.8)
        cv2.imshow("hh",videoImg)
        index=cv2.waitKey(1000//24)

        if index==32:
            print("窗口即将关闭")
            break
        # print(videoImg)

    cv2.destroyAllWindows()

if __name__ == '__main__':
    viedoFace()

猜你喜欢

转载自blog.csdn.net/weixin_42835381/article/details/108735647