电子签名识别方法、装置、设备及存储介质

文档序号:32393687发布日期:2022-11-30 09:23阅读:63来源:国知局
电子签名识别方法、装置、设备及存储介质

1.本技术涉及计算机技术领域,尤其涉及一种电子签名识别方法、装置、设备及存储介质。


背景技术:

2.随着计算机技术的发展,电子签名识别被广泛应用于各种需要确定签名人身份的场景中,例如银行系统和电子合同等。为了防止数据泄露,当前签名识别技术通常围绕签名识别的安全性建立一整套安全机制,但是增加安全机制的同时也会导致签名识别难度提高,识别效率降低。同时当前签名识别技术需要获取签名人的多次签名数据用于模型训练,对训练样本的要求较高。
3.然而,对于日常生活中的签名场景,例如课堂签到和公司打卡签到等,其对安全性的要求并不高,更多的是追求识别效率和准确度。可见,当前签名识别技术不能很好的适用于各种场景。


技术实现要素:

4.本技术提供了一种电子签名识别方法、装置、设备及存储介质,以解决当前电子签名识别技术无法很好的适用于各种场景的技术问题。
5.为了解决上述技术问题,第一方面,本技术实施例提供了一种电子签名识别方法,包括:
6.获取电子签名数据和随机变量,电子签名数据包括签名图像和运笔数据;
7.基于电子签名数据和随机变量,对预设的生成对抗网络进行训练,直至生成对抗网络达到预设收敛条件,得到第一签名识别模型;
8.基于签名用户在每次签名场景中的待识别签名数据,对第一签名识别模型进行训练,得到训练完成的第二签名识别模型;
9.利用第二签名识别模型中的目标判别器,对待识别签名图像进行识别,得到待识别签名图像对应的识别结果数据。
10.本技术通过获取电子签名数据和随机变量,电子签名数据包括签名图像和运笔数据,并基于电子签名数据和随机变量,对预设的生成对抗网络进行训练,直至生成对抗网络达到预设收敛条件,得到第一签名识别模型,以利用生成对抗网络提高签名识别模型的准确度,同时能够保证安全性;以及基于签名用户在每次签名场景中的待识别签名数据,对第一签名识别模型进行训练,得到训练完成的第二签名识别模型,以利用主动学习机制,采用实际签名场景下的签名数据对模型进行更新,提高模型的鲁棒性;最后,利用第二签名识别模型中的目标判别器,对待识别签名图像进行识别,得到待识别签名图像对应的识别结果数据,以只采用签名图像即可实现签名识别,提高实际签名场景下的识别效率。
11.作为优选,基于电子签名数据和随机变量,对预设的生成对抗网络进行训练,直至生成对抗网络达到预设收敛条件,得到第一签名识别模型,包括:
12.利用生成对抗网络中的第一生成器,根据随机变量生成对抗样本;
13.利用生成对抗网络中的第一判别器,对电子签名数据和对抗样本进行判别,输出判别数据;
14.根据判别数据,确定生成对抗网络的损失函数;
15.根据损失函数更新生成对抗网络的网络参数,直至损失函数小于预设值,得到第一签名识别模型。
16.作为优选,基于签名用户在每次签名场景中的待识别签名数据,对第一签名识别模型进行训练,得到训练完成的第二签名识别模型,包括:
17.利用第一签名识别模型,对待识别签名数据进行识别;
18.若待识别签名数据识别通过,则基于待识别签名数据,对第一签名识别模型进行训练,直至第一签名识别模型达到预设收敛条件,得到训练完成的第二签名识别模型。
19.作为优选,利用第一签名识别模型,对待识别签名数据进行识别,包括:
20.基于第一签名识别模型中的第二判别器,对待识别签名数据进行真实度预测,输出第一真实度预测阈值;
21.若第一真实度预测阈值大于预设阈值,则判定待识别签名数据识别通过。
22.作为优选,利用第二签名识别模型中的目标判别器,对待识别签名图像进行识别,得到待识别签名图像对应的识别结果数据,包括:
23.利用目标判别器,对待识别签名图像进行真实度预测,得到第二真实度预测阈值;
24.若第二真实度预测阈值大于预设阈值,则输出与待识别签名图像的匹配度最高的用户身份信息。
25.作为优选,运笔数据包括运笔压力数据、运笔时间数据和运动停顿数据。
26.第二方面,本技术提供一种电子签名识别装置,包括:
27.获取模块,用于获取电子签名数据和随机变量,电子签名数据包括签名图像和运笔数据;
28.第一训练模块,用于基于电子签名数据和随机变量,对预设的生成对抗网络进行训练,直至生成对抗网络达到预设收敛条件,得到第一签名识别模型;
29.第二训练模块,用于基于签名用户在每次签名场景中的待识别签名数据,对第一签名识别模型进行训练,得到训练完成的第二签名识别模型;
30.识别模块,用于利用第二签名识别模型中的目标判别器,对待识别签名图像进行识别,得到待识别签名图像对应的识别结果数据。
31.作为优选,第一训练模块,包括:
32.生成单元,用于利用生成对抗网络中的第一生成器,根据随机变量生成对抗样本;
33.判别单元,用于利用生成对抗网络中的第一判别器,对电子签名数据和对抗样本进行判别,输出判别数据;
34.确定单元,用于根据判别数据,确定生成对抗网络的损失函数;
35.更新单元,用于根据损失函数更新生成对抗网络的网络参数,直至损失函数小于预设值,得到第一签名识别模型。
36.第三方面,本技术提供一种计算机设备,包括处理器和存储器,存储器用于存储计算机程序,计算机程序被处理器执行时实现如第一方面的电子签名识别方法。
37.第四方面,本技术提供一种计算机可读存储介质,其存储有计算机程序,计算机程序被处理器执行时实现如第一方面的电子签名识别方法。
38.需要说明的是,上述第二方面至第四方面的有益效果请参见上述第一方面的相关描述,在此不再赘述。
附图说明
39.图1为本技术实施例示出的电子签名识别方法的流程示意图;
40.图2为本技术实施例示出的电子签名识别装置的结构示意图;
41.图3为本技术实施例示出的计算机设备的结构示意图。
具体实施方式
42.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
43.如相关技术记载,对于日常生活中的签名场景,例如课堂签到和公司打卡签到等,其对安全性的要求并不高,更多的是追求识别效率和准确度。而当前签名识别技术通常围绕签名识别的安全性建立一整套安全机制,会导致签名识别难度提高,识别效率降低。
44.为此,本技术实施例提供一种电子签名识别方法,通过获取电子签名数据和随机变量,电子签名数据包括签名图像和运笔数据,并基于电子签名数据和随机变量,对预设的生成对抗网络进行训练,直至生成对抗网络达到预设收敛条件,得到第一签名识别模型,以利用生成对抗网络提高签名识别模型的准确度,同时能够保证安全性;以及基于签名用户在每次签名场景中的待识别签名数据,对第一签名识别模型进行训练,得到训练完成的第二签名识别模型,以利用主动学习机制,采用实际签名场景下的签名数据对模型进行更新,提高模型的鲁棒性;最后,利用第二签名识别模型中的目标判别器,对待识别签名图像进行识别,得到待识别签名图像对应的识别结果数据,以只采用签名图像即可实现签名识别,提高实际签名场景下的识别效率。
45.请参照图1,图1为本技术实施例提供的一种电子签名识别方法的流程示意图。本技术实施例的电子签名识别方法可应用于计算机设备,该计算机设备包括但不限于智能手机、笔记本电脑、平板电脑、桌上型计算机等设备。如图1所示,本实施例的电子签名识别方法包括步骤s101至步骤s104,详述如下:
46.步骤s101,获取电子签名数据和随机变量,所述电子签名数据包括签名图像和运笔数据。
47.在本步骤中,电子签名数据可以为用户采用电容压力笔签名时,电容压力笔采集到的签名图像和运笔数据,运笔数据包括运笔压力数据、运笔时间数据和运动停顿数据,随机变量用于生成对抗样本。本实施例结合运笔数据能够有效提高签名识别模型的识别准确度。
48.可选地,对于签名图像可能存在尺寸大小不一的情况,对数据进行统一的压缩、裁剪或扩充,使其成为统一的尺寸,便于后续处理。进一步地,对采集得到的电子签名数据进
行标注处理,其形式可以为x_y.jpg,其中x为签名人标签,y为签名编号,其中每个电子签名数据应至少有一张签名图像。
49.步骤s102,基于所述电子签名数据和所述随机变量,对预设的生成对抗网络进行训练,直至所述生成对抗网络达到预设收敛条件,得到第一签名识别模型。
50.在本步骤中,在生成对抗网络中,通过给判别器(discriminator)提供真实的电子签名数据和生成器(generator)基于随机变量生成的伪造签名数据,以训练判别器的识别能力,训练结束后,将第一签名识别模型及模型参数保存至“model.pkl”文件中,以用于后续的进一步训练、测试和识别等任务。
51.步骤s103,基于签名用户在每次签名场景中的待识别签名数据,对所述第一签名识别模型进行训练,得到训练完成的第二签名识别模型。
52.在本步骤中,利用主动学习(active learning)和生成对抗网络(gan)结合的方式进行训练。
53.步骤s104,利用所述第二签名识别模型中的目标判别器,对待识别签名图像进行识别,得到所述待识别签名图像对应的识别结果数据。
54.在本步骤中,判别器通过识别签名数据是否为伪造,若为非伪造,则输出签名数据所属的标签,即对应的身份信息。
55.本技术相较于当前的签名识别方法,提出了一个全新的更加轻量级、便捷、快速的在线识别方法,该方法无需用户多次录入签名信息,而是将签名验证时所产生的数据作为新样本,实现了签名验证次数越多,样本越多,验证准确度也就越高的效果。同时,本技术的签名识别模型的体量较小,可以被轻易地整合进各种系统中,进一步拓宽了其应用场景。
56.在一实施例中,在图1所示实施例的基础上,所述基于所述电子签名数据和所述随机变量,对预设的生成对抗网络进行训练,直至所述生成对抗网络达到预设收敛条件,得到第一签名识别模型,包括:
57.利用所述生成对抗网络中的第一生成器,根据所述随机变量生成对抗样本;
58.利用所述生成对抗网络中的第一判别器,对所述电子签名数据和所述对抗样本进行判别,输出判别数据;
59.根据所述判别数据,确定所述生成对抗网络的损失函数;
60.根据所述损失函数更新所述生成对抗网络的网络参数,直至所述损失函数小于预设值,得到所述第一签名识别模型。
61.在本实施例中,生成器的结构如下:
62.[0063][0064]
判别器的结构如下:
[0065][0066][0067]
生成对抗网络的损失函数为:mingmaxdv(d,g)=e
x~pdata(x)
[logd(x)]+e
z~pnoise(z)
[log(1-d(g(z)))]。
[0068]
在一实施例中,在图1所示实施例的基础上,所述基于签名用户在每次签名场景中的待识别签名数据,对所述第一签名识别模型进行训练,得到训练完成的第二签名识别模型,包括:
[0069]
利用所述第一签名识别模型,对所述待识别签名数据进行识别;
[0070]
若所述待识别签名数据识别通过,则基于所述待识别签名数据,对所述第一签名识别模型进行训练,直至所述第一签名识别模型达到预设收敛条件,得到训练完成的所述第二签名识别模型。
[0071]
在本实施例中,通过主动学习(active learning)机制实现,在主动学习过程中,
更多的样本可以实现更高的准确度,同时,本技术对获取更多样本的方法进行了改进。传统的获取更多样本的方法是要求用户在录入信息时多次签名,而本技术改进后的方法不要求用户在录入信息时多次签名,而是将日后每次签名验证的过程中所产生的新签名,再次作为训练样本输入到网络中,从而实现验证次数越多,验证的准确度越高的效果。
[0072]
可选地,所述利用所述第一签名识别模型,对所述待识别签名数据进行识别,包括:
[0073]
基于所述第一签名识别模型中的第二判别器,对所述待识别签名数据进行真实度预测,输出第一真实度预测阈值;
[0074]
若所述第一真实度预测阈值大于预设阈值,则判定所述待识别签名数据识别通过。
[0075]
在本实施例中,用户的签名数据需要在模型预测阈值达到x%才会被认定为正确签名,其中x的值取决于具体应用场景,金融体系一般高于日常应用。而用户多次签名后,最后一次签名识别通过,若前序签名样本的阈值大于x'%(x'≤x),则认定为合法签名,并作为标注数据重新添加回主动学习模型,该机制能够在实际生产中产生大量的训练样本。
[0076]
在一实施例中,在图1所示实施例的基础上,所述利用所述第二签名识别模型中的目标判别器,对待识别签名图像进行识别,得到所述待识别签名图像对应的识别结果数据,包括:
[0077]
利用所述目标判别器,对所述待识别签名图像进行真实度预测,得到第二真实度预测阈值;
[0078]
若所述第二真实度预测阈值大于预设阈值,则输出与所述待识别签名图像的匹配度最高的用户身份信息。
[0079]
在本实施例中,训练好模型后,在在线识别系统中载入模型,并将生成对抗网络中的判别器单独进行识别任务。在识别过程中,将以一张单独的签名图片作为输入,图片经过模型处理后输入判别器。如果签名为伪造,则判别器会输出假,如果签名为真,判别器会输出与签名所对应的最匹配的身份信息标签作为输出。
[0080]
为了执行上述方法实施例对应的电子签名识别方法,以实现相应的功能和技术效果。参见图2,图2示出了本技术实施例提供的一种电子签名识别装置的结构框图。为了便于说明,仅示出了与本实施例相关的部分,本技术实施例提供的台区识别装置,包括:
[0081]
获取模块201,用于获取电子签名数据和随机变量,所述电子签名数据包括签名图像和运笔数据;
[0082]
第一训练模块202,用于基于所述电子签名数据和所述随机变量,对预设的生成对抗网络进行训练,直至所述生成对抗网络达到预设收敛条件,得到第一签名识别模型;
[0083]
第二训练模块203,用于基于签名用户在每次签名场景中的待识别签名数据,对所述第一签名识别模型进行训练,得到训练完成的第二签名识别模型;
[0084]
识别模块204,用于利用所述第二签名识别模型中的目标判别器,对待识别签名图像进行识别,得到所述待识别签名图像对应的识别结果数据。
[0085]
作为优选,所述第一训练模块202,包括:
[0086]
生成单元,用于利用所述生成对抗网络中的第一生成器,根据所述随机变量生成对抗样本;
[0087]
判别单元,用于利用所述生成对抗网络中的第一判别器,对所述电子签名数据和所述对抗样本进行判别,输出判别数据;
[0088]
确定单元,用于根据所述判别数据,确定所述生成对抗网络的损失函数;
[0089]
更新单元,用于根据所述损失函数更新所述生成对抗网络的网络参数,直至所述损失函数小于预设值,得到所述第一签名识别模型。
[0090]
作为优选,第二训练模块203,包括:
[0091]
识别单元,用于利用所述第一签名识别模型,对所述待识别签名数据进行识别;
[0092]
训练单元,用于若所述待识别签名数据识别通过,则基于所述待识别签名数据,对所述第一签名识别模型进行训练,直至所述第一签名识别模型达到预设收敛条件,得到训练完成的所述第二签名识别模型。
[0093]
作为优选,所述识别单元,包括:
[0094]
预测子单元,用于基于所述第一签名识别模型中的第二判别器,对所述待识别签名数据进行真实度预测,输出第一真实度预测阈值;
[0095]
判定子单元,用于若所述第一真实度预测阈值大于预设阈值,则判定所述待识别签名数据识别通过。
[0096]
作为优选,所述识别模块204,包括:
[0097]
预测单元,用于利用所述目标判别器,对所述待识别签名图像进行真实度预测,得到第二真实度预测阈值;
[0098]
输出单元,用于若所述第二真实度预测阈值大于预设阈值,则输出与所述待识别签名图像的匹配度最高的用户身份信息。
[0099]
作为优选,所述运笔数据包括运笔压力数据、运笔时间数据和运动停顿数据。
[0100]
上述的电子签名识别装置可实施上述方法实施例的电子签名识别方法。上述方法实施例中的可选项也适用于本实施例,这里不再详述。本技术实施例的其余内容可参照上述方法实施例的内容,在本实施例中,不再进行赘述。
[0101]
图3为本技术一实施例提供的计算机设备的结构示意图。如图3所示,该实施例的计算机设备3包括:至少一个处理器30(图3中仅示出一个)处理器、存储器31以及存储在所述存储器31中并可在所述至少一个处理器30上运行的计算机程序32,所述处理器30执行所述计算机程序32时实现上述任意方法实施例中的步骤。
[0102]
所述计算机设备3可以是智能手机、平板电脑、桌上型计算机和云端服务器等计算设备。该计算机设备可包括但不仅限于处理器30、存储器31。本领域技术人员可以理解,图3仅仅是计算机设备3的举例,并不构成对计算机设备3的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
[0103]
所称处理器30可以是中央处理单元(central processing unit,cpu),该处理器30还可以是其他通用处理器、数字信号处理器(digital signalprocessor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0104]
所述存储器31在一些实施例中可以是所述计算机设备3的内部存储单元,例如计算机设备3的硬盘或内存。所述存储器31在另一些实施例中也可以是所述计算机设备3的外部存储设备,例如所述计算机设备3上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,所述存储器31还可以既包括所述计算机设备3的内部存储单元也包括外部存储设备。所述存储器31用于存储操作系统、应用程序、引导装载程序(bootloader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器31还可以用于暂时地存储已经输出或者将要输出的数据。
[0105]
另外,本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述任意方法实施例中的步骤。
[0106]
本技术实施例提供了一种计算机程序产品,当计算机程序产品在计算机设备上运行时,使得计算机设备执行时实现上述各个方法实施例中的步骤。
[0107]
在本技术所提供的几个实施例中,可以理解的是,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意的是,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。
[0108]
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0109]
以上所述的具体实施例,对本技术的目的、技术方案和有益效果进行了进一步的详细说明,应当理解,以上所述仅为本技术的具体实施例而已,并不用于限定本技术的保护范围。特别指出,对于本领域技术人员来说,凡在本技术的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1