基于双流孪生卷积网络的点选验证码识别方法及装置转让专利

申请号 : CN202210245622.5

文献号 : CN114332843B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 董忠仁臧铖陈嘉俊张敬之

申请人 : 浙商银行股份有限公司易企银(杭州)科技有限公司

摘要 :

本发明公开了一种基于双流孪生卷积网络的点选验证码识别方法及装置,该方法包括:获取真实的点选验证码图片和待点击字符,对点选验证码图片进行数据标注,构建字符检测数据集;利用字符检测数据集基于YOLO目标检测算法训练字符检测网络模型;使用训练好的字符检测网络模型对点选验证码图片进行字符检测,将每个字符保存成单张图片,同时将待点击的每个字符生成图片,构建字符判别数据集;利用字符判别数据集训练双流孪生卷积网络得到字符判别网络模型;利用训练好的字符判别网络模型进行点选验证码识别。本发明使用YOLO结合改进的双流孪生卷积网络,可以节省大批量数据标注时间,且能够有效的提升字符判别网络模型的识别效果及泛化能力。

权利要求 :

1.一种基于双流孪生卷积网络的点选验证码识别方法,其特征在于,包括以下步骤:S1,获取若干真实的点选验证码图片和待点击的字符,对所述点选验证码图片进行数据标注,构建字符检测数据集;

S2,利用字符检测数据集,基于YOLO目标检测算法训练字符检测网络模型,所述字符检测网络模型用于得到每个字符的锚框;

S3,使用训练好的字符检测网络模型对点选验证码图片进行字符检测,将每个字符保存成单张图片,同时将待点击的每个字符生成图片,共同构建字符判别数据集;

S4,利用字符判别数据集训练双流孪生卷积网络,得到字符判别网络模型;所述双流孪生卷积网络包括两个子网络,输入为两张图片;

对原始图片进行中心环绕切割,得到中心图像;对原始图片进行降采样,得到与中心图像等尺寸的低分辨率图像;

将两张输入图片的中心图像共同输入一个子网络;将两张输入图片的低分辨率图像共同输入另外一个子网络;两个子网络的架构相同,并共享网络权重;

S5,利用训练好的字符判别网络模型进行点选验证码识别。

2.根据权利要求1所述的方法,其特征在于,步骤S3具体为:

S31,使用训练好的字符检测网络将点选验证码图片所有字符坐标返回;

S32,根据返回的坐标,从点选验证码图片中裁剪出每个字符并保存成图片;

S33,将待点击的字符逐个生成图片;

S34,汇集S32和S33中得到的所有图片,将属于同一个字符的图片放在一个文件夹内归纳整理成字符判别数据集。

3.根据权利要求1所述的方法,其特征在于,所述双流孪生卷积网络的每个子网络包括六种模块,分别为卷积模块1、卷积模块2、卷积模块3、拼接模块1、拼接模块2和残差模块;

所述卷积模块1和所述卷积模块2均具有两个结构相同的分支;

两张输入图片的同类图像分别输入一个子网络的卷积模块1的两个分支,得到每个分支的特征图,将特征图输入到卷积模块2,通过卷积模块1计算特征图的差值绝对值记为D1,通过3个卷积模块2计算特征图的差值绝对值分别记为D2、D3、D4,卷积模块2输出特征图到卷积模块3;

所述拼接模块1将所述卷积模块3输出的特征图和D1进行拼接,将拼接结果输入拼接模块2,拼接模块2的个数为3个;

第一个拼接模块2将所述拼接模块1输出的拼接结果和D2进行拼接后,输入第二个拼接模块2,再拼接上D3输入第三个拼接模块2,再拼接上D4,将最终拼接结果输入残差模块;

所述残差模块输出最终特征图,将最终特征图进行全局平均池化后作为子网络的输出;

两个子网络的输出结果共同输入一个全连接层,之后经Sigmoid层输出两张输入图片的相似度结果。

4.根据权利要求3所述的方法,其特征在于,所述双流孪生卷积网络的残差模块包括空间注意力模块和通道注意力模块,所述残差模块的个数为2个;

第一个残差模块的输入为第三个拼接模块2输出的拼接结果,将经过通道注意力模块处理后的特征图和第三个拼接模块2输出的拼接结果相加后输入第二个残差模块;

第二个残差模块将经过通道注意力模块处理后的特征图与第二个残差模块的输入相加后作为最终特征图。

