百度人脸识别SDK
调用百度sdk进行人脸的录入,识别等操作。
使用的是java SDK ,这里给出说明文档地址:http://ai.baidu.com/docs#/BodyAnalysis-Java-SDK/top
这里贴出部分代码,参数参考说明文档即可,所有增删改查大多相同的做法。
//网络申请调用函数进行人脸识别 new Thread(new Runnable() { public void run() { // 初始化一个AipFace AipFace client=new AipFace("申请后分配的的APPID","申请后分配的Api key","申请后分配的Secret key"); // 传入可选参数调用接口 HashMap<String, String> options = new HashMap<String, String>(); options.put("user_info", user_info); options.put("quality_control", "NORMAL"); options.put("liveness_control", "LOW"); //image取决于image_type参数,传入BASE64字符串或URL字符串或FACE_TOKEN字符串,我这里传入BASE64字符串 String image = result; String imageType = "BASE64"; String groupId = groupid; String userId = id; /* 检测人脸是否存在 * 存在,返回该人脸已经存在 * 不存在,即插入*/ // 传入可选参数调用接口 HashMap<String, String> options1 = new HashMap<String, String>(); options1.put("quality_control", "NORMAL"); options1.put("liveness_control", "LOW"); options1.put("max_user_num", "1"); //从指定的group中进行查找 用逗号分隔,上限20个 String groupIdList = groupid; //这里对人脸先检索,是否已经录入,设置判定条件为返回score大于80即代表同一个人 res1 = client.search(result, imageType, groupIdList, options); if(getScore(res1)>80) { Looper.prepare(); Toast.makeText(InputActivity.this, "该人脸已存在!", Toast.LENGTH_SHORT).show(); Looper.loop(); }else{ // 人脸注册,返回代码0,即为录入成功 JSONObject res = client.addUser(image, imageType, groupId, userId, options); if(getCode(res).equals("0")){ Looper.prepare(); Toast.makeText(InputActivity.this, "录入成功!", Toast.LENGTH_SHORT).show(); Looper.loop(); } else { Looper.prepare(); Toast.makeText(InputActivity.this, "换个姿势,再试试吧", Toast.LENGTH_SHORT).show(); Looper.loop(); } }}).start();
//解析返回的人脸识别结果,返回识别分数,识别大于80则能录入 public float getScore(JSONObject res){ try{ JSONObject js = new JSONObject(res.optString("result")); JSONArray rs = new JSONArray(js.optString("user_list")); score =(float) rs.optJSONObject(0).optDouble("score"); }catch (Exception e){ e.printStackTrace(); } return score; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix