# 1.导入库
import cv2 as cv
import dlib
import matplotlib.pyplot as plt
# 2.显示图片
def show_img(img,title):
#通道顺序转换
img_BGR = img[:,:,::-1]
# plt.title(title)
plt.imshow(img_BGR)
plt.axis('off')
# 3.绘制人脸矩形
def plot_rectangle(img, faces):
for face in faces:
cv.rectangle(img, (face.left(),face.top()),(face.right(),face.bottom()),
(255, 0, 0), 3)
return img
def main():
# 4.读取图片
img = cv.imread('D:\pycharm\pythonProject1'
'\opencv_study\image and video/family.jpg')
# 5.灰度转换
gray_image = cv.cvtColor(img, cv.COLOR_BGR2GRAY)
# 6.调用dlib库中的检测器
dlib_classifier = dlib.get_frontal_face_detector() # detector:检测器
detector_result = dlib_classifier(gray_image,1)
# 7.给检测出的人脸绘制矩形框
resulte = plot_rectangle(img.copy(),detector_result)
# 8.创建画布
plt.figure(figsize=(9, 6))
plt.suptitle("Face detection with dlib", fontsize=14, fontweight="bold")
# 9.显示整个检测效果
show_img(resulte, "Face detection with dlib",)
plt.show()
if __name__ == '__main__':
main()
基于dlib进行人脸识别
最新推荐文章于 2024-04-13 14:17:21 发布