Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Khaydn/VerifyCode

Open more actions menu
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VerifyCode

使用Python给图片去干扰线和噪点

Img.py 处理验证码,对验证码进行去燥,分割
Crack.py 破解验证码,得到验证码数据
此程序运行在Python3.5版本上,不是Python3请更新Python版本或更改代码,
缺少需要的模块请自行下载,需要的模块可以直接用 pip install 模块名直接下载

初始化程序,
image

如果没有测试图片,可执行GetImgCode方法获取图片,自定义下载验证码地址 image

简单的干扰线去除效果还算可以,干扰线去的还算干净

image

↓↓↓↓↓↓↓↓↓这是原图↓↓↓↓↓↓↓↓↓

image

↓↓↓↓↓↓↓↓↓但是几条干扰线离的太进,就出现问题了↓↓↓↓↓↓↓↓↓ image

↓↓↓↓↓↓↓↓↓这是原图↓↓↓↓↓↓↓↓↓ image

我在这里是通过生成数据模型,在通过python的图形算法获取最邻图片的值,但数据不怎么准确,如果你们在工作上需要,可以先去除干扰线,在通过训练谷歌的Tesseract OCR来获取更精确的数据,训练Tesseract OCR的时候,需要人工辅助,如果你是大牛,可以写脚本自动辅助

↓↓↓↓↓↓↓↓↓下面是我的测试图↓↓↓↓↓↓↓↓↓ image image image

可以看得出来,最后一张多了一个8,这是因为干扰线的关系,去除的不是很干净,在这里我识别的方法是把获取到的数据,和我数据模型里面的数据进行匹配,找到最邻的值,对比图上面有一个小点,我这边的模型里面有个数字8和他很相似,但是,对于这样的问题,通过Tesseract OCR训练识别的话是可以忽略的,如果你数据量挺大,最好使用脚本辅助训练

About

验证码去干扰线识别

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.