CN110674488A - 基于神经网络的验证码识别方法、系统及计算机设备 - Google Patents
基于神经网络的验证码识别方法、系统及计算机设备 Download PDFInfo
- Publication number
- CN110674488A CN110674488A CN201910844014.4A CN201910844014A CN110674488A CN 110674488 A CN110674488 A CN 110674488A CN 201910844014 A CN201910844014 A CN 201910844014A CN 110674488 A CN110674488 A CN 110674488A
- Authority
- CN
- China
- Prior art keywords
- layer
- dimensional convolution
- convolution
- dimensional
- feature maps
- 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.)
- Granted
Links
- 238000012795 verification Methods 0.000 title claims abstract description 63
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 30
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000010606 normalization Methods 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 10
- 239000011800 void material Substances 0.000 claims description 9
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 241000282414 Homo sapiens Species 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/36—User authentication by graphic or iconic representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Molecular Biology (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Hardware Design (AREA)
- Image Analysis (AREA)
Abstract
本发明实施例提供了一种基于神经网络的验证码识别方法,所述方法包括:获取目标网页中的验证码图片;通过二维卷积模块对验证码图片进行卷积操作,以得到n个二维卷积特征图;将n个二维卷积特征图转换为n个一维卷积特征图;通过一维卷积模块对n个一维卷积特征图进行卷积操作,以得到被一维卷积模块处理后的n个一维卷积特征图;将n个一维卷积特征图依次输入到第一全连接层、第一分类器中,以输出第一预测向量;将被一维卷积模块处理后的n个一维卷积特征图依次输入到第二全连接层、第二分类器中,以输出第二预测向量;及基于第一预测向量和第二预测向量,计算得到最终预测结果。本实施例具有较高的识别准确度,有效缩短计算时间和运算资源。
Description
技术领域
本发明实施例涉及计算机数据处理领域,尤其涉及一种基于神经网络的验证码识别方法、系统、计算机设备及计算机可读存储介质。
背景技术
目前,图片验证码(CAPTCHA)技术被广泛应用于各个领域,作为区分人类与恶意程序的重要技术手段。例如,图片验证码可以应用于WEB系统涉及登录和输入的网站页面上,具体的:在网站页面上显示一幅随机生成的验证码图像,由用户基于人眼识别其中的验证码并将识别的验证码输入到表单中,并提交该表单给服务端进行验证。由于图片验证码具有随机性和不易被恶意程序识别的特点,网站每次被访问时均可以随机产生一个不同的验证码,从而达到保护网站不被恶意使用的目的。
然而,随机信息技术的发展,信息资源对于合法公众来说至关重要。在平时的工作与学习中,常常需要到网站上获取信息资源,而,图片验证码的设置无疑为合法公众的访问带来诸多不便,从而降低信息资源的获取效率。为解决上述问题,目前采用的技术手段为:通过一般卷积神经网络循环神经网络自动识别验证码,并将识别的验证码自动提交表单进行网站验证,以提高信息资源的获取效率。但是,上述技术手段识别准确度低,且需要消耗较多的计算机运算资源。
发明内容
有鉴于此,本发明实施例的目的是提供一种基于神经网络的验证码识别方法、系统、计算机设备及计算机可读存储介质,解决识别准确度低,且需要消耗较多的计算机运算资源的问题。
为实现上述目的,本发明实施例提供了一种基于神经网络的验证码识别方法,包括以下步骤:
获取目标网页中的验证码图片;
通过二维卷积模块对所述验证码图片进行卷积操作,以得到n个二维卷积特征图;
将所述n个二维卷积特征图转换为n个一维卷积特征图;
通过一维卷积模块对n个一维卷积特征图进行卷积操作,以得到被所述一维卷积模块处理后的n个一维卷积特征图;
将所述n个一维卷积特征图依次输入到第一全连接层、第一分类器中,以输出第一预测向量;
将被所述一维卷积模块处理后的n个一维卷积特征图依次输入到第二全连接层、第二分类器中,以输出第二预测向量;及
基于所述第一预测向量和所述第二预测向量,计算得到最终预测结果。
优选的,所述二维卷积模块包括依次连接的:输入层、Lambda层和多个二维卷积层组合,各个二维卷积层组合依序连接,且每个二维卷积层组合包括:两个卷积支路以及与该两个卷积支路连接的合并层,每个卷积支路包括依次连接的:二维卷积层、第一BatchNormalization层、LeakyReLU层、Depthwise二维卷积层、第二Batch Normalization层、LeakyReLU层、二维卷积层和第三Batch Normalization层。
优选的,通过二维卷积模块对所述验证码图片进行卷积操作,以得到n个二维卷积特征图的步骤,包括:
S1:通过输入层输入所述验证码图片,并通过Lambda层将所述验证码图片切分为两张特征图,切分后的每张特征图的尺寸为(高度H/2)x宽度x通道数;
S2:将两张特征图输入到与所述Lambda层连接的第i二维卷积层组合中,得到叠加后的多个第i卷积特征图,i初始值为1;
S3:将所述多个第i卷积特征图切分为两组卷积特征图,每组卷积特征图分别包括多个切分卷积特征图;
S4:将所述多个第i卷积特征图中的两组卷积特征图对应输入到所述第i二维卷积层组合的下一个二维卷积层组合中,通过该下一个二维卷积层组合输出多个第i+1卷积特征图;
S5:将该多个第i+1卷积特征图重复执行S3和S4直至得到H为1的n个二维卷积特征图。
优选的,所述一维卷积模块包括依次连接的:一维卷积层、多个一维卷积层组合、后置合并层;相邻的两个一维卷积层组合之间配置有中间合并层,中间合并层用于将与之输入端连接的一维卷积层组合的输出和输入进行合并操作,所述中间合并层的输出作为与之输出端连接的一维卷积层组合的输入;所述后置合并层用于将随后一个一维卷积层组合的输出以及各个中间合并层的输出进行合并操作。其中,每个一维卷积层组合包括依次连接的:一维空洞卷积层、激活层、Lambda层、spatial dropout层、组内一维卷积层。
为实现上述目的,本发明实施例还提供了基于神经网络的验证码识别系统,包括:
获取模块,用于获取目标网页中的验证码图片;
第一卷积模块,用于通过二维卷积模块对所述验证码图片进行卷积操作,以得到n个二维卷积特征图;
转化模块,用于将所述n个二维卷积特征图转换为n个一维卷积特征图;
第二卷积模块,用于通过一维卷积模块对n个一维卷积特征图进行卷积操作,以得到被所述一维卷积模块处理后的n个一维卷积特征图;
第一输出模块,用于将所述为n个一维卷积特征图依次输入到第一全连接层、第一分类器中,以输出第一预测向量;
第二输出模块,用于将被所述一维卷积模块处理后的n个一维卷积特征图依次输入到第二全连接层、第二分类器中,以输出第二预测向量;及
预测模块,用于基于所述第一预测向量和所述第二预测向量,计算得到最终预测结果。
优选地,所述二维卷积模块包括依次连接的:输入层、Lambda层和多个二维卷积层组合,各个二维卷积层组合依序连接,且每个二维卷积层组合包括:两个卷积支路以及与该两个卷积支路连接的合并层,每个卷积支路包括依次连接的:二维卷积层、第一BatchNormalization层、LeakyReLU层、Depthwise二维卷积层、第二Batch Normalization层、LeakyReLU层、二维卷积层和第三Batch Normalization层。
优选的,所述第一卷积模块还用于:
S1:通过输入层输入所述验证码图片,并通过Lambda层将所述验证码图片切分为两张特征图,切分后的每张特征图的尺寸为(高度H/2)x宽度x通道数;
S2:将两张特征图输入到与所述Lambda层连接的第i二维卷积层组合中,得到叠加后的多个第i卷积特征图,i初始值为1;
S3:将所述多个第i卷积特征图切分为两组卷积特征图,每组卷积特征图分别包括多个切分卷积特征图;
S4:将所述多个第i卷积特征图中的两组卷积特征图对应输入到所述第i二维卷积层组合的下一个二维卷积层组合中,通过该下一个二维卷积层组合输出多个第i+1卷积特征图;
S5:将该多个第i+1卷积特征图重复执行S3和S4直至得到H为1的n个二维卷积特征图。
优选的,所述一维卷积模块包括依次连接的:一维卷积层、多个一维卷积层组合、后置合并层;相邻的两个一维卷积层组合之间配置有中间合并层,中间合并层用于将与之输入端连接的一维卷积层组合的输出和输入进行合并操作,所述中间合并层的输出作为与之输出端连接的一维卷积层组合的输入;所述后置合并层用于将随后一个一维卷积层组合的输出以及各个中间合并层的输出进行合并操作。其中,每个一维卷积层组合包括依次连接的:一维空洞卷积层、激活层、Lambda层、spatial dropout层、组内一维卷积层。
为实现上述目的,本发明实施例还提供了一种计算机设备,所述计算机设备存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被处理器执行时实现如上所述的基于神经网络的验证码识别方法的步骤。
为实现上述目的,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如上所述的基于神经网络的验证码识别方法的步骤。
本发明实施例提供的基于神经网络的验证码识别方法、系统、计算机设备及计算机可读存储介质,通过二维卷积和一维卷积的神经网络结果对待验证图片进行识别,具有较高的识别准确度,有效缩短计算时间和运算资源。
附图说明
图1为本发明实施例基于神经网络的验证码识别方法实施例一的流程示意图。
图2为本发明实施例基于神经网络的验证码识别系统实施例二的程序模块示意图。
图3为本发明计算机设备实施例三的硬件结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
以下实施例将以计算机设备2为执行主体进行示例性描述。
实施例一
参阅图1,示出了本发明实施例一之基于神经网络的验证码识别方法的步骤流程图。可以理解,本方法实施例中的流程图不用于对执行步骤的顺序进行限定。具体如下。
步骤S100,获取目标网页中的验证码图片。
示例性的,计算机设备2响应于用户操作行为,通过浏览器生成所述网站网页的登录请求消息,所述登录请求为基于HTTP协议的HTTP请求消息;所述网站网页的服务器接收HTTP请求消息,基于HTTP请求消息生成一个携带有验证码图片的登录页面,并将该登录页面返回至所述浏览器中;计算机设备解析所述登录页面,并从所述登录页面中提取所述验证码图片。
所述验证码图片可以是通过扭曲、粘连、噪点、动画等方式处理后的图片。验证码图片中的内容,可以是给定字符串包括数字、英文字母与汉字字符的任意组合。
步骤S102,通过二维卷积模块对所述验证码图片进行卷积操作,以得到n个二维卷积特征图。
在示例性的实施例中,所述二维卷积模块包括依次连接的:输入层、Lambda层(用以对上一层的输出施以任何Theano/TensorFlow表达式)和多个二维卷积层组合,各个二维卷积层组合依序连接,且每个二维卷积层组合包括:两个卷积支路以及与该两个卷积支路连接的合并层,每个卷积支路包括依次连接的:二维卷积层、Batch Normalization层(批标准化层)、LeakyReLU层(激活层)、Depthwise二维卷积层(深度二维卷积层)、BatchNormalization层、LeakyReLU层、二维卷积层和Batch Normalization层。
在示例性的实施例中,步骤S102可以进一步包括:S1:通过输入层输入所述验证码图片,并通过Lambda层将所述验证码图片切分为两张特征图,切分后的每张特征图的尺寸为(H/2)xWxC;S2:将两张特征图输入到与所述Lambda层连接的第i二维卷积层组合中,得到叠加后的多个第i卷积特征图,i初始值为1;S3:将所述多个第i卷积特征图切分为两组卷积特征图,每组卷积特征图分别包括多个切分卷积特征图;S4:将所述多个第i卷积特征图中的两组卷积特征图对应输入到所述第i二维卷积层组合的下一个二维卷积层组合中,通过该下一个二维卷积层组合输出多个第i+1卷积特征图;S5:将该多个第i+1卷积特征图重复执行S3和S4直至得到H为1的n个二维卷积特征图。
举例而言,假设:验证码图片尺寸为高x宽x通道=HxWxC;步骤S102的示例性操作流程如下:
步骤(1),通过输入层输入所述验证码图片,并通过Lambda层将所述验证码图片切分为两张特征图,切分后的每张特征图的尺寸为(高度H/2)x宽度x通道数;
步骤(2),将两张特征图输入到与所述Lambda层连接的二维卷积层组合中,得到叠加后的多个尺寸为H1xW1的第1卷积特征图。
具体的:
(1)通过卷积支路获取相应图片的卷积特征图:
以其中一张图片处理过程为例:依次经过二维卷积层a1、Batch Normalization层a2、LeakyReLU层(激活层)a3、Depthwise二维卷积层(深度二维卷积层)a4、BatchNormalization层(批标准化层)a5、LeakyReLU层a6、二维卷积层a7和Batch Normalization层a8,得到多个尺寸为H1xW1卷积特征图;
同理,另一张图片参考上述流程,依次经过二维卷积层b1、Batch Normalization层b2、LeakyReLU层b3、Depthwise二维卷积层b4、Batch Normalization层b5、LeakyReLU层b6、二维卷积层b7和Batch Normalization层b8,亦可以得到多个尺寸为H1xW1卷积特征图;
需要说明的是,处理上述两张图片的二维卷积层a1和二维卷积层b1的卷积核参数和卷积核数量可以不同,其他网络层同理。例如,在本实施例中,二维卷积层a1由96个卷积核组成,二维卷积层b1由128个卷积核组成。
(2)将每条卷积支路上得到的多个尺寸为H1xW1卷积特征图进行叠加操作,得到叠加后的多个尺寸为H1xW1的第1卷积特征图。
步骤(3),将多个尺寸为H1xW1的第1卷积特征图切分为两组卷积特征图,每组卷积特征图分别包括多个尺寸(H1/2)xW2的卷积特征图;对每组的多个尺寸(H1/2)xW2的卷积特征图输入到与下一个二维卷积层组合中,得到多个尺寸为(H1/2)xW3的第2卷积特征图;
步骤(4),对n个尺寸为(H1/2)xW3的第2卷积特征图输入到下一个二维卷积层组合,…直至得到H为1的n个二维卷积特征图。
例如,将验证码图片(none,140,180,3)通过上述步骤得到(none,1,19,256),none代表验证码图片数量,“1”代表高度,“19”代表宽度,“256”代表通道数。
步骤S104,将所述n个二维卷积特征图转换为n个一维卷积特征图。
在示例性的实施例中,示例性的,将H为1的n个二维卷积特征图输入到Permule层和TimeDistributed层,以得到n个一维卷积特征图。
Permute层(排列层)用于重新排列输入向量的维度,例如将(none,1,19,256)置换为(none,19,1,256)。
Fatten层(扁平化层)用于对维度进行压缩,例如,将输入矩阵(none,1,19,256)进行扁平化后得到(none,19,256)。
步骤S106,通过一维卷积模块对n个一维卷积特征图进行卷积操作,以得到被所述一维卷积模块处理后的n个一维卷积特征图。进入步骤S110。
在示例性的实施例中,所述一维卷积模块包括依次连接的:一维卷积层、多个一维卷积层组合、后置合并层;相邻的两个一维卷积层组合之间配置有中间合并层,中间合并层用于将与之输入端连接的一维卷积层组合的输出和输入进行合并操作,所述中间合并层的输出作为与之输出端连接的一维卷积层组合的输入;所述后置合并层用于将随后一个一维卷积层组合的输出以及各个中间合并层的输出进行合并操作。其中,每个一维卷积层组合包括依次连接的:一维空洞卷积层、激活层、Lambda层、spatial dropout层(用于防止过拟合)、一维卷积层。
举例而言,通过二维卷积模块对n个一维卷积特征图进行特征提取操作,示例性操作流程如下:
(1)通过一维卷积层,输出n个一维卷积特征图;
(2)对n个一维卷积特征图经过一维空洞卷积层、激活层、lambda层、spatialdropout层及组内一维卷积层,得到n个一维卷积特征图;
(3)将(1)中的n个一维卷积特征图和(2)中的n个一维卷积特征图进行合并操作,得到n个一维卷积特征图;
(4)将(3)中得到的n个一维卷积特征图经过一维空洞卷积层、激活层、lambda层、spatial dropout层及组内一维卷积层,得到n个一维卷积特征图;
(5)将(3)中的n个一维卷积特征图和(4)中的n个一维卷积特征图进行合并操作,得到n个一维卷积特征图;
(6)将(5)中得到的n个一维卷积特征图经过一维空洞卷积层、激活层、lambda层、spatial dropout层及组内一维卷积层,得到n个一维卷积特征图;
(7)将(5)中的n个一维卷积特征图和(6)中的n个一维卷积特征图进行合并操作,得到n个一维卷积特征图;
(8)将(7)中得到的n个一维卷积特征图经过一维空洞卷积层、激活层、lambda层、池化层级一维卷积层,得到n个一维卷积特征图;
(9)将(7)中的n个一维卷积特征图和(6)中的n个一维卷积特征图进行合并操作,得到n个一维卷积特征图;
(10)将(2)、(4)、(6)、(8)、(9)分别得到的n个一维卷积特征图进行合并、激活、池化和全连接操作,得到n个一维卷积特征图。
步骤S108,将步骤S104中得到的所述n个一维卷积特征图依次输入到第一全连接层、第一分类器中,以输出第一预测向量。
步骤S110,将步骤S106中得到的被所述一维卷积模块处理后的n个一维卷积特征图依次输入到第二全连接层、第二分类器中,以输出第二预测向量。
步骤S112,基于所述第一预测向量和所述第二预测向量,计算得到最终预测结果。
其中,全连接层输出的结构是(批数,特征数,文字种类数),假设全样本文字种类一共有7071种,“文字种类数”为7071,即可以识别这7071个文字。
本实施例通过二维卷积和一维卷积的神经网络结果对待验证图片进行识别,具有较高的识别准确度,并适用性地配置了神经网络模型结构,可以对数据并行计算,有效地提高了CPU/GPU使用效率,缩短计算时间。
实施例二
请继续参阅图2,示出了本发明实施例基于神经网络的验证码识别系统实施例二的程序模块示意图。在本实施例中,细胞分类系统20可以包括或被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明,并可实现上述基于神经网络的验证码识别方法。本发明实施例所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序本身更适合于描述细胞分类系统20在存储介质中的执行过程。以下描述将具体介绍本实施例各程序模块的功能:
获取模块200,用于获取目标网页中的验证码图片;
第一卷积模块202,用于通过二维卷积模块对所述验证码图片进行卷积操作,以得到n个二维卷积特征图;
转化模块204,用于将所述n个二维卷积特征图转换为n个一维卷积特征图;
第二卷积模块206,用于通过一维卷积模块对n个一维卷积特征图进行卷积操作,以得到被所述一维卷积模块处理后的n个一维卷积特征图;
第一输出模块208,用于将所述为n个一维卷积特征图依次输入到第一全连接层、第一分类器中,以输出第一预测向量;
第二输出模块210,用于将被所述一维卷积模块处理后的n个一维卷积特征图依次输入到第二全连接层、第二分类器中,以输出第二预测向量;及
预测模块212,用于基于所述第一预测向量和所述第二预测向量,计算得到最终预测结果。
示例性的实施例中,所述二维卷积模块包括依次连接的:输入层、Lambda层和多个二维卷积层组合,各个二维卷积层组合依序连接,且每个二维卷积层组合包括:两个卷积支路以及与该两个卷积支路连接的合并层,每个卷积支路包括依次连接的:二维卷积层、第一Batch Normalization层、LeakyReLU层、Depthwise二维卷积层、第二Batch Normalization层、LeakyReLU层、二维卷积层和第三Batch Normalization层。
示例性的实施例中,所述第一卷积模块202还用于:S1:通过输入层输入所述验证码图片,并通过Lambda层将所述验证码图片切分为两张特征图,切分后的每张特征图的尺寸为(H/2)xWxC;S2:将两张特征图输入到与所述Lambda层连接的第i二维卷积层组合中,得到叠加后的多个第i卷积特征图,i初始值为1;S3:将所述多个第i卷积特征图切分为两组卷积特征图,每组卷积特征图分别包括多个切分卷积特征图;S4:将所述多个第i卷积特征图中的两组卷积特征图对应输入到所述第i二维卷积层组合的下一个二维卷积层组合中,通过该下一个二维卷积层组合输出多个第i+1卷积特征图;S5:将该多个第i+1卷积特征图重复执行S3和S4直至得到H为1的n个二维卷积特征图。
示例性的实施例中,所述一维卷积模块包括依次连接的:一维卷积层、多个一维卷积层组合、后置合并层;相邻的两个一维卷积层组合之间配置有中间合并层,中间合并层用于将与之输入端连接的一维卷积层组合的输出和输入进行合并操作,所述中间合并层的输出作为与之输出端连接的一维卷积层组合的输入;所述后置合并层用于将随后一个一维卷积层组合的输出以及各个中间合并层的输出进行合并操作。其中,每个一维卷积层组合包括依次连接的:一维空洞卷积层、激活层、Lambda层、spatial dropout层、组内一维卷积层。
实施例三
参阅图3,是本发明实施例三之计算机设备的硬件架构示意图。本实施例中,所述计算机设备2是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。该计算机设备2可以是PC、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图所示,所述计算机设备2至少包括,但不限于,可通过系统总线相互通信连接存储器21、处理器22、网络接口23、以及细胞分类系统20。其中:
本实施例中,存储器21至少包括一种类型的计算机可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备2的内部存储单元,例如该计算机设备2的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备2的外部存储设备,例如该计算机设备20上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器21还可以既包括计算机设备2的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于计算机设备2的操作系统和各类应用软件,例如实施例二的细胞分类系统20的程序代码等。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器22在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制计算机设备2的总体操作。本实施例中,处理器22用于运行存储器21中存储的程序代码或者处理数据,例如运行验证码识别系统20,以实现实施例一的基于神经网络的验证码识别方法。
所述网络接口23可包括无线网络接口或有线网络接口,该网络接口23通常用于在所述计算机设备2与其他电子装置之间建立通信连接。例如,所述网络接口23用于通过网络将所述计算机设备2与外部终端相连,在所述计算机设备2与外部终端之间的建立数据传输通道和通信连接等。所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobile communication,GSM)、宽带码分多址(WidebandCode Division Multiple Access,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
需要指出的是,图3仅示出了具有部件20-23的计算机设备2,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
在本实施例中,存储于存储器21中的所述细胞分类系统20还可以被分割为一个或者多个程序模块,所述一个或者多个程序模块被存储于存储器21中,并由一个或多个处理器(本实施例为处理器22)所执行,以完成本发明。
例如,图2示出了所述实现细胞分类系统20实施例二的程序模块示意图,该实施例中,所述基于细胞分类系统20可以被划分为获取模块200、第一卷积模块202、转化模块204、第二卷积模块206、第一输出模块208、第二输出模块210和预测模块212。其中,本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序更适合于描述所述细胞分类系统20在所述计算机设备2中的执行过程。所述程序模块200-212的具体功能在实施例二中已有详细描述,在此不再赘述。
实施例四
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储细胞分类系统20,被处理器执行时实现实施例一的基于神经网络的验证码识别方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种基于神经网络的验证码识别方法,其特征在于,所述方法包括:
获取目标网页中的验证码图片;
通过二维卷积模块对所述验证码图片进行卷积操作,以得到n个二维卷积特征图;
将所述n个二维卷积特征图转换为n个一维卷积特征图;
通过一维卷积模块对n个一维卷积特征图进行卷积操作,以得到被所述一维卷积模块处理后的n个一维卷积特征图;
将所述n个一维卷积特征图依次输入到第一全连接层、第一分类器中,以输出第一预测向量;
将被所述一维卷积模块处理后的n个一维卷积特征图依次输入到第二全连接层、第二分类器中,以输出第二预测向量;及
基于所述第一预测向量和所述第二预测向量,计算得到最终预测结果。
2.根据权利要求1所述的基于神经网络的验证码识别方法,其特征在于,所述二维卷积模块包括依次连接的:输入层、Lambda层和多个二维卷积层组合,各个二维卷积层组合依序连接,且每个二维卷积层组合包括:两个卷积支路以及与该两个卷积支路连接的合并层,每个卷积支路包括依次连接的:二维卷积层、第一Batch Normalization层、LeakyReLU层、Depthwise二维卷积层、第二Batch Normalization层、LeakyReLU层、二维卷积层和第三Batch Normalization层。
3.根据权利要求2所述的基于神经网络的验证码识别方法,其特征在于,
通过二维卷积模块对所述验证码图片进行卷积操作,以得到n个二维卷积特征图的步骤,包括:
S1:通过输入层输入所述验证码图片,并通过Lambda层将所述验证码图片切分为两张特征图,切分后的每张特征图的尺寸为(高度H/2)x宽度x通道数;
S2:将两张特征图输入到与所述Lambda层连接的第i二维卷积层组合中,得到叠加后的多个第i卷积特征图,i初始值为1;
S3:将所述多个第i卷积特征图切分为两组卷积特征图,每组卷积特征图分别包括多个切分卷积特征图;
S4:将所述多个第i卷积特征图中的两组卷积特征图对应输入到所述第i二维卷积层组合的下一个二维卷积层组合中,通过该下一个二维卷积层组合输出多个第i+1卷积特征图;
S5:将该多个第i+1卷积特征图重复执行S3和S4直至得到H为1的n个二维卷积特征图。
4.根据权利要求3所述的基于神经网络的验证码识别方法,其特征在于,所述一维卷积模块包括依次连接的:一维卷积层、多个一维卷积层组合、后置合并层;相邻的两个一维卷积层组合之间配置有中间合并层,中间合并层用于将与之输入端连接的一维卷积层组合的输出和输入进行合并操作,所述中间合并层的输出作为与之输出端连接的一维卷积层组合的输入;所述后置合并层用于将随后一个一维卷积层组合的输出以及各个中间合并层的输出进行合并操作;其中,每个一维卷积层组合包括依次连接的:一维空洞卷积层、激活层、Lambda层、spatial dropout层、组内一维卷积层。
5.一种基于神经网络的验证码识别系统,其特征在于,包括:
获取模块,用于获取目标网页中的验证码图片;
第一卷积模块,用于通过二维卷积模块对所述验证码图片进行卷积操作,以得到n个二维卷积特征图;
转化模块,用于将所述n个二维卷积特征图转换为n个一维卷积特征图;
第二卷积模块,用于通过一维卷积模块对n个一维卷积特征图进行卷积操作,以得到被所述一维卷积模块处理后的n个一维卷积特征图;
第一输出模块,用于将所述为n个一维卷积特征图依次输入到第一全连接层、第一分类器中,以输出第一预测向量;
第二输出模块,用于将被所述一维卷积模块处理后的n个一维卷积特征图依次输入到第二全连接层、第二分类器中,以输出第二预测向量;及
预测模块,用于基于所述第一预测向量和所述第二预测向量,计算得到最终预测结果。
6.根据权利要求5所述的基于神经网络的验证码识别系统,其特征在于,所述二维卷积模块包括依次连接的:输入层、Lambda层和多个二维卷积层组合,各个二维卷积层组合依序连接,且每个二维卷积层组合包括:两个卷积支路以及与该两个卷积支路连接的合并层,每个卷积支路包括依次连接的:二维卷积层、第一Batch Normalization层、LeakyReLU层、Depthwise二维卷积层、第二Batch Normalization层、LeakyReLU层、二维卷积层和第三Batch Normalization层。
7.根据权利要求6所述的基于神经网络的验证码识别系统,其特征在于,所述第一卷积模块还用于:
S1:通过输入层输入所述验证码图片,并通过Lambda层将所述验证码图片切分为两张特征图,切分后的每张特征图的尺寸为(高度H/2)x宽度x通道数;
S2:将两张特征图输入到与所述Lambda层连接的第i二维卷积层组合中,得到叠加后的多个第i卷积特征图,i初始值为1;
S3:将所述多个第i卷积特征图切分为两组卷积特征图,每组卷积特征图分别包括多个切分卷积特征图;
S4:将所述多个第i卷积特征图中的两组卷积特征图对应输入到所述第i二维卷积层组合的下一个二维卷积层组合中,通过该下一个二维卷积层组合输出多个第i+1卷积特征图;
S5:将该多个第i+1卷积特征图重复执行S3和S4直至得到H为1的n个二维卷积特征图。
8.根据权利要求7所述的基于神经网络的验证码识别系统,其特征在于,所述一维卷积模块包括依次连接的:一维卷积层、多个一维卷积层组合、后置合并层;相邻的两个一维卷积层组合之间配置有中间合并层,中间合并层用于将与之输入端连接的一维卷积层组合的输出和输入进行合并操作,所述中间合并层的输出作为与之输出端连接的一维卷积层组合的输入;所述后置合并层用于将随后一个一维卷积层组合的输出以及各个中间合并层的输出进行合并操作;其中,每个一维卷积层组合包括依次连接的:一维空洞卷积层、激活层、Lambda层、spatial dropout层、组内一维卷积层。
9.一种计算机设备,所述计算机设备存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4中任一项所述的基于神经网络的验证码识别方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如权利要求1至4中任一项所述的基于神经网络的验证码识别方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910844014.4A CN110674488B (zh) | 2019-09-06 | 2019-09-06 | 基于神经网络的验证码识别方法、系统及计算机设备 |
PCT/CN2020/103596 WO2021042895A1 (zh) | 2019-09-06 | 2020-07-22 | 基于神经网络的验证码识别方法、系统及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910844014.4A CN110674488B (zh) | 2019-09-06 | 2019-09-06 | 基于神经网络的验证码识别方法、系统及计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110674488A true CN110674488A (zh) | 2020-01-10 |
CN110674488B CN110674488B (zh) | 2024-04-26 |
Family
ID=69076620
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910844014.4A Active CN110674488B (zh) | 2019-09-06 | 2019-09-06 | 基于神经网络的验证码识别方法、系统及计算机设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110674488B (zh) |
WO (1) | WO2021042895A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112270325A (zh) * | 2020-11-09 | 2021-01-26 | 携程旅游网络技术(上海)有限公司 | 字符验证码识别模型训练方法、识别方法、系统、设备及介质 |
WO2021042895A1 (zh) * | 2019-09-06 | 2021-03-11 | 深圳壹账通智能科技有限公司 | 基于神经网络的验证码识别方法、系统及计算机设备 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113822276B (zh) * | 2021-09-30 | 2024-06-14 | 中国平安人寿保险股份有限公司 | 基于神经网络的图片矫正方法、装置、设备及介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106339753A (zh) * | 2016-08-17 | 2017-01-18 | 中国科学技术大学 | 一种有效提升卷积神经网络稳健性的方法 |
CN106845381A (zh) * | 2017-01-16 | 2017-06-13 | 西北工业大学 | 基于双通道卷积神经网络的空谱联合的高光谱图像分类方法 |
WO2017166586A1 (zh) * | 2016-03-30 | 2017-10-05 | 乐视控股(北京)有限公司 | 基于卷积神经网络的图片鉴别方法、系统和电子设备 |
CN107811649A (zh) * | 2017-12-13 | 2018-03-20 | 四川大学 | 一种基于深度卷积神经网络的心音多分类方法 |
CN108509991A (zh) * | 2018-03-29 | 2018-09-07 | 青岛全维医疗科技有限公司 | 基于卷积神经网络的肝部病理图像分类方法 |
CN108596069A (zh) * | 2018-04-18 | 2018-09-28 | 南京邮电大学 | 基于深度3d残差网络的新生儿疼痛表情识别方法及系统 |
CN109034224A (zh) * | 2018-07-16 | 2018-12-18 | 西安电子科技大学 | 基于双分支网络的高光谱分类方法 |
CN109376753A (zh) * | 2018-08-31 | 2019-02-22 | 南京理工大学 | 一种稠密连接的三维空谱分离卷积深度网络及构建方法 |
CN109948475A (zh) * | 2019-03-06 | 2019-06-28 | 武汉大学 | 一种基于骨架特征和深度学习的人体动作识别方法 |
CN110047506A (zh) * | 2019-04-19 | 2019-07-23 | 杭州电子科技大学 | 一种基于卷积神经网络和多核学习svm的关键音频检测方法 |
CN110070067A (zh) * | 2019-04-29 | 2019-07-30 | 北京金山云网络技术有限公司 | 视频分类方法及其模型的训练方法、装置和电子设备 |
CN110188761A (zh) * | 2019-04-22 | 2019-08-30 | 平安科技(深圳)有限公司 | 验证码的识别方法、装置、计算机设备和存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108852350B (zh) * | 2018-05-18 | 2021-06-29 | 中山大学 | 一种基于深度学习算法的识别与定位头皮脑电图致痫区的建模方法 |
CN108734222B (zh) * | 2018-05-24 | 2021-06-15 | 西南大学 | 基于校对网络的卷积神经网络图像分类方法 |
CN110674488B (zh) * | 2019-09-06 | 2024-04-26 | 深圳壹账通智能科技有限公司 | 基于神经网络的验证码识别方法、系统及计算机设备 |
-
2019
- 2019-09-06 CN CN201910844014.4A patent/CN110674488B/zh active Active
-
2020
- 2020-07-22 WO PCT/CN2020/103596 patent/WO2021042895A1/zh active Application Filing
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017166586A1 (zh) * | 2016-03-30 | 2017-10-05 | 乐视控股(北京)有限公司 | 基于卷积神经网络的图片鉴别方法、系统和电子设备 |
CN106339753A (zh) * | 2016-08-17 | 2017-01-18 | 中国科学技术大学 | 一种有效提升卷积神经网络稳健性的方法 |
CN106845381A (zh) * | 2017-01-16 | 2017-06-13 | 西北工业大学 | 基于双通道卷积神经网络的空谱联合的高光谱图像分类方法 |
CN107811649A (zh) * | 2017-12-13 | 2018-03-20 | 四川大学 | 一种基于深度卷积神经网络的心音多分类方法 |
CN108509991A (zh) * | 2018-03-29 | 2018-09-07 | 青岛全维医疗科技有限公司 | 基于卷积神经网络的肝部病理图像分类方法 |
CN108596069A (zh) * | 2018-04-18 | 2018-09-28 | 南京邮电大学 | 基于深度3d残差网络的新生儿疼痛表情识别方法及系统 |
CN109034224A (zh) * | 2018-07-16 | 2018-12-18 | 西安电子科技大学 | 基于双分支网络的高光谱分类方法 |
CN109376753A (zh) * | 2018-08-31 | 2019-02-22 | 南京理工大学 | 一种稠密连接的三维空谱分离卷积深度网络及构建方法 |
CN109948475A (zh) * | 2019-03-06 | 2019-06-28 | 武汉大学 | 一种基于骨架特征和深度学习的人体动作识别方法 |
CN110047506A (zh) * | 2019-04-19 | 2019-07-23 | 杭州电子科技大学 | 一种基于卷积神经网络和多核学习svm的关键音频检测方法 |
CN110188761A (zh) * | 2019-04-22 | 2019-08-30 | 平安科技(深圳)有限公司 | 验证码的识别方法、装置、计算机设备和存储介质 |
CN110070067A (zh) * | 2019-04-29 | 2019-07-30 | 北京金山云网络技术有限公司 | 视频分类方法及其模型的训练方法、装置和电子设备 |
Non-Patent Citations (2)
Title |
---|
张号逵;李映;姜晔楠;: "深度学习在高光谱图像分类领域的研究现状与展望", 自动化学报, no. 06, 2 November 2017 (2017-11-02) * |
秦波;顾乃杰;张孝慈;林传文;: "基于卷积神经网络的图像验证码识别", 计算机系统应用, no. 11, 14 November 2018 (2018-11-14) * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021042895A1 (zh) * | 2019-09-06 | 2021-03-11 | 深圳壹账通智能科技有限公司 | 基于神经网络的验证码识别方法、系统及计算机设备 |
CN112270325A (zh) * | 2020-11-09 | 2021-01-26 | 携程旅游网络技术(上海)有限公司 | 字符验证码识别模型训练方法、识别方法、系统、设备及介质 |
CN112270325B (zh) * | 2020-11-09 | 2024-05-24 | 携程旅游网络技术(上海)有限公司 | 字符验证码识别模型训练方法、识别方法、系统、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2021042895A1 (zh) | 2021-03-11 |
CN110674488B (zh) | 2024-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102006163B (zh) | 用户验证方法、装置及服务器 | |
CN110674488B (zh) | 基于神经网络的验证码识别方法、系统及计算机设备 | |
CN106874253A (zh) | 识别敏感信息的方法及装置 | |
CN112116436B (zh) | 一种智能推荐方法、装置、计算机设备及可读存储介质 | |
CN112560964A (zh) | 基于半监督学习训练中草药病虫害识别模型的方法与系统 | |
CN110414989A (zh) | 异常检测方法及装置、电子设备和计算机可读存储介质 | |
CN112330331A (zh) | 基于人脸识别的身份验证方法、装置、设备及存储介质 | |
CN111461979A (zh) | 验证码图像去噪识别方法、电子装置及存储介质 | |
CN114241499A (zh) | 表格图片识别方法、装置、设备和可读存储介质 | |
CN110650108A (zh) | 一种基于icon图标的钓鱼页面识别方法及相关设备 | |
CN113810375B (zh) | webshell检测方法、装置、设备及可读存储介质 | |
CN111709415A (zh) | 目标检测方法、装置、计算机设备和存储介质 | |
CN105989284B (zh) | 网页入侵脚本特征的识别方法及设备 | |
CN116774973A (zh) | 数据渲染方法、装置、计算机设备及存储介质 | |
CN113887408B (zh) | 活化人脸视频的检测方法、装置、设备及存储介质 | |
CN112528189B (zh) | 基于数据的组件封装方法、装置、计算机设备及存储介质 | |
CN113705686A (zh) | 图像分类方法、装置、电子设备及可读存储介质 | |
CN113011132A (zh) | 竖排文字识别方法、装置、计算机设备和存储介质 | |
CN106933852B (zh) | 网页更新请求的生成方法、装置及其响应方法和装置 | |
CN110929118A (zh) | 网络数据处理方法、设备、装置、介质 | |
CN114333024B (zh) | 基于对抗训练网络进行学生面部表情识别的方法、装置、设备及存储介质 | |
CN110719260B (zh) | 智能网络安全分析方法、装置及计算机可读存储介质 | |
CN113688049B (zh) | 基于录入信息的可回溯性检测方法、装置、设备及介质 | |
CN113724065B (zh) | 基于流程指导的辅助催收方法、装置、设备及存储介质 | |
CN114627303B (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 |