CN112101087B - 一种面部图像身份去识别方法、装置及电子设备 - Google Patents
一种面部图像身份去识别方法、装置及电子设备 Download PDFInfo
- Publication number
- CN112101087B CN112101087B CN202010725766.1A CN202010725766A CN112101087B CN 112101087 B CN112101087 B CN 112101087B CN 202010725766 A CN202010725766 A CN 202010725766A CN 112101087 B CN112101087 B CN 112101087B
- Authority
- CN
- China
- Prior art keywords
- identity
- original
- target
- image
- face image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 129
- 230000001815 facial effect Effects 0.000 title claims abstract description 108
- 230000006870 function Effects 0.000 claims description 81
- 238000012549 training Methods 0.000 claims description 75
- 238000013145 classification model Methods 0.000 claims description 42
- 238000011084 recovery Methods 0.000 claims description 28
- 238000004891 communication Methods 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 15
- 238000003860 storage Methods 0.000 claims description 14
- 238000006467 substitution reaction Methods 0.000 claims description 7
- 230000000452 restraining effect Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 25
- 238000013503 de-identification Methods 0.000 description 24
- 101100065246 Mus musculus Enc1 gene Proteins 0.000 description 16
- 101150040334 KLHL25 gene Proteins 0.000 description 10
- 230000000694 effects Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 210000000887 face Anatomy 0.000 description 8
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 238000010606 normalization Methods 0.000 description 4
- 238000012935 Averaging Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000003595 spectral effect Effects 0.000 description 3
- 230000008485 antagonism Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 210000003128 head Anatomy 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000005065 mining Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 210000004709 eyebrow Anatomy 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 210000001747 pupil Anatomy 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Computational Linguistics (AREA)
- Human Computer Interaction (AREA)
- Biomedical Technology (AREA)
- Evolutionary Biology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Biophysics (AREA)
- Multimedia (AREA)
- Bioethics (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Image Analysis (AREA)
- Collating Specific Patterns (AREA)
Abstract
本发明实施例公开了一种面部图像身份去识别方法,方法包括:从获取的原始图像中提取每个预先选定的面部所在区域中的内容,得到原始面部图像;对于每个原始面部图像,利用预先训练的生成模型,获得该原始面部图像的原始身份特征和原始非身份特征;确定用于代替原始身份特征的目标身份特征;利用生成模型结合原始非身份特征和目标身份特征,得到该原始面部图像对应的目标面部图像;分别用每个目标面部图像的内容,替换该目标面部图像对应的目标区域的内容,得到替换完成的目标图像。应用本发明实施例能够实现在面部图像的身份去识别的同时,完整地保留该面部图像的非身份属性,使得新生成的面部图像能够用于后续的效用。
Description
技术领域
本发明属于隐私保护领域,具体涉及一种面部图像身份去识别方法、装置及电子设备。
背景技术
近年来,网络视觉共享数据发展迅速,但是这些数据可能涉及到大量的个人隐私属性,比如图像中的个人面部身份属性。一方面,人们不希望自己的面部身份属性被泄露,另一方面,作为共享数据,从效用和视觉质量的角度出发,人们又希望保留数据的其他效用与视觉质量,比如用于数据分析、数据展示等。基于该种需求,身份去识别方法应运而生。
现有的身份去识别方法无法将身份特征与非身份特征完全分离,在改变原始面部的身份特征时,会破坏原始面部的属性特征,无法完全保留原始面部中与身份无关的属性特征。
发明内容
为了解决现有技术中存在的上述问题,本发明提供了一种面部图像身份去识别方法、装置及电子设备。本发明要解决的技术问题通过以下技术方案实现:
第一方面,本发明提供了一种面部图像身份去识别方法。
所述面部图像身份去识别方法,包括:
从获取的原始图像中提取每个预先选定的面部所在区域中的内容,得到原始面部图像;其中,所述原始图像包含至少一个面部;
对于每个所述原始面部图像,利用预先训练的生成模型,获得该原始面部图像的原始身份特征和原始非身份特征;
确定用于代替所述原始身份特征的目标身份特征;
利用所述生成模型结合所述原始非身份特征和所述目标身份特征,得到该原始面部图像对应的目标面部图像;
分别用每个目标面部图像的内容,替换该目标面部图像对应的目标区域的内容,得到替换完成的目标图像;其中,所述目标区域为所述目标面部图像对应的原始面部图像的内容,在所述原始图像中所占的区域;
其中,所述生成模型利用样本面部图像的身份替换过程和身份替换后的身份恢复过程进行训练,且训练过程利用身份分类模型和判别模型进行约束。
第二方面,本发明提供了一种面部图像身份去识别装置。
所述面部图像身份去识别装置,包括:
图像获取模块,用于从获取的原始图像中提取每个预先选定的面部所在区域中的内容,得到原始面部图像;其中,所述原始图像包含至少一个面部;
特征获取模块,用于对每个所述原始面部图像,利用预先训练的生成模型,获得该原始面部图像的原始身份特征和原始非身份特征;
特征确定模块,用于确定用于代替所述原始身份特征的目标身份特征;
解码模块,用于利用所述生成模型结合所述原始非身份特征和所述目标身份特征,得到该原始面部图像对应的目标面部图像;
替换模块,用于分别用每个目标面部图像的内容,替换该目标面部图像对应的目标区域的内容,得到替换完成的目标图像;其中,所述目标区域为所述目标面部图像对应的原始面部图像的内容,在所述原始图像中所占的区域;
其中,所述生成模型利用样本面部图像的身份替换过程和身份替换后的身份恢复过程进行训练,且训练过程利用身份分类模型和判别模型进行约束。
第三方面,本发明提供一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一面部图像身份去识别的方法步骤。
第四方面,本发明提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一面部图像身份去识别的方法步骤。
以下将结合附图及实施例对本发明做进一步详细说明。
附图说明
图1为本发明实施例提供的一种面部图像身份去识别方法的流程图;
图2为本发明实施例提供的一种利用生成模型生成身份去识别的图像的示意图;
图3为本发明实施例提供的一种生成模型的结构示意图;
图4为本发明实施例提供的一种生成模型的训练流程图;
图5为本发明实施例提供的一种用于训练生成模型的R2VAEs链式网络示意图;
图6为本发明实施例提供的一种判别模型和生成模型进行迭代对抗训练的流程图;
图7为本发明实施例提供的一种基于k值的身份去识别示意图;
图8为本发明实施例提供的一种基于类别原型聚类的面部去识别结果示意图;
图9为本发明实施例提供的一种身份去识别方法经过图像修复后在CelebA数据集上的结果示意图;
图10为本发明实施例提供的一种面部图像身份去识别装置的结构示意图;
图11为本发明实施例提供的一种面部图像身份去识别电子设备的结构示意图。
具体实施方式
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
实施例一
为了实现在面部图像的身份去识别过程中,完整保留面部图像的非身份属性,本发明实施例提供了一种面部图像身份去识别方法、装置、电子设备及存储介质。
需要说明的是,本发明实施例所提供的一种面部图像身份去识别方法的执行主体可以为一种面部图像身份去识别装置,该面部图像身份去识别装置可以运行于电子设备中。其中,该面部图像身份去识别装置可以为一图像处理工具中的插件,或者独立于一图像处理工具之外的程序,当然并不局限于此。
下面,首先对本发明实施例提供的一种面部图像身份去识别方法进行介绍。
请参见图1、图2,图1为本发明实施例提供的一种面部图像身份去识别方法的流程图;图2为本发明实施例提供的一种利用生成模型生成身份去识别的图像的示意图。
该身份去识别方法可以包括如下步骤:
S101:从获取的原始图像中提取每个预先选定的面部所在区域中的内容,得到原始面部图像。
本发明实施例获取原始图像的方式可以是接收用户输入的原始图像,或者是从预设存储地址获得预先存储的原始图像等等,在此,对本发明实施例获取原始图像的方式不作限定。
本发明实施例获取到的原始图像中至少包含一个面部,当然,也可以包含多个面部;面部可以是人的面部,也可以是动物的面部。
本发明实施例中预先选定的面部为身份敏感的面部,即基于安全、保密、隐私等原因不希望被他人识别的面部。
本发明实施例可以在获取的原始图像中,预先选定一个或多个身份敏感的面部,即选定需要进行身份去识别的面部,针对每个预先选定的面部,先确定该预先选定的面部在原始图像中所在的区域,比如通过检测面部轮廓点,确定面部轮廓点构成的闭合区域;然后提取该区域内的内容,比如提取该区域内所有像素点;最后将提取出的内容构成一幅新的图像作为原始面部图像。本领域技术人员可以理解的是,可以通过现有的人脸检测技术如SSH、MTCNN等算法实现对预先选定的面部进行定位和提取。当然,本发明实施例从原始图像获得原始面部图像的过程不限于以上方式,任何可以实现该过程的方式都可以作为本发明实施例的实现方式。
可以理解的是,如果原始图像中有多个预先选定的面部,通过上述过程,针对每个预先选定的面部都会得到一个原始面部图像。
S102:对于每个原始面部图像,利用预先训练的生成模型,获得该原始面部图像的原始身份特征和原始非身份特征。
可以理解的是,一个面部可以包括多种属性,比如眼睛、眉毛、嘴唇、发型等等,其中有一些属性与面部拥有者的身份有关,其携带有面部拥有者独特的个人属性,且不容易被掩盖,比如人的瞳孔,这些属性使面部拥有者能够区别于其他面部拥有者。通过这些属性,可以识别出这个拥有者是谁。这样的属性可以被称之为身份属性。而面部除身份属性之外的属性,与辨识面部拥有者的身份无关,比如人的发型、发色、表情、头部姿势、妆容、光照度等等,这样的属性可以被称之为非身份属性。
本发明实施例提出一种基于因子不变的假设,该假设认为,将一面部图像中的身份属性先替换为他人的身份属性实现身份替换,之后再恢复原有的身份属性,整个过程中,该拥有者的非身份属性会保持不变。基于该假设,本发明实施例预先训练了一个生成模型,生成模型利用样本面部图像的身份替换过程和身份替换后的身份恢复过程进行训练,训练过程中身份替换过程和身份替换后的身份恢复过程参数共享,且训练过程利用身份分类模型和判别模型进行约束,即利用多种模型构建组合损失函数约束训练,以使恢复的面部图像逼近原始面部图像,利用生成模型可以在没有任何非身份属性监督的情况下,完成身份属性与非身份属性的解缠,且完整保留非身份属性。关于生成模型的训练过程和实现机理在后文详细描述。
针对本步骤,具体地,对每一个原始面部图像,利用预先训练的生成模型提取原始面部图像中的身份属性,得到原始身份特征,提取原始面部图像中的非身份属性,得到原始非身份特征。本领域技术人员可以理解的是,所提取出的特征以向量形式表征。
S103:确定用于代替原始身份特征的目标身份特征。
本实施例中目标身份特征可以理解为混淆身份特征,其目的就是为了替换原始身份特征,然后和原始非身份特征结合并被解码后,形成一幅能混淆原有身份的新的面部图像,具体实施过程将在后文详细描述。
本步骤目的是确定一个与原始身份特征不同的身份特征作为目标身份特征,具体的,可以为:
基于预先获取的多个样本身份特征,确定与原始身份特征的特征距离满足预设条件的一个身份特征,作为目标身份特征。
预先获取的多个样本身份特征,是将预先获取的多个样本面部图像利用已训练好的生成模型提取其身份特征得到的。比如可以从面部图像样本库中随机选取多个样本面部图像,对每个样本面部图像,利用已训练好的生成模型提取该样本面部图像的身份特征,将提取得到的多个身份特征作为预先获取的多个样本身份特征。
本发明实施例的特征距离为特征之间的物理几何空间距离,特征距离可以是:欧氏距离、夹角余弦等。
本发明实施例可以采用上述任意一种特征距离的计算方法,分别计算每个样本身份特征与原始身份特征之间的特征距离,得到多个特征距离,在得到的多个特征距离中,选择满足预设条件的一个样本身份特征,作为目标身份特征。比如选择特征距离大于特征距离阈值的一个样本身份特征,作为目标身份特征,当特征距离大于特征距离阈值的样本身份特征有多个时,可以任意选择一个,也可以选择其中特征距离最大的一个样本身份特征作为目标身份特征;或者,选择特征距离介于预设特征距离区间的一个样本身份特征,作为目标身份特征,当特征距离介于预设特征距离区间的样本身份特征有多个时,可以任意选择一个,也可以选择其中特征距离最大的一个样本身份特征作为目标身份特征,这都是合理的;其中,特征距离阈值、预设特征距离区间可以根据经验值预先设置。
可以理解的是,特征距离越大,表示样本身份特征与原始身份特征之间的差异越大。用与原始身份特征差异大的样本身份特征作为后续替换原始身份特征的目标身份特征,可以实现更好的身份去识别效果。
S104:利用生成模型结合原始非身份特征和目标身份特征,得到该原始面部图像对应的目标面部图像。
本发明实施例中,可以利用生成模型先结合原始非身份特征和目标身份特征,得到结合后的目标面部特征,再将目标面部特征生成结合的目标面部图像。请参见图2,图2为本发明实施例提供的一种利用生成模型生成身份去识别的图像的示意图;从图2可以得出,利用生成模型将原始面部中与身份无关的特征和从数据库中提取的其他面部的混淆的身份特征,进行结合并解码后,可以得到一个身份去识别的图像,可以理解的是,图2中从数据库中提取的其他面部的混淆的身份特征即是本步骤中的目标身份特征,数据库即是一个面部图像样本库。
可以理解的是,针对原始图像得到的每个预先选定的原始面部图像,经过该步骤,都可以得到对应的一个结合的目标面部图像,该目标面部图像含有原始面部图像的非身份特征,以及用于代替该原始面部图像的原始身份特征的目标身份特征。
S105:分别用每个目标面部图像的内容,替换该目标面部图像对应的目标区域的内容,得到替换完成的目标图像。
其中,目标区域为目标面部图像对应的原始面部图像的内容,在原始图像中所占的区域。
可以理解的是,在步骤S101之后,原始图像中各个预先选定的面部所在区域中的内容被提取出,原始图像中各个预先选定的面部所在区域的内容变为了空白,这些空白区域即为一个个目标区域。本发明实施例针对每个目标面部图像,可以用该目标面部图像的内容替换该目标面部图像对应的目标区域的内容,即填充该空白的目标区域。
可以理解的是,当所有目标面部图像均完成替换之后,可以得到一张替换完成的目标图像。该目标图像中任意一个预先选定的面部的身份属性已经替换为他人的身份属性,而非身份属性还被完整保留,因此,不会泄露原有面部拥有者的身份隐私,并且从目标面部图像整体而言,具有图像本身的完整性,不影响图像后续的应用,比如图像展示、图像挖掘分析等等。
本发明实施例的身份去识别方法通过从获取的原始图像中提取每个预先选定的面部所在区域中的内容,得到原始面部图像;对于每个原始面部图像,利用预先训练的生成模型,获得该原始面部图像的原始身份特征和原始非身份特征;确定用于代替原始身份特征的目标身份特征;利用生成模型结合原始非身份特征和目标身份特征,得到该原始面部图像对应的目标面部图像;分别用每个目标面部图像的内容,替换该目标面部图像对应的目标区域的内容,得到替换完成的目标图像;本发明实施例中的生成模型利用样本面部图像的身份替换过程和身份替换后的身份恢复过程进行训练,且训练过程利用身份分类模型和判别模型进行约束,从而在没有任何非身份属性监督的情况下,完成身份属性和非身份属性的解缠,实现在面部图像的身份去识别的同时,完整地保留该面部图像的非身份属性,使得新生成的面部图像能够用于后续的效用。
为了便于方案理解,在此,先对本发明实施例的生成模型的训练过程予以介绍。
首先,先对生成模型训练过程的构思进行概要介绍。
本发明实施例提出一种基于因子不变的假设,该假设认为,将一面部图像中的身份属性先替换为他人的身份属性实现身份替换,之后再恢复原有的身份属性,整个过程中,该拥有者的非身份属性会保持不变。基于该假设,发明人设计了一个链式网络(Replacingand Restoring Variational Auto-Encoders,以下简称R2VAEs)用于训练生成模型,该链式网络由两个参数共享的编码-解码对组成,两个编码-解码对的功能、结构相同。每一个编码-解码对均包含了:提取身份特征的编码单元、提取非身份特征的编码单元、结合身份特征和非身份特征、以及根据结合后的特征生成面部图像的解码单元。
上述链式网络R2VAEs训练过程主要是对一个编码-解码对连续训练两次,两次训练参数共享,第一次训练为身份替换过程,即该编码-解码对将原始面部图像中的身份属性替换为他人的身份属性,得到一个既含有他人的身份属性,又含有原始面部的非身份属性的新面部图像;第二次训练为身份替换后的身份恢复过程,即将第一次训练得到的新面部图像重新输入到该编码-解码对,用原始面部图像中的身份属性替换新面部图像中的身份属性,从而将新面部图像恢复成原始面部图像,在上述两个过程中,原始面部的非身份属性会保持不变。需要说明的是,在训练结束之后,得到的生成模型实际包含一个该编码-解码对,并在使用该生成模型进行身份去识别过程时,该编码-解码对仅使用一次即可。
本发明实施例中,为了在身份替换过程中,保持原始面部图像的身份属性不变,引入了身份分类模型,身份分类模型利用面部图像样本库中的面部图像和所属的身份类别进行预训练,使得预训练完成的身份分类模型能够对任意一面部图像输出预测的身份类别,本发明实施例利用身份分类模型的损失对R2VAEs的训练进行约束,迫使将面部图像中与身份有关的特征从与身份无关的特征中分离出来,从而可以将身份属性和非身份属性成功解缠,具体实施过程将在后文详细描述。
以及,本发明实施例中,为了使新生成的面部图像更加真实,基于GAN原理,可以将整个链式网络R2VAEs看成一个整体生成模型,并为之引入一个判别模型,在整体生成模型和判别模型相互对抗的过程中使得最后生成的图片的分布接近于真实图片的分布。
为了便于理解,在此,对GAN原理进行简述。
生成式对抗网络(GAN,Generative Adversarial Networks)是一种深度学习模型,是近年来复杂分布上无监督学习最具前景的方法之一。模型通过框架中(至少)两个模块:生成模型(Generative Model)和判别模型(Discriminative Model)的互相博弈学习产生相当好的输出。判别模型需要输入变量,通过某种模型来预测。生成模型是给定某种隐含属性,来随机产生观测数据。举个简单的例子:
以生成图片为例进行说明。假设我们有两个网络,G(Generator)和D(Discriminator)。它们的功能分别是:G作为生成器目的是生成伪造的假图片来以假乱真,D作为判别器,用来判别一张图是否真实。在训练的过程中,生成器与判别器依次交替训练,构成一个相互博弈的过程。博弈过程为:首先固定生成器G的参数,判别器D接受真实的图片作为正样本和生成器G生成的假图片作为负样本来调节自身参数,提高判别器本身判别真假的能力,然后固定判别器D的参数,生成器G生成假图片,将其作为正样本送入判别器D中,通过所得结果调节生成器自身参数,使得判别器D无法正确判别真假。在理想的状态下,博弈的结果使得生成器G能够生成“以假乱真”的图片,而判别器无法正确判别其为真实图片还是生成的图片。具体实施过程将在后文详细描述。
通过上述发明构思,本发明通过R2VAEs、身份分类模型、判别模型训练得到的生成模型具体结构参见图3,图3为本发明实施例提供的一种生成模型200的结构示意图。
生成模型200包括:顺次连接的编码单元组和解码单元203;其中,编码单元组包括作为并列分支的第一编码单元201和第二编码单元202;
第一编码单元201用于将输入的面部图像中与身份有关的属性编码为身份特征。
本发明实施例中,第一编码单元201可以提取面部图像中与身份有关的属性,具体的,第一编码单元201可以为一编码器,该编码器可以使用卷积神经网络构建,在此,对第一编码单元201的具体结构不做限制。
第二编码单元202用于将输入的面部图像中与身份无关的属性编码为非身份特征。
本发明实施例中,第二编码单元202可以提取面部图像中与身份无关的属性,具体的,第二编码单元202可以为一编码器,该编码器可以使用卷积神经网络构建,在此,对第二编码单元202的具体结构不做限制。
解码单元203用于结合身份特征和非身份特征,得到结合后的面部特征,并解码面部特征,得到结合的面部图像。
本发明实施例中,解码单元203先结合身份特征和非身份特征,得到结合后的面部特征,然后将面部特征进行解码,得到结合的面部图像。具体的,解码单元203可以为一解码器,在此,对解码单元203的具体结构不做限制。
可以理解的是,上述身份特征、非身份特征和面部特征均以向量形式表征。
下面结合图4、图5、图6详细介绍本发明实施例的生成模型的训练过程。
参见图4和图5,图4为本发明实施例提供的一种生成模型的训练流程图。图5为本发明实施例提供的一种用于训练生成模型的R2VAEs链式网络示意图。
生成模型的训练过程包括:
S301、获得生成模型、判别模型和身份分类模型。
1)搭建生成模型,请参见图5,从前面描述可以理解的是,生成模型实际只包含一个编码-解码对,即图5中的G1对应的虚线方框(以下简称为G1框),该生成模型包括:作为并列分支的编码器Enc1和编码器Enc2;编码器Enc1用于将输入的面部图像中与身份有关的属性编码为身份特征;编码器Enc2用于将输入的面部图像中与身份无关的属性编码为非身份特征;解码器Dec用于结合身份特征和非身份特征,得到结合后的面部特征,并解码面部特征,得到结合的面部图像。
预训练编码器Enc1。其中,编码器Enc1可以在搭建生成模型之前进行预训练,也可以在搭建生成模型后单独进行预训练。
本实施例中,搭建编码器Enc1,可以基于现有的身份识别模型,如FaceNet、VggFace、Light CNN等,本实施例中选用FaceNet。
具体地,可以基于FaceNet,使用三元损失(triplet loss)对编码器Enc1进行预训练,使得编码器Enc1能够将与身份有关的属性编码为d维的身份特征。编码器Enc1的损失函数通过公式(1)获得:
在公式(1)中,x1表示待提取身份特征的面部图像,表示与该面部图像具有相同身份属性的面部图像,xn表示与该面部身份属性不同且距离最远的面部图像,α表示正负样本对之间的余量,Norm表示对Enc1所提取的特征进行正则,使得||Enc1(x)||2=1。
公式(1)中损失函数的含义在于:面部图像中与面部身份相关的因素被统一嵌入到一个半径为1的超球面,在这个超球面中欧氏距离被用来测量两个面部图像的相似度,从而拉近具有相同身份属性的面部距离,拉远具有不同身份属性的面部距离。
2)搭建判别模型D,判别模型可以采用现有技术中的任意一种判别模型,比如SN-PATCHGAN、WGAN、WGAN-GP、SNGAN、SAGAN中所用到的判别器等,在此,并不对本发明实施例的判别模型的结构进行限制。
3)搭建身份分类模型C,并对身份分类模型进行预训练。
身份分类模型C可以采用现有技术中的任意一种分类模型,比如人工神经网ANN、SVM等。在此,并不对本发明实施例的身份分类模型C的结构进行限制。
具体地,可以使用面部图像样本库{x,y}预训练身份分类模型C,其中,x为面部图像样本库中的一面部图像,y为该面部图像已标记的身份类别,可以理解的是,对身份分类模型进行预训练后,将一个新的面部图像输入该身份分类模型,可以预测该新的面部图像的身份类别。
具体地,身份分类模型的训练方法可以为神经网络或者机器学习中的诸多算法,如K-近邻算法(k-NearstNeighbor,kNN)、支持向量机(Support Vetor Machine,SVM)等。本实施例采用人工神经网络搭建分类器,并使用多分类交叉熵作为损失函数对其进行训练。
S302、对判别模型和生成模型进行迭代对抗训练,并在生成模型的训练过程中依次进行身份替换训练和身份替换后的身份恢复训练,直至达到收敛条件。参见图6,图6为本发明实施例提供的一种判别模型和生成模型进行迭代对抗训练的流程图,可以包括以下步骤:
a)获取第一样本面部图像x1、表示x1身份类别的第一样本身份类别y1,以及获取第二样本面部图像x2、表示x2身份类别的第二样本身份类别y2,且y1≠y2。
本发明实施例中算法均使用小批量梯度下降法(Mini-Batch Gradient Descent,MBGD)。
可以理解的是,在本步骤之前,面部图像样本库中面部图片所属的身份类别已知,且一一对应。
b)获取第二编码单元的初始化参数θEnc2、解码单元的初始化参数θDec、判别模型的初始化参数θDsc。
参数初始化是为了让神经网络在训练过程中学习到有用的属性,从而对各个节点的权重和偏置进行初值设定的过程,因此一个参数的初始化关系到网络能否训练出好的结果或者是以多快的速度收敛,都是至关重要的。本实施例采用随机正态分布的参数初始化方式。
c)最大化判别对抗损失函数LD_adv以更新判别器D的参数θDsc。判别对抗损失函数LD_adv为判别器D在对抗训练中的损失函数,参见公式(2)。
可以理解的是,x3为第一样本面部图像x1和第二样本面部图像x2结合得到的第三面部图像。x2作为正样本,x3作为负样本,作为判别器D的输入,利用判别对抗损失函数LD_adv对判别器D进行优化,以更新判别器D的参数θDsc。同时,在判别网络D中加入光谱归一化层(Spectral Normalization Layer),以提高训练的稳定性。
d)获取x1的身份特征f1,参见公式(3);获取x2的非身份特征z2,参见公式(4)。
f1=Enc1(x1) (3)
z2=Enc2(x2) (4)
参见图5的G1框,将第一样本面部图像x1利用编码器Enc1获得其身份特征f1;将第二样本面部图像x2利用编码器Enc2获得其非身份特征z2。
e)结合f1和z2,参见公式(5),并对结合得到的特征解码,得到第三面部图像x3,参见公式(6)。
具体地,利用编码器Dec将第一样本面部图像x1的身份特征f1和第二样本面部图像x2的非身份特征z2进行结合,并将结合得到的特征解码,得到第三面部图像x3。
可以理解的是,根据因子不变的策略,第三面部图像x3具有第一样本面部图像x1的身份属性和第二样本面部图像x2的与身份无关的属性。
f)计算身份替换损失Lreplace。
身份替换损失函数包括L1损失函数、MS-SSIM损失函数和KL divergence损失函数构成的组合损失函数,参见公式(7)。
其中,LMS-SSIM计算公式如下式:
在公式(8)、(9)、(10)中,P表示任意像素,μx,μy,σx,σy表示两样本x,y在p点的像素与周围像素的均值和方差,周围像素的范围由标准差为σG的高斯滤波器确定,M表示M个尺度,由不同的σG值唯一确定。
具体地,公式(7)中,LMS-SSIM能保留高频属性(图像的边缘和细节),而L1损失函数能较好的保持亮度和颜色不变化,并且一般设定α为0.84,KL divergence损失函数用于正则与身份无关的特征的分布,有助于身份特征与非身份特征的分离。
g)计算身份分类损失函数LC,参见公式(11)。
如前,如果仅仅依赖链式网络R2VAEs不足以将与身份有关的属性和与身份无关的属性成功解缠。为了使得第三面部图像x3有与第一样本面部图像x1相同的身份属性,先使用面部图像样本库{x,y}预训练一个身份分类器C(参见本实施例S301中的第3)步),然后将x3作为身份分类器C的输入,获得x3的身份类别,利用该身份类别与y1计算获得分类损失LC。该分类损失LC在Ldisplace的基础上用于对R2VAEs进行约束,以迫使与身份有关的属性与与身份无关的属性成功解缠。
h)计算生成对抗损失函数LG,参见公式(12)。
本步骤中,固定判别器D的参数θDsc,将x3作为正样本送入判别器D中,以得到生成对抗损失函数LG_adv(θEnc2,θDec)。
i)计算身份替换训练的损失函数
身份替换训练的损失函数为,由身份替换损失函数、身份分类模型提供的身份分类损失函数,和生成模型在对抗训练中的生成对抗损失函数加权构成的组合损失函数,参见公式(13)。
在本步骤中,由于希望第三面部图像x3与第二样本面部图像x2拥有相同的与身份无关的属性,而具有不同的与身份有关的属性,因此对Ldisplace设计一个较小的约束δ1=0.1,λ1、λ2、λ3分别为身份替换损失函数、身份分类损失函数、生成对抗损失函数的权值。
j)最小化损失函数以更新Enc2的参数θEnc2和Dec的参数θDec
k)获取x2的身份特征f2,参见公式(14);获取x3的非身份特征z3,参见公式(15)。
f2=Enc1(x2) (14)
z3=Enc2(x3) (15)
参见图3的G2对应的虚线方框(以下简称为G2框),将第二样本面部图像x2利用编码器Enc1获得其身份特征f2;将从G1框输出获得的第三面部图像x3利用编码器Enc2获得其非身份特征z3。
可以理解的是,根据因子不变的策略,第三面部图像x3是第二样本面部图像x2替换身份属性而来,但与身份无关的属性未发生变化,因此第三面部图像x3应与第二样本面部图像x2具有相同的与身份无关的编码特征。
l)结合f2和z3,参见公式(16),并对结合得到的特征解码,得到第四面部图像x4,参见公式(17)。
利用编码器Dec将第二样本面部图像x2的身份特征f2和第三面部图像x3的非身份特征z3进行结合,并将结合得到的特征解码,得到第四面部图像x4。
可以理解的是,根据因子不变的策略,第四面部图像x4具有第二样本面部图像x2中与身份有关的属性和第二样本面部图像x2中与身份无关的属性,因此第四面部图像x4应与第二样本面部图像x2相同,属于同一面部。
m)计算身份恢复损失Lrestore。
身份恢复损失函数Lrestore包括L1损失函数、MS-SSIM损失函数和KL divergence损失函数构成的组合损失函数,参见公式(18)。
可以理解的是,式(18)中,LMS-SSIM可从式(8)、式(9)、式(10)获得。
n)计算身份替换后的身份恢复训练阶段的损失函数
身份替换后的身份恢复训练的损失函数包括身份恢复损失函数,参见公式(19)。
可以理解的是,在理论上第四面部图像x4完全等同于第二样本面部图像x2,因此对Lrestore设计一个较大的约束δ2=1。
o)最小化损失函数以更新Enc2的参数θEnc2和Dec的参数θDec。
p)判断LD、LG1、LG2是否达到收敛条件,如果是,停止训练过程;如果否,重复执行步骤c)-步骤p)。
本发明实施例提供的一种生成模型的训练方法,提出一个基于因子不变的假设,基于该假设,设计了一个由两个参数共享的编码-解码对组成的链式网络,并用该链式网络训练生成模型,同时利用身份分类模型和判别模型对该训练过程进行约束,从而可以在没有任何与身份无关的属性监督的情况下,完成与身份有关的特征及与身份无关的特征的解缠,使得在身份去识别过程的同时,完整保留与身份无关的属性。
基于上述生成模型的训练过程,本发明实施例中生成模型的使用过程为:
1)利用预先训练的生成模型,获得该原始面部图像的原始身份特征和原始非身份特征,包括:
利用第一编码单元得到原始面部图像的原始身份特征;
利用第二编码单元得到原始面部图像的原始非身份特征;
2)利用解码单元结合原始非身份特征和目标身份特征,得到结合后的目标面部特征,并解码目标面部特征,得到结合的目标面部图像。
实施例二
基于上述生成模型的使用过程,本发明实施例在实施例一的基础上,提出另一种面部图像身份去识别方法,其中,与实施例一相同的步骤不再赘述。具体的,在实施例二中,S103确定用于代替所述原始身份特征的目标身份特征,可以有以下两种实现方式:
实现方式1,包括:
随机选取k-1个不同于原始身份特征的样本身份特征,与原始身份特征一起做平均,得到由k个不同面部身份的身份特征平均化后的平均身份特征,将该平均身份特征确定为用于代替原始身份特征的目标身份特征;
可以理解的是,之后可以用该平均身份特征作为目标身份特征实现身份去识别方法的后续步骤。在实现方式1对应的身份去识别方法中,用于替换身份的平均身份特征并不是一个他人的真实身份,因此可以实现优于实施例一的隐私保护效果。而且所选取的k越大,目标身份特征与原始身份特征的区别越大,则得到的目标面部图像相较于原始面部图像的身份去识别程度越大。这种方式虽然带有一定的随机性,但是简单可行。请参见图7,图7为本发明实施例提供的一种基于k值的身份去识别示意图。从图7可以得知,k值越大,身份去识别的程度越大,但是与身份无关的属性信息,如头部姿势、表情、面色、妆容等仍然保留。其中,k表示原始身份特征和样本身份特征的总数量。
实现方式2,基于预先获取的多个样本身份特征,确定与所述原始身份特征的特征距离满足预设条件的一个样本身份特征,作为目标身份特征。但相较于实施例一,其中多个预先获取的样本身份特征有所不同;具体的,该实现方式中多个预先获取的样本身份特征的获取过程可以包括以下步骤:
1)利用预先训练的分类模型,确定每个样本身份特征对应于所属身份类别的类别置信度。
比如,预先训练的身份分类模型是利用N个身份类别进行训练的,那么,针对面部图像样本库中的每个样本身份特征,通过该身份分类模型可以得到该样本身份特征属于这N个身份类别的概率,但其实该样本身份特征实际对应的身份类别是已知的,那么,N个身份类别概率中,那个已知的身份类别下的概率即为该样本身份特征对应于所属身份类别的类别置信度。可以理解的是,针对每个样本身份特征,都可以在N个身份类别概率中,确定其对应于所属身份类别的类别置信度。
2)针对每一身份类别,将该身份类别下的样本身份特征,利用对应的类别置信度加权平均,获得该身份类别的身份原型特征。
可以理解的是,针对每一身份类别可以获得该身份类别下的多个样本身份特征,将每个样本身份特征利用对应的类别置信度加权,再将加权得到的各个结果求平均值,计算得到一个身份特征,可以作为该身份类别的身份原型特征。具体参见以下公式(20)和(21)。
Confidence(c|xi)=C(c|xi) (20)
其中,公式(20)、(21)中,Xc表示训练集中所有属于类别c的样本,Enc1(xi)表示利用编码器Enc1获得Xi的身份特征,Confidence表示每个Xi属于类别c的类别置信度,Id_prototype表示身份类别的身份原型特征。
3)将所有身份原型特征进行聚类,获得多个聚类中心特征。
4)将多个聚类中心特征作为预先获取的多个样本身份特征。
可以理解的是,之后可以确定与原始身份特征的特征距离满足预设条件的一个身份特征,作为目标身份特征,继而实现身份去识别方法的后续步骤具体过程与实施例一的实现方式类似,在此不再赘述。
实现方式2对应的身份去识别方法中,,通过设计身份原型特征,又将身份原型特征进行聚类,使用聚类中心特征作为目标身份特征,从而使替换身份并不是一个他人的真实身份,因此可以实现优于实施例一的的隐私保护效果。并且,实现方式2通过为每一类身份特征设计了唯一的基于置信度的身份原型特征,并将每一类身份原型特征聚类后的多个聚类中心特征作为目标身份特征,可以使得身份去识别的效果更加可控。
具体请参见图8,图8为本发明实施例提供的一种基于类别原型聚类的面部去识别结果示意图。图8中,将面部图像样本库中的样本按照类别原型聚为15类,选择与原始面部身份距离最近(标记为Replacer1)、适中(标记为Replacer8)、最远(标记为Replacer15)的聚类中心分别作为替换原始身份特征的目标身份特征,获得去识别的结果,因此,采用此种实现方式,可以使得身份去识别效果更加可控。
可选地,针对实施例一和二的去识别方法,在得到目标图像之后,该方法还包括:对目标图像进行图像修复。
具体的,可选的一种实现方式为:利用基于U-Net结构的修复器对目标图像进行图像修复,并在修复过程中利用L1损失和对抗损失进行约束;其中,修复器包含一个基于U-Net的自动编码器作为生成器和一个与SN-PatchGAN中相同的判别器。
虽然利用前述步骤已经得到去识别的面部,且可以在一定程度上保留面部的完整语义,但这种直接的替换可能会造成面部像素与周围背景像素不匹配,因此需要利用图像修复技术改善这一现象,从而使修复后的图像能够更好进行后续的应用,比如图像分析、图像挖掘等等。现有的图像修复技术有很多种,此处仅对一种图像修复技术进行详述。
本实施例中,该图像修复技术是利用基于U-Net结构的修复器对目标图像进行修复。U-Net网络是一种基于全卷积结构的解码网络,U-Net网络的跳跃连接(skip-connection)将编码部分的特征映射和同样大小的解码部分的特征映射按通道拼接,从而能够保留不同分辨率下的细节信息,因此将U-Net网络作为生成器能够提升图像的细节。
具体地,该修复器包含一个基于U-Net的自动编码器作为生成器GI和一个与SN-PatchGAN中相同的判别器DI。不同于一般GAN中的判别器,PatchGAN中的判别器输出的是一个大小为N*N的矩阵,矩阵中的每一个值对应原图中的一个感受野(patch),最终将矩阵的均值作为判别器的输出。并且,本实施例通过在判别器中使用谱归一化(spectralnormalization)技术来提高训练的稳定性。
具体地,本实施例中的判别器采用铰链损失(hinge loss)进行训练。
具体地,整个修复器由L1损失和对抗损失进行约束:
在公式(22)、(23)中,Io为原始图片,M为一个面部遮罩,人脸框内部像素为1,其余像素为0。F为去识别的面部。基于面部遮罩的L1损失使得优化重点集中于面部区域。
请参见图9,图9为本发明实施例提供的一种身份去识别方法经过图像修复后在CelebA数据集上的结果示意图。具体参见无修复和有修复构成的各组图像,通过对比同组中的无修复图像和有修复图像,可以得知将去身份识别面部经过图像修复后,然后对齐到原始图像中,去识别面部可以与原始图像背景有效贴合,其中,CelebA数据集即为一个面部图像样本库。
实施例三
请参见图10,图10为本发明实施例提供的一种面部图像身份去识别装置的结构示意图。如图10所示,身份去识别装置400,包括:
图像获取模块401,用于从获取的原始图像中提取每个预先选定的面部所在区域中的内容,得到原始面部图像;其中,原始图像包含至少一个面部。
特征获取模块402,用于对每个原始面部图像,利用预先训练的生成模型,获得该原始面部图像的原始身份特征和原始非身份特征。
特征确定模块403,用于确定用于代替原始身份特征的目标身份特征。
解码模块404,用于利用生成模型结合原始非身份特征和目标身份特征,得到该原始面部图像对应的目标面部图像。
替换模块405,用于分别用每个目标面部图像的内容,替换该目标面部图像对应的目标区域的内容,得到替换完成的目标图像;其中,目标区域为目标面部图像对应的原始面部图像的内容,在原始图像中所占的区域。
其中,生成模型利用样本面部图像的身份替换过程和身份替换后的身份恢复过程进行训练,且训练过程利用身份分类模型和判别模型进行约束。
在本发明的一个实施例中,生成模型包括:
顺次连接的编码单元组和解码单元;其中,编码单元组包括作为并列分支的第一编码单元和第二编码单元;
第一编码单元用于将输入的面部图像中与身份有关的属性编码为身份特征;
第二编码单元用于将输入的面部图像中与身份无关的属性编码为非身份特征;
解码单元用于结合身份特征和非身份特征,得到结合后的面部特征,并解码面部特征,得到结合的面部图像。
在本发明的一个实施例中,生成模型的训练过程包括:
获得生成模型、判别模型和身份分类模型;其中,生成模型中的第一编码单元和身份分类模型经过预训练;
对判别模型和生成模型进行迭代对抗训练,并在生成模型的训练过程中依次进行身份替换训练和身份替换后的身份恢复训练,直至达到收敛条件;
其中,身份替换训练的损失函数为,由身份替换损失函数、身份分类模型的身份分类损失函数,和生成模型在对抗训练中的生成对抗损失函数加权构成的组合损失函数;身份替换后的身份恢复训练的损失函数包括身份恢复损失函数。
在本发明的一个实施例中,身份替换损失函数和身份恢复损失函数包括L1损失函数、MS-SSIM损失函数和KL divergence损失函数构成的组合损失函数。
在本发明的一个实施例中,利用预先训练的生成模型,获得该原始面部图像的原始身份特征和原始非身份特征,包括:
利用第一编码单元得到原始面部图像的原始身份特征;
利用第二编码单元得到原始面部图像的原始非身份特征;
利用生成模型结合原始非身份特征和目标身份特征,得到该原始面部图像对应的目标面部图像,包括:
利用解码单元结合原始非身份特征和目标身份特征,得到结合后的目标面部特征,并解码目标面部特征,得到结合的目标面部图像。
在本发明的一个实施例中,确定用于代替原始身份特征的目标身份特征,包括:
基于预先获取的多个样本身份特征,确定与原始身份特征的特征距离满足预设条件的一个样本身份特征,作为目标身份特征。
在本发明的一个实施例中,多个预先获取的样本身份特征的获取过程,包括:
利用预先训练的分类模型,确定每个样本身份特征对应于所属身份类别的类别置信度;
针对每一身份类别,将该身份类别下的样本身份特征,利用对应的类别置信度加权平均,获得该身份类别的身份原型特征;
将所有身份原型特征进行聚类,获得多个聚类中心特征;
多个聚类中心特征作为预先获取的多个样本身份特征。
在本发明的一个实施例中,在得到目标图像之后,方法还包括:
对目标图像进行图像修复。
在本发明的一个实施例中,对目标图像进行图像修复,包括:
利用基于U-Net结构的修复器对目标图像进行图像修复,并在修复过程中利用L1损失和对抗损失进行约束;其中,修复器包含一个基于U-Net的自动编码器作为生成器和一个与SN-PatchGAN中相同的判别器。
通过上述身份去识别装置,能够实现:
1、本实施例的身份去识别装置通过从获取的原始图像中提取每个预先选定的面部所在区域中的内容,得到原始面部图像;对于每个原始面部图像,利用预先训练的生成模型,获得该原始面部图像的原始身份特征和原始非身份特征;确定用于代替原始身份特征的目标身份特征;利用生成模型结合原始非身份特征和目标身份特征,得到该原始面部图像对应的目标面部图像;分别用每个目标面部图像的内容,替换该目标面部图像对应的目标区域的内容,得到替换完成的目标图像,从而在没有任何非身份属性监督的情况下,完成身份属性和非身份属性的解缠,实现在面部图像的身份去识别的同时,完整地保留该面部图像的非身份属性,使得新生成的面部图像能够用于后续的效用。
2、本实施例的身份去识别装置,提出一个基于因子不变的假设,基于该假设,设计了一个由两个参数共享的编码-解码对组成的链式网络,并用该链式网络训练生成模型,同时利用身份分类模型和判别模型对该训练过程进行约束,从而可以在没有任何与身份无关的属性监督的情况下,完成与身份有关的特征及与身份无关的特征的解缠,使得在身份去识别过程的同时,完整保留与身份无关的属性。
3、本实施例的身份去识别装置,通过为每一类身份特征设计了唯一的基于置信度的身份原型特征,并将每一类身份原型特征聚类后的多个聚类中心特征作为目标身份特征,从而使得身份去识别效果更加可控,且因为替换身份并不是一个他人的真实身份,因此可以实现更好的隐私保护效果。
实施例四
本发明实施例还提供了一种电子设备,图11为本发明实施例提供的一种面部图像身份去识别电子设备的结构示意图。如图11所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,实现如下步骤:
从获取的原始图像中提取每个预先选定的面部所在区域中的内容,得到原始面部图像;其中,原始图像包含至少一个面部;
对于每个原始面部图像,利用预先训练的生成模型,获得该原始面部图像的原始身份特征和原始非身份特征;
确定用于代替原始身份特征的目标身份特征;
利用生成模型结合原始非身份特征和目标身份特征,得到该原始面部图像对应的目标面部图像;
分别用每个目标面部图像的内容,替换原始图像中,该目标面部图像对应的目标区域的内容,得到替换完成的目标图像;其中,目标区域为目标面部图像对应的原始面部图像的内容,在原始图像中所占的区域;
其中,生成模型利用样本面部图像的身份替换过程和身份替换后的身份恢复过程进行训练,且训练过程利用身份分类模型和判别模型进行约束。
在本发明的一个实施例中,生成模型包括:
顺次连接的编码单元组和解码单元;其中,编码单元组包括作为并列分支的第一编码单元和第二编码单元;
第一编码单元用于将输入的面部图像中与身份有关的属性编码为身份特征;
第二编码单元用于将输入的面部图像中与身份无关的属性编码为非身份特征;
解码单元用于结合身份特征和非身份特征,得到结合后的面部特征,并解码面部特征,得到结合的面部图像。
在本发明的一个实施例中,生成模型的训练过程包括:
获得生成模型、判别模型和身份分类模型;其中,生成模型中的第一编码单元和身份分类模型经过预训练;
对判别模型和生成模型进行迭代对抗训练,并在生成模型的训练过程中依次进行身份替换训练和身份替换后的身份恢复训练,直至达到收敛条件;
其中,身份替换训练的损失函数为,由身份替换损失函数、身份分类模型的身份分类损失函数,和生成模型在对抗训练中的生成对抗损失函数加权构成的组合损失函数;身份替换后的身份恢复训练的损失函数包括身份恢复损失函数。
在本发明的一个实施例中,身份替换损失函数和身份恢复损失函数包括L1损失函数、MS-SSIM损失函数和KL divergence损失函数构成的组合损失函数。
在本发明的一个实施例中,利用预先训练的生成模型,获得该原始面部图像的原始身份特征和原始非身份特征,包括:
利用第一编码单元得到原始面部图像的原始身份特征;
利用第二编码单元得到原始面部图像的原始非身份特征;
利用生成模型结合原始非身份特征和目标身份特征,得到该原始面部图像对应的目标面部图像,包括:
利用解码单元结合原始非身份特征和目标身份特征,得到结合后的目标面部特征,并解码目标面部特征,得到目标面部图像。
在本发明的一个实施例中,确定用于代替原始身份特征的目标身份特征,包括:
基于预先获取的多个样本身份特征,确定与原始身份特征的特征距离满足预设条件的一个样本身份特征,作为目标身份特征。
在本发明的一个实施例中,多个预先获取的样本身份特征的获取过程,包括:
利用预先训练的分类模型,确定每个样本身份特征对应于所属身份类别的类别置信度;
针对每一身份类别,将该身份类别下的样本身份特征,利用对应的类别置信度加权平均,获得该身份类别的身份原型特征;
将所有身份原型特征进行聚类,获得多个聚类中心特征;
多个聚类中心特征作为预先获取的多个样本身份特征。
在本发明的一个实施例中,在得到目标图像之后,方法还包括:
对目标图像进行图像修复。
在本发明的一个实施例中,对目标图像进行图像修复,包括:
利用基于U-Net结构的修复器对目标图像进行图像修复,并在修复过程中利用L1损失和对抗损失进行约束;其中,修复器包含一个基于U-Net的自动编码器作为生成器和一个与SN-PatchGAN中相同的判别器。
通过上述身份去识别电子设备,能够实现:
1、本实施例的身份去识别电子设备通过从获取的原始图像中提取每个预先选定的面部所在区域中的内容,得到原始面部图像;对于每个原始面部图像,利用预先训练的生成模型,获得该原始面部图像的原始身份特征和原始非身份特征;确定用于代替原始身份特征的目标身份特征;利用生成模型结合原始非身份特征和目标身份特征,得到该原始面部图像对应的目标面部图像;分别用每个目标面部图像的内容,替换该目标面部图像对应的目标区域的内容,得到替换完成的目标图像,从而在没有任何非身份属性监督的情况下,完成身份属性和非身份属性的解缠,实现在面部图像的身份去识别的同时,完整地保留该面部图像的非身份属性,使得新生成的面部图像能够用于后续的效用。
2、本实施例的身份去识别电子设备,提出一个基于因子不变的假设,基于该假设,设计了一个由两个参数共享的编码-解码对组成的链式网络,并用该链式网络训练生成模型,同时利用身份分类模型和判别模型对该训练过程进行约束,从而可以在没有任何与身份无关的属性监督的情况下,完成与身份有关的特征及与身份无关的特征的解缠,使得在身份去识别过程的同时,完整保留与身份无关的属性。
3、本实施例的身份去识别电子设备,通过为每一类身份特征设计了唯一的基于置信度的身份原型特征,并将每一类身份原型特征聚类后的多个聚类中心特征作为目标身份特征,从而使得身份去识别效果更加可控,且因为替换身份并不是一个他人的真实身份,因此可以实现更好的隐私保护效果。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例提供的方法可以应用于电子设备。具体的,该电子设备可以为:台式计算机、便携式计算机、智能移动终端、服务器等。在此不作限定,任何可以实现本发明的电子设备,均属于本发明的保护范围。
实施例五
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现本发明实施例所提供的面部图像身份去识别方法的步骤。
对于装置/电子设备/存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,本发明实施例的装置、电子设备及存储介质分别是应用上述面部身份去识别方法的装置、电子设备及存储介质,则上述面部身份去识别方法的所有实施例均适用于该装置、电子设备及存储介质,且均能达到相同或相似的有益效果。
应用本发明实施例所提供的终端设备,可以展示专有名词和/或固定词组供用户选择,进而减少用户输入时间,提高用户体验。
在本发明的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看附图、公开内容、以及所附权利要求书,可理解并实现公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
本领域技术人员应明白,本申请的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式,这里将它们都统称为“模块”或“系统”。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。计算机程序存储/分布在合适的介质中,与其它硬件一起提供或作为硬件的一部分,也可以采用其他分布形式,如通过Internet或其它有线或无线电信系统。
本申请是参照本申请实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (9)
1.一种面部图像身份去识别方法,其特征在于,包括:
从获取的原始图像中提取每个预先选定的面部所在区域中的内容,得到原始面部图像;其中,所述原始图像包含至少一个面部;
对于每个所述原始面部图像,利用预先训练的生成模型,获得该原始面部图像的原始身份特征和原始非身份特征,包括:
利用所述第一编码单元得到所述原始面部图像的原始身份特征;
利用所述第二编码单元得到所述原始面部图像的原始非身份特征;
利用所述生成模型结合所述原始非身份特征和所述目标身份特征,得到该原始面部图像对应的目标面部图像,包括:
利用所述解码单元结合所述原始非身份特征和所述目标身份特征,得到结合后的目标面部特征,并解码所述目标面部特征,得到结合的目标面部图像;
所述生成模型包括:
顺次连接的编码单元组和解码单元;其中,所述编码单元组包括作为并列分支的第一编码单元和第二编码单元;
所述第一编码单元用于将输入的面部图像中与身份有关的属性编码为身份特征;
所述第二编码单元用于将输入的面部图像中与身份无关的属性编码为非身份特征;
所述解码单元用于结合所述身份特征和所述非身份特征,得到结合后的面部特征,并解码所述面部特征,得到结合的面部图像;
确定用于代替所述原始身份特征的目标身份特征,包括:
基于预先获取的多个样本身份特征,确定与所述原始身份特征的特征距离满足预设条件的一个样本身份特征,作为目标身份特征;
利用所述生成模型结合所述原始非身份特征和所述目标身份特征,得到该原始面部图像对应的目标面部图像;
分别用每个目标面部图像的内容,替换该目标面部图像对应的目标区域的内容,得到替换完成的目标图像;其中,所述目标区域为所述目标面部图像对应的原始面部图像的内容,在所述原始图像中所占的区域;
其中,所述生成模型利用样本面部图像的身份替换过程和身份替换后的身份恢复过程进行训练,且训练过程利用身份分类模型和判别模型进行约束。
2.根据权利要求1所述的方法,其特征在于,所述生成模型的训练过程包括:
获得生成模型、判别模型和身份分类模型;其中,所述生成模型中的所述第一编码单元和所述身份分类模型经过预训练;
对所述判别模型和所述生成模型进行迭代对抗训练,并在所述生成模型的训练过程中依次进行身份替换训练和身份替换后的身份恢复训练,直至达到收敛条件;
其中,所述身份替换训练的损失函数为,由身份替换损失函数、所述身份分类模型的身份分类损失函数,和所述生成模型在对抗训练中的生成对抗损失函数加权构成的组合损失函数;所述身份替换后的身份恢复训练的损失函数包括身份恢复损失函数。
3.根据权利要求2所述的方法,其特征在于,所述身份替换损失函数和所述身份恢复损失函数包括L1损失函数、MS-SSIM损失函数和KL divergence损失函数构成的组合损失函数。
4.根据权利要求1所述的方法,其特征在于,所述预先获取的多个样本身份特征的获取过程,包括:
利用预先训练的分类模型,确定每个样本身份特征对应于所属身份类别的类别置信度;
针对每一身份类别,将该身份类别下的样本身份特征,利用对应的类别置信度加权平均,获得该身份类别的身份原型特征;
将所有身份原型特征进行聚类,获得多个聚类中心特征;
将所述多个聚类中心特征作为所述预先获取的多个样本身份特征。
5.根据权利要求1所述的方法,其特征在于,在得到所述目标图像之后,所述方法还包括:
对所述目标图像进行图像修复。
6.根据权利要求5所述的方法,其特征在于,所述对所述目标图像进行图像修复,包括:
利用基于U-Net结构的修复器对所述目标图像进行图像修复,并在修复过程中利用L1损失和对抗损失进行约束;其中,所述修复器包含一个基于U-Net的自动编码器作为生成器和一个与SN-PatchGAN中相同的判别器。
7.一种面部图像身份去识别装置,其特征在于,包括:
图像获取模块,用于从获取的原始图像中提取每个预先选定的面部所在区域中的内容,得到原始面部图像;其中,所述原始图像包含至少一个面部;
特征获取模块,用于对每个所述原始面部图像,利用预先训练的生成模型,获得该原始面部图像的原始身份特征和原始非身份特征,包括:
利用所述第一编码单元得到所述原始面部图像的原始身份特征;
利用所述第二编码单元得到所述原始面部图像的原始非身份特征;
利用所述生成模型结合所述原始非身份特征和所述目标身份特征,得到该原始面部图像对应的目标面部图像,包括:
利用所述解码单元结合所述原始非身份特征和所述目标身份特征,得到结合后的目标面部特征,并解码所述目标面部特征,得到结合的目标面部图像;
所述生成模型包括:
顺次连接的编码单元组和解码单元;其中,所述编码单元组包括作为并列分支的第一编码单元和第二编码单元;
所述第一编码单元用于将输入的面部图像中与身份有关的属性编码为身份特征;
所述第二编码单元用于将输入的面部图像中与身份无关的属性编码为非身份特征;
所述解码单元用于结合所述身份特征和所述非身份特征,得到结合后的面部特征,并解码所述面部特征,得到结合的面部图像;
特征确定模块,用于确定用于代替所述原始身份特征的目标身份特征,包括:
基于预先获取的多个样本身份特征,确定与所述原始身份特征的特征距离满足预设条件的一个样本身份特征,作为目标身份特征;
解码模块,用于利用所述生成模型结合所述原始非身份特征和所述目标身份特征,得到该原始面部图像对应的目标面部图像;
替换模块,用于分别用每个目标面部图像的内容,替换该目标面部图像对应的目标区域的内容,得到替换完成的目标图像;其中,所述目标区域为所述目标面部图像对应的原始面部图像的内容,在所述原始图像中所占的区域;
其中,所述生成模型利用样本面部图像的身份替换过程和身份替换后的身份恢复过程进行训练,且训练过程利用身份分类模型和判别模型进行约束。
8.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1~6任一所述的方法步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1~6任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010725766.1A CN112101087B (zh) | 2020-07-24 | 2020-07-24 | 一种面部图像身份去识别方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010725766.1A CN112101087B (zh) | 2020-07-24 | 2020-07-24 | 一种面部图像身份去识别方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112101087A CN112101087A (zh) | 2020-12-18 |
CN112101087B true CN112101087B (zh) | 2024-02-02 |
Family
ID=73750048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010725766.1A Active CN112101087B (zh) | 2020-07-24 | 2020-07-24 | 一种面部图像身份去识别方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112101087B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112949535B (zh) * | 2021-03-15 | 2022-03-11 | 南京航空航天大学 | 一种基于生成式对抗网络的人脸数据身份去识别方法 |
US11900519B2 (en) * | 2021-11-17 | 2024-02-13 | Adobe Inc. | Disentangling latent representations for image reenactment |
CN114333024B (zh) * | 2021-12-31 | 2024-01-26 | 郑州工程技术学院 | 基于对抗训练网络进行学生面部表情识别的方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108537743A (zh) * | 2018-03-13 | 2018-09-14 | 杭州电子科技大学 | 一种基于生成对抗网络的面部图像增强方法 |
WO2018225061A1 (en) * | 2017-06-04 | 2018-12-13 | De-Identification Ltd. | System and method for image de-identification |
CN109934767A (zh) * | 2019-03-06 | 2019-06-25 | 中南大学 | 一种基于身份和表情特征转换的人脸表情转换方法 |
CN110163082A (zh) * | 2019-04-02 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 一种图像识别网络模型训练方法、图像识别方法及装置 |
CN111401216A (zh) * | 2020-03-12 | 2020-07-10 | 腾讯科技(深圳)有限公司 | 图像处理、模型训练方法、装置、计算机设备和存储介质 |
-
2020
- 2020-07-24 CN CN202010725766.1A patent/CN112101087B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018225061A1 (en) * | 2017-06-04 | 2018-12-13 | De-Identification Ltd. | System and method for image de-identification |
CN108537743A (zh) * | 2018-03-13 | 2018-09-14 | 杭州电子科技大学 | 一种基于生成对抗网络的面部图像增强方法 |
CN109934767A (zh) * | 2019-03-06 | 2019-06-25 | 中南大学 | 一种基于身份和表情特征转换的人脸表情转换方法 |
CN110163082A (zh) * | 2019-04-02 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 一种图像识别网络模型训练方法、图像识别方法及装置 |
CN111401216A (zh) * | 2020-03-12 | 2020-07-10 | 腾讯科技(深圳)有限公司 | 图像处理、模型训练方法、装置、计算机设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
吴柳玮 ; 孙锐 ; 阚俊松 ; 高隽 ; .双重对偶生成对抗网络的跨年龄素描―照片转换.中国图象图形学报.2020,(第04期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN112101087A (zh) | 2020-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106372581B (zh) | 构建及训练人脸识别特征提取网络的方法 | |
CN112101087B (zh) | 一种面部图像身份去识别方法、装置及电子设备 | |
Khosravy et al. | Model inversion attack by integration of deep generative models: Privacy-sensitive face generation from a face recognition system | |
CN105138993B (zh) | 建立人脸识别模型的方法及装置 | |
Sun et al. | Iris image classification based on hierarchical visual codebook | |
Umer et al. | A novel cancelable iris recognition system based on feature learning techniques | |
Tsai et al. | Interactive artificial bee colony supported passive continuous authentication system | |
US9633044B2 (en) | Apparatus and method for recognizing image, and method for generating morphable face images from original image | |
Moustafa et al. | Age-invariant face recognition based on deep features analysis | |
US20170103194A1 (en) | Systems and methods for active authentication | |
CN105930834B (zh) | 基于球哈希二值编码的人脸识别方法及装置 | |
CN112784929B (zh) | 一种基于双元组扩充的小样本图像分类方法及装置 | |
CN111260620B (zh) | 图像异常检测方法、装置和电子设备 | |
Nguyen et al. | Constrained design of deep iris networks | |
WO2021042544A1 (zh) | 基于去网纹模型的人脸验证方法、装置、计算机设备及存储介质 | |
Tapia et al. | Gender classification from NIR images by using quadrature encoding filters of the most relevant features | |
JP2011181016A (ja) | 判別器生成装置および方法並びにプログラム | |
US20170026836A1 (en) | Attribute-based continuous user authentication on mobile devices | |
US11762969B1 (en) | Systems and methods for facilitating biometric recognition | |
Alford et al. | Genetic and evolutionary methods for biometric feature reduction | |
Li et al. | Multi-level Fisher vector aggregated completed local fractional order derivative feature vector for face recognition | |
Wu et al. | Collaborative representation for classification, sparse or non-sparse? | |
Lim et al. | Sparse coding based Fisher vector using a Bayesian approach | |
Wang et al. | How to handle missing data in robust multi-biometrics verification | |
Bharadwaj et al. | Reliable human authentication using AI-based multibiometric image sensor fusion: Assessment of performance in information security |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |