[发明专利]一种基于生成对抗网络的双驱动人脸属性编辑方法在审
申请号: | 202111086482.3 | 申请日: | 2021-09-16 |
公开(公告)号: | CN114022346A | 公开(公告)日: | 2022-02-08 |
发明(设计)人: | 孙力;黄秋胜;郑智琳;胡雪琦 | 申请(专利权)人: | 华东师范大学 |
主分类号: | G06T3/00 | 分类号: | G06T3/00;G06V10/774;G06V10/82;G06V40/16;G06K9/62;G06N3/04 |
代理公司: | 上海蓝迪专利商标事务所(普通合伙) 31215 | 代理人: | 徐筱梅;张翔 |
地址: | 200241 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 生成 对抗 网络 驱动 属性 编辑 方法 | ||
1.一种基于生成对抗网络的双驱动人脸属性编辑方法,其特征在于,该方法包括以下具体步骤:
步骤1:选择人脸属性数据集,对图片数据进行预处理;
步骤2:搭建双驱动生成对抗网络模型,设计损失函数,并根据设计的损失函数训练网络;
步骤3:使用训练好的生成对抗网络对人脸图片进行属性编辑。
2.根据权利要求1所述的基于生成对抗网络的双驱动人脸属性编辑方法,其特征在于,所述步骤1具体为:选择celeba人脸数据集,挑选其中的14种标签属性:年龄、嘴巴开合、微笑、发色、发际线、刘海、性别、胡子、胡子种类,为每张图片打上14种标签;选择182000张图作为训练集。
3.根据权利要求1所述的基于生成对抗网络的双驱动人脸属性编辑方法,其特征在于,所述步骤2具体包括:
2.1:按照编码器-解码器的结构搭建生成器网络G;生成器网络G的主路输入为待修改的原图,侧枝输入为风格代码,输出为生成的假图;生成器网络G的编码器由残差网络构成,解码器由残差网络加SPADE模块构成,SPADE模块用于接收侧枝输入的风格代码;
2.2:计算attdiff,attdiff是表征期望改变的属性的向量;attdiff=目标标签-原图的标签;其中目标标签在训练过程中随机设定;attdiff的大小为1*1*14;
2.3:搭建侧枝映射网络M;网络M的输入是向量N,输出是风格代码对于向量N的获取,先是从标准正态分布中随机采样得到的一个噪声,大小是1*1*64,然后将该噪声和attdiff在通道维度即第三个维度上拼接得到向量N,此时向量N的大小为1*1*78;
2.4:搭建侧枝编码网络E,编码网络E有两种用途;第一种:E的输入是向量W1,输出是风格代码Ss;对于向量W1的获取,先将-attdiff在第一和第二维度做广播形变,大小变为128*128*14,然后将其和原图在通道维度即第三个维度上拼接得到向量W1,此时向量W1的大小为128*128*17;
第二种:E的输入是向量W2,输出是风格代码对于向量W2的获取,先将attdiff在第一和第二维度做广播形变,大小变为128*128*14,然后将其和参考图在通道维度即第三个维度上拼接得到向量W2,此时向量W2的大小为128*128*17;
2.5:采用两种驱动方式得到生成的假图,第一种是标签驱动方式,将步骤2.3得到的风格代码和步骤2.4得到的风格代码Ss相加得到风格代码Srand,利用步骤2.1搭建的生成器网络G,将原图输入生成器网络G的主路,将Srand通过SPADE输入到生成器网络G的侧枝,即得到生成的假图
第二种是参考图驱动方式,将步骤2.4得到的风格代码和步骤2.4得到的风格代码Ss相加得到风格代码Sref,利用步骤2.1搭建好的生成器网络G,将原图输入生成器网络G的主路,将风格代码Sref通过SPADE输入到生成器网络G的侧枝,即得到生成的假图此时的人脸假图和拥有相同的属性标签,且和步骤2.2中的目标标签一致,但是拥有不同的属性风格,的风格式样来自步骤2.3中随机采样的噪声,而的风格式样来自参考图;
2.6:由下采样的编码器构成判别器网络D,输入为真图或者假图,输出是分数A;对于分数A,值越大代表判别器网络D认为图片越真实,反之认为越假;
2.7:由下采样的编码器构成分类器网络C,输入为真图或者假图,通过分类器网络C对图片属性进行预测,输出是预测出的14个图像属性的标签P;
2.8:设计损失函数来训练和优化网络参数;
a)式(1)为对抗损失函数
式中,R为训练集,包含182000张真实图像,Xs是指从R中随机取出的真实图像,为插值图像,的获得:先将两种驱动方式得到的风格代码,即Srand和Sref,做线性插值,得到Si=α*Srand+(1-α)*Sref,插值系数α为0-1随机取值,再将Si送入生成器网络G的侧枝,同时生成器网络G的主路输入原图,来生成插值图像D(Xs)或者D(Xg)是指将图片Xs或者Xg输入判别器网络D,输出对其图片真实程度的分数;通过最大化Ladv来训练更新判别器网络D,同时最小化Ladv来训练更新生成器网络G、侧枝编码网络E及侧枝映射网络M;
b)采用式(2)的损失函数进行图像类别的约束
由于每一张图有14个属性标签,yi是第i个属性的真实值(0或者1),Ci(X)是指将图片输入分类器C,输出的第i个属性的预测值,对于一张图而言,有14个预测出来的属性值;通过令Lcls中的X为真实图像,来最小化Lcls,训练更新分类器C;通过令Lcls中的X为或者来最小化Lcls,训练更新生成器网络G、侧枝编码网络E及侧枝映射网络M;
c)设计式(3)损失函数
Lsty=|Srand-Sref| (3)
通过Lsty来增大Srand和Sref之间的相似度,以此训练更新侧枝编码网络E及侧枝映射网络M;
d)为了保持生成图中无关属性和原图一致,设计式(4)损失函数
Lak=|E(Xs,attak)-E(Xg,attak)|,attak=(1-2Ys)(1-|attdiff|) (4)
Ys是原图的标签,attak是表征不想改变的属性的向量,E(Xs,attak)表示将attak和原图Xs输入到编码网络E中,得到的输出为原图中不需要编辑的属性信息In1;E(Xg,attak)表示将attak和生成图Xg输入到编码网络E中,得到的输出为生成图中不需要编辑的属性信息In2。Lak的目的是缩小In1和In2之间的差距;通过最小化Lak,来训练更新生成器网络G、侧枝编码网络E及侧枝映射网络M;
步骤2.9:使用式(1)-(4)的损失函数对生成对抗网络进行重复迭代训练,直至网络收敛。
4.根据权利要求1所述的基于生成对抗网络的双驱动人脸属性编辑方法,其特征在于,所述步骤3具体包括以下步骤:
步骤3.1:准备好原图、原图的属性标签、目标属性标签、参考图以及用目标属性标签减去原图的标签来得到attdiff;
步骤3.2:采用两种方式得到具有目标属性的假图:
第一种,使用训练好的生成对抗网络,从标准正态分布中随机采样一个大小为1*1*64的噪声Nr,将Nr、原图和attdiff输入到生成器网络侧枝,同时将原图输入到生成器网络的主路,即可得到标签驱动的生成图;
第二种,使用训练好的生成对抗网络,将参考图、原图和attdiff输入到生成器网络侧枝,同时将原图输入到生成器网络的主路,即可得到参考图驱动的生成图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华东师范大学,未经华东师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111086482.3/1.html,转载请声明来源钻瓜专利网。