阅读(498) (8)

百度智能小程序 人脸搜索

2020-08-13 16:01:27 更新

swan.ai.faceSearch

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

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

方法参数

Object object

object 参数说明

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

image

String

图片信息(总数据大小应小于 10M),图片上传方式根据 image_type 来判断。

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 分。

示例 

在开发者工具中打开



图片示例

代码示例

Page({
    faceSearch() {
        swan.chooseImage({
            success: res => {
                let imageTop = res.tempFilePaths[0];
                // let imageLeft = res.tempFilePaths[1];
                // let imageMid = res.tempFilePaths[2];
                // let imageRight = res.tempFilePaths[3];
                // AI系列的api有宿主使用限制,只可在百度App中使用,建议使用时加一层判断防止代码报未知错误
                let host = swan.getSystemInfoSync().host;
                if (host === 'baiduboxapp') {
                    swan.ai.faceSearch({
                        image,
                        image_type: 'BASE64',
                        group_id_list: 'imageLeft,imageMid,imageRight',
                        quality_control: 'NONE',
                        liveness_control: 'NONE',
                        face_type: 'LIVE',
                        user_id: 'xxxxxx',
                        max_user_num: 20,
                        success: res => {
                            console.log(res);
                        },
                        fail: err => {
                            console.log(err);
                        }
                    });
                }
                else {
                    swan.showToast({
                        title: '此api目前仅可在百度App上使用',
                        icon: 'none'
                    });
                }
            }
        });
    }
});

返回值示例

{
    "face_token": "fid",
    "user_list": [  
       {
          "group_id" : "test1",
          "user_id": "u333333",
          "user_info": "Test User",
          "score": 99.3  
      }
    ]
  }