5.根据权利要求3所述的方法,其特征在于,所述卷积模块1的每个分支包括依次堆叠的两个卷积层、激活层和批归一化层,卷积核大小为3×3,卷积核数量为16;

所述卷积模块2的每个分支包括依次堆叠的最大池化层、卷积层、激活层和批归一化层,卷积核大小为3×3,卷积核数量为32;

所述卷积模块3包括依次堆叠的最大池化层、卷积层、激活层、批归一化层和上采样层,卷积核大小为3×3,卷积核数量为64。

6.根据权利要求3所述的方法,其特征在于,所述拼接模块1包括依次堆叠的连接层、卷积层、激活层、批归一化层和上采样层,卷积核大小为3×3,卷积核数量为128;

所述拼接模块2包括依次堆叠的连接层、卷积层、激活层、批归一化层、卷积层、激活层和批归一化层,卷积核大小为3×3,卷积核数量为256。

7.根据权利要求4所述的方法,其特征在于,所述残差模块包括依次堆叠的卷积层、激活层、卷积层、空间注意力模块和通道注意力模块;

所述空间注意力模块包括依次堆叠的全局平均池化层、全局最大池化层、卷积层、激活层、1×1卷积层、Sigmoid层;

所述通道注意力模块包括依次堆叠的最大池化层、平均池化层、卷积层、批归一化层、Sigmoid层。

8.根据权利要求1‑7中任一项所述的方法,其特征在于,所述双流孪生卷积网络的损失函数Loss为:其中, 为均方差损失, 为皮尔森损失, 为排序损失,λ和β为平衡三项损失的超参数;B为一个批次的图片数量, 和 分别为图片i对应的两个子网络的输出结果, 为L2范数;cov为协方差, 和 分别为两个子网络的输出结果, 和分别为两个子网络输出结果的平均值, 和 分别为两个子网络输出结果的标准差,为求期望; 为排序网络,通过一个三层卷积神经网络将一个向量转化为对应的排序。

9.一种基于双流孪生卷积网络的点选验证码识别装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,其特征在于,所述处理器执行所述可执行代码时,用于实现如权利要求1‑8中任一项所述的基于双流孪生卷积网络的点选验证码识别方法。

说明书 :

基于双流孪生卷积网络的点选验证码识别方法及装置

技术领域

[0001] 本发明属于验证码识别技术领域,具体涉及一种基于双流孪生卷积网络的点选验证码识别方法及装置。

背景技术

[0002] 验证码普遍存在于各种网站之中,目的在于避免人类用户进行繁琐和耗时的操作,从而可以简单快速的识别通过,使得机器不能识别通过。传统的通过观察图片输入字符型验证码很容易遭到基于OCR识别攻击,点选验证码则更加安全且方便,已经成为主流验证码方案之一。
[0003] 不同的公司、机构会根据各自的需要上线验证码服务,验证码服务上线之前,需要测试工程师进行功能测试、性能测试等工作来验证验证码服务的有效运行,因此需要一种自动化验证码识别方法来提升测试工程师的工作效率。
[0004] 一般的点选验证码识别方法是先对待识别图片使用目标检测算法检测出图片上所有的字符,然后切割出所有的字符区域保存图片,接着使用文本识别算法或者分类算法对字符进行识别,最后把识别结果和真正需要点击的字符结果进行对比,整个过程非常依赖字符识别算法的准确率。因为字符识别算法的训练需要大量的数据,这会耗费人力和时间,不利于工程的快速实现。

发明内容

