python使用opencv实现人脸检测

(蓝奏云链接附上:https://zyjblogs.lanzous.com/iFH4We2jdoh) 

先上图(打码):

部分代码如下:

import cv2
def detect(img,cascade):
    rects =cascade.detectMultiScale(img,scaleFactor=1.2,minNeighbors=3,flags=cv2.CASCADE_DO_CANNY_PRUNING)
    if len(rects) ==0:
        return []
    rects[:,2:] += rects[:,:2]
    return rects

capture = cv2.VideoCapture(0)

while(True):

    ret, frame = capture.read()
    # frame = cv2.imread("img/face.jpg")
    face_cascade = cv2.CascadeClassifier("haarcascade_frontalface_default.xml")
    # 所有人脸#获取
    faces = detect(frame, face_cascade)

    for (x, y, w, h) in faces:
        cv2.rectangle(frame, (x, y), (w, h), (255, 255, 255), 2)
    cv2.imshow("faces", frame)
    if cv2.waitKey(1) == ord('q'):
        break

猜你喜欢

转载自blog.csdn.net/qq_26018075/article/details/106978765