最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Java通过百度API实现图片车牌号识别代码示例
时间:2022-06-29 02:21:09 编辑:袖梨 来源:一聚教程网
本篇文章小编给大家分享一下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");
// 传入可选参数调用接口
HashMap options = 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,相当于传递两次,图片太大的话会造成访问过慢,用户体验不好。但是图片过小、分辨率压缩的过低,又会降低识别成功率。所以这里对处理图片的参数设置需要自己去把握,更好的平衡利弊。
相关文章
- dnf幽暗岛奖励大全 幽暗岛奖励掉落有哪些 11-30
- dnf第6套天空套幻魅外观大全 第6期稀有装扮幻魅外观汇总 11-30
- dnf撕碎的衣角怎么获得 撕碎的衣角掉落地图介绍 11-30
- dnf铭刻在迷雾中的足迹隐藏任务触发条件攻略 铭刻足迹于迷雾中者声誉获得方法 11-30
- dnf阿拉德萌动小兽通行券宠物属性介绍 11-30
- dnf阿拉德萌动小兽通行券全奖励内容及价格一览 11-30
