python调用百度人脸识别对美女进行颜值打分

调用百度人脸识别

一、注册百度api

先百度开发者开发平台注册应用https://ai.baidu.com/tech/face/detect

1、创建应用

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-L9mUvh8G-1571278051957)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1571276707647.png)]
2、管理应用
APP_ID, API_KEY, SECRET_KEY都会用到
安装使用Python SDK
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EcrFJyrq-1571278051959)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1571276722943.png)]

二、使用Python SDK

1、安装SDK

pip install baidu-aip

2、新建一个AipFace:

from aip import AipFace""" 你的 APPID AK SK """
APP_ID = '你的 App ID'
API_KEY = '你的 Api Key'
SECRET_KEY = '你的 Secret Key'client = AipFace(APP_ID, API_KEY, SECRET_KEY)

3、人脸检测

from aip import AipFace""" 你的 APPID AK SK """
APP_ID = '你的 App ID'
API_KEY = '你的 Api Key'
SECRET_KEY = '你的 Secret Key'client = AipFace(APP_ID, API_KEY, SECRET_KEY)
def get_file_content(filePath):with open(filePath, 'rb') as fp:return fp.read()
#本地图片
image = base64.b64encode(get_file_content('图片路劲'))
#url地址
# image = 'https://img.52z.com/upload/news/image/20180912/20180912124602_94176.jpg'
#图片类型
imageType = "BASE64"""" 调用人脸检测 """
client.detect(image, imageType);""" 如果有可选参数 """
options = {}
#添加请求的参数age:年龄,beauty:颜值,gender:性别
options["face_field"] = "age"
options["max_face_num"] = 2
options["face_type"] = "LIVE"
options["liveness_control"] = "LOW"""" 带参数调用人脸检测 """
client.detect(image, imageType, options)

返回结果:

{'error_code': 0, 'error_msg': 'SUCCESS', 'log_id': 744193212764433041, 'timestamp': 1571276443, 'cached': 0, 'result': {'face_num': 1, 'face_list': [{'face_token': '8189b74afd9de351cfcabf81cd349ebd', 'location': {'left': 149.37, 'top': 44.44, 'width': 170, 'height': 172, 'rotation': 25}, 'face_probability': 0.97, 'angle': {'yaw': 36.29, 'pitch': 10.16, 'roll': 20.51}, 'liveness': {'livemapscore': 1}, 'age': 20, 'beauty': 82.42, 'gender': {'type': 'female', 'probability': 1}}]}}

4、会遇到的问题
没有对本地文件img文件的编码BASE64进行字符串转换

client.detect(image, imageType, options)

出现以下错误:

TypeError: Object of type bytes is not JSON serializable

解决:

client.detect(str(image,'utf-8'),image_type,options)

附录:
请求参数详情

是否必选类型默认值说明
imagestring图片信息(总数据大小应小于10M),图片上传方式根据image_type来判断
image_typestring图片类型 BASE64:图片的base64值,base64编码后的图片数据,编码后的图片大小不超过2M; URL:图片的 URL地址( 可能由于网络等原因导致下载图片时间过长); FACE_TOKEN: 人脸图片的唯一标识,调用人脸检测接口时,会为每个人脸图片赋予一个唯一的FACE_TOKEN,同一张图片多次检测得到的FACE_TOKEN是同一个。
face_fieldstring包括age,beauty,expression,face_shape,gender,glasses,landmark,landmark72,landmark150,race,quality,eye_status,emotion,face_type信息 逗号分隔. 默认只返回face_token、人脸框、概率和旋转角度
max_face_numstring1最多处理人脸的数目,默认值为1,仅检测图片中面积最大的那个人脸;最大值10,检测图片中面积最大的几张人脸。
face_typestring人脸的类型 LIVE表示生活照:通常为手机、相机拍摄的人像图片、或从网络获取的人像图片等IDCARD表示身份证芯片照:二代身份证内置芯片中的人像照片 WATERMARK表示带水印证件照:一般为带水印的小图,如公安网小图 CERT表示证件照片:如拍摄的身份证、工卡、护照、学生证等证件图片 默认LIVE
liveness_controlstringNONE活体检测控制 NONE: 不进行控制 LOW:较低的活体要求(高通过率 低攻击拒绝率) NORMAL: 一般的活体要求(平衡的攻击拒绝率, 通过率) HIGH: 较高的活体要求(高攻击拒绝率 低通过率) 默认NONE

人脸检测 返回数据参数详情

字段必选类型说明
face_numint检测到的图片中的人脸数量
face_listarray人脸信息列表,具体包含的参数参考下面的列表。
+face_tokenstring人脸图片的唯一标识
+locationarray人脸在图片中的位置
++leftdouble人脸区域离左边界的距离
++topdouble人脸区域离上边界的距离
++widthdouble人脸区域的宽度
++heightdouble人脸区域的高度
++rotationint64人脸框相对于竖直方向的顺时针旋转角,[-180,180]
+face_probabilitydouble人脸置信度,范围【0~1】,代表这是一张人脸的概率,0最小、1最大。
+angelarray人脸旋转角度参数
++yawdouble三维旋转之左右旋转角[-90(左), 90(右)]
++pitchdouble三维旋转之俯仰角度[-90(上), 90(下)]
++rolldouble平面内旋转角[-180(逆时针), 180(顺时针)]
+agedouble年龄 ,当face_field包含age时返回
+beautyint64美丑打分,范围0-100,越大表示越美。当face_fields包含beauty时返回
+expressionarray表情,当 face_field包含expression时返回
++typestringnone:不笑;smile:微笑;laugh:大笑
++probabilitydouble表情置信度,范围【0~1】,0最小、1最大。
+face_shapearray脸型,当face_field包含face_shape时返回
++typedoublesquare: 正方形 triangle:三角形 oval: 椭圆 heart: 心形 round: 圆形
++probabilitydouble置信度,范围【0~1】,代表这是人脸形状判断正确的概率,0最小、1最大。
+genderarray性别,face_field包含gender时返回
++typestringmale:男性 female:女性
++probabilitydouble性别置信度,范围【0~1】,0代表概率最小、1代表最大。
+glassesarray是否带眼镜,face_field包含glasses时返回
++typestringnone:无眼镜,common:普通眼镜,sun:墨镜
++probabilitydouble眼镜置信度,范围【0~1】,0代表概率最小、1代表最大。
+eye_statusarray双眼状态(睁开/闭合) face_field包含eye_status时返回
++left_eyedouble左眼状态 [0,1]取值,越接近0闭合的可能性越大
++right_eyedouble右眼状态 [0,1]取值,越接近0闭合的可能性越大
+emotionarray情绪 face_field包含emotion时返回
++typestringangry:愤怒 disgust:厌恶 fear:恐惧 happy:高兴 sad:伤心 surprise:惊讶 neutral:无情绪
++probabilitydouble情绪置信度,范围0~1
+racearray人种 face_field包含race时返回
++typestringyellow: 黄种人 white: 白种人 black:黑种人 arabs: 阿拉伯人
++probabilitydouble人种置信度,范围【0~1】,0代表概率最小、1代表最大。
+face_typearray真实人脸/卡通人脸 face_field包含face_type时返回
++typestringhuman: 真实人脸 cartoon: 卡通人脸
++probabilitydouble人脸类型判断正确的置信度,范围【0~1】,0代表概率最小、1代表最大。
+landmarkarray4个关键点位置,左眼中心、右眼中心、鼻尖、嘴中心。face_field包含landmark时返回
+landmark72array72个特征点位置 face_field包含landmark72时返回
+landmark150array150个特征点位置 face_field包含landmark150时返回
+qualityarray人脸质量信息。face_field包含quality时返回
++occlusionarray人脸各部分遮挡的概率,范围[0~1],0表示完整,1表示不完整
+++left_eyedouble左眼遮挡比例,[0-1] ,1表示完全遮挡
+++right_eyedouble右眼遮挡比例,[0-1] , 1表示完全遮挡
+++nosedouble鼻子遮挡比例,[0-1] , 1表示完全遮挡
+++mouthdouble嘴巴遮挡比例,[0-1] , 1表示完全遮挡
+++left_cheekdouble左脸颊遮挡比例,[0-1] , 1表示完全遮挡
+++right_cheekdouble右脸颊遮挡比例,[0-1] , 1表示完全遮挡
+++chindouble下巴遮挡比例,,[0-1] , 1表示完全遮挡
++blurdouble人脸模糊程度,范围[0~1],0表示清晰,1表示模糊
++illuminationdouble取值范围在[0~255], 表示脸部区域的光照程度 越大表示光照越好
ouble人脸模糊程度,范围[0~1],0表示清晰,1表示模糊
++illuminationdouble取值范围在[0~255], 表示脸部区域的光照程度 越大表示光照越好
++completenessint64人脸完整度,0或1, 0为人脸溢出图像边界,1为人脸都在图像边界内

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/54496.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

