Python图像(字母数字)识别

本文只针对数字或字母验证码识别

准备工具

    tesseract-ocr-w64-setup-v4.1.0.20190314.exe pip install pytesseract pip install pillow 中文包

tesseract-ocr和中文包的下载连接: 链接:链接:https://pan.baidu.com/s/1r_LZKRXBT2Ffp7QrYQwOSA?pwd=junm 提取码:junm

安装好tesseract,记住安装的所在位置

如D:Program FilesTesseract-OCR

解压中文包的压缩包

解压中文包的压缩包,将压缩包里面格式为.traineddata的文件复制在安装目录里边tessdata的文件夹下,如D:Program FilesTesseract-OCR essdata这下面就行了。

配置tesseract的环境变量

第一个: TESSDATA_PREFIX —> 你安装的路径,比如 D:Program FilesTesseract-OCR 第二个: 在path里面新建一个 你安装的路径,比如 D:Program FilesTesseract-OCR

查看版本

win+R输入cmd打开命令行工具,输入tesseract -v

查看一安装好的语言包

win+R输入cmd打开命令行工具,输入tesseract --list-langs

修改pytesseract.py文件,指定tesseract.exe安装路径

# CHANGE THIS IF TESSERACT IS NOT IN YOUR PATH, OR IS NAMED DIFFERENTLY
tesseract_cmd = C:\Program Files (x86)\Tesseract-OCR\tesseract.exe‘
#就是你安装的位置

代码实例

-psm 参数

0:定向脚本监测(OSD)
1: 使用OSD自动分页
2 :自动分页,但是不使用OSD或OCR(Optical Character Recognition,光学字符识别)
3 :全自动分页,但是没有使用OSD(默认)
4 :假设可变大小的一个文本列。
5 :假设垂直对齐文本的单个统一块。
6 :假设一个统一的文本块。
7 :将图像视为单个文本行。
8 :将图像视为单个词。
9 :将图像视为圆中的单个词。
10 :将图像视为单个字符。

通过测试,如果验证码全为数字,准确率比较高,字母识别的准确率稍低

经验分享 程序员 微信小程序 职场和发展