字符扭曲粘连验证码识别技术研究

合集下载

《数字图像分析与处理》教学案例库之验证码识别算法研究与应用

《数字图像分析与处理》教学案例库之验证码识别算法研究与应用

《数字图像分析与处理》教学案例库之验证码识别算法研究与应用作者:刘海英陈鹏举郭俊美邓立霞孙涛赵阳来源:《高教学刊》2020年第27期摘要:随着计算机网络技术及验证码技术的快速发展,出现了更多复杂的验证码生成办法,如基于动态图像的验证码系统。

本案例针对给定系统的验证码为研究对象,提出一种具有针对性的策略算法,对比于其它识别算法,本研究算法的识别速度、精确均占有一定优势,具有一定的理论和实际意义。

关键词:数字图像处理;验证码;识别中图分类号:G640 文献标志码:A 文章编号:2096-000X(2020)27-0087-03Abstract: With the continuous development of computer network technology and verification code technology, more complicated verification code generation methods have appeared, such as a verification image system based on dynamic images. This case proposes another targeted strategy for the verification code of a given system. Compared with other recognition algorithms, the recognition speed and accuracy of this research algorithm have certain advantages and have certain theoretical and practical significance.Keywords: digital image processing; verification code; recognition隨着计算机和网络技术的发展,网络安全逐渐成为了人们关注的问题,验证码的重要性也日益凸显。

旋转验证码识别思路

旋转验证码识别思路

旋转验证码识别思路旋转验证码是一种常见的验证码形式,它通过旋转、扭曲、变形等方式来增加识别难度,从而有效地防止机器人暴力破解。

但对于人类来说,旋转验证码也带来了识别的难度,特别是对于老年人、视力差的人或者使用手机等小屏幕的用户来说,更是一种挑战。

针对这种情况,我们可以采用以下思路来进行旋转验证码的识别。

第一步:预处理。

旋转验证码的基本形式是一张图片,我们需要将其转换成二值图像,即黑白图像。

可以使用OpenCV等图像处理库来实现。

此外,还可以采用图像增强技术来提高图片质量,如直方图均衡化、滤波等。

第二步:分割字符。

旋转验证码通常由多个字符组成,因此我们需要将其分割成单个字符。

可以采用基于连通区域的分割方法,利用连通区域的特点将字符分离出来。

同时,还可以采用形态学处理等技术来优化字符的边缘,提高分割的准确度。

第三步:旋转校正。

由于旋转验证码是存在旋转的,因此需要对每个字符进行旋转校正。

可以采用霍夫变换等方法来检测旋转角度,然后对字符进行旋转变换。

此外,还可以采用仿射变换等技术来进一步校正字符形状。

第四步:特征提取。

针对每个字符,我们需要提取其特征,以便后续识别。

可以采用基于形状、纹理、边缘等特征的方法,将其转换成一组特征向量。

此外,还可以采用深度学习等技术来自动提取特征,提高识别准确度。

第五步:分类识别。

最后,将每个字符的特征向量输入到分类器中进行识别。

可以采用传统的机器学习算法,如SVM、KNN等,也可以采用深度学习技术,如卷积神经网络等。

通过对每个字符进行分类识别,最终可以得到整个旋转验证码的识别结果。

总之,旋转验证码的识别是一项具有挑战性的任务,需要采用多种图像处理、特征提取和分类识别技术相结合的方法,才能取得较好的识别效果。

逼疯你的验证码,为什么越来越复杂?

逼疯你的验证码,为什么越来越复杂?

通识32逼疯你的验证码,为什么越来越复杂?/斯嘉这天,准备考研许久的你,踌躇满志地打开了考研报名网站。

然而,还没来得及一展才学,你就被卡在了网站登录的验证码上。

重叠在一起的字体,布满马赛克的背景,让你输了几次验证码都没有输对。

你屡败屡战,但验证码上出现的“骉叕犇羴”,又瞬间让你怀疑自己的学识水平。

逼疯你的验证码,为什么变得越来越复杂?折磨人的验证码这个究竟是o还是0?是1还是l?每一次输验证码时,你都会忍不住发出这样的疑问。

它那扭曲的形状,粘连在一起的字符,雪花状的背景,常让你陷入自己是不是眼瞎的怀疑。

然而,这种字符验证码,还只是日常的基础题,高难度的题目,往往出现在春节这样的特殊时刻。

登入12306时要选择的图片验证码,就曾是每个在春节抢过火车票的人的噩梦。

你要在一堆高糊的图片中,挑选出各种“犹抱琵琶半遮面”的物体。

有时运气不好,碰上排风机、发电机等超出生活常识之外的东西,你就只能被困在一次又一次的选择错误中,眼睁睁看着车票越来越少。

有些验证码更是不满足只考你的眼力,还要测一下你的智商。

在购票网站抢演唱会门票时,不仅要懂点文学典故,读过四大名著,末了,还要附带让你算一道数学题。

屏幕上的每一个验证码,似乎都在提醒你:没点文化,就别跟人学着追星了吧。

美国斯坦福大学的研究指出,验证码已经过难。

研究者们搜集了8500个多种形式的验证码让受试者辨认,发现他们在判断验证码时,平均要花9.8秒,且同时让三个人辨别同一个验证码,三人间的一致率只有71%。

如果是听声音辨识的验证码,准确率会更低,只有31.2%。

验证码疯狂内卷,而你只想砸鼠标。

验证码的进化,也是被逼无奈其实,验证码也不是一开始就这么复杂。

在验证码被发明前,许多免费的邮箱网站常遭受恶性外挂软件的攻击。

例如在2000年时,雅虎邮箱中曾有大量用机器注册的马甲账号,他们会给用户发大量的垃圾、诈骗邮件。

为了解决这个问题,程序开发人员试图找到一种登录验证方式,能判断出正在操作的究竟是人还是机器。

两种文本类型验证码字符分割提取方法

两种文本类型验证码字符分割提取方法

两种文本类型验证码字符分割提取方法杨玉东;李莉;高云富;曲晓威;林琳;杨茜;白鹏辉;王瑜【摘要】作为区分人机操作的一种有效方法,验证码图片被广泛使用.通过对验证码图片识别技术的研究,可以及时发现和改善验证码漏洞.识别混合字符型文本类型验证码的关键是提取验证码图像中的单个字符.介绍验证码识别的一般过程,给出基于颜色提取单个字符和基于支持向量机分割为单个字符的两种单个字符提取方法,通过实例给出了详细步骤.【期刊名称】《北华大学学报(自然科学版)》【年(卷),期】2019(020)001【总页数】4页(P137-140)【关键词】文本验证码;字符分割;字符提取;字符识别;支持向量机【作者】杨玉东;李莉;高云富;曲晓威;林琳;杨茜;白鹏辉;王瑜【作者单位】长春理工大学计算机科学技术学院,吉林长春 130022;长春市万易科技有限公司工程研究中心,吉林长春 130012;长春理工大学计算机科学技术学院,吉林长春 130022;长春理工大学计算机科学技术学院,吉林长春 130022;长春市万易科技有限公司工程研究中心,吉林长春 130012;吉林省通联信用服务有限公司,吉林长春 130012;长春市万易科技有限公司工程研究中心,吉林长春 130012;长春理工大学计算机科学技术学院,吉林长春 130022;长春理工大学计算机科学技术学院,吉林长春 130022【正文语种】中文【中图分类】TP311.1验证码源于图灵测试,是区分人和机器的一种有效方法[1].由于技术简单,产生的验证码图片随机性强,且能在一定程度上阻止网络上的恶意行为,已被广泛应用于互联网.由于种类增多、图像分辨率增加、图像干扰(噪声)增强都给验证码识别增加了难度.文本类型验证码的文本内容通常是数字和英文字母的随机组合,而单个字符很容易利用机器学习方法识别,所以分割并提取图像中的单个字符成为识别此类验证码的关键[2].许多学者提出了一些字符切割方法,但这些方法大多是针对一种类型或特定类型的验证码,在处理不同种类验证码图像时有一定的局限性.本文提出两种文本字符验证码字符分割方法,并通过实例给出详细步骤.1 验证码识别过程可分割验证码的识别过程主要分为图像预处理、字符分割与规范化以及训练模型与识别.验证码识别流程见图1.图1 验证码识别流程Fig.1 Recognition process of verification code本文在字符识别过程中使用支持向量机(SVM)方法,它是监督学习的一种有力计算工具[3].这种方法需要对一些已分类的字符样本进行训练来获得一个模型,然后用模型对未分类的字符样本进行预测或分类.通过调整训练样本量及模型参数,单个字符的识别率可以达到90%以上.图像预处理与字符处理过程中的每个步骤都会产生一定的误差,这些误差会影响字符分割的成功率,进而导致整体识别率降低.因此,有效处理验证码图像并从中提取或分割字符,是文本类型验证码识别的关键,本文给出两种字符分割方法.2 基于颜色提取字符的方法这种方法适用于验证码图片中的单个字符颜色随机,而在同一字符中的像素色彩又有差异的情况.以某网站的验证码图像为例,介绍这种分割方法.图2为jpg格式的验证码图像,分辨率为200×60,RGB模式.字符颜色、位置是随机的,字符有旋转并且部分字符粘连严重甚至交错、重叠.传统的切割方法(如竖直投影方法、CFS 分割算法[4]、滴水算法[5]、基于字符宽度的分割算法[6]以及改进的投影分割算法[7])都不能达到很好的字符分割效果.图2 原始验证码图像Fig.2 Images of primitive verification codes1)图像去背景.字符颜色的随机性在给识别过程带来一定难度的同时,也提供了一定量的信息.考虑适当改变图像预处理和字符切割顺序,利用字符颜色的区别来提取字符.首先在RGB模式下去除背景、噪点和干扰线,保留图像的RGB色彩,得到的图像见图3.图3 去除背景色及干扰线的图像Fig.3 Removal of background color and line interference images2)图像滤波.虽然图像中每个字符的颜色在视觉上是相似的,但实际像素值是有差别的.通过迭代的方法,可以区别不同字符间的颜色并减小同一字符中像素的色彩差异.定义一种5×5的滤波模板,其当前像素(x,y)的输出值为其中:RGB(i, j)为当前像素(x,y)周围5×5范围内的像素(i,j)的像素值;wij是一个二值变量,如果满足以下任意一条:ⅰ)像素(i, j)位置超出图像范围;ⅱ)(i,j)=(x,y);ⅲ)RGB(i, j)与RGB(x,y)欧氏距离大于某个值(包括(i, j)的像素值为白色)都有wij=0,否则wij=1.表1 部分验证码图像的分割结果及识别结果Tab.1 Segmentation and recognition results of partial verification codes image去噪后的图像字符分割结果调整后的字符识别结果利用上述模板不断对图片进行过滤,直到前后两次过滤得到完全相同的图像或者同一字符中像素值的“差值”小于期望值.3)图像切割.通过寻找色彩相近像素的方法,找出在一定范围内属于同一字符所有的像素点,重新生成一张空白图片.将这些像素点写入空白图片,完成1次“切割”.4)字符识别.字符分割结束后对字符图像进行二值化、规范化,得到最终的字符样本.部分分割结果以及识别结果见表1.5)实验结果分析.对2 000个验证码图像进行预处理、分割、规范化,抽取有效字符样本进行训练,然后对1 000个未用于训练的验证码图像进行预测.结果显示:字符分割成功率为89.8%,单个字符识别率为88.8%,整体识别率为62.7%,每个验证码图像识别平均用时1.21 s.3 基于支持向量机(SVM)的分割方法验证码中字符的竖直切割可以理解为在给定某字符左侧(或右侧)边界的条件下确定右侧(或左侧)边界,等价于在给定某字符左侧(或右侧)边界的条件下确定字符宽度.根据这一想法,可以将字符宽度分为有限个类,在给定某一条切割线条件下,通过SVM方法识别字符宽度,从而确定下一条切割线.图4中的验证码图片为jpg格式,分辨率为223×50,RGB模式.图片颜色单一,干扰线粗细程度不一,字符粘连且图片中间部分字符比较模糊.图4 原始验证码图像Fig.4 Image of primitive verification code1)图像锐化.对图像进行预处理,通过图像锐化的方法使图像变得更模糊,见图5. 图5 经过锐化的验证码图像Fig.5 Image of sharpened verification codes2)图像二值化.将锐化后的图像转变为灰度图,选择合理的二值化阈值对图像进行二值化,使图像中间模糊区域变清晰.二值化阈值选取120时,很容易去除干扰线和噪点,但字符不够清晰;选取80时,字符更为清晰,但在去除干扰线的过程中会去掉部分字符.一种合理的做法是在阈值为120的二值化图像中找到干扰线和噪点所对应的像素,在阈值为80的二值化图像中去掉这些像素.去噪后的图像见图6,虽然图像左侧的部分干扰线没有清理干净,但这不影响后续工作.图6 去噪后的二值化图像Fig.6 Denoising binary image3)字符切割.此验证码的字符宽度在15个像素到37个像素之间,且字符的横向位置不固定.如果采用传统的切割方法,字符切割成功率不超过70%,这将影响最终的识别率;而基于SVM的切割方法,可以显著提高字符切割的成功率.由于图像右侧的干扰线清理得很干净,因此从图像右侧开始切割.首先通过图像的竖直积分投影找到图像右侧的第1条切割线,见图7,然后需要一些有标签样本来训练切割模型.图7 第1条切割线的选取Fig.7 Selection of the first cutting line将字符宽度(15~37)分为23个类.在当前切割线左端的40个像素距离内选取特征向量.特征向量的构成为每一列黑色像素之和以及每一列黑色像素的纵坐标最小值.在给定当前切割线的条件下,通过模型识别字符宽度可以找到下一条切割线的横向位置.4)实验结果分析.用1 500个图片作为样本集训练切割模型,4 000个样本训练字符识别模型,将1 000个未训练图片作为测试集进行验证码图像识别.结果显示:字符切割成功率为92.3%,单个字符识别率为95.9%,整体识别率为84.5%,识别每个验证码图像平均用时62 ms.部分分割结果及识别结果见表2.4 小结本文介绍了可分割文本类型验证码识别的基本流程.针对不同图像,提出两种字符分割方法,通过实例给出了具体步骤.基于颜色提取字符的方法是通过改变图像预处理和字符切割的顺序,利用字符颜色的区别来提取字符;基于支持向量机的字符分割方法是在不同阈值下去除噪点和干扰线,达到更好的去噪效果.两种方法都实现了对特定类混合型文本字符验证码的分割与识别,与传统切割方法相比,具有较高的分割成功率(传统切割方法成功率为70.0%),识别结果可用.但是,基于颜色提取字符的方法在计算过程中涉及迭代算法,识别的平均用时过长;基于SVM的切割方法需要训练模型,在构造训练样本时,需要花费一定的时间.另外,分割过程中产生的部分残损字符图像和非字符图像会降低字符识别率.这些问题有待于进一步研究.【相关文献】[1] Von Ahn L,Blum M,Langford J.Telling humans and computers apart automatically[J].Communications of the ACM,2004,47(2):56-60.[2] Chellapilla K,Larson K,Simard P Y,et al.Building segmentation based human-friendly human interaction proofs (HIPs)[J].HIP,2005,3517:1-26.[3] Haykin S.神经网络与机器学习[M].北京:机械工业出版社,2011.[4] Yan J,El Ahmad A S.Alow-cost attack on a Microsoft CAPTCHA[C]//Proceedings of the 15th ACM conference on computer and communications security,ACM,2008:543-554.[5] 李兴国,高炜.基于滴水算法的验证码中粘连字符分割方法[J].计算机工程与应用,2014,50(1):163-166.[6] 柳红刚.字符扭曲粘连验证码识别技术研究[D].西安:西安电子科技大学,2012.[7] 唐海涛.自组织增量神经网络的验证码识别模型与算法[D].广州:广东工业大学,2016.。