陪玩MM千千万,谁是你的NO.1?使用Python获取陪玩照片进行颜值检测打分

陪玩MM千千万,谁是你的NO.1?使用Python获取陪玩照片进行颜值检测打分 序言工欲善其事,必先利其器1、数据来源分析2、实现步骤3、环境与模块 代码展示 序言 哈喽好兄弟们~ 咱们这几年玩过游戏的,基本都知道陪玩吧! 漂…

Python简单实现人脸识别检测, 对某平台美女主播照片进行评分排名

前言 嗨喽~大家好呀,这里是魔王呐 ❤ ~! 开发环境: Python 3.8 Pycharm 2021.2 模块使用: 第三方模块 requests >>> pip install requests tqdm >>> pip install tqdm 简单实现进度条效果 自带模块 os base64 采集代码 导入模块 # 数…

颜值大比拼,用数据告诉你中国哪里美女多?

这个被叫做”颜值调查”的互联网实验于4月29日晚上8点正式开放,截止5月4日24点,共有619位志愿者参与了活动,其中,地址和照片有效信息2413条。 从参与时间上看,29号晚上的短短4个小时以内,参与人数达到峰值的…

吃饱了撑的用python做一个颜值检测 并对美女排名❤

嗨害大家好鸭!我是小熊猫🖤! 今天hin闲~ 要闲出P来了💨 然后花了那么二、四、六、叭!分钟~ 做了一个小小的颜值检测~ 目录(可点击自己想去的地方哦~😋) 开发环境: Python 3.8Pycharm 2021.2 …

别在看不起女程序媛了,一个高颜值女程序媛的日常

「 女程序媛崛起 」 今天这篇文,意义特殊,是我的一个迷妹程序媛-祈澈姑娘写的,她发给我后,我看了通篇,感觉写的很真实,而且又是记录女程序媛的日常,比较少见,所以我很有兴趣&#xf…

Python实现人脸识别检测,对主播进行颜值排行

前言 嗨嗨,我亲爱的家人们 今天来整点不一样的,嘿嘿 用Python简单实现对人脸识别的检测,对某平台主播照片进行评分排名 应该对女主播这个词不陌生吧,怎么说应该还是蛮多人看过一些女主播吧 我无聊的时候也会看看,…

我这个程序员是如何找到女朋友的

估计这是一篇虐狗的文章了!!请捂好小心脏 昨天刚好是恋爱一周年,那就写写我是如何脱单的故事了。 其实没啥好写的,毕竟我去年6月份换了家公司上班,好像还没过试用期吧。突然邻座的邻座的邻座的UI设计师就在某天加了我…

天天new对象的程序员,居然能找到女朋友?还能教你追女生?

江湖上有种谣言说:程序员不解风情,一天到晚只知道打代码...... 但是程序员也是人,面对心爱之人,也会有浪漫主义的一面。在情人节送给自己的女朋友玫瑰花,对于程序员来说是不是太普通了呢?作为一名程序员&am…

程序员如何找女朋友?教你程序员找女朋友的技巧!

