swan.ai.faceSearch

基础库 3.20.11 开始支持,低版本需做兼容处理。

解释:人脸搜索,传入人脸图片,支持在指定人脸图片集合中,找到与传入图片中人脸最为相似的图片。使用本功能需要小程序开发者后台登录超级管理员账号,点击云平台付费链接开通云账号付费功能。
Web 态说明:受宿主环境限制,Web 态暂不支持 AI 能力相关接口。在 Web 态会做 打开百度 App 对应小程序页面 的降级处理。

方法参数

Object object

object 参数说明

属性名类型必填默认值说明

image

String

图片信息(总数据大小应小于 10M),图片上传方式根据 image_type 来判断。注意:
· 图片尺寸建议:1920 * 1080 以内
· 支持格式:支持 jpg、jpeg、png、bmp,不支持 gif 图

image_type

String

图片类型
· BASE64:图片的 base64 值,base64 编码后的图片数据,编码后的图片大小不超过 2M
· URL:图片的 URL 地址( 可能由于网络等原因导致下载图片时间过长)
· FACE_TOKEN:人脸图片的唯一标识,调用人脸检测接口时,会为每个人脸图片赋予一个唯一的 FACE_TOKEN,同一张图片多次检测得到的 FACE_TOKEN 是同一个

group_id_list

String

从指定的 group 中进行查找 用逗号分隔,上限 10 个

quality_control

String

图片质量控制。
· NONE:不进行控制
· LOW:较低的质量要求
· NORMAL:一般的质量要求
· HIGH:较高的质量要求;默认 NONE,若图片质量不满足要求,则返回结果中会提示质量检测失败

liveness_control

String

活体检测控制。
· NONE:不进行控制
· LOW:较低的活体要求(高通过率 低攻击拒绝率)
· NORMAL:一般的活体要求(平衡的攻击拒绝率,通过率)
· HIGH:较高的活体要求(高攻击拒绝率 低通过率)。默认 NONE,若活体检测结果不满足要求,则返回结果中会提示活体检测失败

max_face_num

String

最多处理人脸的数目,默认值为 1,仅检测图片中面积最大的那个人脸;最大值 10,检测图片中面积最大的几张人脸

user_id

String

当需要对特定用户进行比对时,指定 user_id 进行比对。即人脸认证功能

success

Function

接口调用成功后的回调函数

fail

Function

接口调用失败的回调函数

complete

Function

接口调用结束的回调函数(调用成功、失败都会执行)

success 返回参数说明

参数名参数类型说明

face_token

String

人脸标志

user_list

Array

匹配的用户信息列表

user_list 参数说明

参数名参数类型说明

group_id

String

用户所属的 group_id

user_id

Array

用户的 user_id

user_info

Array

注册用户时携带的 user_info

score

Number

用户的匹配得分,推荐阈值 80 分

示例

跳转编辑工具

在开发者工具中打开

在 WEB IDE 中打开

扫码体验

代码示例

百度智能小程序

请使用百度APP扫码

图片示例

swan.ai.faceSearch - 图2

代码示例

  • JS
  1. Page({
  2. faceSearch() {
  3. swan.chooseImage({
  4. success: res => {
  5. let imageTop = res.tempFilePaths[0];
  6. // let imageLeft = res.tempFilePaths[1];
  7. // let imageMid = res.tempFilePaths[2];
  8. // let imageRight = res.tempFilePaths[3];
  9. // AI系列的api有宿主使用限制,只可在百度App中使用,建议使用时加一层判断防止代码报未知错误
  10. let host = swan.getSystemInfoSync().host;
  11. if (host === 'baiduboxapp') {
  12. swan.ai.faceSearch({
  13. image,
  14. image_type: 'BASE64',
  15. group_id_list: 'imageLeft,imageMid,imageRight',
  16. quality_control: 'NONE',
  17. liveness_control: 'NONE',
  18. face_type: 'LIVE',
  19. user_id: 'xxxxxx',
  20. max_user_num: 20,
  21. success: res => {
  22. console.log(res);
  23. },
  24. fail: err => {
  25. console.log(err);
  26. }
  27. });
  28. }
  29. else {
  30. swan.showToast({
  31. title: '此api目前仅可在百度App上使用',
  32. icon: 'none'
  33. });
  34. }
  35. }
  36. });
  37. }
  38. });

返回值示例

  • JSON
  1. {
  2. "face_token": "fid",
  3. "user_list": [
  4. {
  5. "group_id" : "test1",
  6. "user_id": "u333333",
  7. "user_info": "Test User",
  8. "score": 99.3
  9. }
  10. ]
  11. }