[小项目]python3+pytesseract:OCR——识别验证码中红色字符(附完整代码)

一、环境安装

  1. 安装python环境,我这里是直接安装使用的Anaconda,python3.5是的版本,这一步的安装可以参考我之前的一篇文章,里面第一部分详细介绍了Anaconda的安装,[Windows]环境安装——tensorflow,keras,openCV。
  2. 安装pytesseract:pip install pytesseract
  3. 安装Java8
  4. 安装Tesseract(我用的版本是3.05.01)
    安装tesseract时,记得添加第一个环境变量在path中(第二行),第二个环境变量是自己新建的。
    [小项目]python3+pytesseract:OCR——识别验证码中红色字符(附完整代码)_第1张图片
    [小项目]python3+pytesseract:OCR——识别验证码中红色字符(附完整代码)_第2张图片
  5. 安装jTessBoxEditor(训练工具)

二、识别红色字符

下图是我之前做这个小程序的时候自己总结画的流程图,但是一不小心语言包名字写错了…但是已经做成图片了就懒得改了,打了个马赛克,实际我训练完的语言包名字叫red。

[小项目]python3+pytesseract:OCR——识别验证码中红色字符(附完整代码)_第3张图片
图(1)提取红色部分的流程图

提取红色的部分,我用的方法是控制HSV范围值

def clear_image(image):
    lower_blue=np.array([0,43,46])
    upper_blue=np.array([30,255,255])
    frame = image
    hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
    mask = cv2.inRange(hsv, lower_blue, upper_blue)
    image = cv2.bitwise_and(frame, frame, mask=mask)
    return image

[小项目]python3+pytesseract:OCR——识别验证码中红色字符(附完整代码)_第4张图片
图(2)我在网上找的HSV的颜色数值范围

三、识别的整个流程图

[小项目]python3+pytesseract:OCR——识别验证码中红色字符(附完整代码)_第5张图片

四、代码

这里有利用python3和pytesseract实现识别验证码中红色字符的完整代码(代码下载链接)准确率有百分之70(我自己附带数据)

[小项目]python3+pytesseract:OCR——识别验证码中红色字符(附完整代码)_第6张图片

你可能感兴趣的:(小项目)