具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
图1是根据一示例性公开实施例示出的一种面部图像生成方法的流程图。如图1所示,所述方法包括如下步骤:
S11、基于轮廓提取模型从待处理面部图像中获取第一面部轮廓图。
面部图像中包含多条具有人物特点的线条,如面部边缘线条、五官边缘线条、皱纹线条、肌肉走向线条、头发走向线条、疤痕胎记线条等,基于轮廓提取模型从面部图像中将此类线条提取并生成面部轮廓图。
如图2所示的是面部图像图2a和与面部图像图对应的面部轮廓图2b。通过面部轮廓图,可以获取人的人物特点,例如人物的五官形状、面部形状等,还可以通过皱纹线条等判断人物的年龄段。
在一种可能的实现方式中,可以通过如下方式获取所述第一面部轮廓图:
首先,从所述待处理面部图像中获取canny轮廓图层。
其中,canny轮廓图层可以通过对待处理面部图像进行canny边缘检测算法处理获得。
然后,从所述待处理面部图像中获取由预设采样点就近连线得到的采样轮廓图层,其中,所述预设采样点拟合于面部边缘和五官边缘。
其中,采样点的数目为可以实现连线结果且不会过拟合的任意值,在不出现过拟合的情况下,采样点的数目越多,采样轮廓图层的精度更高,与面部图像的重合率也越大。
最后,将所述canny轮廓图层与所述采样轮廓图层结合,得到所述第一面部轮廓图。
值得说明的是,canny轮廓图层与采样轮廓图层的结合,可以仅仅是两个图层合并为同一个面部轮廓图文件,从文件中可以查看并使用canny轮廓图和采样轮廓图重叠后的轮廓图,也可以分别查看并使用canny轮廓图和采样轮廓图。
如图3所示,3a表示面部图像,3b表示从该面部图像中提取的canny轮廓图层,3c表示该面部图像中的采样点排列示意,3d表示该采样点连线形成的采样轮廓图层,3e表示该canny轮廓图层与该采样轮廓图层结合得到的面部轮廓图。
S12、基于预训练的轮廓改变模型,调整所述第一面部轮廓图中轮廓线条,得到第二面部轮廓图。
如图4所示,4a表示第一面部轮廓图,4b表示基于轮廓改变模型得到的第二面部轮廓图。
其中,所述轮廓改变模型通过第一样本轮廓图集和第二样本轮廓图集训练得到,所述第一样本轮廓图集对应的人物年龄段与所述第二样本轮廓图集对应的人物年龄段不同。
所述轮廓改变模型的训练过程包括:重复执行基于所述轮廓改变模型将所述第一样本轮廓图集中的第一样本轮廓图转换为预测轮廓图,并获取所述预测轮廓图的第一特征信息与所述第二样本轮廓图集的第二特征信息的第一匹配度,并根据所述第一匹配度调整所述轮廓改变模型中的参数的步骤,直至获取的所述第一匹配度符合第一匹配度条件。
该第一样本轮廓图集与第二样本轮廓图集对应的年龄段不同,且可以根据应用需要对第一样本轮廓图集与第二样本轮廓图集的内容进行调整,例如,当需要从年轻面部图像中生成老年面部图像时,可以将第一样本轮廓图集设置为年轻的面部轮廓图的图集,将第二样本轮廓图集设置为老年的面部轮廓的图集,反之亦然;另外,该年龄段也可以被设置为某一特定的年龄段,例如,可以将第一样本轮廓图集设置为40至45岁的面部轮廓图的图集,将第二样本轮廓图集设置为10至15岁的面部轮廓图的图集。这样,通过这样的一选定的年龄段的面部轮廓图的图集和另一选定的年龄段的面部轮廓图的图集训练得到的轮廓改变模型,可以实现从一选定的年龄段的面部轮廓图到另一选定的年龄段的面部轮廓图的转换。
特征信息是某一年龄段的面部轮廓图所独有的可以提现年龄特征的信息,不同的年龄段的面部轮廓图中的线条走向和数量不同。
例如,年龄较大面部的面部轮廓图中的线条数量多于年龄较小面部的面部轮廓图,且不同年龄段的面部轮廓图中特定区域(如眼周、唇周等)内的线条的数量可以量化在不同的范围;再比如,年龄较大面部的面部轮廓图中的某些区域内的线条走向与年龄较小面部的面部轮廓图不同,多呈现向下弯曲的趋势,且不同年龄段的面部轮廓中的线条弯曲程度可以量化在不同的范围。
该特征信息可以是一个年龄段的面部轮廓图中的轮廓线条所具有的特点被量化后得到的结果。
轮廓改变模型通过学习第二样本轮廓图集的特征信息,并改变第一样本轮廓图中的轮廓线条,使生成的预测轮廓图具有第二样本轮廓图集的第二特征。
可选地,可以通过判别器判断预测轮廓图的特征信息是否与第二特征信息相同,或判断预测轮廓图的特征信息中的各量化值是否属于第二特征信息中的各量化范围内,从判断结果得到第一匹配度。当第一匹配度不符合第一匹配度条件时,继续改变轮廓改变模型中的参数,直到轮廓改变模型生成的预测轮廓图具有第二样本轮廓图集的第二特征,亦即所述第一特征信息与第二特征信息的第一匹配度符合第一匹配度条件。
值得说明的是,由于人的年龄发生变化时,面部边缘线条(亦即脸型)、五官边缘线条基本不会发生改变,而其他的线条例如肌肉走向线条、皱纹线条等通常会发生显著变化。而在S11的一种可能的实现方式中获得的canny轮廓图层通常记录会发生显著变化的线条,而采样轮廓图层通常记录的是不会发生改变的线条。
因此,在一种可能的实现方式中,在通过S11的一种可能的实现方式中获得了包含canny轮廓图层和采样轮廓图层的第一面部轮廓图后,在基于与训练的轮廓改变模型得到第二面部轮廓图时,可以基于所述轮廓改变模型,调整所述第一面部轮廓图的所述canny轮廓图层中的轮廓线条,并将调整后的所述第一面部轮廓图作为所述第二面部轮廓图。
这样,在改变人物的面部轮廓图时可以保留人物的五官特征及脸型特征,使生成的面部轮廓图和后续生成的面部图像更具有人物特点。
在一种可选的实施方式中,所述轮廓改变模型通过所述第一样本轮廓图集、所述第二样本轮廓图集和逆改变模型训练得到。所述轮廓改变模型的训练过程包括:
重复执行如下步骤:
首先,基于所述轮廓改变模型将所述第一样本轮廓图集中的第一样本轮廓图转换为预测轮廓图,并获取所述预测轮廓图的第一特征信息与所述第二样本轮廓图集的第二特征信息的第一匹配度。
然后,基于所述逆改变模型将所述预测轮廓图转换为逆变轮廓图,获取所述逆变轮廓图的第三特征信息与所述第一样本轮廓图集中的第四特征信息的第二匹配度。
然后,根据所述第一匹配度和所述第二匹配度调整所述轮廓改变模型的参数,并调整所述逆改变模型的参数。
直至获取的所述第一匹配度符合第一匹配度条件,且获取的所述第二匹配度符合第二匹配度条件。
在使轮廓改变模型学习如何将具有第一样本轮廓图集的第四特征信息的轮廓图改变为具有第二特征信息的轮廓图的同时,逆改变模型也在学习如何将具有第二特征信息的轮廓图改变为具有第四特征信息的轮廓图。这样,在轮廓改变模型将第一样本轮廓图转换为预测轮廓图后,逆改变模型再将预测轮廓图转换为逆变轮廓图,通过逆变轮廓图的特征信息与第四特征信息之间的第二匹配度,可以了解到轮廓改变模型和逆改变模型的转换效果,通过第一匹配度,也可以了解到轮廓改变模型的转换效果。在循环学习过程中,使第一匹配度满足第一匹配度条件,且第二匹配度满足第二匹配度条件,从而使轮廓改变模型的转换效果更佳。
并且,在实际运用中,例如,如果在训练了可以实现从年轻到年老的轮廓图的转换的轮廓改变模型后,又需要从年老的图像中生成年轻的图像,则不需要再次训练从年老到年轻的轮廓改变模型,而是用逆改变模型替换原本的轮廓改变模型,使原本的轮廓改变模型作为新的逆改变模型,就可以实现将轮廓图从年老到年轻的转化。
S13、基于预训练的图像生成模型将所述第二面部轮廓图转换为目标面部图像。
具体地,该图像生成模型基于学习结果,向第二面部轮廓图中填充符合轮廓线条走向的色块,以生成符合轮廓线条的与真实人物面部相似的面部图像。
如图5所示,5a表示第二面部轮廓图,5b表示基于图像生成模型得到的目标面部图像。
在一种可能的实现方式中,所述图像生成模型,通过第三样本轮廓图集和原始面部图集训练得到。所述第三样本轮廓图集包括,基于所述轮廓提取模型从所述原始面部图集中的原始面部图像中提取的第三样本轮廓图。
所述图像生成模型的训练过程包括:重复执行基于所述图像生成模型将所述第三样本轮廓图转换为样本生成图像,并获取所述样本生成图像和对应的原始面部图像的相似度,并根据所述相似度调整所述图像生成模型中的参数的步骤,直至获取的所述相似度符合预设相似度条件。
该第三样本轮廓图集的特征信息与第二样本轮廓图集的特征信息相同,也就是说,第三样本轮廓图集中收录的面部轮廓图,与第二样本轮廓图集中收录的面部轮廓图属于同一年龄段,特别地,该第三样本轮廓图集和第二样本轮廓图集可以是内容相同的图集。该第三样本轮廓图集是通过S11中相同的轮廓提取模型,从原始面部图集中提取得到。原始面部图集中收录的面部图像的年龄段,与第二样本轮廓图集、第三样本轮廓图集中的图像的年龄段相同,特别地,当第二样本轮廓图集与第三样本轮廓图集内容相同时,该第二样本轮廓图集也是从该原始面部图集中提取的。
为了使生成的图像更接近真实面部图像,基于所述图像生成模型将所述第三样本轮廓图转换得到的样本生成图像,与该样本轮廓图所对应的原始面部图像之间应当具有相似性。因此,在一种可选的实施方式中,可以用判别器对样本生成图像和与之对应的原始面部图进行对比判别,若两者的相似度符合不预设相似度条件,则对图像生成模型的函数进行修改,直至所述相似度符合所述相似度条件,亦即图像生成模型生成的图像与真实的面部图像接近。
值得说明的是,当需要生成的目标面部图像的年龄发生改变时,第二样本轮廓图集、第三样本轮廓图集和原始面部图集中收录的图像也会改变至与需要生成的图像的年龄一致,轮廓改变模型和图像生成模型也需要重新训练。
例如,当需要将40-50岁的面部图像转换为20-30岁的面部图像时,第一样本轮廓图集收录的是40-50岁的面部轮廓图,第二样本轮廓图集收录的是20-30岁的面部轮廓图,原始面部图集收录的是20-30岁的面部图像,第三样本轮廓图集收录的是与原始面部图集中的图像一一对应的面部轮廓图。
上述技术方案,至少能够达到以下技术效果:通过提取待处理面部图像的面部轮廓图,并调整面部轮廓图中的轮廓线条,再根据改变后的面部轮廓图的轮廓线条生成目标面部图像的方法,通过轮廓图很大程度地保留了面部的可识别性特征,再通过调整轮廓线条改变面部图像所传达的年龄信息,这样,在改变人物的面部轮廓图时可以保留人物的五官特征、脸型特征及面部细节特征,使生成的面部轮廓图和后续生成的面部图像更具有人物特点,因此,可以生成具有人物辨识度的年龄迁移图像。
与现有技术中利用不同年龄段的局部图像进行替换的方式不同,本公开的技术方案可以很大程度保留人物的独有特点。例如,如果人物的眼周有一条疤痕,如果采用现有技术中的方法,在对眼周图像进行替换以后,这条疤痕可能被替换的图像所遮盖,使人物面部的辨识度下降。但是如果采用本公开的技术方案,不对图像进行替换,而是基于面部轮廓图重新生成面部图像,减少了面部细节特点的丢失。
图6是根据一示例性公开实施例示出的另一面部图像生成方法的流程图。如图6所示,所述方法包括如下步骤:
S21、基于轮廓提取模型从待处理面部图像中获取第一面部轮廓图。
面部图像中包含多条具有人物特点的线条,如面部边缘线条、五官边缘线条、皱纹线条、肌肉走向线条、头发走向线条、疤痕胎记线条等,基于轮廓提取模型从面部图像中将此类线条提取并生成面部轮廓图。
如图2所示的是面部图像图2a和与面部图像图对应的面部轮廓图2b。通过面部轮廓图,可以获取人的人物特点,例如人物的五官形状、面部形状等,还可以通过皱纹线条等判断人物的年龄段。
在一种可能的实现方式中,可以通过如下方式获取所述第一面部轮廓图:
首先,从所述待处理面部图像中获取canny轮廓图层。
其中,canny轮廓图层可以通过对面部图像进行canny边缘检测算法处理获得。
然后,从所述待处理面部图像中获取由预设采样点就近连线得到的采样轮廓图层,其中,所述预设采样点拟合于面部边缘和五官边缘。
其中,采样点的数目为可以实现连线结果且不会过拟合的任意值,在不出现过拟合的情况下,采样点的数目越多,采样轮廓图层的精度更高,与面部图像的重合率也越大。
最后,将所述canny轮廓图层与所述采样轮廓图层结合,得到所述第一面部轮廓图。
值得说明的是,canny轮廓图层与采样轮廓图层的结合,可以仅仅是两个图层合并为同一个面部轮廓图文件,从文件中可以查看并使用canny轮廓图和采样轮廓图重叠后的轮廓图,也可以分别查看并使用canny轮廓图和采样轮廓图。
如图3所示,3a表示面部图像,3b表示从该面部图像中提取的canny轮廓图层,3c表示该面部图像中的采样点排列示意,3d表示该采样点连线形成的采样轮廓图层,3e表示该canny轮廓图层与该采样轮廓图层结合得到的面部轮廓图。
S22、基于预训练的轮廓改变模型调整所述第一面部轮廓图中轮廓线条,得到第二面部轮廓图。
如图4所示,4a表示第一面部轮廓图,4b表示基于轮廓改变模型得到的第二面部轮廓图。
其中,所述轮廓改变模型通过第一样本轮廓图集和第二样本轮廓图集训练得到,所述第一样本轮廓图集对应的人物年龄段与所述第二样本轮廓图集对应的人物年龄段不同。
所述轮廓改变模型的训练过程包括:重复执行基于所述轮廓改变模型将所述第一样本轮廓图集中的第一样本轮廓图转换为预测轮廓图,并获取所述预测轮廓图的第一特征信息与所述第二样本轮廓图集的第二特征信息的第一匹配度,并根据所述第一匹配度调整所述轮廓改变模型中的参数的步骤,直至获取的所述第一匹配度符合第一匹配度条件。
该第一样本轮廓图集与第二样本轮廓图集对应的年龄段不同,且可以根据应用需要对第一样本轮廓图集与第二样本轮廓图集的内容进行调整,例如,当需要从年轻面部图像中生成老年面部图像时,可以将第一样本轮廓图集设置为年轻的面部轮廓图的图集,将第二样本轮廓图集设置为老年的面部轮廓的图集,反之亦然;另外,该年龄段也可以被设置为某一特定的年龄段,例如,可以将第一样本轮廓图集设置为40至45岁的面部轮廓图的图集,将第二样本轮廓图集设置为10至15岁的面部轮廓图的图集。这样,通过这样的一选定的年龄段的面部轮廓图的图集和另一选定的年龄段的面部轮廓图的图集训练得到的轮廓改变模型,可以实现从一选定的年龄段的面部轮廓图到另一选定的年龄段的面部轮廓图的转换。
特征信息是某一年龄段的面部轮廓图所独有的可以提现年龄特征的信息,不同的年龄段的面部轮廓图中的线条走向和数量不同。
例如,年龄较大面部的面部轮廓图中的线条数量多于年龄较小面部的面部轮廓图,且不同年龄段的面部轮廓图中特定区域(如眼周、唇周等)内的线条的数量可以量化在不同的范围;再比如,年龄较大面部的面部轮廓图中的某些区域内的线条走向与年龄较小面部的面部轮廓图不同,多呈现向下弯曲的趋势,且不同年龄段的面部轮廓中的线条弯曲程度可以量化在不同的范围。
该特征信息可以是一个年龄段的面部轮廓图中的轮廓线条所具有的特点被量化后得到的结果。
轮廓改变模型通过学习第二样本轮廓图集的特征信息,并改变第一样本轮廓图中的轮廓线条,使生成的预测轮廓图具有第二样本轮廓图集的第二特征。
可选地,可以通过判别器判断预测轮廓图的特征信息是否与第二特征信息相同,或判断预测轮廓图的特征信息中的各量化值是否属于第二特征信息中的各量化范围内,从判断结果得到第一匹配度。当第一匹配度不符合第一匹配度条件时,继续改变轮廓改变模型中的参数,直到轮廓改变模型生成的预测轮廓图具有第二样本轮廓图集的第二特征,亦即所述第一特征信息与第二特征信息的第一匹配度符合第一匹配度条件。
值得说明的是,由于人的年龄发生变化时,面部边缘线条(亦即脸型)、五官边缘线条基本不会发生改变,而其他的线条例如肌肉走向线条、皱纹线条等通常会发生显著变化。而在S21的一种可能的实现方式中获得的canny轮廓图层通常记录会发生显著变化的线条,而采样轮廓图层通常记录的是不会发生改变的线条。
因此,在一种可能的实现方式中,在通过S21的一种可能的实现方式中获得了包含canny轮廓图层和采样轮廓图层的第一面部轮廓图后,在基于与训练的轮廓改变模型得到第二面部轮廓图时,可以基于所述轮廓改变模型调整所述第一面部轮廓图的所述canny轮廓图层中的轮廓线条,并将调整后的所述第一面部轮廓图作为所述第二面部轮廓图。
这样,在改变人物的面部轮廓图时可以保留人物的五官特征及脸型特征,使生成的面部轮廓图和后续生成的面部图像更具有人物特点。
在一种可选的实施方式中,所述轮廓改变模型通过所述第一样本轮廓图集、所述第二样本轮廓图集和逆改变模型训练得到。所述轮廓改变模型的训练过程包括:
重复执行如下步骤:
首先,基于所述轮廓改变模型将所述第一样本轮廓图集中的第一样本轮廓图转换为预测轮廓图,并获取所述预测轮廓图的第一特征信息与所述第二样本轮廓图集的第二特征信息的第一匹配度。
然后,基于所述逆改变模型将所述预测轮廓图转换为逆变轮廓图,获取所述逆变轮廓图的第三特征信息与所述第一样本轮廓图集中的第四特征信息的第二匹配度。
然后,根据所述第一匹配度和所述第二匹配度调整所述轮廓改变模型的参数,并调整所述逆改变模型的参数。
直至获取的所述第一匹配度符合第一匹配度条件,且获取的所述第二匹配度符合第二匹配度条件。
在使轮廓改变模型学习如何将具有第一样本轮廓图集的第四特征信息的轮廓图改变为具有第二特征信息的轮廓图的同时,逆改变模型也在学习如何将具有第二特征信息的轮廓图改变为具有第四特征信息的轮廓图。这样,在轮廓改变模型将第一样本轮廓图转换为预测轮廓图后,逆改变模型再将预测轮廓图转换为逆变轮廓图,通过逆变轮廓图的特征信息与第四特征信息之间的第二匹配度,可以了解到轮廓改变模型和逆改变模型的转换效果,通过第一匹配度,也可以了解到轮廓改变模型的转换效果。在循环学习过程中,使第一匹配度满足第一匹配度条件,且第二匹配度满足第二匹配度条件,从而使轮廓改变模型的转换效果更佳。
并且,在实际运用中,例如,如果在训练了可以实现从年轻到年老的轮廓图的转换的轮廓改变模型后,又需要从年老的图像中生成年轻的图像,则不需要再次训练从年老到年轻的轮廓改变模型,而是用逆改变模型替换原本的轮廓改变模型,使原本的轮廓改变模型作为新的逆改变模型,就可以实现将轮廓图从年老到年轻的转化。
S23、基于标签提取模型提取所述待处理面部图像的目标标签信息。
值得说明的是,本步骤可以发生在S24之前的任一步骤之前或之后,或与S24之前的任一步骤同时发生。本实施例中将其设定于步骤S22之后、步骤S24之前仅是一种示例性的说明,在其他的实施方式中,本步骤也可以发生在S21之前、S21之后或与S21同时发生,或者发生在S22之前、S22之后或与S22同时发生。
其中,目标标签信息包括用于表征同一面部部位的不同属性的向量。可选地,标签信息可以是一种多维的语义向量,每一维度表征着面部部位的不同属性。在使用时,可以将向量进行复制,生成多维的矩阵,以使矩阵维度与输入的轮廓图的分辨率相适应。例如,在实际运用中,该标签信息可以是512维的向量,输入的轮廓图的分辨率可以是256×256,因此,可以将该向量复制128次,生成256×256维的矩阵,与轮廓图的分辨率相适应。
该标签信息可以包含面部部位的不同属性值,可以体现面部的细节。例如,该标签信息中可以包括眼睛的颜色、头发的颜色、皮肤的颜色、皮肤质量等信息,基于这些信息,图像生成模型可以生成更具人物原本的特点的面部图像。
S24、基于预训练的所述图像生成模型和所述目标标签信息将所述第二面部轮廓图转换为所述目标面部图像。
具体地,该图像生成模型基于学习结果,向第二面部轮廓图中填充符合轮廓线条走向的色块,以生成符合轮廓线条的与真实人物面部相似的面部图像。
如图5所示,5a表示第二面部轮廓图,5b表示基于图像生成模型得到的目标面部图像。
在一种可能的实现方式中,所述图像生成模型由所述第三样本轮廓图集、所述原始面部图集和样本标签信息训练得到。所述样本标签信息为基于所述标签提取模型从所述原始面部图集中提取的标签信息。
所述图像生成模型的训练过程包括:重复执行基于所述样本标签信息,基于所述图像生成模型将第三样本轮廓图集中的第三样本轮廓图转换为样本生成图像,并获取所述样本生成图像和对应的原始面部图像的相似度,并根据所述相似度调整所述图像生成模型中的参数的步骤,直至获取的所述相似度符合预设相似度条件。
也就是说,在图像生成模型的训练过程中,也许要对训练样本(即第三样本轮廓图)提取样本标签信息,并基于样本标签信息生成样本生成图像。重复这样的训练过程,可以使图像生成模型掌握如何应用标签信息生成与真实的面部图像更相似的图像。
该第三样本轮廓图集的特征信息与第二样本轮廓图集的特征信息相同,也就是说,第三样本轮廓图集中收录的面部轮廓图,与第二样本轮廓图集中收录的面部轮廓图属于同一年龄段,特别地,该第三样本轮廓图集和第二样本轮廓图集可以是内容相同的图集。该第三样本轮廓图集是基于S21中相同的轮廓提取模型,从原始面部图集中提取得到。原始面部图集中收录的面部图像的年龄段,与第二样本轮廓图集、第三样本轮廓图集中的图像的年龄段相同,特别地,当第二样本轮廓图集与第三样本轮廓图集内容相同时,该第二样本轮廓图集也是从该原始面部图集中提取的。
为了使生成的图像更接近真实面部图像,基于所述图像生成模型根据样本标签信息将所述第三样本轮廓图转换得到的样本生成图像,与该样本轮廓图所对应的原始面部图像之间应当具有相似性。因此,在一种可选的实施方式中,可以用判别器对样本生成图像和与之对应的原始面部图进行对比判别,若两者的相似度符合不预设相似度条件,则对图像生成模型的函数进行修改,直至所述相似度符合所述相似度条件,亦即图像生成模型生成的图像与真实的面部图像接近。
值得说明的是,当需要生成的目标面部图像的年龄发生改变时,第二样本轮廓图集、第三样本轮廓图集和原始面部图集中收录的图像也会改变至与需要生成的图像的年龄一致,轮廓改变模型和图像生成模型也需要重新训练。
例如,当需要将40-50岁的面部图像转换为20-30岁的面部图像时,第一样本轮廓图集收录的是40-50岁的面部轮廓图,第二样本轮廓图集收录的是20-30岁的面部轮廓图,原始面部图集收录的是20-30岁的面部图像,第三样本轮廓图集收录的是与原始面部图集中的图像一一对应的面部轮廓图。
上述技术方案,至少能够达到以下技术效果:通过提取待处理面部图像的面部轮廓图和目标标签信息,并调整面部轮廓图中的轮廓线条,再根据目标标签信息和改变后的面部轮廓图的轮廓线条生成目标面部图像的方法,通过轮廓图及目标标签信息很大程度地保留了面部的可识别性特征,再通过调整轮廓线条改变面部图像所传达的年龄信息,这样,在改变人物的面部轮廓图时可以保留人物的五官特征、脸型特征及面部细节特征,使生成的面部轮廓图和后续生成的面部图像更具有人物特点,因此,可以生成具有人物辨识度的年龄迁移图像。
与现有技术中利用不同年龄段的局部图像进行替换的方式不同,本公开的技术方案可以很大程度保留人物的独有特点。例如,如果人物的眼周有一条疤痕,如果采用现有技术中的方法,在对眼周图像进行替换以后,这条疤痕可能被替换的图像所遮盖,使人物面部的辨识度下降。但是如果采用本公开的技术方案,不对图像进行替换,而是基于面部轮廓图重新生成面部图像,减少了面部细节特点的丢失。
图7是根据一示例性公开实施例示出的一种面部图像生成装置700,所述装置700包括轮廓提取模块701、轮廓调整模块702和图像生成模块703。
所述轮廓提取模块701用于基于轮廓提取模型从待处理面部图像中获取第一面部轮廓图。
所述轮廓调整模块702,用于基于预训练的轮廓改变模型调整所述第一面部轮廓图中轮廓线条,得到第二面部轮廓图。
所述图像生成模块703,用于基于预训练的图像生成模型将所述第二面部轮廓图转换为目标面部图像。
其中,所述轮廓改变模型通过第一样本轮廓图集和第二样本轮廓图集训练得到,所述第一样本轮廓图集对应的人物年龄段与所述第二样本轮廓图集对应的人物年龄段不同。所述轮廓改变模型的训练过程包括:重复执行基于所述轮廓改变模型将所述第一样本轮廓图集中的第一样本轮廓图转换为预测轮廓图,并获取所述预测轮廓图的第一特征信息与所述第二样本轮廓图集的第二特征信息的第一匹配度,并根据所述第一匹配度调整所述轮廓改变模型中的参数的步骤,直至获取的所述第一匹配度符合第一匹配度条件。
可选地,所述图像生成模型703,通过第三样本轮廓图集和原始面部图集训练得到;所述第三样本轮廓图集包括,基于所述轮廓提取模型从所述原始面部图集中的原始面部图像中提取的第三样本轮廓图;所述图像生成模型的训练过程包括:重复执行基于所述图像生成模型将所述第三样本轮廓图转换为样本生成图像,并获取所述样本生成图像和对应的原始面部图像的相似度,并根据所述相似度调整所述图像生成模型中的参数的步骤,直至获取的所述相似度符合预设相似度条件。
可选地,所述装置700还包括:标签提取模块,用于基于标签提取模型提取所述待处理面部图像的目标标签信息,其中,目标标签信息包括用于表征同一面部部位的不同属性的向量;所述图像生成模块,用于基于预训练的所述图像生成模型和所述目标标签信息将所述第二面部轮廓图转换为所述目标面部图像;其中,所述图像生成模型由所述第三样本轮廓图集、所述原始面部图集和样本标签信息训练得到;所述样本标签信息为基于所述标签提取模型从所述原始面部图集中提取的标签信息;所述图像生成模型的训练过程包括:重复执行基于所述样本标签信息,基于所述图像生成模型将第三样本轮廓图集中的第三样本轮廓图转换为样本生成图像,并获取所述样本生成图像和对应的原始面部图像的相似度,并根据所述相似度调整所述图像生成模型中的参数的步骤,直至获取的所述相似度符合预设相似度条件。
可选地,所述轮廓提取模块701,用于从所述待处理面部图像中获取canny轮廓图层;从所述待处理面部图像中获取由预设采样点就近连线得到的采样轮廓图层,其中,所述预设采样点拟合于面部边缘和五官边缘;将所述canny轮廓图层与所述采样轮廓图层结合,得到所述第一面部轮廓图。
可选地,所述轮廓调整模块702,用于基于所述轮廓改变模型调整所述第一面部轮廓图的所述canny轮廓图层中的轮廓线条;将调整后的所述第一面部轮廓图作为所述第二面部轮廓图。
可选地,所述轮廓改变模型通过所述第一样本轮廓图集、所述第二样本轮廓图集和逆改变模型训练得到;所述轮廓改变模型的训练过程包括:重复执行如下步骤:基于所述轮廓改变模型将所述第一样本轮廓图集中的第一样本轮廓图转换为预测轮廓图,并获取所述预测轮廓图的第一特征信息与所述第二样本轮廓图集的第二特征信息的第一匹配度;基于所述逆改变模型将所述预测轮廓图转换为逆变轮廓图,获取所述逆变轮廓图的第三特征信息与所述第一样本轮廓图集中的第四特征信息的第二匹配度;根据所述第一匹配度和所述第二匹配度调整所述轮廓改变模型的参数,并调整所述逆改变模型的参数;直至获取的所述第一匹配度符合第一匹配度条件,且获取的所述第二匹配度符合第二匹配度条件。
上述技术方案,至少能够达到以下技术效果:通过提取待处理面部图像的面部轮廓图,并调整面部轮廓图中的轮廓线条,再根据改变后的面部轮廓图的轮廓线条生成目标面部图像的方法,通过轮廓图很大程度地保留了面部的可识别性特征,再通过调整轮廓线条改变面部图像所传达的年龄信息,这样,在改变人物的面部轮廓图时可以保留人物的五官特征、脸型特征及面部细节特征,使生成的面部轮廓图和后续生成的面部图像更具有人物特点,因此,可以生成具有人物辨识度的年龄迁移图像。
与现有技术中利用不同年龄段的局部图像进行替换的方式不同,本公开的技术方案可以很大程度保留人物的独有特点。例如,如果人物的眼周有一条疤痕,如果采用现有技术中的方法,在对眼周图像进行替换以后,这条疤痕可能被替换的图像所遮盖,使人物面部的辨识度下降。但是如果采用本公开的技术方案,不对图像进行替换,而是基于面部轮廓图重新生成面部图像,减少了面部细节特点的丢失。
本公开实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现所述面部图像生成的方法的步骤。
本公开实施例还提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现所述面部图像生成的方法的步骤。
图8是根据一示例性实施例示出的一种电子设备800的框图。如图8所示,该电子设备800可以包括:处理器801,存储器802。该电子设备800还可以包括多媒体组件803,输入/输出(I/O)接口804,以及通信组件805中的一者或多者。
其中,处理器801用于控制该电子设备800的整体操作,以完成上述的面部图像生成的方法中的全部或部分步骤。存储器802用于存储各种类型的数据以支持在该电子设备800的操作,这些数据例如可以包括用于在该电子设备800上操作的任何应用程序或方法的指令,以及指令相关的数据,例如本公开实施例中的各模型训练需要的数据、待处理的图像、中间处理的图像及标签信息等。该存储器802可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-OnlyMemory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-OnlyMemory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件803可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器802或通过通信组件805发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口804为处理器801和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件805用于该电子设备800与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件805可以包括:Wi-Fi模块,蓝牙模块,NFC模块。
在一示例性实施例中,电子设备800可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的面部图像生成的方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的面部图像生成的方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器802,上述程序指令可由电子设备800的处理器801执行以完成上述的面部图像生成的方法。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。