基于生成对抗网络的人脸匿名隐私保护方法与流程

专利2022-06-29  79


本发明属于图像隐私保护的领域,随着互联网技术的快速发展,人脸识别技术越来越成熟,人脸隐私安全受到严重威胁。所以本发明提出了一种基于生成对抗网络的人脸匿名隐私保护方法。



背景技术:

随着社交网络个性化、多元化服务的普及,越来越多的用户对社交网络平台方式产生了依赖。由于用户规模庞大、信息的海量交互,以及多元化的服务,从而导致了社交网络中存在巨量的以视觉媒体为主的共享数据。这些视觉媒体描绘了特定个体在场景中的行为,其中人脸是一个丰富信息的模式集合。网络的快速传播会导致个人信息的泄漏。所以人脸匿名是隐私保护的重要工具。

人脸匿名主要有两个方面:身份去除和数据有效性保留。这样,匿名的图像隐藏了原始图像的身份隐私,同时保留了非身份相关的信息。早期的人脸匿名工作只是使用掩蔽、模糊化或像素化等等。虽然这些方法很容易应用,但是它们并不一定保证隐私。s.j.oh等人已经对自动识别器分析了使面部变黑或模糊的混淆性能。他们的结论是这些常见的混淆方法不仅看起来不美观,而且也是无效的,特别是由于基于卷积网络的识别器具有适应性。

后期,逐渐有人提出了有效的并且更复杂的方法。newton等人提出了k-same算法进行人脸匿名;yifanwu等人应用了生成对抗网络框架去实现人脸匿名;brkic等人提出了生成人体补丁,以覆盖原始图像中人体顶部。我们提出的技术不仅对图像中人脸区域进行了匿名处理,同时还保留了整幅图片中的场景内容。这样极大的改善了图像匿名的美观性与高效性。



技术实现要素:

针对现有技术的不足,本发明提供一种基于生成对抗网络的人脸匿名隐私保护方法。

本发明解决其技术问题所采用的技术方案包括以下步骤:

步骤1:人脸图像数据预处理;

步骤2:构建生成对抗网络结构;

步骤3:建立人脸区域匿名的目标函数;

步骤4:建立场景内容区域保留的目标函数;

步骤5:人脸匿名与场景保留的目标函数的结合;

步骤6:采用公开数据集进行训练及测试,输出最终结果。

步骤1所述的人脸图像数据预处理,具体步骤如下:

1-1.数据准备和预处理,通过人工对人脸图像进行属性标记,生成属性标签y。

1-2.利用人脸检测器检测每张人脸图像中人脸区域位置的左上角坐标点坐标和长宽。

1-3.制作人脸区域掩码图像,具体操作是使用黑色像素值将人脸图像中人脸的位置填充即可。

步骤2所述的构建生成对抗网络结构,具体步骤如下:

2-1.构建生成器,生成器是一个u-net网络,包括5个编码器层和5个解码器层。编码器每层由最大池化层(max-pooling)和卷积(convolutional,conv)块组成,其中conv块由2个conv层、2个批量归一化层(batchnormalization,bn)和2个线性整流函数(relu)组成。解码器每层由upsampling-conv块和conv块组成,其中upsampling-conv块由upsampling、conv、bn和relu组成。编码器层与解码器层通过跳跃式连接(skip-connection)相连。跳跃式连接分为两部分:第一部分是输入原始图像到编码器层,将其与解码器层使用skip-connection对应连接。第二部分是输入掩码人脸图像到conv块,利用skip-connection与解码器层对应连接即可。

2-2.构建鉴别器。鉴别器采用的是pix2pix中的patch-d网络,包括5个conv层、4个leaky-relu函数、3个bn层和sigmoid激活函数。鉴别器用于判断输入图像是否为真实人脸图像。

步骤3所述的建立人脸区域匿名的目标函数,具体如下:

3-1.gan的目标函数,采用cgan进行图像中保持非隐私属性的可用性,具体操作是:

输入原始图像x和对应的属性标签y到生成器网络中合成图像xf;同理,分别将原始图像x和对应的属性标签y与合成图像xf和对应的属性标签y输入到鉴别器中进行判别,数学表达式如下:

其中,x表示输入的原始图像,y表示对应原始图像的属性标签,g表示生成器,d表示鉴别器。

3-2.人脸图像距离差异目标函数。利用人脸位置坐标点将合成图像进行裁剪获取人脸区域图,使用曼哈顿距离计算公式计算合成人脸区域与原始人脸区域之间的像素距离;设定阈值α,计算α与上述距离之间的绝对值差,目的是将原始人脸区域与合成人脸区域之间的像素保持α距离,数学表达式如下:

其中,xr表示原始图像的人脸区域数据,xf表示合成图像的人脸区域数据,α表示一个设定的阈值。

3-3.方差目标函数。利用方差的特性将数据离散化,在上述步骤3-2计算得到距离的基础上添加方差运算,使其合成图像数据离散化,增加人脸区域之间的差别,数学表达式如下:

其中,xr表示原始图像人脸区域数据,xf表示合成图像人脸区域数据。

3-4.人脸特征距离差异目标函数。保持合成图像中人脸区域遵循原始图像人脸的整体轮廓和朝向方向因素。通过生成器网络提取原始人脸图像和合成人脸图像的特征,使用欧氏距离计算公式计算合成人脸特征与原始人脸特征之间的特征距离;设定阈值β,计算阈值β与特征距离之间的绝对值差,使得它们之间的特征保持一个阈值距离。该方法保证了人脸区域在像素与特征上都发生变化,同时确保人脸区域轮廓相近,使得匿名图像从视觉上观察更真实,数学表达式如下:

其中,xr表示原始图像的人脸区域数据,xf表示合成图像的人脸区域数据,β表示一个设定的阈值。

步骤4建立场景内容区域保留的目标函数,具体步骤如下:

4-1.利用skip-connection的特性对生成器网络进行操作。将掩码图像输入生成器网络中的conv块,通过skip-connection连接到解码器中对应的conv块即可完成合成图像中的场景内容基本保留。

4-2.场景内容区域保留的目标函数,将合成图像进行掩码处理,使用曼哈顿距离计算公式计算原始掩码图像与合成掩码图像之间的像素距离,使其之间的像素距离趋向于最小,数学表达式如下:

其中,表示原始的掩码人脸区域图像数据,表示合成图像的掩码人脸区域图像数据。

步骤5人脸匿名与场景保留的目标函数的结合,具体如下:

5-1.在训练过程中,将步骤3-1中的gan的目标函数、步骤3-2中的人脸图像距离差异目标函数、步骤3-3中的方差目标函数、步骤3-4中的人脸特征距离差异目标函数以及步骤4-2中的场景内容区域保留的目标函数相结合共同反向传播即可,数学表达式如下:

步骤6训练模型并测试数据,具体如下:

6-1.准备数据集并按照步骤1所述进行预处理。

6-2.将训练数据输入到生成对抗网络进行训练并且使用测试数据进行网络模型测试。

6-3.为了验证所提出方法的高效性,将其与现有方法进行比较,计算匿名率、身份交换率以及图像质量,以及分析结果的可靠性和实用性。

本发明具有的有益的效果是:

本方法对图像中人脸区域进行合成脸的替换而达到人脸匿名的效果,相对以往的马赛克遮挡的方法更高效并且在视觉上更友好。通过实验结果显然证实了所提出方法的高效性与实用性。总之,所提出的方法对人物图像的隐私保护更高效和美观。

附图说明

图1是本发明步骤流程图;

图2是本发明整体架构流程图;

图3是本方法与其他方法的匿名率对比实验结果;

图4是本方法与其他方法的有效率对比实验结果;

图5是本方法与其他方法的属性保留率对比实验结果;

具体实施方式

下面结合附图对本发明作进一步说明。

基于生成对抗网络的人脸匿名隐私保护技术,具体步骤参看图1所示,整体架构流程图如图2所示:

步骤1:对数据集进行预先处理;

步骤2:构建生成对抗网络结构;

步骤3:建立图像中人脸区域匿名的目标函数;

