Python 图片文字识别

前言

最近一段时间比较忙,一直没有更新文章了。最近这两天,有一点空闲的时间,想到做一些东西。

一直对 Python 有一些爱好,也一直在写一些,想着就来做一些图像识别这一块的。

今天就先做一个图像文字识别的示例。

一、准备

做图像文字识别,是需要一些文字识别的引擎,对于这些 ORC 可以自己查资料看看。

在这里用的 ORC 是 tesseract-ocr ,所以要准备一些安装包。

Windows 下的 ORC 安装包:

1、tesseract-ocr-w64-setup-v4.1.0.20190314.exe (官方没有提供,从第三方下载exe);

2、语言包,默认是支持英文的,所以对于中午识别要下载语言包:chi_tra.traineddata、chi_sim.traineddata;

这些下载地址在 GitHub 上面都有,这里也把地址贴出来:

https://digi.bib.uni-mannheim.de/tesseract/(安装包)

https://github.com/tesseract-ocr/tessdata (语言包)

不过这些国外网站,在没有FQ下载太慢了。

下载完成后放到百度网盘:链接: https://pan.baidu.com/s/1phRCtsv3FKNORfOEvt9L1g 提取码: 4mcf 复制这段内容后打开百度网盘手机App,操作更方便哦

 

下面就是安装 Python 包了:

pytesseract 是 tesseract-ocr 的 API 包,安装了引擎需要用这个包进行调用。

Python 3.x

pip install pytesseract
pip install pillow

Python 2.x

pip install pytesseract
pip install PIL

二、安装配置环境

安装完 ORC 引擎后,需要配置环境变量,并把语言包拷贝到安装目录下。

1、安装完成后,添加环境变量

如我的安装路径:C:\Program Files\Tesseract-OCR 添加到 Path 中,在 cmd 中 输入 tesseract -v ,出现版本情况即安装成功。

2、配置语言包

拷贝下载的语言包到:C:\Program Files\Tesseract-OCR\tessdata 路径下

3、修改 pytesseract 源码

在源码中会配置 tesseract-ocr 的路径,源码位置:C:\Python\Python37\Lib\site-packages\pytesseract (根据自己安装位置来)

修改 tesseract_cmd  为:tesseract_cmd = r'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe' (根据自己安装位置)

到这来就完成了安装与配置

三、示例

先上一段代码

# -*- coding: utf-8 -*-
# author: ZHT
# 图像识别初识

import pytesseract
from PIL import Image

image = Image.open('ImageIdentification/test.png')
code = pytesseract.image_to_string(image, lang="chi_sim+eng")
print(code)

代码是成功了,也输出了,但是识别率不行啊 !!

汉字中没有特殊字符的、不带英文的、字体较规范的,识别还是挺好的。

posted @ 2019-10-16 13:33  漠里  阅读(6525)  评论(0编辑  收藏  举报