CN109933969B - 验证码识别方法、装置、电子设备及可读存储介质 - Google Patents

验证码识别方法、装置、电子设备及可读存储介质 Download PDF

Info

Publication number
CN109933969B
CN109933969B CN201711348346.0A CN201711348346A CN109933969B CN 109933969 B CN109933969 B CN 109933969B CN 201711348346 A CN201711348346 A CN 201711348346A CN 109933969 B CN109933969 B CN 109933969B
Authority
CN
China
Prior art keywords
character
verification code
layer
predicted
features
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
Application number
CN201711348346.0A
Other languages
English (en)
Other versions
CN109933969A (zh
Inventor
周正
文亚飞
鲍文平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201711348346.0A priority Critical patent/CN109933969B/zh
Publication of CN109933969A publication Critical patent/CN109933969A/zh
Application granted granted Critical
Publication of CN109933969B publication Critical patent/CN109933969B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Character Discrimination (AREA)

Abstract

本发明实施例提供了一种验证码识别方法、装置、电子设备及可读存储介质,将待测验证码输入预构建的验证码识别模型,该验证码识别模型可以对待测验证码进行识别,从而输出所述待测验证码对应的预测字符结果。由于验证码识别模型具有将所述待测验证码对应的预测字符结果趋于所述待测验证码对应的准确字符结果的能力,因此验证码识别模型可以准确的识别出待测验证码包含的字符。

Description

验证码识别方法、装置、电子设备及可读存储介质
技术领域
本发明涉及通信技术领域,更具体的涉及验证码识别方法、装置、电子设备及可读存储介质。
背景技术
验证码为包含一个或多个字符的图像,传统的验证码识别是基于对图像进行分析和处理,将验证码上的文字转换为文本的技术。
目前的验证码识别方法包括:预处理步骤,即将验证码进行图像灰度化、二值化、图像去噪、干扰滤除等方法去除验证码中的干扰;字符分割步骤,即将验证码中连续的字符切分成多个单个字符图像;字符识别步骤,即将从多个单个字符图像中识别出字符。
目前的验证码识别方法中,在进行字符分割时,由于各字符之间粘连的方式各异,导致很难保证字符分割正确,容易出现错误分割字符的情况;在进行字符识别时,由于字符各种扭曲变形,导致识别字符的准确率很低。
综上,如何改变现有技术中验证码识别方法,以提高验证码识别的准确率是本领域技术人员需要考虑的问题。
发明内容
有鉴于此,本发明提供了一种验证码识别方法、装置、电子设备及可读存储介质,以克服现有技术中验证码识别方法的准确率较低的问题。
为实现上述目的,本发明提供如下技术方案:
一种验证码识别方法,包括:
获取待测验证码;
将所述待测验证码输入预构建的验证码识别模型,通过所述验证码识别模型确定所述待测验证码对应的预测字符结果,所述预测字符结果至少包括一个字符;
其中,所述验证码识别模型是以样本验证码对应的预测字符结果趋于所述样本验证码对应的准确字符结果为训练目标,训练神经网络得到的。
一种验证码识别装置,包括:
第一获取模块,用于获取待测验证码;
输入模块,用于将所述待测验证码输入预构建的验证码识别模型,通过所述验证码识别模型确定所述待测验证码对应的预测字符结果,所述预测字符结果至少包括一个字符;
其中,所述验证码识别模型具有将所述待测验证码对应的预测字符结果趋于所述待测验证码对应的准确字符结果的能力。
一种电子设备,包括:
存储器,用于存储程序;
处理器,用于执行所述程序,所述程序具体用于:
获取待测验证码;
将所述待测验证码输入预构建的验证码识别模型,通过所述验证码识别模型确定所述待测验证码对应的预测字符结果,所述预测字符结果至少包括一个字符;
其中,所述验证码识别模型具有将所述待测验证码对应的预测字符结果趋于所述待测验证码对应的准确字符结果的能力。
一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上述任一项所述的验证码识别方法的各个步骤。
经由上述的技术方案可知,与现有技术相比,本发明实施例提供了一种验证码识别方法,将待测验证码输入预构建的验证码识别模型,该验证码识别模型可以对待测验证码进行识别,从而输出所述待测验证码对应的预测字符结果。由于验证码识别模型具有将所述待测验证码对应的预测字符结果趋于所述待测验证码对应的准确字符结果的能力,因此验证码识别模型可以准确的识别出待测验证码包含的字符。
附图说明
图1为本发明实施例提供的验证码识别方法的一种应用场景示意图;
图2为本发明实施例提供的验证码识别方法的过程示意图;
图3为本发明实施例提供的电子设备的内部结构示意图;
图4为本发明实施例提供的一种验证码识别方法的流程图;
图5为本发明实施例提供的通过验证码识别模型确定待测验证码对应的预测字符结果的一种实现方式流程图;
图6为本发明实施例提供的验证码中各字符的粘连方式的示意图;
图7为本申请实施例提供的验证码识别模型的一种实现方式的结构图;
图8为本发明实施例提供的全连接层与激活函数层和dropout层的关联关系示意图;
图9为本发明实施例提供的通过验证码识别模型确定待测验证码对应的预测字符结果的另一种实现方式流程图;
图10为本发明实施例提供的验证码识别模型的另一种实现方式的结构图;
图11为本发明实施例提供的验证码识别模型的一种训练方法的流程图;
图12为本发明实施例提供的神经网络的一种实现结构示意图;
图13为本发明实施例提供的验证码识别模型的另一种训练方法的流程图;
图14为本发明实施例提供的神经网络的另一实现结构示意图;
图15为本发明实施例提供的不同字体的字符的风格示意图;
图16为本发明实施例提供的一种验证码识别装置的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
本发明实施例提供的验证码识别方法可以应用在电子设备中,例如,台式机、移动终端(例如智能手机)、iPad、服务器等电子设备。
在一个示例中,验证码识别方法可以应用于运行在电子设备中的客户端,例如浏览器,验证码识别方法可以作为客户端中的一个插件。该客户端可以是应用程序客户端,也可以是网页客户端。
上述服务器可以是一台服务器,也可以是由若干台服务器组成的服务器集群,或者是一个云计算服务中心。
为了便于本领技术人员理解,本发明实施例提供了验证码识别方法可以应用的一种应用场景。
验证码识别方法可以应用于登录验证的应用场景,例如,用户可以基于电子设备中的浏览器登录邮箱,浏览器可以展示验证码,用户可以在浏览器展示的网页中相应输入框中输入验证码对应的字符结果;用户输入字符后,电子设备可以基于验证码识别方法获得验证码对应的预测字符结果,若预测字符结果与用户输入的字符结果相同,则认为验证成功。
如图1所示为本发明实施例提供的验证码识别方法的一种应用场景示意图。
用户基于终端设备11(例如,智能手机或电脑或iPad等)需要登录一客户端(例如,邮箱客户端,或,新闻客户端等等),客户端展示验证码,用户在客户端展示的相应输入框中输入验证码对应的字符结果;假设客户端展示的验证码对应的字符结果为“习狸鸣后”;终端设备11可以将用户输入的字符结果以及验证码发送至电子设备12(例如,浏览器的后台服务器),电子设备12基于本发明实施例提供的验证码识别方法对该验证码进行识别,获得该验证码对应的预测字符结果,例如,电子设备12识别出的预测字符结果为“习狸鸣后”。
电子设备12检测用户输入的字符结果和预测字符结果是否相同,若相同,则向终端设备11发送验证成功的指令,终端设备11接收到该验证成功的指令后,可以允许用户进行相应操作,例如成功登录邮箱等操作。
如图2所示,为本发明实施例提供的验证码识别方法的过程示意图。
如图2所示,假设验证码为验证码21,该验证码21包括字符“习狸鸣后”;电子设备会将该验证码输入验证码识别模型22中,验证码识别模型22可以输出预测字符结果“习狸鸣后”。
结合图2,下面对电子设备的内部结构进行说明,具体可参见图3。
电子设备可以包括:总线、输入设备1、存储器2、处理器3、输出设备4、和通信接口5。
其中,输入设备1、存储器2、处理器3、输出设备4和通信接口5,通过总线相互连接。
输入设备1可包括接收用户输入的数据和信息的装置,例如键盘、鼠标、摄像头、扫描仪、光笔、语音输入装置、触摸屏、计步器或重力感应器等。
存储器2中保存有执行本发明实施例的技术方案的程序,还可以保存有操作***和其他关键业务。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。更具体的,存储器2可以包括只读存储器(read-only memory,ROM)、可存储静态信息和指令的其他类型的静态存储设备、随机存取存储器(randomaccess memory,RAM)、可存储信息和指令的其他类型的动态存储设备、磁盘存储器、flash等等。
存储器2可以存储有本发明实施例中的验证码识别模型,以及验证码识别方法对应的程序。
处理器3可以执行存储器2中的程序以及在执行程序的过程中调用验证码识别模型。使得验证码识别模型输出待测验证码对应的预测字符结果。
处理器3可以是通用处理器,例如通用中央处理器(CPU)、网络处理器(NetworkProcessor,简称NP)、微处理器等,也可以是特定应用集成电路(application-specificintegrated circuit,ASIC),或一个或多个用于控制本发明实施例方案程序执行的集成电路。还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
处理器3可包括主处理器,还可包括基带芯片、调制解调器等。
输出设备4可包括允许输出信息给用户的装置,例如显示屏、打印机、扬声器等。
处理器3执行存储器2中所存放的程序,以及调用其他设备,可用于实现本发明实施例所提供的验证码识别方法中的各个步骤。
通信接口5可包括使用任何收发器一类的装置,以便与其他设备或通信网络通信,如以太网,无线接入网(RAN),无线局域网(WLAN)等。
下面结合上述结构对验证码识别方法进行详细说明。如图4所示,为本发明实施例提供的一种验证码识别方法的流程图,该方法包括:
步骤S401:获取待测验证码。
步骤S402:将所述待测验证码输入预构建的验证码识别模型,通过所述验证码识别模型确定所述待测验证码对应的预测字符结果。
待测验证码对应的预测字符结果至少包括一个字符。
其中,所述验证码识别模型是以样本验证码对应的预测字符结果趋于样本验证码对应的准确字符结果为训练目标,训练神经网络得到的。所以,验证码识别模型具有将所述待测验证码对应的预测字符结果趋于所述待测验证码对应的准确字符结果的能力。
本发明实施例中待测验证码对应的预测字符结果包括预测的待测验证码对应的预测字符。样本验证码对应的预测字符结果包括预测的样本验证码对应的预测字符。
其中,将所述待测验证码输入预构建的验证码识别模型,可以是将待测验证码对应的图像矩阵输入预构建的验证码识别模型。
待测验证码对应的图像矩阵是待测验证码在计算机中的表示。待测验证码对应的图像矩阵包括待测验证码中各像素的像素值。
本发明实施例中样本验证码对应的预测字符结果是指神经网络(在训练得到验证码识别模型之前,验证码识别模型称为神经网络)获得的样本验证码对应的预测字符结果。“样本验证码对应的准确字符结果”是指样本验证码包含的所有字符形成的准确字符结果。
仍以图2为例,假设样本验证码为验证码21,则验证码21对应的准确字符结果为“习狸鸣后”。而验证码21对应的预测字符结果可能为“刁狸鸣后”。
可以理解的是,样本验证码中呈现的字符可能是经过扭曲变形的,本发明实施例中称经过扭曲变形等处理的字符的形态为非标准形态,称未经过扭曲变形的字符的形态为标准形态。
在一可选实施例中,验证码识别模型获得的待测验证码对应的预测字符结果中各字符的形态为标准形态,与预测字符结果进行比较的准确字符结果中各字符的形态也是标准形态。
在一可选实施例中,“样本验证码对应的预测字符结果趋于样本验证码对应的准确字符结果”有多种实现方式,本发明实施例提供但不限于以下方法:
样本验证码对应的预测字符结果的标准形态趋于样本验证码对应的准确字符结果的标准形态。
字符形态是指字符的样貌,不同字符的形态不同,例如,字符“A”与字符“B”的形态不同。
,预测字符结果的形态是指预测字符结果包含的各字符的标准形态形成的整体形态;准确字符结果的标准形态是指准确字符结果包含的各字符的标准形态形成的整体形态。
例如,预测字符结果的标准形态“刁狸鸣后”与准确字符结果“习狸鸣后”大体相似。
预测字符结果在电子设备中的表现形式可以为矩阵的形式,假设预测字符结果在电子设备中的表现形式为第一矩阵;准确字符结果在电子设备中的表现形式也可以矩阵的形式,假设准确字符结果在电子设备中的表现形式为第二矩阵;则“样本验证码对应的预测字符结果趋于样本验证码对应的准确字符结果”是指第一矩阵趋于第二矩阵,即第一矩阵和第二矩阵越相似越好,甚至相同。
本发明实施例提供了一种验证码识别方法,将待测验证码输入预构建的验证码识别模型,该验证码识别模型可以对待测验证码进行识别,从而输出所述待测验证码对应的预测字符结果。由于所述验证码识别模型是训练神经网络得到的,而神经网络本身具有很强的特征泛化能力,其对包含具有不同粘连方式的各字符的验证码和对于包含具有不同扭曲变形各字符的验证码,都有很强的识别能力。且该验证码识别模型,以样本验证码的预测字符结果趋于样本验证码对应的准确字符结果为训练目标,因此,验证码识别模型具有将待测验证码对应的预测字符结果趋于待测验证码中的准确字符结果的能力,即可以准确的识别出待测验证码包含的字符。
下面对验证码识别模型获得待测验证码对应的预测字符结果的过程进行说明。本发明实施例提供但不限于以下两种方法。
第一种:获取待测验证码经卷积池化处理后的各第一特征;基于各第一特征,识别所述待测验证码对应的预测字符结果。
验证码识别模型至少包括:卷积层、池化层、全连接层。
卷积层可以从输入的待测验证码中获得待测验证码的特征。
卷积层设置有多个卷积核,多个卷积核分别与输入的待测验证码进行卷积,从待测验证码中获得多个特征。
在卷积层后加入池化层,是因为池化层可以减小计算的数据量,从而提高计算速度。池化层也可以称为下采样层。
池化层包括多个池化核。
经过至少一组卷积池化层(一组卷积池化层可以包括池化层和至少一层卷积层)的处理后得到各第一特征。
验证码识别模型可以包括多层卷积层,多层卷积的目的是一卷积层学到的待测验证码中的特征往往是局部的,卷积层的层数越高,学到的待测验证码中的特征就越全局化。验证码识别模型至少包括一组卷积层和池化层。
全连接层(fully connected layers,FC)在整个验证码识别模型中起到“分类器”的作用。其中,“基于各第一特征,识别所述待测验证码对应的预测字符结果”可以是全连接层基于各第一特征,识别所述待测验证码对应的预测字符结果。
第二种实现方法:
如图5所示,为本发明实施例提供的通过验证码识别模型确定待测验证码对应的预测字符结果的一种实现方式流程图,待测验证码包括至少一个字符,该方法包括:
步骤S501:获取待测验证码经卷积池化处理后的各第一特征。
各第一特征可以为待测验证码输入至验证码识别模型后,通过至少一组卷积层、池化层获得的。
步骤S502:将各第一特征进行关联获得第二特征。
经过一组或多组卷积池化层后,得到的各第一特征的关联性较差,由于验证码中各字符的粘连方式各异,因此各第一特征应该具有关联,在一可选实施例中,可以使用一个第一层全连接层将各第一特征进行关联获得第二特征。
如图6所示,为本发明实施例提供的验证码中各字符的粘连方式的示意图。
为了让本领域技术人员更加清楚的看到各字符的粘连方式,因此,以纯白色背景的验证码为例。
假设步骤S501得到的各第一特征总共3个(这里仅是为例便于举例,在实际应用中各第一特征的数目多达上千或上万个,本发明实施例对此不作具体限定)。假设各第一特征分别为X1、X2、X3;则第二特征可以包括:a1、a2、a3,其中:
Figure BDA0001509741500000091
其中,W11,W12,W13,W21,W22,W23,W31,W32,W33,为该第一层全连接层中的权重。
步骤S503:并行的从所述第二特征中提取出所述至少一个字符分别对应的字符特征。
在一可选实施例中,具体实现方式可以为:分别通过验证码识别模型中各第二层全连接层,得到第二特征中与对应的第二层全连接层的次序相应的字符特征。
可以理解的是,验证码识别模型获得的待测验证码对应的预测字符结果中各字符的顺序必须准确,若只是单纯的识别出验证码对应的一个或多个字符,而不知道字符的顺序,也无法正确识别出待测验证码。
因此,预先设置验证码识别模型中的各第二层全连接层的次序,一个第二层全连接层的次序是指其自身提取待测验证码中字符特征对应的字符的次序。例如,次序为1的第二层全连接层用于提取待测验证码中第一个字符的字符特征;次序为2的第二层全连接层用于提取待测验证码中第二个字符的字符特征,依次类推。
步骤S504:并行的对所述至少一个字符分别对应的字符特征进行识别,得到所述至少一个字符分别对应的预测字符。
在一可选实施例中,具体实现方式可以为:分别通过所述验证码识别模型中各第三层全连接层,识别与对应的第三层全连接层的次序相应的第二层全连接层输出的字符特征,获得相应的预测字符。
步骤S505:依序将所述至少一个字符分别对应的预测字符相结合,得到所述待测验证码对应的预测字符结果。
为例本领域技术人员更加理解本申请实施例提供的通过验证码识别模型确定待测验证码对应的预测字符结果的方法,下面举一具体例子进行说明,如图7所示,为本申请实施例提供的验证码识别模型的一种实现方式的结构图。
验证码识别模型包括:输入层70、卷积池化层71、第一层全连接层72、预设数目个第二层全连接层73、预设数目个第三层全连接层74,以及,输出层75。
预设数目为验证码识别模型所能识别的验证码包含的最大字符数目。预设数目可以为大于或等于1的任意整数。本发明实施例以预设数目为6为例。假设待测验证码包括至少一个字符。
其中,输入层70,用于接收待测验证码。
卷积池化层71,包括至少一组卷积池化层,用于基于待测验证码获得各第一特征。
第一层全连接层72,用于将各第一特征进行关联获得第二特征,并分别输入至预设数目个第二层全连接层73。
预设数目个第二层全连接层73,每一第二层全连接层73,用于得到第二特征中与自身的次序相应的字符特征,并将该字符特征输出至相应的第三层全连接层。
预设数目个第三层全连接层74,每一第三层全连接层74,用于识别与自身次序相应的第二层全连接层获得的字符特征,获得相应的预测字符,以得到所述至少一个字符分别对应的预测字符。
输出层75,用于依序将所述至少一个字符分别对应的预测字符相结合,得到所述待测验证码对应的预测字符结果。
在一可选实施例中,针对任一个全连接层,该全连接层可以对应有激活函数层以及dropout层,如图8所示,为本发明实施例提供的全连接层与激活函数层和dropout层的关联关系示意图。
图8中仅示出了一个全连接层81和相应的激活函数层82以及dropout层83之间的关系。
全连接层81可以为,第一层全连接层72,或,第二层全连接层73,或,第三层全连接层74。
在训练神经网络得到验证码识别模型的过程中,Dropout层83是用于防止由于样本验证码数量过少,产生的过拟合的现象。
激活函数层82是用于加速收敛。激活函数层82可以为修正线性单元层(RectifiedLinear Unit,ReLU)或,Sigmoid层。
全连接层81的可以通过输出端811输出相应信息。
可以理解的是,验证码识别模型最多可以识别出包含预设数目个字符的验证码;但是待测验证码包含的字符数目可能小于或等于预设数目,假设预设数目为6,待测验证码包含的字符数目为4,则就有两个第二层全连接层73无法获得字符特征。两个第三层全连接层就无法识别出预测字符,为了防止这种现象。本发明实施例提供了以下解决方案。
针对任一个第二层全连接层73,若第二特征不存在与该第二层全连接层的次序相应的字符特征,通过该第二层全连接层得到用于表征不包含任何字符的标识特征;
针对任一个第二层全连接层73,若所述第二特征存在与该第二层全连接层的次序相应的字符特征,通过该第二层全连接层得到相应字符特征。
相应的,
针对任一个第三层全连接层74,若与该第三层全连接层的次序相应的第二层全连接层输出标识特征,则基于标识特征识别出用于表征不包含任何字符的预设标识,该预设标识可以为“☆”等不会在验证码中出现的标识。
针对任一个第三层全连接层74,若与该第三层全连接层的次序相应的第二层全连接层输出字符特征,则基于字符特征识别出相应的预测字符。
验证码可以包含的字符类型为:“0-9”和/或“A-Z”和/或“a-z”和/或各汉字,和/或,特殊字符,例如,◇等。
假设验证码包含的字符类型为“0-9”和“A-Z”,则每一第三层全连接层74可以识别的维度为37,分别为:“0-9”、“A-Z”以及预设标识共37个维度。即第三层全连接层74可以识别出相应字符特征为哪一维度对应的字符。
在第二种方法中,验证码识别模型可以同时对待测验证码中各字符进行识别。即验证码识别模型具有同时对多个字符并行进行分类学习的能力。
为了本领域技术人员更加理解本发明实施例提供的第二种方法,下面举一具体例子进行说明。假设待测验证码如图2中的验证码21,验证码识别模型如图7所示。验证码识别模型获得待测验证码对应的预测字符结果的过程如下:
1、输入层70获得验证码21的图像矩阵。
验证码21的图像矩阵是验证码21在计算机中的表示。
2、卷积池化层71对验证码21进行卷积处理,池化处理,得到各第一特征。
3、第一层全连接层72将各第一特征进行关联获得第二特征,并分别输入至6个第二层全连接层73。
4、次序为1的第二层全连接层73获得验证码21中第一个字符“习”对应的字符特征;次序为2的第二层全连接层73获得验证码21中第二字符“狸”对应的字符特征;次序为3的第二层全连接层73获得验证码21中第三个字符“鸣”对应的字符特征;次序为4的第二层全连接层73获得验证码21中第四字符“后”对应的字符特征;次序为5的第二层全连接层73应该获得验证码21中第五个字符对应的字符特征,由于验证码21中并不包括第五个字符,因此,次序为5的第二层全连接层获得标识特征;次序为6的第二层全连接层73应该获得验证码21中第六个字符对应的字符特征,由于验证码21中并不包括第六个字符,因此,次序为6的第二层全连接层获得标识特征。
5、次序为1的第三层全连接层74识别次序为1的第二层全连接层73输出的第一个字符“习”对应的字符特征,获得预测字符“习”;次序为2的第三层全连接层74识别次序为2的第二层全连接层73输出的第二个字符“狸”对应的字符特征,获得预测字符“狸”;次序为3的第三层全连接层74识别次序为3的第二层全连接层73输出的第三个字符“鸣”对应的字符特征,获得预测字符“鸣”;次序为4的第三层全连接层74识别次序为4的第二层全连接层73输出的第四个字符“后”对应的字符特征,获得预测字符“后”;次序为5的第三层全连接层74识别次序为5的第二层全连接层73输出的标识特征,获得预设标识;次序为6的第三层全连接层74识别次序为6的第二层全连接层73输出的标识特征,获得预设标识。
6、输出层75,将次序为1至4的第三层全连接层74输出的预测字符依序相结合,得到预测字符结果。
第三种实现方法:
如图9所示,为本发明实施例提供的通过验证码识别模型确定待测验证码对应的预测字符结果的另一种实现方式流程图,待测验证码包括至少一个字符,该方法包括:
步骤S901:获取待测验证码经卷积池化处理后的第三特征。
第三特征可以为待测验证码输入至验证码识别模型后,通过至少一组卷积池化层获得的。第三特征可以包括多个特征。
步骤S902:并行的从所述第三特征中提取出所述至少一个字符分别对应的字符特征。
在一可选实施例中,具体实现方式可以为:分别通过所述验证码识别模型中各第一层全连接层,得到所述第一特征中与对应的第一层全连接层的次序相应的字符特征。
可以理解的是,验证码识别模型获得的待测验证码对应的预测字符结果中各字符的顺序必须准确,若只是单纯的识别出验证码对应的一个或多个字符,而不知道字符的顺序,也无法正确识别出待测验证码。
因此,预先设置验证码识别模型中的各第一层全连接层的次序,一个第一层全连接层的次序是指其自身提取待测验证码中字符特征对应的字符的次序。例如,次序为1的第一层全连接层用于提取待测验证码中第一个字符的字符特征;次序为2的第一层全连接层用于提取待测验证码中第二个字符的字符特征,依次类推。
步骤S903:依序对所述至少一个字符分别对应的字符特征相结合,得到所述待测验证码对应的字符特征集合。
在一可选实施例中,具体实现方式可以为:通过所述验证码识别模型中第二层全连接层,依序对所述至少一个字符分别对应的字符特征相结合,得到所述待测验证码对应的字符特征集合。
步骤S904:识别所述字符特征集合,得到待测验证码对应的预测字符结果。
在一可选实施例中,具体实现方式可以为:基于所述验证码识别模型中的第三层全连接层,识别所述字符特征集合,得到待测验证码对应的预测字符结果。
在一可选实施例中,针对任一个全连接层,该全连接层可以对应有激活函数层以及dropout层,具体可以参见图8,这里不再赘述。
为了本领域技术人员更加理解图9所示的方法,下面举一具体例子进行说明,如图10所示,为本发明实施例提供的验证码识别模型的另一种实现方式的结构图。
验证码识别模型包括:输入层1001、卷积池化层1002、预设数目个第一层全连接层1003、第二层全连接层1004、第三层全连接层1005,以及,输出层1006。
预设数目为验证码识别模型所能识别的验证码包含的最大字符数目。预设数目可以为大于或等于1的任意整数。本发明实施例以预设数目为6为例。
其中,输入层1001,用于接收待测验证码。
卷积池化层1002,包括至少一组卷积池化层,用于基于待测验证码获得第三特征。
预设数目个第一层全连接层1003,每一第一层全连接层1003,用于得到第三特征中与自身的次序相应的字符特征。预设数目个第一层全连接层就可以得到待测验证码包含的所述至少一个字符分别对应的字符特征。
第二层全连接层1004,用于依序对所述至少一个字符分别对应的字符特征相结合,得到所述待测验证码对应的字符特征集合。
第三层全连接层1005,用于识别所述字符特征集合,得到待测验证码对应的预测字符结果。
输出层1006,用于输出待测验证码对应的预测字符结果。
可以理解的是,验证码识别模型最多可以识别出包含预设数目个字符的验证码;但是待测验证码包含的字符数目可能小于预设数目,假设预设数目为6,待测验证码包含的字符数目为4,则就有两个第一层全连接层1003无法获得字符特征。为了防止这种现象。本发明实施例提供了以下解决方案。
“分别通过所述验证码识别模型中各第一层全连接层,得到所述第一特征中与对应的第一层全连接层的次序相应的字符特征”包括:
针对任一个第一层全连接层1003,若所述第一特征不存在与该第一层全连接层的次序相应的字符特征,该第一层全连接层输出表征不包含任何字符的标识特征;
针对任一个第一层全连接层1003,若所述第一特征存在与该第一层全连接层的次序相应的字符特征,该第一层全连接层输出相应字符特征。
相应的,第二层全连接层1004,依序对所述至少一个字符分别对应的字符特征相结合,得到所述待测验证码对应的字符特征集合,包括:
若一个第一层全连接层1003输出标识特征,则确认该标识特征不属于所述待测验证码;
若一个第一层全连接层1003输出字符特征,则确认该标识特征属于所述待测验证码;
将属于所述待测验证码的至少一个字符特征依序相结合,得到所述待测验证码对应的字符特征集合。
为了本领域技术人员更加理解本发明实施例提供的第三种方法,下面举一具体例子进行说明。假设待测验证码如图2中的验证码21,验证码识别模型如图10所示。验证码识别模型获得待测验证码对应的预测字符结果的过程如下:
1、输入层1001获得验证码21的图像矩阵。
验证码21的图像矩阵是验证码21在计算机中的表示。
2、卷积池化层1002对验证码21进行卷积处理,池化处理,得到第三特征。
3、次序为1的第一层全连接层1003获得验证码21中第一个字符“习”对应的字符特征;次序为2的第一层全连接层1003获得验证码21中第二字符“狸”对应的字符特征;次序为3的第一层全连接层1003获得验证码21中第三个字符“鸣”对应的字符特征;次序为4的第一层全连接层1003获得验证码21中第四字符“后”对应的字符特征;次序为5的第一层全连接层1003应该获得验证码21中第五个字符对应的字符特征,由于验证码21中并不包括第五个字符,因此,次序为5的第一层全连接层获得标识特征;次序为6的第一层全连接层1003应该获得验证码21中第六个字符对应的字符特征,由于验证码21中并不包括第六个字符,因此,次序为6的第一层全连接层获得标识特征。
4、第二层全连接层1004将次序为1至4的第一层全连接层输出的字符特征依序相结合,获得字符特征集合。
5、第三层全连接层1005识别该字符特征集合,获得“习狸鸣后”的预测字符结果。
6、输出层1006,输出该预测字符结果。
下面对验证码识别模型的训练过程进行说明。
对验证码识别模型的训练过程大致包括:
获得多个样本验证码;将各样本验证码分别作为神经网络的训练输入,训练得到所述验证码识别模型。
本发明实施例中,对神经网络有两种训练方法,两种训练方法分别如图11和图13所示。
如图11所示,为本发明实施例提供的验证码识别模型的一种训练方法的流程图,样本验证码包括至少一个字符,该方法包括:
步骤S1101:将各样本验证码输入至神经网络;
步骤S1102:分别获得各样本验证码对应的各第一特征。
在一可选实施例中,具体实现方法可以包括:通过所述神经网络中卷积池化层,分别获得各样本验证码分别对应的各第一特征。
卷积池化层包括至少一组卷积层和池化层,卷积层包括多个卷积核,池化层包括多个池化核。
步骤S1103:将各样本验证码对应的各第一特征分别进行关联,获得各样本验证码分别对应的第二特征。
在一可选实施例中,具体实现方法可以包括:通过所述神经网络中第一层全连接层,将各样本验证码对应的各第一特征分别进行关联,获得各样本验证码分别对应的第二特征。
假设步骤S1102中一个样本验证码对应的各第一特征总共3个(这里仅是为例便于举例,在实际应用中各第一特征的数目多达上千或上万个,本发明实施例对此不作具体限定)。假设该样本验证码对应的各第一特征分别为X1、X2、X3;则该样本验证码对应的第二特征可以包括:a1、a2、a3,其中:
Figure BDA0001509741500000171
其中,W11,W12,W13,W21,W22,W23,W31,W32,W33,为该第一层全连接层中的权重。
步骤S1104:针对每一样本验证码对应的第二特征,并行的从所述第二特征中提取出该样本验证码包含的所述至少一个字符分别对应的字符特征。
在一可选实施例中,分别通过所述神经网络中各第二层全连接层,得到所述第二特征中与相应第二层全连接层的次序相应的字符特征。
每一第二层全连接层包括多个权重。
可以理解的是,神经网络获得的待测验证码对应的预测字符结果中各字符的顺序必须准确,若只是单纯的识别出验证码对应的一个或多个字符,而不知道字符的顺序,也无法正确识别出待测验证码。
因此,预先设置神经网络中的各第二层全连接层的次序,一个第二层全连接层的次序是指其自身提取样本验证码中字符特征对应的字符的次序。例如,次序为1的第二层全连接层用于提取样本验证码中第一个字符的字符特征;次序为2的第二层全连接层用于提取样本验证码中第二个字符的字符特征,依次类推。
步骤S1105:并行的对所述至少一个字符分别对应的字符特征进行识别,得到所述至少一个字符分别对应的预测字符。
在一可选实施例中,具体实现方法可以包括:分别通过所述神经网络中各第三层全连接层,识别与对应的第三层全连接层的次序相应的第二层全连接层输出的字符特征,获得相应的预测字符。
例如,次序为1的第三层全连接层识别次序为1的第二层全连接层输出的字符特征,并获得相应的预测字符;次序为2的第三层全连接层识别次序为2的第二层全连接层输出的字符特征,并获得相应的预测字符,依次类推。
每一第三层全连接层包括多个权重。
步骤S1106:并行的对所述至少一个字符分别对应的预测字符与相应的准确单个字符进行比较,获得所述至少一个字符分别对应的比较结果,以此得到各样本验证码分别包含的至少一个字符分别对应的比较结果。
在一可选实施例中,具体实现方法可以包括:分别通过所述神经网络中各损失函数,将与对应的损失函数的次序相应的第三层全连接层输出的预测字符,与,该样本验证码中与对应的损失函数的次序相应的准确字符进行比较,获得比较结果。
例如,次序为1的损失函数,将次序为1的第三层全连接层输出的预测字符,与,该样本验证码中第一个字符相应的准确字符进行比较,获得比较结果;次序为2的损失函数,将次序为2的第三层全连接层输出的预测字符,与,该样本验证码中第二个字符相应的准确字符进行比较,获得比较结果;依次类推。
步骤S1107:基于各样本验证码分别对应的比较结果,更新所述神经网络的参数。
训练神经网络的终止条件可以包括:神经网络获得的各样本验证码的预测字符结果的准确率大于或等于预设值,例如,98%。这样训练好的神经网络即为验证码识别模型。
为了本领域技术人员更加理解图11所示的训练过程,下面举一具体例子进行说明,该例子与图7对应,如图12所示为本发明实施例提供的神经网络的一种结构示意图。
神经网络(在训练得到验证码识别模型之前,验证码识别模型称为神经网络)包括:输入层1201、卷积池化层1202、第一层全连接层1203、预设数目个第二层全连接层1204、预设数目个第三层全连接层1205、预设数目个损失函数1206。
预设数目为神经网络所能识别的验证码包含的最大字符数目。预设数目可以为大于或等于1的任意整数。本发明实施例以预设数目为6为例。
其中,输入层1201,用于输入各样本验证码。
卷积池化层1202,用于分别获得各样本验证码对应的各第一特征。
卷积池化层包括至少一组卷积池化层,卷积层包括多个卷积核,池化层包括多个池化核。
第一层全连接层1203,用于将各样本验证码对应的各第一特征分别进行关联,获得各样本验证码对应的第二特征。
预设数目个第二层全连接层1204,每一第二层全连接层1204,针对每一样本验证码中的第二特征,用于得到所述第二特征中与相应第二层全连接层的次序相应的字符特征。
预设数目个第三层全连接层1205,每一第三层全连接层1205,针对每一样本验证码,识别与自身次序相应第二层全连接层获得的字符特征,获得相应的预测字符。
预设数目个损失函数1206,每一损失函数1206,针对每一样本验证码,将与自身次序相应的第三层全连接层输出的预测字符,与,该样本验证码中与自身次序相应的准确字符进行比较,得到比较结果,基于该比较结果更新神经网络的参数。
更新神经网络中的参数包括:更新神经网络中各卷积核、各池化核、各权重。
图12中准确字符结果1207包含样本验证码对应的各准确字符,将准确字符结果1207中各准确字符分别输入至相应次序的损失函数1206,预设数目个损失函数1206就可以获得相应的准确字符。
例如,将准确字符结果1207中第一个准确字符,输入至次序为1的损失函数1206;将准确字符结果1207中第二个准确字符,输入至次序为2的损失函数1206中;依次类推。
各损失函数1206均可对神经网络中的参数进行更新。图12中示出了一个损失函数1206更新各参数的过程,其他损失函数类似,因此未均示出。
可以理解的是,准确字符结果1207可以为准确字符结果图像,该准确字符结果图像中各准确字符的形态是标准形态。可以将准确字符结果中第一个准确字符图像输入至次序为1的损失函数中,次序为1的损失函数可以从第一个准确字符图像中获得第一个准确字符。依次类推。
可以理解的是,神经网络最多可以识别出包含预设数目个字符的样本验证码;但是样本验证码包含的字符数目可能小于或等于预设数目,假设预设数目为6,样本验证码包含的字符数目为4,则就有两个第二层全连接层1204无法获得字符特征。两个第三层全连接层就无法识别出预测字符。为了防止这种现象。本发明实施例提供了以下解决方案。
所述分别通过所述神经网络中各第二层全连接层,得到所述第二特征中与相应第二层全连接层的次序相应的字符特征,包括:
针对任一个第二层全连接层1204,若所述第二特征不存在与该第二层全连接层的次序相应的字符特征,该第二层全连接层输出用于表征不包含任何字符的标识特征;
针对任一个第二层全连接层1204,若所述第二特征存在与该第二层全连接层的次序相应的字符特征,该第二层全连接层输出相应字符特征;
相应的,
所述分别通过所述神经网络中各第三层全连接层,识别与对应的第三层全连接层的次序相应的第二层全连接层输出的字符特征,获得相应的预测字符,包括:
针对任一个第三层全连接层1205,若与自身次序相应的第二层全连接层输出标识特征,该第二层全连接层输出用于表征不包含任何字符的预设标识。
该预设标识可以为“☆”等不会在验证码中出现的标识。
针对任一个第三层全连接层1205,若与自身次序相应的第二层全连接层输出字符特征,该第二层全连接层输出相应的预测字符。
相应的,
所述分别通过所述神经网络中各损失函数,将与对应的损失函数的次序相应的第三层全连接层输出的预测字符,与,该样本验证码中与对应的损失函数的次序相应的准确字符进行比较,获得比较结果,包括:
针对任一个损失函数1206,若与该损失函数的次序相应的第三层全连接层输出预设标识,且,该样本验证码中不存在与对应的损失函数的次序相应的准确字符,获得预设比较结果;
针对任一个损失函数1206,若与该损失函数的次序相应的第三层全连接层输出预设标识,且,该样本验证码中存在与该损失函数的次序相应的准确字符,将该准确字符作为该损失函数对应的比较结果;
针对任一个损失函数1206,若与该损失函数的次序相应的第三层全连接层输出预测字符,且,该样本验证码中不存在与该损失函数的次序相应的准确字符,将该预测字符作为该损失函数对应的比较结果;
针对任一个损失函数1206,若与该损失函数的次序相应的第三层全连接层输出预测字符,且,该样本验证码中存在与该损失函数的次序相应的准确字符,将该预测字符与该准确字符进行比较,获得比较结果。
其中,预设比较结果用于表征相应的第三层全连接层识别出的没有字符的结果是准确的。
验证码可以包含的字符类型为:“0-9”和/或“A-Z”和/或“a-z”和/或各汉字,和/或,特殊字符,例如,◇等。
假设验证码包含的字符类型为“0-9”和“A-Z”,则每一第三层全连接层1205可以识别的维度为37,分别为:“0-9”、“A-Z”以及预设标识共37个维度。即第三层全连接层74可以识别出相应字符特征为哪一维度对应的字符。
在一可选实施例中,针对任一个全连接层,该全连接层可以对应有激活函数层以及dropout层,具体如图8所示,这里不再进行赘述。
为了本领域技术人员更加理解与图12对应的样本验证码训练神经网络的过程,下面举一具体例子进行说明。
以样本验证码为图2中的验证码21为例进行说明。
1、输入层1201获得验证码21的图像矩阵。
验证码21的图像矩阵是验证码21在计算机中的表示。
2、卷积池化层1202分别获得验证码21对应的各第一特征。
3、第一层全连接层1203将验证码21对应的各第一特征进行关联,获得验证码21对应的第二特征。
4、次序为1的第二层全连接层1204从第二特征中获得第一个字符“习”对应的字符特征;次序为2的第二层全连接层1204从第二特征中获得第二个字符“狸”对应的字符特征;次序为3的第二层全连接层1204从第二特征中获得第三个字符“鸣”对应的字符特征;次序为4的第二层全连接层1204从第二特征中获得第四个字符“后”对应的字符特征;次序为5的第二层全连接层1204应该从第二特征中获得第五个字符对应的字符特征,由于验证码21中没有第五个字符,因此,次序为5的第二层全连接层获得标识特征;次序为6的第二层全连接层1204应该从第二特征中获得第六个字符对应的字符特征,由于验证码21中没有第六个字符,因此,次序为6的第二层全连接层获得标识特征。
5、次序为1的第三层全连接层1205识别次序为1的第二层全连接层1204输出的第一个字符“习”对应的字符特征,获得预测字符“刁”;次序为2的第三层全连接层1205识别次序为2的第二层全连接层1204输出的第二个字符“狸”对应的字符特征,获得预测字符“狸”;次序为3的第三层全连接层1205识别次序为3的第二层全连接层1204输出的第三个字符“鸣”对应的字符特征,获得预测字符“鸣”;次序为4的第三层全连接层1205识别次序为4的第二层全连接层1204输出的第四个字符“后”对应的字符特征,获得预测字符“后”;次序为5的第三层全连接层1205识别次序为5的第二层全连接层1204输出的标识特征,获得预设标识;次序为6的第三层全连接层1205识别次序为6的第二层全连接层1204输出标识特征,获得预设标识。
6、次序为1的损失函数1206将次序为1的第三层全连接层1205输出的预测字符“刁”与验证码21中的第一个准确字符“习”进行比较,获得比较结果,基于该比较结果更新神经网络的参数;次序为2的损失函数1206将次序为2的第三层全连接层1205输出的预测字符“狸”与验证码21中的第二个准确字符“狸”进行比较,获得比较结果,基于该比较结果更新神经网络的参数;次序为3的损失函数1206将次序为3的第三层全连接层1205输出的预测字符“鸣”与验证码21中的第三个准确字符“鸣”进行比较,获得比较结果,基于该比较结果更新神经网络的参数;次序为4的损失函数1206将次序为4的第三层全连接层1205输出的预测字符“后”与验证码21中的第四个准确字符“后”进行比较,获得比较结果,基于该比较结果更新神经网络的参数。
由于次序为5的第三层全连接层1205输出的预设标识,且验证码21中没有第五个准确字符,因此得到预设比较结果,基于该预设比较结果更新神经网络的参数;由于次序为6的第三层全连接层1205输出的预设标识,且验证码21中没有第六个准确字符,因此得到预设比较结果,基于该预设比较结果更新神经网络的参数。
如图13所示,为本发明实施例提供的验证码识别模型的另一种训练方法的流程图,样本验证码包括至少一个字符,该方法包括:
步骤S1301:将各样本验证码输入至神经网络。
步骤S1302:分别获得各样本验证码对应的第三特征。
第三特征可以为待测验证码输入至神经网络后,通过至少一组卷积池化层获得的。第三特征可以包括多个特征。
步骤S1303:针对每一样本验证码对应的第三特征,并行的从所述第三特征中提取出该样本验证码包含的至少一个字符分别对应的字符特征。
在一可选实施例中,具体实现方式可以为:分别通过所述神经网络中各第一层全连接层,得到所述第一特征中与对应的第一层全连接层的次序相应的字符特征。
可以理解的是,神经网络获得的待测验证码对应的预测字符结果中各字符的顺序必须准确,若只是单纯的识别出验证码对应的一个或多个字符,而不知道字符的顺序,也无法正确识别出待测验证码。
因此,预先设置神经网络中的各第一层全连接层的次序,一个第一层全连接层的次序是指其自身提取样本验证码中字符特征对应的字符的次序。例如,次序为1的第一层全连接层用于提取样本验证码中第一个字符的字符特征;次序为2的第一层全连接层用于提取样本验证码中第二个字符的字符特征,依次类推。
步骤S1304:依序对所述至少一个字符分别对应的字符特征相结合,得到该样本验证码对应的字符特征集合。
在一可选实施例中,具体实现方式可以为:通过所述神经网络中第二层全连接层,依序对所述至少一个字符分别对应的字符特征相结合,得到所述样本验证码对应的字符特征集合。
步骤S1305:识别所述字符特征集合,得到样本验证码对应的预测字符结果。
在一可选实施例中,具体实现方式可以为:基于所述神经网络中的第三层全连接层,识别所述字符特征集合,得到样本验证码对应的预测字符结果。
步骤S1306:将该样本验证码对应的所述预测字符结果与该样本验证码对应的准确字符结果进行比较,获得比较结果,以此得到各样本验证码分别对应的比较结果。
在一可选实施例中,具体实现方式可以为:基于所述神经网络中的损失函数将该样本验证码对应的所述预测字符结果与该样本验证码对应的准确字符结果进行比较,获得比较结果。
步骤S1307:基于各样本验证码分别对应的比较结果,更新所述神经网络的参数。
训练神经网络的终止条件可以包括:神经网络获得的各样本验证码的预测字符结果的准确率大于或等于预设值,例如,98%。这样训练好的神经网络即为验证码识别模型。
为了本领域技术人员更加理解图13所示的训练过程,下面举一具体例子进行说明,该例子与图10对应,如图14所示为本发明实施例提供的神经网络的另一实现结构示意图。
神经网络(在训练得到验证码识别模型之前,验证码识别模型称为神经网络)包括:输入层1401、卷积池化层1402、预设数目个第一层全连接层1403、第二层全连接层1404、第三层全连接层1405、损失函数1406。
预设数目为神经网络所能识别的验证码包含的最大字符数目。预设数目可以为大于或等于1的任意整数。本发明实施例以预设数目为6为例。
其中,输入层1401,用于输入各样本验证码。
卷积池化层1402,用于分别获得各样本验证码对应的第三特征。
预设数目个第一层全连接层1403,每一第一层全连接层1403,针对每一样本验证码对应的第三特征,得到所述第三特征中与自身的次序相应的字符特征,预设数目个第一层全连接层1403就可以获得样本验证码包含的所述至少一个字符分别对应的字符特征。
第二层全连接层1404,针对每一样本验证码,用于依序对所述至少一个字符分别对应的字符特征相结合,得到该样本验证码对应的字符特征集合。
第三层全连接层1405,针对每一样本验证码,用于识别该样本验证码对应的字符特征集合,得到该样本验证码对应的预测字符结果。
损失函数1406,针对每一样本验证码,用于将该样本验证码对应的预测字符结果与准确字符结果进行比较,获得比较结果,基于比较结果,更新所述神经网络的参数。
本发明实施例中的损失函数可以为SoftmaxWithLoss函数或SigmoidCrossEntropyLoss函数。
可以更新神经网络中各卷积核、各池化核、各权重。图14中损失函数1406可以更新各第一层全连接层中的各参数,只是为了画图方便仅示出了损失函数1406与一个第一层全连接层相连。
图14中准确字符结果1407为包含样本验证码对应的各准确字符,将准确字符结果1407中各准确字符输入至损失函数1406,损失函数1406就可以获得准确字符结果。
可以理解的是,准确字符结果1407可以为准确字符结果图像,该准确字符结果图像中各准确字符的形态是标准形态。损失函数1406可以从准确字符结果图像中获得准确字符结果。
可以理解的是,神经网络最多可以识别出包含预设数目个字符的样本验证码;但是样本验证码包含的字符数目可能小于或等于预设数目,假设预设数目为6,样本验证码包含的字符数目为4,则就有两个第一层全连接层1403无法获得字符特征。为了防止这种现象。本发明实施例提供了以下解决方案。
“分别通过所述神经网络中各第一层全连接层,得到所述第一特征中与对应的第一层全连接层的次序相应的字符特征”包括:
针对任一个第一层全连接层1403,若所述第一特征不存在与该第一层全连接层的次序相应的字符特征,该第一层全连接层输出用于表征不包含任何字符的标识特征;
针对任一个第一层全连接层1403,若所述第一特征存在与该第一层全连接层的次序相应的字符特征,该第一层全连接层输出相应字符特征。
相应的,通过所述神经网络中第二层全连接层,依序对所述至少一个字符分别对应的字符特征相结合,得到所述样本验证码对应的字符特征集合,包括:
若一个第一层全连接层1403输出标识特征,则确认该标识特征不属于所述待测验证码;
若一个第一层全连接层1403输出字符特征,则确认该标识特征属于所述待测验证码;
将属于所述待测验证码的至少一个字符特征依序相结合,得到所述待测验证码对应的字符特征集合。
本发明实施例中对神经网络的参数更新的过程,因为是自后向前的反向进行,因此更新过程也称为神经网络的反向传播过程(BackBackpropagatio)。
可选的,神经网络可以选用全连接神经网络(如MLP网络,MLP表示Multi-layerPerceptron,是多层感知器的意思),也可以选用其他形式的神经网络(如卷积神经网络(CNN,ConvolutionalNeuralNetwork)、深度神经网络等),例如,VGG16。
为了本领域技术人员更加理解与图14对应的样本验证码训练神经网络的过程,下面举一具体例子进行说明。
以样本验证码为图2中的验证码21为例进行说明。
1、输入层1401获得验证码21的图像矩阵。
验证码21的图像矩阵是验证码21在计算机中的表示。
2、卷积池化层1402分别获得验证码21对应的第三特征。
3、次序为1的第一层全连接层1403从第三特征中获得第一个字符“习”对应的字符特征;次序为2的第一层全连接层1403从第三特征中获得第二个字符“狸”对应的字符特征;次序为3的第一层全连接层1403从第三特征中获得第三个字符“鸣”对应的字符特征;次序为4的第一层全连接层1403从第三特征中获得第四个字符“后”对应的字符特征;次序为5的第一层全连接层1403应该从第三特征中获得第五个字符对应的字符特征,由于验证码21中没有第五个字符,因此,次序为5的第一层全连接层获得标识特征;次序为6的第一层全连接层1403应该从第三特征中获得第六个字符对应的字符特征,由于验证码21中没有第六个字符,因此,次序为6的第一层全连接层获得标识特征。
4、第二层全连接层1404将次序为1至次序为4的第一层全连接层1403输出的字符特征依序相结合,获得字符特征集合。
5、第三层全连接层1405,识别该字符特征集合,获得验证码21对应的预测字符结果,“刁狸鸣后”。
6、损失函数1406将该验证码21对应的预测字符结果“刁狸鸣后”与准确字符结果“习狸鸣后”进行比较,获得比较结果,基于比较结果,更新所述神经网络的参数。
在对神经网络进行训练的过程中,用到了大量的样本验证码,下面对获取样本验证码的过程进行说明。
本发明实施例提供的一种验证码识别方法中获取多个样本验证码的实现方法包括:
获取多个字符组合以及相应字符组合的背景图像,一个字符组合包括至少一个字符;将各字符组合分别包含的至少一个字符进行预设处理,得到处理后的各字符组合;基于处理后的各字符组合以及相应的背景图像,获得多个正样本验证码;基于各背景图像,获得多个负样本验证码。
每一字符组合中包含的至少一个字符可以是数字和/或字母和/或汉字和/或特殊字符进行的随机组合。预设处理包括:对字符的扭曲处理,和/或,对字符的旋转处理,和/或,对字符的粘连处理。
不同的字符组合中的字符的字体可能不同,同一字符组合中不同字符的字体可能相同,可能不同。
因此获得多个字符组合的过程可以包括:
1、获得不同字体的字符。
如图15所示,为两种不同字体的字符,其中一种字体的名称为antiquaSh;另一种字体的名称为Fat Face。
2、将不同字体的各字符进行随机组合,得到多个字符组合。
本发明实施例中的样本验证码还可以是通过验证码生成工具生成,例如,通过xvcode等验证码生成工具生成。
如图16所示,为本发明实施例提供的一种验证码识别装置的结构图,该装置包括:
第一获取模块1601,用于获取待测验证码;
输入模块1602,用于将所述待测验证码输入预构建的验证码识别模型,通过所述验证码识别模型确定所述待测验证码对应的预测字符结果,所述预测字符结果至少包括一个字符;
其中,所述验证码识别模型具有将所述待测验证码对应的预测字符结果趋于所述待测验证码对应的准确字符结果的能力。
可选的,所述待测验证码包括至少一个字符,还包括:
第二获取模块,用于获取待测验证码经卷积池化处理后的各第一特征;
第三获取模块,用于将各第一特征进行关联获得第二特征;
第一提取模块,用于并行的从所述第二特征中提取出所述至少一个字符分别对应的字符特征;
第四获取模块,用于并行的对所述至少一个字符分别对应的字符特征进行识别,得到所述至少一个字符分别对应的预测字符;
第五获取模块,用于依序将所述至少一个字符分别对应的预测字符相结合,得到所述待测验证码对应的预测字符结果。
可选的,第三获取模块具体用于:通过所述验证码识别模型中的第一层全连接层,将各第一特征进行关联获得所述第二特征;
第一提取模块具体用于:分别通过所述验证码识别模型中各第二层全连接层,得到所述第二特征中与对应的第二层全连接层的次序相应的字符特征。
可选的,第四获取模块包括:
识别单元,用于分别通过所述验证码识别模型中各第三层全连接层,识别与对应的第三层全连接层的次序相应的第二层全连接层输出的字符特征,获得相应的预测字符。
可选的,所述识别单元,用于
第一输出子单元,用于针对任一个第二层全连接层,若所述第二特征不存在与该第二层全连接层的次序相应的字符特征,该第二层全连接层输出用于表征不包含任何字符的标识特征;
第二输出子单元,用于针对任一个第二层全连接层,若所述第二特征存在与该第二层全连接层的次序相应的字符特征,该第二层全连接层输出相应字符特征。
可选的,所述待测验证码包括至少一个字符,还包括:
第六获取模块,用于获取待测验证码经卷积池化处理后的第三特征;
第二提取模块,用于并行的从所述第三特征中提取出所述至少一个字符分别对应的字符特征;
第七获取模块,用于依序对所述至少一个字符分别对应的字符特征相结合,得到所述待测验证码对应的字符特征集合;
第八获取模块,用于识别所述字符特征集合,得到待测验证码对应的预测字符结果。
可选的,第二提取模块具体用于:分别通过所述验证码识别模型中各第一层全连接层,得到所述第一特征中与对应的第一层全连接层的次序相应的字符特征;
第七获取模块具体用于:通过所述验证码识别模型中第二层全连接层,依序对所述至少一个字符分别对应的字符特征相结合,得到所述待测验证码对应的字符特征集合;
第八获取模块具体用于:基于所述验证码识别模型中的第三层全连接层,识别所述字符特征集合,得到待测验证码对应的预测字符结果。
可选的,还包括:
第九获取模块,用于获得多个样本验证码;
训练模块,用于将各样本验证码分别作为神经网络的训练输入,训练得到所述验证码识别模型。
可选的,每一样本验证码包括至少一个字符,训练所述神经网络的过程,包括:
第十获取模块,用于分别获得各样本验证码对应的各第一特征;
第十一获取模块,用于将各样本验证码对应的各第一特征分别进行关联,获得各样本验证码分别对应的第二特征;
第三提取模块,用于针对每一样本验证码对应的第二特征,并行的从所述第二特征中提取出该样本验证码包含的所述至少一个字符分别对应的字符特征;
第十二获取模块,用于并行的对所述至少一个字符分别对应的字符特征进行识别,得到所述至少一个字符分别对应的预测字符;
第十三获取模块,用于并行的对所述至少一个字符分别对应的预测字符与相应的准确字符进行比较,获得所述至少一个字符分别对应的比较结果,以此得到各样本验证码分别对应的比较结果;
第一更新模块,用于基于各样本验证码分别对应的比较结果,更新所述神经网络的参数。
可选的,第十一获取模块具体用于:通过所述神经网络中第一层全连接层,将各样本验证码对应的各第一特征分别进行关联,获得各样本验证码分别对应的第二特征;
第三提取模块具体用于:针对每一样本验证码对应的第二特征,分别通过所述神经网络中各第二层全连接层,得到所述第二特征中与相应第二层全连接层的次序相应的字符特征;
第十二获取模块具体用于:分别通过所述神经网络中各第三层全连接层,识别与对应的第三层全连接层的次序相应的第二层全连接层输出的字符特征,获得相应的预测字符;
第十三获取模块具体用于:分别通过所述神经网络中各损失函数,将与对应的损失函数的次序相应的第三层全连接层输出的预测字符,与,该样本验证码中与对应的损失函数的次序相应的准确字符进行比较,获得比较结果。
可选的,每一样本验证码包括至少一个字符,训练所述神经网络的过程,包括:
第十四获取模块,用于分别获得各样本验证码对应的第三特征;
第四提取模块,用于针对每一样本验证码对应的第三特征,并行的从所述第三特征中提取出该样本验证码包含的所述至少一个字符分别对应的字符特征;
第十五获取模块,用于依序对所述至少一个字符分别对应的字符特征相结合,得到该样本验证码对应的字符特征集合;
第十六获取模块,用于识别所述字符特征集合,得到该样本验证码对应的预测字符结果;
第十七获取模块,用于将该样本验证码对应的所述预测字符结果与该样本验证码对应的准确字符结果进行比较,获得比较结果,以此得到各样本验证码分别对应的比较结果;
第二更新模块,用于基于各样本验证码分别对应的比较结果,更新所述神经网络的参数。
可选的,第九获取模块包括:
第一获取单元,用于获取多个字符组合以及相应字符组合的背景图像,一个字符组合包括至少一个字符;
第二获取单元,用于将各字符组合分别包含的至少一个字符进行预设处理,得到处理后的各字符组合;
第三获取单元,用于基于处理后的各字符组合以及相应的背景图像,获得多个正样本验证码;
第四获取单元,用于基于各背景图像,获得多个负样本验证码。
本发明实施例还提供了一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现上述任一项所述的验证码识别方法的各个步骤。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

Claims (16)

1.一种验证码识别方法,其特征在于,包括:
获取待测验证码;
将所述待测验证码输入预构建的验证码识别模型,通过所述验证码识别模型确定所述待测验证码对应的预测字符结果,所述预测字符结果至少包括一个字符;
其中,所述验证码识别模型具有将所述待测验证码对应的预测字符结果趋于所述待测验证码对应的准确字符结果的能力;
其中,所述待测验证码包括至少一个字符,所述通过所述验证码识别模型确定所述待测验证码对应的预测字符结果,包括:
获取待测验证码经卷积池化处理后的各第一特征;
将各第一特征进行关联获得第二特征;
并行的从所述第二特征中提取出所述至少一个字符分别对应的字符特征;
并行的对所述至少一个字符分别对应的字符特征进行识别,得到所述至少一个字符分别对应的预测字符;
依序将所述至少一个字符分别对应的预测字符相结合,得到所述待测验证码对应的预测字符结果。
2.根据权利要求1所述验证码识别方法,其特征在于,
所述将各第一特征进行关联获得第二特征,包括:
通过所述验证码识别模型中的第一层全连接层,将各第一特征进行关联获得所述第二特征;
所述并行的从所述第二特征中提取出所述至少一个字符分别对应的字符特征,包括:
分别通过所述验证码识别模型中各第二层全连接层,得到所述第二特征中与对应的第二层全连接层的次序相应的字符特征。
3.根据权利要求2所述验证码识别方法,其特征在于,所述并行的对所述至少一个字符分别对应的字符特征进行识别,得到所述至少一个字符分别对应的预测字符,包括:
分别通过所述验证码识别模型中各第三层全连接层,识别与对应的第三层全连接层的次序相应的第二层全连接层输出的字符特征,获得相应的预测字符。
4.根据权利要求2所述验证码识别方法,其特征在于,所述分别通过所述验证码识别模型中各第二层全连接层,得到所述第二特征中与相应第二层全连接层的次序相应的字符特征,包括:
针对任一个第二层全连接层,若所述第二特征不存在与该第二层全连接层的次序相应的字符特征,该第二层全连接层输出用于表征不包含任何字符的标识特征;
针对任一个第二层全连接层,若所述第二特征存在与该第二层全连接层的次序相应的字符特征,该第二层全连接层输出相应字符特征。
5.根据权利要求1所述验证码识别方法,其特征在于,还包括:
获得多个样本验证码;
将各样本验证码分别作为神经网络的训练输入,训练得到所述验证码识别模型。
6.根据权利要求5所述验证码识别方法,其特征在于,每一样本验证码包括至少一个字符,训练所述神经网络的过程,包括:
分别获得各样本验证码对应的各第一特征;
将各样本验证码对应的各第一特征分别进行关联,获得各样本验证码分别对应的第二特征;
针对每一样本验证码对应的第二特征,并行的从所述第二特征中提取出该样本验证码包含的所述至少一个字符分别对应的字符特征;
并行的对所述至少一个字符分别对应的字符特征进行识别,得到所述至少一个字符分别对应的预测字符;
并行的对所述至少一个字符分别对应的预测字符与相应的准确字符进行比较,获得所述至少一个字符分别对应的比较结果,以此得到各样本验证码分别对应的比较结果;
基于各样本验证码分别对应的比较结果,更新所述神经网络的参数。
7.根据权利要求6所述验证码识别方法,其特征在于,
所述将各样本验证码对应的各第一特征分别进行关联,获得各样本验证码分别对应的第二特征包括:
通过所述神经网络中第一层全连接层,将各样本验证码对应的各第一特征分别进行关联,获得各样本验证码分别对应的第二特征;
所述并行的从所述第二特征中提取出该样本验证码包含的所述至少一个字符分别对应的字符特征,包括:
分别通过所述神经网络中各第二层全连接层,得到所述第二特征中与相应第二层全连接层的次序相应的字符特征;
所述并行的对所述至少一个字符分别对应的字符特征进行识别,得到所述至少一个字符分别对应的预测字符,包括:
分别通过所述神经网络中各第三层全连接层,识别与对应的第三层全连接层的次序相应的第二层全连接层输出的字符特征,获得相应的预测字符;
所述并行的对所述至少一个字符分别对应的预测字符与相应的准确字符进行比较,获得所述至少一个字符分别对应的比较结果,包括:
分别通过所述神经网络中各损失函数,将与对应的损失函数的次序相应的第三层全连接层输出的预测字符,与,该样本验证码中与对应的损失函数的次序相应的准确字符进行比较,获得比较结果。
8.根据权利要求6所述验证码识别方法,其特征在于,
所述分别通过所述神经网络中各第二层全连接层,得到所述第二特征中与相应第二层全连接层的次序相应的字符特征,包括:
针对任一个第二层全连接层,若所述第二特征不存在与该第二层全连接层的次序相应的字符特征,该第二层全连接层输出用于表征不包含任何字符的标识特征;
针对任一个第二层全连接层,若所述第二特征存在与该第二层全连接层的次序相应的字符特征,该第二层全连接层输出相应字符特征;
所述分别通过所述神经网络中各第三层全连接层,识别与对应的第三层全连接层的次序相应的第二层全连接层输出的字符特征,获得相应的预测字符,包括:
针对任一个第三层全连接层,若与该第三层全连接层的次序相应的第二层全连接层输出标识特征,该第三层全连接层输出用于表征不包含任何字符的预设标识;
针对任一个第三层全连接层,若与该第三层全连接层的次序相应的第二层全连接层输出字符特征,该第三层全连接层输出相应的预测字符。
9.根据权利要求8所述验证码识别方法,其特征在于,所述分别通过所述神经网络中各损失函数,将与对应的损失函数的次序相应的第三层全连接层输出的预测字符,与,该样本验证码中与对应的损失函数的次序相应的准确字符进行比较,获得比较结果,包括:
针对任一个损失函数,若与该损失函数的次序相应的第三层全连接层输出预设标识,且,该样本验证码中不存在与对应的损失函数的次序相应的准确字符,获得预设比较结果;
针对任一个损失函数,若与该损失函数的次序相应的第三层全连接层输出预设标识,且,该样本验证码中存在与该损失函数的次序相应的准确字符,将该准确字符作为该损失函数对应的比较结果;
针对任一个损失函数,若与该损失函数的次序相应的第三层全连接层输出预测字符,且,该样本验证码中不存在与该损失函数的次序相应的准确字符,将该预测字符作为该损失函数对应的比较结果;
针对任一个损失函数,若与该损失函数的次序相应的第三层全连接层输出预测字符,且,该样本验证码中存在与该损失函数的次序相应的准确字符,将该预测字符与该准确字符进行比较,获得比较结果。
10.一种验证码识别方法,其特征在于,包括:
获取待测验证码;
将所述待测验证码输入预构建的验证码识别模型,通过所述验证码识别模型确定所述待测验证码对应的预测字符结果,所述预测字符结果至少包括一个字符;
其中,所述验证码识别模型具有将所述待测验证码对应的预测字符结果趋于所述待测验证码对应的准确字符结果的能力;
其中,所述待测验证码包括至少一个字符,所述通过所述验证码识别模型确定所述待测验证码对应的预测字符结果,包括:
获取待测验证码经卷积池化处理后的第三特征;
分别通过所述验证码识别模型中各第一层全连接层,得到所述第三特征中与对应的第一层全连接层的次序相应的字符特征;
通过所述验证码识别模型中第二层全连接层,依序对所述至少一个字符分别对应的字符特征相结合,得到所述待测验证码对应的字符特征集合;
基于所述验证码识别模型中的第三层全连接层,识别所述字符特征集合,得到待测验证码对应的预测字符结果。
11.根据权利要求10所述验证码识别方法,其特征在于,还包括:
获得多个样本验证码;
将各样本验证码分别作为神经网络的训练输入,训练得到所述验证码识别模型。
12.根据权利要求11所述验证码识别方法,其特征在于,每一样本验证码包括至少一个字符,训练所述神经网络的过程,包括:
分别获得各样本验证码对应的第三特征;
针对每一样本验证码对应的第三特征,并行的从所述第三特征中提取出该样本验证码包含的所述至少一个字符分别对应的字符特征;
依序对所述至少一个字符分别对应的字符特征相结合,得到该样本验证码对应的字符特征集合;
识别所述字符特征集合,得到该样本验证码对应的预测字符结果;
将该样本验证码对应的所述预测字符结果与该样本验证码对应的准确字符结果进行比较,获得比较结果,以此得到各样本验证码分别对应的比较结果;
基于各样本验证码分别对应的比较结果,更新所述神经网络的参数。
13.根据权利要求11所述验证码识别方法,其特征在于,所述获取多个样本验证码包括:
获取多个字符组合以及相应字符组合的背景图像,一个字符组合包括至少一个字符;
将各字符组合分别包含的至少一个字符进行预设处理,得到处理后的各字符组合;
基于处理后的各字符组合以及相应的背景图像,获得多个正样本验证码;
基于各背景图像,获得多个负样本验证码。
14.一种验证码识别装置,其特征在于,包括:
第一获取模块,用于获取待测验证码;
输入模块,用于将所述待测验证码输入预构建的验证码识别模型,通过所述验证码识别模型确定所述待测验证码对应的预测字符结果,所述预测字符结果至少包括一个字符;
其中,所述验证码识别模型具有将所述待测验证码对应的预测字符结果趋于所述待测验证码对应的准确字符结果的能力;
其中,所述待测验证码包括至少一个字符;
所述输入模块具体用于:获取待测验证码经卷积池化处理后的各第一特征;将各第一特征进行关联获得第二特征;并行的从所述第二特征中提取出所述至少一个字符分别对应的字符特征;并行的对所述至少一个字符分别对应的字符特征进行识别,得到所述至少一个字符分别对应的预测字符;依序将所述至少一个字符分别对应的预测字符相结合,得到所述待测验证码对应的预测字符结果;
或者,所述输入模块具体用于:获取待测验证码经卷积池化处理后的第三特征;分别通过所述验证码识别模型中各第一层全连接层,得到所述第三特征中与对应的第一层全连接层的次序相应的字符特征;通过所述验证码识别模型中第二层全连接层,依序对所述至少一个字符分别对应的字符特征相结合,得到所述待测验证码对应的字符特征集合;基于所述验证码识别模型中的第三层全连接层,识别所述字符特征集合,得到待测验证码对应的预测字符结果。
15.一种电子设备,其特征在于,包括:
存储器,用于存储程序;
处理器,用于执行所述程序,所述程序具体用于:
获取待测验证码;
将所述待测验证码输入预构建的验证码识别模型,通过所述验证码识别模型确定所述待测验证码对应的预测字符结果,所述预测字符结果至少包括一个字符;
其中,所述验证码识别模型具有将所述待测验证码对应的预测字符结果趋于所述待测验证码对应的准确字符结果的能力;
其中,所述待测验证码包括至少一个字符;
所述通过所述验证码识别模型确定所述待测验证码对应的预测字符结果,包括:
获取待测验证码经卷积池化处理后的各第一特征;
将各第一特征进行关联获得第二特征;
并行的从所述第二特征中提取出所述至少一个字符分别对应的字符特征;
并行的对所述至少一个字符分别对应的字符特征进行识别,得到所述至少一个字符分别对应的预测字符;
依序将所述至少一个字符分别对应的预测字符相结合,得到所述待测验证码对应的预测字符结果;
或者,所述通过所述验证码识别模型确定所述待测验证码对应的预测字符结果,包括:
获取待测验证码经卷积池化处理后的第三特征;
分别通过所述验证码识别模型中各第一层全连接层,得到所述第三特征中与对应的第一层全连接层的次序相应的字符特征;
通过所述验证码识别模型中第二层全连接层,依序对所述至少一个字符分别对应的字符特征相结合,得到所述待测验证码对应的字符特征集合;
基于所述验证码识别模型中的第三层全连接层,识别所述字符特征集合,得到待测验证码对应的预测字符结果。
16.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1至13任一项所述的验证码识别方法的各个步骤。
CN201711348346.0A 2017-12-15 2017-12-15 验证码识别方法、装置、电子设备及可读存储介质 Active CN109933969B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711348346.0A CN109933969B (zh) 2017-12-15 2017-12-15 验证码识别方法、装置、电子设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711348346.0A CN109933969B (zh) 2017-12-15 2017-12-15 验证码识别方法、装置、电子设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN109933969A CN109933969A (zh) 2019-06-25
CN109933969B true CN109933969B (zh) 2021-05-07

Family

ID=66979806

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711348346.0A Active CN109933969B (zh) 2017-12-15 2017-12-15 验证码识别方法、装置、电子设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN109933969B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110414592A (zh) * 2019-07-24 2019-11-05 西安工业大学 一种基于多任务学习的数字验证码识别方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104852889A (zh) * 2014-02-18 2015-08-19 腾讯科技(深圳)有限公司 图片验证码生成方法和***、验证方法和客户端及服务器
CN104899571A (zh) * 2015-06-12 2015-09-09 成都数联铭品科技有限公司 一种用于复杂文字识别的随机样本产生方法
CN107085730A (zh) * 2017-03-24 2017-08-22 深圳爱拼信息科技有限公司 一种字符验证码识别的深度学习方法及装置
CN107292311A (zh) * 2017-08-10 2017-10-24 河南科技大学 一种基于神经网络的字符粘连验证码的识别方法
CN107360137A (zh) * 2017-06-15 2017-11-17 深圳市牛鼎丰科技有限公司 用于验证码识别的神经网络模型的构建方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104852889A (zh) * 2014-02-18 2015-08-19 腾讯科技(深圳)有限公司 图片验证码生成方法和***、验证方法和客户端及服务器
CN104899571A (zh) * 2015-06-12 2015-09-09 成都数联铭品科技有限公司 一种用于复杂文字识别的随机样本产生方法
CN107085730A (zh) * 2017-03-24 2017-08-22 深圳爱拼信息科技有限公司 一种字符验证码识别的深度学习方法及装置
CN107360137A (zh) * 2017-06-15 2017-11-17 深圳市牛鼎丰科技有限公司 用于验证码识别的神经网络模型的构建方法和装置
CN107292311A (zh) * 2017-08-10 2017-10-24 河南科技大学 一种基于神经网络的字符粘连验证码的识别方法

Also Published As

Publication number Publication date
CN109933969A (zh) 2019-06-25

Similar Documents

Publication Publication Date Title
KR102385463B1 (ko) 얼굴 특징 추출 모델 학습 방법, 얼굴 특징 추출 방법, 장치, 디바이스 및 저장 매체
EP3869385B1 (en) Method for extracting structural data from image, apparatus and device
CN105874474B (zh) 用于面部表示的***和方法
CN109934198B (zh) 人脸识别方法及装置
CN110321845B (zh) 一种从视频中提取表情包的方法、装置及电子设备
CN108255555B (zh) 一种***语言切换方法及终端设备
CN108491872B (zh) 目标再识别方法和装置、电子设备、程序和存储介质
CN113792853B (zh) 字符生成模型的训练方法、字符生成方法、装置和设备
CN111428557A (zh) 基于神经网络模型的手写签名的自动校验的方法和装置
CN111126347B (zh) 人眼状态识别方法、装置、终端及可读存储介质
CN113792526B (zh) 字符生成模型的训练方法、字符生成方法、装置和设备和介质
CN112581355A (zh) 图像处理方法、装置、电子设备和计算机可读介质
WO2022028147A1 (zh) 图像分类模型训练方法、装置、计算机设备及存储介质
CN108319888A (zh) 视频类型的识别方法及装置、计算机终端
WO2019017178A1 (en) METHOD AND APPARATUS FOR DYNAMICALLY IDENTIFYING A USER OF AN ACCOUNT FOR DISPLAYING IMAGES
CN114612743A (zh) 深度学习模型的训练方法、目标对象识别方法和装置
CN111091182A (zh) 数据处理方法、电子设备及存储介质
CN111382791B (zh) 深度学习任务处理方法、图像识别任务处理方法和装置
CN112614110A (zh) 评估图像质量的方法、装置及终端设备
CN110097004B (zh) 面部表情识别方法和装置
WO2021068613A1 (zh) 面部识别方法、装置、设备及计算机可读存储介质
CN115187456A (zh) 基于图像强化处理的文本识别方法、装置、设备及介质
CN109933969B (zh) 验证码识别方法、装置、电子设备及可读存储介质
CN111860557B (zh) 图像处理方法及装置、电子设备及计算机存储介质
US20230154077A1 (en) Training method for character generation model, character generation method, apparatus and storage medium

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