开题报告-验证码识别技术研究与实现

开题报告-验证码识别技术研究与实现
学生姓名
张安龙
学号
班级
所属院系专业
指导教师1
职称
所在
部门
物联网技术学院
指导教师2
职称
所在
部门
毕业设计
(论文)题目
验证码识别技术研究与实现
题目类型
工程设计(项目)■
论文类□
作品设计类□
其他□
1、选题简介、意义
选题的介
随着互联网技术的快速发展和应用,网络在给人们提供丰富资源和极大便利的同时,伴随而来的就是互联网系统的安全性问题。验证码的出现正是加强web系统安全的产物。验证码,最早作为卡内基梅隆大学的一个科研项目,Yahoo!是CAPTCHA的第一个用户。
5 可分割验证码的识别
5.1数字图像预处理技术
5.2常用的字符分割算法
5.3猫扑网站验证码的识别
5.4西祠胡同网站验证码的识别
6 涯验证码的识别
7 总结
致谢
参考文献
指导教师意见:
签字:
2019年3月2日
院(系)审批意见:
签章:
2019年3月5日
二、课题综述(课题研究,主要研究的内容,要解决的问题,预期目标,研究步骤、方法及措施等)
1.课题研究
验证码识别技术研究与实现
2、研究内容
研究验证码识别技术,可以及时发现和改善验证码的漏洞,在增强网络安全性、防止恶意机器程序攻击方面有着重要意义。
2.预期目标
找出现在验证码的不足,为以后改善验证码提供理论基础。
3.研究步骤
1、阐述了课题的背景及研究意义,介绍了验证码识别在国内外的发展状况
2、重点介绍了用于字符识别的BP神经网络、卷积神经网络和形状上下文算法,给出了它们的推导过程。

一种彩色旋转变形验证码的识别方法

一种彩色旋转变形验证码的识别方法

一种彩色旋转变形验证码的识别方法高建清【摘要】Aiming at the color rotation deformation CAPTCHA, a character segmentation method which combines the method of connected regions and color space was proposed, and a multi-class support vector machine was used to recognize. Firstly, the CAPTCHA image was grayscale, binarization and removing noise points. Then, the character was segmented by the connected region method, and the color space method with HSI model was used to further segment the overlapping char-acters, normalized processing after segmentation. At last, the recognition experiment was conducted by support vector ma-chine. The experimental results show that the support vector machine is fast and does not require a large number of training samples, has a high recognition rate for the rotation and deformation characteristics CAPTCHA, and also show this character segmentation method is more effective than other methods.%针对彩色旋转变形验证码提出了一种连通区域法和颜色空间法相结合的字符分割方法,并采用多分类支持向量机进行识别。

数字验证码识别的设计与实现-毕业论文

数字验证码识别的设计与实现-毕业论文

---文档均为word文档,下载后可直接编辑使用亦可打印---摘要]数字验证码在安全方面起着十分大的用处,因此在很多网站都可以看到数字验证码的使用。

如今互联网的发展相当快速,紧随着我们也就需要思考安全问题,隐私的泄露会或重或轻的影响用户,而数字验证码作为互联网安全的常用的屏障,可以让互联网生态环境更加健康便利且很好的保护用户隐私。

目前,在网站上中相对常用的是由数字、字母组成的数字验证码。

本文针对粘连且存在干扰噪声的数字验证码图像识别性能欠佳的情况,通过比较各种识别数字验证码的方法,最终选择使用KNN算法作为数字验证码字符识别方法,本课题对有粘连扭曲情况的数字验证码的识别进行设计和分析,过程主要是以下三步:预处理、匹配识别、分析识别率。

图片预处理过程采用了灰度化、二值化、降噪和分割,在分割图片阶段,可能出现检测出四、三、二和一个字符的情况,分别采用不同的方法进行处理,再采用Python工具进行单字符匹配,最后通过KNN算法来识别匹配数字验证码,得到了高达94.4%的识别率,这说明采用该算法能很好的识别粘连扭曲的数字验证码图片。

