关于人脸检测的说明
本文代码使用了opencv自带的人脸检测算法和mtcnn算法,mtcnn有明显的优势,检测成功率基本维持在100%,而且人脸各角度都可以检测成功,所以建议使用mtcnn来进行人脸检测,电脑cpu也可以流畅运行。
需要提前配置的环境:python + opencv + tensorflow
关于mtcnn的介绍,请参见压缩包中的电子书
代码结构说明
detect_face.py
定义了mtcnn模型det 1-3.npy
是预训练好的模型,所以不用再对mtcnn进行训练detect 1-3.py
是三种实现方式,下面一一介绍
代码演示
detect1.py
使用mtcnn对一张图片进行检测,效果如下:
detect2.py
使用opencv自带的HAAR进行实时人脸检测,当人脸倾斜时无法检测到,效果如下:
detect3.py
使用MTCNN进行实时人脸检测,无论人脸各个角度,都可以检测到,效果如下:
代码地址
注意:github地址中没有mtcnn的预训练模型,需要自己下载,百度云是完整的