dlib.get_frontal_face_datector()人脸位置检测

lib.get_frontal_face_datector(PythonFunction,in Classes)

in Classes 表示采样(upsample)次数,次数越多获取的人脸越多,但更容易框错。

返回值是,矩形的坐标,每个矩形为一个人脸。

可以通过函数的left,right,top,bottom方法分别获取对应的值

import dlib
import cv2

 # cv2读取图片
img = cv2.imread("image.jpg")

# 灰度处理
gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

# 使用dlib自带的frontal_face_detector作为人脸检测器
detector = dlib.get_frontal_face_detector() 

# 使用detector进行人脸检测 dets为返回的结果
dets = detector(gray_img, 1)

# 使用enumerate 函数遍历序列中的元素以及它们的下标,下标i为人脸序号
# left:人脸左边距离图片左边界的距离 ;right:人脸右边距离图片左边界的距离;top:人脸上边距离图片上边界的距离 ;bottom:人脸下边距离图片上边界的距离
for i, d in enumerate(dets):
    print("dets{}".format(d))
    print("Detection {}: Left: {} Top: {} Right: {} Bottom: {}".format(
        i, d.left(), d.top(), d.right(), d.bottom()))

你可能感兴趣的:(人脸识别,python)