[关键词]验证码识别;KNN算法;验证码匹配;PythonDesign and Implementation of Digital AuthenticationCode RecognitionStudent: Li Xinyu,College of Electronic InformationInstructor: Wang Yuanmei,College of Electronic Information [Abstract]Digital Authentication Code (DAC) plays a very important role in security, so it can be used in many websites.With the rapid development of the Internet, we also need to think about security issues. The leak of privacy will affect users more or less. Digital Authentication Code, as a common barrier to Internet security, can make the Internet ecological environment healthier, more convenient and better protect user privacy.At present, the relatively common digital verification code on websites is composed of numbers and letters.In view of the poor performance of image recognition of digital verification codes with glue and interference noise, this paper chooses KNN algorithm as the character recognition method of digital verification codes by comparing various methods of identifying digital verification codes. This topic designs and analyzes the recognition of digital verification codes with glue distortion. The process mainly consists of three steps:preprocessing,Match recognition, analyze recognition rate.Picture preprocessing process uses grayscale, binarization, noise reduction and segmentation. In the phase of image segmentation, four, three, two and one characters may be detected. Different methods are used to process them, then single character matching is performed with Python tools. Finally, matching number verification codes are recognized by KNN algorithm, and the recognition rate is up to 94.4%.This demonstrates that the algorithm can recognize the distorted digital authentication code picture very well.[Keywords]Verification code identification;KNN recognition;Verification Code Matching;Python第一章绪论1.1 研究目的及意义当前,随着互联网技术的不断创新研发,我国科技技术飞速发展,各类新兴产品应运而生,在不断丰富人们生活的同时,提高了人们生活质量与生活水平。

基于卷积神经网络的验证码识别

基于卷积神经网络的验证码识别

2020年软 件2020, V ol. 41, No. 4作者简介: 李世成(1994–),男,研究生,主要研究方向:智能信息处理技术; 通讯作者: 东野长磊(1978–),男,讲师,主要研究方向:计算机视觉。

基于卷积神经网络的验证码识别李世成,东野长磊*(山东科技大学 计算机科学与工程学院,山东 青岛 266590)摘 要: 验证码识别与设计是目前人工智能领域的挑战性问题,验证码图片内容识别通过强制人机交互来抵御机器自动化攻击的,验证码是否能被批量识别可以用来衡量验证码设计的优劣。

目前已经有相对成熟的算法解决这类问题,但是仍然存在天花板有待突破。

首先本文对5000张验证码的样本集进行图片预处理,对验证码图片去噪点和切割操作。

然后利用添加了注意力模块的卷积神经网络训练样本集,并对另外5000张样本进行预测,测试集的准确率可以达到97.9%。

关键词: 验证码;二值化;卷积神经网络;CBAM中图分类号: TP183 文献标识码: A DOI :10.3969/j.issn.1003-6970.2020.04.037本文著录格式:李世成,东野长磊. 基于卷积神经网络的验证码识别[J]. 软件,2020,41(04):173 177Verification Code Recognition Based on Convolutional Neural NetworkLI Shi-cheng, DONG YE Chang-lei *(School of Computer Science and Engineering, Shandong University of Science and Technology,Qingdao 266590, Shandong, China )【Abstract 】: Captcha identification and design are currently challenging issues in the field of artificial intelligence. Captcha image content recognition resists automated machine attacks by forcing human-computer interaction. Whether captchas can be identified in batches can be used to measure the pros and cons of captcha design. At pre-sent, there are relatively mature algorithms to solve such problems, but there are still ceilings to be broken. Firstly, this paper pre-processes 5000 sample samples of captcha, and denoises and cuts the captcha pictures. Then using the convolutional neural network training sample set with the attention module added, and predicting another 5000 samples, the accuracy of the test set can reach 97.9%.【Key words 】: Verification code; Binarization; Convolutional neural network; CBAM0 引言验证码(CAPTCHA )是一种区分用户是计算机还是人的公共全自动程序。

利用旋转归一化和粗匹配算法破解验证码

利用旋转归一化和粗匹配算法破解验证码

利用旋转归一化和粗匹配算法破解验证码高海昌;樊晔;王伟【摘要】10.3969/j.issn.1001-2400.2012.06.013% 验证码是一种能够区分计算机程序和人类的图灵测试。

提出了一种使用粗匹配序贯相似性检测算法来破解字符有旋转、非扭曲、无粘连的验证码的方法。

通过对旋转字符的旋转角度归一化减少了模板的数量,使用粗匹配算法降低了单个模板匹配所用的时间,从而在速度和准确率方面有了很大提高。

以网上的验证码为例,介绍了破解的4个阶段:图像的预处理、提取字符、旋转字符和识别字符。

实验结果表明,使用基于粗匹配的序贯相似性检测匹配算法,验证码破解成功率可以达到85%,平均破解一张验证码图片所需的时间为3畅5 s ,远优于同类算法。

