人脸识别-多张人脸检测

目录

写在前面 

具体程序 

得到结果:


写在前面 

人脸识别-Haar级联_am_student的博客-CSDN博客

在进行单张检测之后,在实际应用中往往是不仅仅是一个人出现在图片中。

同样的方法,利用面部识别加载特征数据。

我们找来了一张含多人面部的图片进行显示测试:

人脸识别-多张人脸检测_第1张图片

具体程序 

import cv2 as cv
def face_detect_demo():
    #将图片灰度
    gray=cv.cvtColor(img,cv.COLOR_BGR2GRAY)
    #加载特征数据
    face_detector = cv.CascadeClassifier(
        'C:/Users/ZXY13/Desktop/opencv/sources/data/haarcascades/haarcascade_frontalface_default.xml')
    faces = face_detector.detectMultiScale(gray)
    for x,y,w,h in faces:
        print(x,y,w,h)
        cv.rectangle(img,(x,y),(x+w,y+h),color=(0,0,255),thickness=2)
        cv.circle(img,center=(x+w//2,y+h//2),radius=w//2,color=(0,255,0),thickness=2)#计算圆的位置
    #显示图片
    cv.imshow('result',img)

#加载图片
img=cv.imread('face3.jpg')
#调用人脸检测方法
face_detect_demo()
cv.waitKey(0)
cv.destroyAllWindows()

得到结果:

人脸识别-多张人脸检测_第2张图片

 可以看出来的是,存在一定的误差,在后续应用中还需改进。

你可能感兴趣的:(机器学习,计算机视觉,opencv,python)