使用pytess的段落边界框

2024-06-07 10:40:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个收据图像,我正在尝试使用Pytesseract来在收据文本的段落周围绘制边界框。问题是,Tesseract是根据字母而不是每个块来标识边界框的区域。在

我也知道Tesseract的不同页面分割模式,尽管我尝试过所有这些模式,但都没有奏效。我有什么遗漏吗?在

到目前为止,我一直在努力:

import cv2
import pytesseract
import matplotlib.pyplot as plt

filename = 'optimized_scanned_images/test1.jpg'
img = cv2.imread(filename)
h, w, _ = img.shape
boxes = pytesseract.image_to_boxes(img, config='-psm 5 load_system_dawg = False load_freq_dawg=False')

for b in boxes.splitlines():
    b = b.split(' ')
    img = cv2.rectangle(img, (int(b[1]), h - int(b[2])), (int(b[3]), h - int(b[4])), (0, 255, 0), 1)

fig, ax = plt.subplots(figsize=(10, 6))
ax.imshow(img)
ax.set_axis_off()
plt.tight_layout()
plt.show()

Tags: importimg模式loadpltaxfilenamecv2

热门问题