【期刊名称】《西安电子科技大学学报(自然科学版)》【年(卷),期】2012(000)006【总页数】6页(P78-83)【关键词】验证码;图像旋转;模板匹配;序贯相似性检测算法【作者】高海昌;樊晔;王伟【作者单位】西安电子科技大学软件工程研究所,陕西西安 710071;西安电子科技大学软件工程研究所,陕西西安 710071;西安电子科技大学软件工程研究所,陕西西安 710071【正文语种】中文【中图分类】TP301.6验证码目前被广泛地应用在网上银行、免费邮箱、论坛登录等网络应用中,用于防止计算机程序自动注册并滥用网络资源.验证码的英文CAPTCHA是“Completely Automated Public Turing test to tell Computers and Humans Apart”(全自动区分计算机和人类的图灵测试)的缩写[1].验证码按照其生成的原理,可以分为基于文本、基于图片和基于语音的验证码.目前,最为常用的是基于文本的验证码机制,正如在网站经常见到的,是让用户输入一个扭曲变形的图片上所显示的数字或者字母.验证码生成程序往往添加一些随机的干扰手段,如噪声、旋转、扭曲、粘连等. 2003年,Mori和Malik[2]利用复杂的目标识别算法对Gimpy(杂波干扰的验证码)和EZ-Gimpy(具有纹理背景的验证码)进行了识别,识别率分别达到33%和92%.Moy等[3]利用了扭曲估计技术对EZ-Gimpy进行识别,成功率达到99%.2008年,Yan等[4]对Microsoft的验证码进行了成功分割,并通过多分类器进行识别,达到了60%的识别率.2005年,斯坦福大学的Chellapilla等[5]利用机器学习算法对一些视觉验证码进行了破解,成功率在4.89%~66.2%之间.2011年,Bursztein等[6]在CCS会议上发表了使用系统评估法破解15种常见的基于文本的CAPTCHA.但是这些验证码中的文本基本上都是没有倾斜的,现在的很多验证码为了防止计算机程序的破解,增加了倾斜、扭曲和粘连的特征.笔者针对具有不规则倾斜角度的文本验证码进行了破解研究,以促进其进一步提升其安全性.文中的破解过程分为图像的预处理、提取字符、旋转字符和识别字符4个阶段.首先从某网站上收集了100张验证码(如图1所示)作为研究的随机样本.通过分析这些样本,观察到此验证码有以下特征:1)每张验证码中只有5个字符.2)验证码中只出现了22个大写字母,5个数字.没有出现小写字母,容易被混淆的大写字母和数字也都没有出现.例如字母O和数字0,很难分辨.每张验证码中的5个字符都是在27个字符集中随机选取的.3)图片的前景颜色是不固定的,在一张验证码中,字符的颜色是不相同的.背景颜色也有很多种,并且带有条状的噪点.但是背景的颜色比前景的颜色淡.4)字符有不同角度的旋转.旋转角度范围是-30°~+30°.5)图片中的字符没有扭曲和变形,字符之间没有粘连.上述的这些特征就是破解的突破口.可根据这些特点,找到破解此验证码的方法.一幅合成图片通常包括目标、背景还有噪点,从多内容组合的图像中提取出目标是一个比较热门的研究课题[7].对应用于验证码的图片,可以使用一种比较简单的全局二值化方法,就是设定一个全局的阈值T,用T将图像的数据分成两部分:大于T的像素群和小于T的像素群.图片中的像素点的值是根据RGB值来计算的,黑色点的值为(0,0,0),白色点的值为(255,255,255).实验发现前景的B值比背景的B值大,设置一个T,将大于T的像素群的像素值设定为白色(或者黑色),小于T的像素群的像素值设定为黑色(或者白色).笔者所选的T为100.也就是说,当某个像素点的B值大于100的时候,就把这个点的颜色变为白色,反之,这个点变为黑色.处理结果如图2所示.对图片进行阈值过滤后,有些验证码图片中可能会产生一些孤立的点.孤立点的判断规则是:当前景色点周围的8个像素点都是白色时,那么这个点就被认为是噪点,并同时把它转换为背景色.去除噪点之后的处理结果如图3所示.接下来的一步是进行字符提取.由于考虑的是只有旋转、没有粘连的情况,因此可以使用垂直投影的方法进行分割.如图4所示,将每个字符在垂直方向上进行投影.根据图中底部的投影部分可以很容易找到各个字符的分割界限.图4中两个灰色区域中间就可以确定一个字符的存在.然后在每个隔离区域内运用从上到下的横向扫描法,可以找到字符的上界与下界,这样就能把各个字符提取出来.需要注意的是,这种投影分割法对于大部分验证码有效.但是也有一些验证码图片上的文字由于倾斜角度的问题,虽然字符之间没有粘连,但是它们的垂直投影却是连在一起的,如图5中的字符D和字符R的投影就是连在一起的.对于这种情况,可以简单地根据均分的办法(出于破解时间和效率的考虑),把它们的投影分开,从而提取出单个字符.字符的提取为模板库的选择和字符的识别打下了基础.下面将详细介绍在字符提取的基础上进行字符的识别.在以往的验证码破解过程中,对于随机角度旋转的字符,常采用模板匹配的方法识别,其中模板库也只是在连续角度内选取字符.但是这使得模板数量非常多,直接影响了匹配速度和准确率.针对这种问题,笔者提出了新的破解思路,即对旋转字符进行角度的归一化,使得同一种字符有相同的旋转角度,从而减少模板的数量,达到提高速度和准确率的目的.根据最小面积矩形包围盒的理论,矩形包围盒面积最小的方向就是字符需要纠正的角度.但是,在具体实现的时候,根据编程的便利需要,逆向使用了最小面积矩形包围盒的理论.如图6所示,当一个字符旋转角度不同时,包围字符的矩形框的面积是不一样的.字符的旋转角度越小,包围的矩形面积就越小(这可以很容易通过最小面积矩形包围盒理论推导出来).因此通过在-30°~30°范围内,以1°为步长不断旋转字符,并比较矩形包围盒的面积,就可以确定字符的正确方向.接下来介绍字符的旋转算法.首先,介绍一个点围绕坐标原点的旋转算法.如图7所示,在二维坐标上,点P(x,y)围绕原点逆时针方向旋转β,到达P′(x′,y′).可以很容易计算得到如下的换算关系:但是,应用以上公式所产生的图像中的像素有可能在原图像中找不到相应的像素点,因为数字图像中的坐标总是整数.这样就必须进行近似处理.笔者使用的是双线性插值方法.双线性插值也称一阶插值,是求到相邻的4个方格上点的距离之比,用这个比率和4个邻点像素的灰度值进行灰度插值,具体方法如下.对于一个目的像素,设置坐标通过反向变换得到的浮点坐标为(i+p,j+q),其中i、j均为非负整数,p、q为[0,1)区间的浮点数,则这个像素的值f(i+p,j+q)可由原图像中坐标为(i,j)、(i+1,j)、(i,j+1)、(i+1,j+1)所对应的周围4个像素的值决定,即其中,f(i,j)表示原图像(i,j)处的像素值.图8是一个字符经过旋转和双线性插值前后的例子.字符旋转之后,就可以进行模板匹配的工作了.选取模板是模板匹配中非常关键的一步.因为字符都有旋转,而且同一种字符的旋转角度不同,所以字符经过旋转算法处理之后,同一种字符的旋转角度会被确定,从而随机选取任意数个旋转后的字符作为基础模板库.模板匹配时,模板的数量直接影响匹配的速度和准确率.为了使模板选取的恰当,可以根据识别的结果随时调整模板的数量.有些字符的特征明显,只选取一到两个模板即可.如果一个字符的识别率很高,那么这个字符的模板就可以减少一些;如果一个字符的识别率很低,容易和另外一个特征相近的字符混淆的时候,被识别错误字符的模板的数量可以增加.经过多次的实验和模板的选取,从而最终确定模板库.笔者提出了一种基于粗匹配的序贯相似性检测算法(SSDA)[8],并与传统的模板匹配算法和序贯相似性检测匹配算法[8]进行了比较.传统匹配算法的基本搜索策略是遍历性的,在搜索区域内的每一个像素点上进行区域相关匹配计算从而找到最优匹配点.模板T在搜索图S中要进行很多次与子图的比较,如图9所示.如果模板T的大小为M×M,搜索子图S的大小为N×N,那么子图的个数为(N-M+1)×(N-M+1).这样匹配的数据量和计算量很大,速度非常慢.在序贯相似性检测算法中,与传统模板相似,模板T叠放在搜索图S上平移,模板覆盖下的那块搜索图设为子图Si,j,i与j为这块子图的左上角像素点在S图中的坐标,则i 和j的取值范围为1≤i≤N-M+1,1≤j≤N-M+1,如图9所示.首先定义一个绝对误差值ε,即然后再取一个不变的阈值T k.在子图中Si,j(m,n)随机选取像素点,计算它同T中对应点的误差值ε,然后把这点的差值同其他点对的差值累加起来,当累加R次误差超过T k时,则停止累加,并记下累加次数R.定义序贯相似性检测的检测曲面为把I(i,j)值最大的点定位匹配点,因为在这一点上需要很多次累加才能使总误差∑ε超过T k.随后找到最大的R,也就可以识别出该字符了.在进行序贯相似性检测匹配算法的计算时,首先考虑的是匹配过的点数与匹配值之间的差Di,j(m,n),即其中,为与模板相同的点数,为匹配过的点数.当Di,j(m,n)>T时,正在匹配的子图就可以被排除,那么匹配的次数就可以减少,速度就会提高,但是正确率却受到了影响.因为从子图的左上角开始匹配,背景色的点比较多,无法正确选取和判断字符的特征,所以笔者提出使用粗匹配的改进序贯相似性检测算法.基于粗匹配的序贯相似性检测匹配算法的要点如下:首先确定粗匹配的点,粗匹配像素点的确定与验证码图片中字符的大小和字符特征分布有关.根据字符像素点的分布和实验结果,在所匹配的子图中按照一定规律选取一定数量的点与模板中对应的点进行匹配,然后设置阈值T 1和T来控制速度和正确率.当时,正在匹配的子图可以直接被排除;反之,可继续进行粗匹配像素点的比较直到结束.然后,当时,继续进行精确匹配.粗匹配点的选取可明显地提高准确率和速度.因为,首先,所选点能够反映出这张图片的大概信息与特征,并且减少初步比较的点的个数.这样可以有效避免在序贯相似性检测算法中因局部不同但整体相似度较高的图片被排除的可能,准确率有所提高.其次,在粗匹配的过程中,可以大量地排除整体相似度很低的图片,这样可减少精确匹配的次数,从而有效地提高了速度.从子图中按照粗匹配位置来选取匹配点.在具体破解验证码时,根据验证码的特征,所选取的粗匹配的点是增量为宽度的1/7并取整、高度的1/9并取整的点,阈值T为40,T 1为10.用来表示粗匹配过程中与模板相同的点.当时,直接跳过当前匹配的子图;反之,继续进行粗匹配像素点的比较直到结束.当时,进行精确匹配.其中,当粗匹配的点与模板相同时,Ci,j(7m,9n)的值为1;不同时的值为0.当之,再进行精确的匹配,对子图中所有的点都和模板中对应的点进行匹配,然后记录每一次精确匹配的匹配值Ri,j.而找到最终匹配上的子图后最大的匹配值R为时,此时比较的子图就匹配失败,从而进行下一张子图的匹配;反通过实验对破解的成功率进行了统计并且分析了失败例子的原因.首先在随机选取的100张验证码样本中进行测试,随后又在重新选取的100张验证码测试集合中对之前所介绍的方法进行了进一步的验证.在样本集中,总共有100张验证码.经过测试,提取字符的成功率为99.4%.而在使用不同模板匹配算法时,识别的结果会有所不同,并且破解速度也会有明显的变化,如表1所示.上面所介绍的先对字符进行旋转,再利用基于粗匹配的序贯相似性检测算法进行模板匹配的方法的破解效果是很明显的.首先,对旋转字符归一化减少了模板个数,所以直接减少了匹配次数.其次,粗匹配算法的应用缩短了单幅图匹配的时间,从而整体的匹配速度有了很大的提高.通过简单的计算表明:在不旋转字符的情况下,因为字符的旋转角度在-30°~30°之间,至少取10个角度,按照每个角度取1个模板,则每个字符的模板至少取10个,总共27个字符,模板的个数为270个.经过测试,使用传统匹配的单幅图匹配平均时间为0.016 0 s.使用旋转之后,现在模板的个数为原来的1/10,使用基于粗匹配的序贯相似性检测算法,平均单幅图匹配时间为0.003 7 s,速度提高了4.3倍.理论上整体速度提高了4.3×10倍.但是在选取模板的过程中,为了更好地提高准确率,适当地增加了模板的数量,使最终的速度提高了8.7倍.表1中传统匹配算法有旋转和无旋转的模板个数的改变不是按照之前分析的理论数据,而是为了提高成功率,适当地增加了模板数,所以速度的提升不明显.通过比较,可以看出基于粗匹配的精确匹配算法的确是最优的匹配算法,平均每分钟可以破解15.7个验证码.从成功率可以看出,平均每分钟能正确破解13.9张验证码.但是在使用基于粗匹配的精确匹配算法时,阈值的选择是很重要的,它们是影响成功率和破解速度的重要因素.所以阈值不同,结果就有很大的不同.对阈值T进行了统计,如表2所示.随后,又在网站上随机收集了100张验证码.目的是为了验证上述方法是不是适用此机制的所有验证码.同样对结果进行了统计,提取字符的成功率为99.8%,整体破解的成功率为85%,平均破解时间为3.4 s.从验证结果可以看出笔者提出的方法的效果也非常好.从两个不同的测试集合验证的结果来看,将字符旋转之后,再进行模板的选取,最后使用基于粗匹配的序贯相似性检测匹配算法来破解验证码是最优的破解方法.以某网站的验证码破解为例,介绍了具有不规则倾斜角度的文本验证码的破解研究.在破解过程中,最主要的就是字符的提取与识别.经过一系列的尝试和对匹配算法的改进,最后找到了一种相对满意的破解方法:利用全局二值化进行预处理;经过垂直投影提取出单个的字符;旋转提取出来的字符将其角度归一化;随机挑选模板库利用基于粗匹配的序贯相似性检测匹配算法识别字符;根据识别结果调整模板库,从而找到最合适的模板库,完成破解工作.平均破解一张验证码所需的时间为3.4 s,可达到85%以上的成功率.笔者所使用的破解方法对于其他字符有旋转、没有粘连与扭曲的验证码也是适用的.【相关文献】[1]Von Ahn L,Blum M,Langford J.Telling Humans and Computer ApartAutomatically[J].Communication of ACM,2004,47(2):57-60.[2]Mori G,Malik J.Recognizing Objects in Adversarial Clutter:Breaking a VisualCAPTCH[C]//IEEE Conference on Computer Vision and PatternRecognition.Washington:IEEE Computer Society,2003:134-141.[3]Moy G,Jones N,Harkless C,et al.Distortion Estimation Techniques in Solving Visual CAPTCHAs[C]//IEEE Conference on Computer Vision and PatternRecognition.Washington:IEEE Computer Society,2004:1-6.[4]Yan J,Ahmad A S E.A Low-cost Attack on a Microsoft CAPTCHA[C]//Proc of the ACM Conference of Computer and Communications Security.New York:ACM Press,2008:543-554.[5]Chellapilla K,Simard ing Machine Learning to Break Visual Human Interaction Proofs[C]//Neural Information Processing Systems(NIPS).Cambridge:MIT Press,2004:265-272.[6]Bursztein E,Martin M,Mitchell J C.Text-based CAPTCHA Strengths and Weaknesses[C]//Proc of the ACM Conference of Computer and Communications Security.Chicago:ACM Press,2011:125-137.[7]汪涛,卢朝阳.一种新的汽车牌照字符切分算法[J].西安电子科技大学学报,2005,32(6):931-935.Wang Tao,Lu Zhaoyang.A New Algorithm for the Character Segmentation of the License Plate[J].Journal of Xidian University,2005,32(6):931-935.[8]王立新,刘彤宇,李阳.SSDA匹配算法的研究及实现[J].光电技术应用,2005,20(3):53-55.Wang Lixin,Liu Tongyu,Li Yang,Research and Implementation of SSDA[J].Electro-Optic Technology Application,2005,20(3):53-55.。

