用Python识别人脸,人种等各种信息


Posted in Python onJuly 15, 2019

最近几天了解了一下人脸识别,应用场景可以是图片标注,商品图和广告图中有没有模特,有几个模特,模特的性别,年龄,颜值,表情等数据的挖掘。

用Python识别人脸,人种等各种信息

基础的识别用dlib来实现,dlib是一个机器学习的包,主要用C++写的,但是也有Python版本。其中最流行的一个功能是Facial Landmark Detection, 配备已经训练好的轮廓预测模型,叫shape_predictor_68_face_landmarks.dat, 从名字就可以看出,它可以检测出面部的68个关键点,包括五官和外轮廓等。

安装dlib会花比较长时间,因为依赖包有十个左右,装完了dlib别忘了下载predictor数据文件。

wget

http://dlib.net/files/shape_predictor_68_face_landmarks.dat.bz2

pip install dlib

我在Adrian大神的代码做了一点修改和封装,先定位脸部的方框,box_face画出方框,在此基础上可选调用tag_face_number来标注脸的标号或者draw_face_landmarks来标注特征点,也可以直接调用count_faces来统计脸的个数,mark_all_faces给所有的脸把所有信息都加上。

用Python识别人脸,人种等各种信息

拿九张模特图来试试,半脸的不行,侧的太厉害不行,其它都能识别出来。

用Python识别人脸,人种等各种信息

一张图多张脸的也毫无压力

用Python识别人脸,人种等各种信息

接下来性别和年龄就不好做了,必须通过机器训练数据,还没时间摸透,又想尽快拿到这些标注,于是先走捷径去调face++的API, 注册个账号申请key和secret即可,免费账户有qps限制,且一张照片内最多支持五人识别。

官方的代码示例极差,而且还是只支持Python2的, 收先要改写一下。Attribute中有很多数据可以拿,你想的到的想不到的都有,甚至包括颜值,人种等。颜值还算靠谱,范冰冰90分,凤姐49分,人种就难说了,欧美模特分分钟当成Asian.

用Python识别人脸,人种等各种信息

用Python识别人脸,人种等各种信息

机器说: 性别女,表情偏悲伤,颜值89分,28岁,亚洲人,基本没笑

{'image_id': 'wPGIyROqltTdjvRX3zopbg==', 'request_id': '1519574701,3113e37e-b000-4440-af08-871831cf1ba8', 'time_used': 355, 'faces': [{'attributes': {'emotion': {'sadness': 93.448, 'neutral': 4.114, 'disgust': 0.002, 'anger': 0.002, 'surprise': 2.414, 'fear': 0.002, 'happiness': 0.018}, 'beauty': {'female_score': 89.348, 'male_score': 88.925}, 'gender': {'value': 'Female'}, 'age': {'value': 28}, 'headpose': {'yaw_angle': 17.526142, 'pitch_angle': 11.047059, 'roll_angle': 19.623343}, 'smile': {'threshold': 30.1, 'value': 28.532}, 'ethnicity': {'value': 'Asian'}}, 'face_rectangle': {'width': 202, 'top': 103, 'left': 69, 'height': 202}, 'face_token': '7be6a72f497ed16cc7883424584052c5'}]}

用Python识别人脸,人种等各种信息

机器说: 性别男,表情很快乐,颜值52分,61岁,黑人,大笑

{'image_id': 'YZ5wzeVDiAgCN9yIFX44Gw==', 'request_id': '1519574926,31f6d4d8-bdf6-4863-b29a-cf61ff04ffbe', 'time_used': 323, 'faces': [{'attributes': {'emotion': {'sadness': 0.0, 'neutral': 0.0, 'disgust': 0.0, 'anger': 0.0, 'surprise': 0.0, 'fear': 0.0, 'happiness': 99.999}, 'beauty': {'female_score': 62.678, 'male_score': 51.847}, 'gender': {'value': 'Male'}, 'age': {'value': 61}, 'headpose': {'yaw_angle': 2.6326802, 'pitch_angle': 11.909821, 'roll_angle': -11.707241}, 'smile': {'threshold': 30.1, 'value': 99.081}, 'ethnicity': {'value': 'Black'}}, 'face_rectangle': {'width': 208, 'top': 88, 'left': 120, 'height': 208}, 'face_token': '19067cf0f5358312c109a0e70bab62ae'}]}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python读写文件操作示例程序
Dec 02 Python
Python中itertools模块用法详解
Sep 25 Python
Python MySQLdb模块连接操作mysql数据库实例
Apr 08 Python
详解Python3中字符串中的数字提取方法
Jan 14 Python
python处理按钮消息的实例详解
Jul 11 Python
Python(TensorFlow框架)实现手写数字识别系统的方法
May 29 Python
python利用requests库进行接口测试的方法详解
Jul 06 Python
利用Python实现微信找房机器人实例教程
Mar 10 Python
关于Python形参打包与解包小技巧分享
Aug 24 Python
pycharm如何实现跨目录调用文件
Feb 28 Python
代码复现python目标检测yolo3详解预测
May 06 Python
Python OpenGL基本配置方式
May 20 Python
django中账号密码验证登陆功能的实现方法
Jul 15 #Python
python tkinter窗口最大化的实现
Jul 15 #Python
在pycharm下设置自己的个性模版方法
Jul 15 #Python
Pycharm新建模板默认添加个人信息的实例
Jul 15 #Python
在python中将list分段并保存为array类型的方法
Jul 15 #Python
详解Python对JSON中的特殊类型进行Encoder
Jul 15 #Python
linux中如何使用python3获取ip地址
Jul 15 #Python
You might like
PHP二维数组的去重问题解析
2011/07/17 PHP
ThinkPHP的cookie和session冲突造成Cookie不能使用的解决方法
2014/07/01 PHP
php表单敏感字符过滤类
2014/12/08 PHP
php命令行(cli)模式下报require 加载路径错误的解决方法
2015/11/23 PHP
ThinkPHP整合datatables实现服务端分页的示例代码
2018/02/10 PHP
javascript concat数组累加 示例
2009/09/03 Javascript
简短几句jquery代码的实现一个图片向上滚动切换
2011/09/02 Javascript
ASP.NET jQuery 实例18 通过使用jQuery validation插件校验DropDownList
2012/02/03 Javascript
学习javascript的闭包,原型,和匿名函数之旅
2015/10/18 Javascript
JS表格组件神器bootstrap table详解(基础版)
2015/12/08 Javascript
jQuery循环遍历子节点并获取值的方法
2016/04/14 Javascript
AngularJS学习第二篇 AngularJS依赖注入
2017/02/13 Javascript
jQuery选取所有复选框被选中的值并用Ajax异步提交数据的实例
2017/08/04 jQuery
JS去掉字符串末尾的标点符号及删除最后一个字符的方法
2017/10/24 Javascript
Vue页面骨架屏的实现方法
2018/05/22 Javascript
vue 登录滑动验证实现代码
2018/08/24 Javascript
微信小程序时间标签和时间范围的联动效果
2019/02/15 Javascript
JS中的算法与数据结构之二叉查找树(Binary Sort Tree)实例详解
2019/08/16 Javascript
Vue实现商品飞入购物车效果(电商项目)
2019/11/26 Javascript
react antd表格中渲染一张或多张图片的实例
2020/10/28 Javascript
[01:46]辉夜杯—打造中国DOTA新格局
2015/12/25 DOTA
[01:00:17]DOTA2-DPC中国联赛 正赛 SAG vs Dynasty BO3 第二场 1月25日
2021/03/11 DOTA
Python with用法实例
2015/04/14 Python
基python实现多线程网页爬虫
2015/09/06 Python
Python计算一个点到所有点的欧式距离实现方法
2019/07/04 Python
python中def是做什么的
2020/06/10 Python
求两个数的乘积和商数,该作用由宏定义来实现
2013/03/13 面试题
挖掘机司机岗位职责
2014/02/12 职场文书
岗位职责风险防控
2014/02/18 职场文书
2014领导班子四风问题对照检查材料思想汇报
2014/09/21 职场文书
2014年党员自我剖析材料
2014/10/07 职场文书
实施意见格式范本
2015/06/05 职场文书
感谢师恩主题班会
2015/08/17 职场文书
读《教育心理学》心得体会
2016/01/22 职场文书
解决Pytorch半精度浮点型网络训练的问题
2021/05/24 Python
FP-growth算法发现频繁项集——发现频繁项集
2021/06/24 Python