一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于手绘素描寻找真实人脸的系统

2022-04-09 03:08:47 来源:中国专利 TAG:


1.本发明属于异质人脸识别技术领域,是一种基于手绘素描寻找真实人脸的系统。


背景技术:

2.素描人脸识别可以广泛应用于各个领域。图像风格的差异导致无法直接根据素描图像识别真实人脸,必须先进行风格转换,用素描图像生成真实人脸后进行识别。而素描图像生成的质量会直接对识别结果造成严重的影响。早期的图像风格转换主要是纹理合成问题,即在限定纹理合成的同时,从原图像合成纹理以保留原来图像的语义信息。传统的机器学习算法解决图像纹理合成,包括了重新采样给定源纹理来合成新的自然纹理,通过边缘方向信息控制纹理转换等。但是传统方法中当训练集与测试集差异较大时很难得到令人满意的结果,存在准确率差的问题。


技术实现要素:

3.本发明所要解决的技术问题在于提供一种基于手绘素描寻找真实人脸的系统,解决准备率差的问题。
4.本发明是这样实现的,
5.一种基于手绘素描寻找真实人脸的系统,该系统包括:
6.人脸重建模块,将获取的手绘通过生成器生成人脸,其中采用的生成器是基于u-net网络;
7.人脸检测模块,实时采集人脸重建模块生成的人脸,采用resnet18网络,对图像进行缩放,判断每个位置存在人脸的概率,使用非极大值抑制的算法,对人脸进行框选;
8.人脸比对模块,包括人脸关键点检测模块、特征提取模块以及判断人脸相似性模块分别进行人脸关键点检测、特征提取以及判断人脸相似性。
9.进一步地,所述生成器为两个,均采用u-net网络,下采样时经过四次卷积、池化、激活的操作,卷积核大小为3*3,池化选择2*2最大值池化,激活函数选择leakyrelu,且下采样时共享权重,上采样时经过四次反卷积、池化、激活、残差连接的操作,其中残差连接为拼接相同大小的特征张量,将自注意力子模块的输入经过下采样的特征空间。
10.进一步地,所述人脸重建模块还包括判别器用于在对人脸重建模块进行训练时,判断输入的成对的素描与对应的真实人脸中的真实人脸与素描生成的人脸的相似,并通过损失函数进行收敛,所述判别器采用马尔可夫判别器,所述损失函数包括网络损失、风格损失及特征损失。
11.进一步地,所述判别器将输入判别器的图像分块经过vgg网络,经过卷积、池化、激活操作,其中卷积核大小为3*3,池化为2*2最大池化,激活函数选用tanh,输入经过vgg后,得到多维特征空间,通过卷积操作得到n*n的矩阵,矩阵中的每个数据代表着一块图像为真的概率,将其取平均得到整个图像判别为真的概率;将判别器谱归一操作代替sigmoid函数。
12.进一步地,所述损失函数为:
[0013][0014][0015][0016][0017]
其中,p
data
(x,y)表示真实样本分布,p
noise
(x)为随机噪声分布,nd和nq为原图像与生成图像特征空间的像素个数。g(x)表示生成器函数,d(x)表示判别器函数,设置参数如下:
[0018]
λ=1;μ=100。
[0019]
进一步地,人脸检测模块采用resnet18模型对人脸进行框选,所述resnet18 模型是由4个由残差块组成的卷积神经网络,每个残差块有3个3*3卷积层及 1个1*1恒等映射的卷积层,加上第一个7
×
7卷积层和最后一个全连接层,共有18层,模型优化采用的是adam方法,损失函数采用的交叉熵损失,将训练好的网络resnet18模型的输入是64
×
64的人脸,将一个大小为224
×
224 的矩形框在缩放后的图片上从左到右,从上到下滑动,计算每个位置存在人脸的概率;最后得到的至少一个人脸框,使用一个非极大值抑制方法,将多余的框去掉,保留一个最好的框。
[0020]
进一步地,人脸关键点检测模块采用两个级联的cnn进行关键点检测,人脸关键点分为内部关键点和轮廓关键点,内部关键点采用四个层级的级联网络,其中,一级网络获得面部器官的边界框;二级网络的输出是内部关键点预测位置;三级网络依据不同器官进行从粗到精的定位;四级网络的输入是将三级网络的输出进行旋转,最终将内部关键点的位置进行输出;轮廓关键点,采用两个层级的级联网络进行检测,其中一级网络获得轮廓的边界框;二级网络预测轮廓关键点位置;两个级联cnn的输出进行叠加得到,根据定位到关键点进行相似变换,得到对齐后的人脸图片。
[0021]
进一步地,所述特征提取模块采用pca方法,找到投影特征空间,进行投影计算,计算出人脸的特征系数:读取数据库中每个人脸的图片矩阵,从图像矩阵的第一列开始取,依次取到最后一列,每一列首尾相连,构成一个维列向量。将每一幅人脸图像均表示成列向量,对列向量进行拼接转置构成一个人脸样本矩阵,对人脸样本矩阵求协方差,及特征值以及与特征值相对应的相互正交的特征向量,按照特征值降序的顺序将其对应的特征向量构成一个正交矩阵即人脸投影空间。
[0022]
进一步地,所述判断人脸相似性模块包括计算实时采集到的人脸与数据库中的人脸的特征系数的欧氏距离,设置一个阈值,判断两张人脸是否属于同一个人:通过k-l变换式进行投影计算,得出数据库中样本在人脸投影空间的投影特征系数,同样地,计算出人脸检测模块中输出的人脸的投影特征系数,分别计算其与数据库中样本中每个人脸的投影特征系数的欧式距离,通过计算出的欧氏距离判断实时检测的人脸与数据库中的人脸的相似度。
[0023]
进一步地,在训练阶段,数据库中的人脸为输入的素描对应的真实人脸。
[0024]
本发明与现有技术相比,有益效果在于:
[0025]
将本发明系统经过测试,在使用cufk数据集时,识别人脸的正确率为 100%,且生成图像与真实图像相似度在95%以上。
附图说明
[0026]
图1为人脸重建模块的结构示意图;
[0027]
图2为人脸关键点检测模块的检测流程图;
[0028]
图3为本发明系统的框图。
具体实施方式
[0029]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0030]
参见图1结合图2所示,一种基于手绘素描寻找真实人脸的系统,该系统包括:
[0031]
人脸重建模块,将获取的手绘通过生成器生成人脸,其中采用的生成器是基于u-net网络;
[0032]
人脸检测模块,实时采集人脸重建模块生成的人脸,采用resnet18网络,对图像进行缩放,判断每个位置存在人脸的概率,使用非极大值抑制的算法,对人脸进行框选;
[0033]
人脸比对模块,包括人脸关键点检测模块、特征提取模块以及判断人脸相似性模块分别进行人脸关键点检测、特征提取以及判断人脸相似性。
[0034]
人脸重建模块还包括判别器用于在对人脸重建模块进行训练时,判断输入的成对的素描与对应的真实人脸中的真实人脸与素描生成的人脸的相似,并通过损失函数进行收敛,所述判别器采用马尔可夫判别器,所述损失函数包括网络损失、风格损失及特征损失。图2中,g1和g3是生成器,d1和d2为判别器,b1和b2为残差块,c为自注意力模块。
[0035]
在使用前,对人脸人脸重建模块进行训练,在训练的阶段,采用cufs数据集,首先将用于训练人脸重建模块的素描及人脸进行裁剪至64*64大小,并进行配对处理。并按95:5的比例划分训练集与测试集。
[0036]
本发明中生成器是基于u-net网络,结合残差快及条件自注意力模型;判别器基于马尔可夫判别器,结合谱归一化,损失函数包括网络损失、风格损失及特征损失。
[0037]
需要两个生成器,均采用u-net网络,为结构对称网络,下采样时经过四次卷积、池化、激活的操作,卷积核大小为3*3,池化选择2*2最大值池化,激活函数选择leakyrelu,且下采样时共享权重,有提高仿射不变性及训练效率的好处。上采样时经过四次反卷积、池化、激活、残差连接的操作,其中残差连接为拼接相同大小的特征张量,可以在一定程度上避免梯度消失。本发明还在生成器中加入了自注意力子模块,由于人脸具有较强的位置特征,而传统卷积神经网络的不关注位置信息,更关注局部细节,因此自注意力子模块可以很好的关注人脸特征的位置信息。自注意力模块的输入为经过下采样的得到的特征,将该特征分别通过三个不同的1*1卷积核(卷积核数不一样)后得到三个特征子空间f、g、h,将任意一个子空间转置后与另一个相乘再与剩下的一个拼接,例如:将f转置与g相乘再与h拼接得到新的特征子空间,将其作为上采样的输入可以得到关注位置信息后的重建图像。特征子
空间输入到上采样,两个生成器的输出进行重叠。
[0038]
在训练的过程中用到判别器,判别器采用马尔科夫判别器,将输入判别器的图像分块经过vgg网络,经过卷积、池化、激活操作,其中卷积核大小为3*3,池化为2*2最大池化,激活函数选用tanh,输入经过vgg后,得到多维特征空间,通过卷积操作得到n*n的矩阵,矩阵中的每个数据代表着一块图像为真的概率,将其取平均得到整个图像判别为真的概率,通过提高感受野的方式,提高了生成图像的分辨率,本发明中将感受野设置为8*8。本发明将判别器(最后一层的sigmoid函数取消,并添加谱归一操作,谱归一是防止判别器梯度消失和梯度爆炸,它会将特征空间中同一通道任意两点的斜率控制在[-1,1]内。
[0039]
采用损失函数进行收敛,包括生成对抗网络的损失函数内容损失函数及像素损失函数其中生成对抗网络的损失函数关注整个生成网络与最优解的距离;像素损失函数关注原图像与生成图像的细节上的距离;内容损失函数关注原图像与生成图像经过vgg网络后特征空间上的距离,其中包括位置信息。将三个函数赋予不同权重得到人脸重建模块的损失函数其具体公式如下:
[0040][0041][0042][0043][0044]
其中p
data
(x,y)表示真实样本分布,p
noise
(x)为随机噪声分布,nd和nq为原图像与生成图像特征空间的像素个数。g(x)表示生成器函数,d(x)表示判别器函数。
[0045]
根据经验及测试结果,本发明中设置参数如下:
[0046]
λ=1;μ=100
[0047]
该网络使用adam优化,为了保证生成器与判别器的平衡,生成器的学习率设置为0.0001,判别器的学习率设置为0.0004。
[0048]
人脸检测模块,包括人脸采集模块和人脸框选模块,当不是素描时,可以通过人脸采集模块采集真实的人脸,人脸检测模块采用resnet18模型,该模型是由4个由残差块组成的卷积神经网络,每个残差块有3个3*3卷积层及1个 1*1恒等映射的卷积层,加上第一个7
×
7卷积层和最后一个全连接层,共有18 层。模型优化采用的是adam算法,损失函数采用的交叉熵损失。由于训练好的网络resnet18的输入是64
×
64的人脸,实时检测的人脸大小不定,要对图片大小进行缩放变换;将一个大小为224
×
224的矩形框在缩放后的图片上从左到右,从上到下滑动,计算每个位置存在人脸的概率;最后得到的人脸框,可能不止一个,需要使用一个非极大值抑制的算法,将多余的框去掉,保留最好的。
[0049]
参见图2所示,人脸关键点检测对素描生成的人脸进行人脸关键点检测。针对内部关键点和外部关键点,对68个人脸关键点,采用两个级联的cnn进行关键点检测。内部51个关键点,采用四个层级的级联网络进行检测。其中,一级网络主要作用是获得面部器官的边界框;二级网络的输出是51个关键点预测位置,这里起到一个粗定位作用,目的是为了给三级网络进行初始化;三级网络会依据不同器官进行从粗到精的定位;四级网络的输入是将
三级网络的输出进行一定的旋转,最终将51个关键点的位置进行输出。外部17个关键点,仅采用两个层级的级联网络进行检测。一级网络与内部关键点检测的作用一样,主要是获得轮廓的边界框;二级网络直接预测17个关键点,没有从粗到精定位的过程,因为轮廓关键点的区域较大,网络可以再保证提取精度的前提下,提高训练效率。最终面部68个关键点由两个级联cnn的输出进行叠加得到。根据定位到的68个关键点进行相似变换,得到对齐后的人脸图片。
[0050]
特征提取模块对对齐后的人脸图片以及数据库中每个人脸的图片矩阵从图像矩阵的第一列开始取,依次取到最后一列,每一列首尾相连,构成一个维列向量。将每一幅人脸图像均表示成列向量,对列向量进行拼接转置构成一个人脸样本矩阵。对人脸样本矩阵求协方差,及特征值以及与特征值相对应的相互正交的特征向量,按照特征值降序的顺序将其对应的特征向量构成一个正交矩阵即各自一个人脸投影空间。通过k-l变换式进行投影计算,得到人脸投影空间的投影特征系数。同样地,计算出人脸检测模块中输出的人脸的投影特征系数,计算每个人脸的投影特征系数的欧式距离。,通过计算出的欧氏距离判断实时检测的人脸与数据库中的人脸的相似度,本发明中将阈值设置为1.20,当欧式距离小于1.20时,认为识别到了数据库中存在的人脸。将人脸比对结果可视化至一个微型嵌入式系统。
[0051]
测试时将人脸重建模块生成的人脸加入到数据库中,用数据集中给出的人脸图片当作真实人脸,经过测试本系统在使用cufk数据集时,识别人脸的正确率为100%,且生成图像与真实图像相似度在95%以上。
[0052]
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献