掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本公开总体上涉及数字图像处理。更具体地,本公开涉及用于面部再现的方法和系统。

背景技术

面部再现可以包括将源视频中的源个体的面部表情传送到目标视频或目标图像中的目标个体。面部再现能够用于许多应用中的面部的操纵和动画化,诸如娱乐节目、计算机游戏、视频对话、虚拟现实、增强现实等。

当前的一些用于面部再现的技术采用了可变形面部模型来利用不同的面部表情重新渲染目标面部。虽然能够快速地生成具有可变形面部模型的面部,但是生成的面部可能不是逼真的。当前的一些其它用于面部再现的技术能够基于深度学习方法的使用来重新渲染目标面部。深度学习方法可以允许获得逼真的结果。然而,深度学习方法费时间,并且可能不适合在常规移动设备上进行实时的面部再现。

发明内容

该部分简单介绍了概念的选择,在下面的具体实施方式中将进一步描述。该发明内容不旨在确定要求保护的主题的关键特征或必要特征,也不旨在用于帮助判定要求保护的主题的范围。

根据本公开的一个实施例,提供了一种用于面部再现的方法。该方法可以包括通过计算设备接收目标视频。目标视频可以包括至少一个目标帧。至少一个目标帧可以包括目标面部。该方法还可以包括通过计算设备接收源视频。源视频可以包括源面部。该方法还可以包括,通过计算设备并且基于目标视频的至少一个目标帧中的目标面部来确定至少一个目标面部表情。该方法还可以包括,通过计算设备并且基于源视频的帧中的源面部来确定至少一个源面部表情。该方法还可以包括,通过计算设备并且使用参数化面部模型来合成输出面部。输出面部可以包括其中修改目标面部表情以模仿源面部表情的目标面部。该方法还可以包括,通过计算设备并且基于深度神经网络(DNN)生成嘴部区域和眼部区域。该方法还可以包括,通过计算设备组合输出面部、嘴部区域和眼部区域从而生成输出视频的帧。

在一些实施例中,参数化面部模型可以取决于面部表情、面部标识和面部纹理。

在一些实施例中,参数化面部模型可以包括基于多个个体的面部的历史图像预生成的模板网格。模板网格可以包括预定数量的顶点。在特定实施例中,纹理模型包括与顶点相关联的颜色集。

在一些实施例中,个体能够具有不同的年龄、性别和种族。在特定实施例中,面部的历史图像可以包括属于具有预定数量的面部表情的单个个体的至少一个照片集。面部表情包括中性表情、张开嘴表情、微笑表情和生气表情中的至少一者。

在一些实施例中,参数化面部模型还可以包括混合形状集,混合形状表示面部表情。

在一些实施例中,DNN的输入可以至少包括与参数化面部模型相关联的参数。

在特定实施例中,DNN的输入可以包括先前的嘴部区域和先前的眼部区域。先前的嘴部区域和先前的眼部区域能够与目标视频的至少一个先前帧相关联。

在一些实施例中,能够使用多个个体的面部的历史图像训练DNN。

根据另一个实施例,提供了用于面部再现的系统。该系统可以包括至少一个处理器和存储处理器可执行代码的存储器,其中,至少一个处理器能够被配置为在执行处理器可执行代码时实施上面提到的用于面部再现的方法的操作。

根据本公开的再一个实施例,提供了一种存储处理器可读指令的非易失性处理器可读介质。处理器可读指令当由处理器执行时,使得处理器实施上面提到的用于面部再现的方法。

根据一个示例性实施例,公开了一种用于提供个性化广告的系统。该系统可以包括被配置为存储一个以上的广告视频的数据库。广告视频可以至少包括目标面部。目标面部能够与第一个体相关联。该系统还可以包括被配置为接收与用户相关联的用户数据的用户信息收集模块。用户数据可以至少包括源面部的图像。源面部能够与不同于第一个体的第二个体相关联。用户信息收集模块能够基于用户数据确定源面部的参数。该系统还可以包括个性化视频生成模块。个性化视频生成模块能够被配置为将一个以上的广告视频分割为第一部分和第二部分。第一部分可以包括目标面部,并且第二部分可以包括背景。个性化视频生成模块能够基于源面部的参数修改帧的第一部分,以利用源面部替换目标面部。个性化视频生成模块还能够将修改的第一部分与第二部分结合,以得到输出广告视频的输出帧。

能够将存储在数据库中的广告视频的帧预处理为分割成包括目标面部的第一部分和包括背景的第二部分。

