首页 > 其他 > 详细

tesseract配置与文字识别(19)

时间:2019-07-15 11:17:06      阅读:121      评论:0      收藏:0      [点我收藏+]

1. 安装tesseract

OCR,即Optical Character Recognition,光学字符识别,是指通过扫描字符,然后通过其形状将其翻译成电子文本的过程。对于图形验证码来说,它们都是一些不规则的字符,这些字符确实是由字符稍加扭曲变换得到的内容。

 

pip install pytesseract

 

继续安装tesseract.exe

tesseract下载地址:https://digi.bib.uni-mannheim.de/tesseract/

 

2、配置环境变量

为了在全局使用方便,比如安装路径为C:\Program Files (x86)\Tesseract-OCR\Tesseract-OCR,将该路径添加到环境变量的path中.

技术分享图片

 

 

3 新建tessdata文件

技术分享图片

 

4 新建系统环境变量

 技术分享图片

 

官网 :http://tesseract.gg/

 

5 图片识别

from PIL import Image
import pytesseract

#Image去除噪点 img
=Image.open(tim.png) text=pytesseract.image_to_string(img) print(text)

 

结果

技术分享图片技术分享图片

 

6 基于opencv的验证码识别

import cv2 as cv
from PIL import Image
import pytesseract



def recognize_text(src):
    gray=cv.cvtColor(src,cv.COLOR_BGR2GRAY)
    blurer=cv.GaussianBlur(gray,(9,9),0)
    ret,binary=cv.threshold(blurer,0,255,cv.THRESH_BINARY_INV|cv.THRESH_OTSU)
    res=cv.bitwise_not(binary)
    cv.imshow(res, res)
    #开操作
    kernel=cv.getStructuringElement(cv.MORPH_RECT,(2,2))
    bin=cv.morphologyEx(binary,cv.MORPH_OPEN,kernel)

    bin2=cv.morphologyEx(bin,cv.MORPH_CLOSE,kernel)
    cv.imshow(bin,bin2)

    textImage=Image.fromarray(bin2)
    word=pytesseract.image_to_string(textImage)
    print(识别出来:,word)


src=cv.imread(./numcode.jpg)
cv.imshow(before,src)
recognize_text(src)
cv.waitKey(0)
cv.destroyAllWindows()

 

结果

技术分享图片

 

学习的素材

 

技术分享图片

 

技术分享图片

 

 

技术分享图片

 

技术分享图片

 

技术分享图片

 

技术分享图片

 

tesseract配置与文字识别(19)

原文:https://www.cnblogs.com/angle6-liu/p/10712910.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!