python的Tesseract-OCR-04-识别,使用jTessBoxEditor 提高数字验证码识别准确率
文章目录
前言
第二次写博文了,也可以说是自己的学习笔记,希望对你们也有帮助,有问题有错误,欢迎指正,我都会一一更正,谢谢各位。
文章可能会稍微比较长,我会分成三个部分来介绍:训练图库的生成、训练图库、数字验证码的识别。
一、训练图库的生成
首先就是批量生成数字验证码这部分的操作以及代码的实现我都在我的另一个文章中写了,我就不过多赘述了,下面的链接就是了。
https://blog.csdn.net/weixin_46874767/article/details/111406957
1.生成训练图库
因为有之前的代码作为基础,所以可以接着之前已经编写过的代码直接生成批量的训练图像,因为数字验证码都带有噪点和噪线,所以需要进行形态学操作,将噪点和噪线去除掉。
代码最好是结合之前自动生成数字验证码一起来看,我这里就不贴出完整的代码,如果想要完整的代码可以直接在评论区那里说一下,也可以直接找我,
代码如下(示例):
# 读取图像以及二值化
image = cv.imread(r'G:\image1\noise_verification code\%s.png' %name, cv.IMREAD_GRAYSCALE)
ret, binary = cv.threshold(image, 225, 255, cv.THRESH_BINARY_INV)
#形态学操作
kernel = cv.getStructuringElement(cv.MORPH_RECT, (2, 2))
bin1 = cv.morphologyEx(binary, cv.MORPH_OPEN, kernel)
# cv.imshow('image1', bin1)
kernel = cv.getStructuringElement(cv.MORPH_RECT, (2, 2))
bin2 = cv.morphologyEx(bin1, cv.MORPH_CLOSE, kernel)
# cv.imshow('image2', bin2)
cv.waitKey(0)
cv.bitwise_not(bin2, bin2)
#保存图像
cv