很多程序员都会遇到这样的一个难题,那就是自己到一定年纪了,但是找不到合适的对象,很多程序员由于工作的原因,很少更人接触交流,所以导致性格老实内向,这样的性格对于找女朋友来说是致命的。今天&#xff0…

不会聊天,怎么可能找到女朋友?

如果你的职业规划,就是往专业深度上走,成长为一名专家,如何增大职场成功的概率呢? 主观上,作为一个专家,基本功、架构能力、业务能力、工作态度非常重要: 有夯实的专业基本功架构能力强业务能力…

写周报、改代码,连续互动20轮,国产类ChatGPT新玩家「天工」来了

国内的类 ChatGPT 赛道,又来了一个重量级玩家。 4 月 17 日,新⼀代大语言模型「天工」正式开启邀请测试。该模型由昆仑万维与奇点智源联合研发,是国内首个对标 ChatGPT 的双千亿级大语言模型。 官网链接:tiangong.kunlun.com 作为…

经典中文歌曲-英文版

经典中文歌曲-英文版 15首(第一期) 青春派对是大约与小虎队、红唇族同时的台湾演唱组合,歌手资料不详 。主要作品是 经典中文歌曲的英文翻唱,大陆发行过几盘磁带,很快就消声匿迹了。这里介绍给大家 的是由华星唱片公…

ThinkPHP 提示验证码输入错误

最近遇到一个项目中用的是Thinkphp这个框架开发的,其中在登录这块有验证码这个功能,其实这个功能是TP自带的,其中主要方法是buildImageVerify,位于ThinkPHP\Extend\Library\ORG\Util\Image.class.php中。该验证码的机制就是当前台每次重新绘制…

使用图片验证码进行登录验证

需求:后端系统登录时使用图片验证码验证登录 效果: 使用 4 位数字加字母组合验证码登录,相关代码为: import cn.hutool.captcha.CaptchaUtil; import cn.hutool.captcha.LineCaptcha;RequestMapping("/getCode") publ…

tp5.1使用验证码类时,验证码图片不显示

一、问题描述 ​在使用 tp5.1 框架中的 验证码类 的时候,准备工作都做好了,但是验证码图片却无法显示,浏览器缓存也清掉了,电脑也重启的,图片路径也没有问题,就是不显示验证码的图片。 1)通过co…

登录界面+验证码

做一个登录界面验证码的界面 实现效果&#xff1a; 第一部分、 页面&#xff1a; <div class"container" ><h2 style"text-align:center">会员登录 </h2><br><form action"<%path %>/user/login" method"…

tp6框架使用think-captcha时验证码总是错误,调用captcha_check验证失败

tp6框架使用think-captcha时验证码总是错误&#xff0c;调用captcha_check验证失败 用session(‘captcha’)查看值是空的&#xff0c;遇到这种情况&#xff0c;解决如下&#xff1a; 1、打开app/middleware.php文件 2、将\think\middleware\SessionInit::class,注释去掉

【兄弟反目成仇系列】:我只是写了一个爆炸信息窗口脚本,好兄弟追了我几条街~

文章目录 ✨ 真的来咯~&#x1f4a5;爆炸信息窗口&#x1f4a1;设计思路&#x1f511;模块准备 ⚠️删除好友警告⚠️源代码 ❓这时你可能会问&#x1f440; 批量获取表情包 &#x1f6c0;结束语 专栏Python零基础入门篇&#x1f525;Python网络蜘蛛&#x1f525;Python数据分析…

微软报告:GPT-4可以算早期AGI/ 百图生科发布AI生成蛋白质平台/ Arm寻求上调芯片设计价格…今日更多新鲜事在此...

日报君 发自 凹非寺量子位 | 公众号 QbitAI 大家好&#xff0c;今天是3月24日星期五。这周依然是技术炸炸炸的一周。 更多新鲜事&#xff0c;咱们一起来看~ 微软发布长篇报告&#xff1a;GPT-4已经可以算早期AGI 微软最新发布的154页长篇实验报告称&#xff1a;GPT-4已经可以被…