攻击检测方法、电子设备和计算机可读介质与流程

文档序号:33001747发布日期:2023-01-18 01:26阅读:24来源:国知局
攻击检测方法、电子设备和计算机可读介质与流程

1.本技术实施例涉及计算机技术领域,具体涉及攻击检测方法、电子设备和计算机可读介质。


背景技术:

2.随着计算机技术的发展,人脸识别及其相关技术的应用场景越来越丰富。通常,存在不法分子试图通过伪造脸部图像的方式通过人脸识别系统的身份核验。基于此,活体识别技术应运而生。
3.现有技术中,可通过训练得到的攻击检测模型来进行攻击检测。现有的攻击检测模型仅能够对屏幕翻拍、面膜面具等攻击数据进行有效识别,对于通过对真实脸部图像进行处理后所得到的图像边缘存在差异的攻击脸部图像(可称为边缘差异型的攻击脸部图像),由于其脸部区域同真实脸部图像类似且不存在明显编辑,尚且无法进行有效识别,导致攻击检测的精度较低。此外,攻击检测模型的计算量较大,导致攻击检测的速度较低。


技术实现要素:

4.本技术实施例提出了攻击检测方法、电子设备和计算机可读介质,以解决现有技术中攻击检测的速度和精度较低的技术问题。
5.第一方面,本技术实施例提供了一种攻击检测方法,该方法包括:将待测脸部图像输入攻击检测模型;通过所述攻击检测模型将待测脸部图像划分为多个图像块,提取各图像块的块特征,以及对各行及各列图像块的块特征进行处理,得到所述待测脸部图像的行特征和列特征,对所述行特征和所述列特征进行处理,得到攻击检测结果;所述攻击检测结果用于指示所述待测脸部图像是否为与真实脸部图像的图像边缘存在差异的攻击脸部图像。
6.第二方面,本技术实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面中所描述的方法。
7.第三方面,本技术实施例提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所描述的方法。
8.第四方面,本技术实施例提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面中所描述的方法。
9.本技术实施例提供的攻击检测方法、电子设备和计算机可读介质,通过攻击检测模型将待测脸部图像划分为多个图像块,并提取各图像块的块特征,而后分别对各行及各列图像块的块特征进行处理,得到待测脸部图像的行特征和列特征,最后对行特征和列特征进行处理,从而得到攻击检测结果。一方面,鉴于边缘差异型的攻击脸部图像在脸部区域无明显编辑的特点,本技术实施例通过对待测脸部图像分块提取块特征并按照行和列对块特征组合,使得攻击检测模型能够关注到待测脸部图像中每个图像块和其他图像块之间的
关系,相较于只关注图像的全局特征或脸部区域特征的攻击检测模型,更符合边缘差异类型的攻击脸部图像的特点,从而能够有效防御边缘差异型的脸部攻击,提高了攻击检测的精度。另一方面,对待测脸部图像进行分块的处理,可使得每一次计算的图像数据量减少,从而大大降低了计算量,有效提高了模型在部署使用时的运行速度。
附图说明
10.通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本技术的其它特征、目的和优点将会变得更明显:
11.图1是根据本技术的攻击检测方法的一个实施例的流程图;
12.图2是根据本技术的攻击检测模型的结构示意图;
13.图3是根据本技术的攻击脸部样本图像的一个生成过程的示意图;
14.图4是根据本技术的攻击脸部样本图像的又一生成过程的示意图;
15.图5是根据本技术的攻击脸部样本图像的再一生成过程的示意图;
16.图6是根据本技术的攻击检测方法的处理过程的示意图;
17.图7是根据本技术的攻击检测装置的一个实施例的结构示意图;
18.图8是用于实现本技术实施例的电子设备的计算机系统的结构示意图。
具体实施方式
19.下面结合附图和实施例对本技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
20.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本技术。
21.需要指出的是,本技术中所有获取信号、信息或数据的动作都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
22.近年来,基于人工智能的计算机视觉、深度学习、机器学习、图像处理、图像识别等技术研究取得了重要进展。人工智能(artificial intelligence,ai)是研究、开发用于模拟、延伸人的智能的理论、方法、技术及应用系统的新兴科学技术。人工智能学科是一门综合性学科,涉及芯片、大数据、云计算、物联网、分布式存储、深度学习、机器学习、神经网络等诸多技术种类。计算机视觉作为人工智能的一个重要分支,具体是让机器识别世界,计算机视觉技术通常包括人脸识别、攻击检测、指纹识别与防伪验证、生物特征识别、人脸检测、行人检测、目标检测、行人识别、图像处理、图像识别、图像语义理解、图像检索、文字识别、视频处理、视频内容识别、三维重建、虚拟现实、增强现实、同步定位与地图构建(slam)、计算摄影、机器人导航与定位等技术。随着人工智能技术的研究和进步,该项技术在众多领域展开了应用,例如城市管理、交通管理、楼宇管理、园区管理、人脸通行、人脸考勤、物流管理、仓储管理、机器人、智能营销、计算摄影、手机影像、云服务、智能家居、穿戴设备、无人驾驶、自动驾驶、智能医疗、人脸支付、人脸解锁、指纹解锁、人证核验、智慧屏、智能电视、摄像机、移动互联网、网络直播、美颜、美妆、医疗美容、智能测温等领域。
23.此外,生物识别技术已广泛地应用到各种终端设备或电子装置上。生物特征识别技术包括但不限于指纹识别、掌纹识别、静脉识别、虹膜识别、人脸识别、活体识别、防伪识别等技术。其中,指纹识别通常包括光学指纹识别、电容式指纹识别和超声波指纹识别。随着全面屏技术的兴起,可以将指纹识别模组设置在显示屏下方的局部区域或者全部区域,从而形成屏下(under-display)光学指纹识别;或者,也可以将光学指纹识别模组的部分或者全部集成至电子设备的显示屏内部,从而形成屏内(in-display)光学指纹识别。上述显示屏可以是有机发光二极管(organic light emitting diode,oled)显示屏或液晶显示屏(liquid crystal display,lcd)等。指纹识别方法通常包括指纹图像的获取、预处理、特征提取、特征匹配等步骤。上述步骤中的部分或者全部可以通过传统计算机视觉(computer vision,cv)算法实现,也可以通过基于人工智能(artificial intelligence,ai)的深度学习算法实现。指纹识别技术可以应用在智能手机、平板电脑、游戏设备等便携式或移动终端,以及智能门锁、汽车、银行自动柜员机等其他电子设备,以用于指纹解锁、指纹支付、指纹考勤、身份认证等。
24.其中,在攻击检测场景中,通常可预先训练一攻击检测模型,通过该攻击检测模型来进行攻击检测。然而,现有的攻击检测模型仅能够堆屏幕翻拍、面膜面具等攻击数据进行有效防范,无法对边缘差异型的脸部图像进行有效识别,导致攻击检测的精度较低;同时,攻击检测模型的计算量较大,导致攻击检测的速度较低。本技术提供了一种攻击检测方法,能够有效防御边缘差异型的脸部攻击,提高了攻击检测的速度和精度。
25.请参考图1,其示出了根据本技术的攻击检测方法的一个实施例的流程100。该攻击检测方法可应用于各种电子设备。例如,可包括但不限于智能手机、平板电脑、电子书阅读器、mp3(动态影像专家压缩标准音频层面3,moving picture experts group audio layer iii)播放器、mp4(动态影像专家压缩标准音频层面4,moving picture experts group audio layer iv)播放器、膝上型便携计算机、车载电脑、掌上电脑、台式计算机、机顶盒、智能电视机、可穿戴设备、面板机等。该攻击检测方法,包括以下步骤:
26.步骤101,将待测脸部图像输入攻击检测模型。
27.步骤102,通过攻击检测模型将待测脸部图像划分为多个图像块,提取各图像块的块特征,以及对各行及各列图像块的块特征进行处理,得到待测脸部图像的行特征和列特征,对行特征和列特征进行处理,得到攻击检测结果。
28.在本实施例中,电子设备中可预先存储用于进行攻击检测的攻击检测模型。该模型可以基于机器学习方法(例如,有监督学习方法)训练得到。该模型可用于将待测脸部图像划分为多个图像块,提取各图像块的块特征,并可用于对各行及各列图像块的块特征进行处理,得到待测脸部图像的行特征和列特征,以及,还可用于对行特征和列特征进行处理,得到攻击检测结果。其中,攻击检测结果用于指示待测脸部图像是否为与真实脸部图像的图像边缘存在差异的攻击脸部图像。
29.在一些可选的实现方式中,参见图2所示的攻击检测模型的结构示意图。该攻击检测模型中可包括但不限于特征提取网络、序列处理网络和分类网络。
30.上述特征提取网络可用于进行图像分割并提取分割得到的各图像块的块特征。块特征可以表示为特征图。实践中,特征提取网络可以采用卷积神经网络(convolutional neural networks,cnn),其内可包括至少一层卷积层。此处,对特征提取网络的具体网络结
构不作限定。
31.上述序列处理网络可用于对各行图像块的块特征进行处理以得到待测脸部图像的行特征,以及,对各列图像块的块特征进行处理以得到待测脸部图像的列特征。上述行特征和列特征均可以采用特征向量的形式表示。实践中,序列处理网络可以采用用于处理序列数据的神经网络,例如,可包括但不限于循环神经网络(recurrent neural network,rnn)、门循环单元(gate recurrent unit,gru)网络等。序列处理网络可用于对序列形式的特征进行处理,并输出另一序列形式的特征。
32.上述分类网络可用于对行特征和列特征进行处理,以输出攻击检测结果。攻击检测结果可用于指示输入至攻击检测模型中的图像是否为边缘差异类型的攻击图像。实践中,分类网络可以是用于实现二分类功能的网络结构,例如,可包括至少一层线性层(例如,全连接层)。
33.攻击检测方法的执行主体(例如上述电子设备中的处理装置)可首先将待测脸部图像划分为多个图像块。例如,原图为64
×
64尺寸,则可将其划分为16个16
×
16尺寸图像块。需要说明的是,图像块的尺寸可以根据需要进行设定,此处不作限定。
34.在将待测脸部图像划分为多个图像块后,可以基于预先训练的攻击检测模型中的特征提取网络,提取各图像块的块特征。之后,可基于攻击检测模型中的序列处理网络,对各行及各列图像块的块特征进行处理,得到待测脸部图像的行特征和列特征。最后,可基于攻击检测模型中的分类网络,对行特征和列特征进行处理,得到攻击检测结果。可选的,分类网络可以包括特征拼接层和全连接层。可将上述行特征和上述列特征输入至分类网络,通过其中的特征拼接成对上述行特征和列特征进行拼接(concat),得到目标特征。而后,将上述目标特征输入至上述全连接层,得到攻击检测结果。
35.本技术的上述实施例提供的方法,通过攻击检测模型将待测脸部图像划分为多个图像块,并提取各图像块的块特征,而后分别对各行及各列图像块的块特征进行处理,得到待测脸部图像的行特征和列特征,最后对行特征和列特征进行处理,从而得到攻击检测结果。一方面,鉴于边缘差异型的攻击脸部图像在脸部区域无明显编辑的特点,本技术实施例通过对待测脸部图像分块提取块特征并按照行和列对块特征组合,使得攻击检测模型能够关注到待测脸部图像中每个图像块和其他图像块之间的关系,相较于只关注图像的全局特征或脸部区域特征的攻击检测模型,更符合边缘差异类型的攻击脸部图像的特点,从而能够有效防御边缘差异型的脸部攻击,提高了攻击检测的精度。另一方面,对待测脸部图像进行分块的处理,可使得每一次计算的图像数据量减少,从而大大降低了计算量,有效提高了模型在部署使用时的运行速度。
36.在一些可选的实施例中,如图2所示,序列处理网络可以包括第一分支和第二分支。第一分支和第二分支可采用相同的网络结构,例如,均采用rnn或gru网络结构。上述网络结构能够对序列形式的特征(例如,每行中的各图像块的块特征构成的特征序列、每列中的各图像块的块特征构成的特征序列)进行处理,并学习特征序列中的特征(例如,同一行中的不同图像块的块特征、同一列中的不同图像块的块特征)之间的关系。由于第一分支与第二分支相互独立,因此,二者可具有不同的网络参数。在此结构的基础上,在执行上述步骤102时,可基于第一分支对各行图像块的块特征进行处理,得到待测脸部图像的行特征;并基于第二分支对各列图像块的块特征进行处理,得到待测脸部图像的列特征。
37.在一些可选的实现方式中,基于第一分支,可按照如下子步骤s11至子步骤s14生成待测脸部图像的行特征:
38.子步骤s11,将各行图像块的块特征进行拼接,得到各行图像块对应的行拼接特征。此处,每个图像块的块特征可以表示为特征图,对于每一行图像块,可通过对该行图像块进行拼接(concat),得到该行图像块对应的行拼接特征。例如,若原始图像尺寸为64
×
64,每个图像块的尺寸为16
×
16,则可得到4行图像块和4列图像块。可将第一行图像块的块特征进行拼接,得到第一行图像块对应的行拼接特征;将第二行图像块的块特征进行拼接,得到第二行图像块对应的行拼接特征;依次类推。若将每个特征图的尺寸表示为c
×w×
h,则进行块特征拼接后,对每个行拼接特征的尺寸可以表示为4c
×w×
h。
39.子步骤s12,将各行拼接特征进行池化处理,得到各行图像块对应的初始组合特征。此处,上述执行主体可对将各行拼接特征进行池化处理(pooling),得到各行图像块对应的初始组合特征。其中,池化处理是一种降采样处理方式,可基于非线性池化函数实现。实践中,可采用平均池化、最大池化等池化处理方法。每个初始组合特征可以为一个特征向量。继续上述示例,每个初始组合特征可以为4c维特征向量。实践中,在特征提取网络和序列处理网络之间可包含分别与各行图像块对应的池化层。可通过上述池化层对各行拼接特征进行池化处理。
40.子步骤s13,将各行图像块对应的初始组合特征输入至第一分支,基于第一分支对各行图像块对应的初始组合特征进行序列处理,得到各行图像块对应的目标组合特征。此处,目标组合特征也可以为特征向量,其长度可以为n。继续上述示例,由于共有4行图像块,因此,第一分支的输入为4个4c维特征向量,第一分支输出为4个n维特征向量。
41.子步骤s14,对各行图像块对应的目标组合特征进行池化处理,得到上述待测脸部图像的行特征。此处,在第一分支与分类网络之间可设置有池化层。可通过该池化层对各行图像块对应的目标组合特征进行池化处理(pooling)。继续上述示例,对第一分支输出的4个n维特征向量进行池化处理后,可得到一个n维特征向量,即待测脸部图像的行特征。
42.同理,在一些可选的实现方式中,基于第二分支,可按照如下子步骤s21至子步骤s24生成待测脸部图像的列特征:
43.子步骤s21,将各列图像块的块特征进列拼接,得到各列图像块对应的列拼接特征。此处,对于每一列图像块,可通过对该列图像块进列拼接(concat),得到该列图像块对应的列拼接特征。例如,若原始图像尺寸为64
×
64,每个图像块的尺寸为16
×
16,则可得到4列图像块和4列图像块。可将第一列图像块的块特征进列拼接,得到第一列图像块对应的列拼接特征;将第二列图像块的块特征进列拼接,得到第二列图像块对应的列拼接特征;依次类推。若将每个特征图的尺寸表示为c
×w×
h,则进列块特征拼接后,对每个列拼接特征的尺寸可以表示为4c
×w×
h。
44.子步骤s22,将各列拼接特征进列池化处理,得到各列图像块对应的初始组合特征。此处,上述执列主体可对各列拼接特征进行池化处理(pooling),得到各列图像块对应的初始组合特征。每个初始组合特征可以为一个特征向量。继续上述示例,每个初始组合特征可以为4c维特征向量。实践中,在特征提取网络和序列处理网络之间可包含分别与各列图像块对应的池化层。可通过上述池化对将各列拼接特征进池化处理。
45.子步骤s23,将各列图像块对应的初始组合特征输入至第二分支,得到各列图像块
对应的目标组合特征。此处,目标组合特征也可以为特征向量,其长度可以为n。继续上述示例,由于共有4列图像块,因此,第二分支的输入为4个4c维特征向量,第二分支输出为4个n维特征向量。
46.子步骤s24,对各列图像块对应的目标组合特征进列池化处理,得到上述待测脸部图像的列特征。此处,在第二分支与分类网络之间可设置有池化层。可通过该池化层对各列图像块对应的目标组合特征进列池化处理。继续上述示例,对第二分支输出的4个n维特征向量进列池化处理后,可得到一个n维特征向量,即待测脸部图像的列特征。
47.通过对待测脸部图像分块提取块特征并按照行和列对块特征组合并进行序列处理,使得攻击检测模型能够关注到待测脸部图像中每个图像块和其他图像块之间的关系,相较于只关注图像的全局特征或脸部区域特征的攻击检测模型,更符合边缘差异类型的攻击脸部图像的特点,从而能够有效防御边缘差异型的脸部攻击,提高了攻击检测的精度。同时,对待测脸部图像进行分块的处理,可使得每一次计算(例如,卷积计算)的图像数据量减少,从而大大降低了计算量,有效提高了模型在部署使用时的运行速度。
48.在一些可选的实施例中,由于攻击脸部样本图像数量有限,故可通过对真实脸部样本图像进行边缘填充处理的方式,生成攻击脸部样本图像,以防御边缘差异类型的脸部攻击。具体地,样本集生成过程以及攻击检测模型的训练过程可参见如下子步骤s31至子步骤s32:
49.子步骤s31,获取样本集。此处,样本集中可以包括真实脸部样本图像和真实脸部样本图像对应的攻击脸部样本图像。攻击脸部样本图像是通过对真实脸部样本图像进行处理后得到的图像边缘存在差异的图像。此外,真实脸部样本图像可添加有第一标签,攻击脸部样本图像可添加有第二标签。第一标签和第二标签可用于表示样本图像的类型,并可作为有监督训练时的监督信号。
50.子步骤s32,基于样本集,训练得到上述攻击检测模型。此处,可以采用样本集中的样本图像,对基础模型进行有监督训练,将训练后的基础模型作为攻击检测模型。上述基础模型即为包含上述特征提取网络、序列处理网络和分类网络的待训练模型。
51.在一些场景中,由于攻击者的脸部图像在输入至人脸识别系统时,必须满足一定比例的宽高比,故直接拉伸图像将会导致人脸变形,直接裁剪脸部图像则有可能造成分辨率降低或脸部区域不完整。由此,攻击者通常通过在图像周围补一些纯色区域,使脸部图像满足宽高比要求,且人脸部分的画质不受到影响。鉴于此,在本实施例的一些可选的实现方式中,可将上述类型的攻击称为比例补边型的攻击,通过如下合成方式,对真实脸部样本图像进行边缘填充处理,合成攻击脸部样本图像,以模拟比例补边型的攻击数据。
52.具体地,参见图3所示,可以首先确定真实脸部样本图像的实测宽高比,并从预设的宽高比集中随机选取目标宽高比。而后,比较实测宽高比与目标宽高比是否相同。若实测宽高比不等于目标宽高比,则可以基于目标宽高比,生成目标背景色的背景图像,并使背景图像的短边长度等于真实脸部样本图像的短边长度,进而将真实脸部样本图像粘贴于背景图像的中心,得到攻击脸部样本图像。若实测宽高比等于目标宽高比,则可以重新从预设的宽高比集中随机选取目标宽高比。
53.需要说明的是,为保证合成的攻击脸部样本图像(即攻击数据)具有足够的随机性且更符合真实的攻击特点,宽高比集中可包括人脸数据采集硬件端常用的图像宽高比,且
不限制横竖。目标背景色可以从颜色集中随机选取,也可以按照一定比例选取。例如,可根据实际攻击特点固定一定比例的黑色背景,其他颜色随机选择。
54.通过比例补边的方式合成攻击脸部样本图像(即攻击数据),能够使得攻击脸部样本图像(即攻击数据)与真实的攻击数据足够接近,使得训练出的攻击检测模型防御能力出色。同时,由于目标背景色以及目标宽高比的选取具备一定随机性和多样性,因此训练出的攻击检测模型泛化性较强,即使真实攻击方式发生细微变化,攻击检测模型的防御效果也不会产生剧烈波动。
55.在一些场景中,攻击者为了使脸部图像保持较高的分辨率,脸部区域在脸部图像中的占比往往较大。如果直接将这样的脸部图像输入人脸识别系统,脸部区域会由于拉伸或不完整而无法正确检测。因此,攻击者会通过不断复制脸部图像将其缩小再依次叠放,使得脸部区域在最终图像中的位置大致位于图像中央且面积占比合适。鉴于此,在本实施例的一些可选的实现方式中,可将上述类型的攻击称为原图复制型的攻击,通过如下合成方式,对真实脸部样本图像进行边缘填充处理,合成攻击脸部样本图像,以模拟原图复制型的攻击数据。
56.具体地,参见图4所示,可以首先基于真实脸部样本图像,生成背景图像。而后,执行如下处理步骤:首先,对背景图像分别进行图像降质处理和图像缩小处理,得到降质图像和缩小图像。而后,将缩小图像粘贴于降质图像中,得到目标图像。之后,确定目标图像是否符合条件。例如,确定目标图像中的脸部区域的第一面积占比是否小于或等于第一阈值(例如,大于或等于1/3且小于或等于1/2的任一数值),且目标图像中的脸部区域是否位于目标区域(例如,中部某一设定区域)内。若目标图像中的脸部区域的第一面积占比小于或等于第一阈值,且目标图像中的脸部区域位于目标区域内,则可以将目标图像作为攻击脸部样本图像。需要说明的是,若第一面积占比大于第一阈值,或者,目标图像中的脸部区域位于目标区域外,则可以将目标图像作为背景图像,继续执行处理步骤,直至满足目标条件。
57.其中,在基于真实脸部样本图像生成初始的背景图像时,可以首先确定真实脸部样本图像中的脸部区域的第二面积占比。若第二面积占比小于第二阈值,则可以截取真实脸部样本图像中的脸部扩展区域的子图像,脸部扩展区域包括脸部区域,将子图像作为背景图像。若第二面积占比大于或等于第二阈值,则将真实脸部样本图像作为背景图像。由此,可保证背景图像中的脸部区域面积足够大。
58.其中,在截取子图像时,可首先检测真实脸部样本图像中的脸部区域。而后,对所检测出的脸部区域的边界进行扩展,得到脸部扩展区域。最后,截取真实脸部样本图像中的脸部扩展区域的子图像。
59.需要说明的是,为保证合成的攻击脸部样本图像(即攻击数据)具有足够的随机性且更符合真实的攻击特点,在对真实脸部样本图像中的脸部区域的边界进行扩展时,可采用随机的方式进行扩展。即,随机扩充一定的比例。此外,在进行图像降质处理时,可随机组合使用不同的降质方式(例如,模糊处理,增加噪声,降低透明度,降低亮度,降低对比度等),且降质处理过程中所使用的参数可以是随机化参数(例如,随机的模糊半径、随机的噪声、随机的透明度、随机的亮度、随机的对比度等)。在进行图像缩小处理时,可采用随机的缩小比例进行缩小处理。在将缩小图像粘贴于降质图像中时,可随机选取粘贴区域。
60.通过图像复制叠放的方式合成攻击脸部样本图像(即攻击数据),能够使得攻击脸
部样本图像(即攻击数据)类型更丰富,提高了攻击检测模型在防御真实攻击时的能力更出色,增强了抗干扰性。
61.在一些场景中,在攻击者所拥有的脸部图像中,有一部分脸部图像中的脸部区域并不在脸部图像中心,或者存在一定角度的倾斜,这并不符合真人在使用人脸识别系统时的习惯。因此,攻击者往往会使用仿射变换的方法,将脸部旋转摆正并放置在图像中央,以此来模仿真人的拍摄习惯,而此时脸部图像的四周就自然会由于仿射变换形成不规则的边缘。鉴于此,在本实施例的一些可选的实现方式中,可将上述类型的攻击称为仿射变换型的攻击,通过如下合成方式,对真实脸部样本图像进行边缘填充处理,合成攻击脸部样本图像,以模拟仿射变换型的攻击数据。
62.具体地,参见图5所示,可以首先对真实脸部样本图像进行脸部关键点检测,得到实测脸部关键点坐标。脸部关键点检测过程中所检测的脸部关键点的数量可以根据需要进行设定。例如,可设定为5个、68个、或81个等,此处不作限定。而后,基于实测脸部关键点坐标和标准脸部关键点坐标,生成仿射变换矩阵。仿射变换,又称仿射映射,在几何上定义为两个向量空间之间的一个仿射变换或者仿射映射。仿射变换由一个非奇异的线性变换接上一个平移变换组成。可将实测脸部关键点坐标和标准脸部关键点坐标分别表示为矩阵形式,通过常用的仿射变换求解算法,求解矩阵关系,得到仿射变换矩阵。之后,基于仿射变换矩阵,对真实脸部样本图像中的各像素点进行仿射变换,得到仿射变换图像。最后,对仿射变换图像的不规则区域进行图像填充处理,生成攻击脸部样本图像。
63.需要说明的是,为保证合成的攻击脸部样本图像(即攻击数据)具有随机性和多样性,在执行脸部关键点检测的步骤时,可首先对真实脸部样本图像进行随机裁剪,以更新真实脸部样本图像,并保证更新后的真实脸部样本图像中包括完整的脸部区域;而后,对更新后的真实脸部样本图像进行脸部关键点检测。由此,可改变原图的宽高比和脸部在图中的相对位置,提高攻击脸部样本图像(即攻击数据)的随机性和多样性。此外,在对仿射变换图像的不规则区域进行图像填充处理时,可以填充不同的内容。例如,可包括但不限于纯色填充、图像拉丝填充、图像镜像填充、用其他图像填充等。
64.本实现方式合成的攻击数据能够在覆盖实际攻击方式的基础上,用更丰富的合成手段,生成更多样的攻击数据,使模型具备更强的鲁棒性。
65.作为示例,参数图6所示的攻击检测方法的处理过程的示意图。如图6所示,边缘差异型的脸部攻击可包括比例补边型的攻击、原图复制型的攻击和仿射变换型的攻击。针对不同类型的脸部攻击,可分别通过不同的合成方法合成样本图像,以模拟不同类型的攻击对应的攻击数据。而后,可基于采用各合成方法合成得到的样本图像,训练攻击检测模型。最后,可基于训练得到的攻击检测模型对待测脸部图像进行攻击检测,以输出攻击检测结果,攻击检测结果可确定待测脸部图像是否为边缘差异类型的攻击图像。
66.通过上述样本集训练得到的攻击检测模型,能够对边缘差异类型的脸部攻击能够起到有效的防御效果,并且可以和已有活体模型在部署时并行继承。此外,由于训练数据具有随机性和多样性,因此攻击检测模型的防御能力能够在长时间段内保持在较高水平,不会由于攻击方式的细微变化而迅速下滑,从而实现了不依赖海量真实攻击数据,对边缘差异类型的脸部攻击的主动防御任务。
67.在一些可选实施方式中,还可以将本技术实施例中的攻击检测模型与其他类型的
攻击检测模型(如光线活体检测模型、动作活体检测模型、屏幕翻拍活体检测模型等)共同部署在同一设备上,通过多个攻击检测模型并行对采集的目标对象的待检测视频进行检测,若是任一攻击检测模型检测到待检测视频或者目标对象为非活体,则输出目标对象为非活体的检测结果,通过部署多个不同类型的攻击检测模型,可以提高攻击检测的准确性。
68.进一步参考图7,作为对上述各图所示方法的实现,本技术提供了一种攻击检测装置的一个实施例,该装置实施例与图1所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
69.如图7所示,本实施例的攻击检测装置700包括:输入单元701,用于将待测脸部图像输入攻击检测模型;检测单元702,用于通过所述攻击检测模型将待测脸部图像划分为多个图像块,提取各图像块的块特征,以及对各行及各列图像块的块特征进行处理,得到所述待测脸部图像的行特征和列特征,对所述行特征和所述列特征进行处理,得到攻击检测结果;所述攻击检测结果用于指示所述待测脸部图像是否为与真实脸部图像的图像边缘存在差异的攻击脸部图像。
70.在一些可选的实现方式中,所述攻击检测模型包括序列处理网络,上述序列处理网络包括第一分支和第二分支;上述检测单元702,进一步用于基于上述第一分支对各行图像块的块特征进行序列处理,得到上述待测脸部图像的行特征,基于上述第二分支对各列图像块的块特征进行处理,得到上述待测脸部图像的列特征。
71.在一些可选的实现方式中,上述检测单元702,进一步用于将各行图像块的块特征进行拼接,得到各行图像块对应的行拼接特征;将各行拼接特征进行池化处理,得到各行图像块对应的初始组合特征;将各行图像块对应的初始组合特征输入至上述第一分支,基于上述第一分支对各行图像块对应的初始组合特征进行序列处理,得到各行图像块对应的目标组合特征;对各行图像块对应的目标组合特征进行池化处理,得到上述待测脸部图像的行特征。
72.在一些可选的实现方式中,上述检测单元702,进一步用于将各列图像块的块特征进行拼接,得到各列图像块对应的列拼接特征;将各列拼接特征进行池化处理,得到各列图像块对应的初始组合特征;将各列图像块对应的初始组合特征输入至上述第二分支,基于上述第二分支对各列图像块对应的初始组合特征进行序列处理,得到各列图像块对应的目标组合特征;对各列图像块对应的目标组合特征进行池化处理,得到上述待测脸部图像的列特征。
73.在一些可选的实现方式中,所述攻击检测模型还包括分类网络,上述分类网络包括特征拼接层和全连接层;上述检测单元702,进一步用于将上述行特征和列特征输入至上述特征拼接层,得到目标特征;将上述目标特征输入至上述全连接层,得到攻击检测结果。
74.在一些可选的实现方式中,上述攻击检测模型通过如下步骤训练得到:获取样本集,上述样本集中包括真实脸部样本图像和上述真实脸部样本图像对应的攻击脸部样本图像,上述攻击脸部样本图像是通过对上述真实脸部样本图像进行处理后得到的图像边缘存在差异的图像;基于上述样本集,训练得到上述攻击检测模型。
75.在一些可选的实现方式中,上述攻击脸部样本图像通过如下步骤生成:确定上述真实脸部样本图像的实测宽高比,并从宽高比集中随机选取目标宽高比;若上述实测宽高比不等于上述目标宽高比,则基于上述目标宽高比,生成目标背景色的背景图像,将上述真
实脸部样本图像粘贴于上述背景图像的中心,得到攻击脸部样本图像,上述背景图像的短边长度等于上述真实脸部样本图像的短边长度。
76.在一些可选的实现方式中,上述攻击脸部样本图像通过如下步骤生成:基于上述真实脸部样本图像,生成背景图像;执行如下处理步骤:对上述背景图像分别进行图像降质处理和图像缩小处理,得到降质图像和缩小图像;将上述缩小图像粘贴于上述降质图像中,得到目标图像;若上述目标图像中的脸部区域的第一面积占比小于或等于第一阈值,且上述目标图像中的脸部区域位于目标区域内,则将上述目标图像作为攻击脸部样本图像;若上述第一面积占比大于上述第一阈值,或者,上述目标图像中的脸部区域位于上述目标区域外,则将上述目标图像作为背景图像,继续执行上述处理步骤。
77.在一些可选的实现方式中,上述基于上述真实脸部样本图像,生成背景图像,包括:确定上述真实脸部样本图像中的脸部区域的第二面积占比;若上述第二面积占比小于第二阈值,则截取上述真实脸部样本图像中的脸部扩展区域的子图像,上述脸部扩展区域包括上述脸部区域,将上述子图像作为背景图像;若上述第二面积占比大于或等于上述第二阈值,则将上述真实脸部样本图像作为背景图像。
78.在一些可选的实现方式中,上述截取上述真实脸部样本图像中的脸部扩展区域的子图像,包括:检测上述真实脸部样本图像中的脸部区域;对所检测出的脸部区域的边界进行扩展,得到脸部扩展区域;截取上述真实脸部样本图像中的上述脸部扩展区域的子图像。
79.在一些可选的实现方式中,上述攻击脸部样本图像通过如下步骤生成:对上述真实脸部样本图像进行脸部关键点检测,得到实测脸部关键点坐标;基于上述实测脸部关键点坐标和标准脸部关键点坐标,生成仿射变换矩阵;基于上述仿射变换矩阵,对上述真实脸部样本图像中的各像素点进行仿射变换,得到仿射变换图像;对上述仿射变换图像的不规则区域进行图像填充处理,生成攻击脸部样本图像。
80.在一些可选的实现方式中,上述对上述真实脸部样本图像进行脸部关键点检测,包括:对上述真实脸部样本图像进行随机裁剪,以更新上述真实脸部样本图像,更新后的上述真实脸部样本图像中包括完整的脸部区域;对更新后的上述真实脸部样本图像进行脸部关键点检测。
81.本技术的上述实施例提供的装置,通过攻击检测模型将待测脸部图像划分为多个图像块,并提取各图像块的块特征,而后分别对各行及各列图像块的块特征进行处理,得到待测脸部图像的行特征和列特征,最后对行特征和列特征进行处理,从而得到攻击检测结果。一方面,鉴于边缘差异型的攻击脸部图像在脸部区域无明显编辑的特点,本技术实施例通过对待测脸部图像分块提取块特征并按照行和列对块特征组合,使得攻击检测模型能够关注到待测脸部图像中每个图像块和其他图像块之间的关系,相较于只关注图像的全局特征或脸部区域特征的攻击检测模型,更符合边缘差异类型的攻击脸部图像的特点,从而能够有效防御边缘差异型的脸部攻击,提高了攻击检测的精度。另一方面,对待测脸部图像进行分块的处理,可使得每一次计算的图像数据量减少,从而大大降低了计算量,有效提高了模型在部署使用时的运行速度。
82.本技术实施例还提供了一种电子设备,包括一个或多个处理器,存储装置,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现上述攻击检测方法。
83.下面参考图8,其示出了用于实现本技术的一些实施例的电子设备的结构示意图。图8示出的电子设备仅仅是一个示例,不应对本技术的实施例的功能和使用范围带来任何限制。
84.如图8所示,电子设备800可以包括处理装置(例如中央处理器、图形处理器等)801,其可以根据存储在只读存储器(rom)802中的程序或者从存储装置808加载到随机访问存储器(ram)803中的程序而执行各种适当的动作和处理。在ram 803中,还存储有电子设备800操作所需的各种程序和数据。处理装置801、rom 802以及ram803通过总线804彼此相连。输入/输出(i/o)接口805也连接至总线804。
85.通常,以下装置可以连接至i/o接口805:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置806;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置807;包括例如磁盘、硬盘等的存储装置808;以及通信装置809。通信装置809可以允许电子设备800与其他设备进行无线或有线通信以交换数据。虽然图8示出了具有各种装置的电子设备800,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图8中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
86.本技术实施例还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述攻击检测方法。
87.特别地,根据本技术的一些实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本技术的一些实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的一些实施例中,该计算机程序可以通过通信装置809从网络上被下载和安装,或者从存储装置808被安装,或者从rom 802被安装。在该计算机程序被处理装置801执行时,执行本技术的一些实施例的方法中限定的上述功能。
88.本技术实施例还提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现上述攻击检测方法。
89.需要说明的是,本技术的一些实施例上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术的一些实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术的一些实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:
电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
90.在一些实施方式中,客户端、服务器可以利用诸如http(hyper text transfer protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“lan”),广域网(“wan”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
91.上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:将待测脸部图像输入攻击检测模型;通过攻击检测模型将待测脸部图像划分为多个图像块,提取各图像块的块特征,以及对各行及各列图像块的块特征进行处理,得到待测脸部图像的行特征和列特征,对行特征和列特征进行处理,得到攻击检测结果;攻击检测结果用于指示待测脸部图像是否为与真实脸部图像的图像边缘存在差异的攻击脸部图像。
92.可以以一种或多种程序设计语言或其组合来编写用于执行本技术的一些实施例的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、smalltalk、c++;还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接),上述网络包括局域网(lan)或广域网(wan)。
93.附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
94.描述于本技术的一些实施例中的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括第一确定单元、第二确定单元、选取单元和第三确定单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
95.本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑设备(cpld)等等。
96.以上描述仅为本技术的一些较佳实施例以及对所运用技术原理的说明。本领域技
术人员应当理解,本技术的实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本技术的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1