开发环境:

运行平台:  win10

编程语言:python

IDE: pycharm

三方库模块:pytessseract、Tesseract-OCR

pytesseract库安装:

          打开cmd,执行安装命令:  pip --default-timeout=100 install pytesseract

如图:

tesseract-ocr库安装:

        pip install tesseract-ocr

pip安装可能容易失败,可自行下载安装包安装:http://www.pc0359.cn/downinfo/55218.html

安装好后,找到你的python安装路径(比如D:\Python\Lib\site-packages\pytesseract)下的pytesseract下的pytesseract.py,修改:tesseract_cmd = r'D:/Tesseract-OCR/tesseract.exe'  (红色部分是你刚才Tesseract-OCR的安装路径),改好后保存退出。

至此,三方库安装完成。

代码实现:

import cv2 as cv
from PIL import Image
import pytesseract as tess


def recognize_text(img):
    gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)
    ret,binary = cv.threshold(gray,0,255,cv.THRESH_BINARY_INV | cv.THRESH_OTSU)
    cv.imshow("binary", binary)

    # 此处可根据图像效果进行相应的形态学处理,再进行识别,提升准确率

    cv.bitwise_not(binary,binary)
    cv.imshow("dst_not",binary)

    textImg = Image.fromarray(binary)
    text = tess.image_to_string(textImg)
    print("识别结果:{}".format(text))


src = cv.imread("F:/workspace/pictures/digitals.png")
cv.imshow("src",src)

recognize_text(src)

cv.waitKey(0)

待识别图片:

识别结果:

从结果可以看到,识别效果不是很好,第三组第一个数字7误识别为了字母T,所有前期的图像处理需要做好,此处仅做个演示,具体改进就不再做了。 

 

GitHub 加速计划 / te / tesseract
60.1 K
9.29 K
下载
tesseract-ocr/tesseract: 是一个开源的光学字符识别(OCR)引擎,适用于从图像中提取和识别文本。特点是可以识别多种语言,具有较高的识别准确率,并且支持命令行和API调用。
最近提交(Master分支:2 个月前 )
bc490ea7 Don't check for a directory, because a symbolic link is also allowed. Signed-off-by: Stefan Weil <sw@weilnetz.de> 4 个月前
2991d36a - 4 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