源面部的参数可以包括源面部表情、源面部标识和源面部纹理。修改帧的第一部分可以包括:基于目标面部确定目标面部表情、目标面部标识和目标面部纹理,以及利用源面部标识替换目标面部标识和利用源面部纹理替换目标面部纹理。能够将存储在数据库中的广告的帧预处理为包括目标面部的参数,该目标面部的参数包括目标面部表情、目标面部标识和目标面部纹理。

用户信息收集模块能够被配置为从用户的计算设备或者用户的在一个以上社交媒体平台中的一个以上的帐户读取用户数据。用户数据可以包括关于用户的兴趣和用户的一个以上图像、用户的一个以上的朋友、以及用户的一个以上最喜欢的明星的信息。用户信息收集模块能够分析用户数据,以选择用户、用户的一个以上的朋友、或用户的一个以上最喜欢的明星的一个以上的图像。用户信息收集模块能够基于选择的一个以上的图像确定源面部的参数。

用户信息收集模块能够被配置为从用户接收用户输入。用户输入可以表示要用于目标面部的替换的图像的列表。用户信息收集模块能够基于图像的列表确定源面部的参数。

个性化视频生成模块能够被配置为将输出广告视频发布于用户的在一个以上社交媒体平台中的一个以上的帐户。

根据另一个示例性实施例,公开了一种用于提供个性化广告的方法。该方法可以包括将一个以上的广告视频存储在数据库中。广告视频可以包括与第一个体相关联的目标面部。该方法可以包括通过用户信息收集模块接收与用户相关联的用户数据。用户数据可以包括至少一个源面部的图像。源面部能够与不同于第一个体的第二个体相关联。该方法可以通过用户信息收集模块并且基于用户数据确定源面部的参数。该方法还可以包括通过个性化视频生成模块将一个以上的广告视频的帧分割为第一部分和第二部分。第一部分可以包括目标面部并且第二部分可以包括背景。该方法可以包括通过个性化视频生成模块并且基于源面部的参数修改帧的第一部分,以利用源面部替换目标面部。该方法还可以包括通过个性化视频生成模块将修改的第一部分和第二部分结合,以得到输出广告视频的输出帧。

示例的其它目的、优点和新颖特征将在下面的描述中部分地阐述,并且部分将在审查下面的描述和附图时对于本领域技术人员来说变得明显,或者可以通过示例的生产或操作而得知。可以通过在附加的权利要求中特别指出的方法、手段和组合来实现和获得概念的目的和优点。

附图说明

在附图中,通过示例而非限制的方式说明了实施例,其中,相同的参考标记表示相似的元件。

图1是示出其中能够实施用于面部再现的方法的示例性环境的框图。

图2是示出实施用于面部再现的方法的计算设备的示例性实施例的框图。

图3是示出根据示例性实施例的面部再现的过程的示意图。

图4是示出根据示例性实施例的用于面部再现的系统的框图。

图5示出根据示例性实施例的用于面部再现的方法的过程流程图。

图6是示出根据示例性实施例的个性化视频的生成的示意图。

图7是根据本公开的一些示例性实施例的用于提供个性化广告的系统的框图。

图9示出能够用于实施面部再现的方法的示例性计算机系统。

具体实施方式

下面的对实施例的详细描述包括对附图的参考,附图形成详细描述的一部分。在该部分中描述的方法不是权利要求的现有技术,并且由于包括在该部分中也不被认为是现有技术。附图示出根据示例性实施例的图示。足够详细地描述这些示例性实施例(在这里也称为“示例”),以使得本领域技术人员能够实践本主题。在不脱离要求保护的范围的情况下,能够结合实施例、能够利用其它实施例、或者能够做出结构、逻辑和操作上的改变。因此,下面的详细描述不是限制性的,并且范围是由附加的权利要求及其等同物限定的。

本公开涉及用于面部再现的方法和系统。在本公开中提供的实施例至少解决了现有技术中的一些问题。能够将本公开设计为在诸如智能手机、平板电脑或移动电话的移动设备上实时地工作,并且不需要连接到互联网或者使用服务器端计算资源,虽然实施例能够扩展到涉及网络服务或基于云的资源的方法。

本公开的一些实施例可以允许利用属于源视频中的源面部的面部表情将目标视频或目标图像中的目标面部动画化。能够实时地通过源面部的面部表情操纵目标面部。本公开的实施例包括:使用之前记录的不同个体的面部图像建立统计的面部可变形模型、训练深度学习模型以合成嘴部和眼部区域、和进行实时的面部再现。一些实施例可以显著地减少逼真的面部再现的计算时间,并且允许在移动设备上进行逼真的面部再现。