基于人工智能的验证码识别研究

基于人工智能的验证码识别研究

基于人工智能的验证码识别研究随着互联网的发展,验证码已经成为许多网站和应用程序中常见的安全措施之一。

然而,由于传统验证码的设计越来越复杂,人工识别验证码变得越来越困难,给用户带来了不便。

因此,研究基于人工智能的验证码识别技术已成为当前亟待解决的问题。

人工智能技术在图像识别领域已经取得了显著的进展,并在验证码识别方面显示出巨大的潜力。

验证码通常由一系列的字母、数字或图形组成,其中包含一些干扰项以防止自动化的识别。

基于人工智能的验证码识别涉及两个主要的方面:特征提取和分类器训练。

特征提取是指将验证码图像中的有用信息提取出来以供分类器使用。

常用的特征提取方法包括图像预处理、边缘检测、形状描述符和颜色特征等。

通过对图像进行预处理,可以去除噪声、调整图像大小和增强图像对比度等。

边缘检测可以识别图像中的边缘信息,从而提取出验证码中的字符轮廓。

形状描述符可以表示字符的形状特征,例如角度、曲率和比例等。

颜色特征可以提取图像中不同区域的颜色分布,有助于识别验证码中的不同字符。

分类器训练是指使用特征提取的数据集来训练一个能够自动识别验证码的算法。

