之前写过一篇关于实现人脸识别的文章,里面用到的技术是通过调用百度 API 实现的,本次将借助于 dlib 程序包实现人脸区域检测、特征点提取等功能,
dlib 封装了许多优秀的机器学习算法, 可实现人脸识别、检测、识别,视频目标追逐等功能,是由由 C++开发的一个开源程序库,目前也提供了 Python 接口,可供我们直接调用。
1,dilb 安装
dlib 程序包的安装方式也是用 pip 来进行安装的,但不同于其它程序包的是,在输入
pip install dlib
之前,需要安装 Cmake 程序包,该工具主要是对 dlib 进行编译,安装命令与其他包类似
pip install Cmake
2,实现人脸识别
利用 dlib 实现人脸识别功能时,先定义一个检测器和一个 图片预览窗口:
detector = dlib.get_frontal_face_detector()
win = win = dlib.image_window()
之后利用 load_rgb_image() 函数读取图像:
img = dlib.load_rgb_image(f)
接下来进行核心功能人脸检测的实现,这里需要借助于上面定义得到的检测器
dets,score,idx = detector.run(img,1,-1)
img 就是我们读取后的图像,第二个参数 1 代表的是图片上采样倍数,值越大,最终识别得到