- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Python项目实战篇——常用验证码标注和识别(需求分析和实现思路)
一、前言
????今日给大家共享的实战项目是常用验证码标注识别,从想法诞生到实现思路,再到编码实战的全体过程,这个过程我前后整理了上万字,方案分章节来发布。言归正传,一起来看看今日的内容吧!今日这篇内容次要讲解这篇文章的创作灵感、需求分析和实现思路。
????首先引见一下验证码基本概念,验证码全称为全自动区分计算机和人类的图灵测试(Completely Automated Public Turing test to tell Computers and Humans Apart,简称CAPTCHA),俗称验证码,是一种区分用户是计算机和人的公共全自动程序。验证码的次要目的是强制人机交互来抵挡机器自动化攻击,为了确保服务器系统的稳定和用户信息的平安,大部分网站接受了验证码技术。图片验证码是目前最常用的一种,本文也次要争辩这种验证码的识别。
????最后,图片验证码识别的想法最后源于12年的高校阶段,当时的学校教务系统每次抢课系统就崩溃,而且还要特定时间段跟其他同学一起抢指定课程,基本抢不到本人想修的课程,那时候就想绕过系统图片验证码通过代码实现自动抢课,鉴于当时本人编码力量和技术力量有限,机器学习、神经网络相关框架效果较差,最终以各种条件限制实现不了告终~~
??? XDM,等等,故事还没完,时间回到2021年,做为一名勤于搬砖、擅长思考学习的程序猿,在经过几年社会的毒打后,想着以现在本人的项目阅历、学习力量和编码功底,以及行业内机器学习、神经网络等AI技术的进展,能不能把多年以来的想法给实现,达到图片验证码高正确率识别猜测,训练一个高度可用的CNN模型。在做项目之前经过笔者几天的材料查询过程中,确信高可用的验证码识别模型想法是可以做的,于是开启了CNN神经网络等技术前置学问的漫长学习过程。
????几个月过后,项目编码实战出炉,效果嘛,自我感觉还行,基本达到高可用,500张训练数据图,CNN模型单个字符97%以上精确?????率。
????这里先贴项目的工程Git地址,有基础的同学可以去直接拉取项目下来把玩源码:
[Java后台-通用验证码标注系统](/snowball2dev/DataMarkService)?
[Vue管理后台模板-通用验证码标注系统](/snowball2dev/DataMarkService-Vue)
[Python-图片验证码识别模型案例](/snowball2dev/VerifyCodeRecognize-Python)
[标注系统线上效果体验地址](03:8084/)
????好的,XDM,假如到这里还有爱好往下看的话,那么就请跟随结合笔者的学习、编码实战过程来了解常用的验证码识别方法和过程。
二、需求分析
????说到图片验证码识别功能,这个功能初步想想也简约,网上搜一下关键词,相关文章和开源项目格外多。以下是github搜索结果:
????乍一看,好像真有免费的午餐,任凭下载个CNN-python项目,改几行代码,然后开头疯狂标注数据过程,就能跑出来模型。
????笔者本人最后也是这么想的,只求简约粗暴,于是弄了几个项目下来跑了之后,发觉代码是可以用,但是效果格外拉跨,单个字符识别正确率很低,70%不到,4-6个字符那正确率就更低了,基本上达不到高正确率,可用性情外一般。对于一个有追求的程序猿,不行能这么就完事了,于是,这就有了这个项目的整活。
????在使用这些开源项目的过程中,发觉下载的项目实现过程大都分为2种思路,第一种无需图片切割,直接数据标注训练模型;其次种为图片验证码进行字符切割,然后为单个字符进行分类训练。项目执行的具体过程就不演示了,有爱好的读者开源自行捣鼓,下面就是笔者本人对2种思路适用方式的实践思考总结:
1. 第一种无需图片切割
? ?优点:简约粗暴,通用性强,直接用各种卷积神经网络模型硬怼图片验证码提取特征,适合晓得验证码生成的正向代码过程,用代码生成图片验证码数据给模型训练。
? ?缺点:数据量小时模型拟合效果差,需要大量人工标注数据,不太适合不晓得验证码生成规章,少量标注数据。
2. 其次种进行字符切割
? ?针对验证码生成规章,分析验证码各种背景干扰、噪声点像素、字体形变和累叠、字符位置随机及个数不定、反色等情况,对图片逆向处理,达到局部字符可切割,降低卷积模型层次,降低数据标注量,实现字符分类。
? ?优点:可针对单一图片验证码做特殊预处理,可实现部分字符切割,针对字符小图进行分类训练,小批量数据标注就可以训练模型达到高拟合效果,达到可用
? ?缺点:通用性不强,训练模型只适用特定图片验证码,简单验证码可能无法切割
??? XDM,等等,还有一种思路:
????笔者本人学习OpenCV时想到的
您可能关注的文档
- pandas DataFrame基础运算以及空值填充.docx
- Pandas专家总结:指定样式保存excel数据的 “N种” 姿势!.docx
- Pandas处理w条数据,最终生成w条!.docx
- Prometheus原理和源码分析.docx
- pypy真的能让python比c还快?.docx
- Python . 的首个 PEP 诞生,内置类型 zip() 将迎来新特性.docx
- Python 为什么要有 pass 语句?.docx
- Python GUI 利用Tkinter制作签名设计软件!.docx
- Python 之父为什么嫌弃 lambda 匿名函数?.docx
- Python 炫技操作:安装包的八种方法.docx
最近下载
- 机电工程安装工艺细部节点做法优选.docx VIP
- 天津鲁能城购物中心调研报告.pptx VIP
- 9《y w》 课件 AI赋能 2025 部编版语文一年级上册.ppt
- 水力学知识点讲解及水力学习题集与答案解析.doc VIP
- 2025年医美运营工作计划 .pdf VIP
- 2025年杭州市临安区新锦产业发展集团招聘笔试参考题库含答案解析.pdf
- 兴业证券-黄金供需全梳理第一期:2024年谁在买黄金?.pdf VIP
- ER6B-C60、ER6B-C10型工业机器人机械使用维护手册(第二版).pdf VIP
- 三相鼠笼式异步电动机实验报告.doc VIP
- 002医疗器械质量安全关键岗位人员岗位说明.docx VIP
文档评论(0)