本公开的一些实施例可以允许通过将广告中的演员的面部替换为其它个体的面部而生成用户的个性化广告。即使当特别针对用户时,标准广告也经常被用户划跳过,因为标准广告可能不吸引用户的注意或者不容易记住。然而,如果广告以用户的朋友或最喜欢的明星之一为特征,则这样的广告可能吸引用户的注意,并且使得用户观看广告直至结束。能够使用各种技术来实施本公开。例如,在本文中描述的方法能够通过在计算机系统上运行的软件来实施,和/或通过利用微处理器的组合或其它特别设计的专用集成电路(ASIC)、可编程逻辑设备或者其组合的硬件来实施。特别地,在本文中描述的方法能够通过驻留在诸如磁盘驱动器或计算机可读介质的非易失性存储介质上的一系列计算机可执行指令来实施。需要注意的是,在本文中公开的方法能够通过诸如移动设备、个人计算机、服务器、网络节点等的计算设备来实施。

为了该专利申请的目的,除非另有说明或通过使用它们的上下文明确地另有规定,术语“或”和“和”应该表示“和/或”。除非另有说明或“一个以上”的使用明确不当,否则术语“一个”应该表示“一个以上”。术语“包括”、“包含”是可互换的,并且不是限制性的。例如,术语“包括”应该解释为“包括但不限于”。

根据本公开的一个实施例,用于面部再现的示例方法可以包括通过计算设备接收目标视频。目标视频可以包括至少一个目标帧。至少一个目标帧可以包括目标面部。该方法还可以包括通过计算设备接收源视频。源视频可以包括源面部。该方法还可以包括,通过计算设备并且基于目标视频的至少一个目标帧中的目标面部来确定至少一个目标面部表情。该方法还可以包括,通过计算设备并且基于源视频的帧中的源面部来确定至少一个源面部表情。该方法还可以包括,通过计算设备并且使用参数化面部模型和纹理模型来合成输出面部。输出面部可以包括其中修改目标面部表情以模仿源面部表情的目标面部。该方法还可以包括,通过计算设备并且基于DNN生成嘴部区域和眼部区域。该方法还可以包括,通过计算设备组合输出面部、嘴部区域和眼部区域从而生成输出视频的帧。

现在参考附图描述典型实施例。附图是理想的示例性实施例的示意图。从而,对于本领域技术人员来说显然地,在本文中讨论的示例性实施例不应该被理解为限于在本文中呈现的特定图示,而且这些示例性实施例能够包括差异并且与在本文中呈现的图示不同。

图1示出示例性环境100,其中能够实践用于面部再现的方法。环境100可以包括计算设备110、用户130、和基于云的计算源170(也称为计算云170)。计算设备110可以包括相机115和图形显示系统120。计算设备110可以指诸如移动电话、智能手机或平板电脑的移动设备。然而,在其它实施例中,计算设备110可以指个人计算机、膝上型计算机、上网本、机顶盒、电视设备、多媒体设备、个人数字助理、游戏控制台、娱乐系统、信息娱乐系统、车辆计算机或任意其它计算设备。计算设备110能够经由数字网络通信连接到计算云170。基于云的计算源170能够包括在远程位置处可用和可通过网络(例如,互联网)访问的计算源(硬件和软件)。基于云的计算源能够由多个用户共享,并且能够基于需求动态重新分配。基于云的计算源能够包括一个以上的服务器场/集群,该服务器场/集群包括能够利用网络交换机和/或路由器位于同一位置的计算机服务器的集合。在本公开的一些实施例中,计算设备110能够被配置为显示目标视频125。目标视频125可以包括至少一个帧,该至少一个帧包括目标面部140。在一些实施例中,目标视频125可以包括单个图像。在一些实施例中,目标视频125能够预先记录和存储到计算设备125的存储器中或者计算设备125通信连接到的基于云的计算源中。

在特定实施例中,计算设备110可以被配置为经由例如相机115来捕捉源视频。源视频至少可以包括用户110的面部(也称为源面部)。在一些其它实施例中,源视频能够存储在计算设备110的存储器中或计算云170中。

