序言:我们在读一些PDF版书籍的时候,如果PDF中不是图片,做起读书笔记的还好;如果PDF中的是图片的话,根本无法编辑,做起笔记来,还是很痛苦的。我是遇到过了。我们搞技术的,当然得自己学着解决现在的痛点。

一. 现状

为了不重复造轮子,当然得看看现在市面上是否有已经实现过的,如果有,那自然是拿来即用。

首先,说说一些在线版的PDF图片转文字,对文件大小有限制为2M(似乎有很多的文件处理都是限制在这个数),超过了便要收费了。

第二,那就是WPS的PDF图片转文字了。别说大小限制了,直接是收费。

二. 方案实现

2.1 百度AI平台 获取AppID, API Key, Secret Key

该平台限制调用次数, 作为个人开发者来说,基本上是够用了。

Java SDK文档使用说明: https://ai.baidu.com/docs#/OCR-Java-SDK/top

不清楚的,可以去看文档。

2.2 代码实现

逻辑思路: 读取PDF文件,然后读取PDF中包含的图片,将图片传给百度AI平台去进行识别,返回结果解析。

第一步:新建一个Demo的Maven工程

省略....(相信大家都会哈)

利用百度AI OCR图片识别,Java实现PDF中的图片转换成文字的更多相关文章

  1. Java - 将vCard中十六进制编码转换成Unicode

    做课程设计的时候在处理vCard格式的时候遇到过出现十六进制编码的情况,例如 QUOTED-PRINTABLE:=XX=XX=XX=XX=XX`````` 其中XX代表十六进制数,当然,也有可能在末尾 ...

  2. java 把URL中的中文转换成utf-8编码

    private static final String QUERY = "餐饮"; String sr = URLEncoder.encode(QUERY); System.out ...

  3. Java 添加、替换、删除PDF中的图片

    概述 本文介绍通过java程序向PDF文档添加图片,以及替换和删除PDF中已有的图片.另外,关于图片的操作还可参考设置PDF 图片背景.设置PDF图片水印.读取PDF中的图片.将PDF保存为图片等文章 ...

  4. 利用百度接口进行人脸识别并保存人脸jpg文件

    利用百度接口进行人脸识别,根据返回的人脸location用opencv切割保存. # coding : UTF-8 from aip import AipFace import cv2 import ...

  5. selenium自动化 | 借助百度AI开放平台识别验证码登录职教云

    #通过借助百度AI开放平台识别验证码登录职教云 from PIL import Image from aip import AipOcr import unittest # driver.get(zj ...

  6. Python人工智能之图片识别,Python3一行代码实现图片文字识别

    1.Python人工智能之图片识别,Python3一行代码实现图片文字识别 2.tesseract-ocr安装包和中文语言包 注意:

  7. Java 添加、提取PDF中的图片

    Spire.Cloud.SDK for Java提供了PdfImagesApi接口可用于添加图片到PDF文档addImage().提取PDF中的图片extractImages(),具体操作步骤和Jav ...

  8. 采用 ITextPDF 类库测试向 PDF 中加入图片的示例

    package com.smbea.image; import com.artup.util.image.ImageUtil; import com.itextpdf.text.*; import c ...

  9. java中汉字自动转换成拼音

    java中汉字自动转换成拼音 1.需要下载jar包 pinyin4j.2.5.0.jar ,加入到WEB-INF下的lib里边,右键add to bulid path. 2.[代码]PinYinUti ...

随机推荐

  1. Windows Azure之Mobile Service

    我建个android app和Windows Azure的Mobile Service配合,以实现会员注册的功能,实际十分简单,微软家的东西真心好用 首先新建个Mobile Service New-& ...

  2. 树莓派 Qt5.7交叉编译

    一.准备软件    1.2016-11-25-raspbian-jessie.img(官网下载)    2.cross-compile-tools-master.zip    3.gcc-4.7-li ...

  3. 開發PlainTasks與JSON的插件

    PlainTasks 是款很有名的任務管理插件,具體的介紹在這裡. 我最近的工作作務,是開發一款插件,能實現 JSON 文件到 todo 類文件的轉換. JSON 的格式是這樣的 1: { 2: &q ...

  4. qt获得本地IP的方法,qt中域名解析的方法

    本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 环境:Ubuntu10.04 + Qt4.7.0 Linux获得本地IP的方法,我尝试了两种 1.用QH ...

  5. Google C++测试框架系列入门篇:第二章 开始一个新项目

    上一篇:Google C++测试框架系列入门篇:第一章 介绍:为什么使用GTest? 原始链接:Setting up a New Test Project 词汇表 版本号:v_0.1 开始一个新项目 ...

  6. python中的内置函数(bytearray)

    返回一个新的字节数组.bytearray类是range 0 < = x < 256的一个可变序列.它有大多数可变序列的常用方法,在可变序列类型中描述,以及大多数字节类型的方法,参见字节和B ...

  7. Linux上整数和浮点数的运算

    一:shell中对整数和浮点数的运算     常用的运算符号         加法+    减法 -     乘法*     除法/     求余%              +=        -= ...

  8. DNS查询命令

    dig(domain information groper)是一个在类Unix命令行模式下查询DNS,包括NS记录,A记录,MX记录等相关信息的工具 一.简单介绍使用dig命令查询DNS的方法 dig ...

  9. 升级vue全家桶过程记录

    背景 如果你使用了element-ui的el-tabs组件,并且想要单独升级element-ui至2.10.0,你会发现,使用了el-tabs组件的页面只要打开就卡死.原因是element-ui~2. ...

  10. DNS之主服务器正向区域部署流程

    正向区域:将域名解析为IP 搭建步骤 1)定义区域 2)编写区域解析库文件 3)添加记录 环境介绍 [root@dns ~]# cat /etc/centos-releaseCentOS releas ...