java实现人脸识别V3版本开发

简介: java实现人脸识别V3版本开发

     有段时间没有写更新公众号了,也许好多人都忘记了自己还关注了这么个公众号。

     

   因为这段时间确实是有其他的事比较忙,还有一个原因就是自己在技术方面没有学习新的东西,所以没有可更新的(包括博客)

   今天,我决定更新一下,内容主要为:java实现人脸识别使用百度API接口V3版本,主要功能实现了人脸注册,人脸搜索(人脸登陆),人脸检测

       以前做出来的是V2版本的,那是207年的事了,时隔2018年一年,为什么现在才更新呢,这里我解释一下,说实话,我存在点私心,因为V2版本的代码只能v2的key来完成,而百度方面升级了之后用户创建的均为V3的key。我以前写的代码(博客里面的代码)都是v2的代码,其他人要想测试效果只能从我这要key,我会让他们关注我的公众号获取(因为当时做人脸识别的时候费了好多精力,不想一下子就分享给别人),所以通过这种简单的交易来成全双方的。

   现在我想重新开发v3的版本,在分享给别人,取长补短,使得自己的技术更能得到提升,故此公开v3的源码:

人脸检测:

public static void face_jiance(AipFace client) {

   // 传入可选参数调用接口

   HashMap<String, String> options = new HashMap<String, String>();

   options.put("face_field", "age");

   options.put("max_face_num", "2");

   options.put("face_type", "LIVE");

   File directory = new File("");// 参数为空

       String courseFile="";

try {

courseFile = directory.getCanonicalPath();

//获取当前项目的根路径

       //System.out.println(courseFile);

   String image = courseFile+"/WebRoot/picture/111.jpg";

   String imageType = "BASE64";

   //转换格式

   String strImageToBase64 =ImageToBase64(image);

   //输出base64图像数据

       //System.out.println("本地图片转换Base64:"+strImageToBase64);

   // 人脸检测

   JSONObject res = client.detect(strImageToBase64,imageType, options);

   System.out.println(res.toString(2));

} catch (IOException e) {

// TODO 异常执行块!

e.printStackTrace();

}

}

人脸注册:

public static void face_reg(AipFace client) {

   // 传入可选参数调用接口

   HashMap<String, String> options = new HashMap<String, String>();

   options.put("user_info", "user's info");

   String groupId = "group1";

   String userId = "user1";

   File directory = new File("");// 参数为空

       String courseFile="";

try {

courseFile = directory.getCanonicalPath();

//获取当前项目的根路径

       //System.out.println(courseFile);

String image = courseFile+"/WebRoot/picture/111.jpg";

String imageType = "BASE64";

   //转换格式

   String strImageToBase64 =ImageToBase64(image);

   //输出base64图像数据

       //System.out.println("本地图片转换Base64:"+strImageToBase64);

   // 人脸注册

   JSONObject res = client.addUser(strImageToBase64, imageType, groupId, userId, options);

   System.out.println(res.toString(2));

   

} catch (IOException e) {

// TODO 异常执行块!

e.printStackTrace();

}

}

人脸登陆:

public static void face_login(AipFace client) {

   // 传入可选参数调用接口

   HashMap<String, String> options = new HashMap<String, String>();

   options.put("user_id", "user1");

   File directory = new File("");// 参数为空

       String courseFile="";

       String groupIdList = "group1";

try {

courseFile = directory.getCanonicalPath();

//获取当前项目的根路径

       //System.out.println(courseFile);

String image = courseFile+"/WebRoot/picture/222.jpg";

String imageType = "BASE64";

   //转换格式

   String strImageToBase64 =ImageToBase64(image);

   //输出base64图像数据

       //System.out.println("本地图片转换Base64:"+strImageToBase64);

   // 人脸搜索

   JSONObject res = client.search(strImageToBase64, imageType, groupIdList, options);

   System.out.println(res.toString(2));

   

} catch (IOException e) {

// TODO 异常执行块!

e.printStackTrace();

}

}