[0005] 针对上述现有技术的不足,本发明提供一种基于双流孪生卷积网络的点选验证码识别方法及装置,提高了字符判别网络模型的点选验证码识别准确性,同时,改进的双流孪生卷积网络与常规的字符识别算法相比不需要标注大量数据,节省了大量的标注时间,为验证码测试工程师提供便利。
[0006] 本发明的目的是通过以下技术方案实现的:
[0007] 根据本说明书的第一方面,提供一种基于双流孪生卷积网络的点选验证码识别方法,该方法包括以下步骤:
[0008] S1,获取若干真实的点选验证码图片和待点击的字符,对所述点选验证码图片进行数据标注,构建字符检测数据集;
[0009] S2,利用字符检测数据集,基于YOLO目标检测算法训练字符检测网络模型,所述字符检测网络模型用于得到每个字符的锚框;
[0010] S3,使用训练好的字符检测网络模型对点选验证码图片进行字符检测,将每个字符保存成单张图片,同时将待点击的每个字符生成图片,共同构建字符判别数据集;
[0011] S4,利用字符判别数据集训练双流孪生卷积网络,得到字符判别网络模型;
[0012] S5,利用训练好的字符判别网络模型进行点选验证码识别。
[0013] 进一步地,步骤S3具体为:
[0014] S31,使用训练好的字符检测网络将点选验证码图片所有字符坐标返回;
[0015] S32,根据返回的坐标,从点选验证码图片中裁剪出每个字符并保存成图片;
[0016] S33,将待点击的字符逐个生成图片;
[0017] S34,汇集S32和S33中得到的所有图片,将属于同一个字符的图片放在一个文件夹内归纳整理成字符判别数据集。
[0018] 进一步地,步骤S4中的双流孪生卷积网络包括两个子网络,输入为两张图片;
[0019] 对原始图片进行中心环绕切割,得到中心图像;对原始图片进行降采样,得到与中心图像等尺寸的低分辨率图像;
[0020] 将两张输入图片的中心图像共同输入一个子网络;将两张输入图片的低分辨率图像共同输入另外一个子网络;两个子网络的架构相同,并共享网络权重。
[0021] 进一步地,所述双流孪生卷积网络的每个子网络包括六种模块,分别为卷积模块1、卷积模块2、卷积模块3、拼接模块1、拼接模块2和残差模块;
[0022] 所述卷积模块1和所述卷积模块2均具有两个结构相同的分支;
[0023] 两张输入图片的同类图像分别输入一个子网络的卷积模块1的两个分支,得到每个分支的特征图,将特征图输入到卷积模块2,通过卷积模块1计算特征图的差值绝对值记为D1,通过3个卷积模块2计算特征图的差值绝对值分别记为D2、D3、D4,卷积模块2输出特征图到卷积模块3;
[0024] 所述拼接模块1将所述卷积模块3输出的特征图和D1进行拼接,将拼接结果输入拼接模块2,拼接模块2的个数为3个;
[0025] 第一个拼接模块2将所述拼接模块1输出的拼接结果和D2进行拼接后,输入第二个拼接模块2,再拼接上D3输入第三个拼接模块2,再拼接上D4,将最终拼接结果输入残差模块;
[0026] 所述残差模块输出最终特征图,将最终特征图进行全局平均池化后作为子网络的输出;
[0027] 两个子网络的输出结果共同输入一个全连接层,之后经Sigmoid层输出两张输入图片的相似度结果。
[0028] 进一步地,所述双流孪生卷积网络的残差模块包括空间注意力模块和通道注意力模块,所述残差模块的个数为2个;
[0029] 第一个残差模块的输入为第三个拼接模块2输出的拼接结果,将经过通道注意力模块处理后的特征图和第三个拼接模块2输出的拼接结果相加后输入第二个残差模块;
[0030] 第二个残差模块将经过通道注意力模块处理后的特征图与第二个残差模块的输入相加后作为最终特征图。
[0031] 进一步地,所述卷积模块1的每个分支包括依次堆叠的两个卷积层、激活层和批归一化层,卷积核大小为3×3,卷积核数量为16;
[0032] 所述卷积模块2的每个分支包括依次堆叠的最大池化层、卷积层、激活层和批归一化层,卷积核大小为3×3,卷积核数量为32;
[0033] 所述卷积模块3包括依次堆叠的最大池化层、卷积层、激活层、批归一化层和上采样层,卷积核大小为3×3,卷积核数量为64。
[0034] 进一步地,所述拼接模块1包括依次堆叠的连接层、卷积层、激活层、批归一化层和上采样层,卷积核大小为3×3,卷积核数量为128;
[0035] 所述拼接模块2包括依次堆叠的连接层、卷积层、激活层、批归一化层、卷积层、激活层和批归一化层,卷积核大小为3×3,卷积核数量为256。
[0036] 进一步地,所述残差模块包括依次堆叠的卷积层、激活层、卷积层、空间注意力模块和通道注意力模块;
[0037] 所述空间注意力模块包括依次堆叠的全局平均池化层、全局最大池化层、卷积层、激活层、1×1卷积层、Sigmoid层;
[0038] 所述通道注意力模块包括依次堆叠的最大池化层、平均池化层、卷积层、批归一化层、Sigmoid层。
[0039] 进一步地,所述双流孪生卷积网络的损失函数Loss为:
[0040]
[0041] 其中, 为均方差损失, 为皮尔森损失, 为排序损失,λ和β为平衡三项损失的超参数;B为一个批次的图片数量, 和 分别为图片i对应的两个子网络的输出结果, 为L2范数;cov为协方差, 和 分别为两个子网络的输出结果, 和 分别为两个子网络输出结果的平均值, 和 分别为两个子网络输出结果的标准差, 为求期望; 为排序网络,通过一个三层卷积神经网络将一个向量转化为对应的排序。
[0042] 根据本说明书的第二方面,提供一种基于双流孪生卷积网络的点选验证码识别装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,用于实现如第一方面所述的基于双流孪生卷积网络的点选验证码识别方法。
[0043] 本发明的有益效果是:本发明利用YOLO结合改进的双流孪生卷积网络,解决了验证码识别问题中需要标注大量数据的问题,节省大批量数据标注时间,提高字符判别网络模型的准确性。另外,本发明对普通的孪生网络进行改进,首先将单张图片处理成多分辨率的两张图像,这样可以获取图片的多尺度信息,提高识别精度,然后针对这种特殊的输入构建双流孪生卷积网络,该网络通过学习特征图的差值绝对值、残差以及注意力信息,有效提升字符判别网络模型的识别效果和泛化能力,为验证码测试工程师带来极大的便利。

