发明内容
在当前的视频换脸中,视频换脸技术本身具有局限性,例如对于一些动漫类型的电影,无法将用户的脸替换到该动漫类型电影中。原因在于动漫的背景以及动漫中的人物都是卡通化的,用户的脸会显得很突兀。此外,每种视频属于不同的风格派系,不同的用户对不同风格派系的电影喜爱程度也不同。例如用户喜欢某视频的剧情,但不喜欢该视频的风格,而换脸只是局部的人脸替换,而无法实现整体视频风格的切换。
有鉴于此,有必要提供一种可以缓解、减轻或甚至消除上述问题的用于视频处理的方法、装置、系统、计算设备及存储介质。
根据本发明的一方面,提出了一种用于视频处理的方法。该方法包括:接收来自用户的第一输入,第一输入用于请求使用用户输入的脸部图像替换视频中角色的脸部;接收用户输入的脸部图像;响应于用户输入的脸部图像的风格与视频的风格不相匹配,基于视频的风格对用户输入的脸部图像的风格进行迁移,使得用户输入的脸部图像的风格与视频的风格相匹配,使用风格迁移后的脸部图像替换视频中角色的脸部;响应于用户输入的脸部图像的风格与视频的风格相匹配,使用用户输入的脸部图像替换视频中角色的脸部;和显示脸部替换后的视频。
在一些实施例中,该方法还包括:接收来自用户的第二输入,第二输入请求对脸部替换后的视频的风格进行迁移和指示意图迁移的风格类型;基于意图迁移的风格类型对脸部替换后的视频进行风格迁移。
在一些实施例中,该方法中基于视频的风格对用户输入的脸部图像的风格进行迁移,使得用户输入的脸部图像的风格与视频的风格相匹配包括:将用户输入的脸部图像和视频的风格输入脸部风格迁移网络中,其中,脸部风格迁移网络包括经预先训练的图像转换网络和经预先训练的第一损失计算网络;输出与视频的风格相匹配的风格迁移后的脸部图像。
在一些实施例中,用风格迁移后的脸部图像替换视频中角色的脸部包括:将风格迁移后的脸部图像和视频的一个或多个帧输入经预训练的深度神经网络,输出脸部替换后的视频的一个或多个帧,经预训练的深度神经网络至少包括编码器和解码器,编码器用于对视频中的一个或多个帧进行编码,解码器用于对经编码的视频中的一个或多个帧进行解码以输出用风格迁移后的脸部图像替换了视频中角色的脸部的脸部替换后的视频。
在一些实施例中,以用户的输入的脸部图像替换视频中角色的脸部包括:将用户的输入的脸部图像和视频的一个或多个帧输入经预训练的深度神经网络,输出脸部替换后的视频的一个或多个帧,经预训练的深度神经网络至少包括编码器和解码器,编码器用于对视频中的一个或多个帧进行编码,解码器用于对经编码的视频中的一个或多个帧进行解码以输出脸部替换后的视频。
在一些实施例中,基于意图迁移的风格类型对脸部替换后的视频进行风格迁移包括:将意图迁移的风格类型和脸部替换后的视频输入视频风格迁移网络中,输出风格与意图迁移的风格类型相匹配的风格迁移后的视频,其中,视频风格迁移网络包括经预先训练的风格化网络和经预先训练的第二损失计算网络。
在一些实施例中,经预先训练的第一损失计算网络针对第一损失函数进行迭代,第一损失函数至少包括内容损失部分和风格损失部分。
在一些实施例中,经预先训练的第二损失计算网络针对第二损失函数进行迭代,第二损失函数至少包括时间损失部分和空间损失部分。
在一些实施例中,第一损失计算网络和第二损失计算网络中的至少一个包括计算机视觉组VGG-16网络。
根据本发明的另一方面,提出了一种用于视频处理的装置。该装置包括:第一接收模块、第二接收模块、脸部替换模块和显示模块。第一接收模块被配置成接收来自用户的第一输入,第一输入用于请求使用用户输入的脸部图像替换视频中角色的脸部。第二接收模块被配置成接收用户输入的脸部图像。脸部替换模块被配置成响应于用户输入的脸部图像的风格与视频的风格不相匹配,基于视频的风格对用户输入的脸部图像的风格进行迁移,使得用户输入的脸部图像的风格与视频的风格相匹配,使用风格迁移后的脸部图像替换视频中角色的脸部;响应于用户输入的脸部图像的风格与视频的风格相匹配,使用用户输入的脸部图像替换视频中角色的脸部。显示模块被配置成显示脸部替换后的视频。
在一些实施例中,该装置还包括第三接收模块和视频风格迁移模块。第三接收模块被配置成接收来自用户的第二输入,第二输入请求对脸部替换后的视频的风格进行迁移和指示意图迁移的风格类型。视频风格迁移模块被配置成基于意图迁移的风格类型对脸部替换后的视频进行风格迁移。
根据本发明的又一方面,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,计算机程序被处理器执行时,使得处理器执行根据前述方面提供的用于视频处理的方法的步骤。
根据本发明的又一方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行根据前述方面提供的用于视频处理的方法的步骤。
根据本发明的实施例的用于视频处理的方法通过在视频播放菜单中增加视频切换的入口和提供用户可选的风格列表,实现了一种更彻底的换脸。具体地,响应于用户输入脸部图像的风格与视频风格不匹配,对用户输入的脸部图像的风格进行迁移之后再进行人脸替换,使得用户的脸部风格与视频风格相匹配而不会显得突兀。人脸的替换后,会随着视频的风格迁移而迁移,从而使得观众可以将自己的脸换到任何一部风格的影视剧中。此外,用户还可以将视频/影视剧的风格迁移为自己喜欢的风格。当前许多电影、电视、动画剧情非常有趣,但由于不同的人对视频的风格不太喜欢,导致用户的观看意愿降低。使用根据本发明的用于视频处理的方法,在保留视频剧情的前提下,可以将视频切换成用户喜爱的风格,从而使得最终的视频形象与用户喜欢的风格更贴合,大大提升了用户体验度。通过该用于视频处理的方法可以进一步增加这种互动的趣味性,提升了互动体验。通过增加可供用户选择一键替换视频风格的功能,使得视频处理模型的复杂度降低,节省了存储资源。在换脸的基础上,还可以视频风格迁移,使得之前存在的风格不适用于换脸(即,会因为换脸显得突兀)的视频也可以被用户用于换脸,增强了视频处理方法的通用性。
根据在下文中所描述的实施例,本发明的这些和其它方面将是清楚明白的,并且将参考在下文中所描述的实施例而被阐明。
具体实施方式
下面的说明提供用于充分理解和实施本公开的各种实施例的特定细节。本领域的技术人员应当理解,本公开的技术方案可以在没有这些细节中的一些的情况下被实施。在某些情况下,并没有示出或详细描述一些熟知的结构和功能,以避免不必要地使对本公开的实施例的描述模糊不清。在本公开中使用的术语以其最宽泛的合理方式来理解,即使其是结合本公开的特定实施例被使用的。
在详细介绍本发明的实施例之前,首先对一些相关的概念进行解释:
1、深度学习(Deep Learning, DL):含多个隐藏层的多层感知器就是一种深度学习结构。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。研究深度学习的动机在于建立模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,例如图像、声音和文本等。
2、计算机视觉技术(Computer Vision, CV):计算机视觉是一门研究如何使机器“看”的科学。更进一步的说,计算机视觉是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步使用计算机做图形处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
3、Deepfakes:指是的是一种人工智能的深度换脸技术。简言之,就是脸部替换,可以将第一人物的脸换到第二人物的脸上。与Photoshop (PS)不同,Deepfakes不仅可以生成图片,还可以生成视频。Deepfakes是程序进行深度计算再换脸,其需要预先将视频分解成一帧帧图片再进行处理的。例如一个30秒的视频,每秒是25帧,那么这个视频就总共有30*25=750张图片要处理;
4、风格迁移:指图像从原风格转换到另外一个风格,同时保证图像内容没有变化的方式。例如,将一张图的画风变成梵高的星夜画风后,图片内容仍然清晰可见。
图1示意性示出了根据本发明一个实施例的图形用户界面示意图100。如图所示,界面100为用户观看视频的界面图,在视频中存在一个或多个人物角色。通过在视频播放菜单中增加视频切换的入口和提供用户可选的风格列表,实现了一种更彻底的换脸。用户可以通过选择界面100下方的换脸标签来启动换脸功能。换脸标签包括是否针对视频片段换脸、是否针对完整视频换脸、替换视频中的角色1、替换视频中的角色2、替换视频中的角色3等子标签。如本领域技术人员所理解的,角色的数量不限于3。例如,在用户可以勾选针对视频片段换脸的情况下,弹出请输入人脸图像的对话框,提示用户输入意图用于替换视频中的特定角色的图像。在用户输入图像后,服务器对用户输入的图像进行检查,例如图像中是否存在面部特征,面部朝向是否正确,清晰度是否满足预定要求(例如,高于预定阈值)等。在用户输入的图像满足预定要求的情况下,使用该用户输入的图像对视频中的角色进行替换。例如对于一些动漫类型的电影,将用户的脸替换到动漫中会显得很突兀,原因在于动漫的背景以及动漫中的人物都是卡通化的。在这种情况下,服务器在接收到用户输入的图像后,首先基于视频的风格对用户输入的图像进行风格迁移,使得用户输入图像的风格与视频的风格相匹配。然后,使用风格迁移后的用户输入的图像对视频中角色的脸部进行替换。用户可以通过界面上的导出按钮,预览和/或保存生成的脸部替换后的视频。如本领域技术人员所理解的,这里“换脸”不仅仅限于脸部的替换,也可以是人体的任何其他部分或整个人体,脸部也不限于人物的脸部,还可以是动物或卡通漫画形象或本领域技术人员所能想到的任何其他脸部。
这里,用户还可以通过视频界面下方的视频风格迁移按钮对视频中的片段或完整视频进行风格迁移。这里的视频可以是未脸部替换后的视频,也可以是脸部替换后的视频。用户可以根据自己对视频风格的喜好对视频风格进行切换和迁移。例如,有些用户喜欢卡通类型的视频,有些用户喜欢古代欧洲类型的视频,有些用户喜欢中华田园山水画类型的视频,有些用户喜欢暗黑类型的视频。通过选择界面中的动漫、古代欧洲、田园山水、风水画或暗黑等标签,可以实现与该风格相对应的视频风格迁移。
图2示意性示出了根据本发明一个实施例的示例应用场景200。服务器201经由网络202与用户终端203连接。用户终端203可以是例如笔记本电脑、个人电脑、平板电脑、手机、电视等。网络202可以包括有线网络(例如LAN、电缆等等)和无线网络(例如WLAN、蜂窝、卫星等等)、因特网等。在用户终端203上安装有用于观看视频的应用程序。用户在通过用户终端203上安装的该应用程序观看视频并且希望针对该视频或该视频的片段进行换脸或风格迁移时,可以点击该应用程序呈现的相应“换脸”或“视频风格迁移”图标(如图1中所示)。响应于用户点击了相应“换脸”或“视频风格迁移”图标,应用程序呈现出相应人物的经换脸或视频风格迁移后的视频效果。相应人物的剪辑片段是在服务器201处或用户终端203处(也可以在用户终端203和服务器201二者处)通过执行本发明所提出的视频处理方法得到的。
图3示意性示出了根据本发明一个实施例的用于视频处理的方法300的流程图。在一个实施例中,方法300由服务器执行。如本领域技术人员所理解的,该方法300也可以在用户终端处执行。在步骤301处,接收来自用户的第一输入,第一输入用于请求使用用户输入的脸部图像替换视频中角色的脸部。例如,在用户点击了图1中界面中的换脸图标后,服务器就接收到了以用户输入的脸部图像来替换视频中角色的脸部的请求。在步骤302处,接收用户输入的脸部图像。用户通过例如图1中提示用户输入图像的提示框来导入意图用于替换视频中角色脸部的图像。在用户输入图像后,服务器对用户输入的图像进行检查,例如图像中是否存在面部特征,面部朝向是否正确,清晰度是否满足预定要求(例如,高于预定阈值)等。在用户输入的图像满足预定要求的情况下,使用该用户输入的图像对视频中的角色进行替换。这里,用户输入的脸部图像可以是用户自身的脸部图像,也可以是其他人物的脸部图像。然后,在用户输入的脸部图像的风格与视频的风格不相匹配的情况下,步骤进行至303,响应于用户输入的脸部图像的风格与视频的风格不相匹配,基于视频的风格对用户输入的脸部图像的风格进行迁移,使得用户输入的脸部图像的风格与视频的风格相匹配,使用风格迁移后的脸部图像替换视频中角色的脸部。这里,基于视频的风格对用户输入的脸部图像的风格进行迁移,使得用户输入的脸部图像的风格与视频的风格相匹配包括:将用户输入的脸部图像和视频的风格输入脸部风格迁移网络中,输出风格与视频的风格相匹配的风格迁移后的脸部图像。脸部风格迁移网络包括经预先训练的图像转换网络和经预先训练的第一损失计算网络。根据本发明的实施例的用于视频处理的方法通过在视频播放菜单中增加视频切换的入口和提供用户可选的风格列表,实现了一种更彻底的换脸。具体地,响应于用户输入脸部图像的风格与视频风格不匹配,对用户输入的脸部图像的风格进行迁移之后再进行人脸替换,使得用户的脸部风格与视频风格相匹配而不会显得突兀。人脸的替换后,会随着视频的风格迁移而迁移,从而使得观众可以将自己的脸换到任何一部风格的影视剧中。此外,用户还可以将视频/影视剧的风格迁移为自己喜欢的风格。在体验上,为用户增加了一个新的功能,可供用户选择一键替换视频风格,使得用户体验上更加生动有趣。在换脸的基础上,还可以视频风格迁移,使得之前存在的风格不适用于换脸(即,会因为换脸显得突兀)的视频也可以被用户用于换脸。充分利用了视频资源,例如当前许多电影、电视、动画剧情非常有趣,但是由于不同的人对视频的风格不太喜欢,导致用户的观看意愿降低。但是,使用该技术后,可以在保留视频剧情的前提下,可以将视频切换成用户喜爱的风格,使得同一部视频,大大提高观看数。通过该用于视频处理的方法可以进一步增加这种互动的趣味性,提升了互动体验。下面,结合图4描述脸部风格迁移网络400如何进行脸部风格迁移。
图4示意性示出了根据本发明一个实施例进行脸部风格迁移的脸部风格迁移网络400的示意图。使用脸部风格迁移网络400的目的在于:一方面,针对一些风格的视频(例如,动漫风格的视频)无法直接将观众的脸替换为视频中人物的脸;另一方面,对于一部动漫风格的视频迁移为魔幻主义风格的视频,如果不将观众的脸先动漫化,直接替换动漫视频的任务角色的脸,会导致在进行视频风格迁移过程中,由于每帧视频会存在局部风格不一致(替换后观众的脸与每帧的整体风格),从而会对视频风格迁移的效果有干扰。因此,在进行换脸之前,需要将观众的脸进行风格迁移。图4中
401是用户输入的图像,其首先输入经预先训练的图像转换网络402中,并输出图像
。针对脸部风格迁移,内容目标
404即为输入图像
x 401,风格目标
403是原始视频的风格,并且输出图像
应当结合内容目标
404和风格目标
403。由此可见,针对每种风格训练一个网络。其中图像转换网络402结构如下:
表1 图像转换网络402的结构。
图像转换网络402的输出是后台第一损失计算网络405(这里采用VGG-16)的输入的一部分。这里,VGG-16是预训练好的损失计算网络405。如本领域技术人员所理解的,也可以采用任何其他网络结构来实现损失计算网络405。在一个实施例中,经预先训练的第一损失计算网络405针对第一损失函数进行迭代,第一损失函数至少包括内容损失函数和风格损失函数两部分。内容损失函数如以下式(1)所示:
替代于鼓励输出图像
的像素与目标图像y的像素完全匹配,鼓励它们使用与第一损失网络
计算的相似的特征表示。设
为处理图像
时网络第j层的激活;如果j是卷积层则
将是形状
的特征图。特征重建损失是特征表示之间的(平方,归一化)欧氏距离。
风格损失函数如下式(2)所示:
然后,风格重建损失是输出图像
和目标图像y的Gram矩阵之差的平方Frobenius范数。即使
和
的大小不同,风格重建损失也可以被很好地定义,原因在于它们的Gram矩阵都将具有相同的形状。
总损失函数为:
回到步骤303,在一个实施例中,用风格迁移后的脸部图像替换视频中角色的脸部包括:将用风格迁移后的脸部图像和视频的一个或多个帧输入经预训练的深度神经网络,输出脸部替换后的视频的一个或多个帧。经预训练的深度神经网络至少包括编码器和解码器,该编码器用于对视频中的一个或多个帧进行编码,以及该解码器用于对经编码的视频中的一个或多个帧进行解码以输出用风格迁移后的脸部图像替换了视频中角色的脸部的脸部替换后的视频。在用户输入的脸部图像的风格与视频的风格相匹配的情况下,在步骤304中,以用户的输入的脸部图像替换视频中角色的脸部。在一个实施例中,以用户的输入的脸部图像替换视频中角色的脸部包括:将用户的输入的脸部图像和视频的一个或多个帧输入经预训练的深度神经网络,输出脸部替换后的视频的一个或多个帧,经预训练的深度神经网络至少包括用于对视频中的一个或多个帧进行编码的编码器、和用于对经编码的视频中的一个或多个帧进行解码以输出脸部替换后的视频的解码器。经预训练的深度神经网络可以采用例如图5中示出的结构,下面结合图5a-b对该深度神经网络进行说明。
图5a-b示意性示出了根据本发明一个实施例的用于替换目标人脸的深度神经网络的示意图。在视频应用中风格切换主要用在局部切换,例如视频一键换脸技术:将用户的脸替换成视频中明星的脸,或者将明星的脸替换成用户的脸。这里,换脸主要使用Deepfakes技术。该技术是一种基于深度学习的视频换脸技术,换脸效果好,并且不用收集太多的两组人脸图片,就可以训练出相应的换脸模型。以下,主要说明当前视频基于Deepfakes的视频换脸技术的实现。Deepfakes的核心是“自动编码器”,这个“自动编码器”实际上是深度神经网络,它能够接收数据输入,并将其压缩成一个小的编码,然后从这个编码中重新生成原始的输入数据。下面结合示例说明Deepfakes在视频换脸技术的实现过程,如图5a所示。首先,通过第一行的编码器503,输入一张人物1的扭曲脸的图片501,通过解码器505还原501的脸得到经还原的脸507,从而使的解码器505能够在众多复杂图片中识别并还原出人物1的脸。然后,类似地,通过第二行编码器504,输入人物2的扭曲脸的图片502,通过解码器506后,还原人物2的脸得到经还原的脸508。最后,通过上述两个编码器的不断学习,分别能够识别并抓取到人物1和人物2的脸。因此如图5b所示,利用上述两个编码器,将一个人物1的图片509输入至编码器510,然后通过代码转换,传输至编码器511,输出人物2的图片512。由此,可以实现将人物1的脸换成人物2的脸。
图6a-b进一步示意性示出了根据本发明一个实施例用于替换目标人脸的深度神经网络500中编码器601和解码器602的结构示意图。图6a示出了图5中所示的用于替换目标人脸的深度神经网络500中编码器601;图6b示出了图5中所示的用于替换目标人脸的深度神经网络500中解码器602。
在图6a中,编码器601包括输入6011、第一卷积层(卷积层1)6012、第二卷积层(卷积层2)6013、第三卷积层(卷积层3)6014、第一全连接层(全连接1)6015、第二全连接(全连接2)6016、整形层6017、上采样层6018,最后通过6019输出。然后,输出6019输入解码器602。解码器602包括输入6021、第一上采样层(上采样层1)6022、第二上采样层(上采样层2)6023、第三上采样层(上采样层3)6024、卷积层(卷积1)6025,最后在输出6026处输出。
编码器601和解码器602的优化过程为优化如下函数:
Loss_A = sum( decoder_A( encoder( warp( x1 ) ) ) - x1 )^2 (5)
Loss_B = sum( decoder_B( encoder( warp( x2 ) ) ) – x2 )^2 (6)
其中,warp(x)为人物x的扭曲人脸的函数,loss_A、loss_B 分别为通过编码器601和解码器602后的损失函数,通过模型的反复优化,最后得出编码器模型。
返回图3,在步骤305中,显示脸部替换后的视频。用户可以通过图1中所示导出按钮导出和/或预览脸部替换后的视频。使用根据本发明的用于视频处理的方法,在保留视频剧情的前提下,可以将视频切换成用户喜爱的风格,从而使得最终的视频形象与用户喜欢的风格更贴合,大大提升了用户体验度。通过该用于视频处理的方法可以进一步增加这种互动的趣味性,提升了互动体验。通过增加可供用户选择一键替换视频风格的功能,使得视频处理模型的复杂度降低,节省了存储资源。在换脸的基础上,还可以视频风格迁移,使得之前存在的风格不适用于换脸(即,会因为换脸显得突兀)的视频也可以被用户用于换脸,增强了视频处理方法的通用性。
图7示意性示出了根据本发明另一个实施例用于视频处理的方法700的流程图。方法700中的步骤301~305与图3中的描述一致,这里不再赘述。在该实施例中,方法700还包括步骤306和步骤307。在步骤306中,接收来自用户的第二输入,第二输入请求对脸部替换后的视频的风格进行迁移和指示意图迁移的风格类型。例如,在使用图1中的界面时,在用户点击风格迁移图标时,服务器就接收到了请求对脸部替换后的视频风格进行迁移的请求,并且通过用户选择动漫、山水田园、欧洲生活、暗黑等标签接收到了意图迁移的风格类型。在步骤307中,基于意图迁移的风格类型对脸部替换后的视频进行风格迁移。在一个实施例中,基于意图迁移的风格类型对脸部替换后的视频进行风格迁移包括:将意图迁移的风格类型和脸部替换后的视频输入视频风格迁移网络中,输出风格与意图迁移的风格类型相匹配的风格迁移后的视频。下面参照图8对视频风格迁移网络进行详细说明。
图8示意性示出了根据本发明一个实施例的视频风格迁移网络800的示意图。风格迁移网络800通过考虑和传播短时的时序信息来保证风格化视频的连续性和稳定性,解决了直接逐帧进行风格转换后的视频通常都会有抖动和不连续的问题(由单张图片风格转换本身的不稳定性所造成的)。该模型主要由两部分组成:风格化网络802和第二损失网络803。其中xt,xt-1 801为两个连续的输入帧,通过风格化网络802后得到的输出,然后通过预先训练的第二损失网络803提取输出的特征,并计算损失,同时损失又用于训练风格化网络802。损失包括两部分,一部分为空间损失,以评估空间域中风格转移质量,另一方面为时间损失,以加强程式化输出之间的时间一致性。风格化网络802负责将视频帧转换为风格化的视频帧,风格化网络802的结构如表2所示:
表2 风格化网络结构。
第二损失网络803选用VGG-19作为该模型的损失网络。同时在VGG-19的损失计算中加入了时间损失,如下:
空间损失包括三部分,一部分内容损失,一部分风格损失,一部分正则化,如下所示:
其中,内容损失计算为式(9)、风格损失计算为式(10):
时间损失,如下:
其中,ClHlWl为第l层的特征维度,ϕ(xt)表示第l层的特征,Gl为一个矩阵,该矩阵的每项内容为:
正则化计算为:
图9示意性示出了根据本发明一个实施例的用于视频处理的装置900的示意图。装置900包括第一接收模块901、第二接收模块902、脸部替换模块903和显示模块904。第一接收模块901被配置成接收来自用户的第一输入,第一输入用于请求使用所述用户输入的脸部图像替换所述视频中角色的脸部。第二接收模块902被配置成接收用户输入的脸部图像。脸部替换模块903,被配置成响应于所述用户输入的脸部图像的风格与视频的风格不相匹配,基于视频的风格对用户输入的脸部图像的风格进行迁移,使得用户输入的脸部图像的风格与视频的风格相匹配,使用风格迁移后的脸部图像替换视频中角色的脸部;响应于用户输入的脸部图像的风格与视频的风格相匹配,使用用户输入的脸部图像替换视频中角色的脸部。显示模块904被配置成显示脸部替换后的视频。
图10示意性示出了根据本发明另一个实施例的用于视频处理的装置900的示意图。在一个实施例中,该装置900还包括:第三接收模块905和视频风格迁移模块906。第三接收模块905被配置成接收来自用户的第二输入,第二输入请求对脸部替换后的视频的风格进行迁移和指示意图迁移的风格类型。视频风格迁移模块906被配置成基于意图迁移的风格类型对脸部替换后的视频进行风格迁移。根据本发明的实施例的用于视频处理的装置通过在视频播放菜单中增加视频切换的入口和提供用户可选的风格列表,实现了一种更彻底的换脸。具体地,响应于用户输入脸部图像的风格与视频风格不匹配,对用户输入的脸部图像的风格进行迁移之后再进行人脸替换,使得用户的脸部风格与视频风格相匹配而不会显得突兀。人脸的替换后,会随着视频的风格迁移而迁移,从而使得观众可以将自己的脸换到任何一部风格的影视剧中。此外,用户还可以将视频/影视剧的风格迁移为自己喜欢的风格。在体验上,为用户增加了一个新的功能,可供用户选择一键替换视频风格,使得用户体验上更加生动有趣。在换脸的基础上,还可以视频风格迁移,使得之前存在的风格不适用于换脸(即,会因为换脸显得突兀)的视频也可以被用户用于换脸。充分利用了视频资源,例如当前许多电影、电视、动画剧情非常有趣,但是由于不同的人对视频的风格不太喜欢,导致用户的观看意愿降低。但是,使用该技术后,可以在保留视频剧情的前提下,可以将视频切换成用户喜爱的风格,使得同一部视频,大大提高观看数。通过该用于视频处理的方法可以进一步增加这种互动的趣味性,提升了互动体验。
图11示出了示例计算设备1100的示意性框图,该示例计算设备1100可以为图2的服务器201或用户终端203。
计算设备1100可以包括能够诸如通过系统总线1114或其他适当的方式连接彼此通信的至少一个处理器1102、存储器1104、(多个)通信接口1106、显示设备1108、其他输入/输出(I/O)设备1110以及一个或多个大容量存储装置1112。
处理器1102可以是单个处理单元或多个处理单元,所有处理单元可以包括单个或多个计算单元或者多个核心。处理器1102可以被实施成一个或多个微处理器、微型计算机、微控制器、数字信号处理器、中央处理单元、状态机、逻辑电路和/或基于操作指令来操纵信号的任何设备。除了其他能力之外,处理器1102可以被配置成获取并且执行存储在存储器1104、大容量存储装置1112或者其他计算机可读介质中的计算机可读指令,诸如操作系统1116的程序代码、应用程序1118的程序代码、其他程序1120的程序代码等,以实现本发明实施例提供的用于视频处理方法。
存储器1104和大容量存储设备1112是用于存储指令的计算机存储介质的示例,指令由处理器1102执行来实施前面所描述的各种功能。举例来说,存储器1104一般可以包括易失性存储器和非易失性存储器二者(例如RAM、ROM等等)。此外,大容量存储设备1112一般可以包括硬盘驱动器、固态驱动器、可移除介质、包括外部和可移除驱动器、存储器卡、闪存、软盘、光盘(例如CD、DVD)、存储阵列、网络附属存储、存储区域网等等。存储器1104和大容量存储设备1112在本文中都可以被统称为存储器或计算机存储介质,并且可以是能够把计算机可读、处理器可执行程序指令存储为计算机程序代码的非瞬时性介质,计算机程序代码可以由处理器1102作为被配置成实施在本文的示例中所描述的操作和功能的特定机器来执行。
多个程序模块可以存储在大容量存储设备1112上。这些程序包括操作系统1116、一个或多个应用程序1118、其他程序1120和程序数据1122,并且它们可以被加载到存储器1104以供执行。这样的应用程序或程序模块的示例可以包括例如用于实现以下部件/功能的计算机程序逻辑(例如,计算机程序代码或指令):第一接收模块901、第二接收模块902、脸部替换模块903和显示模块904、第三接收模块905和视频风格迁移模块906和/或本文描述的另外的实施例。在一些实施例中,这些程序模块可以分布在不同的物理位置以实现相应的功能。
虽然在图11中被图示成存储在计算设备1100的存储器1104中,但是模块1116、1118、1120和1122或者其部分可以使用可由计算设备1100访问的任何形式的计算机可读介质来实施。如本文所使用的,“计算机可读介质”至少包括两种类型的计算机可读介质,也就是计算机存储介质和通信介质。
计算机存储介质包括通过用于存储信息的任何方法或技术实施的易失性和非易失性、可移除和不可移除介质,信息诸如是计算机可读指令、数据结构、程序模块或者其他数据。计算机存储介质包括而不限于RAM、ROM、EEPROM、闪存或其他存储器技术,CD-ROM、数字通用盘(DVD)、或其他光学存储装置,磁盒、磁带、磁盘存储装置或其他磁性存储设备,或者可以被用来存储信息以供计算设备访问的任何其他非传送介质。
与此相对,通信介质可以在诸如载波或其他传送机制之类的已调数据信号中具体实现计算机可读指令、数据结构、程序模块或其他数据。本文所定义的计算机存储介质不包括通信介质。
计算设备1100还可以包括一个或更多通信接口1106,以用于诸如通过网络、直接连接等等与其他设备交换数据。通信接口1106可以促进在多种网络和协议类型内的通信,其中包括有线网络(例如LAN、电缆等等)和无线网络(例如WLAN、蜂窝、卫星等等)、因特网等等。通信接口1106还可以提供与诸如存储阵列、网络附属存储、存储区域网等等中的外部存储装置(未示出)的通信。
在一些示例中,计算设备1100可以包括诸如监视器之类的显示设备1108,以用于显示信息和图像。其他I/O设备1110可以是接收来自用户的各种输入并且向用户提供各种输出的设备,并且可以包括触摸输入设备、手势输入设备、摄影机、键盘、遥控器、鼠标、打印机、音频输入/输出设备等等。
在本说明书的描述中,术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点被包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本公开的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序(包括根据所涉及的功能按基本同时的方式或按相反的顺序)来执行功能,这应被本公开的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例可以例如包括以下各项:具有一个或多个布线的电连接部(电子装置)、便携式计算机盘盒(磁装置)、随机存取存储器(Random Access Memory)、只读存储器(Read Only Memory),可擦除可编辑只读存储器(Erasable ProgrammableRead Only Memory)或闪速存储器、 光纤装置、以及便携式光盘只读存储器(Compact DiscRead Only Memory)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,则可用本领域公知的下列技术中的任一项或它们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路、具有合适的组合逻辑门电路的专用集成电路、可编程门阵列(Programmable Gate Array)、现场可编程门阵列(Field Programmable Gate Array)等。
本技术领域的普通技术人员可以理解上述实施例方法的全部或部分步骤可以通过程序指令相关的硬件完成,所述程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括执行方法实施例的步骤之一或其组合。可选地,本申请还提供了一种包含指令的计算机程序产品,当其在电子设备上运行时,使得电子设备执行方法实施例的步骤之一或其组合。在实施方式中,计算机程序产品可存储在存储介质上,例如在远程服务器上、在计算机上。
此外,在本公开各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。