在一些其它实施例中,一些目标视频或图像能够预先记录和存储在计算设备110的存储器中或计算云170中。用户可以选择要操纵的目标视频或图像、以及要用于操纵目标视频或图像的一个源视频。根据本公开的各个实施例,计算设备110能够被配置为分析源视频以提取用户110的面部表情的参数。计算设备110能够进一步构造为基于源面部的面部表情的参数来修改目标视频125,以使得目标面部140实时地重复源面部的面部表情。在其它实施例中,计算设备还能够被配置为修改目标视频125,以使得目标面部140重复用户110的语音。

在本公开的一些实施例中,计算设备可以被配置为接收用户输入。用户输入可以包括表示如何控制目标面部的面部参数的一个以上的场景。场景可以包括用户130希望在修改的目标视频125中看到的目标面部140的一系列的面部表情的类型和移动的类型。用户输入还可以包括表示用于生成修改的视频的计算设备的类型的环境变量。

在本公开的一些其它实施例中,计算设备110或基于云的计算源170可以存储用户110的一个以上的图像。图像可以包括用户110的面部。图像还能够包括在不同条件下拍摄的一组照片或一组视频。例如,能够相对于用户130的面部从不同的角度并且在不同的照明条件下拍摄照片和视频。在一些实施例中,计算设备110或计算云170可以存储其它个体(例如,用户110的朋友或用户110最喜欢的明星)的一个以上的图像。

根据本公开的一些实施例,计算设备110或基于云的计算源170能够被配置为分析所存储的用户130的图像以提取用户130的面部参数。计算设备110或基于云的计算源170还能够被配置为,基于用户130的面部参数通过利用用户130的面部替换目标视频125中的目标面部140来修改目标视频125。

类似地,计算设备110或基于云的计算源170能够被配置为,分析所存储的用户130的图像以提取其它个体(例如,用户130的朋友或用户130最喜欢的明星)的面部参数。计算设备110还能够被配置为,基于个体的面部参数通过利用个体的面部替换目标视频125中的目标面部140来修改目标视频125。在一些实施例中,计算设备110或基于云的计算源170能够被配置为在利用用户130或其它个体的面部替换目标面部的同时保持目标面部140的面部表情不变。在图2所示的示例中,计算设备110包括硬件组件和软件组件。特别地,计算设备110包括相机115或任意其它图像捕捉设备或扫描仪,以获取数字图像。计算设备110还能够包括处理器模块210以及用于存储软件组件和处理器可读(可机读)指令或代码的存储模块215,当由处理器模块210执行时,软件组件和处理器可读(可机读)指令或代码使得计算设备200执行如在本文中描述的用于面部再现的方法的至少一些步骤。

计算设备110还能够包括面部再现系统220,该面部再现系统220能够包括硬件组件(例如,分离的处理模块和存储器)、软件组件或者其组合。面部再现系统220能够被配置为执行如在本文中描述的面部再现。下面将参考图4更加详细地描述面部再现系统220。

计算设备110还能够包括用于提供个性化广告的系统700。下面将参考图7更加详细地描述系统700。

图3是示出根据一个示例性实施例的面部再现系统220的功能300的示意图。根据本公开的各个实施例,面部再现系统220可以接收源视频305和目标视频125。源视频305可以包括一个以上的帧310。帧310可以包括源面部315。目标视频125可以包括一个以上的帧320。帧320可以包括目标面部140。在一些实施例中,目标视频125可以仅包括一个帧(换句话说,单个照片)。源面部315与目标面部140的面部表情可以是不同的。

在本公开的一些实施例中,面部再现系统220能够被配置为分析源视频305的帧310以提取源参数330。能够通过将参数化面部模型拟合到源面部315而提取源参数330。参数化面部模型可以包括模板网格。模板网格中的顶点的坐标可以取决于两个参数:面部标识和面部表情。因此,源参数330可以包括对应于源面部315的面部标识和面部表情。源参数330还可以包括源面部315的纹理。纹理可以包括模板网格中的顶点的颜色。在一些实施例中,与模板网格相关联的纹理模型能够用于确定源面部315的纹理。

在本公开的一些实施例中,面部再现系统220能够被配置为分析目标视频305的帧320以提取目标参数335。能够通过将参数化面部模型拟合到目标面部140而提取目标参数335。目标参数335可以包括对应于目标面部140的面部标识和面部表情。源参数330还可以包括目标面部140的纹理。能够使用纹理模型得到目标面部140的纹理。

在本公开的一些实施例中,面部再现系统220还能够被配置为利用来自源参数330的面部表情替换目标参数335中的面部表情。面部再现系统220还能够被配置为使用参数化面部模型、纹理模型和具有替换的面部表情的目标参数335来合成输出面部350。输出面部350能够用于替换目标视频125的帧中的目标面部140,以得到输出视频340的帧345。

