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

 更新时间:2024年10月24日 11:52:19   作者:for(::)  
Tesseract 是一个开源的光学字符识别(OCR)引擎,它能够识别多种语言的文本,可将扫描文档、图像中的文字提取并转换为计算机可编辑的文本格式,本文给大家介绍了python使用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字符识别内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python实现双向链表原理

    python实现双向链表原理

    这篇文章主要为大家详细介绍了python实现双向链表原理,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05
  • 基于keras 模型、结构、权重保存的实现

    基于keras 模型、结构、权重保存的实现

    今天小编就为大家分享一篇基于keras 模型、结构、权重保存的实现,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • Python使用scipy进行曲线拟合的方法实例

    Python使用scipy进行曲线拟合的方法实例

    这篇文章主要给大家介绍了关于Python使用scipy进行曲线拟合的相关资料,Scipy优化和拟合采用的是optimize模块,该模块提供了函数最小值(标量或多维)、曲线拟合和寻找等式的根的有用算法,需要的朋友可以参考下
    2022-05-05
  • PPOCRLabel标注的txt格式如何转换成labelme能修改的json格式

    PPOCRLabel标注的txt格式如何转换成labelme能修改的json格式

    这篇文章主要介绍了PPOCRLabel标注的txt格式如何转换成labelme能修改的json格式问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • python 遍历可迭代对象的实现方法

    python 遍历可迭代对象的实现方法

    本文主要介绍了python 遍历可迭代对象的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • Python基础教程之Pandas数据分析库详解

    Python基础教程之Pandas数据分析库详解

    Pandas是一个基于 NumPy 的非常强大的开源数据处理库,它提供了高效、灵活和丰富的数据结构和数据分析工具,本文中,我们将学习如何使用Pandas来处理和分析数据,感兴趣的小伙伴跟着小编一起来看看吧
    2023-07-07
  • 使用 Python 遍历目录树的方法

    使用 Python 遍历目录树的方法

    这篇文章主要介绍了使用 Python 遍历目录树的方法,文中给大家提到了Python os.walk() 函数的相关知识,通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2020-02-02
  • python双向队列deque的使用

    python双向队列deque的使用

    本文主要介绍了python双向队列deque的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • 解决Pytorch中的神坑:关于model.eval的问题

    解决Pytorch中的神坑:关于model.eval的问题

    这篇文章主要介绍了解决Pytorch中的神坑:关于model.eval的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • 浅析Python语言自带的数据结构有哪些

    浅析Python语言自带的数据结构有哪些

    Python已经广泛的应用于数据分析、数据挖掘、机器学习等众多科学计算领域,这篇文章主要介绍了Python语言自带的数据结构有哪些?需要的朋友可以参考下
    2019-08-08

最新评论