如果图像仅包含字母或数字,如何从图像中读取文本

时间:2018-04-03 12:47:49

标签: python image-processing python-imaging-library pytesser

我需要从图像中获取文本,但在我的图像中它只有一个数字,它可以是1-9之间的任何东西,我需要得到该数字。我正在使用pytesseract来做这个,但在阅读时它显示空文本。 以下是我的形象:

Single alphabet/number image

以下是我正在尝试的内容:

from PIL import Image, ImageEnhance, ImageFilter
import pytesseract


def getText(image):
    image = Image.open(image)
    image.show()
    image = image.point(lambda x: 0 if x < 143 else 255)  # To clean Image
#     text = pytesseract.image_to_string(image).encode('utf-8').strip()
    text = pytesseract.image_to_string(image)
    return text


image1 = '/home/einfochips/Documents/Kroger_Automation_Framework/src/main/scripts/background.png'
txt1 = getText(image1)
print txt1, '_______________', type(txt1), len(txt1)

1 个答案:

答案 0 :(得分:0)

您需要设置psm值。默认情况下,值为模式0(我相信)。

这对我有用 text = pytesseract.image_to_string(Image.open(filename),config='--psm 10')