swan.ai.faceSearch

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

解释:人脸搜索,传入人脸图片,支持在指定人脸图片集合中,找到与传入图片中人脸最为相似的图片。使用本功能需要小程序开发者后台登录超级管理员账号,点击云平台付费链接swan.ai.faceSearch - 图1开通云账号付费功能。

方法参数

Object object

object参数说明 :

属性名类型必填默认值说明
imagestring图片信息(总数据大小应小于 10M),图片上传方式根据 image_type 来判断。
image_typestring图片类型 ·BASE64 :图片的 base64 值,base64 编码后的图片数据,编码后的图片大小不超过2M;·URL :图片的 URL 地址( 可能由于网络等原因导致下载图片时间过长);·FACE_TOKEN : 人脸图片的唯一标识,调用人脸检测接口时,会为每个人脸图片赋予一个唯一的 FACE_TOKEN,同一张图片多次检测得到的 FACE_TOKEN 是同一个。
group_id_liststring从指定的 group 中进行查找 用逗号分隔,上限 10 个。
quality_controlstring图片质量控制。 ·NONE : 不进行控制; ·LOW :较低的质量要求; ·NORMAL : 一般的质量要求; ·HIGH : 较高的质量要求;默认 NONE,若图片质量不满足要求,则返回结果中会提示质量检测失败。
liveness_controlstring活体检测控制。 ·NONE : 不进行控制; ·LOW :较低的活体要求(高通过率 低攻击拒绝率); ·NORMAL : 一般的活体要求(平衡的攻击拒绝率, 通过率); ·HIGH : 较高的活体要求(高攻击拒绝率 低通过率)。默认 NONE,若活体检测结果不满足要求,则返回结果中会提示活体检测失败。
max_face_numstring最多处理人脸的数目,默认值为1,仅检测图片中面积最大的那个人脸;最大值10,检测图片中面积最大的几张人脸。
user_idstring当需要对特定用户进行比对时,指定user_id进行比对。即人脸认证功能。
successFunction接口调用成功后的回调函数
failFunction接口调用失败的回调函数
completeFunction接口调用结束的回调函数(调用成功、失败都会执行)

success 返回参数说明

参数名参数类型说明
face_tokenstring人脸标志
user_listArray匹配的用户信息列表

user_list参数说明

参数名参数类型说明
group_idstring用户所属的 group_id
user_idArray用户的 user_id
user_infoArray注册用户时携带的 user_info
scorenumber用户的匹配得分,推荐阈值 80 分。

示例

在开发者工具中预览效果

swan.ai.faceSearch - 图2请使用百度APP扫码

图片示例

swan.ai.faceSearch - 图3

swan.ai.faceSearch - 图4

swan.ai.faceSearch - 图5

代码示例

  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. });

返回示例

  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. }