一种面向对抗样本攻击的人脸活体检测方法及装置与流程

文档序号:22547312发布日期:2020-10-17 02:18阅读:98来源:国知局
一种面向对抗样本攻击的人脸活体检测方法及装置与流程
本发明涉及生物特征识别领域,具体涉及一种面向对抗样本攻击的人脸活体检测方法及装置。
背景技术
:随着生物特征识别技术的发展,人脸识别因其高安全性、直观性和对用户友好等优点而广泛应用于门禁系统、安检系统和刑侦系统等。然而,人脸信息因网络的广泛应用而变得易于获取和伪造,从而对基于人脸生物特征进行身份认证的系统造成严重威胁。例如,非法用户通过合法用户的照片、视频或三维模具可入侵系统并获得访问权限。为了更可靠的身份认证,目前大多采用人脸活体检测技术,判断系统获取的生物信息来源于合法用户的活体还是假体。在实际应用中,常见的身份认证系统欺骗方法有:照片欺骗,视频欺骗和三维模具欺骗。常用的人脸活体检测包括:基于人脸运动信息的检测方法,这种方法需要用户较多配合,且对光照的影响敏感,可靠性较低;基于红外感应成像的活体检测,虽准确性高但往往需要额外硬件设备;而基于纹理信息的检测方法则对噪声较为敏感。此外,前述算法大依赖于手工提取特征,难以准确描述复杂环境下的人脸特征。为了解决这个问题,近年来出现了不少基于深度神经网络的人脸活体检测方法。然而,深度神经网络被证明容易受到对抗样本攻击,非法用户通过不易察觉的细微扰动,可使系统误将假体对象判别为活体对象,从而对系统安全性构成了极大威胁。技术实现要素:本发明实施例的目的是提供一种面向对抗样本攻击的人脸活体检测方法及装置,以解决现有对抗样本攻击对人脸活体检测分类器造成干扰的问题。为了达到上述目的,本发明实施例所采用的技术方案如下:第一方面,本发明实施例提供一种面向对抗样本攻击的人脸活体检测方法,包括:获取待检测的人脸对象的图像,形成训练集;利用训练集训练人脸活体检测分类器;生成人脸图像的对抗样本;将所述训练集和所述对抗样本构成对抗训练集,通过对抗训练集对抗训练人脸活体检测分类器;通过对抗训练后的人脸活体检测分类器判断人脸对象是否为活体对象。进一步地,所述待检测的人脸对象的图像包括:活体对象的人脸图像,以及假体对象的二次成像。进一步地,获取待检测的人脸对象的图像,包括:随机抽取视频序列中的单帧图像;检测所述单帧图像中是否包含人脸,如是,对图像进行预处理,如否,不处理。进一步地,所述预处理,包括:人脸关键点检测、图像增强以及图像归一化。进一步地,利用获取的图像训练人脸活体检测分类器,包括:利用所述归一化后的人脸图像构成训练集,通过所述训练集训练人脸活体检测分类器。进一步地,所述人脸活体检测分类器是一个基于深度神经网络的二分类器,最后输出两个分类:活体对象和假体对象。进一步地,生成人脸图像的对抗样本,表示为以下优化问题:s.t.f(x0+δ)=yreal其中,δ表示对抗扰动的向量表示,p是范数取值,x0+δ表示在人脸图像x0上叠加对抗扰动δ后合成的人脸图像的对抗样本,人脸图像x0为是活体对象的图像或是假体对象的二次成像,f表示深度神经网络拟合的分类函数,yreal表示分类结果为活体对象。进一步地,对抗训练表示为最小化如下损失函数其中,θ是基于深度神经网络的分类函数f的参数,x表示活体对象人脸图像,y表示实际类别标签,x′表示假体对象人脸图像,x*表示所述对抗性人脸图像,yreal表示分类结果为活体对象,yfake表示分类结果为假体对象,j(·)表示交叉熵,α,β和γ分别是各个损失项的权重系数。进一步地,通过对抗训练后的人脸活体检测分类器判断人脸对象是否为活体对象,包括:当对抗训练后的人脸活体检测分类器的输出大于预设的阈值时,判断人脸对象为活体对象;否则,判断人脸对象为假体对象。第二方面,本发明实施例提供一种面向对抗样本攻击的人脸活体检测装置,包括:获取单元,用于获取待检测的人脸对象的图像,形成训练集;第一训练单元,用于利用训练集训练人脸活体检测分类器;生成单元,用于生成人脸图像的对抗样本;第二训练单元,用于将所述训练集和所述对抗样本构成对抗训练集,通过对抗训练集对抗训练人脸活体检测分类器;判断单元,用于通过对抗训练后的人脸活体检测分类器判断人脸对象是否为活体对象。根据以上技术方案,将对抗样本攻击的防御训练和基于神经网络的人脸活体检测分类器有机结合起来以检测人脸对象是活体或是假体,可有效克服肉眼不易察觉的对抗扰动对人脸活体检测分类器造成的干扰,进而提高检测的鲁棒性;通过生成对抗样本并将对抗样本加入训练集中实现了数据扩增,可有效提高基于深度神经网络的分类器的泛化性并缓解过拟合现象,进一步提高基于深度神经网络的人脸活体检测分类器对人脸对象的分类精度、缩小在对抗环境下和非对抗环境下分类器对人脸对象分类精度的差距,从而提高深度神经网络在实际应用中的可靠性和准确性。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动前提下,还可以根据这些附图获得其他附图。图1为本发明实施例1提供的一种面向对抗样本攻击的人脸活体检测方法流程图;图2为本发明实施例1中活体对象和假体对象的人脸图像示例;图3为本发明实施例1中人脸视频序列处理流程;图4为本发明实施例1中人脸活体检测任务的对抗样本生成示意图,其中(a)为活体对象的人脸图像,(b)为假体对象的人脸图像,(c)为对抗扰动,(d)为对抗样本;图5为本发明实施例1中不同算法生成的对抗扰动比较,其中(a)为原始图像,(b)、(c)、(d)分别为通过pgd,fgsm和rda生成的对抗扰动;图6为本发明第二实施例提供的对抗样本攻击的人脸活体检测装置的框图;图7为本发明实施例提供的电子设备的结构示意图。具体实施方式为了更清晰地说明本发明的技术方案,下面将结合本发明实施例中的附图对本发明实施例中的技术方案进行进一步描述。显然,本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围不应当被视为仅限于实施例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。实施例1:请参照图1,图1为本发明实施例提供的一种面向对抗样本攻击的人脸活体检测方法的流程图,下面将对图1所示的流程图进行详细阐述,所述方法包括如下步骤:步骤s100:获取待检测的人脸对象的图像,形成训练集。其中,待检测的人脸对象,可以包括:用户的活体,以及用户的假体如:包含用户脸部生物特征信息的照片、视频和三维模具等。因此,待检测的人脸对象的图像可以是用户活体经摄像头捕获并进行抽取的单帧图像,也可以是欺骗者通过弯曲、旋转合法用户的照片,或播放合法用户的视频,或呈现合法用户的三维人脸模型,在摄像头中的成像。请参照图2,图2为本发明实施例提供的活体对象和假体对象的人脸图像示例。具体地,所述获取待检测的人脸对象的图像,包括:保存摄像头拍摄的动作集,从保存的动作集中随机抽取多张单帧图像;检测所述单帧图像中是否包含人脸,如是,对图像进行预处理,如否,不处理。作为一种实施方式,检测所述单帧图像中是否包含人脸,可以通过基于机器学习的或基于肤色的人脸检测方法,本实施例采用准确率较高且运行速度较快的归一化像素差异(normalizedpixeldifference)方法,若检测到人脸图像,对该单帧图像进行预处理操作,否则,不处理当前图像并跳转至下一图像进行人脸检测。具体地,所述图像预处理,包括:人脸定位;图像增强;图像归一化。请参照图3,图3为本实施例提供的人脸视频序列处理流程。优选地,在前述人脸检测基础上,采用一种基于局部二值特征(localbinaryfeature,lbf)的人脸定位方法fps-lbf,对人脸的68个关键点进行定位,例如:眼睛,眉毛,嘴角点等各部位轮廓点,从而更精细地切割出脸部图像;考虑到在实际环境中采集的人脸图像往往包含较多噪音,本实施例采用高斯曲率滤波方法对图像进行增强,在降低图像噪音的同时有效保留边缘特征及纹理细节;然后,利用双线性插值对人脸图像进行缩放,使图像尺寸符合模型输入要求,在本实施例中,模型输入要求是227*227。在其他实施例中,图像缩放方法也可以是最近邻插值、双立法插值或像素区域插值。最后,对像素值x进行归一化处理:其中μ是图像像素均值,σ是图像像素标准差,x′是归一化后的像素值。最后将归一化后的人脸图像构成训练集。步骤s200:利用训练集训练人脸活体检测分类器。具体地,所述训练人脸活体检测分类器,包括:利用所述归一化后的人脸图像构成训练集,利用该训练集训练人脸活体检测分类器。作为一种实施方式,所述训练集包括前述人脸图像及图像对应类别信息:活体对象或假体对象,分别表示图像采集自用户活体的动作集,或采集自用户对象的假体的动作集。作为一种实施方式,所述人脸活体检测分类器,是一个基于深度神经网络的二分类器,最后输出两个分类:活体对象,假体对象。具体地,本实施例采用的深度神经网络参数如下:表1基于深度神经网络的活体检测分类器结构类型滤波器尺寸/步长,填充输出尺寸参数个数输入-227×227×3-conv111×11×96/4,055×55×9634944bn-55×55×96-pool13×3×96/227×27×96-conv25×5×256/1,227×27×256614656bn-27×27×256-poo123×3×256/213×13×256-conv33×3×384/1,113x13×384885120bn-13×13×384-conv43×3×256/1,113×13×256884992pool33×3×256/26×6×256-fc-1-4096×137752832fc-2-2×18192softmax-2×1-其中,conv表示卷积层,bn表示批归一化操作,pool表示池化,fc表示全连接层。步骤s300:生成人脸图像的对抗样本。具体地,生成人脸图像的对抗样本,可表示为以下优化问题:s.t.f(x0+δ)=yreal其中,δ表示对抗扰动的向量表示,||δ||p表示δ的范数,x0+δ表示在人脸图像x0上叠加对抗扰动δ后合成的人脸图像的对抗样本,人脸图像x0可以活体对象的图像,也可以是假体对象的二次成像,f(·)表示所述深度神经网络拟合的分类函数,yreal表示分类结果为活体对象。请参考图4,图4为本发明实施例提供的人脸活体检测任务的对抗样本生成示意图。在实际实施过程中,对于上述优化问题,可采用多种不同方法求解,例如:快速梯度符号法(fastgradientsignmethod,fgsm),基于投影梯度下降(projectedgradientdescend,pgd)的方法,以及对比度下降攻击(contrastreductionattack,crd)等。请参考图5,图5是本发明实施例提供的采用上述不同方法生成的人脸图像的对抗扰动示例。优选地,本实施例采用pgd方法生成对抗扰动,以获得扰动更小、攻击性更强的人脸图像对抗样本。步骤s400:将所述训练集和所述对抗样本构成对抗训练集,通过对抗训练集对抗训练人脸活体检测分类器。作为一种实施方式,对抗训练人脸活体检测分类器,包括:利用所述训练集和所述对抗样本构成对抗训练集;基于该对抗训练集对所述人脸活体检测分类器进行对抗训练。具体地,所述对抗训练集包括人脸图像及标记。对于摄像头采集的用户活体的单帧图像,将其标记为活体对象;对于摄像头采集的用户假体对象(如:照片、视频或三维模具等)的动作集中的任意单帧图像,将其标记为假体对象。基于该标记方式,构建对抗训练集。优选地,根据最小化如下损失函数实施所述对抗训练:其中,θ是所述基于深度神经网络的分类函数f的参数,x表示活体对象人脸图像,x′表示假体对象人脸图像,x*表示所述对抗性人脸图像,yreal表示分类结果为活体对象,yfake表示分类结果为假体对象,j(·)表示交叉熵,||·||2表示范数约束。优选地,α=1,β=1,γ=0.002,x,x′和x*数量的比例为1:1:2。优选地,训练设置如下:最大迭代次数为40000;批处理样本数为64;衰减系数为0.0002,动量项为0.9。步骤s500:通过对抗训练后的人脸活体检测分类器判断人脸对象是否为活体对象。作为一种实施方式,应用对抗训练后的人脸活体检测分类器判断人脸对象是否为活体对象,包括:当对抗训练后的人脸活体检测分类器的输出大于预设的阈值(例如:0.5)时,判断所述人脸对象为活体对象;否则,判断所述人脸对象为假体对象。阈值的取值范围可以是0.5~1。应该理解,本发明不受具体采用的人脸检测、人脸关键点检测、图像增强、图像归一化方法、对抗样本生成方法的限制,无论现有的人脸检测、人脸关键点检测、图像增强、图像归一化方法和对抗样本生成方法还是将来开发的人脸检测、人脸关键点检测、图像增强、图像归一化方法和对抗样本生成方法,都可以应用于根据本发明实施例的人脸活体检测方法中,并且也应该包括在本发明的保护范围内。实施例2:请参照图6,图6是本发明第二实施例提供的一种面向对抗样本攻击的人脸活体检测装置300的结构框图。所述人脸活体检测装置存储于如图7所述的电子设备100,下面将对图6所示的结构框图进行阐述,所示装置包括:获取单元410,用于获取待检测的人脸对象的图像,形成训练集;第一训练单元420,用于利用训练集训练人脸活体检测分类器;生成单元430,用于生成人脸图像的对抗样本;第二训练单元440,用于将所述训练集和所述对抗样本构成对抗训练集,通过对抗训练集对抗训练人脸活体检测分类器;判断单元450,用于通过对抗训练后的人脸活体检测分类器判断人脸对象是否为活体对象。本实施例对人脸活体检测装置300的各功能单元实现各自功能的过程,请参见上述图1所示实施例中描述的内容,此处不再赘述。综上所述,本发明各实施例提出的一种面向对抗样本攻击的人脸活体检测方法和装置,通过将对抗样本攻击的防御训练和基于神经网络的人脸活体检测分类器有机结合起来以检测人脸对象是活体或是假体,可有效克服肉眼不易察觉的对抗扰动对人脸活体检测分类器造成的干扰,进而提高检测的鲁棒性;通过生成对抗样本并将对抗样本加入训练集中实现了数据扩增,可有效提高基于深度神经网络的分类器的泛化性并缓解过拟合现象,进一步提高基于深度神经网络的人脸活体检测分类器对人脸对象的分类精度、缩小在对抗环境下和非对抗环境下分类器对人脸对象分类精度的差距,从而提高深度神经网络在实际应用中的可靠性和准确性。图7是本发明实施例提供一种电子设备的结构示意图,所述电子设备100可以是个人计算机,服务器,移动终端,或者网络设备等。上述的推荐方法应用于如图7所示的电子设备100。如图7所示,电子设备100以通用计算设备的形式表现。所述电子设备100可以包括但不限于:人脸活体检测装置300、输入输出单元110、处理器120、存储器130、通信接口140、显示单元150,各个元件之间通过总线160直接或间接地电性连接并完成通信。图7显示的电子设备100仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。所述人脸活体检测装置300可以以软件形式存储在所述存储器130中,也可以固化在客户端设备的操作系统的软件功能模块中。所述存储器130可以是,但不限于,u盘,移动硬盘,cd-rom等。其中,存储器130可用于存储计算机指令,所述计算机指令可以被所述处理器120执行,使得处理器120执行该计算机指令时,本发明实施例的任一步骤可以被实现。例如,所述处理器120可以执行如图1所示的步骤。所述处理器120可以是通用型中央处理器(cpu),单片机(mcu),数字信号处理器(dsp),也可以是特定应用集成电路asic、现场可编程逻辑门阵列(fpga)。所述处理器120用于执行所述存储器130中存储的可执行模块,如:所述推荐装置包括的计算机指令或软件功能模块。所述处理器120可以实现或者执行本发明实施例中的各方法、各步骤及逻辑框图。所述输入输出单元110,可以是,但不限于,鼠标和键盘等。用于提供用户输入数据,实现用户与所述电子设备100的交互。所述通信接口140将所述输入输出单元110以及所述显示单元150耦合至所述存储器130以及所述处理器120。在其他可能的实施方式中,通信接口140还可能实现所述电子设备与其他设备之间的通信连接。所述显示单元150可以是液晶显示器,用于向用户显示数据。在其他可能的实施方式中,所述显示单元150还可能是触控显示器,提供给用户与电子设备100进行交互。所述总线160可以为表示总线结构中的一种或多种,包括存储器总线或存储器控制线、外围总线、图像加速端口、处理器或使用多种总线结构中任意总线结构的局域总线。在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的装置来实现,或者可以用专用硬件与计算机指令的组合来实现。另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1