App Inventor 2 人脸识别App开发 - 第三方API接入的通用方法

简介: **App 效果图**:展示人脸识别功能,可识别性别和年龄。**工作原理**:调用第三方人脸识别API,上传图片并接收返回的JSON数据,AppInventor2解析结果显示。

App效果图,可以识别人脸,推断出性别及年龄:

App原理介绍

通过调用第三方人脸识别api,按照指定格式上传图片及必要的参数,然后api进行云端识别,

识别成功/失败后,会返回json格式的数据结果,使用AppInventor2解析json结果,显示到App上即可。

当然,也可以采用原生的自行训练本地人脸识别模型的方式去完成这个人脸识别需求,可以参考:《自行训练AI图像识别模型,开发图像识别分类App》

下面简单对比一下两种方式的优缺点:

对比项 调用第三方API 自己训练AI识别模型
学习成本 简单,学习成本低。 适合AI相关专业人士,学习成本高。
识别速度 速度稍慢,几秒。 速度极快,毫秒级。
使用限制 调用次数有限制,不过学习及演示用足够了。 训练好模型后,调用不受限制,且越用识别越准确。
数据安全 数据在第三方云端,敏感数据不建议。 数据全本地,自主可控。

当然了,我们这里仅讨论第一种调用API的方式实现人脸识别

第三方API介绍

第三方人脸识别的api平台特别多,这里仅以“旷视Face++”(faceplusplus.com.cn)作为演示,因为它提供足够多的免费调用次数,其他平台的使用方法都是几乎一样的。

这些第三方平台除了提供人脸识别功能外,还有其他AI相关的识别功能,比如文字识别、图像识别、证件识别等等,其核心都是调用相关api,按其文档传入指定格式的数据即可。对我们而言api类调用的App开发原理都是通用的!

平台的注册及登录步骤请自行完成,登录后需要创建一个应用以获得API调用时必要的api_keyapi_secret

如何理解api_keyapi_secret:可以类比为 API Key是用户ID(用于标识用户),Secret Key是密码(用于鉴权)。“你需要两个不同的密钥,一个告诉他们你是谁,另一个证明你就是你所说的“。

创建一个API Key应用

填写必要的参数

查看已创建的应用

这时,我们就能得到了api_keyapi_secret,后续步骤会用到这两个关键的数据。

查看API文档,确定我们需要准备的数据

通过文档可知,我们需要填入api_keyapi_secret、上传一张图片、指定识别的属性:gender,age(这里以性别和年龄为例)。

第三方API的调用

使用”Web客户端“组件调用第三方API,代码如下:

注:这里图片采用Base64的方式,压缩后进行Base64编码。用到 SimpleBase64 拓展 和 TaifunImage 拓展。

JSON结果的解析

请求成功返回JSON示例

{
    "image_id": "Dd2xUw9S/7yjr0oDHHSL/Q==", 
    "request_id": "1470472868,dacf2ff1-ea45-4842-9c07-6e8418cea78b", 
    "time_used": 752, 
    "faces": [
        {
            "landmark": {
                "mouth_upper_lip_left_contour2": {
                    "y": 185, 
                    "x": 146
                }, 
                "contour_chin": {
                    "y": 231, 
                    "x": 137
                }, 
               .........省略关键点信息
                "right_eye_pupil": {
                    "y": 146, 
                    "x": 205
                }, 
                "mouth_upper_lip_bottom": {
                    "y": 195, 
                    "x": 159
                }
            }, 
            "attributes": {
                "gender": {
                    "value": "Female"
                }, 
                "age": {
                    "value": 21
                }, 
                "glass": {
                    "value": "None"
                }, 
                "headpose": {
                    "yaw_angle": -26.625063, 
                    "pitch_angle": 12.921974, 
                    "roll_angle": 22.814377
                }, 
                "smile": {
                    "threshold": 30.1, 
                    "value": 2.566890001296997
                }
            }, 
            "face_rectangle": {
                "width": 140, 
                "top": 89, 
                "left": 104, 
                "height": 141
            }, 
            "face_token": "ed319e807e039ae669a4d1af0922a0c8"
        }
    ],
  "face_num":1
}

JSON


请求失败返回JSON示例

{
    "time_used": 3, 
    "error_message": "MISSING_ARGUMENTS: image_url, image_file, image_base64", 
    "request_id": "1470378968,c6f50ec6-49bd-4838-9923-11db04c40f8d"
}

JSON


JSON解析参考代码

原文:https://www.fun123.cn/reference/pro/ai_face.html

