热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

android快速接入第三方(face++旷视)人脸识别讲解!

    人脸识别是现在当下比较热门的也是应用场景比较多的技术,最近公司有一个项目中也需要用到人脸识别的人脸认证功能,开始摸索的时候是去各种官网找质料,却发现都无从下手。下面是告诉大

        人脸识别是现在当下比较热门的也是应用场景比较多的技术,最近公司有一个项目中也需要用到人脸识别的人脸认证功能,开始摸索的时候是去各种官网找质料,却发现都无从下手。下面是告诉大家如何能在最短的时间内去使用face++的人脸识别技术,少走弯路!

       接入后的效果图(结尾有demo附上请把文章看完)

《android 快速接入第三方(face++ 旷视)人脸识别 讲解!》

 

 

 一. 如何获取SDK(首先声明不管使用哪家的人脸识别技术都需要在相应的平台进行 企业认证  API调用申请 等步骤

         1.进入face++的官网看看     有2个官网 https://www.faceplusplus.com.cn/     //这个是百度上找的的网址

                                                                     https://faceid.com/                            //这个是联系工作人员给的网址

         2.在官网看个半天你会发现也看不出什么名堂,是的这时候应该去 https://faceid.com/  里面找到  联系我们 模块留下电话号码然后等工作人员会联系你(这个过程肯能会需要点等待时间)

         3.联系上工作人员后提交你公司的营业执照去进行 认证 申请API 什么的 (个人开发者去百度一个营业执照试试,别说是我说的)

         4.申请成功后工作人员会给你开个  https://faceid.com/  的账号  这个时候你就可以去 如下操作

《android 快速接入第三方(face++ 旷视)人脸识别 讲解!》

 

 二.SDK功能接入(到这里应该都拿到SDK了没拿到的记得联系face++的工作人员)

      1.跑通demo(我拿到的SDK包是v2版本的)

               SDK解压后会有如下两个demo,一个是身份证识别的,一个是活体检测的,我们想要的应该是Meglive(活体检测的那个demo)。

   《android 快速接入第三方(face++ 旷视)人脸识别 讲解!》

   

     2.添加依赖

  《android 快速接入第三方(face++ 旷视)人脸识别 讲解!》

     demo里面这么一个library,把这个接入到自己的工程里去。

3.获取face++的授权

String uuid = ConUtil.getUUIDString(this);
new Thread(new Runnable() {
@Override
public void run() {
Manager manager = new Manager(MainActivity.this);
LivenessLicenseManager licenseManager = new LivenessLicenseManager(MainActivity.this);
manager.registerLicenseManager(licenseManager);
manager.takeLicenseFromNetwork(uuid);
if (licenseManager.checkCachedLicense() > 0) {
//授权成功
mHandler.sendEmptyMessage(1);
}else {
//授权失败
mHandler.sendEmptyMessage(2);
}
}
}).start();

 

      4.调用 LivenessActivity进行活体检测

startActivityForResult(new Intent(WebViewActivity.this, LivenessActivity.class), PAGE_INTO_LIVENESS);

      5.在onActivityResult 回调里处理活体检测结果

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
//人脸识别功能页面跳转
if (requestCode == PAGE_INTO_LIVENESS && resultCode == RESULT_OK) {
// String result = data.getStringExtra("result");
// String delta = data.getStringExtra("delta");
// Serializable images=data.getSerializableExtra("images");
Bundle bundle=data.getExtras();
ResultActivity.startActivity(this, bundle);
}
}

    6.活体检测成功后在ResultActivity里面调用verify接口,进行身份验证

/**
* 如何调用Verify2.0方法 详细API字段请参考Verify文档描述
*/
public void imageVerify(Map images, String delta) {
String API_KEY = ""; //你的API_KEY
String API_SECRET = ""; //你的API_SECRET
RequestParams requestParams = new RequestParams();
requestParams.put("api_key", API_KEY);
requestParams.put("api_secret", API_SECRET);
requestParams.put("comparison_type", "1");
requestParams.put("face_image_type", "meglive");
requestParams.put("idcard_name", "姓名");
requestParams.put("idcard_number", "身份证号");
requestParams.put("delta", delta);
for (Map.Entry entry : images.entrySet()) {
requestParams.put(entry.getKey(),
new ByteArrayInputStream(entry.getValue()));
}
// try {
// requestParams.put("image_best", new File(bestPath));
// requestParams.put("image_env", new File(envPath));
// } catch (FileNotFoundException e) {
// e.printStackTrace();
// }
AsyncHttpClient asyncHttpClient = new AsyncHttpClient();
String url = "https://api.megvii.com/faceid/v2/verify";
asyncHttpClient.post(url, requestParams,
new AsyncHttpResponseHandler() {
@Override
public void onSuccess(int i, Header[] headers, byte[] bytes) {
//请求成功
if (bytes != null) {
String success = new String(bytes);
Log.e("TAG", "成功信息:" + success);
}
}
@Override
public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) {
// 请求失败
if (bytes != null) {
String error = new String(bytes);
Log.e("TAG", "失败信息:" + error);
} else {
Log.e("TAG", "失败信息:" + throwable);
}
}
});

     根据verify接口的返回值就就能知道对比的准确度了

    附上demo地址 https://download.csdn.net/download/csdn131488/10647744

    最后祝大家撸码愉快!


推荐阅读
author-avatar
诡道89_431
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有