常见的分类器包括支持向量机(SVM)、卷积神经网络(CNN)和随机森林(RF)等。

SVM算法是一种监督学习方法,通过构建一个决策边界来将不同类别的样本分开。

CNN算法利用卷积层、池化层和全连接层等结构来提取特征并进行分类。

随机森林算法则通过多个决策树的集成来进行分类,每棵树都是由不同的特征选择训练出来的。

在进行基于人工智能的验证码识别研究时,有一些挑战需要面对。

首先,验证码的设计者通常会不断改进其设计,以对抗自动化识别的算法,这就要求识别系统能够不断适应新的验证码设计。

其次,验证码中的干扰项可能会使识别任务更加困难,例如扭曲、旋转、遮挡等。

此外,大规模的数据集收集和标注也是一个挑战,因为标注验证码图像需要人力成本较高。

为了解决这些挑战,研究者们提出了一些创新和有效的方法。

一种常见的方法是利用深度学习算法,如卷积神经网络(CNN),来实现验证码的自动识别。

验证码识别技术研究

验证码识别技术研究

中国科学技术大学学位论文授权使用声明
作为申请学位的条件之一, 学位论文著作权拥有者授权中国科学技术大学拥 有学位论文的部分使用权, 即: 学校有权按有关规定向国家有关部门或机构送交 论文的复印件和电子版,允许论文被查阅和借阅,可以将学位论文编入《中国学 位论文全文数据库》等有关数据库进行检索,可以采用影印、缩印或扫描等复制 手段保存、 汇编学位论文。 本人提交的电子文档的内容和纸质论文的内容相一致。 保密的学位论文在解密后也遵守此规定。 □公开 □保密(____年) 导师签名:_______________ 签字日期:_______________
I
Abstract
ABSTRACT
With the rapid development of Internet , the network has brought great convenience to people's live. At the same time, network security issues are also prominently increasing. As a widely used means, Network CAPTCHA has played an important role in network security. The research of CAPTCHA recognition technology can help us discover and improve the loopholes of the verification code, so as to prevent websites from malicious attacks by machine program. This paper uses computer vision and pattern recognition to recognize different types of CAPTCHA. We select the representative Mop, Xicihutong and Tianya captcha as the research object. Aiming at the specific code, we proposed targeted breaking method to solve practical problems. The results reveal the possibility of their insecurity. Through comparison of different recognition algorithms, the study has theoretical and practical value. Following is the main work and achievements: 1. Focus on the algorithms of BP neural network, convolutional neural network, and give their details of the derivation. 2. For the existing divided Mop code, we propose a recognition scheme. It use piecewise linear transformation to remove the image blur. Local OSTU binary threshold got better than the global results. After improving the traditional projection method we propose the minimum segmentation algorithm and it effectively solve the merged characters in Mop code. Then simplified convolutional neural network is used to train and recognize single character. It achieves a high recognition rate at 94.1%. 3. For existing Xicihutong verification code, the K-means clustering algorithm combined with vertical projection is proposed to complete division and it solve the problem of stacking and adhesion. Then single character is trained and recognized by simplified convolutional neural network and the recognition rate is 53%. 4. For existing tianya captcha, we put forward the overall recognition algorithm based on shape context to verify code. The broken rate is 27.7%. This global recognition thought also gives a new idea to identify other code which is more difficult to split. Key words: CAPTCHA, recognition, convolutional neural network, BP neural network, shape context

验证码识别技术的研究与应用

验证码识别技术的研究与应用

验证码识别技术的研究与应用随着现代科技的不断发展,互联网在我们的日常生活中扮演着越来越重要的角色。

然而,随着互联网的普及,一些不法分子也越来越多地利用互联网从事各种欺诈行为。

为了保护用户信息的安全和保护其权益,各大网站普遍采用了验证码技术来防止恶意攻击和非法注册。

验证码(Captcha)即全自动区分计算机和人类的公开测试,其目的是在用户注册、登录、修改密码等行为中识别出是否为人类用户。

验证码可以有效地防范撞库、注册机等的威胁,因其安全性高、易实现受到了广泛应用。

验证码技术的研究主要包括两部分:一是验证码生成技术,二是验证码识别技术。

验证码的生成技术目前也比较成熟,有基于音频、图形、动画等多种类型。

验证码的识别技术是指通过计算机对验证码图片进行自动识别,即通过计算机模拟人眼识别图像的过程实现识别。

验证码识别技术是验证码技术的核心之一。

随着机器学习技术和深度学习技术的不断发展,验证码识别技术也在不断深入和完善。

在本文中,我们将对验证码识别技术的研究和应用进行详细探讨。

一、验证码识别技术验证码识别技术主要分为两种:基于图像处理的传统识别技术和基于机器学习的深度学习技术。

1、传统识别技术传统识别技术是指通过计算机对验证码图片进行处理,再用算法对验证码进行判别和识别。

主要涉及图像预处理、特征提取和目标分类三个方面。

图像预处理是对验证码图片进行必要的预处理操作,包括图像二值化、去噪和字符分割等。

在图像二值化时,可以采用全局阈值分割或局部自适应阈值分割。

去噪操作可以采用一般的模板滤波方法,如中值滤波或高斯滤波。

字符分割是将验证码中的字符分离出来,并同时消除噪声。

字符分割需注意一点,即在纵向方向上必须将字符分割为一列。

最后提取出字符后,可以进行特征提取和目标分类操作。

