欢迎访问宙启技术站
智能推送

使用pytesseract在Python中提取图片中的文字

发布时间:2023-12-26 08:29:22

pytesseract是一个Python库,可以方便地使用Tesseract OCR(光学字符识别)引擎来提取图像中的文本。以下是一个使用pytesseract的示例代码:

import pytesseract
from PIL import Image

# 1. 定义图像文件路径
image_path = 'path/to/image/file.jpg'

# 2. 打开图像文件
image = Image.open(image_path)

# 3. 使用pytesseract提取文本
text = pytesseract.image_to_string(image)

# 4. 打印提取的文本
print(text)

上述示例中,我们首先导入了pytesseract库和PIL库,然后定义了图像文件的路径。接下来,我们使用Image.open()函数打开图像文件,并将其赋值给变量image。最后,我们使用pytesseract.image_to_string()函数,将image作为参数传递进去,并将返回的文本赋值给变量text。最后,我们使用print()函数将提取的文本打印出来。

确保在运行上述示例代码前,已经安装了pytesseract库和Tesseract OCR引擎,以及相应的语言数据文件。还可以通过设置tesseract_cmd变量来指定Tesseract OCR引擎的路径,例如:

pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe'

此外,还可以通过传递其他参数给image_to_string()函数来进行更精确的文本提取,例如:

text = pytesseract.image_to_string(image, lang='eng', config='--psm 6')

上述示例中,我们通过lang参数指定了要使用的语言(英语),并通过config参数传递了额外的配置参数(--psm 6表示将图像视为一个单词进行识别)。具体的参数和配置选项可以参考pytesseract的文档。

需要注意的是,Tesseract OCR的识别结果可能受到图像质量、文字样式和布局等因素的影响,因此在实际应用中,可能需要进行图像预处理、调整参数等操作,以获得更好的识别效果。