-
2021-11-29 11:00:55
基于华为云服务的人脸识别实验
环境配置等操作请查看华为云人脸识别服务-入门指导
此处使用的v2版本,需下载相应的SDK实际效果
代码附上
大致思路:
1. 将图像通过人脸识别服务进行检测,返回检测信息
2. 再在图片上绘制矩形,展示from frsclient import AuthInfo from frsclient import FrsClient import cv2 as cv # 配置相关参数 ak = "{-- 自己的ak --}" # 配置自己的ak sk = "{-- 自己的sk --}" # 配置自己的sk project_id = "{-- 自己的project_id --}" # 配置自己的project_id region = "cn-north-4" # 默认使用北京-四 end_point = "https://face.cn-north-4.myhuaweicloud.com" # 个人身份信息 auth_info = AuthInfo(ak=ak, sk=sk, end_point=end_point) frs_client = FrsClient(auth_info=auth_info, project_id=project_id) # 检测人脸,最后的"2"必须加,不然会报错,原因暂时不懂 result = frs_client.get_v2().get_detect_service().detect_face_by_file("需要检测的图像地址", "2") try: resultStr = result.get_eval_result() # 通过返回结果获取人脸的位置 x_point = resultStr['faces'][0]['bounding_box']['top_left_x'] y_point = resultStr['faces'][0]['bounding_box']['top_left_y'] width = resultStr['faces'][0]['bounding_box']['width'] height = resultStr['faces'][0]['bounding_box']['height'] except IndexError: print("当前区域不存在人脸") exit(1) # 有错误退出 img = cv.imread("图像地址同上") rect = cv.rectangle(img, (x_point, y_point), (x_point + width, y_point + height), (255, 255, 255), 1) cv.imshow("rect", rect) k = cv.waitKey(0)
更多相关内容 -
基于QT设计的人脸考勤签到系统(华为云人脸识别服务).zip
2021-12-26 13:51:40文章针对当前常用考勤方式中普遍存在的代签到、考勤数据整合较慢等问题,利用华为云的人脸识别技术实现了一种基于QT框架设计的在线考勤系统。该系统可大大提高考勤效率,满足各类场环境景下的考勤需求,具有识别度高... -
华为云人脸识别服务 FRS 之初体验
2022-01-22 14:39:27人脸识别服务,是基于人的脸部特征信息,利用计算机对人脸图像进行处理、分析和理解,...通常人脸识别都包含有人脸检测、人脸比对、人脸搜索、活体检测等服务,这里我们以人脸检测为例,体验下华为云的人脸识别服务。程序之美
前言
人脸识别服务(Face Recognition Service,简称FRS),是基于人的脸部特征信息,利用计算机对人脸图像进行处理、分析和理解,进行身份识别的一种智能服务。人脸识别以开放API(Application Programming Interface,应用程序编程接口)的方式提供给用户,用户通过实时访问和调用API获取人脸处理结果,帮助用户自动进行人脸的识别、比对以及相似度查询等,打造智能化业务系统,提升业务效率。
通常人脸识别都包含有人脸检测、人脸比对、人脸搜索、活体检测等服务,这里我们以人脸检测为例,体验下华为云的人脸识别服务。
先看下识别结果,如下图:
从上面的结果来看,华为云人脸识别算法还是挺优秀的,大概识别时间为151毫秒(从发起到收到结果,包括识别时间和来回的网络时间)
操作流程
很多刚注册平台的小伙伴们,可能感觉一头雾水,根本不知道如何操作,这里我就将整个操作流程记录下来,以便于小伙伴们查阅和使用。
首先注册和登录这里就不说了,我相信这个难不倒我们的小伙伴,当我们注册和登录完成后,点击右上角的控制台,进入到如下页面:
这里要留意上图中的控制台旁边的区域,此时为北京四,后面有涉及到。
按照如何使用API调用人脸识别服务进行一步一步操作即可。下面我们说下统一身份认证,如下图所示,点击统一身份认证的菜单,进入统一身份认证的页面,可按照https://support.huaweicloud.com/face_faq/face_06_0053.html 页面进行IAM帐户的创建。
另外有一个值得说地方,这个在华为云文档中并未涉及到,刚注册的小伙伴可能对其不了解,所以肯定感觉一头雾水,就是区域点要一致,如下图所示。
如图中的所属区域为“北京四”,那么云上服务订阅-人脸识别服务中的所属区域也应该是“北京四”,即开通人脸检测的服务的所属区域应该是“北京四”,还有作为网络请求参数的"我的凭证"中的相应的参数也应该使用“北京四”的参数,我就是在这里没有对应上,所以耽误了半天时间,希望小伙伴们,不要在这里再走弯路。
所遇问题
1、用户名密码错误
"error": { "code": 401, "message": "The username or password is wrong.", "title": "Unauthorized" } }
解决方案:
https://support.huaweicloud.com/face_faq/face_06_0053.html2、API不存在或者没有部署
{ "error_msg": "The API does not exist or has not been published in the environment", "error_code": "APIG.0101", "request_id": "0b363c83d94bc8b5a3c938d279ccbc9d" }
解决方案:
https://support.huaweicloud.com/face_faq/face_06_0026.html参照视频:
https://bbs.huaweicloud.com/videos/102987结束语
好了先说到这里吧,后续我会进一步把人脸服务体验的相关结果进行展示,也希望有条件的小伙伴和我一起来体验华为云人脸服务的强大与震撼,小伙伴们如果有什么疑问和建议都可以和我联系,共同 学习,共同进步,共同成长。也希望华为云能够不忘初心,砥砺前行,服务于大众,恩施于苍穹。
-
springboot集成华为人脸识别案例.rar
2020-08-06 18:06:03这个一个springboot集成华为人脸识别的demo案例,里面就是写了一个简单的控制器,调用了华为云的sdk,实现人脸识别、对比和检验 -
华为云人脸识别SDK踩坑日记
2019-06-06 14:42:28华为云人脸识别SDK踩坑日记 最近公司要接入华为的人脸识别api这是前提,看了一天手册跟着文档做下来有问题的地方不少,就以demo为例子写一写经验吧 先给上SDK介绍 ...最近公司要接入华为的人脸识别api这是前提,看了一天手册跟着文档做下来有问题的地方不少,就以demo为例子写一写经验吧
先给上SDK介绍 https://support.huaweicloud.com/sdkreference-face/face_04_0016.html
华为云的SDK是放在GitHub上的 https://github.com/huaweicloud/huaweicloud-sdk-csharp-frs
有了SDK后就开始吧。
这就是SDK的全部了 需要使用者自己添加到项目中去,这里我先用demo来测试的需要先建个工程,把文件添加到项目中去
打开demo.cs 初始化配置
AuthInfo authInfo = new AuthInfo("https://face.cn-north-1.myhuaweicloud.com", "ak", "sk"); //区域这里只有这两个地区开通了人脸识别接口,其他地方没有,只能在这两个里面选一个,注意填的时候只需要改cn-north-1就可以了,楼主第一次就把uri给覆盖了,导致初始化失败 //ak和sk是在华为云控制台的个人凭证中生成了秘钥,需要自己去手动新增 FrsClient frsClient = new FrsClient(authInfo, "项目ID"); //项目ID是和区域对应的
在添加common文件后会报个错,就是缺少json包,因为接口返回的数据格式是json的,
转:
c#添加json包
点击工具 - NuGet包管理器 - 程序包管理控制台,输入下面命令:
Install-Package Newtonsoft.Json
引用的 https://blog.csdn.net/u011720560/article/details/80402357这些步骤昨晚就可以调试了,如果错误的话可以参照api文档的错误码说明,也可以访问 https://support.huaweicloud.com/api-face/face_02_0045.html,查看原因。
大部分是都是uri的问题,后续的操作后面再说明了最后我想说的是 在网上基本搜不到华为云人脸识别SDK相关的,可能是因为我用的是C#的,而我又是做C++的,很少人用,资料有点少,最让人无语的是我头天给华为的人联系,说了问题但回复我的时候六点过了(五点半下班)就没细说,说第二天再说,然而第二天凌晨就更新了SDK文档,说之前有些地方不够完善,让我不得不佩服的是华为解决问题的速度,还是很快的
-
基于QT的人脸识别考勤管理系统,人脸识别考勤系统方案,QT
2021-09-10 22:50:536该系统分为员工打卡系统(Armface)和管理员管理系统(AdminFace)员工打卡系统:1、实时显示时间(show_time()2、管理员发布的通知(通过定时器访问通知表,run_message())3、人脸识别进行打卡(通过按钮打开摄像头进行... -
基于人脸识别的考勤系统.zip
2020-12-23 09:56:40java -
玩转华为云开发|老板万万没想到:刚入职的我一人就搞定人脸识别开发
2020-10-31 11:05:59第二个需求是“人脸识别”,小Hi没有AI相关技术积累,开始捉急,忽然灵光一闪,想起来前两天华为云专家过来交流,有提到华为云的AI能力,于是激动的打开了浏览器。 输入https://www.huaweicloud.com/,打开华为云,...摘要:程序猿小Hi入职公司不到三个月,就被老板单独叫到了办公室……
初创公司R:刚刚创立,致力于通过信息化技术,帮助中小企业数字化转型,华丽转身。
公司成员:老板、程序猿小Hi、… …
程序猿小Hi入职公司不到三个月,就被老板单独叫到了办公室。小Hi心情既激动又不安,激动的是老板是不是要给自己升职加薪,不安的是不是自己表现不好,老板要炒鱿鱼,毕竟疫情是一个很好的借口。
来到了老板的办公室,不等小Hi说话,就单刀直入,说:小Hi啊,你来公司挺长时间了(还没到三个月,老板健忘?),你的工作做得挺好(心里开始爽歪歪),今天有个重要任务要交给你(凉了一半,升职加薪忘了吧)。
小Hi:好的,老板你有啥就直接吩咐,保证高效完成(心里开始有点忐忑)。
老板:昨天有个新客户,提了个需求,他们是在XX高新区,公司多切人员杂,在目前疫情情况下,想在门岗处增加门禁,识别外来人员,加强疫情管控。这是他们的需求文档,公司的其他人都出差了,这个任务就交给你了。记住,要做成模块化,方便后续客户应用。
小Hi:是,老板,我好好看看他们的需求文档。
……
小Hi离开老板办公室,打开需求文档一看,六个大字映入眼帘:我们要人脸识别(不对,是七个),心里翻滚着五味杂陈,“模块化”和“人脸识别”,这就是需求。
第一次接到了老板的任务,小Hi陷入了“深思”(吃鸡游戏中…)
第一个需求是“模块化”,模块化就是要求封装内部细节,精简对外交互,实现高内聚低耦合。小Hi第一时间就想到了通过提供API来保障自身的独立性,以及清晰化的对外交互界面,大学里学的那点API相关的知识开始在脑海里迸发:
API的定义:
应用程序接口(Application Programming Interface)是一组定义、程序及协议的集合,通过 API 接口实现计算机软件之间的相互通信。用来提供应用程序与开发人员基于某软件或硬件得以访问的一组例程,而又无需访问源码,或理解内部工作机制的细节。
常见的API类型有:
1)RESTful API:基于HTTP、URI和XML等的常见的Web服务接口标准,描述了一个架构样式的网络系统,其核心是面向资源的。
2)SOAP接口:简单对象访问协议,简单对象访问协议(SOAP)是一种轻量的、简单的、基于 XML 的协议,它被设计成在 WEB 上交换结构化的和固化的信息。
3)RPC接口:远程过程调用 (RPC) 是一种协议,程序可使用这种协议向网络中的另一台计算机上的程序请求服务。
4)RMI接口:远程方法调用RMI是针对于java语言的, RMI 允许您使用Java编写分布式对象。
API的设计原则,好API的6个特质:
1)极简:极简的API是指对外暴露的尽可能少,这样的API更易理解、记忆、调试和变更。
2)完备:完备的API是指用户期望有的功能都包含了,满足用户的需求,是完备的。
3)语义清晰简单:接口、参数、帮助等的语义清晰简单,使用常用语和缩略语,不适用生僻语,尽量减少意外。
4)符合直觉:经验不很丰富的用户不用阅读API文档就能搞懂API,而且程序员不用了解API就能看明白使用API的代码。
5)易于记忆:为使API易于记忆,API的命名约定应该具有一致性和精确性。使用易于识别的模式和概念,并且避免用缩写。
6)引导API使用者写出可读代码:代码只写一次,却要多次的阅读(还有调试和修改)。写出可读性好的代码有时候要花费更多的时间,但对于产品的整个生命周期来说是节省了时间的。
注:源自Qt的API设计原则,详见https://github.com/oldratlee/translations/blob/master/api-design-principles-from-qt/README.md
API相关概念
1)API网关:服务与服务之间通信的中介或桥梁,提供服务接入和鉴权、API注册、流控、管理等API托管服务。
2)API全生命周期管理:覆盖了API的设计、开发、测试、发布、订阅、使用和分析的端到端、全流程的管理。
第二个需求是“人脸识别”,小Hi没有AI相关技术积累,开始捉急,忽然灵光一闪,想起来前两天华为云专家过来交流,有提到华为云的AI能力,于是激动的打开了浏览器。
输入https://www.huaweicloud.com/,打开华为云,选择“开发者”=>“资源工具”下的API Explorer,查看华为云所有开放API:
在API Explorer上面,可以快速查看对应云服务的开放API:
在搜索框输入人脸识别,搜索相关的云服务:
打开人脸识别服务,有人脸比对、人脸检测、人脸搜索、人脸资源管理、人脸库资源管理等,挺多API的,太棒了。
迫不及待调试一把,登录华为云(没注册的赶紧注册下),选择到人脸识别控制台页面(https://console.huaweicloud.com/frs/?region=cn-north-1#/frs/home),开通人脸比对服务:
在API Explorer上选择人脸比对API(FaceCompareByFile),查看此API详细介绍信息,包括接口说明、请求参数、示例、返回参数、错误码等,此API支持对比两张人脸图片信息,判断是否同一个人的置信度:
我们直接可以选择要比对的图片,在API Explorer上点击调试按钮来在线调试这个API:
点击调试后,可以得到比对结果,相似度94.699%(代表同一个人的概率很大):
再调试了多个API接口,查阅了人脸识别服务介绍后,小Hi心里有着落了,一张“蓝图”在脑海中绘制:
小Hi顿时信心爆棚起来,这下可以在老板面前好好表现下了。
你以为这就结束了吗?
图样图森破,小Hi还是太年轻,按以往经验,蓝图和落地至少还差个银河的距离,等待小Hi的是怎么快速实现这个公共服务,未完待续 ……
-
基于华为云服务的人脸识别功能实现
2021-08-13 11:13:142021年六月份,参加了一个程序创新设计的比赛,因为要用到人脸识别的功能,于是摸索着用搭载摄像头模块的树莓派3B开发板,以及华为的云服务的人脸识别接口来实现。 第一次尝试着摸索,虽然过程很坎坷,但总算还是... -
基于华为云人脸服务接口设计的人脸考勤打卡签到系统
2021-12-26 13:53:16文章针对当前常用考勤方式中普遍存在的代签到、考勤数据整合较慢等问题,利用华为云的人脸识别技术实现了一种基于QT框架设计的在线考勤系统。该系统可大大提高考勤效率,满足各类场环境景下的考勤需求,具有识别度高... -
华为云EI人脸识别接口初探
2019-07-19 14:12:560. 准备工作 开户及申请开通人脸识别服务,可以参考... ... -
百度人脸识别之人脸识别FaceIdentify(签到考勤)
2020-08-25 17:04:59主要为大家详细介绍了百度人脸识别之人脸识别FaceIdentify,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 -
学习华为云人脸识别踩坑,The subservice has not been subscribed和FRS.0020错误,projectId的获取
2020-04-26 11:50:151,projectId的获取,右上角->基本信息->管理我的凭证,就会出现项目ID...- 还可能是projectid对应的区域和你开通服务的区域不一样,对,就是这么奇怪,我也不知道华为怎么想的,如图改变区域,然后再查看子服... -
Java版本华为云【人脸对比】V1接口对接
2020-05-22 16:20:20import com.huaweicloud.frs.client.param.AuthInfo; import com.huaweicloud.frs.client.result.CompareFaceResult; import ... ... import sun.misc.BASE64Decoder; import sun.mis -
阿里云人脸识别使用流程简介
2020-11-23 16:00:10之前写过一篇关于Java 使用阿里云人脸识别的博客,介绍了如何使用网络及本地图片基于Rest API调用人脸识别服务。实际的使用中发现很多用户因为之前没有使用过人脸识别,对前期的一些参数配置还是不太清楚。这里对... -
【华为云技术分享】人脸识别算法的训练之路(下)
2020-06-08 11:41:55人脸识别算法的训练之路(上) 人脸识别 人脸识别问题本质是一个分类问题,即每一个人作为一类进行分类检测,但实际应用过程中会出现很多问题。第一,人脸类别很多,如果要识别一个城镇的所有人,那么分类类别就... -
树莓派实时人脸识别
2018-07-28 17:01:16树莓派实时人脸识别 最近在研究 face_recognition,这个一个人脸识别的库,可以通过python调用。作者在电脑上用摄像头实现了一个实时人脸识别的效果,如下图所示。 我想在树莓派上实现这个效果。如果嵌入式设备... -
AI人脸识别测温一体机设计
2022-02-08 17:41:12当前文章就利用华为云提供的AI人脸识别接口+红外测温传感器MLX90614ESF(DCI)+瑞芯微RK3399完成AI人脸测温一体机设计,方便测量来往人员的体温,减轻防疫防控工作人员的负担。 -
腾讯云AI人脸识别到底是什么
2020-11-13 19:00:10腾讯云人脸识别(Face Recognition)是基于腾讯优图领先的面部分析技术,提供人脸检测与分析、五官定位、人脸搜索、人脸比对、人脸验证、活体检测等多种服务,支持 API 和离线 SDK 两种接入方式。人脸识别可应用于... -
人脸识别提取特征值,利用postman解决java后台调用第三方API接口,上传文件(或图片)的问题
2020-06-10 11:56:45上传图片,调用API,获取人脸识别特征值 二、错误 1、首先,我使用了这些工具类,都能调用成功,但是无法返回数据,说明传输的参数不对,参考了网上的各种方法,都不行。 列举下使用的工具类: 1、java.net.... -
使用Python搭建人脸识别考勤系统
2021-12-24 00:57:17介绍在本文中,你将学习如何使用 Python 构建人脸识别系统。人脸识别比人脸检测更进一步。在人脸检测中,我们只检测人脸在图像中的位置,但在人脸识别中,我们制作了一个可以识别人的系统。“人... -
Android集成人脸识别demo分享
2021-06-11 07:26:57本应用来源于虹软人工智能开放平台,人脸识别技术工程如何使用?2.下载虹软人脸识别库http://www.arcsoft.com.cn/ai/sdk/apply-1002-4.html注册成功后,获取对应的key下载对应的android SDK,将对应平台的so和jar都... -
人脸识别摄像头要求
2021-08-14 08:04:11人脸识别摄像头要求 内容精选换一换智慧门店的人脸抓拍...结合云上人脸识别服务(Face Recognition,简称FRS)还可以进一步做VIP客户统计、回头客统计等应用。使用时需要提供您的业务RESTfu因云手机不支持摄像头功能,... -
【华为云ModelArts】识别你的专属云宝
2022-01-19 20:23:53一、前言 简介:ModelArts是面向开发者的AI开发平台,可以为机器学习与深度学习提供数据... 链接:华为云 点击注册后,完成实名认证 2.AI开发平台 进入AI开发平台首页,点击管理控制台 进入控制台 -
如何通过一个SDK轻松搞定人脸识别,拯救初入职场的程序猿
2020-12-28 11:48:43时间过得真快,距离上次给小Hi安排“人脸识别”的开发任务(话接上期:【快速玩转华为云开发】小Hi拍了拍你,基于华为云API的开发你Get到了吗?)已经过去1个多月了,至今还没有收到一点进展的音讯,老板有些躁动起来... -
使用POSTMAN访问华为云获取token的Api报400 网关错误
2020-09-22 23:20:58华为云获取token接口链接:https://support.huaweicloud.com/api-iam/iam_30_0001.html POSTMAN版本:Version 7.33.0 【报错现象】 【解决方案】 将请求头中的 【Content-Length、Host】全部勾选,具体含义... -
人脸识别gpu服务器配置
2021-08-12 10:51:35人脸识别gpu服务器配置 内容精选换一换查询当前用户所有人脸库的状态信息。前提条件:请确保您已开通人脸识别服务,具体操作方法请参见申请服务。您可以在API Explorer中调试该接口。GET /v2/{project_id}/face-sets...