步骤4:建立图像中场景内容区域保留的目标函数;

步骤5:人脸匿名与场景保留的目标函数的结合;

步骤6:采用公开数据集进行训练及测试,输出最终结果。

步骤1数据处理,具体步骤如下:

1-1.选取数据集(例如vggface2数据集),进行其属性的分类标记,分别将图像中的人物具有的特性进行数字化标记,将种族分类5类,即亚洲人(黄种人)标记为0、欧美人(白种人)标记为1、非洲人(黑种人)标记为2、印度人标记为3、中东人标记为4(由于印度与中东人的特性比较特殊,所以将其另划分)。将性别分为两类,男性标记为0,女性标记为1。将年龄分为两类,年轻标记为0,年长标记为1,年龄划分标准为40岁以下包括40岁为年轻,40岁以上为年长,根据以上规则制作相应图像的标签。

1-2.使用dlib人脸检测器或者mtcnn人脸区域检测器获取每张图像的人脸区域位置的左上角坐标点坐标和长宽。以下分别详细介绍dlib和mtcnn方法获取人脸区域位置的左上角坐标点坐标和长宽。

dlib获取人脸区域位置的左上角坐标点坐标和长宽的方法:使用dlib人脸检测器将所需数据进行检测获取68个人脸关键点,然后将取最高点坐标的横坐标作为人脸区域位置左上角坐标点的横坐标,将取最左侧点坐标的纵坐标作为人脸区域位置左上角坐标点的纵坐标。将最低点坐标的纵坐标与最高点纵坐标求差,获得人脸区域位置的宽度;将最右侧坐标点的横坐标与最左侧坐标点的横坐标求差,获得人脸区域位置的长度。

mtcnn获取人脸区域位置的左上角坐标点坐标和长宽:将待检测数据输入到训练完备的mtcnn模型中,输出值即为人脸区域位置的左上角坐标与长宽。

1-3.利用1-2步骤所述获取到人脸区域位置的左上角坐标点坐标和长宽,通过坐标进行制作相应图像的人脸区域掩码的图像,具体操作是将图像中人脸区域使用黑色像素值填充后重新储存为对应的掩码图像即可。

步骤2构建生成对抗网络结构,具体步骤如下:

2-1.构建生成器:生成器为u-net网络,包括5个编码器层和5个解码器层,编码器中每层由1个max-pooling和1个conv块组成,其中conv块由2个conv层、2个bn和2个relu函数组成。解码器中每层由upsampling-conv块和conv块组成,其中upsampling-conv块由upsampling、conv、bn和relu组成。在跳跃式连接中,对生成器进行修改并分为两部分连接;第一部分是输入原始图像到编码器层,将其与解码器层使用skip-connection对应连接(例如:编码器中第4层连接解码器中第1层)。第二部分中对生成器进行修改,因为skip-connection具备加速形成与输入相关的信息,利用这个想法可以实现图片中的场景内容保持不变,所以在编码器层中再单独建立两层conv块,用于输入掩码图像。将这两层卷积分别对应连接解码器的相应层,保持图像中的场景内容与原始图像的相同,但不包括人脸区域。

2-2.构建鉴别器。鉴别器采用的是pix2pix中的patch-d网络,包括5个conv层、4个leaky-relu函数、3个bn层和sigmoid激活函数,鉴别器用于判断输入图像是否为真实人脸图像。

步骤3建立人脸区域匿名的目标函数,具体如下:

3-1.gan的目标函数,采用cgan进行图像中保持非隐私属性的可用性,具体操作如下:

输入原始图像x和对应的属性标签y到生成器网络中合成图像xf;同理,分别将原始图像x和对应的属性标签y与合成图像xf和对应的属性标签y输入到鉴别器中进行判别,原始图像x对应的属性标签y和合成图像xf对应的属性标签y相同,数学表达式如下:

其中,x表示输入的原始图像,y表示对应原始图像的属性标签,g表示生成器,d表示鉴别器。

