python调用华为api实现人脸检测(代码片段)

ZHW_AI课题组 ZHW_AI课题组     2022-12-09     438

关键词:

目录

1. 作者介绍

任瑞斌,男,西安工程大学电子信息学院,2021级研究生
研究方向:机器视觉与人工智能
电子邮件:1466166308@qq.com

吴燕子,女,西安工程大学电子信息学院,2021级研究生,张宏伟人工智能课题组
研究方向:人工智能与机器视觉
电子邮件:1219428323@qq.com

2. 华为人脸检测API

2.1 人脸检测

人脸检测是对输入图片进行人脸检测和分析,输出人脸在图像中的位置、人脸关键点位置和人脸关键属性。

2.2 约束限制

1、 只支持识别JPG、PNG、JPEG、BMP格式的图片。
2、 为保证识别效果,人脸图片建议要求如下:
a) 光照大于200lux、无反光强光阴影现象。
b) 人脸无遮挡、整体清晰无拖尾抖动等运动模糊。
c) 侧脸不超过30°、俯仰角小于15°、偏转角小于15°、图片中人脸保持竖置正脸。
3、由于过大图片对识别算法精度无明显提升,同时会导致时延较长,建议传入图片小于1MB,一般500KB左右足够。图片中人脸像素建议120*120以上。

3. 实验过程

3.1 获取API

1、注册华为云账号,进行实名认证,开通服务。


2、AK/SK认证,下载文件credentials.csv
登录人脸识别管理控制台。
单击页面右上角的用户名,并选择“我的凭证”。进入“我的凭证”页面。

单击“访问秘钥”页签下的“新增访问密钥”。弹出“新增访问密钥”对话框。

输入“登录密码”,如果绑定了手机或者邮箱,还需要获取验证码并进行验证。验证成功后,弹出访问密钥下载对话框。
单击“确定”,并根据提示下载保存访问密钥。
如果已生成过AK/SK,找到原来已下载的AK/SK文件,文件名一般为:credentials.csv。

3、在API Explorer中调试接口

本案例中使用base64的图片格式,python实现代码如上图所示。
attributes (人脸关键属性,比如头部姿态):2:年龄 4:装束(帽子、眼镜) 6:口罩 7:发型 8:胡须 11:图片类型 12:质量 13:表情 21:人脸图片旋转角(顺时针偏转角度),支持0°、90°、180°和270°图片旋转。

3.2 代码实现

#############下载需要的库
import base64
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkfrs.v2.region.frs_region import FrsRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkfrs.v2 import *
###############导入AK和SK
if __name__ == "__main__":
    ak = "输入获得的AK"
    sk = "输入获得的SK"  # ak和sk读取
    credentials = BasicCredentials(ak, sk) \\

    client = FrsClient.new_builder() \\
        .with_credentials(credentials) \\
        .with_region(FrsRegion.value_of("cn-north-4"))  \\   
        .build()

    f = open('C:\\\\图片路径\\\\图片名称.png', 'rb')   # 图片路径读取
    img = base64.b64encode(f.read())   # 图片转换为base64格式

    try:
        request = DetectFaceByBase64Request()  # 人脸在图像中的位置
        request.body = FaceDetectBase64Req(
          attributes="2,4,6,7,13",   # 人脸关键属性,比如头部姿态。
          image_base64=img)
        response = client.detect_face_by_base64(request)
        print(response)      # 输出结果
    except exceptions.ClientRequestException as e:  # 有误情况的输出
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)

3.3 运行结果

输入图片:


输出结果包括以下3个部分:
1、 人脸在图片中的位置

2、 人脸的特征

3、 人脸的状态

python调用华为api实现人脸比对(代码片段)

目录1.作者介绍2.背景及访问流程介绍2.1人脸识别服务介绍2.2华为人脸服务2.3华为API访问流程2.4构建HTTPS协议2.5人脸识别限制要求3.关于实验代码、实验过程、测试结果3.1Token获取代码3.2调用人脸比对算法API3.3结果输出3.4... 查看详情

python实现人脸识别(代码片段)

文章目录叨叨几句准备工作代码流程叨叨几句哈喽兄弟们,今天实现一下人脸识别。先问大家一个问题什么是百度Aip模块?百度AI平台提供了很多的API接口供开发者快速的调用运用在项目中本文写的是使用百度AI的在线接... 查看详情

python调用华为api实现名人识别(代码片段)

目录1.作者介绍2.华为云名人识别API介绍2.1华为云名人识别API2.2使用AK,SK方式调用API步骤3.项目实现过程4.问题与分析1.作者介绍张美灵,女,西安工程大学电子信息学院,2021级硕士研究生研究方向:... 查看详情

python调用百度api实现人脸融合(代码片段)

