我有一个收据图像,我正在尝试使用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()
目前没有回答
相关问题 更多 >
编程相关推荐