tesseract简介: 光学识别
只能识别简单的验证码 识别效率低下,很少使用
转化为灰度图片
使用: 安装tesseract 然后要设置环境变量
Tesseract 3e0p.png lala
识别3e0p图片,然后新建一个lala.txt保存识别的东西
Tesseract 可以通过训练进行加强识别能力
python使用
安装 pip install pytesseract
Pip install pillow 图片库
引用:
From PIL import Image
Img = Image.open('r1c6.png') 打开图片
Img = img.convert('RGB') 格式
Print(pytesseract.image_to_string(img)) 识别图片
转换为灰度图片
Img = img.convert('L') 灰度图片更加容易识别
Img.show()
二值化处理图片 使用pillow
二值化的作用是去掉噪声,比如黑点或者颜色。
背景变为纯白,清晰度更高,更容易识别
threshold = 140
table = []
for I in range(256):
if i< threshold:
table.append(0)
else:
table.append(1)
out = img.point(table,'1')
img = img.convert('RGB')
print(pytesseract.image_to_string(img))
最佳提高识别率的代码:
需要引入
from PIl import TmageEhance
img = Image.open('tvgc.png')
img = img.covert('RGB')
enhancer = ImageEhance.Color(img)
enhancer = enhancer.enhance(0)
enhancer = ImageEhance.Brightness(enhancer)
enhancer = enhancer.enhance(2)
enhancer = ImageEhance.Contrast(enhancer)
enhancer = enhancer.enhance(8)
enhancer = ImageEhance.Sharpness(enhancer)
img = enhancer.enhance(20)