今天主要对数字验证码识别,利用
pytesseract
百度一下python安装这个模块,另外这个模块需要下载Tesseract-OCR,对应的系统。
此外最好配置下环境变量,这样就可以直接在cmd中调用了。
python用 pytesseract 调用这个下载的识别exe,
from pytesseract import * if __name__ == '__main__': pytesseract.tesseract_cmd = "D:\software\Tesseract-OCR\\tesseract.exe" text = pytesseract.image_to_string("2.png") print(text)
由于 pytesseract.tesseract_cmd 这个是作者定义的常量,就是那个OCR的路径,自己把自己的填进去覆盖常量->如果没配置环境变量。
接下来对图像处理,让OCR更好的识别。
一般处理就这个步骤,,灰度->二值化->降噪->倾斜度->分割(大体处理顺序应该没关系)
我这边简单的处理了一下。自己不会写的也可以百度。
import cv2 from PIL import Image import numpy as np def imagePath(path): # 灰度处理 imageobject = cv2.imread(path) imageobject