本篇文章小编给大家分享一下Java通过百度API实现图片车牌号识别代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
根据百度的文档描述,初步明确需要的几个参数为:
1、应用的API Key
2、应用的Secret Key
3、access_token
4、图片数据
首先导入maven依赖
com.baidu.aip java-sdk 4.11.3
设置你从百度API官网拿到的秘钥
//设置APPID/AK/SK private static final String APP_ID = "填写你的APP_ID"; private static final String API_KEY = "填写你的API_KEY "; private static final String SECRET_KEY = "填写你的SECRET_KEY ";
下面是具体实现代码
/** * * @param img 图片的字节流 * @return number 车牌号 */ public static String plateLicense(byte[] img) { // 初始化一个AipOcr AipOcr client = new AipOcr(APP_ID, API_KEY, SECRET_KEY); // 可选:设置网络连接参数 client.setConnectionTimeoutInMillis(2000); client.setSocketTimeoutInMillis(60000); // 可选:设置代理服务器地址, http和socket二选一,或者均不设置 // client.setHttpProxy("proxy_host", proxy_port); // 设置http代理 //client.setSocketProxy("proxy_host", proxy_port); // 设置socket代理 // 可选:设置log4j日志输出格式,若不设置,则使用默认配置 // 也可以直接通过jvm启动参数设置此环境变量 System.setProperty("aip.log4j.conf", ExportWordUtil.class.getResource("/").getPath() +"/log4j.properties"); // 传入可选参数调用接口 HashMapoptions = new HashMap (); options.put("multi_detect", "false"); // 调用接口 JSONObject res = client.plateLicense(img, options); try { System.out.println(res.toString(2)); if(res.get("words_result") != null) { String number = res.getJSONObject("words_result").getString("number"); //System.out.println(number); return number; }else{ //失败打印错误信息 System.out.println(res.getString("error_msg")); } } catch (JSONException e) { //异常信息 System.out.println(e.getMessage()); } return null; }
注意事项:
1、access_token有有效期,需要定期更换。
2、图片大小限制(分辨率、字节数)。
后台发起请求获取车牌号,一张图片从前台传到后台,再调用百度API,相当于传递两次,图片太大的话会造成访问过慢,用户体验不好。但是图片过小、分辨率压缩的过低,又会降低识别成功率。所以这里对处理图片的参数设置需要自己去把握,更好的平衡利弊。
茶杯头甜蜜终章dlc 官方手机版v1.0.0.3
下载火柴人传说暗影格斗内置菜单 最新版v3.0.1
下载荒野乱斗测试服 安卓版v61.10.3
下载荒野乱斗彩虹服 安卓版v61.10.3
下载寒霜启示录 安卓版v1.25.10
寒霜启示录是一款生存模拟游戏,不少玩家可能对于末日都有着自己
末日城堡免广告版 安卓最新版v0.7.1
末日城堡免广告版是一款非常好玩的模拟经营类游戏,内部可以不看
甜蜜人生模拟器 最新版v1.4.5
甜蜜人生模拟器是一款非常好玩的模拟恋爱手游,玩家在这里能够对
武器锻造师内置功能菜单 v10.4
武器锻造师内置菜单版是游戏的破解版本,在该版本中为玩家提供了
开放空间overfield 安卓版v1.0.5
开放空间Overfield是一款箱庭养成经营手游,让你在广阔