发明内容
基于此,有必要针对上述技术问题,提供一种能够提高检测攻击图像的准确性的攻击图像检测模型训练方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种攻击图像检测模型训练方法。所述方法包括:
获取疑似攻击图像集,对疑似攻击图像集进行聚类,得到各个聚类疑似攻击图像集;
基于各个聚类疑似攻击图像集确定目标聚类图像集,将目标聚类图像集作为训练攻击图像集,基于训练攻击图像集中的训练攻击图像提取攻击特征区域图像;
获取待攻击图像,将待攻击图像与攻击特征区域图像进行融合,得到目标训练攻击图像;
获取待更新攻击图像检测模型,基于目标训练攻击图像对待更新攻击图像检测模型进行更新训练,当达到更新训练完成条件时,得到更新攻击图像检测模型,更新攻击图像检测模型用于对输入图像进行攻击图像检测。
第二方面,本申请还提供了一种攻击图像检测模型训练装置。所述装置包括:
聚类模块,用于获取疑似攻击图像集,对疑似攻击图像集进行聚类,得到各个聚类疑似攻击图像集;
区域提取模块,用于基于各个聚类疑似攻击图像集确定目标聚类图像集,将目标聚类图像集作为训练攻击图像集,基于训练攻击图像集中的训练攻击图像提取攻击特征区域图像;
融合模块,用于获取待攻击图像,将待攻击图像与攻击特征区域图像进行融合,得到目标训练攻击图像;
更新模块,用于获取待更新攻击图像检测模型,基于目标训练攻击图像对待更新攻击图像检测模型进行更新训练,当达到更新训练完成条件时,得到更新攻击图像检测模型,更新攻击图像检测模型用于对输入图像进行攻击图像检测。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取疑似攻击图像集,对疑似攻击图像集进行聚类,得到各个聚类疑似攻击图像集;
基于各个聚类疑似攻击图像集确定目标聚类图像集,将目标聚类图像集作为训练攻击图像集,基于训练攻击图像集中的训练攻击图像提取攻击特征区域图像;
获取待攻击图像,将待攻击图像与攻击特征区域图像进行融合,得到目标训练攻击图像;
获取待更新攻击图像检测模型,基于目标训练攻击图像对待更新攻击图像检测模型进行更新训练,当达到更新训练完成条件时,得到更新攻击图像检测模型,更新攻击图像检测模型用于对输入图像进行攻击图像检测。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取疑似攻击图像集,对疑似攻击图像集进行聚类,得到各个聚类疑似攻击图像集;
基于各个聚类疑似攻击图像集确定目标聚类图像集,将目标聚类图像集作为训练攻击图像集,基于训练攻击图像集中的训练攻击图像提取攻击特征区域图像;
获取待攻击图像,将待攻击图像与攻击特征区域图像进行融合,得到目标训练攻击图像;
获取待更新攻击图像检测模型,基于目标训练攻击图像对待更新攻击图像检测模型进行更新训练,当达到更新训练完成条件时,得到更新攻击图像检测模型,更新攻击图像检测模型用于对输入图像进行攻击图像检测。第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取疑似攻击图像集,对疑似攻击图像集进行聚类,得到各个聚类疑似攻击图像集;
基于各个聚类疑似攻击图像集确定目标聚类图像集,将目标聚类图像集作为训练攻击图像集,基于训练攻击图像集中的训练攻击图像提取攻击特征区域图像;
获取待攻击图像,将待攻击图像与攻击特征区域图像进行融合,得到目标训练攻击图像;
获取待更新攻击图像检测模型,基于目标训练攻击图像对待更新攻击图像检测模型进行更新训练,当达到更新训练完成条件时,得到更新攻击图像检测模型,更新攻击图像检测模型用于对输入图像进行攻击图像检测。
上述攻击图像检测模型训练方法、装置、计算机设备、存储介质和计算机程序产品,通过对疑似攻击图像进行聚类,得到各个聚类疑似攻击图像集,然后从各个聚类疑似攻击图像集中确定目标聚类图像集,将目标聚类图像集作为训练攻击图像集并提取训练攻击图像的攻击特征区域图像,将攻击特征区域图像与待攻击图像进行融合,得到目标训练攻击图像,从而增加了攻击图像检测模型的样本数量和样本多样性。进一步地,使用目标训练攻击图像对攻击图像检测模型进行更新训练,能够提高攻击图像检测模型对疑似攻击图像的检测准确性,进而提高了对攻击图像检测的准确性。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的攻击图像检测模型训练方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。服务器104获取疑似攻击图像集,对疑似攻击图像集进行聚类,得到各个聚类疑似攻击图像集;服务器104基于各个聚类疑似攻击图像集确定目标聚类图像集,将目标聚类图像集作为训练攻击图像集,基于训练攻击图像集中的训练攻击图像提取攻击特征区域图像;服务器104可以通过终端102获取待攻击图像,将待攻击图像与攻击特征区域图像进行融合,得到目标训练攻击图像;服务器104获取待更新攻击图像检测模型,基于目标训练攻击图像对待更新攻击图像检测模型进行更新训练,当达到更新训练完成条件时,得到更新攻击图像检测模型,更新攻击图像检测模型用于对输入图像进行攻击图像检测。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种攻击图像检测模型训练方法,以该方法应用于图1中的服务器为例进行说明,可以理解的是,该方法也可以应用于终端,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
步骤202,获取疑似攻击图像集,对所述疑似攻击图像集进行聚类,得到各个聚类疑似攻击图像集。
其中,疑似攻击图像集是指检测出图像为攻击图像的可能性达到疑似程度的图像集。疑似程度是预先设置好的表征图像为疑似攻击图像的可能性阈值。攻击图像是指对抗攻击的图像。对抗攻击是一种通过对图像施加扰动来使分类识别做出错误判断的技术。聚类是指按照某个特定标准把一个数据集分割成不同的类或簇。聚类疑似攻击图像是指疑似攻击图像集聚类后得到的图像集。
具体地,服务器可以从数据存储空间中获取疑似攻击图像集,也可以获取终端发送的疑似攻击图像集,也可以是获取业务服务器提供的疑似攻击图像集。服务器对疑似攻击图像集中的各个疑似攻击图像可以按照攻击形式进行聚类,得到各个分类后的疑似攻击图像分别组成的聚类疑似攻击图像集,攻击形式可以是指生成攻击图像的方式。
步骤204,基于所述各个聚类疑似攻击图像集确定目标聚类图像集,将所述目标聚类图像集作为训练攻击图像集,基于所述训练攻击图像集中的训练攻击图像提取攻击特征区域图像。
其中,目标聚类图像集是指提供攻击图像样本的聚类疑似攻击图像集。训练攻击图像是指训练时的攻击图像样本,攻击图像样本用于对攻击图像检测模型进行更新训练。攻击特征区域图像是指训练攻击图像中预先设置好的特征提取区域对应的局部图像,用于生成攻击图像样本。
具体地,服务器统计各个聚类疑似攻击图像集中的疑似攻击图像的数量,根据疑似攻击图像的数量在各个聚类疑似攻击图像集中确定目标聚类图像集,将目标聚类图像集作为训练攻击图像集,然后使用预设特征点检测算法检测训练攻击图像集中的各个训练攻击图像对应的特征点,根据各个训练攻击图像对应的特征点分别提取各个训练攻击图像对应的攻击特征区域图像。提取的攻击特征区域图像的尺寸是预先确定好的,所有攻击特征区域图像的尺寸可以是相同的,也可以是不同的。在一个实施例中,攻击特征区域图像的尺寸可以按照预先设置好的攻击特征区域图像尺寸和整体图像尺寸的比例关系来确定或者也可以按照预先设置好的攻击特征区域图像面积和整体图像面积的大小关系来确定。
步骤206,获取待攻击图像,将所述待攻击图像与所述攻击特征区域图像进行融合,得到目标训练攻击图像。
其中,待攻击图像是指接受攻击特征区域图像进行融合的图像,用于生成攻击图像样本。目标训练攻击图像是指融合后的图像,作为攻击图像样本。
具体地,服务器可以从数据存储空间中获取待攻击图像集,也可以获取终端发送的待攻击图像集,也可以是获取业务服务器提供的待攻击图像集。服务器使用预设的特征点检测算法对待攻击图像进行特征点检测,根据特征点在待攻击图像中确定接受攻击特征区域图像进行融合的区域,然后将攻击特征区域图像融合到该区域中,得到目标训练攻击图像。
步骤208,获取待更新攻击图像检测模型,基于所述目标训练攻击图像对所述待更新攻击图像检测模型进行更新训练,当达到更新训练完成条件时,得到更新攻击图像检测模型,所述更新攻击图像检测模型用于对输入图像进行攻击图像检测。
其中,待更新攻击图像检测模型是指需要进行更新的攻击图像检测模型,攻击图像检测模型用于检测待检测图像是否为真实图像或者攻击图像的检测模型。预设更新训练完成条件是指预先设置好的待更新攻击图像检测模型是否更新完成的判断条件。更新攻击图像检测模型是指更新完成后的攻击图像检测模型。
具体地,服务器可以从数据存储系统中获取待更新攻击图像检测模型,并获取目标训练攻击图像对应的训练标签,目标训练攻击图像对应的训练标签可以是根据预先标记好的标签。服务器使用目标训练攻击图像及其对应的训练标签对待更新攻击图像检测模型进行更新训练,并得到更新训练结果。当检测到更新训练结果未满足更新训练完成条件时,对待更新攻击图像检测模型迭代更新,直到更新训练结果达到更新训练完成条件,得到更新攻击图像检测模型。更新训练完成条件可以是待更新攻击图像检测模型的损失结果达到预设损失阈值或者迭代次数达到预设迭代阈值等。服务器可以使用更新图像检测模型对待检测图像进行攻击图像检测。
上述攻击图像检测模型训练方法中,通过对疑似攻击图像进行聚类,得到各个聚类疑似攻击图像集,然后从各个聚类疑似攻击图像集中确定目标聚类图像集,将目标聚类图像集作为训练攻击图像集并提取训练攻击图像的攻击特征区域图像,将攻击特征区域图像与待攻击图像进行融合,得到目标训练攻击图像,从而增加了攻击图像检测模型的样本数量和样本多样性。进一步地,使用目标训练攻击图像对攻击图像检测模型进行更新训练,能够提高攻击图像检测模型对疑似攻击图像的检测准确性,进而提高了对攻击图像检测的准确性。
在一个实施例中,步骤202,获取疑似攻击图像集,包括:
获取目标图像,基于待更新攻击图像检测模型对目标图像进行攻击图像检测,得到目标图像对应的攻击图像确定程度;
当目标图像对应的攻击图像确定程度符合预设疑似攻击图像判断条件时,将目标图像作为疑似攻击图像集中的疑似攻击图像。
其中,目标图像是用于进行攻击图像检测的图像。攻击图像确定程度是指待更新攻击图像检测模型确定待检测图像为攻击图像的确定程度,可以是待检测图像为攻击图像的可能性概率。预设疑似攻击图像判断条件是指预先设置好的目标图像是否为疑似攻击图像的判断条件。
具体地,服务器可以通过终端采集用户的读数视频数据,读数视频数据表示向用户客户端发送数字采集用户读出此数字的视频文件,读数视频数据用于进行用户的身份验证。服务器对视频数据按帧拆分得到至少一帧的目标图像。服务器也可以通过用户终端获取用户的人脸图像,作为目标图像。服务器将获取到的目标图像输入到待更新攻击图像检测模型中进行攻击图像检测,得到目标图像对应的攻击图像确认程度。服务器获取预先设置好的疑似攻击图像确认程度范围,疑似攻击图像确认程度范围可以是概率范围,服务器检测到目标图像对应的攻击图像确认程度在疑似攻击图像确认程度范围内时,确定该目标图像符合预设疑似攻击图像判断条件,将该目标图像作为疑似攻击图像,服务器将至少一个疑似攻击图像作为疑似攻击图像集。服务器可以预先建立疑似攻击图像数据库,用于存储疑似攻击图像,疑似攻击图像数据库包括历史时间段检测出的疑似攻击图像。
在一个实施例中,疑似攻击图像确认程度范围的下限可以是攻击图像检测模型判断目标图像为攻击图像的确认程度阈值,则疑似攻击图像确认程度范围表示攻击图像检测模型判断目标图像为攻击图像的非肯定区域,攻击图像确认程度在该区域的目标图像确认为疑似攻击图像,比如,50%-80%,并且50%为攻击图像检测模型判断目标图像为攻击图像的确认程度阈值,0-50%为攻击图像检测模型判断目标图像为攻击图像的否定区域,80%-100%为攻击图像检测模型判断目标图像为攻击图像的肯定区域。
在一个实施例中,服务器获取当前时间段内的目标图像集,将目标图像集输入到待更新攻击图像检测模型进行攻击图像检测,得到目标图像集中各个目标图像对应的攻击图像确认程度,根据攻击图像确认程度范围在各个目标图像中确定疑似攻击图像,将各个疑似攻击图像存储到疑似攻击图像数据库中,并在疑似攻击图像数据库中对所有的疑似攻击图像按照攻击类型进行图像聚类,得到各个聚类疑似攻击图像集,服务器可以使用K-means算法进行图像聚类,不同的聚类疑似攻击图像集对应的攻击类型不同,比如,截图类型的疑似攻击图像、色差类型的疑似攻击图像、模糊轮廓边缘的疑似攻击图像等。服务器统计各个聚类疑似攻击图像集对应的疑似攻击图像的数量,将疑似攻击图像的数量最少的聚类疑似攻击图像集作为目标聚类图像集。服务器也可以计算各个聚类疑似攻击图像集对应的攻击图像平均概率,将平均概率最小的聚类疑似攻击图像集作为目标聚类图像集。服务器也可以根据各个聚类疑似攻击图像集的标记确定目标聚类图像集,各个聚类疑似攻击图像集的标记可以是预先设置好的。
本实施例中,由于攻击图像检测模型对训练样本较少或未训练过的某类攻击图像进行检测时,其检测出的攻击图像确认程度会接近确认程度阈值,表示攻击图像检测模型对该类的攻击图像的确认程度较低。因此,通过设置疑似攻击图像确认程度范围能够获取目标图像中待更新攻击图像检测模型训练样本较少或未训练过的某类攻击图像,增加了攻击图像检测模型的训练样本的多样性,避免对训练样本较少或未训练过的某类攻击图像发生漏检,从而提高了对攻击图像检测的准确性。
在一个实施例中,步骤204,基于训练攻击图像集中的训练攻击图像提取攻击特征区域图像,包括:
基于训练攻击图像进行特征点检测,得到攻击特征点坐标;
基于特征点坐标在训练攻击图像中确定攻击特征区域;
提取训练攻击图像中攻击特征区域对应的图像数据,得到攻击特征区域图像。
其中,特征点检测是指训练攻击图像中表征攻击区域的特征点。攻击特征点坐标是指特征点在训练攻击图像中的位置坐标。攻击特征区域是指训练攻击图像中的局部区域。
具体地,训练攻击图像可以是人脸图像,服务器使用人脸识别算法对训练攻击图像中的攻击特征点进行检测,人脸识别算法可以是DBFace(轻量级人脸识别算法),攻击特征点可以是训练攻击图像对应的人脸关键点,人脸识别算法输出训练攻击图像对应的人脸框和攻击特征点坐标。服务器根据人脸框和攻击特征点坐标确定攻击特征区域,攻击特征区域可以是训练攻击图像的人脸图像中的嘴部区域,提取训练攻击图像中攻击特征区域对应的图像数据,得到攻击特征区域图像,即嘴部区域图像。
在一个具体实施例中,如图3所示,提供一种攻击特征区域示意图;图3-A表示人脸识别算法输出的人脸框和人脸关键点,图中用序号表示。图3-B表示根据攻击特征区域,即嘴部区域。服务器使用矩形截取嘴部区域,服务器设置嘴部区域的左上角坐标为(x,y),右下角坐标为(m,n)。服务器将嘴部右边的关键点4的横坐标作为嘴部区域的左上角坐标的横坐标x,将鼻子关键点3和关键点4之间的中点的纵坐标作为嘴部区域的左上角坐标的纵坐标y。服务器将嘴部左边的关键点5的横坐标作为嘴部区域的右下角坐标的横坐标m,将关键点5与人脸框0右下角坐标的80%的位置坐标的纵坐标作为嘴部区域的右下角坐标的纵坐标n。由于嘴部区域的关键点存在偏差,服务器获取预先设置好的偏移量,偏移量可以用b表示,则嘴部区域的左上角坐标为(x-b,y),右下角坐标为(m+b,n)。
本实施例中,通过特征点坐标在训练攻击图像中确定攻击特征区域能够完整提取训练攻击图像中的嘴部区域图像,从而能够根据嘴部区域图像准确生成目标训练攻击图像。
在一个实施例中,步骤206,将待攻击图像与攻击特征区域图像进行融合,得到目标训练攻击图像,包括:
基于待攻击图像进行特征点检测,得到待攻击特征点坐标;
基于待攻击特征点坐标在待攻击图像中确定待攻击特征区域;
计算待攻击特征区域对应的尺寸,基于待攻击特征区域对应的尺寸对攻击特征区域图像进行尺寸调整,得到目标攻击特征区域图像;
将目标攻击特征区域图像融合到待攻击特征区域,得到目标训练攻击图像。
其中,待攻击图像是指真实的图像。待攻击特征点坐标是指特征点在待攻击图像中的位置坐标。待攻击特征区域是指待攻击图像中的局部区域。目标攻击特征区域图像是指经过尺寸调整后的攻击特征区域图像,目标攻击特征区域图像对应的尺寸与待攻击特征区域对应的尺寸一致。
具体地,待攻击图像可以是人脸图像,服务器可以在人脸数据库中获取待攻击图像,然后服务器使用人脸识别算法对待攻击图像中的待攻击特征点进行检测,待攻击特征点可以是待攻击图像对应的人脸关键点,人脸识别算法输出待攻击图像对应的人脸框和待攻击特征点坐标。服务器根据人脸框和待攻击特征点坐标确定待攻击特征区域,待攻击特征区域可以是待攻击图像的人脸图像中的嘴部区域。然后服务器计算待攻击图像中待攻击特征区域的尺寸,可以通过待攻击特征区域的左上角坐标和右下角坐标进行计算,得到待攻击特征区域对应的尺寸。然后根据待攻击特征区域对应的尺寸对攻击特征区域图像进行尺寸调整得到目标攻击特征区域图像,服务器可以使用双线性插值法对攻击特征区域图像进行缩放或放大,以使目标攻击特征区域图像的尺寸与待攻击特征区域的尺寸一致。然后服务器将攻击特征区域图像嵌入到待攻击特征区域,比如,将待攻击特征区域内的像素值替换成攻击特征区域图像对应的像素值,得到目标训练攻击图像。服务器也可以将同一个攻击特征区域图像嵌入到多个待攻击图像的待攻击特征区域,得到多个目标训练攻击图像。
本实施例中,通过特征点坐标在待攻击图像中确定待攻击特征区域,并根据待攻击特征区域的尺寸对攻击特征区域图像进行尺寸调整,将目标攻击特征区域图像融合到待攻击特征区域,能够得到大量的疑似攻击图像对应的目标训练攻击图像,通过使用目标训练攻击图像对待更新攻击图像检测模型进行更新,能够提高对攻击图像检测的准确性。
在一个实施例中,如图4所示,提供一种初始攻击图像检测模型训练的流程示意图;在步骤202,获取疑似攻击图像集之前,还包括:
步骤402,获取预训练网络;
步骤404,基于预训练网络建立初始攻击图像检测模型;
步骤406,获取训练图像和训练标签,将训练图像输入到初始攻击图像检测模型中进行攻击图像检测,得到初始识别结果;
步骤408,基于初始识别结果与训练标签进行损失计算,得到模型损失信息,基于损失信息更新初始攻击图像检测模型,得到更新攻击图像检测模型;
步骤410,将更新攻击图像检测模型作为初始攻击图像检测模型,并返回获取训练图像和训练标签,将训练图像输入到初始攻击图像检测模型中,得到初始识别结果的步骤迭代执行,直到达到训练完成条件时,得到目标攻击图像检测模型;
步骤412,当检测到目标攻击图像检测模型达到更新条件时,将目标攻击图像检测模型作为待更新攻击图像检测模型。
其中,预训练网络是指预先训练好的网络模型。初始攻击图像检测模型是指使用初始参数建立的攻击图像检测模型。训练图像是指用于对初始攻击图像检测模型进行更新训练的图像,可以包括攻击图像和真实图像。训练标签是指与训练图像的类别对应的标签信息,包括攻击图像标签和非攻击图像标签。初始识别结果是指初始攻击图像检测模型对训练图像进行检测后输出的检测结果。模型损失信息是指初始识别结果与实际之间的偏差信息。更新攻击图像检测模型是指参数更新后的攻击图像检测模型。目标攻击图像检测模型是指训练完成后可以使用的攻击图像检测模型。
具体地,服务器获取预设训练网络,预设训练网络可以是人脸检测模型和目标检测模型,服务器可以将目标检测模型中的骨干网络替换成人脸检测模型中的骨干网络,让替换完成后的目标检测模型作为初始攻击图像检测模型。目标检测模型可以是YOLO v5(You only look once,物体检测算法),人脸检测模型可以是YOLO v5-face。初始攻击图像检测模型用于检测输入图像是否为攻击图像。
服务器获取预先存储的训练图像和训练标签,将训练图像输入到初始攻击图像检测模型中,得到初始识别结果,包括训练图像对应的分类结果,然后服务器根据训练图像对应的分类结果和训练标签使用损失函数进行损失计算,饿到初始攻击图像检测模型对应的模型损失信息。服务器根据损失信息对初始攻击图像检测模型中的初始参数进行更新,得到更新攻击图像检测模型。然后服务器将更新攻击图像检测模型作为初始攻击图像检测模型,并执行上述步骤进行迭代训练,当检测到更新攻击图像检测模型的模型损失信息小于预设阈值时,达到训练完成条件,得到目标攻击图像检测模型。
然后服务器获取用户上传的待检测图像,将待检测图像输入到目标攻击图像检测模型中进行检测,直到目标攻击图像检测模型对应的检测次数达到预设次数阈值或者检测到目标攻击图像检测模型对应的检测准确率降低到预设准确率阈值时,表示目标攻击图像检测模型达到更新条件,将目标攻击图像检测模型作为待更新攻击图像检测模型进行更新训练。
本实施例中,通过将目标检测模型的骨干网络替换成人脸检测模型的骨干网络,并将替换后的目标检测模型作为初始攻击图像检测模型进行训练,能够提高目标攻击图像检测模型对人脸图像是否为攻击图像的检测速度,从而提高了攻击图像检测模型的训练速度。
在一个实施例中,在步骤208,基于目标训练攻击图像对待更新攻击图像检测模型进行更新训练,当达到更新训练完成条件时,得到更新攻击图像检测模型之后,还包括:
获取待检测图像,基于更新攻击图像检测模型对待检测图像进行攻击图像检测,得到待检测图像对应的攻击图像确定程度;
当待检测图像对应的攻击图像确定程度达到预设攻击阈值时,确定待检测图像为攻击图像。
其中,待检测图像是指需要进行攻击图像检测的图像,检测该待检测图像是否为真实图像或者攻击图像。预设攻击阈值是指预先设置好的确定待检测图像为攻击图像的阈值。
具体地,服务器获取用户上传的待检测图像,将待检测图像输入到更新攻击图像检测模型中进行攻击图像检测,得到待检测图像对应的攻击图像确定程度,将待检测图像对应的攻击图像确定程度与预设攻击阈值进行比较,当待检测图像对应的攻击图像确定程度达到预设攻击阈值时,确定待检测图像为攻击图像。
在一个实施例中,服务器可以通过用户终端获取用户上传的读数视频数据,用户上传的人脸读数视频数据用于进行身份验证,服务器将人脸读数视频数据拆分成多帧待检测图像,将每帧待检测图像输入到更新攻击图像检测模型中进行攻击图像检测。当检测到存在读数攻击图像时,服务器确定用户上传的人脸读数视频数据为虚假人脸读数视频数据,向用户终端返回身份验证失败信息。读数攻击图像是指在人脸读数检测活动中伪造嘴部区域的图像,比如,伪造者使用被害者的正脸静态图像(比如身份证照片),将伪造者的嘴部读数视频的每一帧图像叠加到被害者的嘴部区域,伪造出被害者正在进行读数假象。根据攻击图像检测模型的泛化能力也可以检测其他不合规人脸图像,比如出现口罩、面膜、嘴部存在标签等其它在读数活体检测中不合规的图像。
本实施例中,通过使用更新攻击图像检测模型对用户上传的待检测图像进行攻击图像检测,也可以对用户上传的读数视频数据进行攻击检测,能够提高对用户的身份验证能力。
在一个具体实施例中,如图5所示,提供一种攻击图像检测的流程示意图;服务器可以从人脸数据库中获取待攻击图像,从疑似攻击图像数据库中获取疑似攻击图像,服务器也可以从人脸数据库中获取疑似攻击图像。服务器使用人脸检测算法分别对待攻击图像和疑似攻击图像进行人脸关键点检测,然后分别确定待攻击图像和疑似攻击图像的嘴部区域并获取疑似攻击图像的嘴部区域图像。服务器将疑似攻击图像的嘴部区域图像覆盖到待攻击图像中嘴部区域,得到攻击图像。服务器可以将多个疑似攻击图像的嘴部区域图像覆盖到多个待攻击图像中嘴部区域,得到攻击图像集。服务器将攻击图像集作为目标训练攻击图像集,并从人脸数据库中随机抽取至少一个真实的人脸图像数据作为训练正常图像集。服务器将目标训练攻击图像集和训练正常图像集作为目标检测模型的训练图像,并使用训练图像对目标检测模型进行训练,得到训练好的目标检测模型。
服务器获取用户上传的待检测图像,将待检测图像输入到训练好的目标检测模型进行攻击图像检测,当检测到待检测图像对应的攻击图像概率在疑似攻击图像概率范围内时,将待检测图像作为疑似攻击图像,并将疑似攻击图像存储到疑似攻击图像数据库中。
在检测到训练好的目标检测模型达到更新条件时,将训练好的目标检测模型作为待更新目标检测模型,并对疑似攻击图像数据库中的所有疑似攻击图像进行图像聚类,得到各个聚类疑似攻击图像集,将疑似攻击图像数量最少的聚类疑似攻击图像集作为目标聚类图像,并获取待攻击图像,然后返回到服务器从人脸数据库中获取疑似攻击图像的步骤迭代执行,直到待更新目标检测模型训练更新完成,得到更新目标检测模型。服务器也可以通过外部数据库或其他方式获取疑似攻击图像并存储到疑似攻击图像数据库中。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的攻击图像检测模型训练方法的攻击图像检测模型训练装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个攻击图像检测模型训练装置实施例中的具体限定可以参见上文中对于攻击图像检测模型训练方法的限定,在此不再赘述。
在一个实施例中,如图6所示,提供了一种攻击图像检测模型训练装置600,包括:聚类模块602、区域提取模块604、融合模块606和更新模块608,其中:
聚类模块602,用于获取疑似攻击图像集,对疑似攻击图像集进行聚类,得到各个聚类疑似攻击图像集;
区域提取模块604,用于基于各个聚类疑似攻击图像集确定目标聚类图像集,将目标聚类图像集作为训练攻击图像集,基于训练攻击图像集中的训练攻击图像提取攻击特征区域图像;
融合模块606,用于获取待攻击图像,将待攻击图像与攻击特征区域图像进行融合,得到目标训练攻击图像;
更新模块608,用于获取待更新攻击图像检测模型,基于目标训练攻击图像对待更新攻击图像检测模型进行更新训练,当达到更新训练完成条件时,得到更新攻击图像检测模型,更新攻击图像检测模型用于对输入图像进行攻击图像检测。
在一个实施例中,聚类模块602,包括:
判断单元,用于获取目标图像,基于待更新攻击图像检测模型对目标图像进行攻击图像检测,得到目标图像对应的攻击图像确定程度;当目标图像对应的攻击图像确定程度符合预设疑似攻击图像判断条件时,将目标图像作为疑似攻击图像集中的疑似攻击图像。
在一个实施例中,区域提取模块604,包括:
区域确定单元,用于基于训练攻击图像进行特征点检测,得到攻击特征点坐标;基于特征点坐标在训练攻击图像中确定攻击特征区域;提取训练攻击图像中攻击特征区域对应的图像数据,得到攻击特征区域图像。
在一个实施例中,融合模块606,包括:
区域融合单元,用于基于待攻击图像进行特征点检测,得到待攻击特征点坐标;基于待攻击特征点坐标在待攻击图像中确定待攻击特征区域;计算待攻击特征区域对应的尺寸,基于待攻击特征区域对应的尺寸对攻击特征区域图像进行尺寸调整,得到目标攻击特征区域图像;将目标攻击特征区域图像融合到待攻击特征区域,得到目标训练攻击图像。
在一个实施例中,攻击图像检测模型训练装置600,还包括:
训练单元,用于获取预训练网络;
基于预训练网络建立初始攻击图像检测模型;获取训练图像和训练标签,将训练图像输入到初始攻击图像检测模型中进行攻击图像检测,得到初始识别结果;基于初始识别结果与训练标签进行损失计算,得到模型损失信息,基于损失信息更新初始攻击图像检测模型,得到更新攻击图像检测模型;将更新攻击图像检测模型作为初始攻击图像检测模型,并返回获取训练图像和训练标签,将训练图像输入到初始攻击图像检测模型中,得到初始识别结果的步骤迭代执行,直到达到训练完成条件时,得到目标攻击图像检测模型;当检测到目标攻击图像检测模型达到更新条件时,将目标攻击图像检测模型作为待更新攻击图像检测模型。
在一个实施例中,攻击图像检测模型训练装置600,还包括:
检测单元,用于获取待检测图像,基于更新攻击图像检测模型对待检测图像进行攻击图像检测,得到待检测图像对应的攻击图像确定程度;当待检测图像对应的攻击图像确定程度达到预设攻击阈值时,确定待检测图像为攻击图像。
上述攻击图像检测模型训练装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储待检测图像,待更新攻击图像检测模型,该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种攻击图像检测模型训练方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图8所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种攻击图像检测模型训练方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图7-8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。