gpt4 book ai didi

python - 如何在Python中使用tesseract ocr获取结构形式的信息?

转载 作者:行者123 更新时间:2023-12-02 16:24:40 25 4
gpt4 key购买 nike

我正在使用Ubuntu。

这是我从互联网上获得的图片。

我关心的是获取图像中格式化的数据

并将其转储到文本文件中(必须保持位置(准确度为95-97%))

我正在使用tesseract-ocr

enter image description here

Image-2

almost same question is here

我的代码-:

import cv2
import pytesseract
from pytesseract import Output
import numpy as np

img = cv2.imread("/demo.jpg")

d1 = pytesseract.image_to_data(img)

print(d1)


这完全给了我我期望的错误输出

简而言之,我想将此图像(具有对齐方式)转换为文本文件(或CSV文件)。

在Advacne中感谢

最佳答案

您可以在HOCR中使用tesseract输出来保留位置信息。将这些类型的文档直接转换为保留位置信息的文本是一个非常棘手的难题。我可以为您提供一个中间解决方案,该解决方案可以为您提供一个包含每个单词及其坐标的数据框,以便您可以解析它以使用坐标提取键值信息。

### this will save the tesseract output as "demo.hocr" 
pytesseract.pytesseract.run_tesseract(
"demo.jpg", "demo",
extension='.html', lang='eng', config="hocr")

HOCR是一种类似HTML的表示形式,其中包含许多元数据,例如行信息,单词信息,其坐标等。
为了更好地处理,我有一个解析器将直接对其进行解析,并为您提供一个包含单词及其坐标的数据框。
为此,我在pip中创建了一个名为 tesseract2dict的包。
您可以使用 pip install tesseract2dict轻松安装它
这就是您可以使用的方式。
import cv2
from tesseract2dict import TessToDict
td=TessToDict()
inputImage=cv2.imread('path/to/image.jpg')
### function 1
### this is for getting word level information as a dataframe
word_dict=td.tess2dict(inputImage,'outputName','outfolder')

### function 2
### this is for getting plain text for a given coordinates as (x,y,w,h)
text_plain=td.word2text(word_dict,(0,0,inputImage.shape[1],inputImage.shape[0]))

PS:此软件包仅与Tesseract 5.0.0兼容

关于python - 如何在Python中使用tesseract ocr获取结构形式的信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62172144/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com