目录1.作者介绍2.人脸融合介绍3.调用百度智能云API4.代码解析4.1导入库4.2获取token4.3读取图片,转换编码4.4调用百度智能云接口实现图片融合4.5下载融合图片4.6运行主程序4.7融合结果展示5.完整代码1.作者介绍刘帅波,男&#x... 查看详情

opencv-python也能实现人脸检测了(代码片段)

opencv中也可以实现深度学习中的人脸识别算法了。是怎么一回事呢?就是opencv中的DNN库,更新了好多深度学习的模块或者说是库函数,这样就让我们摆脱了安装庞大繁琐的深度学习框架。我们只需下载相应的权重文件... 查看详情

python调用华为api进行图像标签(代码片段)

目录1.作者介绍2.华为云API介绍2.1华为云图像标签2.2应用场景2.3调用华为云API实现图像标签3.实验过程3.1实验代码3.2运行结果3.3问题注释1.作者介绍朱景坤,男,西安工程大学电子信息学院,2021级研究生研究方向:... 查看详情

python+opencv简单实现人脸检测多个和人脸识别2(附代码)(代码片段)

如果dilb和face_recognition第三方包安装失败,请移步到Python解决dilb和face_recognition第三方包安装失败_水w的博客-CSDN博客上篇请移步到Python+dilb简单实现人脸检测(附代码)_水w的博客-CSDN博客本篇是在上篇的工作基础上... 查看详情

opencv调用手机摄像头与人脸检测(代码片段)

...器视觉环境搭建1.OpenCV下载2.OpenCV安装3.安装测试二、OpenCV调用摄像头及人脸检测1.调用电脑摄像头2.调用手机摄像头及人脸检测2.1准备工作2.2代码实现三、总结四、参考文献一、OpenCV机器视觉环境搭建1.OpenCV下载本文是基于Windows... 查看详情

超简单集成hmsmlkit人脸检测实现可爱贴纸(代码片段)

...脸贴纸、AR贴纸的需求也非常广泛。本文详细介绍了集成华为HMSMLkit人脸识别实现2d贴纸的集成过程,在后面的文章中我们还会介绍3D贴纸的开发过程,欢迎大家关注哦~场景  在美颜相机、美图app以及社交 查看详情

人脸检测实战终极:使用opencv和python进行人脸对齐(代码片段)

使用OpenCV和Python进行人脸对齐这篇博文的目的是演示如何使用OpenCV、Python和面部标志对齐人脸。给定一组面部标志(输入坐标),我们的目标是将图像扭曲并转换为输出坐标空间。在这个输出坐标空间中,整个数... 查看详情

基于python的百度ai人脸识别api接口(可用于opencv-python人脸识别)(代码片段)

基于Python的百度AI人脸识别API接口(可用于OpenCV-Python人脸识别)资源:https://download.csdn.net/download/weixin_53403301/43644312之前的项目:【最新】基于OpenCV的Python人脸识别、检测、框选(遍历目录下所有照片依次识别... 查看详情

python人脸遮挡检测(代码片段)

查看详情

crazyrockets-教你如何集成华为hmsmlkit人脸检测和手势识别打造爆款小游戏(代码片段)

...件简单的事情,于是小编开始在网上收集信息,终于发现华为HMSMLKit提供的人脸检测和手部关键点识别可以通过人脸以及手部关键点检测来实现游戏的趣味性。应用场景HMSMLKit人脸 查看详情

人脸检测+人体检测c++android实现(代码片段)

人脸检测+人体检测C++Android实现本博客将实现C++版本的人脸检测,人脸关键点检测,人体检测,人脸+人体检测,推理框架采用TNN,在普通Android手机,CPU和GPU都可以达到实时检测的效果人... 查看详情

人脸检测+人体检测c++android实现(代码片段)

人脸检测+人体检测C++Android实现本博客将实现C++版本的人脸检测,人脸关键点检测,人体检测,人脸+人体检测,推理框架采用TNN,在普通Android手机,CPU和GPU都可以达到实时检测的效果人... 查看详情

人脸识别经典网络-mtcnn(含python源码实现)(代码片段)

人脸检测-mtcnn本文参加新星计划人工智能赛道:https://bbs.csdn.net/topics/613989052文章目录人脸检测-mtcnn1.人脸检测1.1人脸检测概述1.2人脸检测的难点1.3人脸检测的应用场景2.mtcnn2.1mtcnn概述2.2mtcnn的网络结构2.3图像金字塔2.4P-Net2.5R-N... 查看详情

javacv实现图片中人脸检测完整代码教程(代码片段)

...到,可能他们提供的都是最基础的接口,如果想实现自己的想要的某种效果,比如人 查看详情

javacv实现图片中人脸检测完整代码教程(代码片段)

...到,可能他们提供的都是最基础的接口,如果想实现自己的想要的某种效果,比如人 查看详情