python ocr 识别中文pdf_pytesseract识别PDF文件中的文字(OCR)

2023-05-16

前言:由于要利用一些比较老的文献中的数据,手工输入费时费力,于是乎找到了下面的方法。如果不差钱可以使用Adobe Acrobat Reader中的文字识别,也可以尝试其中的试用版。下面的方法完全室开源免费的方式。

1. 准备工作:安装程序、软件包、配置环境变量

平台:win10, python 3.7.3, spyder3.3.3

安装软件包(用conda):pdf2image, pytesseract, numpy

配置环境变量:安装完tesseract后将其安装路径添加到path环境变量。方法自己搜

2. 过程简介

(1) 用pdf2image中的convert_from_path将pdf文件转化为ppm文件(图片)

(2)用numpy.array将ppm文件转化为三维矩阵

(3) 用pytesseract.image_to_string识别图像矩阵中的文字

(4)输出文本信息,并进行校对,可以借助word等软件进行拼写检测

3. 实操

代码如下

import numpy as np

import pytesseract

from pdf2image import convert_from_path

def pdf_ocr(fname, **kwargs):

images = convert_from_path(fname, **kwargs)

text = ''

for img in images:

img = np.array(img)

text += pytesseract.image_to_string(img)

return text

fname = 'example.pdf'

# text = pdf_ocr(fname, first_page=7, last_page=8)

text = pdf_ocr(fname)

print(text)

4. 参考资料

吐槽一下知乎:发表文章时只有两个选项:1. 虚构;2. 不声明原创。

有时候明明时原创,而且不是虚构。要想声明原创就必须选则虚构——瞎编的。难道原创的都是瞎编的吗?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python ocr 识别中文pdf_pytesseract识别PDF文件中的文字(OCR) 的相关文章

随机推荐