百度大脑人脸识别深度验证与思考(一)之环境搭建
环境
win7 32位
VisualStudio2017
python3.6.3
opencv3.3.1
pyQt5.9
baidu-AIP 1.6.9.0
特别声明
所有图片均来自网络公开,无意冒犯,如觉不适,立即删除。
前言:
在opencv3.3.0 中给出的人脸探测基于分类器进行识别,在例程中可以检测出人脸和人眼,参见:
https://docs.opencv.org/master/d7/d8b/tutorial_py_face_detection.html
利用opencv3.3.0中的分类器进行动态人脸检测追踪的例子很多,我在前期的博客中也有很多描述,可参考代码学习,不再赘述。
这些简单的例子中仅能检测到人脸,对于人脸中的关键点都没有给出,在github上:
https://github.com/ageitgey/face_recognition
给出了一个开源项目利用dlib库实现人脸关键点检测和动态身份辨识,已经做得足够惊艳了。
百度大脑
百度大脑开放了自己的人脸检测及其他功能的人脸识别模块,并且在11月23日宣布永久免费,百度好样的,必须赞一个!
从官方文档中知道,百度的人脸识别可以给出如下一些主要的参数:
- 年龄
- 性别
- 颜值
- 表情
- 眼镜
- 人种
这已经足够令人惊艳和称奇了。我们知道,人脸识别必须基于海量的图像学习才能得到较高的辨识度和准确率,要投入实用,就必须接受千姿百态各色人等各种场合下的各种挑战,为了验证百度人脸识别是否真如广告说的那般神奇,本博客将花大篇幅对真实的百度人脸识别进行深度验证,以判断其是否真的可用。
工具准备
联想E49笔记本,win7 32 位(古老的本子了)
移动300M光纤家庭宽带,小米路由(后期要在线即时检测)
pyhton3.6.3
opencv3.3.1
pyqt5.9
pycharm(2017.2)(后几篇博文已经移至VisualStudio2017)
baidu-aip V1.6.8.0
(百度人脸识别的版本原为V1.6.6.0,是2017年7月27日上线的,新版本为V1.6.9.0,是2017年11月底才上线的,本博客的前几篇使用老版本验证的,后面的博客将用新版本验证,两个版本之间还是有差异的,颜值普遍提高了。)
上述软件都是当前的最新版本,我编制了一个集成验证脚本IFace.py,并打包成一个通用的windows exe文件,她的颜值是这样的:
左侧的窗口是自动移动和缩放的,用以显示本地、网络、各类摄像头、网络推流的图像和视频源,首先用opencv进行人脸检测,将检测出的最大面积的人脸显示在主窗口的下方的小窗内,将检测出的人脸发送至百度大脑进行深度识别,关键点标识在主窗口上方的小窗内,人脸的特征数据以文字形式显示在右侧的窗口内,按钮用以控制上述过程。
如此,分析的环境就已经搭建好了,下面我们将利用这个工具对百度大脑的人脸识别模块进行深度的验证。
为了使用便利,验证时的图片和视频均直接来自于网络链接,不在本地进行存取。
好,就让我们启程吧。