相关文章
|
1天前
|
Java 应用服务中间件 API
【潜意识Java】javaee中的SpringBoot在Java 开发中的应用与详细分析
本文介绍了 Spring Boot 的核心概念和使用场景,并通过一个实战项目演示了如何构建一个简单的 RESTful API。
19 5
|
1天前
|
前端开发 Java 数据库连接
【潜意识Java】深度解读JavaWeb开发在Java学习中的重要性
深度解读JavaWeb开发在Java学习中的重要性
18 4
|
1天前
|
SQL Java API
|
1天前
|
前端开发 Java 数据库连接
Java后端开发-使用springboot进行Mybatis连接数据库步骤
本文介绍了使用Java和IDEA进行数据库操作的详细步骤,涵盖从数据库准备到测试类编写及运行的全过程。主要内容包括: 1. **数据库准备**:创建数据库和表。 2. **查询数据库**:验证数据库是否可用。 3. **IDEA代码配置**:构建实体类并配置数据库连接。 4. **测试类编写**:编写并运行测试类以确保一切正常。
10 2
|
27天前
|
移动开发 前端开发 Java
Java最新图形化界面开发技术——JavaFx教程(含UI控件用法介绍、属性绑定、事件监听、FXML)
JavaFX是Java的下一代图形用户界面工具包。JavaFX是一组图形和媒体API,我们可以用它们来创建和部署富客户端应用程序。 JavaFX允许开发人员快速构建丰富的跨平台应用程序,允许开发人员在单个编程接口中组合图形,动画和UI控件。本文详细介绍了JavaFx的常见用法,相信读完本教程你一定有所收获!
Java最新图形化界面开发技术——JavaFx教程(含UI控件用法介绍、属性绑定、事件监听、FXML)
|
13天前
|
监控 JavaScript 数据可视化
建筑施工一体化信息管理平台源码,支持微服务架构,采用Java、Spring Cloud、Vue等技术开发。
智慧工地云平台是专为建筑施工领域打造的一体化信息管理平台,利用大数据、云计算、物联网等技术,实现施工区域各系统数据汇总与可视化管理。平台涵盖人员、设备、物料、环境等关键因素的实时监控与数据分析,提供远程指挥、决策支持等功能,提升工作效率,促进产业信息化发展。系统由PC端、APP移动端及项目、监管、数据屏三大平台组成,支持微服务架构,采用Java、Spring Cloud、Vue等技术开发。
|
1月前
|
存储 JavaScript 前端开发
基于 SpringBoot 和 Vue 开发校园点餐订餐外卖跑腿Java源码
一个非常实用的校园外卖系统,基于 SpringBoot 和 Vue 的开发。这一系统源于黑马的外卖案例项目 经过站长的进一步改进和优化,提供了更丰富的功能和更高的可用性。 这个项目的架构设计非常有趣。虽然它采用了SpringBoot和Vue的组合,但并不是一个完全分离的项目。 前端视图通过JS的方式引入了Vue和Element UI,既能利用Vue的快速开发优势,
130 13
|
1月前
|
算法 Java API
如何使用Java开发获得淘宝商品描述API接口?
本文详细介绍如何使用Java开发调用淘宝商品描述API接口,涵盖从注册淘宝开放平台账号、阅读平台规则、创建应用并申请接口权限,到安装开发工具、配置开发环境、获取访问令牌,以及具体的Java代码实现和注意事项。通过遵循这些步骤,开发者可以高效地获取商品详情、描述及图片等信息,为项目和业务增添价值。
87 10
|
1月前
|
前端开发 Java 测试技术
java日常开发中如何写出优雅的好维护的代码
代码可读性太差,实际是给团队后续开发中埋坑,优化在平时,没有那个团队会说我专门给你一个月来优化之前的代码,所以在日常开发中就要多注意可读性问题,不要写出几天之后自己都看不懂的代码。
67 2
|
1月前
|
JavaScript 安全 Java
java版药品不良反应智能监测系统源码,采用SpringBoot、Vue、MySQL技术开发
基于B/S架构,采用Java、SpringBoot、Vue、MySQL等技术自主研发的ADR智能监测系统,适用于三甲医院,支持二次开发。该系统能自动监测全院患者药物不良反应,通过移动端和PC端实时反馈,提升用药安全。系统涵盖规则管理、监测报告、系统管理三大模块,确保精准、高效地处理ADR事件。