图4是根据一个示例性实施例的面部再现系统220的框图。面部再现系统220能够包括参数化面部模型405、纹理模型410、DNN 415、预处理模块420、参数提取模块425、面部合成模块425、以及嘴部和眼部生成模块430。模块405-430能够实施为与诸如计算设备110、服务器等硬件设备一起使用的软件组件。

在本公开的一些实施例中,能够基于预定义数量的不同年龄、性别和种族背景的个体的图像预生成参数化面部模型405。对于每个个体,图像可以包括具有中性面部表情的个体的图像以及具有不同面部表情的个体的一个以上的图像。面部表情可以包括张开嘴、微笑、生气、吃惊等。

参数化面部模型405可以包括具有预定义数量顶点的模板网格。模板网格可以表示为限定头部形状的3D三角测量。每个个体能够与个体特定的混合形状相关联。能够将个体特定的混合形状调整到模板网格。个体特定的混合形状可以对应于模板网格中的顶点的特定坐标。从而,个体的不同图像可以对应于相同结构的模板网格,然而,模板网格中的顶点的坐标对于不同的图像是不同的。

在本公开的一些实施例中,参数化面部模型可以包括取决于两个参数即面部标识和面部表情的双线性面部模型。能够基于对应于个体的图像的混合形状建立双线性面部模型。因此,参数化面部模型包括预定结构的模板网格,其中,顶点的坐标取决于面部标识和面部表情。

在本公开的一些实施例中,纹理模型410能够包括对应于个体的图像的纹理矢量的线性空间。能够将纹理矢量确定为模板网格的顶点处的颜色。

能够使用参数化面部模型405和纹理模型410基于面部标识、面部表情和纹理的已知参数来合成面部。还能够使用参数化面部模型405和纹理模型410基于新面部的新图像来确定面部标识、面部表情和纹理的未知参数。

使用参数化面部模型405和纹理模型410合成面部不费时间;然而,合成的面部可能不是逼真的,特别是嘴部和眼部区域。在本公开的一些实施例中,能够将DNN 415训练为生成面部的嘴部和眼部区域的逼真图像。能够使用说话个体的视频集合来训练DNN 415。能够从视频的帧中捕捉说话个体的嘴部和眼部区域。能够使用生成对抗网络(GAN)训练DNN415,从而基于预定数量的嘴部和眼部区域的先前帧以及期望的当前帧的面部表情来预测面部的嘴部和眼部区域。能够在特定时刻提取嘴部和眼部区域的先前帧的面部表情的参数。DNN 415可以允许利用期望的面部表情的参数来合成嘴部和眼部区域。DNN 415还可以允许利用先前帧来得到空间相干性。

GAN对从面部模型呈现的嘴部和眼部区域、当前的表情参数进行调节,并且将来自先前生成图像的特征嵌入,并且使得相同的区域更加逼真。使用DNN 415生成的嘴部和眼部区域能够用于替换由参数化面部模型405合成的嘴部和眼部区域。需要注意的是,通过DNN合成嘴部和眼部区域可以比通过DNN合成整个面部消耗更少的时间。因此,例如,能够通过诸如智能手机或平板的移动设备的一个以上的处理器实时地使用DNN生成嘴部和眼部区域。

在一些实施例中,预处理模块420能够被配置为接收目标视频125和源视频305。目标视频125可以包括目标面部,并且源视频可以包括源面部。预处理模块420还能够被配置为对目标视频的至少一个帧进行分割,以得到目标面部140和目标背景的图像。能够使用神经网络、遮片和平滑来进行分割。相似地,预处理单元能够被配置为对源视频305的帧进行分割,以得到源面部315和源背景的图像。

在一些实施例中,预处理模块420还能够被配置为使用参数化面部模型405和纹理模型410基于目标视频125的至少一个帧来确定目标参数集。在一些实施例中,目标参数集可以包括目标面部标识、目标面部表情和目标纹理。在一些实施例中,预处理模块420还可以被配置为使用参数化面部模型405和纹理模型410基于源视频305的至少一个帧确定源参数集。源参数集可以包括源面部标识、源面部表情和源纹理。

在一些实施例中,面部合成模块425能够被配置为将源视频305的帧中的源面部310的面部表情传送到目标视频的目标面部140。在一些实施例中,面部合成模块425能够被配置为判定与参数化面部模型相关联的输出参数集。在特定实施例中,能够将变形传送应用于目标参数集以解释源面部310的面部表情,并从而得到输出参数集。

