JAVA人脸识别(人脸对比)
人脸对比
进入百度人脸识别技术文档
把AuthService 类和FaceMatch 类复制出来
复制出来之后还需要把AuthService 类和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 * 下载 */
把4个java文件下载下来和AuthService 类和FaceMatch 类放在一起就可以了
在maven的xml里面 导入
<!-- https://mvnrepository.com/artifact/com.google.code.gson/gson --> <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.8.6</version> </dependency> <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20160810</version> </dependency>
在AuthService 类里面需要修改AK和SK
创建完项目以后点开项目,就可以在项目内看见了。 注意:access_token的有效期为30天,切记需要每30天进行定期更换,或者每次请求都拉取新token;
具体操作如下:
AuthService 类只需要替换AK和SK就可以了 FaceMatch 类里需要传入俩张图片并且把图片转为BASE64类型,然后再转为JSON 就可以使用HttpUtil类的post方法来比较两张图片的相似性。 FileUtil工具类里面有readFileByBytes方法,传入图片地址,输出一个byte[]数组,byte[]数组内装的就是转为字节的图片 我们只需要image和image_type 上图的json格式可以看作map,image就是键,后面的BASE64就是值 而整个就像是一个数组把多个map装入 但我们需要把byte[]设置转为BASE64,而在Base64Util工具类里面有encode方法可以把byte[]数组转为BASE64 然后我们需要把他们转为JSON,那怎么转? 在GsonUtils工具类里面有一个方法toJson 就可以帮我们转JSON 最后只需要用HttpUtil工具类的post方法就可以得出对比的值了 输出 我们也可以创建JSON对象来直接取出对比出的值 输出 如果还报错可能是这里 复制的地址可能会出错
上一篇:
IDEA上Java项目控制台中文乱码