百度AI开发引用官方SDK

前言
http://ai.baidu.com/tech/face/collect AI开发平台
在这里插入图片描述需要注册用户,用户分为个人或企业
在这里插入图片描述在这里插入图片描述
在License管理中新增授权。

(1)授权标识:最好是取你应用的英文名称。

(2)应用类型:选择一个跟你应用一样的类型即可。

(3)应用信息:如果是先弄Android的话把iOS的勾去掉,反正后续iOS也可以补充信息的。

(4)安卓包名:app目录下的build.gradle中的applicationId  或者  manifest.xml中的package。

(5)安卓签名MD5:你应用所创建的key.jks,且key.jks存放的目录放置和app同等级。具体如何取出key.jks的md5值请看Android studio 上获取应用签名文件(keystore文件)的MD5值。
注意:由于Android Studio不断的更新版本,获取项目MD5值有所变动,我教大家一个快捷的方式,如下图:

在这里插入图片描述![在这里插入图片描述](https://img-blog.csdnimg.cn/20200419165510149.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2NoZW5neHV5dWFuMjI=,size_16,color_FFFFFF,t_70
在这里插入图片描述在这里插入图片描述每个依赖包需要相互引用,方便协调不同模块的代码
在项目的app主模板中新建一个类:
public class FaceSDKManagerUtils {
private static class FaceSDKManagerHolder {
private static final FaceSDKManagerUtils INSTANCE = new FaceSDKManagerUtils();
}

public static FaceSDKManagerUtils getInstance() {
    return FaceSDKManagerHolder.INSTANCE;
}

public void FaceSDKInit(Activity context) {
    FaceSDKManager.getInstance().initialize(context, Config.licenseID, Config.licenseFileName);
}

public void FaceSDKForClockConfig() {
    FaceConfig config = FaceSDKManager.getInstance().getFaceConfig();
    List<LivenessTypeEnum> livenessList = new ArrayList<LivenessTypeEnum>();
    livenessList.clear();
    livenessList.add(LivenessTypeEnum.Eye);
    //SDK初始化已经设置完默认参数(推荐参数),您也根据实际需求进行数值调整
    config.setLivenessTypeList(livenessList);
    config.setLivenessRandom(false);
    config.setBlurnessValue(FaceEnvironment.VALUE_BLURNESS);
    config.setBrightnessValue(FaceEnvironment.VALUE_BRIGHTNESS);
    config.setCropFaceValue(FaceEnvironment.VALUE_CROP_FACE_SIZE);
    config.setHeadPitchValue(FaceEnvironment.VALUE_HEAD_PITCH);
    config.setHeadRollValue(FaceEnvironment.VALUE_HEAD_ROLL);
    config.setHeadYawValue(FaceEnvironment.VALUE_HEAD_YAW);
    config.setMinFaceSize(FaceEnvironment.VALUE_MIN_FACE_SIZE);
    config.setNotFaceValue(FaceEnvironment.VALUE_NOT_FACE_THRESHOLD);
    config.setOcclusionValue(FaceEnvironment.VALUE_OCCLUSION);
    config.setCheckFaceQuality(true);
    config.setFaceDecodeNumberOfThreads(2);
    FaceSDKManager.getInstance().setFaceConfig(config);
}

public void FaceSDKForCollectConfig() {
    FaceConfig config = FaceSDKManager.getInstance().getFaceConfig();
    config.setSound(false);
    List<LivenessTypeEnum> livenessList = new ArrayList<LivenessTypeEnum>();
    livenessList.clear();
    livenessList.add(LivenessTypeEnum.Eye);
    livenessList.add(LivenessTypeEnum.HeadLeft);
    livenessList.add(LivenessTypeEnum.HeadRight);
    config.setLivenessTypeList(livenessList);
    config.setLivenessRandom(false);
    config.setBlurnessValue(FaceEnvironment.VALUE_BLURNESS);
    config.setBrightnessValue(FaceEnvironment.VALUE_BRIGHTNESS);
    config.setCropFaceValue(FaceEnvironment.VALUE_CROP_FACE_SIZE);
    config.setHeadPitchValue(FaceEnvironment.VALUE_HEAD_PITCH);
    config.setHeadRollValue(FaceEnvironment.VALUE_HEAD_ROLL);
    config.setHeadYawValue(FaceEnvironment.VALUE_HEAD_YAW);
    config.setMinFaceSize(FaceEnvironment.VALUE_MIN_FACE_SIZE);
    config.setNotFaceValue(FaceEnvironment.VALUE_NOT_FACE_THRESHOLD);
    config.setOcclusionValue(FaceEnvironment.VALUE_OCCLUSION);
    config.setCheckFaceQuality(true);
    config.setFaceDecodeNumberOfThreads(2);
    FaceSDKManager.getInstance().setFaceConfig(config);
}

}
还需要一个配置文件类
licenseFileName:表示在官网上申请的文件名
licenseID:你申请证书的ID
在这里插入图片描述需要在进入AI的上一个类中调用此工具类
在这里插入图片描述ok,以上就是AI的SDK离线使用

发布了16 篇原创文章 · 获赞 3 · 访问量 962

猜你喜欢

转载自blog.csdn.net/chengxuyuan22/article/details/105617629