Python中实现的基于pytesseract的中文图片OCR文字识别程序
发布时间:2023-12-26 08:32:34
以下是一个使用Python和pytesseract实现的中文图片OCR文字识别程序的例子。
import cv2
import pytesseract
def ocr(image_path):
# 读取图片
image = cv2.imread(image_path)
# 图像预处理
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) # 转换为灰度图像
thresh = cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY_INV + cv2.THRESH_OTSU)[1] # 二值化
# OCR识别
text = pytesseract.image_to_string(thresh, lang='chi_sim') # 使用中文简体模型识别
return text
# 使用例子
if __name__ == '__main__':
image_path = 'example.png' # 图片路径
text = ocr(image_path)
print(text)
在上述例子中,首先导入cv2和pytesseract库。然后定义了一个ocr函数,该函数接收图片路径作为参数,并返回识别的文字。
在ocr函数中,首先使用cv2.imread读取图片。随后进行图像预处理,包括转换为灰度图像和二值化处理。最后使用pytesseract.image_to_string函数进行OCR识别,默认使用中文简体模型。
在使用例子中,指定图片路径为example.png,然后调用ocr函数进行文字识别,并将识别结果打印出来。
需要注意的是,为了能够正确识别中文,需要提前安装tesseract软件和tesseract的中文简体模型,并将其配置好。具体安装和配置步骤可以参考pytesseract的官方文档。
