当前位置:   article > 正文

14.5 实例96 Python 人脸检测

14.5 实例96 Python 人脸检测

人脸检测是人脸识别的第一步,也就是能够在图像上或视频中找到人脸。本节编程实例实现的功能是从图片中找到并标注人脸。

14.5.1 准备工作

   本节利用 Dlib 库 进行人脸检测,因为 Dlib 包含已训练好的人脸识别模型,而且 Dlib 接口文档非常详细,安装非常简单。安装 Dlib 需要先安装 cmake 和 boost ,命令如下所示。

pip install cmake

pip install boost

提示:cmake 版本要与boost版本相匹配,否则会出现编译错误。

安装 Dlib 时要注意版本号与Python 版本号相对应,Python3.6版本与 Dlib 19.8.1版本兼容,根据 Python 版本选择相应版本的 Dlib ,安装 Dlib命令如下所示。

pip install dlib==19.8.1

  skimage 库的全称是 scikit-image,它提示了很多的图像处理功能,在本节编程实例中还要用到 scikit-image 库操作图像文件, skimage 安装命令如下所示。

pip install -U scikit-image

提示:用 pip install scikit-image 安装会出错,如上所示加上-U 参数安装,成功率会高一些。

14.5.2 人脸检测程序

Dlib 库对人脸识别的相关功能进行了封装,对于人脸的检测可以应用 Dlib 正面人脸检测器进行识别,本节编程实例的主要功能是从图片中找出人脸并标注出来。样例代码如下所示。

  1. from skimage import io
  2. import dlib
  3. def faceDetetor() :
  4. facedetector = dlib.get_frontal_face_detector()
  5. img = io.imread("test1.jpg")
  6. vwin=dlib.image_window()
  7. vwin.clear_overlay()
  8. vwin.set_image(img)
  9. dets = facedetector(img,1)
  10. vwin.add_overlay(dets)
  11. print("供检测出人脸数:{}张".format(len(dets)))
  12. for k,d in enumerate(dets):
  13. print("第{}张脸矩形坐标:左:{} 上:{} 右:{} 下:{}".format(k+1,d.left(),d.top(),d.right(),d.bottom()))
  14. dlib.hit_enter_to_continue()
  15. faceDetetor()

14.5.2 测试结果-(稍后更新)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/爱喝兽奶帝天荒/article/detail/906778
推荐阅读
相关标签
  

闽ICP备14008679号