如何从图像中提取表格

7

我想从图片中提取表格。这个Python模块 https://pypi.org/project/ExtractTable/ 和它们的网站 https://www.extracttable.com/pro.html 做得非常好,但是他们只提供了有限的免费试用。我尝试了很多方法,但结果非常不令人满意。那个网站/Python模块是如何生成100%准确的表格的呢?解决方案应该适用于这个驱动器链接上提供的3张图片 https://drive.google.com/drive/folders/1v3UDuR7dUFVMR1im7VHTXKqkxTIV9px9?usp=sharing

下面是我尝试过的性能较差的方法。帮助我像那个模块一样提取表格。

import cv2 as cv
import numpy as np
import pytesseract
from pytesseract import Output
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"] = (120,16)

ebl='data/manu.png'
ROI_number=0
image = cv.imread(ebl)
original=image
gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY)
custom_config = r'--oem 3 --psm 6'
details = pytesseract.image_to_data(gray, output_type=Output.DICT, config=custom_config, lang='eng')

total_boxes = len(details['text'])
for sequence_number in range(total_boxes):
    if int(details['conf'][sequence_number]) >30:
        (x, y, w, h) = (details['left'][sequence_number], details['top'][sequence_number], details['width'][sequence_number],  details['height'][sequence_number])
        threshold_img = cv.rectangle(original, (x, y), (x + w, y + h), (0, 255, 0), 2)

        
plotting = plt.imshow(threshold_img)
plt.show()
1个回答

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接