在一些实施例中,面部合成模块425能够被配置为利用源面部表情替换目标参数集中的目标面部表情,以得到输出参数集。面部合成模块425还能够被配置为使用输出参数集以及参数化面部模型405和纹理模型4410合成输出面部。

在一些实施例中,能够将二维(2D)变形应用于目标面部,以得到隐藏在目标面部中的输出面部的区域的逼真图像。能够基于参数化面部模型的源参数集确定2D变形的参数。

在一些实施例中,嘴部和眼部生成模块430能够被配置为基于源面部表情和目标视频125的至少一个先前帧使用DNN 415来生成嘴部和眼部区域。嘴部和眼部生成模块还能够被配置为,利用通过DNN 415合成的嘴部和眼部区域来替换通过参数化面部模型405和纹理模型410合成的输出面部中的嘴部和眼部区域。

在其它实施例中,面部再现系统220可以包括:用于改变目标视频中的背景的模块、用于改变目标面部的发型或外观的模块、和用于在目标视频中添加视觉效果的模块。一些其它实施例可以包括将其它参数从源视频305传送到目标视频125,并且其它参数包括但不限于头部移动、身体姿态和朝向、以及话语。

图5是示出根据示例性实施例的用于面部再现的方法500的流程图。方法500能够通过计算设备110执行。

方法500能够在框505中开始,通过计算设备110接收目标视频。目标视频可以包括至少一个目标帧。至少一个目标帧可以包括目标面部。

在框510中,方法500可以包括通过计算设备110接收源视频。源视频可以包括源面部。

在框515中,方法500可以包括通过计算设备110并且基于目标视频的至少一个帧中的目标面部来至少确定目标面部表情。

在框520中,方法500可以包括通过计算设备110并且基于源视频的帧中的源面部来至少确定源面部表情。

在框525中,方法500可以包括通过计算设备110并且使用参数化模型和纹理模型410来合成输出面部。输出面部可以包括其中修改目标面部表情以模仿源面部表情的目标面部。

在框530中,方法500可以包括通过计算设备并且基于DNN 415来生成嘴部区域和眼部区域。

在框535中,方法500可以包括通过计算设备110组合输出面部、嘴部区域和眼部区域,以生成输出视频的帧。

图6是示出根据示例性实施例的个性化视频的生成的示意图600。在图6的示例中,目标视频610包括以演员615为特征的广告。面部再现系统220能够用于利用源图像620中的个体625的面部来替换广告中的演员615的面部。输出视频630可以包括在目标视频610中示出的广告,其中,演员615的面部由源图像620中的个体625的面部替换。

图7是根据本公开的一些示例性实施例的用于提供个性化广告的系统700的框图。系统700可以包括视频数据库710、用户信息收集模块720、和个性化视频生成模块730。系统700的模块能够实施为存储在计算设备110和/或计算云170的存储器中从而由计算设备110和/或计算云170的一个以上的处理器执行的指令。例如,系统700能够在用于一个以上社交网络的移动应用、桌面应用、或基于网络的应用中实施。

视频数据库710可以存储一个以上的视频。视频能够包括预先存储的以一个演员或多个演员为特征的高质量视频广告。视频可以包括2D视频或3D场景。能够预处理视频,以分割每个帧中的演员的面部和背景并且识别可以用于进一步插入源面部代替演员的面部的参数集。参数集可以包括面部纹理、面部表情、面部颜色、面部标识、面部的位置和角度等。参数集还可以包括能够对演员的面部执行的操纵和操作的列表,诸如以逼真的方式进行的演员面部的替换。