附图说明

[0044] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0045] 图1为一示例性实施例提供的基于双流孪生卷积网络的点选验证码识别方法流程图;
[0046] 图2为一示例性实施例提供的双流孪生卷积网络的网络结构图;
[0047] 图3为一示例性实施例提供的双流孪生卷积网络的详细模块图;
[0048] 图4为一个点选验证码示例图;
[0049] 图5为一示例性实施例提供的基于双流孪生卷积网络的点选验证码识别装置的结构图。

具体实施方式

[0050] 为了更好的理解本申请的技术方案,下面结合附图对本申请实施例进行详细描述。
[0051] 应当明确,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
[0052] 在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
[0053] 本发明首先要解决的问题是提高点选验证码识别准确率,高效且有效的帮助测试工程师完成验证码测试工作。然而目前的方法采取深度学习技术训练网络的前提是需要大量的数据集,而人工标注大量验证码的成本非常高。
[0054] 本发明提供一种基于双流孪生卷积网络的点选验证码识别方法,如图1所示,该方法包括以下步骤:
[0055] S1,获取若干真实的点选验证码图片和待点击的字符,对所述点选验证码图片进行数据标注,构建字符检测数据集;
[0056] 在一个实施例中,获取批量点选验证码图片时,首先分析点选验证码在网页源码中的Xpath地址,然后使用自动测试工具Selenium批量获取图片;获取待点击的字符的方法同理,并且将获取到的待点击字符保存到TXT文件中等待后续流程使用;对获取到的若干点选验证码图片使用LabelImg工具标注出图片中的字符位置;至此,字符检测数据集构建完毕。
[0057] S2,利用S1构建的字符检测数据集,基于YOLO(You Only Look Once,简称YOLO)目标检测算法训练字符检测网络模型,字符检测网络模型用于得到每个字符的锚框;
[0058] 在训练过程中,可对输入的点选验证码图片进行预处理操作,包括数据增强、自适应锚框计算、自适应图像缩放等过程,数据增强可以采用随机缩放、随机裁剪、随机排布等操作;
[0059] 优选地,YOLO目标检测算法可以采用YOLOv5,YOLOv5在训练过程中的边界框回归损失函数 为:
[0060]
[0061] 其中,下标GIoU是广义交并比(Generalized IoU),IoU是两个边界框的交集和并集的比例,U是两个边界框的并集,Ac是两个边界框的外接矩形。
[0062] S3,使用训练好的字符检测网络模型对点选验证码图片进行字符检测,将每个字符保存成单张图片,同时将待点击的每个字符生成图片,共同构建字符判别数据集;具体为:
[0063] S31,使用S2训练好的字符检测网络将若干点选验证码图片所有字符坐标返回;
[0064] S32,根据返回的坐标,从点选验证码图片中裁剪出每个字符并保存成图片;
[0065] S33,从S1保存的TXT文件中读取所有字符,通过Python中的Pillow库将每个字符生成对应的图片;
[0066] S34,汇集S32和S33中得到的所有图片,将属于同一个字符的图片放在一个文件夹内归纳整理成字符判别数据集。
[0067] S4,利用S3构建的字符判别数据集训练双流孪生卷积网络,得到字符判别网络模型;
[0068] 普通的孪生神经网络是两个输入分别进入两个网络,然后使用卷积神经网络将图片分别映射成一个特征向量,使用L1(曼哈顿距离)来评估两个特征向量之间的差异。本发明采用双流孪生卷积网络,核心是将输入图片做了特殊处理,且相应地改进了网络结构细节。
[0069] 在一个实施例中,双流孪生卷积网络的输入图片尺寸为64×64,首先将输入图片转成灰度图,然后分别对灰度图片进行中心环绕切割,得到一个尺寸为32×32的中心图像,对灰度图片进行降采样,得到一个尺寸为32×32的低分辨率图像;双流孪生卷积网络的输入为两张图片,经过处理之后,每张图片会得到自己的中心图像和低分辨率图像,将两张图片的中心图像共同输入一个子网络,该子网络称为中心流网络;将两张图片的低分辨率图像共同输入另外一个子网络,该子网络称为环绕流网络;中心流网络和环绕流网络的架构相同,并共享网络权重。双流孪生卷积网络的一个子网络处理原始图片的中心图像,另外一个子网络处理原始图片的低分辨率图像,这样可以分别处理图片的多尺度信息。
[0070] 在一个实施例中,双流孪生卷积网络的每个子网络包括六种模块,分别为卷积模块1、卷积模块2、卷积模块3、拼接模块1、拼接模块2和残差模块,图2为双流孪生卷积网络的整体网络结构图,各模块的具体结构参见图3;
[0071] 所述卷积模块1包括两个结构相同的分支,每个分支包括依次堆叠的两个卷积层Conv2D、一个激活层ReLU和一个批归一化层BN,卷积核大小为3×3,卷积核数量为16,所述卷积模块1的个数为1个;
[0072] 所述卷积模块2包括两个结构相同的分支,每个分支包括依次堆叠的一个最大池化层Pooling、一个卷积层Conv2D、一个激活层ReLU和一个批归一化层BN,卷积核大小为3×3,卷积核数量为32,所述卷积模块2的个数为3个;
[0073] 所述卷积模块3包括依次堆叠的一个最大池化层Pooling、一个卷积层Conv2D、一个激活层ReLU、一个批归一化层BN和一个上采样层UpSamping,卷积核大小为3×3,卷积核数量为64,所述卷积模块3的个数为1个;
[0074] 两张输入图片的两个中心图像分别输入中心流网络的卷积模块1的两个分支,得到每个分支各自的特征图,将特征图输入到卷积模块2,通过卷积模块1计算特征图的差值并求出绝对值记为D1,通过3个卷积模块2计算特征图的差值并求出绝对值分别记为D2、D3、D4,D1‑D4表示图像在不同特征抽象层次上的差异;同理,两张输入图片的两个低分辨率图像在环绕流网络做同样的处理。
[0075] 所述拼接模块1包括依次堆叠的一个连接层Concatenate、一个卷积层Conv2D、一个激活层ReLU、一个批归一化层BN和一个上采样层UpSamping,卷积核大小为3×3,卷积核数量为128,所述拼接模块1的个数为1个;
[0076] 所述拼接模块2包括依次堆叠的一个连接层Concatenate、一个卷积层Conv2D、一个激活层ReLU、一个批归一化层BN、一个卷积层Conv2D、一个激活层ReLU和一个批归一化层BN,卷积核大小为3×3,卷积核数量为256,所述拼接模块2的个数为3个;
[0077] 所述拼接模块1将所述卷积模块3输出的特征图和所述卷积模块1得到的D1进行拼接,将拼接结果输入拼接模块2;
[0078] 第一个拼接模块2将所述拼接模块1输出的拼接结果和D2进行拼接后,输入第二个拼接模块2,再拼接上D3输入第三个拼接模块2,再拼接上D4,将最终拼接结果输入残差模块。
[0079] 所述残差模块包括依次堆叠的一个卷积层Conv2D、一个激活层ReLU、一个卷积层Conv2D、一个空间注意力模块和一个通道注意力模块;
[0080] 所述空间注意力模块包括依次堆叠的一个全局平均池化层GAP、一个全局最大池化层GMP、一个卷积层Conv2D、一个激活层ReLU、一个1×1卷积层Conv2D(1×1)、一个Sigmoid层;
[0081] 所述通道注意力模块包括依次堆叠的一个最大池化层MP、一个平均池化层MP、一个卷积层Conv2D、一个批归一化层BN、一个Sigmoid层;
[0082] 使用残差模块是为了防止层数增加导致的退化问题。残差模块中引入空间注意力和通道注意力是通过增加一个很小的开销而进一步增强双流孪生卷积网络对特征的提取能力,从而提升字符判别网络模型的验证码识别能力。
[0083] 所述残差模块的个数为2个;
[0084] 第一个残差模块的输入为第三个拼接模块2输出的拼接结果,将经过通道注意力模块处理后的特征图和第三个拼接模块2输出的拼接结果相加后输入第二个残差模块;
[0085] 第二个残差模块将经过通道注意力模块处理后的特征图与第二个残差模块的输入相加后作为最终特征图,将最终特征图进行全局平均池化后作为子网络的输出。
[0086] 两个子网络的输出结果同时输入一个全连接层,之后经Sigmoid层输出两张图片的相似度结果。
[0087] 在一个实施例中,双流孪生卷积网络在训练过程中进行数据增广,包括对图片进行旋转、镜像等操作,例如水平翻转、垂直翻转、80度旋转、180度旋转、270度旋转等操作。
[0088] 在一个实施例中,双流孪生卷积网络在训练过程中的损失函数Loss为:
[0089]
[0090] 其中, 为均方差损失, 为皮尔森损失, 为排序损失,λ和β为平衡三项损失的超参数;B为一个批次Batch的图片数量, 和 分别为图片i对应的两个子网络的输出结果, 为L2范数;cov为协方差, 和 分别为两个子网络的输出结果, 和 分别为两个子网络输出结果的平均值, 和 分别为两个子网络输出结果的标准差, 为求期望; 为排序网络,通过一个三层卷积神经网络将一个向量转化为对应的排序。
[0091] S5,利用训练好的字符判别网络模型进行点选验证码识别。
[0092] 图4为一个点选验证码示例图。对于测试工程师,通过真实的点选验证码图片和待点击的字符图片,对训练好的字符检测网络模型和字符判别网络模型进行测试,从而验证待上线的点选验证码服务是否能够有效运行,为验证码测试工程师带来极大的便利。
[0093] 与前述基于双流孪生卷积网络的点选验证码识别方法的实施例相对应,本发明还提供了基于双流孪生卷积网络的点选验证码识别装置的实施例。
[0094] 参见图5,本发明实施例提供的一种基于双流孪生卷积网络的点选验证码识别装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,用于实现上述实施例中的基于双流孪生卷积网络的点选验证码识别方法。
[0095] 本发明基于双流孪生卷积网络的点选验证码识别装置的实施例可以应用在任意具备数据处理能力的设备上,该任意具备数据处理能力的设备可以为诸如计算机等设备或装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在任意具备数据处理能力的设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图5所示,为本发明基于双流孪生卷积网络的点选验证码识别装置所在任意具备数据处理能力的设备的一种硬件结构图,除了图5所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的任意具备数据处理能力的设备通常根据该任意具备数据处理能力的设备的实际功能,还可以包括其他硬件,对此不再赘述。
[0096] 上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
[0097] 对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0098] 本发明实施例还提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现上述实施例中的基于双流孪生卷积网络的点选验证码识别方法。
[0099] 所述计算机可读存储介质可以是前述任一实施例所述的任意具备数据处理能力的设备的内部存储单元,例如硬盘或内存。所述计算机可读存储介质也可以是任意具备数据处理能力的设备的外部存储设备,例如所述设备上配备的插接式硬盘、智能存储卡(Smart Media Card,SMC)、SD卡、闪存卡(Flash Card)等。进一步的,所述计算机可读存储介质还可以既包括任意具备数据处理能力的设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述任意具备数据处理能力的设备所需的其他程序和数据,还可以用于暂时地存储已经输出或者将要输出的数据。
[0100] 还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0101] 上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0102] 在本说明书一个或多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0103] 应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
[0104] 以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。