java 获取百度云盘图片_java 利用百度云识别图片文字
一、百度云使用步骤
1.进入https://console.bce.baidu.com/#/index/overview 登录百度云账号。百度所有账号都是通用的,可以直接利用百度的其他账号(百度网盘、百度贴吧等)进行登录。没有可以进行注册。进入到如下界面,登录成功后,滑动到页面最下边。
首页.png
2.选择文字识别
文字识别.png
选中文字识别进入到如下页面。
文字识别详情.png
3.在应用列表下,创建应用
应用.png
这里需要注意,如果你的是android或者Ios应用则需要把包名和应用名与你填写的保持一致。
4.创建成功后就可以看到我们所需要的API Key和Secret Key 。
成功.png
百度云识别图片文字所需要的API Key 和Secrect Key已经获取成功,下面开始进行图片文字识别的实现。
二、程序设计
1、下载所需要的jar包,在百度云官网下载http://ai.baidu.com/sdk#ocr。选择文字识别中的 java SDK 进行下载。解压后获取到所需要的jar包。http://ai.baidu.com/docs#/OCR-Java-SDK/top 可参考该页面的使用步骤。
api
2、新建一个java工程。
初始化一个AipOcr
* 初始化AipOcr
* @param appId
* @param apiKey
* @param secretKey
* @return
*/
public static AipOcr getAipOCR(String appId,String apiKey,String secretKey){
AipOcr api = null;
if(appId == null || appId.trim().length() == 0
|| apiKey == null || apiKey.trim().length() == 0
|| secretKey == null || secretKey.trim().length() == 0)
{
logger.info("appID or apiKey or secretKey is error! ");
return api;
}
api = new AipOcr(appId, apiKey, secretKey);
return api;
}
通用文字识别的方法(识别本地图片上的文字)
/**
* 识别本地图片文字
* @param imgUrl
* @return
*/
public static String getOCRText(String imgUrl){
String ocrText = null;
String appId = "你的 App ID";
String apiKey = "你的 Api Key" ;
String secretKey = "你的 Secret Key";
AipOcr api = getAipOCR(appId, apiKey, secretKey);
if(api == null ){
logger.warn("api is null,unable to continue!");
return ocrText;
}
HashMap options = new HashMap();
options.put("detect_direction", "true");
options.put("probability", "true");
options.put("recognize_granularity", "big");
options.put("vertexes_location", "true");
JSONObject res = api.basicAccurateGeneral(imgUrl, options);
if(res == null || res.length() == 0){
ocrText = "There is no text in this picture.";
return ocrText;
}
JSONArray dataArray = res.getJSONArray("words_result");
System.out.println(dataArray);
JSONObject jsonData;
if(dataArray == null || dataArray.length() == 0){
ocrText = "There is no text in this picture.";
return ocrText;
}
for (int i = 0; i < dataArray.length(); i++) {
jsonData = dataArray.getJSONObject(i);
if(jsonData != null){
ocrText += jsonData.getString("words");
}else {
ocrText += "There is no text in this picture.";
}
}
return ocrText;
}
测试图片
test1.png
测试结果
result1.png
/**
* 识别网络图片上的文字
* @param imgUrl
* @return
*/
public static String getOCR(String imgUrl){
String ocrWord="";
if(!imgUrl.startsWith("http"))
return ocrWord;
String appId = "你的 App ID";
String apiKey = "你的 Api Key" ;
String secretKey = "你的 Secret Key";
AipOcr api = getAipOCR(appId, apiKey, secretKey);
if(api == null ){
logger.warn("api is null,unable to continue!");
return ocrWord;
}
HashMap options = new HashMap();
options.put("detect_direction", "true");
options.put("detect_language", "true");
JSONObject res = api.webImageUrl(imgUrl, options );
JSONArray dataArray = res.getJSONArray("words_result");
JSONObject jsonData;
for (int i = 0; i < dataArray.length(); i++) {
jsonData = dataArray.getJSONObject(i);
if(jsonData != null)
ocrWord += jsonData.getString("words");
}
return ocrWord;
}
result2.png
java 获取百度云盘图片_java 利用百度云识别图片文字相关推荐
- python利用百度云接口实现文字OCR功能
python利用百度云接口实现文字OCR功能 1. 前言 在日常生活中有时我们需要从图片中获取文字,虽然QQ上面已经有了相关的功能,但是出于学习的目的,我打算利用百度智能云的文字OCR接口来实现OCR ...
- 【Java 代码实例 11】利用百度语音识别技术实现文字转语音的应用
- python—简单数据抓取四(利用超级鹰的ocr识别图片验证码模拟登录超级鹰网站、利用百度云的ocr识别自如租房网价格图片获取到自如网的价格)
学习目标: python学习二十四 -简单数据抓取四 学习内容: 1.利用超级鹰的ocr识别图片验证码模拟登录超级鹰网站 2.利用百度云的ocr识别自如租房网的价格图片,获取到自如网的价格数据 1.利 ...
- 百度人脸识别技术应用003---百度云离线SDK_Android版_功能分析_获取摄像头视频流中的图片_发给百度人脸识别API_识别搜索_或先同步百度云人脸信息_然后本地人脸识别
1.基于上一节,我们已经把百度云上的人脸库,建好了,然后我们可以从,百度云官网拿到, 离线人脸识别的SDK. SDK下载_文字识别SDK_语音识别SDK-百度AI开放平台 这里可以点进去下载 2.然后 ...
- java做百度语言识别_java实现百度云文字识别接口代码
java实现百度云文字识别接口代码 发布时间:2020-09-16 13:35:23 来源:脚本之家 阅读:52 作者:syy363250763 本文实例为大家分享了java实现百度云文字识别的接口具 ...
- java 图像识别包_Java基于百度API的图片文字识别免费源码和jar包
1.准备工作(jdk1.8) 使用之前需要获取对应的项目API_KEY,SECRET_KEY,这些参数在使用API的时候必须用到,用于生成access_token. 如何获取这些参数? 登陆后创建一个 ...
- 利用百度云API接口上传照片进行植物识别
第一步还是引库,确定自己安装过这些库了,没有安装的需要自行安装 import requests import base64 import os #os库是下面多张图片进行识别的,如果一次识别一张图片就 ...
- python代码示例百度云-python利用百度云接口实现车牌识别的示例
一个小需求---实现车牌识别. 目前有两个想法 1. 调云在线的接口或者使用SDK做开发(配置环境和编译第三方库很麻烦,当然使用python可以避免这些问题) 2. 自己实现车牌识别算法(复杂) 一开 ...
- python不调包实现sobel_python利用百度云接口实现车牌识别的示例
一个小需求---实现车牌识别. 目前有两个想法 1. 调云在线的接口或者使用SDK做开发(配置环境和编译第三方库很麻烦,当然使用python可以避免这些问题) 2. 自己实现车牌识别算法(复杂) 一开 ...
最新文章
- 《kafka中文手册》-快速开始(二)
- 通过代码来调用log4net写日志
- iOS 正则表达式使用的三种方式语法
- 使用 Visual Studio Code SQLite 扩展来浏览 SAP Cloud Application Programming 数据库
- VMware vSphere 6.7主机与虚拟机高级管理
- vscode输入vue自动_使用vscode,新建.vue文件,tab自动生成vue代码模板
- Netty工作笔记0007---NIO的三大核心组件关系
- 前端性能优化的常用手段
- Java NIO 详解(二)
- plusgantt的项目管理系统实战开发最全课程
- 烂泥:apache虚拟主机的学习与应用
- HTML——网页设计基础
- STM32读取HMC5883L的偏航角数据
- Python基础语法详解
- 科学家们认为 计算机不可能,健汉语语法与中国人的思维能力
- 线性丢番图方程的C++实现
- 动手学深度学习(文本预处理+语言模型+循环神经网络基础)
- 朱晔的互联网架构实践心得S2E2:写业务代码最容易掉的8种坑
- ltv价值 应用_手游LTV(用户终生价值)计算公式
- 前端 sqllite sql.js