NodeJS中如何使用API实现人脸识别

发布时间:2021-12-30 10:07:08 作者:小新
来源:亿速云 阅读:191

这篇文章主要介绍了NodeJS中如何使用API实现人脸识别,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

        首先,我们看看官方文档对于调用API的要求:

NodeJS中如何使用API实现人脸识别

        首先我们需要通过API keySecret key去生成access_token。文档有提供现成的Node.js关键代码,但本篇文章均采用自己的代码逻辑。access_token有效期为30天,过期了则需要重新获取。首先我们先获取access_token

        首先我们自己来封装一个基于requesthttp请求:

NodeJS中如何使用API实现人脸识别

我们封装的第一个http请求方法采用Content-typeapplication/x-www-form-urlencoded,请求方式为POST请求。然后我们看下文档获取access_token的文档要求:

NodeJS中如何使用API实现人脸识别

获取access_token很简单,就是一个post请求,将三个参数传过去,接下来我们代码实现下,调用我们封装好的http请求:

NodeJS中如何使用API实现人脸识别

我们来调下接口看看是否有效果:

NodeJS中如何使用API实现人脸识别

可以看到我们成功获取到了access_token。获取到了access_token其实我们已经完成了鉴权操作,http请求我们也已经进行封装,下一步其实就可以开始调用API实现上一篇文章的人脸识别功能了。本篇文章就不一一测试所有接口,会着重挑几个接口来自己封装代码调取API获取数据。首先我们一样先调取人脸检测接口试试水:

人脸检测接口:

我们先来看看文档对该接口的介绍:

NodeJS中如何使用API实现人脸识别

可以看到接口要求Content-type要求为application/json,所以说我们需要封装一个以json格式提交请求的http请求:

NodeJS中如何使用API实现人脸识别

然后我们需要看看本接口需要提交的请求参数:

NodeJS中如何使用API实现人脸识别

有了请求参数,我们就可以开始着手写接口:

NodeJS中如何使用API实现人脸识别

首先调用API每个接口都需要携带access_token进行鉴权,所以请求接口地址为:

CONFIG.detectURL = 'https://aip.baidubce.com/rest/2.0/face/v3/detect?access_token=24.a86eea7696e1b0d370be73eaf9daf02d.2592000.1562144929.282335-16399628';

我先只提交必需参数imageimage_type。我们可以调取接口看看是否能得到图片检测结果:

NodeJS中如何使用API实现人脸识别

可以看到我们成功得到人脸检测API的响应了,因为默认只返回人脸框、概率和旋转角度,我们添加选传参数返回更多信息:

NodeJS中如何使用API实现人脸识别

我设置返回所有参数,图片检测人脸数最多为5,照片类型为生活照。我们可以看下返回参数(返回参数过多我就简单截图下)

NodeJS中如何使用API实现人脸识别

可以看到接口完全按照我们的需要将全部参数进行返回,我们就可以在客户端根据需要对人脸进行聚焦等特效的控制。就比如可以针对接口返回的72个特征点或者150个特征点的具体坐标进行具体操作:

NodeJS中如何使用API实现人脸识别

NodeJS中如何使用API实现人脸识别

(图片来源于官方文档)

其他的接口调用方式和本接口完全一致的,这里就不一一讲解了。具体流程:

通过封装的第一个http请求:

'Content-Type': 'application/x-www-form-urlencoded'

可以获取到access_token,有效期为30天,这里可以选择30天后access失效再重新获取新的access_token,或者每次调用接口获取新的access_token

然后通过封装的第二个http请求:

"content-type": 'application/json'

将接口请求参数以json方式提交请求对应API,即可以获得对应API的正确响应。

使用SDK与调用API的区别:

    1.鉴权SDK封装好了,我们只需要传入API KEY以及secret KEY就可以完成鉴权。直接调取API我们需要先通过http请求获取access_token

    2.SDK封装好http请求,我们可以直接调用,而无需关心如何实现。直接调取API我们需要封装一个基于x-www-form-urlencoded以及一个基于jsonhttp请求。

3.实现人脸识别功能API使用SDK可以直接直接封装好的方法,而调取API我们则需要手动封装方法调用已封装好的http请求发起请求。

感谢你能够认真阅读完这篇文章,希望小编分享的“NodeJS中如何使用API实现人脸识别”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

推荐阅读:
  1. Python中基于Opencv怎么实现人脸识别
  2. 如何使用nodejs实现路由功能

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

node.js api

上一篇:DataSourceV2流处理方法是什么

下一篇:怎么使用zk-etcd-config

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》