CN107067006B - 一种服务于数据采集的验证码识别方法及系统 - Google Patents
一种服务于数据采集的验证码识别方法及系统 Download PDFInfo
- Publication number
- CN107067006B CN107067006B CN201710262385.2A CN201710262385A CN107067006B CN 107067006 B CN107067006 B CN 107067006B CN 201710262385 A CN201710262385 A CN 201710262385A CN 107067006 B CN107067006 B CN 107067006B
- Authority
- CN
- China
- Prior art keywords
- character
- image
- verification code
- images
- segmentation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012795 verification Methods 0.000 title claims abstract description 156
- 238000000034 method Methods 0.000 title claims abstract description 86
- 230000011218 segmentation Effects 0.000 claims abstract description 122
- 238000012549 training Methods 0.000 claims abstract description 104
- 238000002372 labelling Methods 0.000 claims abstract description 9
- 238000012545 processing Methods 0.000 claims description 38
- 230000001788 irregular Effects 0.000 claims description 21
- 238000001914 filtration Methods 0.000 claims description 14
- 238000013527 convolutional neural network Methods 0.000 claims description 11
- 238000000605 extraction Methods 0.000 claims description 11
- 238000013480 data collection Methods 0.000 claims description 5
- 239000003086 colorant Substances 0.000 claims description 3
- 239000000853 adhesive Substances 0.000 claims 1
- 230000001070 adhesive effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/153—Segmentation of character regions using recognition of characters or words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/30—Noise filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Character Input (AREA)
- Character Discrimination (AREA)
Abstract
本发明提供了一种服务于数据采集的验证码识别方法及系统,该方法包括:根据URL列表下载若干验证码图像,提取部分图像作为验证码训练图像,剩余的验证码图像为待识别验证码图像;为验证码训练图像标注标签信息;对验证码训练图像和待识别验证码图像分别进行字符分割生成拆分后的单字符图像,并将若干带有标签信息的单字符图像组成训练样本集合,将未带有标签信息的单字符图像组成待测训练样本集合;对训练样本集合进行训练得到字符识别模型,同时将待测训练样本集合输入至字符识别模型中识别待测训练样本集合中的验证码字符信息。本发明能够快速对验证码进行快速识别,有效提高验证码识别的准确率和速率,提高了数据采集的效率。
Description
技术领域
本发明涉及图像数据识别技术领域,特别涉及一种服务于数据采集的验证码识别方法及系统。
背景技术
随着互联网技术的迅速发展,现在各种平台建站系统中,客户往往有数据采集的需求,例如现有的数据采集系统用于征集各企业、政府和金融机构等单位的数据,并保存在数据库中,但是目前各大网站为防止数据被采集,经常使用验证码的方式加以防范,验证码是一种区分用户使计算机和人的程序,通过该程序生成验证码图片,验证码图片中通常具有一串随机产生的字母和/或数字等字符,通过该验证码图片中增加干扰信息,例如杂点或者线条灯,由用户肉眼识别出来其中的验证信息,以防止通过计算机破解密码、自动注册等计算机操作,广泛用于各类网站、论坛等的注册、登陆等场景中,以提高系统的安全性。
为了实现对数据的采集,现有的数据采集方法需要大量人力和物力,通过人工采集不仅效率较低,而且增加了用户人眼识别的难度以及识别出验证码到输入验证码的时间,从而不利于提高用户识别验证码的效率,推迟了用户的后续操作,降低了数据采集的效率。
为此,现有专利公开号为CN101944177A公开的一种验证码识别方法,该方法中能够通过对干扰点和背景色的验证码进行正确识别,但是该技术不仅针对验证码中包含字符粘连、倾斜、旋转、变形等情况不能很好的识别,而且针对字符位置和大小不固定的验证码识别率低,其仅能针对较为简单的验证码进行识别,所以该系统应用较为局限,对验证码的识别率较低,为此,急需开发一种能够快速对验证码进行处理,且能够提高验证码识别速率的服务于数据采集的验证码识别系统和方法。
发明内容
为了解决现有的识别系统不仅针对验证码中包含字符粘连、倾斜、旋转、变形等情况不能很好的识别,而且针对字符位置和大小不固定的验证码识别率低,其仅能针对较为简单的验证码进行识别,所以该系统应用较为局限,对验证码的识别率较低等问题,本发明提供了一种对各种验证码均能实现有效识别的服务于数据采集的验证码识别方法及系统。
本发明具体技术方案如下:
本发明提供了一种服务于数据采集的验证码识别方法,所述识别方法包括以下步骤:
S1、根据URL列表下载若干验证码图像,由若干所述验证码图像中提取部分图像作为验证码训练图像,剩余的所述验证码图像为待识别验证码图像;
S2、为若干所述验证码训练图像标注标签信息,并进行保存,所述标签信息为所述验证码训练图像中的内容信息;
S3、对步骤S2中的所述验证码训练图像和步骤S1中的所述待识别验证码图像分别进行字符分割生成拆分后的单字符图像,并将若干带有所述标签信息的所述单字符图像组成训练样本集合,将未带有所述标签信息的所述单字符图像组成待测训练样本集合;
S4、对步骤S3中的所述训练样本集合进行训练得到字符识别模型,同时,将步骤S3中的所述待测训练样本集合输入至所述字符识别模型中识别所述待测训练样本集合中的验证码字符信息。
进一步的,步骤S3中,对步骤S2中的所述验证码训练图像和步骤S1中的所述待识别验证码图像分别进行字符分割生成拆分后的单字符图像,具体方法包括:
S3-1、对所述验证码训练图像和所述待识别验证码图像根据字符分布位置是否规律进行分类,所述字符分布位置为字符间距;
S3-2、将所述字符分布位置规律的图像通过等距分割法进行字符分割,将分割后的单字符图像进行保存;
S3-3、将所述字符分布位置不规律的图像通过通用分割法进行字符分割,将分割后的单字符图像根据预设的图像尺寸调整图像大小,并进行保存。
进一步的,步骤S3-2中,将所述字符分布位置规律的图像通过等距分割法进行字符分割,将分割后的单字符图像进行保存,具体方法为:
①将所述字符分布位置规律的图像进行灰度化处理得到灰度图像,去除所述灰度图像中的背景区域;
②对所述灰度图像进行二值化处理得到二值图像,剔除所述二值图像中的噪声;
③对除噪后的所述二值图像进行放大或缩小;
④根据预设的切割尺寸对所述二值图像进行字符分割,即得到标准的单字符图像,并将分割后的单字符图像进行保存。
进一步的,步骤S3-3中,将所述字符分布位置不规律的图像通过通用分割法进行字符分割,将分割后的单字符图像根据预设的图像尺寸调整图像大小,并进行保存,具体方法为:
①将所述字符分布位置不规律的图像进行去噪处理;
②去噪处理后的图像经过R、G、B三通道均值滤波,去除背景色,并对图像进行二值化处理;
③利用Canny算法提取图像的轮廓边缘;
④去除图像中的毛刺和细线;
⑤使用连通域算法获取图像中单个字符的轮廓,并获取轮廓凸包,根据所述轮廓凸包确定每个字符所在的中心位置;
⑥在每个字符的所述中心位置上设置外接矩形框,所述外接矩形框具有预设的长宽尺寸;
⑦根据所述外接矩形框进行矩形切割字符,即获得分割后的单字符图像。
进一步的,步骤④中,通过拓扑学open操作方法去除图像中的毛刺和细线。
进一步的,步骤④中,去除图像中的毛刺和细线的具体方法为:
识别图像中各个像素点;预设所述像素点的亮度范围阈值;识别图像中各个所述像素点的亮度值,并将所述亮度值与所述亮度范围阈值进行对比,并将所述亮度值超出所述亮度范围阈值的所述像素点去除,即完成对图像中的毛刺和细线的去除。
优选的,步骤⑥中,还包括对所述外接矩形框内字符个数的判断:
根据所述外接矩形框的尺寸范围判断是否包含多个字符:若包括多个字符则为粘连字符,将所述粘连字符通过所述等距分割法进行拆分并获取单字符图像。
进一步的,步骤S4中,对步骤S3中的所述训练样本集合进行训练得到字符识别模型,同时,将步骤S3中的所述待测训练样本集合输入至所述字符识别模型中识别所述待测训练样本集合中的字符信息,具体方法为:
S4-1、将步骤S3中所述训练样本集合内的若干带有所述标签信息的所述单字符图像输入至卷积神经网络中进行训练,即得到卷积神经网络字符识别模型,并进行保存;
S4-2、将步骤S3中的所述待测训练样本集合输入至所述卷积神经网络字符识别模型中进行识别即得到识别后的验证码字符信息。
本发明还提供了一种服务于数据采集的验证码识别系统,包括数据库及与所述数据库相通讯的下载模块、提取模块、标注模块、字符分割模块、样本建立模块、模型训练模块、识别模块;其中,
所述下载模块用于根据URL列表下载若干验证码图像,并保存在所述数据库中;所述提取模块用于由若干所述验证码图像中提取部分图像作为验证码训练图像,剩余的所述验证码图像为待识别验证码图像;所述标注模块用于为若干所述验证码训练图像标注标签信息,并保存在所数据库中;所述字符分割模块用于对所述验证码训练图像和所述待识别验证码图像分别进行字符分割生成拆分后的单字符图像;所述样本建立模块用于将若干带有所述标签信息的所述单字符图像组成训练样本集合,同时用于将未带有所述标签信息的所述单字符图像组成待测训练样本集合;所述模型训练模块用于对所述训练样本集合进行训练得到字符识别模型,并保存在所述数据库中;所述识别模块用于将所述待测训练样本集合输入至所述字符识别模型中识别所述待测训练样本集合中的验证码字符信息。
进一步的,所述字符分割模块包括相通讯的字符间距判断单元、分类处理单元、等距分割单元、通用分割单元;
所述字符间距判断单元用于对所述验证码训练图像和所述待识别验证码图像内字符间距判断字符分布位置是否规律;所述分类处理单元用于将所述字符分布位置规律的图像和所述字符分布位置不规律的图像进行分类,并分别发送至所述等距分割单元和所述通用分割单元;所述等距分割单元用于将所述字符分布位置规律的图像通过等距分割法进行字符分割,将分割后的单字符图像保存至所述数据库;所述通用分割单元用于将所述字符分布位置不规律的图像通过通用分割法进行字符分割,将分割后的单字符图像根据预设的图像尺寸调整图像大小,并保存至所述数据库;
优选的,所述等距分割单元包括相通讯的灰度子单元、二值化第一子单元、尺寸调整子单元、等距分割子单元,所述灰度子单元用于对所述字符分布位置规律的图像进行灰度化处理得到灰度图像,并去除所述灰度图像中的背景区域;所述二值化第一子单元用于对所述灰度图像进行二值化处理得到二值图像,并剔除所述二值图像中的噪声;所述尺寸调整子单元用于对除噪后的所述二值图像进行放大或缩小;所述等距分割子单元用于根据预设的切割尺寸对所述二值图像进行字符分割,即得到标准的单字符图像;
优选的,所述通用分割单元包括相通讯的去噪子单元、滤波子单元、二值化第二子单元、轮廓边缘提取子单元、毛刺处理子单元、轮廓获取子单元、矩形区域外接子单元及通用分割子单元;所述去噪子单元用于将所述字符分布位置不规律的图像进行去噪处理;所述滤波子单元用于对去噪处理后的图像经过R、G、B三通道均值滤波,并去除背景色;所述二值化第二子单元用于对图像进行二值化处理;所述轮廓边缘提取子单元用于利用Canny算法提取图像的轮廓边缘;所述毛刺处理子单元用于去除图像中的毛刺和细线;所述轮廓获取子单元用于使用连通域算法获取图像中单个字符的轮廓,并获取轮廓凸包,同时根据所述轮廓凸包确定每个字符所在的中心位置;所述矩形区域外接子单元用于在每个字符的所述中心位置上设置外接矩形框;所述通用分割子单元用于根据所述外接矩形框进行矩形切割字符,即获得分割后的单字符图像。
本发明的有益效果如下:本发明提供的识别方法能够快速对验证码进行快速识别,有效提高验证码识别的准确率和速率,为数据采集提供高效服务,节省了大量人力和物力,提高了数据采集的效率;此外,该系统能够适应不同格式的验证码图像,提高了字符图像识别效果,具有良好的适应性和有效性,能够高效的完成字符图像验证码的识别。
附图说明
图1为实施例1所述的一种服务于数据采集的验证码识别方法的流程图;
图2为实施例2所述的一种服务于数据采集的验证码识别方法中步骤3的具体操作流程图;
图3为实施例3所述的一种服务于数据采集的验证码识别方法中等距分割法的操作流程图;
图4为实施例4所述的一种服务于数据采集的验证码识别方法中通用分割法的操作流程图;
图5为实施例9所述的一种服务于数据采集的验证码识别系统的结构框图;
图6为实施例10所述的一种服务于数据采集的验证码识别系统中字符分割模块的结构框图;
图7为实施例11所述的一种服务于数据采集的验证码识别系统中等距分割单元的结构框图;
图8为实施例12所述的一种服务于数据采集的验证码识别系统中通用分割单元的结构框图。
其中:1、数据库;2、下载模块;3、提取模块;4、标注模块;5、字符分割模块;501、字符间距判断单元;502、分类处理单元;503、等距分割单元;5031、灰度子单元;5032、二值化第一子单元;5033、尺寸调整子单元;5034、等距分割子单元;504、通用分割单元;5041、去噪子单元;5042、滤波子单元;5043、二值化第二子单元;5044、轮廓边缘提取子单元;5045、毛刺处理子单元;5046、轮廓获取子单元;5047、矩形区域外接子单元;5048、通用分割子单元;6、样本建立模块;7、模型训练模块;8、识别模块。
具体实施方式
下面结合附图和以下实施例对本发明作进一步详细说明。
实施例1
如图1所示,本发明实施例1提供了一种服务于数据采集的验证码识别方法,所述识别方法包括以下步骤:
S1、系统根据用户提供的URL列表进入下载页面下载若干验证码图像,由若干所述验证码图像中提取部分图像作为验证码训练图像,剩余的所述验证码图像为待识别验证码图像,下载后的验证码保存在特定的文件夹中;需要说明的是,验证码下载过程中,下载失败一次会休眠1秒,再继续进行下载;多次失败后可以通过ctr+c终止程序,一段时间后重新运行程序,程序会自动接着上一次下载后的图像序号位置继续下载。
S2、人工识别验证码训练图像,并为若干所述验证码训练图像标注标签信息,并进行保存在特定的文件件中,所述标签信息为所述验证码训练图像中的内容信息。
S3、对步骤S2中的所述验证码训练图像和步骤S1中的所述待识别验证码图像分别进行字符分割生成拆分后的单字符图像,并将若干带有所述标签信息的所述单字符图像组成训练样本集合,将未带有所述标签信息的所述单字符图像组成待测训练样本集合。字符分割能够将验证码中的字符进行分割,形成单字符图像。
S4、对步骤S3中的所述训练样本集合进行训练得到字符识别模型,同时,将步骤S3中的所述待测训练样本集合输入至所述字符识别模型中识别所述待测训练样本集合中的验证码字符信息。
通过本发明提供的上述方法,能够快速识别各网站设置的多种形式的验证码,提高验证码识别的准确率和速率,缩短了识别码验证时间,有效提高数据采集系统对征集企业、政府和金融机构等单位的数据采集,实用性强。
实施例2
如图2所示,本发明实施例2在实施例1的基础上,进一步限定了步骤S3中,对步骤S2中的所述验证码训练图像和步骤S1中的所述待识别验证码图像分别进行字符分割生成拆分后的单字符图像,具体方法包括:
在对验证码进行分割过程中,首先对验证码进行分类划分,不同的验证码使用不同的分割方法。
S3-1、对所述验证码训练图像和所述待识别验证码图像根据字符分布位置是否规律进行分类,所述字符分布位置为字符间距;
S3-2、将所述字符分布位置规律的图像通过等距分割法进行字符分割,将分割后的单字符图像进行保存;等距分割法能够对字符间距均匀的验证码字符进行分割,分割过程中通过调整参数,能够实现字符分割。等距分割法较为简单,针对字符位置均匀的验证码能够实现快速分割。
S3-3、将所述字符分布位置不规律的图像通过通用分割法进行字符分割,将分割后的单字符图像根据预设的图像尺寸调整图像大小,并进行保存。针对字符位置不规律,且验证码中存在粘连的字符时,需要通过分割法进行分割,该分割方法普遍用于处理字符分布位置不规律、字符粘贴等难以等距分割的验证码图片。
通过上述方法能够实现验证码中字符的快速分割。
实施例3
如图3所示,本发明实施例3在实施例2的基础上,进一步限定了步骤S3-2中,将所述字符分布位置规律的图像通过等距分割法进行字符分割,将分割后的单字符图像进行保存,具体方法为:
①首先将所述字符分布位置规律的图像进行灰度化处理得到灰度图像,去除所述灰度图像中的背景区域;灰度化处理与现有的图像处理相同,通过灰度处理后去除背景区域,一般背景区域为白色,去除背景色后,仅保留字符区域。
②对所述灰度图像进行二值化处理得到二值图像,剔除所述二值图像中的噪声;对字符区域进行二值化处理,去除字符区域内的噪声,有效去除字符区域内的噪点,以防影响字符识别。
③为了实现字符的准确切割,提高对字符的辨别效果,对除噪后的所述二值图像进行放大或缩小。
④根据预设的切割尺寸对所述二值图像进行字符分割,即得到标准的单字符图像,并将分割后的单字符图像进行保存。根据预设的切割尺寸能够准确分割标准的单字符图像,分割后的单字符图像直接保存即可。
实施例4
如图4所示,本实施例4在实施例2的基础上进一步限定了步骤S3-3中,将所述字符分布位置不规律的图像通过通用分割法进行字符分割,将分割后的单字符图像根据预设的图像尺寸调整图像大小,并进行保存,具体方法为:
①首先将所述字符分布位置不规律的图像进行去噪处理,去噪处理过程可以通过现有图像处理中的常规方法进行去噪;
②去噪处理后的图像经过R、G、B三通道均值滤波,去除背景色,并对图像进行二值化处理,三通道均值滤波能够去除背景色;
③利用Canny算法提取图像的轮廓边缘,Canny算法为现有的常规边缘检测方法,用于提取图像的轮廓边缘;
④本发明中可以通过现有技术去除图像中的毛刺和细线,只要能够实现将毛刺和细线进行去除即可,去除毛刺和细线对字符的干扰性;
⑤使用连通域算法获取图像中单个字符的轮廓,并获取轮廓凸包,根据所述轮廓凸包确定每个字符所在的中心位置;
⑥在每个字符的所述中心位置上设置外接矩形框,所述外接矩形框具有预设的长宽尺寸,在图像中加入矩形框框形,对图像中的字符进行定位,便于对单个字符的切割;
⑦根据所述外接矩形框进行矩形切割字符,即获得分割后的单字符图像。
实施例5
本实施例5在实施例4的基础上进一步限定了,步骤④中,通过拓扑学open操作方法去除图像中的毛刺和细线。
实施例6
本发明实施例6在实施例4的基础上进一步限定了步骤④中,去除图像中的毛刺和细线的具体方法为:
识别图像中各个像素点;预设所述像素点的亮度范围阈值;识别图像中各个所述像素点的亮度值,并将所述亮度值与所述亮度范围阈值进行对比,并将所述亮度值超出所述亮度范围阈值的所述像素点去除,即完成对图像中的毛刺和细线的去除。
为了起到对验证码中字符的干扰作用,一般毛刺和细线的亮度值比较大或比较小,为此,通过对图像中像素点亮度值的识别,与预设的亮度范围阀值对比,即可筛选出亮度较高或亮度较低的毛刺或细线,筛选出后直接去除即可。在次过程中,预设的亮度范围阀值根据图像中字符像素点进行预设。
实施例7
本发明实施例7在实施例4的基础上优选的限定了,步骤⑥中,还包括对所述外接矩形框内字符个数的判断:
若矩形框内包含多个字符,那么说明字符之间存在粘连,为此,本发明限定了根据所述外接矩形框的尺寸范围判断是否包含多个字符:若包括多个字符则为粘连字符,将所述粘连字符通过所述等距分割法进行拆分并获取单字符图像。针对无法通过通用分割法分离的粘连字符,需要通过等距分割法进行分割,有效提高了分割效率,未年粘连的字符直接通过通用分割法进行分割即可。
粘连字符可能被包含在同一个矩形框内,根据矩形框的宽度判定是否包含多个字符,根据情况分割矩形,而对于较小的矩形框,可能只包含汉字的某个偏旁,将其与周围的大框合并组成一个字符即可。
实施例8
本发明实施例8在实施例1的基础上进一步限定了,步骤S4中,对步骤S3中的所述训练样本集合进行训练得到字符识别模型,同时,将步骤S3中的所述待测训练样本集合输入至所述字符识别模型中识别所述待测训练样本集合中的字符信息,具体方法为:
S4-1、将步骤S3中所述训练样本集合内的若干带有所述标签信息的所述单字符图像输入至卷积神经网络中进行训练,即得到卷积神经网络字符识别模型,并进行保存。
需要说明的是,本发明中提供的卷积神经网络包括输入层、第一卷积层、第二卷积层、第一池化层、第三卷积层、第一全连接层和输出层。
S4-2、将步骤S3中的所述待测训练样本集合输入至所述卷积神经网络字符识别模型中进行识别即得到识别后的验证码字符信息。
本发明在对待测训练样本集合进行识别时,首先将待测训练样本集合内的单字符图像输入至卷积神经网络字符识别模型训练,每个单字符图像均输出一个深度特征向量,若干深度特征向量组成向量集合,向量集合输入至通过概率支持向量机进行分类计算即得到识别后的验证码字符,使用卷积神经网络的识别模型能够有效提高对验证码的识别效率,辅助人工对数据进行采集,同时提高了数据采集效率。
实施例9
如图5所示,本发明实施例9还提供了一种服务于数据采集的验证码识别系统,包括数据库1及与所述数据库1相通讯的下载模块2、提取模块3、标注模块4、字符分割模块5、样本建立模块6、模型训练模块7、识别模块8;其中,
所述下载模块2用于根据URL列表下载若干验证码图像,并保存在所述数据库1中;所述提取模块3用于由若干所述验证码图像中提取部分图像作为验证码训练图像,剩余的所述验证码图像为待识别验证码图像;所述标注模块4用于为若干所述验证码训练图像标注标签信息,并保存在所数据库1中;所述字符分割模块5用于对所述验证码训练图像和所述待识别验证码图像分别进行字符分割生成拆分后的单字符图像;所述样本建立模块6用于将若干带有所述标签信息的所述单字符图像组成训练样本集合,同时用于将未带有所述标签信息的所述单字符图像组成待测训练样本集合;所述模型训练模块7用于对所述训练样本集合进行训练得到字符识别模型,并保存在所述数据库1中;所述识别模块8用于将所述待测训练样本集合输入至所述字符识别模型中识别所述待测训练样本集合中的验证码字符信息。
该系统结构简单,操作方便,能够满足用户的需求,有效提高对验证码的识别效率,同时识别效率准确率较高,方便数据采集,提高数据采集效率。
实施例10
如图6所示,本发明实施例10在实施例9的基础上进一步限定了所述字符分割模块5包括相通讯的字符间距判断单元501、分类处理单元502、等距分割单元503、通用分割单元504;
所述字符间距判断单元501用于对所述验证码训练图像和所述待识别验证码图像内字符间距判断字符分布位置是否规律;所述分类处理单元502用于将所述字符分布位置规律的图像和所述字符分布位置不规律的图像进行分类,并分别发送至所述等距分割单元503和所述通用分割单元504;所述等距分割单元503用于将所述字符分布位置规律的图像通过等距分割法进行字符分割,将分割后的单字符图像保存至所述数据库1;所述通用分割单元504用于将所述字符分布位置不规律的图像通过通用分割法进行字符分割,将分割后的单字符图像根据预设的图像尺寸调整图像大小,并保存至所述数据库1。
上述技术方案中,通过对不同验证码进行分类,有效提高了对验证码的识别效率,不同的分割方法能够对不同的验证码中字符的分割,分割效率更高,适用范围更广,实用性强。
实施例11
如图7所示,本发明实施例11在实施例10的基础上优选的限定了,所述等距分割单元503包括相通讯的灰度子单元5031、二值化第一子单元5032、尺寸调整子单元5033、等距分割子单元5034,所述灰度子单元5031用于对所述字符分布位置规律的图像进行灰度化处理得到灰度图像,并去除所述灰度图像中的背景区域;所述二值化第一子单元5032用于对所述灰度图像进行二值化处理得到二值图像,并剔除所述二值图像中的噪声;所述尺寸调整子单元5033用于对除噪后的所述二值图像进行放大或缩小;所述等距分割子单元5034用于根据预设的切割尺寸对所述二值图像进行字符分割,即得到标准的单字符图像。
上述技术方案中,等距分割法能够对字符间距均匀的验证码字符进行分割,分割过程中通过调整参数,能够实现字符分割。等距分割法较为简单,针对字符位置均匀的验证码能够实现快速分割。
实施例12
如图8所示,本发明实施例12在实施例10的基础上优选的限定了,所述通用分割单元504包括相通讯的去噪子单元5041、滤波子单元5042、二值化第二子单元5043、轮廓边缘提取子单元5044、毛刺处理子单元5045、轮廓获取子单元5046、矩形区域外接子单元5047及通用分割子单元5048;所述去噪子单元5041用于将所述字符分布位置不规律的图像进行去噪处理;所述滤波子单元5042用于对去噪处理后的图像经过R、G、B三通道均值滤波,并去除背景色;所述二值化第二子单元5043用于对图像进行二值化处理;所述轮廓边缘提取子单元5044用于利用Canny算法提取图像的轮廓边缘;所述毛刺处理子单元5045用于去除图像中的毛刺和细线;所述轮廓获取子单元5046用于使用连通域算法获取图像中单个字符的轮廓,并获取轮廓凸包,同时根据所述轮廓凸包确定每个字符所在的中心位置;所述矩形区域外接子单元5047用于在每个字符的所述中心位置上设置外接矩形框;所述通用分割子单元5048用于根据所述外接矩形框进行矩形切割字符,即获得分割后的单字符图像。
上述技术方案中,针对字符位置不规律,且验证码中存在粘连的字符时,需要通过分割法进行分割,该分割方法普遍用于处理字符分布位置不规律、字符粘贴等难以等距分割的验证码图片。
本发明不局限于上述最佳实施方式,任何人在本发明的启示下都可得出其他各种形式的产品,但不论在其形状或结构上作任何变化,凡是具有与本申请相同或相近似的技术方案,均落在本发明的保护范围之内。
Claims (6)
1.一种服务于数据采集的验证码识别方法,其特征在于,所述识别方法包括以下步骤:
S1、根据URL列表下载若干验证码图像,由若干所述验证码图像中提取部分图像作为验证码训练图像,剩余的所述验证码图像为待识别验证码图像;
S2、为若干所述验证码训练图像标注标签信息,并进行保存,所述标签信息为所述验证码训练图像中的内容信息;
S3、对步骤S2中的所述验证码训练图像和步骤S1中的所述待识别验证码图像分别进行字符分割生成拆分后的单字符图像,并将若干带有所述标签信息的所述单字符图像组成训练样本集合,将未带有所述标签信息的所述单字符图像组成待测训练样本集合;
S4、对步骤S3中的所述训练样本集合进行训练得到字符识别模型,同时,将步骤S3中的所述待测训练样本集合输入至所述字符识别模型中识别所述待测训练样本集合中的验证码字符信息;
步骤S3中,对步骤S2中的所述验证码训练图像和步骤S1中的所述待识别验证码图像分别进行字符分割生成拆分后的单字符图像,具体方法包括:
S3-1、对所述验证码训练图像和所述待识别验证码图像根据字符分布位置是否规律进行分类,所述字符分布位置为字符间距;
S3-2、将所述字符分布位置规律的图像通过等距分割法进行字符分割,将分割后的单字符图像进行保存;
S3-3、将所述字符分布位置不规律、且验证码中存在粘连的字符的图像通过通用分割法进行字符分割,将分割后的单字符图像根据预设的图像尺寸调整图像大小,并进行保存;
步骤S3-3的具体方法为:
①将所述字符分布位置不规律、且验证码中存在粘连的字符的图像进行去噪处理;
②去噪处理后的图像经过R、G、B三通道均值滤波,去除背景色,并对图像进行二值化处理;
③利用Canny算法提取图像的轮廓边缘;
④去除图像中的毛刺和细线;
⑤使用连通域算法获取图像中单个字符的轮廓,并获取轮廓凸包,根据所述轮廓凸包确定每个字符所在的中心位置;
⑥在每个字符的所述中心位置上设置外接矩形框,所述外接矩形框具有预设的长宽尺寸;根据所述外接矩形框的尺寸范围判断是否包含多个字符:若包括多个字符则为粘连字符,将所述粘连字符通过所述等距分割法进行拆分并获取单字符图像;对于较小的矩形框,将其与周围的大框合并组成一个字符;
⑦根据所述外接矩形框进行矩形切割字符,即获得分割后的单字符图像;
步骤④中,去除图像中的毛刺和细线的具体方法为:
识别图像中各个像素点;预设所述像素点的亮度范围阈值;识别图像中各个所述像素点的亮度值,并将所述亮度值与所述亮度范围阈值进行对比,并将所述亮度值超出所述亮度范围阈值的所述像素点去除,即完成对图像中的毛刺和细线的去除。
2.如权利要求1所述的服务于数据采集的验证码识别方法,其特征在于,步骤S3-2中,将所述字符分布位置规律的图像通过等距分割法进行字符分割,将分割后的单字符图像进行保存,具体方法为:
①将所述字符分布位置规律的图像进行灰度化处理得到灰度图像,去除所述灰度图像中的背景区域;
②对所述灰度图像进行二值化处理得到二值图像,剔除所述二值图像中的噪声;
③对除噪后的所述二值图像进行放大或缩小;
④根据预设的切割尺寸对所述二值图像进行字符分割,即得到标准的单字符图像,并将分割后的单字符图像进行保存。
3.如权利要求1所述的服务于数据采集的验证码识别方法,其特征在于,步骤④中,通过拓扑学open操作方法去除图像中的毛刺和细线。
4.如权利要求1所述的服务于数据采集的验证码识别方法,其特征在于,步骤S4中,对步骤S3中的所述训练样本集合进行训练得到字符识别模型,同时,将步骤S3中的所述待测训练样本集合输入至所述字符识别模型中识别所述待测训练样本集合中的字符信息,具体方法为:
S4-1、将步骤S3中所述训练样本集合内的若干带有所述标签信息的所述单字符图像输入至卷积神经网络中进行训练,即得到卷积神经网络字符识别模型,并进行保存;
S4-2、将步骤S3中的所述待测训练样本集合输入至所述卷积神经网络字符识别模型中进行识别即得到识别后的验证码字符信息。
5.一种服务于数据采集的验证码识别系统,其特征在于,包括数据库(1)及与所述数据库(1)相通讯的下载模块(2)、提取模块(3)、标注模块(4)、字符分割模块(5)、样本建立模块(6)、模型训练模块(7)、识别模块(8);其中,
所述下载模块(2)用于根据URL列表下载若干验证码图像,并保存在所述数据库(1)中;所述提取模块(3)用于由若干所述验证码图像中提取部分图像作为验证码训练图像,剩余的所述验证码图像为待识别验证码图像;所述标注模块(4)用于为若干所述验证码训练图像标注标签信息,并保存在所述数据库(1)中;所述字符分割模块(5)用于对所述验证码训练图像和所述待识别验证码图像分别进行字符分割生成拆分后的单字符图像;所述样本建立模块(6)用于将若干带有所述标签信息的所述单字符图像组成训练样本集合,同时用于将未带有所述标签信息的所述单字符图像组成待测训练样本集合;所述模型训练模块(7)用于对所述训练样本集合进行训练得到字符识别模型,并保存在所述数据库(1)中;所述识别模块(8)用于将所述待测训练样本集合输入至所述字符识别模型中识别所述待测训练样本集合中的验证码字符信息;
所述字符分割模块(5)包括相通讯的字符间距判断单元(501)、分类处理单元(502)、等距分割单元(503)、通用分割单元(504);
所述字符间距判断单元(501)用于对所述验证码训练图像和所述待识别验证码图像内字符间距判断字符分布位置是否规律;所述分类处理单元(502)用于将所述字符分布位置规律的图像和所述字符分布位置不规律、且验证码中存在粘连的字符的图像进行分类,并分别发送至所述等距分割单元(503)和所述通用分割单元(504);所述等距分割单元(503)用于将所述字符分布位置规律的图像通过等距分割法进行字符分割,将分割后的单字符图像保存至所述数据库(1);所述通用分割单元(504)用于将所述字符分布位置不规律、且验证码中存在粘连的字符的图像通过通用分割法进行字符分割,将分割后的单字符图像根据预设的图像尺寸调整图像大小,并保存至所述数据库(1);
所述通用分割单元(504)包括相通讯的去噪子单元(5041)、滤波子单元(5042)、二值化第二子单元(5043)、轮廓边缘提取子单元(5044)、毛刺处理子单元(5045)、轮廓获取子单元(5046)、矩形区域外接子单元(5047)及通用分割子单元(5048);所述去噪子单元(5041)用于将所述字符分布位置不规律、且验证码中存在粘连的字符的图像进行去噪处理;所述滤波子单元(5042)用于对去噪处理后的图像经过R、G、B三通道均值滤波,并去除背景色;所述二值化第二子单元(5043)用于对图像进行二值化处理;所述轮廓边缘提取子单元(5044)用于利用Canny算法提取图像的轮廓边缘;所述毛刺处理子单元(5045)用于去除图像中的毛刺和细线;所述轮廓获取子单元(5046)用于使用连通域算法获取图像中单个字符的轮廓,并获取轮廓凸包,同时根据所述轮廓凸包确定每个字符所在的中心位置;所述矩形区域外接子单元(5047)用于在每个字符的所述中心位置上设置外接矩形框;所述通用分割子单元(5048)用于根据所述外接矩形框进行矩形切割字符,即获得分割后的单字符图像。
6.如权利要求5所述的服务于数据采集的验证码识别系统,其特征在于,所述等距分割单元(503)包括相通讯的灰度子单元(5031)、二值化第一子单元(5032)、尺寸调整子单元(5033)、等距分割子单元(5034),所述灰度子单元(5031)用于对所述字符分布位置规律的图像进行灰度化处理得到灰度图像,并去除所述灰度图像中的背景区域;所述二值化第一子单元(5032)用于对所述灰度图像进行二值化处理得到二值图像,并剔除所述二值图像中的噪声;所述尺寸调整子单元(5033)用于对除噪后的所述二值图像进行放大或缩小;所述等距分割子单元(5034)用于根据预设的切割尺寸对所述二值图像进行字符分割,即得到标准的单字符图像。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710262385.2A CN107067006B (zh) | 2017-04-20 | 2017-04-20 | 一种服务于数据采集的验证码识别方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710262385.2A CN107067006B (zh) | 2017-04-20 | 2017-04-20 | 一种服务于数据采集的验证码识别方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107067006A CN107067006A (zh) | 2017-08-18 |
CN107067006B true CN107067006B (zh) | 2022-03-18 |
Family
ID=59599899
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710262385.2A Active CN107067006B (zh) | 2017-04-20 | 2017-04-20 | 一种服务于数据采集的验证码识别方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107067006B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107992527B (zh) * | 2017-11-09 | 2021-01-29 | 武汉极意网络科技有限公司 | 数据标记校验方法、服务器及存储介质 |
CN107967475B (zh) * | 2017-11-16 | 2020-04-14 | 广州探迹科技有限公司 | 一种基于窗口滑动和卷积神经网络的验证码识别方法 |
CN108268641B (zh) * | 2018-01-18 | 2020-11-13 | 大象慧云信息技术有限公司 | 发票信息识别方法及发票信息识别装置、设备和存储介质 |
CN108236784B (zh) * | 2018-01-22 | 2021-09-24 | 腾讯科技(深圳)有限公司 | 模型的训练方法和装置、存储介质、电子装置 |
CN110661678B (zh) * | 2018-06-29 | 2021-11-19 | 北京神州泰岳软件股份有限公司 | 一种异常监控方法和装置 |
CN109325491B (zh) | 2018-08-16 | 2023-01-03 | 腾讯科技(深圳)有限公司 | 识别码识别方法、装置、计算机设备和存储介质 |
CN109117848B (zh) * | 2018-09-07 | 2022-11-18 | 泰康保险集团股份有限公司 | 一种文本行字符识别方法、装置、介质和电子设备 |
CN109543677A (zh) * | 2018-11-08 | 2019-03-29 | 上海金啤包装检测科技有限公司 | 喷码的检测方法及设备、生产线、计算机设备、存储介质 |
CN109934800A (zh) * | 2019-01-30 | 2019-06-25 | 红云红河烟草(集团)有限责任公司 | 一种烟包卡纸的定位方法及系统 |
CN111160369B (zh) * | 2019-12-25 | 2024-03-05 | 携程旅游信息技术(上海)有限公司 | 破解汉字验证码的方法、系统、电子设备及存储介质 |
CN111753845B (zh) * | 2020-06-30 | 2024-08-13 | 北京来也网络科技有限公司 | 基于ai的验证码图片识别方法、装置、设备及存储介质 |
CN112035821A (zh) * | 2020-09-04 | 2020-12-04 | 平安科技(深圳)有限公司 | 图形验证码识别方法、装置、计算机设备及存储介质 |
CN112270325B (zh) * | 2020-11-09 | 2024-05-24 | 携程旅游网络技术(上海)有限公司 | 字符验证码识别模型训练方法、识别方法、系统、设备及介质 |
CN113032342B (zh) * | 2021-03-03 | 2023-09-05 | 北京车和家信息技术有限公司 | 一种视频打标签的方法、装置、电子设备及存储介质 |
CN113112467B (zh) * | 2021-04-06 | 2023-04-07 | 上海深至信息科技有限公司 | 一种平面图标注系统 |
CN116824591B (zh) * | 2023-04-19 | 2023-12-05 | 钛玛科(北京)工业科技有限公司 | 一种用于轮胎胎侧字符的识别方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101944177A (zh) * | 2010-08-30 | 2011-01-12 | 深圳市多赢软件技术有限公司 | 一种验证码识别方法 |
SG194267A1 (en) * | 2012-05-03 | 2013-11-29 | C3S Pte Ltd | Method and system for protecting a password during an authentication process |
CN105095890B (zh) * | 2014-04-25 | 2019-02-26 | 广州市动景计算机科技有限公司 | 图像中字符分割方法及装置 |
CN104252620B (zh) * | 2014-09-25 | 2017-06-06 | 同程网络科技股份有限公司 | 字符粘连的图形验证码识别方法 |
CN104408455B (zh) * | 2014-11-27 | 2017-09-12 | 上海理工大学 | 粘连字符分割方法 |
CN105989377A (zh) * | 2015-06-30 | 2016-10-05 | 乐视致新电子科技(天津)有限公司 | 一种字符识别方法及装置 |
US10529318B2 (en) * | 2015-07-31 | 2020-01-07 | International Business Machines Corporation | Implementing a classification model for recognition processing |
CN105447508A (zh) * | 2015-11-10 | 2016-03-30 | 上海珍岛信息技术有限公司 | 一种字符图像验证码识别的方法及系统 |
CN106446897A (zh) * | 2016-09-09 | 2017-02-22 | 浪潮软件股份有限公司 | 一种空心验证码的识别方法 |
-
2017
- 2017-04-20 CN CN201710262385.2A patent/CN107067006B/zh active Active
Non-Patent Citations (1)
Title |
---|
Using Contour Analysis to Improve Feature Extraction in Thai Handwritten Character Recognition Systems;Jarernsri L. Mitrpanont et al.;《7th IEEE International Conference on Computer and Information Technology》;20071121;第668-673页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107067006A (zh) | 2017-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107067006B (zh) | 一种服务于数据采集的验证码识别方法及系统 | |
CN107967475B (zh) | 一种基于窗口滑动和卷积神经网络的验证码识别方法 | |
CN107609549B (zh) | 一种自然场景下证件图像的文本检测方法 | |
CN110334706B (zh) | 一种图像目标识别方法及装置 | |
US11003941B2 (en) | Character identification method and device | |
WO2019169532A1 (zh) | 车牌识别方法及云系统 | |
CN103824053B (zh) | 一种人脸图像的性别标注方法及人脸性别检测方法 | |
CN108205673B (zh) | 用于集装箱码识别的方法和系统 | |
CN107808358B (zh) | 图像水印自动检测方法 | |
CN108108731B (zh) | 基于合成数据的文本检测方法及装置 | |
CN110598686B (zh) | 发票的识别方法、系统、电子设备和介质 | |
WO2019061658A1 (zh) | 眼镜定位方法、装置及存储介质 | |
US10643094B2 (en) | Method for line and word segmentation for handwritten text images | |
WO2018086233A1 (zh) | 一种字符分割方法和装置、及元件检测方法和装置 | |
CN108491866B (zh) | 色情图片鉴定方法、电子装置及可读存储介质 | |
CN108154132A (zh) | 一种身份证文字提取方法、系统及设备和存储介质 | |
CN101122953A (zh) | 一种图片文字分割的方法 | |
CN110751146A (zh) | 文本区域检测方法、装置、电子终端和计算机可读存储介质 | |
US11600088B2 (en) | Utilizing machine learning and image filtering techniques to detect and analyze handwritten text | |
CN103824090A (zh) | 一种自适应的人脸低层特征选择方法及人脸属性识别方法 | |
CN110647896A (zh) | 一种基于logo图像的钓鱼页面识别方法及相关设备 | |
CN106331746B (zh) | 用于识别视频文件中的水印位置的方法和装置 | |
CN111209865A (zh) | 文件内容提取方法、装置、电子设备及存储介质 | |
CN112464797A (zh) | 一种吸烟行为检测方法、装置、存储介质及电子设备 | |
CN104966109A (zh) | 医疗化验单图像分类方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |