发明内容
本发明提供了一种人脸图像超分辨率重建方法和计算机可读取的存储介质,以解决现有的人脸图像超分辨率重建方法无法提供良好的超分辨率重建效果的技术问题。
根据本发明的一个方面,提供一种人脸图像超分辨率重建方法,用于对低分辨率人脸图像进行超分辨率重建处理,包括以下步骤:
步骤S1:采用多任务人脸语义先验知识提取网络提取低分辨率人脸图像的两种人脸先验信息,两种人脸先验信息分别为face parsing maps和face landmark heatmaps;
步骤S2:构建人脸超分辨率重建网络,人脸超分辨率重建网络包括解码部分和编码部分;
步骤S3:将提取的两种人脸先验信息和人脸超分辨率重建网络的编码部分拼接合并后作为人脸超分辨率重建网络的解码部分的输入;
步骤S4:将人脸超分辨率重建网络的解码部分和编码部分、以及多任务人脸语义先验知识提取网络共同作为生成对抗网络的生成器G,并构建判别器D进行对抗训练,同时构建人脸超分辨率重建网络的整体损失函数;
步骤S5:输入低分辨率人脸图像并采用Adam最优化方法迭代更新人脸超分辨率重建网络的参数;
步骤S6:重复执行步骤S5直至整体损失函数收敛,并保存网络模型和参数。
进一步地,所述步骤S1中的多任务人脸语义先验知识提取网络通过以下步骤构建:
步骤S11:采用3个Residual模块和2个Hour-Glass模块并结合skip connection机制构建多任务人脸语义先验知识提取网络;
步骤S12:初始化多任务人脸语义先验知识提取网络的参数,并构建基于像素级别L2范数的损失函数,然后采用Adam最优化方法训练网络,保存训练好的模型。
进一步地,所述基于像素级别L2范数的损失函数为
其中,ptruth表示真实的人脸先验信息,pestimate表示多任务人脸语义先验知识提取网络估计的人脸先验信息。
进一步地,所述步骤S11具体包括以下步骤:
步骤S111:先利用双线性插值算法对输入的低分辨率人脸图像进行重建,再将重建后得到的人脸图像输入至卷积核为7*7、步长为2的“CONV-BN-ReLU”卷积结构,“CONV-BN-ReLU”卷积结构输出人脸图像;
步骤S112:将“CONV-BN-ReLU”卷积结构输出的人脸图像输入至3个Residual模块,Residual模块的卷积核为3*3、步长为1,Residual模块输出人脸图像;
步骤S113:将Residual模块输出的人脸图像输入至2个Hour-Glass模块,Hour-Glass模块输出人脸图像;
步骤S114:采用两个单独的1*1卷积核对Hour-Glass模块输出的人脸图像进行多任务人脸语义先验信息提取,分别输出表示face parsing maps的特征图和表示facelandmark heatmaps的特征图。
进一步地,所述步骤S2中的人脸超分辨率重建网络的编码部分通过以下步骤构建:
采用12个Residual模块作为低分辨率人脸图像的输入结构,Residual模块的卷积核为3*3、步长为1,输出人脸图像,然后将12个Residual模块输出的人脸图像输入至“BN-ReLU-DECONV”反卷积结构中,输出特征图。
进一步地,所述步骤S2中的人脸超分辨率重建网络的解码部分通过以下步骤构建:
采用3个Residual模块作为输入结构,Residual模块的卷积核为3*3、步长为1,再将Residual模块输出的人脸图像输入至“BN-ReLU-DECONV”反卷积结构中,然后输出特征图,然后将“BN-ReLU-DECONV”反卷积结构输出的特征图依次经过2个“CONV-ReLU”层和1个CONV层,输出重建的高分辨率图像。
进一步地,所述人脸超分辨率重建网络的整体损失函数为:
其中,LG(Θ)表示生成器G的损失函数,LD(G,D)表示判别器D的对抗损失函数,LP表示人脸超分辨率重建网络的感知损失函数,γD表示平衡对抗损失的权重,γP表示平衡感知损失的权重,γD=10-3,γP=10-1。
进一步地,生成器G的损失函数为:
其中,
表示真实的高分辨率人脸图像,/>
表示人脸超分辨率重建网络重建的高分辨率人脸图像,λ=1。
进一步地,人脸超分辨率重建网络的感知损失函数为
其中,φ表示固定预训练好的VGG16模型‘relu5_3’层的激活值。
本发明还提供一种计算机可读取的存储介质,用于存储进行人脸图像超分辨率重建的计算机程序,该计算机程序在计算机上运行时执行以下步骤:
步骤S1:采用多任务人脸语义先验知识提取网络提取低分辨率人脸图像的两种人脸先验信息,两种人脸先验信息分别为face parsing maps和face landmark heatmaps;
步骤S2:构建人脸超分辨率重建网络,人脸超分辨率重建网络包括解码部分和编码部分;
步骤S3:将提取的两种人脸先验信息和人脸超分辨率重建网络的编码部分拼接合并后作为人脸超分辨率重建网络的解码部分的输入;
步骤S4:将人脸超分辨率重建网络的解码部分和编码部分、以及多任务人脸语义先验知识提取网络共同作为生成对抗网络的生成器G,并构建判别器D进行对抗训练,同时构建人脸超分辨率重建网络的整体损失函数;
步骤S5:输入低分辨率人脸图像并采用Adam最优化方法迭代更新人脸超分辨率重建网络的参数;
步骤S6:重复执行步骤S5直至整体损失函数收敛,并保存网络模型和参数。
本发明具有以下有益效果:
本发明的人脸图像超分辨率重建方法,独创性地提取了两种人脸语义先验知识:face parsing maps和face landmark heatmaps,并且将提取的两种人脸先验信息和人脸超分辨率重建网络的编码部分拼接合并后作为人脸超分辨率重建网络的解码部分的输入,确保了重构的人脸图像包含更多的人脸先验信息,并且将人脸超分辨率重建网络和多任务人脸语义先验知识提取网络共同作为生成对抗网络的生成器,使得重建后的高分辨率人脸图像更加真实逼真,执行速度也很快,对于不同程度低分辨率的人脸图像都具有良好的鲁棒性。本发明的人脸图像超分辨率重建方法,对于由于采集设备和环境以及网络传输介质、图像压缩等因素引起的低分辨率图像的超分辨率重建具有良好的应用效果。
除了上面所描述的目的、特征和优点之外,本发明还有其它的目的、特征和优点。下面将参照图,对本发明作进一步详细的说明。
具体实施方式
以下结合附图对本发明的实施例进行详细说明,但是本发明可以由下述所限定和覆盖的多种不同方式实施。
如图1,本发明的优选实施例提供一种人脸图像超分辨率重建方法,用于对低分辨率人脸图像进行超分辨率重建处理,具有良好的超分辨率重建效果,所述人脸图像超分辨率重建方法包括以下步骤:
步骤S1:采用MTFPNet(Multitask Face Prior Net,多任务人脸语义先验知识提取网络)提取低分辨率人脸图像的两种人脸先验信息,两种人脸先验信息分别为faceparsing maps(人脸解析图)和face landmark heatmaps(人脸特征图);
步骤S2:构建人脸超分辨率重建网络,人脸超分辨率重建网络包括解码部分和编码部分;
步骤S3:将提取的两种人脸先验信息和人脸超分辨率重建网络的编码部分拼接合并后作为人脸超分辨率重建网络的解码部分的输入;
步骤S4:将人脸超分辨率重建网络的解码部分和编码部分、以及多任务人脸语义先验知识提取网络共同作为生成对抗网络的生成器G,并构建判别器D进行对抗训练,同时构建人脸超分辨率重建网络的整体损失函数;
步骤S5:输入低分辨率人脸图像并采用Adam最优化方法迭代更新人脸超分辨率重建网络的参数;
步骤S6:重复执行步骤S5直至整体损失函数收敛,并保存网络模型和参数。
本发明的人脸图像超分辨率重建方法,独创性地提取了两种人脸语义先验知识:face parsing maps和face landmark heatmaps,并且将提取的两种人脸先验信息和人脸超分辨率重建网络的编码部分拼接合并后作为人脸超分辨率重建网络的解码部分的输入,确保了重构的人脸图像包含更多的人脸先验信息,并且将人脸超分辨率重建网络和多任务人脸语义先验知识提取网络共同作为生成对抗网络的生成器,使得重建后的高分辨率人脸图像更加真实逼真,执行速度也很快,对于不同程度低分辨率的人脸图像都具有良好的鲁棒性。本发明的人脸图像超分辨率重建方法,对于由于采集设备和环境以及网络传输介质、图像压缩等因素引起的低分辨率图像的超分辨率重建具有良好的应用效果。
可以理解,如图2所示,所述步骤S1中的多任务人脸语义先验知识提取网络通过以下步骤构建:
步骤S11:采用3个Residual(残差)模块和2个Hour-Glass(沙漏)模块并结合skipconnection(跳跃式传递)机制构建多任务人脸语义先验知识提取网络;
步骤S12:初始化多任务人脸语义先验知识提取网络的参数,并构建基于像素级别L2范数的损失函数,然后采用Adam(Adaptive moment estimation自适应矩设计)最优化方法训练网络,保存训练好的模型。
可以理解,如图3所示,所述步骤S11具体包括以下步骤:
步骤S111:先利用双线性插值算法对输入的低分辨率人脸图像进行重建,再将重建后得到的人脸图像输入至卷积核为7*7、步长为2的“CONV-BN-ReLU”卷积结构,“CONV-BN-ReLU”卷积结构输出人脸图像;
步骤S112:将“CONV-BN-ReLU”卷积结构输出的人脸图像输入至3个Residual模块,Residual模块的卷积核为3*3、步长为1,Residual模块输出人脸图像;
步骤S113:将Residual模块输出的人脸图像输入至2个Hour-Glass模块,Hour-Glass模块输出人脸图像;
步骤S114:采用两个单独的1*1卷积核进行多任务人脸语义先验信息提取,分别输出表示face parsing maps的特征图和表示face landmark heatmaps的特征图。
可以理解,所述“CONV-BN-ReLU”卷积结构和3个Residual模块共同构成多任务人脸语义先验知识提取网络的编码结构,所述2个Hour-Glass模块和两个单独的1*1卷积核构成了多任务人脸语义先验知识提取网络的解码结构,其中CONV指的是Convolution(卷积)层,BN指的是Batch Normalization(批标准化)层,ReLU指的是Rectified Linear Unit(线性整流函数)层。
具体地,如图3和4所示,输入一个大小为32*32的低分辨率人脸图像,先采用双线性插值算法对输入的低分辨率人脸图像进行重建,输出大小为128*128的人脸图像,然后将128*128的人脸图像输入至“CONV-BN-ReLU”卷积结构,“CONV-BN-ReLU”卷积结构经过卷积运算输出大小为64*64*64的特征图,再将64*64*64的特征图输入至3个Residual模块并输出大小为64*64*128的特征图,然后将64*64*128的特征图输入至2个Hour-Glass模块并输出64*64*128的特征图,最后采用两个单独的1*1卷积核对64*64*128的特征图进行多任务人脸语义先验信息提取,分别输出表示face parsing maps的64*64*11特征图和表示facelandmark heatmaps的64*64*1特征图。可以理解,输出的表示face parsing maps的64*64特征点大小11通道的特征图分别对脸部、左眉毛、右眉毛、左眼睛、右眼睛、鼻子、上嘴唇、下嘴唇、牙齿、头发这些人脸关键特征以及背景的语义信息进行提取,输出的64*64特征大小1通道的特征图进行人脸轮廓特征的提取,其中人脸轮廓特征由194个人脸特征点得到。本发明的人脸图像超分辨率重建方法,提取了face parsing maps和face landmark heatmaps两种人脸语义先验信息,分别对应脸部、左眉毛、右眉毛、左眼睛、右眼睛、鼻子、上嘴唇、下嘴唇、牙齿、头发这些人脸关键特征以及背景的语义信息提取和人脸轮廓特征的提取,确保后续的超分辨率人脸重建包含了充分的人脸先验信息,确保了重建后的人脸图像更加真实逼真。
可以理解,在所述步骤S12中,初始化多任务人脸语义先验知识提取网络的参数w和b,所述基于像素级别L2范数的损失函数具体为
其中,ptruth表示真实的人脸先验信息,pestimate表示多任务人脸语义先验知识提取网络估计的人脸先验信息。
可以理解,在所述步骤S2中,所述人脸超分辨率重建网络的编码部分具体通过以下步骤构建:
采用12个Residual模块作为低分辨率人脸图像的输入结构,Residual模块的卷积核为3*3、步长为1,然后将12个Residual模块输出的人脸图像输入至“BN-ReLU-DECONV”反卷积结构中,输出特征图。其中,DECONV指的是Deconvolution(反卷积)层,BN指的是BatchNormalization(批标准化)层,ReLU指的是Rectified Linear Unit(线性整流函数)层。
所述步骤S2中的人脸超分辨率重建网络的解码部分通过以下步骤构建:
采用3个Residual模块作为输入结构,Residual模块的卷积核为3*3、步长为1,再将Residual模块输出的人脸图像输入至“BN-ReLU-DECONV”反卷积结构中,“BN-ReLU-DECONV”反卷积结构输出特征图,然后将“BN-ReLU-DECONV”反卷积结构输出的特征图依次经过2个“CONV-ReLU”层和1个CONV层,输出重建的高分辨率图像。
可以理解,在所述步骤S3中将多任务人脸语义先验知识提取网络提取的faceparsing maps和face landmark heatmaps两种人脸先验信息和人脸超分辨率重建网络的编码部分拼接合并后作为人脸超分辨率重建网络的解码部分的输入,丰富了人脸超分辨率重建网络的解码部分的输入内容,进一步确保了重建后的人脸图像的分辨率更高,图像效果更加真实。
本发明的人脸超分辨率重建网络采用的是扩大器型的网络结构,不同于现有的漏斗型网络结构,本发明采用扩大器型的网络结构,可以确保重建后的人脸图像具有更高的分辨率,图像更加真实,执行效率也更高。
可以理解,在所述步骤S4中,将人脸超分辨率重建网络的解码部分和编码部分、以及多任务人脸语义先验知识提取网络共同作为生成对抗网络的生成器G,并构建由6个卷积层构成的判别器D进行对抗训练。考虑到对抗问题可以看做是解决从最小到最大的问题,所述人脸超分辨率重建网络的整体损失函数具体为
其中,LG(Θ)表示生成器G的损失函数,LD(G,D)表示判别器D的对抗损失函数,LP表示人脸超分辨率重建网络的感知损失函数,γD表示平衡对抗损失的权重,γP表示平衡感知损失的权重,γD=10-3,γP=10-1。
所述生成器G的损失函数具体为
其中,
表示真实的高分辨率人脸图像,/>
表示人脸超分辨率重建网络重建的高分辨率人脸图像,λ表示平衡基于像素级别L2范数的损失函数的权重,λ=1。
所述人脸超分辨率重建网络的感知损失函数用于估量人脸超分辨率重建网络的重建的高分辨率人脸图像与目标高分辨率人脸图像在高维特征空间的相似性,所述感知损失函数具体为
其中,φ表示固定预训练好的VGG16模型‘relu5_3’层的激活值。
判别器D的对抗损失函数用于区分开真实的高分辨率人脸图像和重建的高分辨率人脸图像,判别器D的对抗损失函数具体为
LD(G,D)=E[log D(ytruth,x)]+E[log(1-D(G(x),x)]
其中,(ytruth,x)表示样本x从真实的高分辨率人脸图像中采样,(G(x),x)表示样本x从重建的高分辨率人脸图像G(x)中采样,E表示分布函数的期望值。
可以理解,在所述步骤S5中,输入32*32大小的低分辨率人脸图像,然后采用Adam最优化方法迭代更新人脸超分辨率重建网络的参数。然后重复执行步骤S5,直至人脸超分辨率重建网络的整体损失函数收敛,然后保存网络模型和参数,此时的人脸超分辨率重建网络包括经过对抗训练后的网络模型,将任意一张低分辨率的人脸图像输入到训练好的人脸超分辨率重建网络中,即可得到重建后的超分辨率人脸图像。
如图5所示,本发明的人脸超分辨率重建网络对低分辨率人脸图像进行重建的过程具体为:将输入32*32大小的低分辨率人脸图像至人脸超分辨率重建网络的编码部分,例如先输入至12个Residual模块,12个Residual模块输出32*32*64的特征图,再将32*32*64的特征图输入至“BN-ReLU-DECONV”反卷积结构中,“BN-ReLU-DECONV”反卷积结构输出64*64*64的特征图。再将64*64*64的特征图与步骤S1中提取的表示face parsing maps的64*64*11特征图和表示face landmark heatmaps的64*64*1特征图拼接合并作为人脸超分辨率重建网络的解码部分的输入,然后,人脸超分辨率重建网络的解码部分输出128*128*3的高分辨率人脸图像。将人脸超分辨率重建网络重建得到的128*128*3的高分辨率人脸图像和真实的128*128*3的高分辨率人脸图像输入至生成对抗网络中进行对抗训练,对训练后的网络模型进行保存并测试,评估重建后的高分辨率人脸图像的质量,直至重建后的人脸图像满足要求后,保存网络模型和参数。本发明的人脸超分辨率重建网络对低分辨率人脸图像进行重建得到的超分辨率人脸图像的效果如图6所示。
另外,本发明还提供一种计算机可读取的存储介质,用于存储进行人脸图像超分辨率重建的计算机程序,该计算机程序在计算机上运行时执行以下步骤:
步骤S1:采用多任务人脸语义先验知识提取网络提取低分辨率人脸图像的两种人脸先验信息,两种人脸先验信息分别为face parsing maps和face landmark heatmaps;
步骤S2:构建人脸超分辨率重建网络,人脸超分辨率重建网络包括解码部分和编码部分;
步骤S3:将提取的两种人脸先验信息和人脸超分辨率重建网络的编码部分拼接合并后作为人脸超分辨率重建网络的解码部分的输入;
步骤S4:将人脸超分辨率重建网络的解码部分和编码部分、以及多任务人脸语义先验知识提取网络共同作为生成对抗网络的生成器G,并构建判别器D进行对抗训练,同时构建人脸超分辨率重建网络的整体损失函数;
步骤S5:输入低分辨率人脸图像并采用Adam最优化方法迭代更新人脸超分辨率重建网络的参数;
步骤S6:重复执行步骤S5直至整体损失函数收敛,并保存网络模型和参数。
一般计算机可读取介质的形式包括:软盘(floppy disk)、可挠性盘片(flexibledisk)、硬盘、磁带、任何其与的磁性介质、CD-ROM、任何其余的光学介质、打孔卡片(punchcards)、纸带(paper tape)、任何其余的带有洞的图案的物理介质、随机存取存储器(RAM)、可编程只读存储器(PROM)、可抹除可编程只读存储器(EPROM)、快闪可抹除可编程只读存储器(FLASH-EPROM)、其余任何存储器芯片或卡匣、或任何其余可让计算机读取的介质。指令可进一步被一传输介质所传送或接收。传输介质这一术语可包含任何有形或无形的介质,其可用来存储、编码或承载用来给机器执行的指令,并且包含数字或模拟通信信号或其与促进上述指令的通信的无形介质。传输介质包含同轴电缆、铜线以及光纤,其包含了用来传输一计算机数据信号的总线的导线。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。