龙空技术网

java调用第三方API实现文字识别技术功能

梦幻烈日下的花 816

前言:

此时兄弟们对“java识别文字”大约比较讲究,大家都需要学习一些“java识别文字”的相关文章。那么小编在网摘上收集了一些对于“java识别文字””的相关知识,希望看官们能喜欢,看官们快快来了解一下吧!

ocr文字识别

java 使用API文字识别技术先要下载Aip-java-sdk.jar fastjson.jar log4j.jar三个包文件,新建一个java 应用程序项目,新建lib目录吧包文件拷贝进来,并且把包文件加进项目的编译包。

ocr文字识别技术如下:

public class baiduOcr {

/**

* 获取权限token

* @return 返回示例:

* {

* "access_token": "24.c9303e47f0729c40f2bc2be6f8f3d589.2592000.1530936208.282335-1234567",

* "expires_in":2592000

* }

*/

public static String getAuth() {

// 官网获取的 API Key

String clientId = "API Key";

// 官网获取的 Secret Key

String clientSecret = "Secret Key";

return getAuth(clientId, clientSecret);

}

/**

* 获取API访问token

* 该token有一定的有效期,需要自行管理,当失效时需重新获取.

* @param ak - 百度云的 API Key

* @param sk - 百度云的 Securet Key

* @return assess_token 示例:

* "24.c9303e47f0729c40f2bc2be6f8f3d589.2592000.1530936208.282335-1234567"

*/

public static String getAuth(String ak, String sk) {

// 获取token地址

String authHost = "?";

String getAccessTokenUrl = authHost

// 1. grant_type为固定参数

+ "grant_type=client_credentials"

// 2. 官网获取的 API Key

+ "&client_id=" + ak

// 3. 官网获取的 Secret Key

+ "&client_secret=" + sk;

try {

URL realUrl = new URL(getAccessTokenUrl);

// 打开和URL之间的连接

HttpURLConnection connection = (HttpURLConnection) realUrl.openConnection();

connection.setRequestMethod("POST");//百度推荐使用POST请求

connection.connect();

// 获取所有响应头字段

Map<String, List<String>> map = connection.getHeaderFields();

// 定义 BufferedReader输入流来读取URL的响应

BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));

String result = "";

String line;

while ((line = in.readLine()) != null) {

result += line;

}

System.err.println("result:" + result);

JSONObject jsonObject = JSONObject.parseObject(result.toString());

String access_token = jsonObject.getString("access_token");

return access_token;

} catch (Exception e) {

System.err.printf("获取token失败!");

e.printStackTrace(System.err);

}

return null;

}

还有另一种方式 实现,这里不写出来。项目运行效果如下:

java文字识别程序运行效果

标签: #java识别文字