dlib人脸识别的精度问题

问题遇到的现象和发生背景

人脸识别,识别精度不高

问题相关代码,请勿粘贴截图
import dlib
from skimage import io
from skimage.draw import polygon_perimeter

detector = dlib.get_frontal_face_detector()
sample_image = io.imread('test.jpg')
faces = detector(sample_image, 1)

for d in faces:
    rr, cc = polygon_perimeter([d.top(), d.top(), d.bottom(), d.bottom()], [d.right(), d.left(), d.left(), d.right()])
    sample_image[rr, cc] = (0, 255, 0)
io.imsave('result.jpg', sample_image)
运行结果及报错内容

运行结果图:

img

原图

img

我想要达到的结果

每个人脸都能识别

import dlib
from skimage import io
from skimage.draw import polygon_perimeter

detector = dlib.get_frontal_face_detector()
sample_image = io.imread('test.jpg')
faces, scores, idx = detector.run(sample_image, 1, -0.2)
for d in faces:
    rr, cc = polygon_perimeter([d.top(), d.top(), d.bottom(), d.bottom()],
                               [d.right(), d.left(), d.left(), d.right()])
    sample_image[rr, cc] = (0, 255, 0)
io.imsave('result.jpg', sample_image)

通过框选的值设定阈值,设置越小检测框越多

img


设置为-0.2可以满足你的需求

img