Java通過百度API實現(xiàn)圖片車牌號識別
本代碼功能是通過調用百度API實現(xiàn)的,所有你需要去百度API官網申請下你的API Key 以及Secret Key才能使用它的功能哦!
擬采用百度AI實現(xiàn)該功能(http://ai.baidu.com/docs#/OCR-API/5116ac95)
根據(jù)百度的文檔描述,初步明確需要的幾個參數(shù)為:
1、應用的API Key
2、應用的Secret Key
3、access_token
4、圖片數(shù)據(jù)
首先導入maven依賴
<dependency> <groupId>com.baidu.aip</groupId> <artifactId>java-sdk</artifactId> <version>4.11.3</version> </dependency>
設置你從百度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 ";
下面是具體實現(xiàn)代碼
/** * * @param img 圖片的字節(jié)流 * @return number 車牌號 */ public static String plateLicense(byte[] img) { // 初始化一個AipOcr AipOcr client = new AipOcr(APP_ID, API_KEY, SECRET_KEY); // 可選:設置網絡連接參數(shù) client.setConnectionTimeoutInMillis(2000); client.setSocketTimeoutInMillis(60000); // 可選:設置代理服務器地址, http和socket二選一,或者均不設置 // client.setHttpProxy("proxy_host", proxy_port); // 設置http代理 //client.setSocketProxy("proxy_host", proxy_port); // 設置socket代理 // 可選:設置log4j日志輸出格式,若不設置,則使用默認配置 // 也可以直接通過jvm啟動參數(shù)設置此環(huán)境變量 System.setProperty("aip.log4j.conf", ExportWordUtil.class.getResource("/").getPath() +"/log4j.properties"); // 傳入可選參數(shù)調用接口 HashMap<String, String> options = new HashMap<String, String>(); 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、圖片大小限制(分辨率、字節(jié)數(shù))。
后臺發(fā)起請求獲取車牌號,一張圖片從前臺傳到后臺,再調用百度API,相當于傳遞兩次,圖片太大的話會造成訪問過慢,用戶體驗不好。但是圖片過小、分辨率壓縮的過低,又會降低識別成功率。所以這里對處理圖片的參數(shù)設置需要自己去把握,更好的平衡利弊。
到此這篇關于Java通過百度API實現(xiàn)圖片車牌號識別的文章就介紹到這了,更多相關Java 車牌號識別內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
關于JAVA_HOME路徑修改之后JDK的版本依然不更改的解決辦法
今天小編就為大家分享一篇關于JAVA_HOME路徑修改之后JDK的版本依然不更改的解決辦法,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-04-04Spring Cloud Stream分區(qū)分組原理圖解
這篇文章主要介紹了Spring Cloud Stream的分區(qū)和分組,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-03-03