3-2.当从生成器中获得合成图像时,首先利用图像中人脸位置坐标点进行裁剪获得人脸区域图。然后设定阈值α,使用曼哈顿距离计算公式计算合成图像的人脸区域与原始图像的人脸区域之间的像素距离,计算阈值α与该距离之间的绝对值差,目的是可以将原始图像人脸区域与合成图像人脸区域保持α的距离,使得原始图像人脸区域发生改变。此目标函数与生成器的损失函数联合反向传播即可,数学表达式如下:

其中,xr表示原始图像的人脸区域数据,xf表示合成图像的人脸区域数据,α表示一个设定的阈值。

3-3.在步骤3-2的基础上,由于某些图像中合成图像的人脸区域与原始图像的人脸区域差异比较小,利用方差的特性,可以将数据离散化。在上述像素距离基础上添加方差运算,使得其合成图像的人脸区域与真实图像的人脸区域的差异变得离散化,可以增加人脸区域之间的差别,数学表达式如下:

其中,xr表示原始图像人脸区域数据,xf表示合成图像人脸区域数据。

3-4.为了处理某些合成图像中人脸区域并不遵循原始图像人脸的整体轮廓,朝向方向等因素。增加了合成图像与原始图像之间的特征距离。具体操作是在生成器中的编码器末端设置了一个出口用于提取特征,当获得合成图像的人脸区域后,将合成人脸图像与原始人脸图像再次输入生成器中的编码器提取人脸特征。当得到人脸特征后,使用欧氏距离计算公式求取合成图像人脸区域特征与原始图像人脸区域特征之间的特征距离,然后设定阈值β,计算阈值β与特征距离之间的绝对值差,使得特征间也保持阈值距离。这样既保证了人脸区域在像素级上发成了改变,也确保了特征上有了变化。而且实现了合成图像的人脸区域与原始图像的人脸区域轮廓大致相近,这样使得匿名图像从视觉上观察更真实,数学表达式如下:

其中,xr表示原始图像的人脸区域数据,xf表示合成图像的人脸区域数据,β表示一个设定的阈值。

步骤4建立场景内容区域保留的目标函数,具体步骤如下:

4-1.因为skip-connection具有加速形成输入数据信息的作用,所以对生成器网络中的skip-connection进行修改实现场景内容的保留。具体操作是:将掩码图像输入生成器网络中的conv块,通过skip-connection连接到解码器中对应的conv块即可完成合成图像中的场景内容基本保留。

4-2.通过上述操作获得的合成图像场景内容基本保留,但一些较细微的部分发生了变化(例如有文字的部分),需要加入新的目标函数进行联合控制。当获得合成图像后,利用人脸区域位置坐标点制作掩码人脸区域的合成图像,然后使用曼哈顿距离计算公式求取原始人脸区域掩码图像与合成人脸区域掩码图像之间的像素距离,使得它们之间的像素距离趋向于最小,数学表达式如下:

其中,表示原始的掩码人脸区域图像数据,表示合成图像的掩码人脸区域图像数据。

步骤5人脸匿名与场景保留的目标函数的结合,具体如下:

5-1.在训练过程中,将步骤3-1中的gan目标函数、步骤3-2中的人脸图像距离差异目标函数、步骤3-3中的方差目标函数、步骤3-4中的人脸特征距离差异目标函数以及步骤4-2中的场景内容区域保留目标函数相结合共同反向传播即可,数学表达式如下:

其中,是gan目标函数,是人脸图像距离差异目标函数,是方差目标函数,是人脸特征距离差异目标函数,是场景内容区域保留目标函数。

步骤6训练模型并测试数据,具体如下:

6-1.选择合适的数据集(比如公共数据集vggface2:一个大规模人脸识别数据,包含331万图片,9131个身份,平均图片个数为362.6个),然后按照步骤1所述将数据集进行预处理。

6-2.首先进行人物属性的分类训练:选择分类模型框架(例如alexnet、vgg16、resnet)进行图像人物属性的训练。本方法选用了vgg16作为分类器。具体操作是,将数据集输入到vgg16进行图像中人物的种族、性别、年龄的分类。

6-3.将预处理后的数据输入步骤2所述的网络结构,然后结合步骤5所述的目标函数共同完成图像匿名的训练。

