基于Python与命令行人脸识别项目(系列一)(python人脸识别从入门到工程实践)

网友投稿 408 2022-09-01


基于Python与命令行人脸识别项目(系列一)(python人脸识别从入门到工程实践)

Face Recognition 人脸识别

摘要:本项目​​face_recognition​​​是一个强大、简单、易上手的人脸识别开源项目,并且配备了完整的开发文档和应用案例,方便大家使用。对于本项目可以使用Python和命令行工具提取、识别、操作人脸。本项目的人脸识别是基于业内领先的C++开源库 ​​dlib​​​中的深度学习模型,用​​Labeled Faces in the Wild​​​人脸数据集进行测试,有高达99.38%的准确率。但对小孩和亚洲人脸的识别准确率尚待提升(比如下例子鞠婧祎图片就未能识别出来)。本项目提供了简易的​​face_recognition​​命令行工具,你可以用它处理整个文件夹里的图片。

环境配置:我是用的以下配置:(1)Linux系列参品中ubuntu最新版本20版本(以下是ubuntu默认桌面)(2)由于ubuntu自带python3.8,故python不用安装【注意:我没有尝试在windows系统跑这个项目,但是也许能用】

windows操作系统实现方法:(1)第一步,安装dlib和相关Python依赖(不知道的可以参考网上博客,这里不再赘述)(2)然后打开终端(ctrl+alt+t)输入pip3 install face_recognition

使用方法:

当你安装好了本项目,你可以使用两种命令行工具:

​​face_recognition​​ - 在单张图片或一个图片文件夹中认出是谁的脸。​​face_detection​​ - 在单张图片或一个图片文件夹中定位人脸位置。

​​face_recognition​​ 命令行工具

​​face_recognition​​命令行工具可以在单张图片或一个图片文件夹中认出是谁的脸。

首先,你得有一个你已经知道名字的人脸图片文件夹(比如我这是knowe_people文件夹),一个人一张图,图片的文件名即为对应的人的名字:

​​face_detection​​ 命令行工具

​​face_detection​​命令行工具可以在单张图片或一个图片文件夹中定位人脸位置(输出像素点坐标)。

在命令行中使用​​face_detection​​,传入一个图片文件夹或单张图片文件来进行人脸位置检测:

调整人脸识别的容错率和敏感度

如果一张脸识别出不止一个结果,那么这意味着他和其他人长的太像了(本项目对于小孩和亚洲人的人脸识别准确率有待提升)。你可以把容错率调低一些,使识别结果更加严格。

通过传入参数 ​​--tolerance​​ 来实现这个功能,默认的容错率是0.6,容错率越低,识别越严格准确。

加速人脸识别运算

如果你的CPU是多核的,你可以通过并行运算加速人脸识别。例如,如果你的CPU有四个核心,那么你可以通过并行运算提升大概四倍的运算速度。

如果你使用Python3.4或更新的版本,可以传入 ​​--cpus ​​ 参数:

$ face_recognition --cpus 4

加速人脸识别运算

如果你的CPU是多核的,你可以通过并行运算加速人脸识别。例如,如果你的CPU有四个核心,那么你可以通过并行运算提升大概四倍的运算速度。

如果你使用Python3.4或更新的版本,可以传入 ​​--cpus ​​ 参数:

$ face_recognition --cpus 4 ~/图片/knowe_people ~/图片/unknowe_people/

你可以传入 ​​--cpus -1​​参数来调用cpu的所有核心。

今天就到这了,更多内容请看以下系列:项目源码:​​https://github.com/ageitgey/face_recognition​​


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java多线程面试题之交替输出问题的实现
下一篇:基于Python与命令行人脸识别项目(系列二)(python实现人脸识别系统)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~