图像处理方法、装置和存储介质及电子设备
文献发布时间:2023-06-19 13:46:35
技术领域
本发明涉及计算机领域,具体而言,涉及一种图像处理方法、装置和存储介质及电子设备。
背景技术
近年来妆容迁移(将参考图中的面部妆容迁移至原图中的人脸)的应用越发广泛,例如用户将某明星的精致妆容转移至自己提供的原图上,以最小的人物、物力地消耗满足了用户对精致妆容的需求;再例如主播在直播过程中利用妆容迁移技术为观众呈现精致妆容,省去了备置妆容的时间等。
但在没对齐的原图和参考图之间完成妆容迁移是一件困难的事情,而相关技术往往是通过计算两幅图像(原图和参考图)之间的像素对应关系来克服这个困难,但在有限的计算成本下,对图像的处理准确性也有限,进而导致妆容的迁移不够平滑,甚至迁移妆容后的图像存在失真的严重问题。即,相关技术在妆容迁移的场景下存在图像处理的准确性较低的问题。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种图像处理方法、装置和存储介质及电子设备,以至少解决妆容迁移的场景下图像处理的准确性较低的技术问题。
根据本发明实施例的一个方面,提供了一种图像处理方法,包括:从参考人像的第一上妆脸部图像中提取至少两个部位妆容信息,其中,上述至少两个部位妆容信息用于表示上述参考人像的脸部的至少两个不同部位的妆容风格;将上述至少两个部位妆容信息进行融合,以得到目标妆容信息,其中,上述目标妆容信息用于表示上述第一上妆脸部图像的第一整体妆容风格;使用上述目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像,其中,上述第二上妆脸部图像的第二整体妆容风格与上述第一整体妆容风格之间的风格相似度大于等于第一阈值。
根据本发明实施例的另一方面,还提供了一种图像处理装置,包括:第一提取单元,用于从参考人像的第一上妆脸部图像中提取至少两个部位妆容信息,其中,上述至少两个部位妆容信息用于表示上述参考人像的脸部的至少两个不同部位的妆容风格;第一融合单元,用于将上述至少两个部位妆容信息进行融合,以得到目标妆容信息,其中,上述目标妆容信息用于表示上述第一上妆脸部图像的第一整体妆容风格;第一生成单元,用于使用上述目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像,其中,上述第二上妆脸部图像的第二整体妆容风格与上述第一整体妆容风格之间的风格相似度大于等于第一阈值。
作为一种可选的方案,上述第一提起单元,包括:识别模块,用于对上述第一上妆脸部图像进行识别,以获得上述至少两个不同部位的N个部位元素,其中,N为大于等于2的整数;第一提取模块,用于提取上述至少两个部位元素中每个部位元素对应的妆容风格,以获得N个原始的元素编码,其中,不同的上述元素编码对应不同的上述妆容风格,上述至少两个部位妆容信息包括上述N个原始的元素编码。
作为一种可选的方案,上述第一融合单元,包括:映射模块,用于对上述N个原始的元素编码中的每个元素编码分别进行非线性映射,以获得N个目标元素编码;拼接模块,用于将上述N个目标元素编码进行拼接,以获得原始的风格编码,其中,不同的上述风格编码对应不同的整体妆容风格;输入模块,用于将上述原始的风格编码输入多层感知机,以获得目标风格编码,其中,上述目标妆容信息包括上述目标风格编码。
作为一种可选的方案,包括:识别单元,用于在上述使用上述目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像之前,对上述原始脸部图像进行识别,以获得第一身份信息,其中,上述第一身份信息用于表示上述待上妆人像的人像身份,第二上妆脸部图像对应的第二身份信息与上述第一身份信息之间的信息相似度大于等于第二阈值。
作为一种可选的方案,上述第一生成单元,包括:第二提取模块,用于提取上述目标妆容信息对应的M个妆容特征,其中,上述M个妆容特征中的每个妆容特征分别对应一个部位特征,M为大于等于2的整数;第三提取模块,用于提取上述第一身份信息对应的P个部位特征,其中,P为大于等于2的整数,且P大于等于M;第一获取模块,用于获取上述P个部位特征中与上述每个妆容特征依次对应的M个部位特征;融合模块,用于按照对应关系将上述M个部位特征中的每个部位特征与上述每个妆容特征进行融合,以获得M个目标特征;生成模块,用于根据上述M个目标特征生成上述第二上妆脸部图像。
作为一种可选的方案,上述装置还包括:第一获取单元,用于获取待迁移妆容的上述第一上妆脸部图像,以及待上妆的上述原始脸部图像;第一输入单元,用于将上述第一上妆脸部图像以及上述原始脸部图像输入妆容迁移模型,其中,上述妆容迁移模型为利用多个样本脸部图像进行训练后得到的用于迁移妆容的神经网络模型;第二获取单元,用于获取上述妆容迁移模型输出的上述第二上妆脸部图像。
作为一种可选的方案,包括:第三获取单元,用于在上述获取待移妆的上述第一上妆脸部图像,以及待上妆的上述原始脸部图像之前,获取上述多个样本脸部图像;标记单元,用于在上述获取待移妆的上述第一上妆脸部图像,以及待上妆的上述原始脸部图像之前,对每个上述样本脸部图像中的脸部图像类型进行标记,得到标记后的上述多个样本脸部图像;第二输入单元,用于在上述获取待移妆的上述第一上妆脸部图像,以及待上妆的上述原始脸部图像之前,将标记后的上述多个样本脸部图像输入初始妆容迁移模型,以训练得到上述妆容迁移模型。
作为一种可选的方案,上述第二输入单元,包括:第一执行模块,用于重复执行以下步骤,直至得到上述妆容迁移模型:第一确定模块,用于从标记后的上述多个样本脸部图像中确定出当前样本脸部图像,并确定当前妆容迁移模型,其中,上述当前样本脸部图像中包括标记的原始图像标识或上妆图像标识;第一输出模块,用于通过上述当前妆容迁移模型识别出当前妆容迁移结果,其中,在上述当前样本脸部图像中包括原始图像标识的情况下,上述当前妆容迁移结果为上述当前样本脸部图像对应的上妆样本脸部图像;在上述当前样本脸部图像中包括上妆图像标识的情况下,上述当前妆容迁移结果为上述当前样本脸部图像对应的下妆样本脸部图像;第一计算模块,用于在上述当前样本脸部图像中包括原始图像标识的情况下,计算上述上妆样本脸部图像在妆容图像域中的第一损失值;第二计算模块,用于在上述当前样本脸部图像中包括上妆图像标识的情况下,计算上述下妆样本脸部图像在素颜图像域中的第二损失值;第二获取模块,用于在上述第一损失值未达到第一收敛条件或上述第二损失值未达到第二收敛条件的情况下,获取下一个样本脸部图像作为上述当前样本脸部图像;第二确定模块,用于在上述第一损失值达到上述第一收敛条件或上述第二损失值达到上述第二收敛条件的情况下,确定上述当前妆容迁移模型为上述妆容迁移模型。
作为一种可选的方案,上述第二输入单元,包括:第二执行模块,用于重复执行以下步骤,直至得到上述妆容迁移模型:第二确定模块,用于从标记后的上述多个样本脸部图像中确定出当前样本脸部图像,并确定当前妆容迁移模型,其中,上述当前样本脸部图像中包括标记的图像身份标识,上述图像身份标识用于表示上述当前样本脸部图像对应的样本身份信息;第二输出模块,用于通过上述当前妆容迁移模型识别出当前妆容迁移结果;第三获取模块,用于获取上述当前妆容迁移结果对应的结果身份信息,并计算上述结果身份信息与上述对应的样本身份信息之间的第三损失值;第四获取模块,用于在上述第三损失值未达到第三收敛条件的情况下,获取下一个样本脸部图像作为上述当前样本脸部图像;第三确定模块,用于在上述第三损失值达到上述第三收条件的情况下,确定上述当前妆容迁移模型为上述妆容迁移模型。
作为一种可选的方案,上述第二输入单元,包括:第三执行模块,用于重复执行以下步骤,直至得到上述妆容迁移模型:第四确定模块,用于从标记后的上述多个样本脸部图像中确定出当前样本脸部图像,并确定当前妆容迁移模型,其中,上述当前样本脸部图像中包括标记的图像直方标识,上述图像直方标识用于表示上述当前样本脸部图像对应的图像直方图;第三输出模块,用于通过上述当前妆容迁移模型识别出当前妆容迁移结果;第三计算模块,用于计算上述当前妆容迁移结果对应的上妆样本脸部图像与上述对应的图像直方图之间的第四损失值;第五获取模块,用于在上述第四损失值未达到第四收敛条件的情况下,获取下一个样本脸部图像作为上述当前样本脸部图像;第四确定模块,用于在上述第四损失值达到上述第四收条件的情况下,确定上述当前妆容迁移模型为上述妆容迁移模型。
作为一种可选的方案,上述第二输入单元,包括:第三执行模块,用于重复执行以下步骤,直至得到上述妆容迁移模型:第四确定模块,用于从标记后的上述多个样本脸部图像中确定出当前样本脸部图像,并确定当前妆容迁移模型,其中,上述当前样本脸部图像中包括标记的图像直方标识,上述图像直方标识用于表示上述当前样本脸部图像对应的图像直方图;第三输出模块,用于通过上述当前妆容迁移模型识别出当前妆容迁移结果;第三计算模块,用于计算上述当前妆容迁移结果对应的上妆样本脸部图像与上述对应的图像直方图之间的第四损失值;第五获取模块,用于在上述第四损失值未达到第四收敛条件的情况下,获取下一个样本脸部图像作为上述当前样本脸部图像;第四确定模块,用于在上述第四损失值达到上述第四收条件的情况下,确定上述当前妆容迁移模型为上述妆容迁移模型。
作为一种可选的方案,上述装置还包括:第三提取单元,用于从参考人像的第一上妆脸部图像中提取至少两个部位妆容信息,其中,上述至少两个部位妆容信息用于表示上述参考人像的脸部的至少两个不同部位的妆容风格;第三融合单元,用于将上述至少两个部位妆容信息进行融合,以得到目标妆容信息,其中,上述目标妆容信息用于表示上述第一上妆脸部图像的第一整体妆容风格;第三生成单元,用于使用上述目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像,其中,上述第二上妆脸部图像的第二整体妆容风格与上述第一整体妆容风格之间的风格相似度大于等于第一阈值。
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述图像处理方法。
根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的图像处理方法。
在本发明实施例中,利用图像处理处理过程中的提取参考人像的第一上妆脸部图像中的至少两个部位妆容信息、融合上述至少两个部位妆容信息以获得目标妆容信息、使用上述目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像的方式,将妆容迁移分为部分妆容的提取、整体妆容风格的确定、整体妆容风格下的妆容分配三部分;
具体的,通过部分妆容的提取获取参考人像的待迁移妆容,通过整体妆容风格的确定获取待迁移妆容的标准妆容风格,通过整体妆容风格下的妆容分配将标准妆容风格下的部位妆容依次分配至待上妆人像的原始脸部图像;
在本发明实施例中,相比于将参考人像的妆容直接转移至待上妆人像的原始脸部图像,利用上述三部分的方式,最终完成妆容迁移所参考的目标妆容信息为根据参考人像的上妆脸部图像确定的标准妆容风格,而非参考人像的上妆脸部图像,可解除参考人像的上妆脸部图像与待上妆人像的原始脸部图像之间的直接耦合关系,进而达到了跳过对齐参考图像与原图像的这一操作的目的,以克服妆容迁移前需对齐参考图像与原图的困难,从而实现了无需进行图像对齐即可实现高精度的妆容转移的效果,解决了妆容迁移的场景下图像处理的准确性较低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的图像处理方法的应用环境的示意图;
图2是根据本发明实施例的一种可选的图像处理方法的流程的示意图;
图3是根据本发明实施例的一种可选的图像处理方法的示意图;
图4是根据本发明实施例的另一种可选的图像处理方法的示意图;
图5是根据本发明实施例的另一种可选的图像处理方法的示意图;
图6是根据本发明实施例的另一种可选的图像处理方法的示意图;
图7是根据本发明实施例的另一种可选的图像处理方法的示意图;
图8是根据本发明实施例的另一种可选的图像处理方法的示意图;
图9是根据本发明实施例的一种可选的图像处理装置的示意图;
图10是根据本发明实施例的一种可选的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,为方便理解本发明实施例,下面对本发明中所涉及的部分术语或名词进行解释说明:
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例提供的方案涉及人工智能的图像识别、图像处理、机器学习等技术,具体通过如下实施例进行说明:
根据本发明实施例的一个方面,提供了一种图像处理方法,可选地,作为一种可选的实施方式,上述图像处理方法可以但不限于应用于如图1所示的环境中。其中,可以但不限于包括用户设备102、网络110及服务器112,其中,该用户设备102上可以但不限于包括显示器108、处理器106及存储器104。
具体过程可如下步骤:
步骤S102,用户设备102获取妆容迁移界面上触发的妆容迁移请求,其中,该妆容迁移请求用于请求将“妆容来源”对应的参考图像上的妆容转移至“迁移对象”对应的原图像上;
步骤S104-S106,用户设备102通过网络110将妆容迁移请求发送给服务器112;
步骤S108,服务器112通过处理引擎116提取参考图像上的多个部位妆容,再对多个部位妆容进行融合处理,以获得参考图像的整体风格妆容;进一步,通过数据库114查找与上述整体风格妆容相匹配的部位妆容信息,再按照该部位妆容信息通过处理引擎116将原图像进行处理,以获得妆容迁移结果(即处理后的原图像);
步骤S110-S112,服务器112通过网络110将妆容迁移结果发送给用户设备102;
步骤S114,用户设备102中的处理器106将妆容迁移结果显示在显示器108中,如图1中所示的“妆容迁移后”对应的图像,此外“妆容迁移前”对应的图像用于为用户提供妆容迁移的前后比对,以提高妆容迁移的显示直观性;再者,还可将妆容迁移结果存储在存储器104中。
除图1示出的示例之外,上述步骤可以由用户设备102独立完成,即由用户设备102执行多个部位妆容的提取、多个部位妆容的融合、原图像的处理等步骤,从而减轻服务器的处理压力。该用户设备102包括但不限于手持设备(如手机)、笔记本电脑、台式电脑、车载设备等,本发明并不限制用户设备102的具体实现方式。
可选地,作为一种可选的实施方式,如图2所示,图像处理方法包括:
S202,从参考人像的第一上妆脸部图像中提取至少两个部位妆容信息,其中,至少两个部位妆容信息用于表示参考人像的脸部的至少两个不同部位的妆容风格;
S204,将至少两个部位妆容信息进行融合,以得到目标妆容信息,其中,目标妆容信息用于表示第一上妆脸部图像的第一整体妆容风格;
S206,使用目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像,其中,第二上妆脸部图像的第二整体妆容风格与第一整体妆容风格之间的风格相似度大于等于第一阈值。
可选地,在本实施例中,上述图像处理方法可以但不限于应用在妆容迁移场景下;具体的例如在直播场景中,在获取到主播账号所在的直播客户端触发的妆容迁移请求的情况下,从妆容迁移请求中携带的参考人像的上妆脸部图像中提取至少两个部位妆容信息(如鼻子妆容信息、眼睛妆容信息、嘴巴妆容信息等),并利用该至少两个部位妆容信息确定出参考人像的整体妆容风格,其中,上述确定出的整体妆容风格可以但不限于已预存在本地/服务器的数据库中,或者说上述确定出的整体妆容风格并不只是参考人像的整体妆容风格,其还是预存在本地/服务器的数据库中的某一标准妆容风格;进一步,按照上述确定出的整体妆容风格对主播账号所在的直播客户端的当前直播画面上所显示的人像图片进行图像处理(可理解为处理直播过程中的每一帧人像图片),进而实现在主播账号的直播过程中,持续显示妆容迁移后的主播人像。
再例如将上述图像处理方法应用在用户侧的目标客户端中,该目标客户端用于为用户提供妆容迁移服务,具体可参考图3所示,首先在目标客户端中展示妆容迁移界面,并在妆容迁移界面中为用户提供两个可执行上传操作的入口,其一为妆容来源入口,另一为迁移对象入口,如图3中的(a)所示;进一步如图3中的(b)所示,在对上述妆容来源入口以及迁移对象入口执行对应的上传操作后,将响应上传操作而获取到的参考图像302(参考人像的第一上妆脸部图像)以及原图像304(待上妆人像的原始脸部图像)显示在妆容迁移界面中;再者,响应于对妆容迁移界面上的虚拟按钮“开始迁移”执行的选中操作,将参考图像302对应的妆容风格迁移至原图像304上,以获得妆容迁移结果306,如图3中的(c)所示,妆容迁移结果306包括了妆容迁移前的图像(原图像304),还包括了妆容迁移后的图像,二者并列显示可为用户提供更直观的妆容前后比对,进而突出妆容迁移的效果。
可选地,在本实施例中,参考人像可以但不限于为脸部区域内或脸部区域周围带有妆容或妆容配件的人像,其中,妆容配件可以但不限于为道具、装饰、特效等,例如眼镜、耳环、项链、衣饰(如发带、头巾)等。
可选地,在本实施例中,脸部的部位可以但不限用于表示显示在脸部区域内或脸部区域周围的元素,如显示在脸部区域内的鼻子、嘴巴、眉毛、肌肤、额头、下巴、胡子、脸颊等;再如显示在脸部区域周围的头发、耳朵、脖子等;
进一步举例说明,假设从参考人像的第一上妆脸部图像中提取至少两个部位妆容信息包括鼻子妆容信息(如鼻子妆容编号为2)以及眼睛妆容信息(如眼睛妆容编号为3),则将鼻子妆容信息以及眼睛妆容信息进行融合后,以获得的第一上妆脸部图像的第一整体妆容风格(假设第一整体妆容风格编号为4),而编号为4的整体妆容风格所对应的鼻子妆容的编号为2(与第一上妆脸部图像中提取到的鼻子妆容信息一致),但编号为4的整体妆容风格所对应的眼睛妆容的编号为1(与第一上妆脸部图像中提取到的眼睛妆容信息不一致),那么可以但不限于采用编号为1的眼睛妆容以及编号为2的鼻子妆容对待上妆人像的原始脸部图像进行图像处理。
可选地,在本实施例中,除使用目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像外,还可以但不限于指定参考人像的第一上妆脸部图像中单独的部位妆容进行妆容迁移,如响应于目标迁移请求,从参考人像的第一上妆脸部图像中提取目标部位妆容信息(如嘴巴),进而按照目标部位妆容信息对待上妆人像的原始脸部图像中的嘴巴元素进行单独的图像处理;
可选地,在本实施例中,除指定参考人像的第一上妆脸部图像中单独的部位妆容进行妆容迁移外,还可以但不限于灵活指定不同参考人像的上妆脸部图像进行组合形式的妆容迁移,如响应于第一迁移请求,从第一参考人像的上妆脸部图像中提取第一部位妆容信息(如耳朵),进而按照第一部位妆容信息对待上妆人像的原始脸部图像中的耳朵元素进行单独的图像处理;再响应于第二迁移请求,从第二参考人像的上妆脸部图像中提取第二部位妆容信息(如眉毛),进而按照第二部位妆容信息对待上妆人像的原始脸部图像中的眉毛元素进行单独的图像处理;或,
响应于第三迁移请求,从第一参考人像的上妆脸部图像中提取第一部位妆容信息(如耳朵),从第二参考人像的上妆脸部图像中提取第二部位妆容信息(如眉毛),进而将第一部位妆容信息以及第二部位妆容信息进行融合,以得到组合妆容信息;再按照组合妆容信息对待上妆人像的原始脸部图像进行图像处理。
可选地,在本实施例中,待上妆人像可以但不限于为已上妆或未上妆(素颜)的人像,如待上妆人像为已上妆人像,则可以但不限于在使用目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像之前,将待上妆人像的初始脸部图像处理为未上妆(素颜)的原始脸部图像。
需要说明的是,利用图像处理处理过程中的提取参考人像的第一上妆脸部图像中的至少两个部位妆容信息、融合至少两个部位妆容信息以获得目标妆容信息、使用目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像的方式,将妆容迁移分为部分妆容的提取、整体妆容风格的确定、整体妆容风格下的妆容分配三部分;
具体的,通过部分妆容的提取获取参考人像的待迁移妆容,通过整体妆容风格的确定获取待迁移妆容的标准妆容风格,通过整体妆容风格下的妆容分配将标准妆容风格下的部位妆容依次分配至待上妆人像的原始脸部图像;
进一步举例说明,可选的例如图4所示,从参考人像的第一上妆脸部图像402中提取两个脸部部位404的妆容信息;将两个脸部部位404的妆容信息进行融合,以得到目标妆容信息406,其中,目标妆容信息用于表示第一上妆脸部图像402的第一整体妆容风格;使用目标妆容信息406对待上妆人像的原始脸部图像408进行图像处理,以获得对应的第二上妆脸部图像410,其中,第二上妆脸部图像410的第二整体妆容风格与第一整体妆容风格之间的风格相似度大于等于第一阈值。
通过本申请提供的实施例,相比于将参考人像的妆容直接转移至待上妆人像的原始脸部图像,利用上述三部分的方式,最终完成妆容迁移所参考的目标妆容信息为根据参考人像的上妆脸部图像确定的标准妆容风格,而非参考人像的上妆脸部图像,可解除参考人像的上妆脸部图像与待上妆人像的原始脸部图像之间的直接耦合关系,进而达到了跳过对齐参考图像与原图像的这一操作的技术目的,以克服妆容迁移前需对齐参考图像与原图的困难,从而实现了无需进行图像对齐即可实现高精度的妆容转移的技术效果。
作为一种可选的方案,从参考人像的第一上妆脸部图像中提取至少两个部位妆容信息,包括:
S1,对第一上妆脸部图像进行识别,以获得至少两个不同部位的N个部位元素,其中,N为大于等于2的整数;
S2,提取至少两个部位元素中每个部位元素对应的妆容风格,以获得N个原始的元素编码,其中,不同的元素编码对应不同的妆容风格,至少两个部位妆容信息包括N个原始的元素编码。
可选地,在本实施例中,部位元素的数量可以但不限于大于脸部部位的数量,如脸部部位可以但不限于理解为类型维度,如耳朵类型、眼睛类型、嘴巴类型等;而部位元素可以但不限于理解为类型维度下的元素维度,如通常情况下一个耳朵类型的脸部部位包括了数量为2的部位元素,例如左耳朵元素、右耳朵元素,而通常情况下一个嘴巴类型的脸部部位包括了数量为1的部位元素,即嘴巴元素。
需要说明的是,对第一上妆脸部图像进行识别,以获得至少两个不同部位的N个部位元素;提取至少两个部位元素中每个部位元素对应的妆容风格,以获得N个原始的元素编码。
进一步举例说明,可选的基于图4所示场景,继续如图5所示,对第一上妆脸部图像402进行识别,以获得至少两个不同部位的N个部位元素(如脸部部位404中包括的眼睛部位元素以及嘴巴部位元素);提取至少两个部位元素中每个部位元素对应的妆容风格,以获得N个原始的元素编码(如编码A3、编码B1),其中,编码A3用于表示A类3号,A类用于表示眼睛部位类型,而3号用于表示识别出来的妆容风格;同理,编码B1用于表示B类1号,B类用于表示嘴巴部位类型,而1号用于表示识别出来的妆容风格;
此外,按照目标妆容信息406对原始脸部图像408进行图像处理,以获得第二上妆脸部图像502,其中,第二上妆脸部图像502中的眼睛部位元素为编码A3对应的妆容风格,第二上妆脸部图像502中的嘴巴部位元素为编码B1对应的妆容风格。
作为一种可选的方案,将至少两个部位妆容信息进行融合,以得到目标妆容信息,包括:
S1,对N个原始的元素编码中的每个元素编码分别进行非线性映射,以获得N个目标元素编码;
S2,将N个目标元素编码进行拼接,以获得原始的风格编码,其中,不同的风格编码对应不同的整体妆容风格;
S3,将原始的风格编码输入多层感知机,以获得目标风格编码,其中,目标妆容信息包括目标风格编码。
可选地,在本实施例中,非线性映射可以但不限于为非线性算子,即不满足线性条件的算子。相比于对脸部特征进行全局平均池化以获得整体的妆容风格,先利用对N个原始的元素编码中的每个元素编码分别进行非线性映射,以获得更加解纠缠的N个目标元素编码,可以降低各个脸部部位的妆容信息会纠缠在一起的概率,还能实现单独提供局部或部分妆容迁移的效果;
再者,将N个目标元素编码进行拼接可以一方面在引入解纠缠的先验,另一方面赋予图像处理过程中更高灵活度的可操控性。
可选地,在本实施例中,多层感知机(Multlayer Perceptron,简称MLP)可以但不限于为人工神经网络(Artificial Neural Network,简称ANN),且除了包括输入层以及输出层外,还包括至少一个隐藏层,即多层感知机至少为三层结构,且层与层之间为全连接,其中,输入层为多层感知机的最底层,中间层为隐藏层,最后是输出层,其将输入的多个数据集映射到单一的输出的数据集上。
进一步举例说明,可选的基于图4所示场景,继续如图6所示,对第一上妆脸部图像402进行识别,以获得至少两个不同部位的N个部位元素(如脸部部位404中包括的眼睛部位元素以及嘴巴部位元素);提取至少两个部位元素中每个部位元素对应的妆容风格,以获得N个原始的元素编码(如编码A3、编码B1),其中,编码A3用于表示A类3号,A类用于表示眼睛部位类型,而3号用于表示识别出来的妆容风格;同理,编码B1用于表示B类1号,B类用于表示嘴巴部位类型,而1号用于表示识别出来的妆容风格;
进一步基于N个原始的元素编码进行拼接,以获得原始的风格编码3,其中,风格编码3包括编码A3和编码B3,其中,编码A3用于表示A类3号,A类用于表示眼睛部位类型,而3号用于表示识别出来的妆容风格;同理,编码B1用于表示B类1号,B类用于表示嘴巴部位类型,而3号用于表示识别出来的妆容风格;
此外,按照目标妆容信息406对原始脸部图像408进行图像处理,以获得第二上妆脸部图像502,其中,第二上妆脸部图像502中的眼睛部位元素为编码A3对应的妆容风格,第二上妆脸部图像502中的嘴巴部位元素为编码B3对应的妆容风格。
通过本申请提供的实施例,对N个原始的元素编码中的每个元素编码分别进行非线性映射,以获得N个目标元素编码;将N个目标元素编码进行拼接,以获得原始的风格编码,其中,不同的风格编码对应不同的整体妆容风格;将原始的风格编码输入多层感知机,以获得目标风格编码,其中,目标妆容信息包括目标风格编码,进而降低了各个脸部部位的妆容信息会纠缠在一起的概率,还实现了单独提供局部或部分妆容迁移的效果。
作为一种可选的方案,在使用目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像之前,包括:
对原始脸部图像进行识别,以获得第一身份信息,其中,第一身份信息用于表示待上妆人像的人像身份,第二上妆脸部图像对应的第二身份信息与第一身份信息之间的信息相似度大于等于第二阈值。
需要说明的是,如果最终利用上述图像处理技术以完成的妆容迁移结果与原始脸部图像无关,或相似度较低,那么就相当于把妆容迁移误解为图像切换了,或可理解为妆容迁移是将图像A2的妆容迁移至图像B1,以获得妆容迁移结果B2,但若获得的妆容迁移结是图像C2,且图像C2与原始图像的身份标识B无关,那么显然是不符合妆容迁移的本质的,即不够真实;进而为保留妆容迁移过程中原始脸部图像的身份标识,还需对原始脸部图像进行识别,以获得第一身份信息。
通过本申请提供的实施例,对原始脸部图像进行识别,以获得第一身份信息,达到了保留原始脸部图像的原始身份信息的目的,实现了提高妆容迁移的真实性的效果。
作为一种可选的方案,使用目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像,包括:
S1,提取目标妆容信息对应的M个妆容特征,其中,M个妆容特征中的每个妆容特征分别对应一个部位特征,M为大于等于2的整数;
S2,提取第一身份信息对应的P个部位特征,其中,P为大于等于2的整数,且P大于等于M;
S3,获取P个部位特征中与每个妆容特征依次对应的M个部位特征;
S4,按照对应关系将M个部位特征中的每个部位特征与每个妆容特征进行融合,以获得M个目标特征;
S5,根据M个目标特征生成第二上妆脸部图像。
需要说明的是,提取目标妆容信息对应的M个妆容特征;提取第一身份信息对应的P个部位特征;获取P个部位特征中与每个妆容特征依次对应的M个部位特征;按照对应关系将M个部位特征中的每个部位特征与每个妆容特征进行融合,以获得M个目标特征;根据M个目标特征生成第二上妆脸部图像。
进一步举例说明,可选的基于图4所示场景,继续如图7所示,提取目标妆容信息406对应妆容特征708以及妆容特征710;提取第一身份信息对应的部位特征702、部位特征704以及部位特征706;获取部位特征702、部位特征704以及部位特征706中与妆容特征708以及妆容特征710中每个妆容特征依次对应的部位特征704以及妆容特征708,其中,部位特征704与妆容特征708相对应,部位特征706与妆容特征710;按照对应关系将部位特征704与妆容特征708,部位特征706与妆容特征710进行融合,以获得两个目标特征;根据两个目标特征生成第二上妆脸部图像602。
作为一种可选的方案,方法还包括:
S1,获取待迁移妆容的第一上妆脸部图像,以及待上妆的原始脸部图像;
S2,将第一上妆脸部图像以及原始脸部图像输入妆容迁移模型,其中,妆容迁移模型为利用多个样本脸部图像进行训练后得到的用于迁移妆容的神经网络模型;
S3,获取妆容迁移模型输出的第二上妆脸部图像。
需要说明的是,获取待迁移妆容的第一上妆脸部图像,以及待上妆的原始脸部图像;将第一上妆脸部图像以及原始脸部图像输入妆容迁移模型;获取妆容迁移模型输出的第二上妆脸部图像。
进一步举例说明,可选的妆容迁移模型由三个部分组成,脸部身份编码器(FIEnc)负责将获取原图的脸部特征图,在解码过程中提供身份信息;部位风格编码器(PSEnc)负责得到各个部位(眼,嘴,肌肤)的风格编码,之后将它们拼接在一起输入到多层感知机(MLP)得到最中的妆容风格编码w,该风格编码用于在解码过程中提供妆容信息;妆容融合解码器(MFDec)利用自适应实例正则化(AdaIN)操作将脸部特征图和风格编码包含的妆容信息逐层融合在一起然后生成最终结果;
首先,针对部位风格编码器(Part-specific Style Encoder,简称PSEnc),提取妆容风格是整个网络中最重要的一步,尽管妆容风格编码可以很容易对脸部特征图进行全局平均池化(Global Average Pooling)操作得到,但是通过这样操作得到的妆容编码中各个脸部部位的妆容信息会纠缠在一起,并且这样的网络也无法提供局部妆容迁移的能力;
可选地,在本实施例中采取了两个措施解决上述问题:
(1)首先引入了非线性映射网络(也就是利用MLP)将最初的风格编码z映射到编码w,使得w比z更加解纠缠;
(2)不将整个参考图像一次性输入网络而是逐部位输入网络得到各部位的风格编码然后将它们拼接在一起得到完整的风格编码;这样做可以一方面在网络中引入解纠缠的先验,另一方面赋予网络灵活的操控性。
具体而言,假设利用分割掩码将参考图分成三个部位(眼,嘴,肌肤),如下述公式(1)所示:
y
其中,y
进一步,z再经过一个多层感知机(MLP)得到最终的风格编码w,如下述公式(3)所示:
w=MLP(z) (3)
此外,针对脸部身份编码器(Face Identity Encoder,简称FIEnc),脸部身份编码器FIEnc由两层降采样卷积层和三个残差块组成,它的作用可以但不限于为提取原图的身份特征图F
再者,针对妆容融合解码器(Makeup Fusion Decoder,简称MFDec),MFDec的作用是将w中包含的妆容信息和F
其中,w
作为一种可选的方案,在获取待移妆的第一上妆脸部图像,以及待上妆的原始脸部图像之前,包括:
S1,获取多个样本脸部图像;
S2,对每个样本脸部图像中的脸部图像类型进行标记,得到标记后的多个样本脸部图像;
S3,将标记后的多个样本脸部图像输入初始妆容迁移模型,以训练得到妆容迁移模型。
需要说明的是,为保证妆容迁移模型对图像处理的准确性,通过样本以及对样本进行标记的方式,对妆容迁移模型进行适应性训练,以学习可提高图像处理的准确性的相关能力,如提高保留原始图像的身份信息的能力、提高妆容迁移过程中的上/下妆的能力等。
作为一种可选的妆容迁移模型的训练方案,将标记后的多个样本脸部图像输入初始妆容迁移模型,以训练得到妆容迁移模型,包括:
S1,重复执行以下步骤,直至得到妆容迁移模型:
S2,从标记后的多个样本脸部图像中确定出当前样本脸部图像,并确定当前妆容迁移模型,其中,当前样本脸部图像中包括标记的原始图像标识或上妆图像标识;
S3,通过当前妆容迁移模型识别出当前妆容迁移结果,其中,在当前样本脸部图像中包括原始图像标识的情况下,当前妆容迁移结果为当前样本脸部图像对应的上妆样本脸部图像;在当前样本脸部图像中包括上妆图像标识的情况下,当前妆容迁移结果为当前样本脸部图像对应的下妆样本脸部图像;
S4,在当前样本脸部图像中包括原始图像标识的情况下,计算上妆样本脸部图像在妆容图像域中的第一损失值;
S5,在当前样本脸部图像中包括上妆图像标识的情况下,计算下妆样本脸部图像在素颜图像域中的第二损失值;
S6,在第一损失值未达到第一收敛条件或第二损失值未达到第二收敛条件的情况下,获取下一个样本脸部图像作为当前样本脸部图像;
S7,在第一损失值达到第一收敛条件或第二损失值达到第二收敛条件的情况下,确定当前妆容迁移模型为妆容迁移模型。
需要说明的是,第一损失值以及第二损失值可以但不限于为对抗损失,其中,对抗损失可以但不限用于保证生成结果更加真实,让上妆的结果更加符号妆容域的图片,脱妆结果更加符合素颜域的图片。
进一步举例说明,可选的利用两个判别器D
通过本申请提供的实施例,重复执行以下步骤,直至得到妆容迁移模型:
从标记后的多个样本脸部图像中确定出当前样本脸部图像,并确定当前妆容迁移模型,其中,当前样本脸部图像中包括标记的原始图像标识或上妆图像标识;
通过当前妆容迁移模型识别出当前妆容迁移结果,其中,在当前样本脸部图像中包括原始图像标识的情况下,当前妆容迁移结果为当前样本脸部图像对应的上妆样本脸部图像;在当前样本脸部图像中包括上妆图像标识的情况下,当前妆容迁移结果为当前样本脸部图像对应的下妆样本脸部图像;在当前样本脸部图像中包括原始图像标识的情况下,计算上妆样本脸部图像在妆容图像域中的第一损失值;在当前样本脸部图像中包括上妆图像标识的情况下,计算下妆样本脸部图像在素颜图像域中的第二损失值;在第一损失值未达到第一收敛条件或第二损失值未达到第二收敛条件的情况下,获取下一个样本脸部图像作为当前样本脸部图像;在第一损失值达到第一收敛条件或第二损失值达到第二收敛条件的情况下,确定当前妆容迁移模型为妆容迁移模型,达到了提高妆容迁移模型上/下妆的能力的目的,实现了提高妆容迁移模型对图像的处理准确性的效果。
作为一种可选的妆容迁移模型的训练方案,将标记后的多个样本脸部图像输入初始妆容迁移模型,以训练得到妆容迁移模型,包括:
S1,重复执行以下步骤,直至得到妆容迁移模型:
S2,从标记后的多个样本脸部图像中确定出当前样本脸部图像,并确定当前妆容迁移模型,其中,当前样本脸部图像中包括标记的图像身份标识,图像身份标识用于表示当前样本脸部图像对应的样本身份信息;
S3,通过当前妆容迁移模型识别出当前妆容迁移结果;
S4,获取当前妆容迁移结果对应的结果身份信息,并计算结果身份信息与对应的样本身份信息之间的第三损失值;
S5,在第三损失值未达到第三收敛条件的情况下,获取下一个样本脸部图像作为当前样本脸部图像;
S6,在第三损失值达到第三收条件的情况下,确定当前妆容迁移模型为妆容迁移模型。
可选地,在本实施例中,第三损失值可以但不限于为全局感知损失值和/或局部感知损失,其中,全局感知损失值用于表示结果身份信息对应的整体样本图像所表示的身份信息与对应的样本身份信息之间的相似度,局部感知损失用于表示结果身份信息对应的部分样本图像所表示的多个身份信息依次与对应的样本身份信息中的多个部分身份信息之间的相似度。
进一步举例说明,可选的假设第三损失值可以但不限于为全局感知损失值,考虑到生成结果虽然与原图身份相同,但是妆容已经不同了,所以不能使用点对点的像素级别损失来计算身份信息的差异,进而采用了感知损失
其中,F
进一步举例说明,可选的假设第三损失值可以但不限于为局部感知损失值,除了全局感知损失外还可以但不限于引入了局部感知损失来更进一步保持生成结果与原图的局部部位的一致性,例如牙齿,眉毛等,
其中,M是具体部位的掩码,I集合为{牙齿,头发,眼球,眉毛},i是I的索引。
通过本申请提供的实施例,重复执行以下步骤,直至得到妆容迁移模型:从标记后的多个样本脸部图像中确定出当前样本脸部图像,并确定当前妆容迁移模型,其中,当前样本脸部图像中包括标记的图像身份标识,图像身份标识用于表示当前样本脸部图像对应的样本身份信息;通过当前妆容迁移模型识别出当前妆容迁移结果;获取当前妆容迁移结果对应的结果身份信息,并计算结果身份信息与对应的样本身份信息之间的第三损失值;在第三损失值未达到第三收敛条件的情况下,获取下一个样本脸部图像作为当前样本脸部图像;在第三损失值达到第三收条件的情况下,确定当前妆容迁移模型为妆容迁移模型,达到了提高妆容迁移模型在全局/局部妆容迁移的能力的目的,实现了提高妆容迁移模型对图像的处理准确性的效果。
作为一种可选的妆容迁移模型的训练方案,将标记后的多个样本脸部图像输入初始妆容迁移模型,以训练得到妆容迁移模型,包括:
S1,重复执行以下步骤,直至得到妆容迁移模型:
S2,从标记后的多个样本脸部图像中确定出当前样本脸部图像,并确定当前妆容迁移模型,其中,当前样本脸部图像中包括标记的图像直方标识,图像直方标识用于表示当前样本脸部图像对应的图像直方图;
S3,通过当前妆容迁移模型识别出当前妆容迁移结果;
S4,计算当前妆容迁移结果对应的上妆样本脸部图像与对应的图像直方图之间的第四损失值;
S5,在第四损失值未达到第四收敛条件的情况下,获取下一个样本脸部图像作为当前样本脸部图像;
S6,在第四损失值达到第四收条件的情况下,确定当前妆容迁移模型为妆容迁移模型。
可选地,在本实施例中,图像直方图可以但不限于理解为采用直方图方式对原始图像进行处理后得到的图像直方图,其可以但不限于理解为一种高度还原的图像处理方式,而在本实施例中采用图像直方图对妆容迁移模型进行训练的目的就在于,帮助妆容迁移模型学习这种高度还原的图像处理的能力。
进一步举例说明,可选的通过利用直方图匹配原图和参考图,提供一个大致的迁移结果让网络有监督训练;
例如在实验中将原图迁移的部位(眼,嘴,肌肤)与参考图的对应部位做直方图匹配,损失L
其中,HM(x,y)的结果具有x的身份信息和y的妆容。
通过本申请提供的实施例,重复执行以下步骤,直至得到妆容迁移模型:从标记后的多个样本脸部图像中确定出当前样本脸部图像,并确定当前妆容迁移模型,其中,当前样本脸部图像中包括标记的图像直方标识,图像直方标识用于表示当前样本脸部图像对应的图像直方图;通过当前妆容迁移模型识别出当前妆容迁移结果;计算当前妆容迁移结果对应的上妆样本脸部图像与对应的图像直方图之间的第四损失值;在第四损失值未达到第四收敛条件的情况下,获取下一个样本脸部图像作为当前样本脸部图像;在第四损失值达到第四收条件的情况下,确定当前妆容迁移模型为妆容迁移模型,达到了提高妆容迁移模型保持原始图像的身份信息的能力的目的,实现了提高妆容迁移模型对图像的处理准确性的效果。
作为一种可选的妆容迁移模型的训练方案,考虑到样本的数据集不是成对的,所以还可以但不限于引入循环一致性损失来训练网络(妆容迁移模型),L
此外,可选地在本实施例中,可以但不限于结合对抗损失(第一损失值以及第二损失值)、全局感知损失值和/或局部感知损失(第三损失值)、妆容损失(第四损失值)以及循环一致性损失来共同训练妆容迁移模型,如将上述多个损失组合为网络总损失,可参考下述公式(12):
其中,λ
作为一种可选的方案,方法还包括:
S1,从参考人像的第一上妆脸部图像中提取至少两个部位妆容信息,其中,至少两个部位妆容信息用于表示参考人像的脸部的至少两个不同部位的妆容风格;
S2,将至少两个部位妆容信息进行融合,以得到目标妆容信息,其中,目标妆容信息用于表示第一上妆脸部图像的第一整体妆容风格;
S3,使用目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像,其中,第二上妆脸部图像的第二整体妆容风格与第一整体妆容风格之间的风格相似度大于等于第一阈值。
需要说明的是,在实际应用中,如已利用上述图像处理方法对原始图像进行了妆容迁移,则在此基础上还接收到以其他参考图像为上妆参考的情况下,可以但不限于继续基于原始图像进行对应的图像处理。
进一步举例说明,可选的假设已基于参考图像B2将原始图像A1处理为图像A2,此时接收到对参考图像C4的妆容转移请求,则响应于该妆容转移请求,基于参考图像C4将原始图像A1处理为图像A4。
作为一种可选的方案,为方便理解,以具体的妆容迁移场景完成对上述图像处理方法的应用为例说明,具体可参考图8所示,一种基于风格的可控生成对抗网络(Style-based Controllable GAN,简称SCGAN),具体的,假定X={x
提取妆容风格是整个网络中最重要的一步,尽管妆容风格编码可以很容易对脸部特征图进行全局平均池化(Global Average Pooling)操作得到,但是通过这样操作得到的妆容编码中各个脸部部位的妆容信息会纠缠在一起,并且这样的网络也无法提供局部妆容迁移的能力。我们采取了两个措施解决这个问题:(1)首先我们像StyleGAN中一样引入了非线性映射网络(也就是利用MLP)将最初的风格编码z映射到编码w,如图8中的(a)所示,使得w比z更加解纠缠。(2)我们不将整个参考图像一次性输入网络而是逐部位输入网络得到各部位的风格编码然后将它们拼接在一起得到完整的风格编码。这样做可以一方面在网络中引入解纠缠的先验,另一方面赋予网络灵活的操控性,其中,在上述公式(1)中,每个y
MFDec的作用是将w中包含的妆容信息和F
进一步,为说明上述图像处理方法应用在妆容迁移场景中的优势,以在MakeupTransfer(MT)数据集上训练和测试为例说明,该数据集由3834张女性脸部图片组成,其中有1115张素颜照片和2719张妆容照片。随机选取100张素颜照和250张妆容照用于测试,剩下的则用于训练。
模型主要与两个传统的域迁移方法:CycleGAN和DIA,还有五个最先进的妆容迁移方法:PairedCycleGAN、BeautyGAN、BeautyGlow、LADN和PSGAN作比较,而比较结果表示上述图像处理方法与参考图的妆容最为接近;
此外,在原图和参考图不对齐的情况下3种开源的妆容迁移方法与上述图像处理方法的表现对比,可以看到,上述图像处理方法的结果在不对齐的情况下表现的最好,脸部不会出现不均匀的迁移结果,并且各个元素也最贴近参考图。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本发明实施例的另一个方面,还提供了一种用于实施上述图像处理方法的图像处理装置。如图9所示,该装置包括:
第一提取单元902,用于从参考人像的第一上妆脸部图像中提取至少两个部位妆容信息,其中,至少两个部位妆容信息用于表示参考人像的脸部的至少两个不同部位的妆容风格;
第一融合单元904,用于将至少两个部位妆容信息进行融合,以得到目标妆容信息,其中,目标妆容信息用于表示第一上妆脸部图像的第一整体妆容风格;
第一生成单元906,用于使用目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像,其中,第二上妆脸部图像的第二整体妆容风格与第一整体妆容风格之间的风格相似度大于等于第一阈值。
可选地,在本实施例中,上述图像处理装置可以但不限于应用在妆容迁移场景下;具体的例如在直播场景中,在获取到主播账号所在的直播客户端触发的妆容迁移请求的情况下,从妆容迁移请求中携带的参考人像的上妆脸部图像中提取至少两个部位妆容信息(如鼻子妆容信息、眼睛妆容信息、嘴巴妆容信息等),并利用该至少两个部位妆容信息确定出参考人像的整体妆容风格,其中,上述确定出的整体妆容风格可以但不限于已预存在本地/服务器的数据库中,或者说上述确定出的整体妆容风格并不只是参考人像的整体妆容风格,其还是预存在本地/服务器的数据库中的某一标准妆容风格;进一步,按照上述确定出的整体妆容风格对主播账号所在的直播客户端的当前直播画面上所显示的人像图片进行图像处理(可理解为处理直播过程中的每一帧人像图片),进而实现在主播账号的直播过程中,持续显示妆容迁移后的主播人像。
可选地,在本实施例中,参考人像可以但不限于为脸部区域内或脸部区域周围带有妆容或妆容配件的人像,其中,妆容配件可以但不限于为道具、装饰、特效等,例如眼镜、耳环、项链、衣饰(如发带、头巾)等。
可选地,在本实施例中,脸部的部位可以但不限用于表示显示在脸部区域内或脸部区域周围的元素,如显示在脸部区域内的鼻子、嘴巴、眉毛、肌肤、额头、下巴、胡子、脸颊等;再如显示在脸部区域周围的头发、耳朵、脖子等;
可选地,在本实施例中,除使用目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像外,还可以但不限于指定参考人像的第一上妆脸部图像中单独的部位妆容进行妆容迁移,如响应于目标迁移请求,从参考人像的第一上妆脸部图像中提取目标部位妆容信息(如嘴巴),进而按照目标部位妆容信息对待上妆人像的原始脸部图像中的嘴巴元素进行单独的图像处理;
可选地,在本实施例中,除指定参考人像的第一上妆脸部图像中单独的部位妆容进行妆容迁移外,还可以但不限于灵活指定不同参考人像的上妆脸部图像进行组合形式的妆容迁移,如响应于第一迁移请求,从第一参考人像的上妆脸部图像中提取第一部位妆容信息(如耳朵),进而按照第一部位妆容信息对待上妆人像的原始脸部图像中的耳朵元素进行单独的图像处理;再响应于第二迁移请求,从第二参考人像的上妆脸部图像中提取第二部位妆容信息(如眉毛),进而按照第二部位妆容信息对待上妆人像的原始脸部图像中的眉毛元素进行单独的图像处理;或,
响应于第三迁移请求,从第一参考人像的上妆脸部图像中提取第一部位妆容信息(如耳朵),从第二参考人像的上妆脸部图像中提取第二部位妆容信息(如眉毛),进而将第一部位妆容信息以及第二部位妆容信息进行融合,以得到组合妆容信息;再按照组合妆容信息对待上妆人像的原始脸部图像进行图像处理。
可选地,在本实施例中,待上妆人像可以但不限于为已上妆或未上妆(素颜)的人像,如待上妆人像为已上妆人像,则可以但不限于在使用目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像之前,将待上妆人像的初始脸部图像处理为未上妆(素颜)的原始脸部图像。
需要说明的是,利用图像处理处理过程中的提取参考人像的第一上妆脸部图像中的至少两个部位妆容信息、融合至少两个部位妆容信息以获得目标妆容信息、使用目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像的方式,将妆容迁移分为部分妆容的提取、整体妆容风格的确定、整体妆容风格下的妆容分配三部分;
具体的,通过部分妆容的提取获取参考人像的待迁移妆容,通过整体妆容风格的确定获取待迁移妆容的标准妆容风格,通过整体妆容风格下的妆容分配将标准妆容风格下的部位妆容依次分配至待上妆人像的原始脸部图像。
具体实施例可以参考上述图像处理装置中所示示例,本示例中在此不再赘述。
通过本申请提供的实施例,相比于将参考人像的妆容直接转移至待上妆人像的原始脸部图像,利用上述三部分的方式,最终完成妆容迁移所参考的目标妆容信息为根据参考人像的上妆脸部图像确定的标准妆容风格,而非参考人像的上妆脸部图像,可解除参考人像的上妆脸部图像与待上妆人像的原始脸部图像之间的直接耦合关系,进而达到了跳过对齐参考图像与原图像的这一操作的技术目的,以克服妆容迁移前需对齐参考图像与原图的困难,从而实现了无需进行图像对齐即可实现高精度的妆容转移的技术效果。
作为一种可选的方案,第一提起单元904,包括:
识别模块,用于对第一上妆脸部图像进行识别,以获得至少两个不同部位的N个部位元素,其中,N为大于等于2的整数;
第一提取模块,用于提取至少两个部位元素中每个部位元素对应的妆容风格,以获得N个原始的元素编码,其中,不同的元素编码对应不同的妆容风格,至少两个部位妆容信息包括N个原始的元素编码。
具体实施例可以参考上述图像处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,第一融合单元904,包括:
映射模块,用于对N个原始的元素编码中的每个元素编码分别进行非线性映射,以获得N个目标元素编码;
拼接模块,用于将N个目标元素编码进行拼接,以获得原始的风格编码,其中,不同的风格编码对应不同的整体妆容风格;
输入模块,用于将原始的风格编码输入多层感知机,以获得目标风格编码,其中,目标妆容信息包括目标风格编码。
具体实施例可以参考上述图像处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,包括:
识别单元,用于在使用目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像之前,对原始脸部图像进行识别,以获得第一身份信息,其中,第一身份信息用于表示待上妆人像的人像身份,第二上妆脸部图像对应的第二身份信息与第一身份信息之间的信息相似度大于等于第二阈值。
具体实施例可以参考上述图像处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,第一生成单元906,包括:
第二提取模块,用于提取目标妆容信息对应的M个妆容特征,其中,M个妆容特征中的每个妆容特征分别对应一个部位特征,M为大于等于2的整数;
第三提取模块,用于提取第一身份信息对应的P个部位特征,其中,P为大于等于2的整数,且P大于等于M;
第一获取模块,用于获取P个部位特征中与每个妆容特征依次对应的M个部位特征;
融合模块,用于按照对应关系将M个部位特征中的每个部位特征与每个妆容特征进行融合,以获得M个目标特征;
生成模块,用于根据M个目标特征生成第二上妆脸部图像。
具体实施例可以参考上述图像处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,装置还包括:
第一获取单元,用于获取待迁移妆容的第一上妆脸部图像,以及待上妆的原始脸部图像;
第一输入单元,用于将第一上妆脸部图像以及原始脸部图像输入妆容迁移模型,其中,妆容迁移模型为利用多个样本脸部图像进行训练后得到的用于迁移妆容的神经网络模型;
第二获取单元,用于获取妆容迁移模型输出的第二上妆脸部图像。
具体实施例可以参考上述图像处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,包括:
第三获取单元,用于在获取待移妆的第一上妆脸部图像,以及待上妆的原始脸部图像之前,获取多个样本脸部图像;
标记单元,用于在获取待移妆的第一上妆脸部图像,以及待上妆的原始脸部图像之前,对每个样本脸部图像中的脸部图像类型进行标记,得到标记后的多个样本脸部图像;
第二输入单元,用于在获取待移妆的第一上妆脸部图像,以及待上妆的原始脸部图像之前,将标记后的多个样本脸部图像输入初始妆容迁移模型,以训练得到妆容迁移模型。
具体实施例可以参考上述图像处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,第二输入单元,包括:
第一执行模块,用于重复执行以下步骤,直至得到妆容迁移模型:
第一确定模块,用于从标记后的多个样本脸部图像中确定出当前样本脸部图像,并确定当前妆容迁移模型,其中,当前样本脸部图像中包括标记的原始图像标识或上妆图像标识;
第一输出模块,用于通过当前妆容迁移模型识别出当前妆容迁移结果,其中,在当前样本脸部图像中包括原始图像标识的情况下,当前妆容迁移结果为当前样本脸部图像对应的上妆样本脸部图像;在当前样本脸部图像中包括上妆图像标识的情况下,当前妆容迁移结果为当前样本脸部图像对应的下妆样本脸部图像;
第一计算模块,用于在当前样本脸部图像中包括原始图像标识的情况下,计算上妆样本脸部图像在妆容图像域中的第一损失值;
第二计算模块,用于在当前样本脸部图像中包括上妆图像标识的情况下,计算下妆样本脸部图像在素颜图像域中的第二损失值;
第二获取模块,用于在第一损失值未达到第一收敛条件或第二损失值未达到第二收敛条件的情况下,获取下一个样本脸部图像作为当前样本脸部图像;
第二确定模块,用于在第一损失值达到第一收敛条件或第二损失值达到第二收敛条件的情况下,确定当前妆容迁移模型为妆容迁移模型。
具体实施例可以参考上述图像处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,第二输入单元,包括:
第二执行模块,用于重复执行以下步骤,直至得到妆容迁移模型:
第二确定模块,用于从标记后的多个样本脸部图像中确定出当前样本脸部图像,并确定当前妆容迁移模型,其中,当前样本脸部图像中包括标记的图像身份标识,图像身份标识用于表示当前样本脸部图像对应的样本身份信息;
第二输出模块,用于通过当前妆容迁移模型识别出当前妆容迁移结果;
第三获取模块,用于获取当前妆容迁移结果对应的结果身份信息,并计算结果身份信息与对应的样本身份信息之间的第三损失值;
第四获取模块,用于在第三损失值未达到第三收敛条件的情况下,获取下一个样本脸部图像作为当前样本脸部图像;
第三确定模块,用于在第三损失值达到第三收条件的情况下,确定当前妆容迁移模型为妆容迁移模型。
具体实施例可以参考上述图像处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,第二输入单元,包括:
第三执行模块,用于重复执行以下步骤,直至得到妆容迁移模型:
第四确定模块,用于从标记后的多个样本脸部图像中确定出当前样本脸部图像,并确定当前妆容迁移模型,其中,当前样本脸部图像中包括标记的图像直方标识,图像直方标识用于表示当前样本脸部图像对应的图像直方图;
第三输出模块,用于通过当前妆容迁移模型识别出当前妆容迁移结果;
第三计算模块,用于计算当前妆容迁移结果对应的上妆样本脸部图像与对应的图像直方图之间的第四损失值;
第五获取模块,用于在第四损失值未达到第四收敛条件的情况下,获取下一个样本脸部图像作为当前样本脸部图像;
第四确定模块,用于在第四损失值达到第四收条件的情况下,确定当前妆容迁移模型为妆容迁移模型。
具体实施例可以参考上述图像处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,第二输入单元,包括:
第三执行模块,用于重复执行以下步骤,直至得到妆容迁移模型:
第四确定模块,用于从标记后的多个样本脸部图像中确定出当前样本脸部图像,并确定当前妆容迁移模型,其中,当前样本脸部图像中包括标记的图像直方标识,图像直方标识用于表示当前样本脸部图像对应的图像直方图;
第三输出模块,用于通过当前妆容迁移模型识别出当前妆容迁移结果;
第三计算模块,用于计算当前妆容迁移结果对应的上妆样本脸部图像与对应的图像直方图之间的第四损失值;
第五获取模块,用于在第四损失值未达到第四收敛条件的情况下,获取下一个样本脸部图像作为当前样本脸部图像;
第四确定模块,用于在第四损失值达到第四收条件的情况下,确定当前妆容迁移模型为妆容迁移模型。
具体实施例可以参考上述图像处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,装置还包括:
第三提取单元,用于从参考人像的第一上妆脸部图像中提取至少两个部位妆容信息,其中,至少两个部位妆容信息用于表示参考人像的脸部的至少两个不同部位的妆容风格;
第三融合单元,用于将至少两个部位妆容信息进行融合,以得到目标妆容信息,其中,目标妆容信息用于表示第一上妆脸部图像的第一整体妆容风格;
第三生成单元,用于使用目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像,其中,第二上妆脸部图像的第二整体妆容风格与第一整体妆容风格之间的风格相似度大于等于第一阈值。
具体实施例可以参考上述图像处理方法中所示示例,本示例中在此不再赘述。
根据本发明实施例的又一个方面,还提供了一种用于实施上述图像处理方法的电子设备,如图10所示,该电子设备包括存储器1002和处理器1004,该存储器1002中存储有计算机程序,该处理器1004被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,从参考人像的第一上妆脸部图像中提取至少两个部位妆容信息,其中,至少两个部位妆容信息用于表示参考人像的脸部的至少两个不同部位的妆容风格;
S2,将至少两个部位妆容信息进行融合,以得到目标妆容信息,其中,目标妆容信息用于表示第一上妆脸部图像的第一整体妆容风格;
S3,使用目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像,其中,第二上妆脸部图像的第二整体妆容风格与第一整体妆容风格之间的风格相似度大于等于第一阈值。
可选地,本领域普通技术人员可以理解,图10所示的结构仅为示意,电子设备也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图10其并不对上述电子设备的结构造成限定。例如,电子设备还可包括比图10中所示更多或者更少的组件(如网络接口等),或者具有与图10所示不同的配置。
其中,存储器1002可用于存储软件程序以及模块,如本发明实施例中的图像处理方法和装置对应的程序指令/模块,处理器1004通过运行存储在存储器1002内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的图像处理方法。存储器1002可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1002可进一步包括相对于处理器1004远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1002具体可以但不限于用于存储部位妆容信息、目标妆容信息以及第二上妆脸部图像等信息。作为一种示例,如图10所示,上述存储器1002中可以但不限于包括上述图像处理装置中的第一提取单元902、第一融合单元904及第一生成单元906。此外,还可以包括但不限于上述图像处理装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置1006用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1006包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1006为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子设备还包括:显示器1008,用于显示上述部位妆容信息、目标妆容信息以及第二上妆脸部图像等信息;和连接总线1010,用于连接上述电子设备中的各个模块部件。
在其他实施例中,上述终端设备或者服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(Peer To Peer,简称P2P)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述图像处理方法,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,从参考人像的第一上妆脸部图像中提取至少两个部位妆容信息,其中,至少两个部位妆容信息用于表示参考人像的脸部的至少两个不同部位的妆容风格;
S2,将至少两个部位妆容信息进行融合,以得到目标妆容信息,其中,目标妆容信息用于表示第一上妆脸部图像的第一整体妆容风格;
S3,使用目标妆容信息生成待上妆人像的原始脸部图像对应的第二上妆脸部图像,其中,第二上妆脸部图像的第二整体妆容风格与第一整体妆容风格之间的风格相似度大于等于第一阈值。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
- 图像处理方法、存储介质、电子设备及图像处理装置
- 图像处理方法和图像处理装置及电子设备和存储介质