接口文档

1. MNFCService

  • 类名:MNFCService
  • 功能:主要服务功能
  • 使用:全局单例,在使用时通过MNFCService.getInstance()即可

1.1. 方法

  • 初始化
public void init(context, "xxxxxx");//context 为上下文,建议传入application,"xxxx"为appId,注册获得
  • 预加载(推荐在使用扫脸功能前提前调用)
/**
* 预加载本扫脸功能所需要的资源
*/
public void preloadResource();
  • 扫脸认证
/**
  * 开启静态扫脸认证
  *
  * @param activity    发起页面的activity
  * @param requestCode 请求码,用于判断onActivityResult返回值
  */
public void startSilentCertification(Activiti activity,int requestCode);
/**
  * 开启静态扫脸认证
  *
  * @param fragment    发起页面的fragment
  * @param requestCode 请求码,用于判断onActivityResult返回值
  */
public void startSilentCertification(Fragment fragment,int requestCode);
/**
  * 开启配合式扫脸认证
  *
  * @param activity    发起页面的activity
  * @param requestCode 请求码,用于判断onActivityResult返回值
  */
public void startInteractiveCertification(Activiti activity,int requestCode);
/**
  * 开启配合式扫脸认证
  *
  * @param fragment    发起页面的fragment
  * @param requestCode 请求码,用于判断onActivityResult返回值
   */
public void startInteractiveCertification(Fragment fragment,int requestCode);
/**
  * 开启配合式扫脸认证
  *
  * @param activity    发起页面的activity
  * @param requestCode 请求码,用于判断onActivityResult返回值
  * @param config 配置,可以设置认证页面的title,配合认证动作数量(3~6个动作)
  */
public void startInteractiveCertification(Activiti activity,int requestCode, Config config);
/**
  * 开启配合式扫脸认证
  *
  * @param fragment    发起页面的fragment
  * @param requestCode 请求码,用于判断onActivityResult返回值
  * @param config 配置,可以设置认证页面的title,配合认证动作数量(3~6个动作)
  */
public void startInteractiveCertification(Fragment fragment,int requestCode, Config config);
  • 获取结果
/**
* 通过onActivityResult中的intent,来获取返回结果
*
* @param intent onActivityResult中的intent
* @return CertificationResult 结果类,包含人脸的personId及返回码,
*   返回码在com.immomo.mncertification.constance.MNFCResultCode中枚举
*/
public CertificationResult fetchResult(Intent intent);
  • 人脸对比

识别图片中的人物与指定 personId 的人物的相似度

/**
* 通过图片url进行人脸比对
* @param imgUrl 图片的url
* @param personId 需要对比的人的id
* @param callback 结果回调
*/
public void comparePersonWithUrl(String imgUrl, final String personId, final OnCompareResultCallback callback)/**
* 通过图片进行人脸比对
* @param imgFile 图片文件
* @param personId 需要对比的人的id
* @param callback 结果回调
*/
public void comparePersonWithImg(File imgFile, final String personId, final OnCompareResultCallback callback)
  • 人脸搜索

从指定集合中搜索出与图片中人物相似度高于某值的前N个人物

/**
  * 通过图片url来进行搜索
  *
  * @param setId     搜索集合
  * @param url       图片url
  * @param topN      搜索得到的前topN项结果
  * @param threshold 相似度阈值(相似度0~1,一般0.5~0.6即认为是同一个人)
  * @param callback  结果回调
  */
 public void seachPersonByUrl(String setId, String url, int topN, float threshold, final OnSearchResultCallback callback);

/**
  * 通过图片url来进行搜索
  *
  * @param setId     搜索集合
  * @param imgFile   图片文件
  * @param topN      搜索得到的前topN项结果
  * @param threshold 相似度阈值(相似度0~1,一般0.5~0.6即认为是同一个人)
  * @param callback  结果回调
  */
public void seachPersonByImg(final String setId, File imgFile, final int topN, final float threshold, final OnSearchResultCallback callback);

参数说明:

名称 类型 说明
setId String 集合ID
threshold float 查询相似度阈值,0~1
topN int 需要返回结果的数量
callback OnSearchCallback 结果回调

2. CertificationResult

成员

  • personId 人的唯一id
  • resultCode 结果错误码

3. CompareResult

成员

  • resultCode 错误码

  • score 相似度

  • beautyScore 颜值分

  • personId 人的唯一id

  • qualityCode 人脸质量错误码

4. SearchResult

成员

  • resultCode 错误码

    需要注意,携带错误码时,不一定没有结果,比如一张图片多张人脸,会提示用户有多张人脸,但是还是会以最大人脸返回结果

  • persons 描述匹配到的人的集合,person中有personId跟score匹配分数

  • beautyScore 颜值分

  • qualityCode 人脸质量错误码

5. MNFCResultCode

  • 功能:调用api返回onFailure时错误码对照表
    int SUCCESS = 0;//成功
    int ERROR_LOCAL_SERVICE = 1001;// 本地异常
    int ERROR_NETWORK = 1002;// 网络异常
    int ERROR_INVALID_APPID = 1003;// 无效的AppId
    int ERROR_SERVER = 1004;//服务器异常
    int ERROR_IN_BLACKLIST = 1005;//敏感人物及其他过滤集合

    // 真人注册时会返回的错误
    int ERROR_USER_CANCELED = 2001;// 用户手动取消
    int ERROR_TIME_OUT = 2002;// 检测超时
    int ERROR_NOT_LIVENESS = 2003;// 非活体
    int ERROR_FACE_CHANGED = 2004;// 人脸改变
    int ERROR_FACE_LOSED = 2005;// 人脸丢失
    int ERROR_FAILED_TOO_MANY_TIMES = 2006;// 动作检测失败次数过多
    int ERROR_PERMISSION_CAMERA_NOT_DENIED = 2007;    // 无相机权限
    int ERROR_PERMISSION_SDCARD_NOT_DENIED = 2008;    // 无sd卡权限
    int ERROR_USER_BACKGROUND = 2009;    // 用户进后台
    int ERROR_BASE_FACE_INVALID = 2010;    // base脸不合格
    int ERROR_IMG_INVALID_ERROR = 3001;    // 图片拉取失败
    int ERROR_PERSON_ID_INVALID_ERROR = 3002;    // personId无效
    int ERROR_SET_ID_INVALID_ERROR = 3003;    // setId无效

6. MNFCQualityCode

  • 功能:调用1:1及1:N 时返回人脸质量错误码对照
    int NORMAL = 0;
    int NOFACE = 50; // 无脸
    int MULTI = 51; // 多个人脸
    int SMALL = 52; // 面积太小
    int OCC = 53; // 遮挡
    int NOTFRONT = 54; // 大侧脸
    int BLUR = 55; // 模糊
    int DARK = 56; // 太暗
    int LIGHT = 57; // 过曝
    int HICONTRAST = 58; // 对比度过高
    int LIGHTSPOT = 59; // 有光斑
@Copyright © cosmos 2019 all right reserved,powered by Gitbook修订时间: 2020-01-15 11:09:14

results matching ""

    No results matching ""