吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 12823|回复: 9
收起左侧

[Java 转载] 最简单调用百度OCR接口实现文字识别技术

[复制链接]
shao818 发表于 2018-11-13 08:52
本人之前在网上寻找OCR软件实现图片中的表格识别,结果不如人意,效果很差,接着在网上寻找调用百度OCR接口的例子,发现大多数冗余复杂,要么是模拟连接,其中主要首先获取token,然后将图片进行base64编码,最后发送请求,合起来代码有上百行,甚至有的例子中还用了网络爬虫的技术,模拟浏览器客户端行为,然而本人在百度api接口寻找,发现百度在jar中早已经写好方法,调用非常简单!
[Java] 纯文本查看 复制代码
package baiduocr;

import java.util.HashMap;
import org.json.JSONObject;
import com.baidu.aip.ocr.AipOcr;

public class ExcelHandler2 {
        //百度申请的APP_ID,API_KEY,SECRET_KEY
        public static final String APP_ID = "";
        public static final String API_KEY = "";
        public static final String SECRET_KEY = "";
        
        public static void main(String[] args) throws InterruptedException {
                //生成一个百度OCR Client
                AipOcr client = new AipOcr(APP_ID,API_KEY,SECRET_KEY);
                //设置请求的请求参数(此处为空)
                HashMap<String , String > options = new HashMap<String, String>();
                String image = "test.jpg";
                //放入请求解析的图片和map集合
                JSONObject res = client.tableRecognitionAsync(image, options);
                System.out.println(res.toString(2));
                //从返回的json结果中解析出requestId用于后面获取结果
                String requestId = (String)new JSONObject(res.toString(2)).getJSONArray("result").getJSONObject(0).get("request_id");
                System.out.println(requestId);
                int percent = 0;
                while(percent!=100){
                        //获取json格式的结果,请求的参数为空
                        JSONObject res2 = client.tableResultGet(requestId, new HashMap<String, String>());
                        JSONObject object = res2.getJSONObject("result");
                        percent = object.getInt("percent");
                        System.out.println("percent:"+percent+"%");
                        Thread.sleep(500);
                        if(percent==100){
                                //解析出结果中的地址,复制到浏览器下载即可
                                System.out.println(object.getString("result_data"));
                        }
                }
        }
}

具体使用方法可以在baidu官网中开发资源-SDK下载-使用说明中查看,以上是表格识别解决方案,json格式数据的解析自己了解!
1.png

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

px307 发表于 2018-11-13 09:33
楼主,请教一下,OCR接口实现文字识别率高不高
GoatKing 发表于 2018-11-13 09:54 来自手机
 楼主| shao818 发表于 2018-11-13 10:02
px307 发表于 2018-11-13 09:33
楼主,请教一下,OCR接口实现文字识别率高不高

用过许多成品OCR软件,百度接口用起来识别率已经算很高了!
jwxokok 发表于 2018-11-13 14:02
识别表格图片效果如何
 楼主| shao818 发表于 2018-11-13 14:05
jwxokok 发表于 2018-11-13 14:02
识别表格图片效果如何

比网上的大多数软件要好用
梦魇Sama 发表于 2018-11-13 18:40
可否识别繁体字段·!
梦魇Sama 发表于 2018-11-13 18:41
梦魇Sama 发表于 2018-11-13 18:40
可否识别繁体字段·!

例如竖向古文等。。。
 楼主| shao818 发表于 2018-11-13 19:01
梦魇Sama 发表于 2018-11-13 18:41
例如竖向古文等。。。

没试过 不知道
acdseev 发表于 2018-11-15 06:49
百度接口用起来识别率已经算很高
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 22:57

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表