6-4.为了验证所提出方法的高效性,将其与现有方法(比如ppgan、k-same-net等方法)进行比较其匿名率、身份交换率以及图像质量。匿名率采用了两种方法,第一种方法是用预训练的分类器进行图像分类,判断合成图像是否被识别出原身份。第二种方法是利用facenet模型进行检测,将合成图像与原始图像输入facenet模型网络中计算图像之间的差异值,当大于设定阈值即为匿名成功,否则失败。身份交换率是计算合成图像与原始图像之间的特征距离,挑选距离最小的前k个进行计算是否存在对应的原始图像身份。图片质量方面使用mtcnn检测合成图像的有效性,以及使用ssim检测匿名图像的质量。

实验结果:

1.分别检测了本方法与模糊化、马赛克、ppgan、k-same、k-same-net、naturaleffectiveobfuscation方法的匿名率,并且从不同的人物属性角度(种族、性别、年龄)进行了对比。具体数据结果详情见图3。

2.分别测试了本方法与模糊化、马赛克、ppgan、k-same、k-same-net、naturaleffectiveobfuscation方法的有效率,并且从不同的人物角度进行了对比。具体数据结果详情见图4。

3.分别检测了本方法与模糊化、马赛克、ppgan、k-same、k-same-net、naturaleffectiveobfuscation方法的人物属性(种族、性别、年龄)保留率。具体数据结果详情见图5。


技术特征:

1.基于生成对抗网络的人脸匿名隐私保护方法,其特征在于,包括如下步骤:

步骤1:人脸图像数据预处理;

步骤2:构建生成对抗网络结构;

步骤3:建立人脸区域匿名的目标函数;

步骤4:建立场景内容区域保留的目标函数;

步骤5:人脸匿名与场景保留的目标函数的结合;

步骤6:采用公开数据集进行训练及测试,输出最终结果。

2.根据权利要求1所述的基于生成对抗网络的人脸匿名隐私保护方法,其特征在于,步骤1所述的人脸图像数据预处理,具体步骤如下:

1-1.数据准备和预处理,通过人工对人脸图像进行属性标记,生成属性标签y;

1-2.利用人脸检测器检测每张人脸图像中人脸区域位置的左上角坐标点坐标和长宽;

1-3.制作人脸区域掩码图像,具体操作是使用黑色像素值将人脸图像中人脸的位置填充即可。

3.根据权利要求2所述的基于生成对抗网络的人脸匿名隐私保护方法,其特征在于,步骤2所述的构建生成对抗网络结构,具体步骤如下:

2-1.构建生成器,生成器是一个u-net网络,包括5个编码器层和5个解码器层;编码器每层由最大池化层(max-pooling)和卷积(convolutional,conv)块组成,其中conv块由2个conv层、2个批量归一化层(batchnormalization,bn)和2个线性整流函数(relu)组成;解码器每层由upsampling-conv块和conv块组成,其中upsampling-conv块由upsampling、conv、bn和relu组成;编码器层与解码器层通过跳跃式连接(skip-connection)相连;跳跃式连接分为两部分:第一部分是输入原始图像到编码器层,将其与解码器层使用skip-connection对应连接;第二部分是输入掩码人脸图像到conv块,利用skip-connection与解码器层对应连接即可;

2-2.构建鉴别器;鉴别器采用的是pix2pix中的patch-d网络,包括5个conv层、4个leaky-relu函数、3个bn层和sigmoid激活函数;鉴别器用于判断输入图像是否为真实人脸图像。

4.根据权利要求3所述的基于生成对抗网络的人脸匿名隐私保护方法,其特征在于,步骤3所述的建立人脸区域匿名的目标函数,具体如下:

3-1.gan的目标函数,采用cgan进行图像中保持非隐私属性的可用性,具体操作是:

输入原始图像x和对应的属性标签y到生成器网络中合成图像xf;同理,分别将原始图像x和对应的属性标签y与合成图像xf和对应的属性标签y输入到鉴别器中进行判别,数学表达式如下:

其中,x表示输入的原始图像,y表示对应原始图像的属性标签,g表示生成器,d表示鉴别器;

