当前位置: 代码网 > it编程>前端脚本>Python > python使用tesseract实现字符识别功能

python使用tesseract实现字符识别功能

2024年10月24日 Python 我要评论
介绍tesseract 是一个开源的光学字符识别(ocr)引擎,它能够识别多种语言的文本,可将扫描文档、图像中的文字提取并转换为计算机可编辑的文本格式。1. 安装tesseract首先到下列地址处,下

介绍

tesseract 是一个开源的光学字符识别(ocr)引擎,它能够识别多种语言的文本,可将扫描文档、图像中的文字提取并转换为计算机可编辑的文本格式。

1. 安装tesseract

首先到下列地址处,下载tesseract安装程序,并安装。

tesseract下载地址(第三方非官网)

https://digi.bib.uni-mannheim.de/tesseract/

安装完成后,进入安装目录找到tesseract.exe,并且拷贝路径,然后到编译器编写python代码。

2. 编写python代码

import cv2
import pytesseract

# 指定 tesseract-ocr 可执行文件的路径
pytesseract.pytesseract.tesseract_cmd = "d:\\computer_vision_lib\\tesseract-ocr5.3\\tesseract.exe"

# 选择一张要识别的字符图片
img = cv2.imread("test.png")
img = cv2.cvtcolor(img, cv2.color_bgr2rgb)

# 使用 tesseract-ocr 进行文字识别,并返回识别到的字符
print(pytesseract.image_to_string(img))
print('--'*10)

# 获取每个字符的边界框的坐标
print(pytesseract.image_to_boxes(img))

himg, wimg, _ = img.shape
boxes = pytesseract.image_to_boxes(img)
for b in boxes.splitlines():
    b = b.split(' ')
    x, y, w, h = int(b[1]), int(b[2]), int(b[3]), int(b[4])
    cv2.rectangle(img, (x, himg - y), (w, himg - h), (0, 0, 255), 3)
    cv2.puttext(img, b[0], (x, himg - y + 25), cv2.font_hershey_complex, 1, (50, 50, 255), 2)

cv2.imshow("image", img)
cv2.waitkey(0)

执行截图如下:

到此这篇关于python使用tesseract实现字符识别功能的文章就介绍到这了,更多相关python tesseract字符识别内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com