人脸识别,识别精度不高
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)
运行结果图:
原图
每个人脸都能识别
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)
通过框选的值设定阈值,设置越小检测框越多