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

本文涉及的产品
视觉智能开放平台,视频资源包5000点
视觉智能开放平台,分割抠图1万点
视觉智能开放平台,图像资源包5000点
简介: **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

相关文章
|
4天前
|
供应链 搜索推荐 API
探索1688榜单商品详细信息API接口:开发、应用与收益
本文深入探讨了1688榜单商品详细信息API接口的开发与应用,涵盖接口概述、开发条件、调用方法及数据处理等内容。该API帮助企业高效获取1688平台商品信息,应用于商品信息采集、校验、同步与数据分析等领域,有效提升了企业的运营效率、库存管理、销售转化率及市场策略制定能力,降低了采购成本,提升了客户满意度。
23 9
|
4天前
|
移动开发 小程序 PHP
校园圈子论坛系统采取的PHP语音和uni账号开发的小程序APP公众号H5是否只需要4800元?是的,就是只需要4800元
关于校园圈子论坛系统采用PHP语言和uni-app开发的小程序、APP、公众号和H5是否仅需4800元这个问题,实际上很难给出一个确定的答案。这个价格可能受到多种因素的影响
|
7天前
|
算法 Java API
如何使用Java开发获得淘宝商品描述API接口?
本文详细介绍如何使用Java开发调用淘宝商品描述API接口,涵盖从注册淘宝开放平台账号、阅读平台规则、创建应用并申请接口权限,到安装开发工具、配置开发环境、获取访问令牌,以及具体的Java代码实现和注意事项。通过遵循这些步骤,开发者可以高效地获取商品详情、描述及图片等信息,为项目和业务增添价值。
38 10
|
7天前
|
存储 API 数据库
使用Python开发获取商品销量详情API接口
本文介绍了使用Python开发获取商品销量详情的API接口方法,涵盖API接口概述、技术选型(Flask与FastAPI)、环境准备、API接口创建及调用淘宝开放平台API等内容。通过示例代码,详细说明了如何构建和调用API,以及开发过程中需要注意的事项,如数据库连接、API权限、错误处理、安全性和性能优化等。
40 5
|
6天前
|
数据可视化 搜索推荐 API
速卖通获得aliexpress商品详情API接口的开发、应用与收益。
速卖通(AliExpress)作为阿里巴巴旗下的跨境电商平台,为全球消费者提供丰富商品。其开放平台提供的API接口支持开发者获取商品详情等信息,本文探讨了速卖通商品详情API的开发流程、应用场景及潜在收益,包括提高运营效率、降低成本、增加收入和提升竞争力等方面。
20 1
|
14天前
|
API Python
利用python淘宝/天猫获得淘宝app商品详情原数据 API
要使用Python获取淘宝/天猫商品详情原数据,需先注册开放平台账号并实名认证,创建应用获取API权限。随后,根据API文档构建请求URL和参数,使用requests库发送请求,处理返回的商品详情数据。注意遵守平台使用规则。
|
21天前
|
人工智能 小程序 搜索推荐
uni app下开发AI运动小程序解决方案
本文介绍了在小程序中实现AI运动识别的解决方案。该方案依托于UNI平台,通过高效便捷的插件形式,实现包括相机抽帧控制、人体识别、姿态识别等在内的多项功能,无需依赖后台服务器,大幅提高识别效率和用户体验。方案内置多种运动模式,支持自定义扩展,适用于AI健身、云上赛事、AI体测等多场景,适合新开发和存量改造项目。
|
20天前
|
JSON API 数据格式
探索后端开发:从零构建简易RESTful API
在数字时代的浪潮中,后端开发如同搭建一座桥梁,连接着用户界面与数据世界。本文将引导读者步入后端开发的殿堂,通过构建一个简易的RESTful API,揭示其背后的逻辑与魅力。我们将从基础概念出发,逐步深入到实际操作,不仅分享代码示例,更探讨如何思考和解决问题,让每一位读者都能在后端开发的道路上迈出坚实的一步。
|
24天前
|
缓存 前端开发 API
深入浅出:后端开发中的RESTful API设计原则
【10月更文挑战第43天】在数字化浪潮中,后端开发如同搭建梦想的脚手架,而RESTful API则是连接梦想与现实的桥梁。本文将带你领略API设计的哲学之美,探索如何通过简洁明了的设计,提升开发效率与用户体验。从资源定位到接口约束,从状态转换到性能优化,我们将一步步构建高效、易用、可维护的后端服务。无论你是初涉后端的新手,还是寻求进阶的开发者,这篇文章都将为你的开发之路提供指引。让我们一起走进RESTful API的世界,解锁后端开发的新篇章。
|
23天前
|
缓存 API 数据库
Python哪个框架合适开发速卖通商品详情api?
在跨境电商平台速卖通的商品详情数据获取与整合中,Python 语言及其多种框架(如 Flask、Django、Tornado 和 FastAPI)提供了高效解决方案。Flask 简洁灵活,适合快速开发;Django 功能全面,适用于大型项目;Tornado 性能卓越,擅长处理高并发;FastAPI 结合类型提示和异步编程,开发体验优秀。选择合适的框架需综合考虑项目规模、性能要求和团队技术栈。
26 2

热门文章

最新文章