Pytesseract没有从图像的一部分获取文本

时间:2018-05-24 05:11:36

标签: python python-imaging-library pytesser

我有以下图像,我想从其中包含的表中获取信息。我设法从第一和第三列获取信息。但是,我不能让pytesseract与第二列一起使用。 enter image description here

这是我的代码:

from PIL import Image, ImageDraw, ImageFilter
import pytesseract

im = Image.open(image_address)

# First Column, WORKING
box_1 = (100, 435, 800, 490)
a = im.crop(box_1)
pytesseract.image_to_string(a)

# Second Column, NOT WORKING
box_2 = (810, 445, 1200, 490)
a = im.crop(box_2)
pytesseract.image_to_string(a)

我试图删除灰色背景,但它无法正常工作

#Remove gray background, NOT WORKING    
gray = a.convert('L')
bw_a = gray.point(lambda x: 0 if x<128 else 255, '1')
pytesseract.image_to_string(bw_a)

我也试过扩张,但它没有用

## Dilation
filter_a= bw_a.filter(ImageFilter.MinFilter(3))
pytesseract.image_to_string(filter_a)

但是,如果我转到第三栏,它正在运作

# Third Column, WORKING
box_3 = (1230, 445, 1500, 490)
a = im.crop(box_3)
pytesseract.image_to_string(a)

有什么想法吗?

0 个答案:

没有答案