3-2.人脸图像距离差异目标函数;利用人脸位置坐标点将合成图像进行裁剪获取人脸区域图,使用曼哈顿距离计算公式计算合成人脸区域与原始人脸区域之间的像素距离;设定阈值α,计算α与上述距离之间的绝对值差,目的是将原始人脸区域与合成人脸区域之间的像素保持α距离,数学表达式如下:

其中,xr表示原始图像的人脸区域数据,xf表示合成图像的人脸区域数据,α表示一个设定的阈值;

3-3.方差目标函数;利用方差的特性将数据离散化,在上述步骤3-2计算得到距离的基础上添加方差运算,使其合成图像数据离散化,增加人脸区域之间的差别,数学表达式如下:

其中,xr表示原始图像人脸区域数据,xf表示合成图像人脸区域数据;

3-4.人脸特征距离差异目标函数;保持合成图像中人脸区域遵循原始图像人脸的整体轮廓和朝向方向因素;通过生成器网络提取原始人脸图像和合成人脸图像的特征,使用欧氏距离计算公式计算合成人脸特征与原始人脸特征之间的特征距离;设定阈值β,计算阈值β与特征距离之间的绝对值差,使得它们之间的特征保持一个阈值距离;该方法保证了人脸区域在像素与特征上都发生变化,同时确保人脸区域轮廓相近,使得匿名图像从视觉上观察更真实,数学表达式如下:

其中,xr表示原始图像的人脸区域数据,xf表示合成图像的人脸区域数据,β表示一个设定的阈值。

5.根据权利要求4所述的基于生成对抗网络的人脸匿名隐私保护方法,其特征在于,步骤4建立场景内容区域保留的目标函数,具体步骤如下:

4-1.利用skip-connection的特性对生成器网络进行操作;将掩码图像输入生成器网络中的conv块,通过skip-connection连接到解码器中对应的conv块即可完成合成图像中的场景内容基本保留;

4-2.场景内容区域保留的目标函数,将合成图像进行掩码处理,使用曼哈顿距离计算公式计算原始掩码图像与合成掩码图像之间的像素距离,使其之间的像素距离趋向于最小,数学表达式如下:

其中,表示原始的掩码人脸区域图像数据,表示合成图像的掩码人脸区域图像数据。

6.根据权利要求5所述的基于生成对抗网络的人脸匿名隐私保护方法,其特征在于,步骤5人脸匿名与场景保留的目标函数的结合,具体如下:

5-1.在训练过程中,将步骤3-1中的gan的目标函数、步骤3-2中的人脸图像距离差异目标函数、步骤3-3中的方差目标函数、步骤3-4中的人脸特征距离差异目标函数以及步骤4-2中的场景内容区域保留的目标函数相结合共同反向传播即可,数学表达式如下:

7.根据权利要求6所述的基于生成对抗网络的人脸匿名隐私保护方法,其特征在于,步骤6训练模型并测试数据,具体如下:

6-1.准备数据集并按照步骤1所述进行预处理;

6-2.将训练数据输入到生成对抗网络进行训练并且使用测试数据进行网络模型测试;

6-3.为了验证所提出方法的高效性,将其与现有方法进行比较,计算匿名率、身份交换率以及图像质量,以及分析结果的可靠性和实用性。

技术总结
本发明提供一种基于生成对抗网络的人脸匿名隐私保护方法。本发明首先对人脸图像数据预处理;然后构建生成对抗网络结构;再建立人脸区域匿名的目标函数;然后建立场景内容区域保留的目标函数;随后进行人脸匿名与场景保留的目标函数的结合;最后采用公开数据集进行训练及测试,输出最终结果。本方法对图像中人脸区域进行合成脸的替换而达到人脸匿名的效果,相对以往的马赛克遮挡的方法更高效并且在视觉上更友好。本发明方法具有高效性与实用性,对人物图像的隐私保护更高效和美观。

技术研发人员:匡振中;郭志强;俞俊;杨结;张鑫
受保护的技术使用者:杭州电子科技大学
技术研发日:2020.01.03
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-49649.html

最新回复(0)