Java调用百度人脸对比接口进行人脸(图片)对比
前三步和人脸检测代码一样
在我上一篇博客地址链接:https://blog.csdn.net/weixin_45736927/article/details/104696428
第四步 Token和工具类准备完毕,写人脸对比代码
2张对比图片
FaceMatch类
import java.util.ArrayList;import java.util.HashMap;
import java.util.List;
import java.util.Map;public class FaceMatch{/*** 重要提示代码中所需工具类* FileUtil,Base64Util,HttpUtil,GsonUtils请从* https://ai.baidu.com/file/658A35ABAB2D404FBF903F64D47C1F72* https://ai.baidu.com/file/C8D81F3301E24D2892968F09AE1AD6E2* https://ai.baidu.com/file/544D677F5D4E4F17B4122FBD60DB82B3* https://ai.baidu.com/file/470B3ACCA3FE43788B5A963BF0B625F3* 下载*/public static String match(String imgPath1, String imgPath2) {// 请求urlString url = "https://aip.baidubce.com/rest/2.0/face/v3/match";try {// 【本地文件1地址】byte[] bytes1 = FileUtil.readFileByBytes(imgPath1);// 【本地文件2地址】byte[] bytes2 = FileUtil.readFileByBytes(imgPath2);String image1 = Base64Util.encode(bytes1);String image2 = Base64Util.encode(bytes2);List<Map<String, Object>> images = new ArrayList<>();Map<String, Object> map1 = new HashMap<>();//请求参数详情,看百度人脸对比开发文档//https://ai.baidu.com/ai-doc/FACE/Lk37c1tpfmap1.put("image", image1);map1.put("image_type", "BASE64");map1.put("face_type", "LIVE"); map1.put("quality_control", "LOW");map1.put("liveness_control", "NORMAL");Map<String, Object> map2 = new HashMap<>();map2.put("image", image2);map2.put("image_type", "BASE64");map2.put("face_type", "LIVE");map2.put("quality_control", "LOW");map2.put("liveness_control", "NORMAL");images.add(map1);images.add(map2);String param = GsonUtils.toJson(images);// 注意这里仅为了简化编码每一次请求都去获取access_token,线上环境access_token有过期时间, 客户端可自行缓存,过期后重新获取。// 【调用鉴权接口获取的token】String accessToken = FaceUtils.getAuth();String result = HttpUtil.post(url, accessToken, "application/json", param);return result;} catch (Exception e) {e.printStackTrace();}return null;}
}
Controller层(自己的api接口)
@Log("人脸对比")@AuthIgnore@PostMapping("getFaceDB")public R getFaceDB() throws Exception{//String filePath = new File("").getAbsolutePath();//System.out.println(filePath);String imgPath1="D:\\img\\111.jpg"; //本地路径String imgPath2="D:\\img\\222.jpg"; 本地路径String result = FaceMatch.match(imgPath1, imgPath2);System.out.println(result);String judge = "不是同一人";try {double score = new JSONObject(result).getJSONObject("result").getDouble("score");System.out.println("相似得分为:" + score);
// String judge = "不是同一人";// 阈值为80,高于80分判断为同一人if(score >= 80){judge = "同一人";}System.out.println("判断为:" + judge);} catch (JSONException e) {e.printStackTrace();}return R.ok(judge);}
第五步.调用Api接口,返回数据
Java调用百度人脸对比接口进行人脸(图片)对比相关推荐
- Java调用百度OCR文字识别API实现图片文字识别软件
java_baidu_ocr Java调用百度OCR文字识别API实现图片文字识别软件 这是一款小巧方便,强大的文字识别软件,由Java编写,配上了窗口界面 调用了百度ocr文字识别API 识别精度高 ...
- java调用百度内容审核接口检查文本
最近接到一个需求.要对用户输入的内容进行文本检查.不能输入一些敏感的内容.当时想着这个东西很简单.自己创建一个敏感词汇.使用过滤器对请求的内容进行过滤就好了.运行一段时间过后才发现.维护这个敏感词汇很 ...
- Java调用百度识别身份证接口
实现代码如下: private boolean getIdcard(Driver driver, String face, String accessToken) throws Exception { ...
- java ocr api_Java调用百度OCR文字识别API实现图片文字识别软件
Java调用百度OCR文字识别API实现图片文字识别软件 原创isinple 发布于2019-01-06 13:35:59 阅读数 1296 收藏 展开 java_baidu_ocr Java调用百度 ...
- 调用百度人脸识别接口实现人脸识别
调用百度人脸识别接口实现人脸识别 目标: 1.学习使用百度AI开放平台进行人脸识别 2.将学到的内容:JSON数据,HTTP API调用,base64图片编码与解码 import json impor ...
- 调用百度API,来实现人脸活体(人脸展示攻击)(人脸反欺骗)的实时检测
目录 一.登录百度API网站,申请API接口 二.创建应用列表,查看API Key 与 Secret Key 三.应用API Key 与 Secret Key,将模型部署在本地环境中 四.以视频流的方 ...
- THINKPHP6.02调用百度H5实名认证接口
THINKPHP6.02调用百度H5实名认证接口 1.首先你要有百度账号并通过实名认证 2.在人脸识别处新建应用,如下三张图所示: 你在你的账号能看到上面的三张图,证明你的前提工作已经准备好.下面是代 ...
- java调用百度地图API依据地理位置中文获取经纬度
百度地图api提供了非常多地图相关的免费接口,有利于地理位置相关的开发,百度地图api首页:http://developer.baidu.com/map/. 博主使用过依据地理依据地理位置中文获取经纬 ...
- Java调用百度AI实现人体属性分析
Java调用百度AI实现人体属性分析 好久没有更新了...闲来无事发一下模仿百度AI的人体属性分析. 百度AI效果图如下: 本人开发效果图如下: 界面大家可以忽略........下面讲讲代码实现 1. ...
- Java调用百度API实现图像识别
Java调用百度API实现图像识别 最近在做一个关于识别的小功能,翻阅了一堆资料,也实践自己去实现这个功能,最后识别的结果不是那么理想.这里介绍一个完全可以商用以及识别率超高的百度ai接口 1.为什么 ...
最新文章
- Framework 源码解析知识梳理(5) startService 源码分析
- xcode升级xcode9 1之后报错swift stdlib tool error
- argument type mismatch怎么解决_怎么做好GMAT 的CR?
- oracle extract类型,Oracle中extract()函数
- 周鸿祎:通过免费吸引用户不是万能 还需回归商业本质
- 【Java与智能设备】ch0501 Intent的使用
- C语言符号意思(看了必懂系列)
- 中南天坑专业到武大计算机的考研分享~
- C语言 段错误Segmentation Fault
- landsat 8 卫星 波段介绍 及组合
- 不是后端也应该知道的「 web 服务、子服务、服务的部署」
- Win10 打开heu kms activator工具进度条到70%闪退(未解决)
- XPO永久删除记录方法
- 计算机网络常见名词及其解释
- 停车还能360全方位影像_新款途锐2.0版、3.0版均能升级的原厂360全景影像及盲点辅助系统...
- 如何系统地学习计算机科学与技术?六步帮你轻松自学
- 亚马逊云科技 AI For Good-2022优秀方案开源分享——望楼
- STM32 Not a genuine ST Device! Abort connection 错误解决方案
- 电商项目之购物车设计
- mpvue框架开发小程序