用户信息收集模块720能够接收关于将用于个性化的个体的信息。在一些实施例中,用户信息收集模块720可以接收视觉信息,例如个体的一个以上的照片或一个以上的视频。优选地,能够在不同条件,诸如相对于个体面部的不同的位置和角度以及不同的照明条件下拍摄照片和视频。用户信息收集模块720可以处理个体的一个以上的照片或一个以上的视频,以确定与个体相关联的参数集。参数集可以包括与个体相关联的面部纹理、面部表情、面部颜色和面部标识。在一些实施例中,模块720可以生成在个体的照片或视频中被遮盖的个体的面部的隐藏部分。例如,个体可以戴眼镜。能够使用DNN生成隐藏部分或与隐藏部分相关联的参数(面部纹理、面部表情、面部颜色和面部标识。能够使用GAN训练DNN,以预测个体的面部的隐藏部分,例如,嘴部区域、眼部区域和头部区域。

在一些实施例中,系统700能够用于社交网络。在这些实施例中,信息收集模块720能够从用户的社交网络帐户得到关于个体的信息。从社交网络得到的信息可以包括用户的照片和视频、用户的朋友和兴趣的列表、以及用户的朋友的照片。用户还能够上传要用于替换广告中的演员的照片和视频。用户还可以选择要用于替换广告中的演员的面部的照片和视频。在特定实施例中,信息收集模块720可以从存储在用户的计算设备110中的数据得到诸如用户的照片和视频、用户的朋友和兴趣的列表、以及用户的朋友的照片的信息。在一些实施例中,模块700可以(基于用户的朋友和兴趣的列表)选择在广告中将要示出其面部的个体。该个体能够是用户、用户的朋友之一或用户最喜欢的明星。

个性化视频生成模块730能够基于用户信息根据存储在数据库710中的一个以上的视频生成个性化广告。在一些实施例中,模块730可以自动确定用户信息,以用于生成个性化广告并且将得到的个性化广告展示给用户。在特定实施例中,用户可以指示要使用的用户信息(特别个体的特定照片或视频),并且通过将选择的个体的面部插入到视频而请求生成个性化广告。例如,用户能够利用用户自己的面部创建个性化广告,并且然后将其发布在社交网络上,使得用户的所有关注者都能够看到以该用户为特征的广告。模块730还可以根据用户请求将个性化广告存储在用户的计算设备110的存储器中。模块730还可以接收关于个性化广告的观看频率的信息。

模块730可以通过使用面部再现系统利用选择的人的面部替换广告中的演员的面部,如以上参考图3和图4所描述的。模块730可以利用所选择的人的面部纹理、面部颜色和面部标识替换演员的面部纹理、面部颜色和面部标识。模块730还能够将用户的头发、衣服等传送到新图像或视频。在新图像或视频中,模块730还可以在所选择的人的面部的眼部区域上增加眼镜的图像。类似地,在新图像或视频中,模块730可以在所选择的人的头部增加头饰的图像(例如、帽子、头盔等)。眼镜和头饰的图像能够预存储在用户的计算设备110中或者生成。能够使用DNN生成眼镜和头饰的图像。模块730还可以将颜色应用于新图像中的面部。例如,模块730可以对选择的人的面部增加晒黑。

图8是示出根据本公开的一些示例性实施例的用于提供个性化广告的方法500的流程图。方法800能够通过在图7中描述的系统700执行。

方法800可以在框805中开始,并且将一个以上的广告视频存储在数据库中。广告视频可以至少包括与第一个体相关联的目标面部。

在框810中,方法700可以通过用户信息收集模块继续接收与用户相关联的用户数据。用户数据可以包括至少一个源面部的图像。源面部能够与不同于第一个体的第二个体相关联。

在框815中,方法800可以包括通过用户信息收集并且基于用户数据来确定源面部的参数。

在框820中,方法800可以通过个性化视频生成模块将广告视频的帧分割为第一部分和第二部分。第一部分可以包括目标面部,并且第二部分可以包括背景。

在框825中,方法800可以通过个性化视频生成模块并且基于源面部的参数修改帧的第一部分,以利用源面部替换目标面部。

在可选框830中,方法800可以通过个性化视频生成模块对修改的帧的第一部分施加一个以上的特殊效果。例如,方法800可以对修改的第一部分中的面部施加晒黑,对面部的眼部区域或头部增加眼镜、和/或在头部或面部增加帽子、头盔或其它头饰。

在框835中,方法800可以通过个性化视频生成模块将修改的第一部分与第二部分组合,以得到输出广告视频的输出帧。

图9示出可以用于实施在本文中描述的方法的示例计算系统900。计算系统900可以在计算设备110、面部再现系统220、参数化面部模型405、纹理模型410、DNN 415、预处理模块420、面部合成模块425以及嘴部和眼部生成模块430的环境中实施。

如图9中所示,计算系统900的硬件组件可以包括一个以上的处理器910和存储器920。存储器920部分地存储用于由处理器910执行的指令和数据。当系统900运行时,存储器920能够存储可执行代码。系统900还可以包括:可选的大容量存储设备930、可选的可移动存储介质驱动器940、一个以上可选的输出设备950、一个以上可选的输入设备960、可选的网络接口970、以及一个以上可选的周边设备980。计算系统900还能够包括一个以上的软件组件995(例如,能够实施如在本文中描述的用于面部再现的方法的软件组件)。

在图9中示出的组件描绘为经由单个总线990连接。组件可以通过一个以上的数据传输装置或数据网络连接。处理器910和存储器920可以经由本地微处理器总线连接,并且大容量存储设备930、周边设备980、可移动存储设备940、和网络接口970可以经由一个以上的输入/输出(I/O)总线连接。

可以通过磁盘驱动器、固态盘驱动器或光盘驱动器实施的大容量存储设备930是用于存储由处理器910使用的数据和指令的非易失性存储设备。大容量存储设备930能够存储用于实施在本文中描述的实施例的系统软件(例如,软件组件995)。

可移动存储介质驱动器940与诸如光盘(CD)或数字视频盘(DVD)的可移动非易失性存储介质连同运行,以将数据和代码输入到计算系统900和从计算系统900输出。用于实施在本文中描述的实施例的系统软件(例如,软件组件995)可以存储于这样的可移动介质,并且经由可移动存储介质驱动器940输入到计算系统900。

可选的输入设备960提供了用户接口的一部分。输入设备960可以包括用于输入字母数字和其它信息的诸如键盘的字母数字键盘,或者诸如鼠标、轨迹球、触笔或光标方向键的点击设备。输入设备960还能够包括相机或扫描仪。另外,在图9中示出的系统900包括可选的输出设备950。适当的输出设备包括扬声器、打印机、网络接口和监视器。

网络接口970能够经由一个以上的通信网络与外部设备、外部计算设备、服务器和网络系统通信,一个以上的通信网络诸如一个以上的有线、无线或光纤网络,包括例如互联网、内部网、LAN、WAN、蜂窝电话网络、蓝牙无线电和基于IEEE 802.11的射频网络等等。网络接口970可以是网络接口卡(例如以太网卡)、光收发器、射频收发器或者能够发送和接收信息的任意其它类型的设备。可选的周边设备980可以包括任意类型的计算机支持设备,以对计算机系统增加额外功能。

包含在计算系统900中的组件旨在表示广泛类别的计算机组件。从而,计算系统900能够是服务器、个人计算机、手持计算设备、电话、移动计算设备、工作站、小型计算机、大型计算机、网络节点或任意其它计算设备。计算系统900还能够包括不同的总线构造、网络平台、多处理器平台等。能够使用各种操作系统(OS),包括UNIX、Linux、Windows、Macintosh OS、Palm OS和其它适当的操作系统。

上述一些功能可以由存储于存储介质的指令构成(例如,计算机可读介质或处理器可读介质)。指令可以由处理器检索和执行。存储介质的一些示例是存储设备、磁带、磁盘等。当由处理器执行时,指令是可运行的,以指导处理器根据本发明进行运行。本领域技术人员对指令、处理器和存储介质是熟悉的。

值得注意的是,适于执行在本文中描述的处理的任意硬件平台都适于与本发明一起使用。在本文中所使用的的术语“计算机可读存储介质”是指参与向处理器提供指令以执行的任意介质。这样的介质能够采用许多形式,包括但不限于非易失性介质、易失性介质和传输介质。例如,非易失性介质包括光盘或磁盘,诸如硬盘。易失性介质包括动态存储器,诸如系统随机存取存储器(RAM)。传输介质包括同轴电缆、铜线和光纤等,其中包括包含总线的一个实施例的电线。传输介质还能够采用声波或光波的形式,诸如在射频(RF)和红外(IR)数据通信期间产生的那些声波或光波。计算机可读介质的常见形式包括例如软盘、硬盘、磁带、任意其它磁介质、CD只读存储器(ROM)盘、DVD、任意其它光学介质、具有标记或孔的图案的任意其它物理介质、RAM、PROM、EPROM、EEPROM、任意其它存储器芯片或盒、载波、或计算机能够从中读取的任意其它介质。

各种形式的计算机可读介质可以涉及将一个以上指令的一个以上序列运送到处理器以执行。总线将数据运送到系统RAM,处理器从中检索和执行指令。可选择地,由系统处理器接收的指令能够在由处理器执行之前或之后存储于硬盘。

因此,已经描述了用于面部再现的方法和系统。虽然已经参考特定示例性实施例描述了实施例,但是显然地,能够在不背离本申请的更广精神和范围的情况下对那些示例性实施例做出各种变形和修改。因此,应该将说明书和附图认为是说明性的,而不是限制性的。

相关技术
  • 用于面部再现的系统和方法
  • 用于基于面部识别交换面部和面部部件的系统和方法
技术分类

06120113236164