特征提取是将验证码中的字符进行几何或统计学上的特征分析,将其转化成多维特征向量,以便于机器学习算法的处理。

特征提取采用灰度共生矩阵、小波变换、SIFT等各种不同的技术。

验证码识别 空间推理

验证码识别 空间推理

验证码识别空间推理【知识文章】探索验证码识别技术的空间推理应用1. 引言验证码识别 (Captcha recognition) 是一项旨在辨别人类和计算机之间的身份差异的自动化技术。

使用验证码可以防止网站被自动化爬虫攻击、垃圾邮件、恶意软件等活动。

然而,验证码也给用户带来了一定的不便,特别是当用户在手机上尝试解决复杂的图形或逻辑难题时。

为了解决这一问题,验证码识别技术应运而生,它通过图像处理和机器学习技术来自动识别和解析验证码。

本文将深入探讨验证码识别技术的空间推理应用,为读者带来全面了解。

2. 验证码识别技术概述验证码识别技术基于计算机视觉和机器学习的方法,致力于识别和解析验证码。

这项技术可以分为以下几个步骤:图像预处理、特征提取、模型训练和结果解析。

图像预处理阶段对验证码图像进行降噪、二值化和分割等操作,以减少噪声对后续处理的干扰。

特征提取阶段将验证码图像转化为数字或向量表示,以便输入到机器学习模型中进行训练。

模型训练阶段使用标注好的样本数据来训练分类模型或神经网络,以辨识不同的验证码类型。

结果解析阶段将识别出的验证码结果返回给用户或用于进一步业务逻辑判断。

3. 空间推理在验证码识别中的应用3.1 验证码图像重构空间推理是人类智能中的重要组成部分,它允许我们通过观察、推断和比较来解决问题。

在验证码识别中,空间推理可以应用于验证码图像重构。

通过观察一些基本图形的特征,例如直线、弧线和曲线等,我们可以推断出未知验证码图像的可能形状。

这种空间推理技术可以在图像预处理阶段帮助去除噪声和补充缺失的部分,从而提高验证码识别的准确度和稳定性。

3.2 结构化上下文信息验证码中的字符通常是有特定结构和顺序的,例如水平文本验证码中的字符排列顺序是左到右。

利用空间推理,我们可以根据这种结构化的上下文信息来准确地判断字符的位置和相对顺序。

这样一来,在模型训练时可以引入更多的上下文特征,提高验证码识别的鲁棒性和准确性。

基于模糊聚类与RBF网络集成分类器的验证码识别

基于模糊聚类与RBF网络集成分类器的验证码识别

图1 B 网络结构图 RF
不同类别的中心是按照第一类 、 第二类 、 第 c …、 类在网络的 中是按顺 序排列 的。R F网隐层采用如下 B 标 准 G us n径 向基 函数 , asa i 如式 子 ( ) 5:
4 2
东 北 电 力 大 学学 报
第3 2卷
( )=
() 5
法体现 了整体优先 , 细节补偿的思想 , 能够充分利用训练 样本集 的信息 , 改进 了低 质量字符 识别率 不高
的 问题 。
关 键
词: 模糊聚类 ; B R F网络 ; 识别置信度 ; 验证码 识别
文献 标 识 码 : A
中 图 分 类 号 : P3 1 T 9
验证 码作 为新 兴 的网络 安全 防护机 制 , 广泛用 于互 联 网以实 现 区分 人 机 。对 验 证 码识 别 技 术 的研
2 3 识别 置信 度 的设置 .
定理 1用于外监督分类的径向基神经网络 , : 其输出层 的输 出为模式样本后验概率估计 的充要条件
是 其 隐层单 元 函数为 P re azn窗密 度 函数 。 在 识别 时 , 字符 网络 并联 集成 , 单 形成 字符 串识 别集 成分类器 , 据定 理 1 其评 价 准则 采 用基 于 后 依 , 验 概 率 的权 值 自动调 整 的方法 。 当第 一次识 别就 能满 足识 别要求 时 , 则无需 再训 练 ; 则依 次增减 节点 , 否 并 进 行循 环集成 , 至所 有结果 均达 到 系统要求 的可信度 。 直 后验概 率估 计是 模式 分类 器组合 方法 的基 础 , 于后 验 概率 估 计 的估计 法 一 般 能更 好 地 利用 各 个 基
I =∑ ∑ ,
E= l k l
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。



第一章 绪论 ..................................................................................................................... 1 1.1 研究背景 ................................................................................................................. 1 1.1.1 验证码概念 ....................................................................................................... 1 1.1.2 验证码分类 ....................................................................................................... 2 1.1.3 验证码识别 ....................................................................................................... 5 1.2 论文章节安排 ......................................................................................................... 7 第二章 验证码识别国内外研究现状 ............................................................................. 9 2.1 验证码识别现状 ..................................................................................................... 9 2.2 验证码识别技术 ................................................................................................... 10 2.2.1 基于模板库匹配的方法 ................................................................................. 10 2.2.2 基于神经网络学习方法 ................................................................................. 11 2.2.3 基于形状上下文方法 ..................................................................................... 15 2.3 本章小结 ............................................................................................................... 16 第三章 论文涉及验证码特征 ....................................................................................... 17 3.1 雅虎验证码特征 ............................................................................................................................................................................ 19 3.3 RECAPTCHA 验证码特征 .................................................................................... 20 3.4 本章小结 ............................................................................................................... 21 第四章 验证码识别 ....................................................................................................... 23 4.1 雅虎验证码识别 ................................................................................................... 23 4.1.1 图片预处理 ..................................................................................................... 24 4.1.2 首尾切除 ......................................................................................................... 26 4.1.3 曲线拟合 ......................................................................................................... 28 4.1.4 闭环检测 ......................................................................................................... 31 4.1.5 基于四线谱的投影识别 ................................................................................. 33 4.1.6 均分 .......................................................................................................................................................................................... 37 4.3 RECAPTCHA 验证码识别 .................................................................................... 39 4.4 本章小结 ............................................................................................................... 42
Abstract
CAPTCHA is the standard technology to tell computer and human apart in the field of security, The most common scheme is based on the text of letters and numbers. The principle of connecting adjacent characters provides a high security for the CATPCHA. The typicalas a good reliability to resist the character segmentation and recognition. In this paper, we identifications some typical schemes by utilizing the characteristics of these CAPTCHAs. Early studies break the CAPTCHA by separating the original string into pieces one by one and recognizing them using the technology of OCR. In this paper, the recognized character will be removed from the original processing, projection technology, closed- loop detecting, four- line spectrum and curve fitting is used in the recognition process. The success split rate of Yahoo CAPTCHA is 78% and the recognition rate is 54.7%. The the recognition rate of reCAPTCHA is 17%. As the ideal CAPTCHA recognition rate should be less than 0.01% by the computer, the segmentation and recognition in this paper is successful. Keywords: CAPTCHA Recognition. Human Interactive Proof Segmentation
相关文档
最新文档