相关文章
|
6月前
|
缓存 负载均衡 监控
微服务架构下的电商API接口设计:策略、方法与实战案例
本文探讨了微服务架构下的电商API接口设计,旨在打造高效、灵活与可扩展的电商系统。通过服务拆分(如商品、订单、支付等模块)和标准化设计(RESTful或GraphQL风格),确保接口一致性与易用性。同时,采用缓存策略、负载均衡及限流技术优化性能,并借助Prometheus等工具实现监控与日志管理。微服务架构的优势在于支持敏捷开发、高并发处理和独立部署,满足电商业务快速迭代需求。未来,电商API设计将向智能化与安全化方向发展。
463 102
|
3月前
|
运维 iOS开发 Windows
windows电脑备案ios APP获取公钥和证书指纹Sha-1值的方法
在阿里云进行APP备案、在备案IOS端的环节的时候,发现需要我们将p12证书安装在电脑上,再用xcode或或钥匙串访问来获取这个证书的公钥和sha-1值。 但是大部分开发uniapp应用的同学们,或者进行发布的运维人员的电脑都是windows,无法按照阿里云的教程来获取ios的公钥和sha-1。备案就被卡主了。 这里介绍下另一个方法,就是使用香蕉云编来在线上传证书获取。如下图所示,打开香蕉云编后,找到下图这个功能
677 0
|
3月前
|
人工智能 API 开发者
图文教程:阿里云百炼API-KEY获取方法,亲测全流程
本文详细介绍了如何获取阿里云百炼API-KEY,包含完整流程与截图指引。需先开通百炼平台及大模型服务,再通过控制台创建并复制API-KEY。目前平台提供千万tokens免费额度,适合开发者快速上手使用。
3008 5
|
8月前
|
人工智能 程序员 API
以人脸识别验票机为例,通义灵码如何助力嵌入式软硬件开发中的快速功能验证
本文分享通义灵码在嵌入式软硬件开发中的应用。通过实际案例——基于人脸识别的验票机开发,展示通义灵码如何助力快速原型验证。从时延、稳定性、准确率、安全性到成本效益,全面评估API性能。借助通义灵码,复杂编程任务得以简化,大幅提高开发效率,让开发者专注于更有价值的优化与测试工作。体验地址已提供,欢迎下载探索。
|
10月前
|
监控 API 计算机视觉
CompreFace:Star6.1k,Github上火爆的轻量化且强大的人脸识别库,api,sdk都支持
CompreFace 是一个在 GitHub 上拥有 6.1k Star 的轻量级人脸识别库,支持 API 和 SDK。它由 Exadel 公司开发,基于深度学习技术,提供高效、灵活的人脸识别解决方案。CompreFace 支持多种模型(如 VGG-Face、OpenFace 和 Facenet),具备多硬件支持、丰富的功能服务(如人脸检测、年龄性别识别等)和便捷的部署方式。适用于安防监控、商业领域和医疗美容等多个场景。
1186 4
|
10月前
|
JSON 数据可视化 API
Python 中调用 DeepSeek-R1 API的方法介绍,图文教程
本教程详细介绍了如何使用 Python 调用 DeepSeek 的 R1 大模型 API,适合编程新手。首先登录 DeepSeek 控制台获取 API Key,安装 Python 和 requests 库后,编写基础调用代码并运行。文末包含常见问题解答和更简单的可视化调用方法,建议收藏备用。 原文链接:[如何使用 Python 调用 DeepSeek-R1 API?](https://apifox.com/apiskills/how-to-call-the-deepseek-r1-api-using-python/)
|
5月前
|
存储 Linux 容器
【Container App】在容器中抓取网络包的方法
本文介绍在Azure Container App中安装tcpdump抓取网络包,并通过Storage Account上传抓包文件的方法。内容包括使用curl和nc测试外部接口连通性、长Ping端口、安装tcpdump、抓取网络包、以及通过crul命令上传文件至Azure Storage。适用于需要分析网络请求和排查网络问题的场景。
205 1
|
5月前
|
数据安全/隐私保护 计算机视觉 Python
一键生成眨眼照片app,一键生成眨眼照片,秒解人脸识别软件
这段代码使用了dlib的人脸检测和关键点定位功能来识别眼睛区域,然后通过图像处理技术模拟眨眼效果
|
6月前
|
计算机视觉 流计算 Python
人脸识别照片眨眼张嘴生成器,一键生成眨眼照片app,怎么用一张照片做人脸识别
基于Python的人脸识别照片动画生成系统,支持眨眼和张嘴动作。使用OpenCV、dlib等技术实现,可输出GIF或序列帧。代码包含完整的人脸检测
|
7月前
|
API Go 网络架构
【Azure Logic App】特殊的方法来停止正常步骤无法停止的Workflow Job
本文介绍了一种特殊方法,用于解决标准版Logic App在异常情况下无法正常停止的问题。当点击Cancel按钮报错“WorkflowRunCanNotBeCancelled”时,可通过以下步骤解决:进入Logic App的Kudu页面,定位到`C:\home\site\wwwroot`目录下的`host.json`文件,添加`Jobs.SuspendedJobPartition`和`Jobs.CleanupJobPartition`参数,并以大写格式设置值为`"<WORKFLOWID>:2D<RUNID>"`。调整后可成功停止异常Job
228 19

热门文章

最新文章