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

对象姿态迁移方法、装置、设备及存储介质与流程

2021-11-26 21:50:00 来源:中国专利 TAG:


1.本技术涉及机器视觉技术领域,尤其涉及一种对象姿态迁移方法、装置、设备及计算机可读存储介质。


背景技术:

2.人工智能(ai,artificial intelligence)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。其中,计算机视觉技术(computer vision,cv)是人工智能的重要分支。在计算机视觉技术的实际应用过程中,对象姿态迁移技术有着广泛的应用场景,例如虚拟主播或虚拟教师的合成。
3.对象姿态迁移技术可以在给定源对象图像/视频和目标对象图像/视频的条件下,可以生成与源对象做相同动作的目标对象的图像/视频。但是,在传统的对象姿态迁移技术中,生成的图像/视频细节不够丰富,真实度较低。


技术实现要素:

4.本技术实施例提供一种对象姿态迁移方法、装置、设备及计算机可读存储介质,能够生成细节丰富的迁移视频帧。
5.本技术实施例的技术方案是这样实现的:
6.本技术实施例提供一种对象姿态迁移方法,包括:获取源对象的视频帧中用于表征源对象的肢体动作的姿态数据;姿态数据包括表征对象骨架姿态的骨架特征和表征对象模型姿态的模型特征;基于骨架特征和模型特征,分别生成目标对象的动态纹理数据和纹理坐标数据;根据动态纹理数据和纹理坐标数据,生成用于显示目标对象的前景迁移图像;前景迁移图像中目标对象的肢体动作与视频帧中源对象的肢体动作相同;基于前景迁移图像,生成迁移视频帧。
7.在本技术的一些实施例中,所述获取源对象的视频帧中用于表征对象骨架姿态的骨架特征,包括:获取视频帧中源对象的骨架关键点集合;基于骨架关键点集合得到骨架特征。
8.在本技术的一些实施例中,所述获取源对象的视频帧中用于表征对象模型姿态的模型特征,包括:根据视频帧构建源对象的三维模型;三维模型包括多个模型顶点;根据多个模型顶点构建拉普拉斯矩阵;确定普拉斯矩阵对应的多个特征值和每一特征值对应的特征向量;在多个特征值中确定满足预设要求的n个目标特征值;根据n个目标特征值对应的n个特征向量,确定每一模型顶点的顶点特征;将每一模型顶点的顶点特征投影至二维平面,得到模型特征。
9.在本技术的一些实施例中,所述纹理坐标数据包括前景迁移图像中每一迁移像素点对应的迁移坐标信息;动态纹理数据包括每一纹理部位对应的迁移纹理图;所述基于骨架特征和模型特征,生成动态纹理数据和纹理坐标数据,包括:根据骨架特征和模型特征,
生成每一迁移像素点对应的迁移坐标信息;迁移坐标信息包括迁移像素点处于每一纹理部位的坐标信息和置信度信息;根据骨架特征和模型特征,生成每一纹理部位对应的迁移纹理图;所述根据动态纹理数据和纹理坐标数据,生成前景迁移图像,包括:基于每一纹理部位对应的迁移纹理图,每一前景像素点处于每一纹理部位的坐标信息和置信度信息,生成前景迁移图像。
10.在本技术的一些实施例中,所述基于前景迁移图像,生成迁移视频帧,包括:根据骨架特征、模型特征对初始背景图进行处理,得到背景迁移图像;融合前景迁移图像和背景迁移图像,得到迁移视频帧。
11.在本技术的一些实施例中,所述融合前景迁移图像和背景迁移图像,得到迁移视频帧,包括:根据每一迁移像素点处于每一纹理部位的置信度信息,确定迁移视频帧中与每一迁移像素点对应的目标像素点属于背景迁移图像的概率;基于每一目标像素点属于背景迁移图像的概率、前景迁移图像和背景迁移图像,确定迁移视频帧。
12.在本技术的一些实施例中,所述上述对象姿态迁移方法,由已训练的姿态迁移模型实现;所述姿态迁移模型的训练过程,包括:获取目标对象视频中的原始视频帧;提取原始视频帧中的原始骨架特征和原始模型特征;将原始骨架特征和原始模型特征输入至待训练的姿态迁移模型,得到预测视频帧;其中,姿态预测网络用于根据原始骨架特征和原始模型特征生成预测纹理数据和预测坐标数据,根据预测纹理数据和预测坐标数据,生成前景预测图像,并基于前景预测图像,生成预测视频帧;基于原始视频帧和预测视频帧,对待训练的姿态迁移模型的参数进行调整,以得到已训练的姿态迁移模型。
13.在本技术的一些实施例中,所述姿态迁移模型包括前景生成网络和背景生成网络;所述将原始骨架特征和原始模型特征输入至待训练的姿态迁移模型,得到预测视频帧,包括:将原始骨架特征和原始模型特征输入至前景生成网络,得到前景预测图像;将原始骨架特征和原始模型特征和初始背景图输入至背景生成网络,得到背景预测图像;融合前景预测图像和背景预测图像,得到预测视频帧。
14.在本技术的一些实施例中,所述前景生成网络包括纹理图像生成子网络和纹理坐标生成子网络;所述将原始骨架特征和原始模型特征输入至前景生成网络,得到前景预测图像,包括:将原始骨架特征和原始模型特征输入至经过预训练的纹理坐标生成子网络,得到预测坐标数据;所述预测坐标数据包括所述前景预测图像中每一前景预测像素点对应的预测坐标信息;预测坐标信息包括前景预测像素点处于每一纹理部位的坐标信息和置信度信息;将原始骨架特征和原始模型特征输入至纹理图像生成子网络,得到所述预测纹理数据,所述预测纹理数据包括每一纹理部位对应的预测纹理图;基于每一纹理部位对应的预测纹理图,每一前景预测像素点处于每一纹理部位的坐标信息和置信度信息,生成前景预测图像。
15.在本技术的一些实施例中,所述纹理图像生成子网络包括编码层和解码层;所述将原始骨架特征和原始模型特征输入至纹理图像生成子网络,得到每一纹理部位对应的预测纹理图,包括:将原始模型特征投影至纹理空间,得到输入纹理特征;将输入纹理特征、原始骨架特征和原始模型特征输入至编码层,得到编码特征;将编码特征输入至解码层,得到每一纹理部位的对应的纹理预测图。
16.在本技术的一些实施例中,所述解码层包括每一纹理部位对应的局部解码器;所
述将编码特征输入至解码层,得到每一纹理部位的对应的纹理预测图,包括:将编码特征分别输入至每一纹理部位对应的局部解码器;得到每一纹理部位对应的局部解码器输出的每一纹理部位对应的纹理预测图。
17.在本技术的一些实施例中,所述融合前景预测图像和背景预测图像,得到预测视频帧,包括:根据每一前景预测像素点处于每一纹理部位的置信度信息,确定预测视频帧中与每一前景预测像素点对应的输出像素点属于背景预测图像的概率;基于每一输出像素点属于背景预测图像的概率、前景预测图像和背景预测图像,确定预测视频帧。
18.在本技术的一些实施例中,所述方法还包括:获取目标对象视频中的多个待处理视频帧;利用分割网络对多个待处理视频帧进行背景分割,得到多个第一背景帧;利用图像补全算法对多个第一背景帧进行处理,得到多个第二背景帧;对多个第二背景帧进行平均融合处理,得到初始背景图。
19.在本技术的一些实施例中,所述纹理坐标生成子网络的预训练过程,包括:获取纹理坐标训练集;纹理坐标训练集包括多个样本姿态信息和每一样本姿态信息对应的真实坐标信息;将每一样本姿态信息输入至待训练的纹理坐标生成子网络,得到每一样本姿态信息对应的预测坐标信息;将每一样本姿态信息对应的预测坐标信息和真实坐标信息输入至预设的坐标损失函数,确定坐标损失值;利用坐标损失值对待训练的纹理坐标生成子网络,直至坐标损失值收敛,输出经过预训练的纹理坐标生成子网络。
20.在本技术的一些实施例中,所述基于原始视频帧和预测视频帧,对待训练的姿态迁移模型的参数进行调整,以得到已训练的姿态迁移模型,包括:基于姿态信息、原始视频帧和预测视频帧计算第一损失函数的值;基于原始视频帧和预测视频帧计算第二损失函数的值;基于第一损失函数的值和第二损失函数的值计算总损失值,并基于总损失值对待训练的姿态迁移模型的参数进行调整,直至达到预设的收敛条件,将达到预设的收敛条件时的待训练的姿态迁移模型作为已训练的姿态迁移模型。
21.在本技术的一些实施例中,所述方法还包括:获取预测视频帧的相邻预测视频帧;相邻预测视频帧为原始视频帧的上一帧图像的预测图像;将相邻预测视频帧输入至预设的光流预测模型,得到当前帧的光流预测图像;基于光流预测图像和预测视频帧输入计算第三损失函数的值;所述基于第一损失函数的值和第二损失函数的值计算总损失值,包括:基于第一损失函数的值、第二损失函数的值和第三损失函数的值计算总损失值。
22.本技术实施例提供一种对象姿态迁移装置,所述装置包括:
23.获取模块,用于获取源对象的视频帧中用于表征源对象的肢体动作的姿态数据;姿态数据包括表征对象骨架姿态的骨架特征和表征对象模型姿态的模型特征;
24.第一生成模块,用于基于骨架特征和模型特征,分别生成目标对象的动态纹理数据和纹理坐标数据;
25.第二生成模块,用于根据动态纹理数据和纹理坐标数据,生成用于显示目标对象的前景迁移图像;前景迁移图像中目标对象的肢体动作与视频帧中源对象的肢体动作相同;
26.第三生成模块,用于基于前景迁移图像,生成迁移视频帧。
27.本技术实施例提供一种对象姿态迁移设备,包括:
28.存储器,用于存储可执行指令;
29.处理器,用于执行所述存储器中存储的可执行指令时,实现本技术实施例提供的对象姿态迁移方法。
30.本技术实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本技术实施例提供的对象姿态迁移方法。
31.本技术实施例具有以下有益效果:
32.本技术实施例通过获取视频帧中表征对象骨架姿态的骨架特征和表征对象模型姿态的模型特征,可以从骨架维度和对象模型维度准确的获取源对象在当前视频帧中的肢体动作,由于以“从内到外”两个维度提取了源对象肢体动作的特征信息,可以在对象姿态迁移的过程中,提高源对象肢体动作到目标对象肢体动作的准确度,具有较强的鲁棒性;并且,由于基于该骨架特征和模型特征,分别生成动态纹理数据和纹理坐标数据,使得生成的动态纹理数据和纹理坐标数据可以随着肢体动作的不同而进行变化,提升了对象姿态迁移过程中对于纹理细节的还原度,生成的迁移视频帧细节更加丰富,真实度较高。
附图说明
33.图1是本技术实施例提供的对象姿态迁移系统的一个可选的架构示意图;
34.图2是本技术实施例提供的对象姿态迁移设备的结构示意图;
35.图3是本技术实施例提供的对象姿态迁移方法的一个可选的流程示意图;
36.图4是本技术实施例提供的对象姿态迁移方法的一个可选的流程示意图;
37.图5是本技术实施例提供的对象姿态迁移方法的一个可选的流程示意图;
38.图6是本技术实施例提供的对象姿态迁移方法的一个可选的流程示意图;
39.图7a是本技术实施例提供的对象姿态迁移方法的一个可选的流程示意图;
40.图7b是本技术实施例提供的姿态迁移模型的一个可选的架构示意图;
41.图8a是本技术实施例提供的对象姿态迁移方法的一个可选的流程示意图;
42.图8b是本技术实施例提供的前景生成网络的一个可选的架构示意图;
43.图9是本技术实施例提供的对象姿态迁移方法的一个可选的流程示意图;
44.图10是本技术实施例提供的姿态迁移过程的一个可选的示意图;
45.图11是本技术实施例提供的纹理图像生成过程的一个可选的示意图。
具体实施方式
46.为了使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术作进一步地详细描述,所描述的实施例不应视为对本技术的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
47.人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
48.人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、
大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
49.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
50.在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使在本实施例中描述的本技术实施例能够以除了在在本实施例中图示或描述的以外的顺序实施。
51.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
52.对本技术实施例进行进一步详细说明之前,对本技术实施例中涉及的名词和术语进行说明,本技术实施例中涉及的名词和术语适用于如下的解释。
53.(1)图像翻译:将一个物体的图像表征转换为该物体的另一种图像表征,也就是找到一个函数能让a域图像映射到b域内。
54.(2)屏幕空间:指渲染结果所在的空间,即,在用户直接看到的对象图片上所定义的空间。
55.(3)纹理空间:指纹理图(texture map)所在的空间,也叫uv空间,是在纹理图上定义的空间。在传统的图形学渲染管线中,纹理空间(纹理图)上的点经过uv映射(uv mapping)之后可以贴在三维模型表面,进而渲染到二维图像上。
56.参见图1,图1是本技术实施例提供的对象姿态迁移系统100的一个可选的架构示意图,为实现支撑一个对象姿态迁移应用,终端(示例性示出了终端400

1和终端400

2)通过网络300连接服务器200,网络300可以是广域网或者局域网,又或者是二者的组合。图1还示出了服务器200可以为服务器集群,该服务器集群包括服务器200

1至200

3,同样地,服务器200

1至200

3可以是实体机器,也可以是利用虚拟化技术(如容器技术及虚拟机技术等)构建的虚拟机器,本技术实施例对此不做限定,当然,在本实施例中也可使用单个服务器来进行服务的提供。该对象可以为人体、动物、机器人等具有多种姿态的物体。
57.本技术属于计算机视觉技术(computer vision,cv)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、ocr、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3d技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
58.参见图2,图2是本技术实施例提供的对象姿态迁移设备500的结构示意图,图2所示的对象姿态迁移设备500包括:至少一个处理器510、存储器550、至少一个网络接口520和用户接口530。对象姿态迁移设备500中的各个组件通过总线系统540耦合在一起。可理解,
总线系统540用于实现这些组件之间的连接通信。总线系统540除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统540。
59.处理器510可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digital signal processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
60.用户接口530包括使得能够呈现媒体内容的一个或多个输出装置531,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口530还包括一个或多个输入装置532,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
61.存储器550包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,read only memory),易失性存储器可以是随机存取存储器(ram,random access memory)。本技术实施例描述的存储器550旨在包括任意适合类型的存储器。存储器550可选地包括在物理位置上远离处理器510的一个或多个存储设备。
62.在本技术的一些实施例中,存储器550能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
63.操作系统551,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
64.网络通信模块552,用于经由一个或多个(有线或无线)网络接口520到达其他计算设备,示例性的网络接口520包括:蓝牙、无线相容性认证(wifi)、和通用串行总线(usb,universal serial bus)等;
65.显示模块553,用于经由一个或多个与用户接口530相关联的输出装置531(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
66.输入处理模块554,用于对一个或多个来自一个或多个输入装置532之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
67.在本技术的一些实施例中,本技术实施例提供的对象姿态迁移装置可以采用软硬件结合的方式实现,作为示例,本技术实施例提供的对象姿态迁移装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本技术实施例提供的对象姿态迁移方法。
68.在本技术的一些实施例中,本技术实施例提供的对象姿态迁移装置可以采用软件方式实现,图2示出了存储在存储器550中的对象姿态迁移装置555,其可以是程序和插件等形式的软件,包括以下软件模块:获取模块5551、第一生成模块5552、第二生成模块5553和第三生成模块5554,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。
69.将在下文中说明各个模块的功能。
70.在另一些实施例中,本技术实施例提供的装置可以采用硬件方式实现,作为示例,本技术实施例提供的装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本申
请实施例提供的对象姿态迁移方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(asic,application specific integrated circuit)、dsp、可编程逻辑器件(pld,programmable logic device)、复杂可编程逻辑器件(cpld,complex programmable logic device)、现场可编程门阵列(fpga,field

programmable gate array)或其他电子元件。
71.将结合本技术实施例提供的终端的示例性应用和实施,在本技术实施例中,将以终端为执行主体说明本技术实施例提供的对象姿态迁移方法。以下以人物作为对象为例,对本技术的对象姿态迁移方法进行说明。
72.参见图3,图3是本技术实施例提供的对象姿态迁移方法的一个可选的流程示意图,将结合图3示出的步骤进行说明。
73.在步骤301中,获取源人物的视频帧中用于表征源人物的肢体动作的姿态数据;姿态数据包括表征人物骨架姿态的骨架特征和表征人物模型姿态的模型特征。
74.在本技术的一些实施例中,为了实现对象姿态迁移的任务,即,需要将源人物的动作姿态迁移至目标人物,得到与源人物肢体动作相同的目标人物的图像。因此,在步骤301中,需要提取用于表征该源人物的肢体动作的姿态数据。
75.其中,该视频帧是从源人物对应的运动视频中提取得到的。该运动视频包含多个用于表征源人物进行连续肢体动作的连续视频帧。在本技术实施例中,可以对该运动视频中每一视频帧进行姿态迁移,也可以抽取部分视频帧进行姿态迁移,也可以只对任意一个视频帧进行姿态迁移,本技术对此不作限定。
76.在本技术的一些实施例中,该姿态数据包括表征人物骨架姿态的骨架特征和表征人物模型姿态的模型特征。
77.在本技术的一些实施例中,可以通过以下方式实现获取源人物的视频帧中用于表征人物骨架姿态的骨架特征:获取所述视频帧中所述源人物的骨架关键点集合;基于所述骨架关键点集合得到所述骨架特征。其中,上述步骤可以利用预设的骨架识别模型实现:将该视频帧输入至骨架识别模型,得到所述视频帧对应的骨架特征;所述骨架特征包括但不限于所述源人物的骨架对应的关键点,关键点坐标,关键点顺序和关键点连接关系。其中,该骨架识别模型可以为根据alphapose或者openpose等姿态识别算法建立的模型,例如,该骨架识别模型可以用于检测人体的关节作为关键点,并将多个关键点联系起来得到表征人物骨架姿态的骨架特征。
78.在本技术的一些实施例中,可以通过以下方式实现获取源人物的视频帧中用于表征人物模型姿态的模型特征:根据所述视频帧构建所述源人物的三维模型;所述三维模型包括多个模型顶点;根据所述多个模型顶点构建拉普拉斯矩阵;确定所述普拉斯矩阵对应的多个特征值和每一所述特征值对应的特征向量;在所述多个特征值中确定满足预设要求的n个目标特征值;根据所述n个目标特征值对应的n个特征向量,确定每一所述模型顶点的顶点特征;将每一所述模型顶点的顶点特征投影至二维平面,得到所述模型特征。
79.其中,可以按照数值大小对得到的多个特征值进行排序,将数值较小的n个特征值确定为满足预设要求的n个目标特征值。
80.例如,若该视频帧对应的三维模型包括m个模型顶点,基于该m个模型顶点的顶点坐标可以得到尺寸为m*m的拉普拉斯矩阵,对应地,根据该拉普拉斯矩阵可以得到多个特征
值和每一特征值对应的特征向量,该特征向量为m维的向量,按照各个特征值的大小关系,将特征值最小的n个特征值作为目标特征值,并根据n个目标特征值对应的目标特征向量得到m个模型顶点的顶点特征,该顶点特征的维度为n。在将每一模型顶点的顶点特征投影至屏幕空间的过程中,可以采用图形学中光栅化算法将处于三维空间的各模型顶点的顶点特征投影至屏幕空间(二维平面)中,以得到该模型特征。
81.举例来说,若存在4个顶点,可以得到4*4的拉普拉斯矩阵,根据该拉普拉斯矩阵可以得到特征值p1及该特征值p1对应的特征向量o1(o11,o12,o13,o14);特征值p2及该特征值p2对应的特征向量o2(o21,o22,o23,o24);特征值p3及该特征值p3对应的特征向量o3(o31,o32,o33,o34);特征值p4及该特征值p4对应的特征向量o4(o41,o42,o43,o44),取最小的3个特征值p1,p2和p3,基于对应的o1,o2和o3可以得到各顶点的顶点特征分别为(o11,o21,o31),(o21,o22,o32)和(o31,o32,o33),每一顶点特征的维度为3。
82.在步骤302中,基于骨架特征和模型特征,分别生成目标人物的动态纹理数据和纹理坐标数据。
83.在本技术的一些实施例中,步骤302可以包括基于源人物的骨架特征和源人物的模型特征,生成目标人物的动态纹理数据;和,基于源人物的骨架特征和源人物的模型特征,生成目标人物的纹理坐标数据,共两个子任务。两个子任务可以并行执行,也可以按照任意顺序交叉执行。
84.在本技术的一些实施例中,该目标人物的动态纹理数据用于表征目标人物做出与源人物相同的肢体动作的情况下,对应的动态纹理数据。其中,该动态纹理数据为处于纹理空间的二维平面图,在得到纹理空间中目标人物的动态纹理数据之后,可以将该纹理空间中的动态纹理数据映射至屏幕空间,以得到屏幕空间中的前景迁移图像。该纹理坐标数据包括屏幕空间中前景迁移图像的各个像素点与纹理空间中动态纹理数据的各个像素点的映射关系。
85.在步骤303中,根据动态纹理数据和纹理坐标数据,生成用于显示目标人物的前景迁移图像;前景迁移图像中目标人物的肢体动作与视频帧中源人物的肢体动作相同。
86.在本技术的一些实施例中,在得到纹理空间中的动态纹理数据之后,可以按照纹理坐标数据中包含的屏幕空间中前景迁移图像的各个像素点与纹理空间中动态纹理数据的各个像素点的映射关系,将动态纹理数据中的像素点映射到屏幕空间,以在屏幕空间得到该前景迁移图像。其中,该前景迁移图像包括与源人物相同肢体动作的目标人物。
87.在步骤304中,基于前景迁移图像,生成迁移视频帧。
88.在本技术的一些实施例中,可以通过以下方式实现上述基于所述前景迁移图像,生成迁移视频帧:获取预设的背景图像,融合该前景迁移图像和该背景图像,生成该迁移视频帧。其中,该预设的背景图像可以是基于用户的配置操作,从预设的多个待选择背景图像中确定的一个背景图像,该背景图像可以是教室背景,街道背景,大自然背景等;该预设的背景图像还可以从包含该目标人物的视频数据中提取得到的。
89.在本技术的一些实施例中,在融合该前景迁移图像和预设的背景图像以生成该迁移视频帧的过程中,可以根据该姿态数据生成目标人物在所述背景图像中的光影图像,通过融合该光影图像、背景图像和前景迁移图像以得到该迁移视频帧。其中,可以采用图层渲染的方式生成该迁移视频帧。例如,可以将前景迁移图像作为第一图层,将光影图像作为第
二图层,将背景图像作为第三图层,按照从第一图层到第三图层作为优先级的高低顺序,将三个图像对应的图像进行融合,得到该迁移视频帧;还可以采用像素填充的方式生成该迁移视频帧。例如,对于迁移视频帧中的每一个像素点,确定每一个像素点属于每一图像的概率,结合该像素点属于每一图像的概率和该像素点在每一图像中对应的像素值,得到目标像素值,利用该目标像素值填充该像素点,以得到该迁移视频帧。
90.通过本技术实施例对于图3的上述示例性实施可知,本技术实施例通过获取视频帧中表征人物骨架姿态的骨架特征和表征人物模型姿态的模型特征,可以从骨架维度和人物模型维度准确的获取源人物在当前视频帧中的肢体动作,由于以“从内到外”两个维度提取了源人物肢体动作的特征信息,可以在对象姿态迁移的过程中,提高源人物肢体动作到目标人物肢体动作的准确度,具有较强的鲁棒性;并且,由于基于该骨架特征和模型特征,分别生成动态纹理数据和纹理坐标数据,使得生成的动态纹理数据和纹理坐标数据可以随着肢体动作的不同而进行变化,提升了对象姿态迁移过程中对于纹理细节的还原度,生成的迁移视频帧细节更加丰富,真实度较高。
91.参见图4,图4是本技术实施例提供的对象姿态迁移方法的一个可选的流程示意图,基于图3,图3示出的步骤302可更新为步骤401,步骤303可以更新为步骤402,将结合图4示出的步骤进行说明。
92.在步骤401中,基于骨架特征和模型特征,分别生成目标人物的动态纹理数据和纹理坐标数据;纹理坐标数据包括前景迁移图像中每一迁移像素点对应的迁移坐标信息;动态纹理数据包括每一纹理部位对应的迁移纹理图。
93.其中,该前景迁移图像中用于表征人物肢体动作的迁移像素点都是人物肢体上的像素点,本技术实施例将人物肢体按照肢体部位划分为多个纹理部位,每一纹理部位对应一个迁移纹理图。该纹理部位可以包括头部、脸部、躯干、手臂、腿部和脚等肢体部位。
94.在本技术的一些实施例中,可以通过步骤4011实现上述基于骨架特征和模型特征,生成目标人物的纹理坐标数据:
95.在步骤4011中,根据骨架特征和模型特征,生成每一迁移像素点对应的迁移坐标信息;迁移坐标信息包括迁移像素点处于每一纹理部位的坐标信息和置信度信息。
96.其中,迁移像素点的迁移坐标信息包括该迁移像素点处于各所述纹理部位的置信度信息,例如,若该迁移像素点对于各纹理部位的置信度均为0,则表示该前景迁移图像中的该迁移像素点不属于目标人物的肢体部位;若该迁移像素点对于躯干部位的置信度为90%,对于手臂部位的置信度为10%,其余纹理部位的置信度均为0,则表示该前景迁移图像中的该迁移像素点可能属于躯干部位或手臂部位,且属于躯干部位的概率较大,这种情况对应的姿态动作可能为人物背对镜头且手臂被躯干遮挡。
97.其中,迁移像素点的迁移坐标信息还包括该迁移像素点处于各所述纹理部位的坐标信息。基于上述举例,在该迁移像素点对于躯干部位的置信度为90%,对于手臂部位的置信度为10%的情况下,该迁移坐标信息还包括该迁移像素点处于躯干部位对应的迁移纹理图中的相对坐标,及该迁移像素点处于手臂部位对应的迁移纹理图中的相对坐标。该相对坐标用于表征纹理空间中各纹理部位对应的迁移纹理图中的像素点与屏幕空间中前景迁移图像中迁移像素点之间的映射关系。需要说明的是,若该迁移像素点对于一些纹理部位的置信度为0,则不需要获取这些纹理部位对应的坐标信息(相对坐标)。
98.在本技术的一些实施例中,可以通过步骤4012实现上述基于骨架特征和模型特征,生成目标人物的动态纹理数据:
99.在步骤4012中,根据骨架特征和模型特征,生成每一纹理部位对应的迁移纹理图。
100.其中,考虑到人物对象处于不同姿态动作的情况下,人物对象的纹理数据也会随着姿态动作的变化而发生变化,例如,针对手臂部位的迁移纹理图,在骨架特征和模型特征表征该手臂部位处于水平伸直状态时,对应的迁移纹理图处于展开平铺状态;在骨架特征和模型特征表征该手臂部位处于蜷缩状态时,对应的迁移纹理图处于压缩褶皱状态。在步骤4012中,会基于骨架特征和模型特征生成与该源人物肢体动作匹配的各纹理部位的迁移纹理图。
101.在步骤402中,基于每一纹理部位对应的迁移纹理图,每一前景像素点处于每一纹理部位的坐标信息和置信度信息,生成前景迁移图像。
102.在本技术的一些实施例中,可以通过以下方式实现上述基于每一所述纹理部位对应的迁移纹理图,每一所述前景像素点处于每一所述纹理部位的坐标信息和置信度信息,生成所述前景迁移图像:针对每一前景像素点,确定该前景像素点处于每一纹理部位的置信度,将置信度最高的纹理部位作为待映射纹理部位,根据该待映射纹理部位对应的坐标信息,在该待映射纹理部位对应的迁移纹理图中确定该坐标信息对应的待迁移像素点,将该待迁移像素点的像素值作为该前景像素点的像素值,依次类推,直至完成每一前景像素点的像素值映射,得到该前景迁移图像。
103.在本技术的一些实施例中,还可以通过以下方式实现上述基于每一所述纹理部位对应的迁移纹理图,每一所述前景像素点处于每一所述纹理部位的坐标信息和置信度信息,生成所述前景迁移图像:针对每一前景像素点,确定该前景像素点处于每一纹理部位的置信度,并基于该前景像素点处于每一纹理部位的坐标信息和每一纹理部位对应的迁移纹理图,确定该前景像素点在每一纹理部位中的像素值;利用该前景像素点处于每一纹理部位的置信度对该前景像素点在每一部位中的像素值进行加权求和,得到该前景像素点在前景迁移图像中的像素值,依次类推,直至完成每一前景像素点的像素值映射,得到该前景迁移图像。基于上述实施例,若该迁移像素点对于躯干部位的置信度为90%,对于手臂部位的置信度为10%,其余纹理部位的置信度均为0,得到该迁移像素点在躯干部位的像素值为200,在手臂部位的像素值为30,则该迁移像素点在迁移前景图像中的像素值为183。上述举例是以该迁移像素点的灰度通道上的举例,本技术还可以采用相同方法确定该迁移像素点在r(红)、g(绿)、b(蓝)等其他通道上的像素值。
104.在本技术的一些实施例中,可以通过公式(1

1)生成前景迁移图像:
[0105][0106]
其中,i
fg
表示前景迁移图像,t
i
表示第i个部位的纹理图,φ是将纹理图根据uv坐标映射至屏幕空间的映射函数。
[0107]
通过本技术实施例对于图4的上述示例性实施可知,本技术实施例基于骨架特征和所述模型特征,针对人体的不同纹理部位生成对应的迁移纹理图,如此,不仅可以使生成的迁移纹理图可以随着源人物肢体动作的不同而进行动态变化,还可以针对不同纹理部位生成与该纹理部位更加贴合的动态纹理图,进而丰富了纹理图的细节,还可以提升对象姿态迁移过程的准确度。
[0108]
参见图5,图5是本技术实施例提供的对象姿态迁移方法的一个可选的流程示意图,基于图3或图4,以图4为例,图4示出的步骤304可通过步骤501和步骤502实现,将结合图5示出的步骤进行说明。
[0109]
在步骤501中,根据骨架特征、模型特征对初始背景图进行处理,得到背景迁移图像。
[0110]
在本技术的一些实施例中,根据该骨架特征和该模型特征可以对该初始背景图进行与源人物的肢体动作匹配的光影处理,使得处理后的背景迁移图像中包含对应的光影信息。
[0111]
在步骤502中,融合前景迁移图像和背景迁移图像,得到迁移视频帧。
[0112]
在本技术的一些实施例中,可以通过步骤5021和步骤5022实现上述融合所述前景迁移图像和所述背景迁移图像,得到所述迁移视频帧。
[0113]
在步骤5021中,根据每一迁移像素点处于每一纹理部位的置信度信息,确定迁移视频帧中与每一迁移像素点对应的目标像素点属于背景迁移图像的概率。
[0114]
其中,针对每一迁移像素点,确定该迁移像素点处于每一所述纹理部位的置信度信息的累加和,该累加和为该迁移像素点属于前景迁移图像的概率,对应地,1减去属于前景迁移图像的概率即可得到该前景像素点属于背景迁移图像的概率。
[0115]
在步骤5022中,基于每一目标像素点属于背景迁移图像的概率、前景迁移图像和背景迁移图像,确定迁移视频帧。
[0116]
其中,可以通过以下方式实现上述步骤5022:获取预设的背景概率阈值,在该迁移像素点属于所述背景迁移图像的概率大于或等于所述背景概率阈值的情况下,利用迁移像素点在该背景迁移图像中对应的像素值填充至该迁移像素点在迁移视频帧中的像素点;在该迁移像素点属于所述背景迁移图像的概率小于所述背景概率阈值的情况下,利用迁移像素点在该前景迁移图像中对应的像素值填充至该迁移像素点在迁移视频帧中的像素点。
[0117]
其中,还可以通过以下公式(1

2)实现上述步骤5022:
[0118]
i
syn
=i
fg

(1

p0) i
bg

p0ꢀꢀꢀ
公式(1

2);
[0119]
其中,i
syn
表示迁移视频帧,i
fg
表示前景迁移图像,i
bg
表示背景迁移图像,p0表示像素点属于背景迁移图像的概率,

(element

wise production)表示的是对图像中的像素点做乘法操作。比如,在计算第一个像素点的像素值时,可以将i
fg
中第一个像素的像素值和第一个像素属于背景迁移图像的概率相乘。
[0120]
通过本技术实施例对于图5的上述示例性实施可知,本技术实施例根据骨架特征、模型特征对初始背景图进行处理,可以得到包含光影信息的背景迁移图像,可以提升迁移视频帧的真实度;并且,由于该光影信息是基于骨架特征、模型特征得到的,可以使光影信息更加接近真实场景下的光影状态,因此,可以进一步提升迁移视频帧的真实度;同时,本技术基于每一迁移像素点处于每一纹理部位的置信度信息,确定迁移视频帧中与每一迁移像素点对应的目标像素点属于背景迁移图像的概率,可以在对前景迁移图像和背景迁移图像进行融合的过程中,提升融合的准确度,进而可以提升对象姿态迁移过程中的准确度。
[0121]
在本技术的一些实施例中,图3中的对象姿态迁移方法可以通过已训练的姿态迁移模型实现,参见图6,图6是本技术实施例提供的姿态迁移模型训练方法的一个可选的流程示意图,将结合图6示出的步骤进行说明。
[0122]
在步骤601中,获取目标人物视频中的原始视频帧;
[0123]
在步骤602中,提取原始视频帧中的原始骨架特征和原始模型特征;
[0124]
在步骤603中,将原始骨架特征和原始模型特征输入至待训练的姿态迁移模型,得到预测视频帧;其中,姿态预测网络用于根据原始骨架特征和原始模型特征生成预测纹理数据和预测坐标数据,根据预测纹理数据和预测坐标数据,生成前景预测图像,并基于前景预测图像,生成预测视频帧;
[0125]
在步骤604中,基于原始视频帧和预测视频帧,对待训练的姿态迁移模型的参数进行调整,以得到已训练的姿态迁移模型。
[0126]
通过本技术实施例对于图6的上述示例性实施可知,通过上述实施例训练得到的姿态迁移模型,可以从骨架维度和人物模型维度准确的获取目标人物在当前视频帧中的肢体动作,由于以“从内到外”两个维度提取了目标人物肢体动作的特征信息,可以使输入至姿态迁移模型的姿态信息更加准确,进而可以保证姿态迁移模型在训练过程中可以快速学习不同姿态信息与不同纹理信息之间的转换过程;并且,由于基于该骨架特征和模型特征,分别生成预测纹理数据和预测坐标数据,使得姿态迁移模型可以随着输入的姿态数据的不同,生成不同的预测纹理数据和预测坐标数据,提升了对象姿态迁移过程中对于纹理细节的还原度,生成的预测视频帧细节更加丰富,真实度较高。
[0127]
参见图7a图7a是本技术实施例提供的姿态迁移模型训练方法的一个可选的流程示意图,基于图6,图6中的步骤603可以更新为步骤701、步骤702和步骤703,将结合图7a示出的步骤进行说明。
[0128]
在步骤701中,将原始骨架特征和原始模型特征输入至前景生成网络,得到前景预测图像。
[0129]
在步骤702中,将原始骨架特征和原始模型特征和初始背景图输入至背景生成网络,得到背景预测图像。
[0130]
在本技术的一些实施例中,可以通过以下方式获取上述初始背景图:获取目标人物视频中的多个待处理视频帧;利用分割网络对多个待处理视频帧进行背景分割,得到多个第一背景帧;利用图像补全算法对多个第一背景帧进行处理,得到多个第二背景帧;对多个第二背景帧进行平均融合处理,得到初始背景图。
[0131]
其中,可以采用逐帧抽取的方式从目标人物视频中获取多个待处理视频帧,也可以按照预设抽取间隔从该目标人物视频中抽取部分视频帧作为多个待处理视频帧。该分割网络可以为u

net网络,利用u

net网络对获取的多个待处理视频帧进行背景分割,即对各待处理视频帧进行前景(人物)和背景的分割,得到去除前景区域的多个第一背景帧。该图像补全算法可以为deepfill v2算法,利用该算法对多个第一背景帧进行图像补全处理,可以得到多个第二背景帧。最后,针对初始背景图中每一个像素坐标,通过平均该像素坐标在每一第二背景帧的像素值,可以得到该像素坐标中的像素值,进而完成平均融合处理,生成该初始背景图。
[0132]
在步骤703中,融合前景预测图像和背景预测图像,得到预测视频帧。
[0133]
请参阅图7b,姿态迁移模型711包括前景生成网络711和背景生成网络712,其中,前景生成网络711用于根据输入的原始骨架特征和原始模型特征生成对应的前景预测图像;背景生成网络712用于根据初始背景图、输入的原始骨架特征和原始模型特征生成对应
的背景景预测图像;该姿态迁移模型711还用于将生成的前景预测图像和背景预测图像融合成预测视频帧。
[0134]
通过本技术实施例对于图7a的上述示例性实施可知,本技术实施例将姿态迁移模型划分为前景生成网络和背景生成网络,可以使前景生成网络专注于学习人体姿态与纹理图像、纹理坐标之间的关系,同时,可以使背景生成网络专注于学习人体姿态对于初始背景图的影响。如此,可以使得生成的前景预测图像和背景预测图像更加真实,由此得到的预测视频帧也更加准确。
[0135]
参见图8a,图8a是本技术实施例提供的姿态迁移模型训练方法的一个可选的流程示意图,基于图7a,图7a中的步骤701可以通过步骤801至步骤803实现,将结合图8a示出的步骤进行说明。
[0136]
在步骤801中,将原始骨架特征和原始模型特征输入至经过预训练的纹理坐标生成子网络,得到预测坐标数据;预测坐标数据包括前景预测图像中每一前景预测像素点对应的预测坐标信息;预测坐标信息包括前景预测像素点处于每一纹理部位的坐标信息和置信度信息。
[0137]
在本技术的一些实施例中,该经过预训练的纹理坐标生成子模型的预训练过程包括:获取纹理坐标训练集;纹理坐标训练集包括多个样本姿态信息和每一样本姿态信息对应的真实坐标信息;将每一样本姿态信息输入至待训练的纹理坐标生成子网络,得到每一样本姿态信息对应的预测坐标信息;将每一样本姿态信息对应的预测坐标信息和真实坐标信息输入至预设的坐标损失函数,确定坐标损失值;利用坐标损失值对待训练的纹理坐标生成子网络,直至坐标损失值收敛,输出经过预训练的纹理坐标生成子网络。
[0138]
其中,该坐标损失函数可以为公式(2

3)所示:
[0139][0140]
其中,是交叉熵损失,p和c是纹理坐标生成子网络的预测结果,和是真实值(ground truth)。
[0141]
在步骤802中,将原始骨架特征和原始模型特征输入至纹理图像生成子网络,得到预测纹理数据,预测纹理数据包括每一纹理部位对应的预测纹理图。
[0142]
在本技术的一些实施例中,所述纹理图像生成子网络包括编码层和解码层。可以通过步骤8021至步骤8023实现上述将所述姿态信息输入至所述纹理图像生成子网络,得到每一所述纹理部位对应的预测纹理图。
[0143]
在步骤8021中,将原始模型特征投影至纹理空间,得到输入纹理特征。
[0144]
在步骤8022中,将输入纹理特征、原始骨架特征和原始模型特征输入至编码层,得到编码特征。
[0145]
在步骤8023中,将编码特征输入至解码层,得到每一纹理部位的对应的纹理预测图。
[0146]
在本技术的一些实施例中,该解码层包括每一所述纹理部位对应的局部解码器,可以通过以下方式实现上述步骤8023:将编码特征分别输入至每一纹理部位对应的局部解码器;得到每一纹理部位对应的局部解码器输出的每一纹理部位对应的纹理预测图。
[0147]
在本技术的一些实施例中,该编码层还可以包括每一所述纹理部位对应的局部编
码器,每一纹理部位对应的局部编码器输出该纹理部位对应的编码特征,将每一纹理部位对应的编码特征输入至每一所述纹理部位对应的局部解码器,得到每一纹理部位对应的局部解码器输出的每一纹理部位对应的纹理预测图。
[0148]
在步骤803中,基于每一纹理部位对应的预测纹理图,每一前景预测像素点处于每一纹理部位的坐标信息和置信度信息,生成前景预测图像。
[0149]
请参阅图8b,前景生成网络711包括纹理坐标生成子网络7111和纹理图像生成子网络7112,其中,纹理坐标生成子网络7111用于根据输入的原始骨架特征和原始模型特征生成对应的预测坐标数据;纹理图像生成子网络7112用于根据输入的原始骨架特征和原始模型特征生成对应的预测纹理数据;该前景生成网络711还用于根据预测坐标数据和预测纹理数据生成前景预测图像。
[0150]
在本技术的一些实施例中,基于上述实施例,图7a中的步骤703可以通过以下方式实现:根据每一前景预测像素点处于每一纹理部位的置信度信息,确定预测视频帧中与每一前景预测像素点对应的输出像素点属于背景预测图像的概率;基于每一输出像素点属于背景预测图像的概率、前景预测图像和背景预测图像,确定预测视频帧。
[0151]
通过本技术实施例对于图8a的上述示例性实施可知,本技术实施例将前景生成网络划分为纹理坐标生成子网络和纹理图像生成子网络,可以使纹理图像生成子网络专注于各个纹理部位的预测纹理图与模型特征、骨架特征之间的关系,进而可以根据输入的模型特征和骨架特征生成各个纹理部位对应的动态的预测纹理图,丰富了纹理图像的细节。同时,还可以使纹理坐标生成子网络专注于学习人体姿态对于纹理空间与屏幕空间之间映射关系的影响,提升了纹理映射过程中的准确度。如此,可以使得生成的前景预测图像更加真实。
[0152]
参见图9,图9是本技术实施例提供的姿态迁移模型训练方法的一个可选的流程示意图,基于图6,图6中的步骤604可以通过步骤901至步骤903实现,将结合图9示出的步骤进行说明。
[0153]
在步骤901中,基于姿态信息、原始视频帧和预测视频帧计算第一损失函数的值。
[0154]
其中,该第一损失函数可以如公式(1

4)所示:
[0155][0156]
其中,i
pose
,i
syn
和i
real
分别表示姿态信息,预测视频帧和原始视频帧,d表示判别器,log是自然对数,表示在训练数据上的期望。通过可以使得判别器学习区分真/假视频帧的能力,通过使得姿态迁移模型能够学习生成“欺骗”判别器的能力。
[0157]
在步骤902中,基于原始视频帧和预测视频帧计算第二损失函数的值。
[0158]
其中,该第二损失函数可以如公式(1

5)所示:
[0159][0160]
其中,i
pose
,i
syn
和i
real
分别表示姿态信息,预测视频帧和原始视频帧,vgg表示采用vgg

19的网络从图像中提取特征,λ
f
和λ
t
为权重参数。||vgg(i
syn
)

vgg(i
real
)||1是在特征空间约束生成结果和真实结果尽可能相似,||i
syn

i
real
||2是在图像空间约束生成结果和真
实结果相似。λ
f
和λ
t
用于将前后两项调整至同一量级。在一些实施例中,选取λ
f
=10,λ
l
=200。
[0161]
在步骤903中,基于第一损失函数的值和第二损失函数的值计算总损失值,并基于总损失值对待训练的姿态迁移模型的参数进行调整,直至达到预设的收敛条件,将达到预设的收敛条件时的待训练的姿态迁移模型作为已训练的姿态迁移模型。
[0162]
在本技术的一些实施例中,所述方法还包括:获取预测视频帧的相邻预测视频帧;相邻预测视频帧为原始视频帧的上一帧图像的预测图像;将相邻预测视频帧输入至预设的光流预测模型,得到当前帧的光流预测图像;基于光流预测图像和预测视频帧输入计算第三损失函数的值。
[0163]
其中,该第三损失函数可以如公式(1

6)所示:
[0164][0165]
其中,f
t
(
·
)是将相邻预测视频帧转换至光流预测图像的函数。d=h
×
w是输出图片的维度,i(k)表示k处的像素。c
k
表示光流置信度:0表示该像素处的光流是不可信的,1代表是可信的。这里光流置信度c
k
和光流都是在训练数据上预计算好的。
[0166]
上述基于第一损失函数的值和第二损失函数的值计算总损失值,可以通过以下方式实现:基于第一损失函数的值、第二损失函数的值和第三损失函数的值计算总损失值。
[0167]
通过本技术实施例对于图9的上述示例性实施可知,本技术实施例通过融合第一损失函数、第二损失函数和第三损失函数的值,对整体的姿态迁移模型的参数进行调整,可以提升模型参数的优化效率。同时,还可以使纹理坐标生成子网络专注于学习人体姿态对于纹理空间与屏幕空间之间映射关系的影响,提升了纹理映射过程中的准确度。如此,可以使得生成的前景预测图像更加真实。
[0168]
下面,将说明本技术实施例在一个实际的应用场景中的示例性应用。
[0169]
对象姿态迁移技术有着广泛的应用场景,如人体姿态迁移对于虚拟主播或虚拟教师的合成。具体而言,在给定两组视频(源人物视频和目标人物视频)的条件下,人体姿态迁移的目标是生成与源人物做相同动作的目标人物的运动视频。本技术实施例主要是将图像翻译技术和显式的三维表征通过可微渲染结合起来耦合入视频生成框架中。
[0170]
在本技术实施例中,通过将纹理图和纹理坐标解耦开,并通过两个不同的模块单独预测,可以更加鲁棒地完成迁移任务;同时,相对于使用静态的纹理图,本技术通过生成器来得到动态纹理,提高了生成结果的细节丰富性;此外,本技术还通过引入时域上的约束来提升生成视频的连贯性。
[0171]
对于人体姿态迁移领域,存在以下相关技术:(1)通过神经网络将输入图像编码为具有强大表征能力的深度特征,进而解码生成具有丰富细节的结果;如chan等人的everybody dance now和wang等人的video

to

video synthesis。(2)依赖于静态的纹理表征实现人体迁移,如shysheya等人的textured neural avatars;(3)依赖于精确的人体三维模型实现人体迁移,如liu等人的neural human video rendering by learning dynamic textures and rendering

to

video translation。
[0172]
申请人经过研究发现,现有技术中的人体迁移技术存在以下不足:(1)鲁棒性太差,对于与训练样本偏差较大的姿态无法生成合理的结果;(2)采用静态的纹理表示,无法
刻画不同姿态下人体图片细节的差异;(3)依赖精细的三维重建设备和多视角的数据,限制了模型的应用场景。而本技术提供的人体姿态迁移方法通过将图像翻译技术和基于可微渲染的三维表征耦合入视频生成框架,较好的兼顾了模型鲁棒性和细节丰富性,同时也避开了重建精细三维模型需要的多视角人体数据。
[0173]
请参阅图10,本技术实施例将任务图像帧的生成任务分解为前景(人体)生成任务和背景生成任务,其中,前景生成任务的又可解耦为纹理生成和纹理坐标预测两个子任务。
[0174]
在图10中,需要先从视频帧a1中提取姿态信息a2。然后,uv生成器a31根据该姿态信息a2生成对应的纹理坐标a32;同时,纹理生成器a41根据该姿态信息a2生成对应的动态纹理a42,其中a42可以包括多个人体部位中每一人体部位对应的动态纹理;之后,结合纹理坐标a32和动态纹理a42,可以渲染得到人物前景图a5。由于不同姿态下的背景也会有光影的改变,本技术采用一个单独的背景生成器a6生成预测背景图。最后,通过结合人物前景图a5和背景生成器a6生成预测背景图,可以得到完整的生成视频帧a7。
[0175]
在本技术的一些实施例中,该前景生成任务的可解耦为纹理生成和纹理坐标预测两个子任务,其中,纹理生成和纹理坐标预测都是以姿态信息作为约束。进一步地,根据视频帧得到的姿态信息同时包含了二维特征(对应上述实施例中的骨架特征)和三维特征(对应上述实施例中的模型特征):二维特征是通过来连接关键点得到的3个通道的骨架图片,三维特征是将重建的人体模型中每个顶点的6通道的拉普拉斯特征投影到二维平面。因此,该姿态信息是一个9通道的图片。
[0176]
申请人考虑到直接将屏幕空间的姿态图片翻译到纹理空间的纹理图有一定的难度。因此在本技术实施例中,先将姿态信息中的三维模型的拉普拉斯特征展开到纹理空间,和姿态图片一起送入纹理生成器(对应上述实施例中的纹理图像生成子网络)。如图11所示,三维模型的拉普拉斯特征b11经过展开,得到了纹理空间中的部分纹理图b12。为了消除人体不同部分之间的相互影响,可以将人体分为n个部分,每个部分有一张单独的纹理图。其中,n为大于2的整数,在实际实施的过程中可以设置为24。
[0177]
在本技术的一些实施例中,通过纹理生成器生成纹理图片的过程可以如图11所示,其中,姿态信息b3和部分纹理图b4一起输入至纹理生成器b4,该纹理生成器可以包括上采样网络,残差网络和下采样网络的图像翻译框架。对于不同的人体部分,可以同时共用一个编码器b41,但不同的人体部分对应不同的解码器b42,即通过不同的解码器b42生成不同人体部位对应的纹理图片b5。这种设计能够使得网络能够更好地专注于当前人体部位的生成,也消除了不同人体部位之间可能存在的相互影响。
[0178]
在得到纹理图片之后,需要将其从纹理空间渲染至屏幕空间。传统的渲染管线需要依赖显式的三维模型来完成这一步纹理映射,但是精细的三维模型往往很难得到。
[0179]
因此,本技术实施例通过一个uv生成器(对应上述实施例中的纹理坐标生成子网络),直接从姿态信息中获取人物前景图中每一个像素点对应纹理图中的uv坐标。进一步地,uv生成器的输出包括两部分:1)人物前景图中每个像素点属于各个人体部位的概率p
i
(i=1,...,n);2)人物前景图中每个像素点在相应部位纹理图中对应的uv坐标c
i
(i=1,...,n)。
[0180]
在得到uv生成器的输出p
i
和c
i
之后,人物前景图可以通过以下公式(2

1)得到:
[0181]
[0182]
其中,t
i
表示第i个部位的纹理图,φ是将纹理图根据uv坐标映射至屏幕空间的映射函数。
[0183]
在本技术的一些实施例中,针对背景图的生成过程:虽然生成的视频有着固定的背景,但人体的不同姿态会导致背景出现小的光影变化。因此,本技术首先利用图片补全技术得到静态的初始背景,再通过一个背景生成器(对应上述实施例中的背景生成网络)来刻画这些随姿态改变的光影变化。进一步地,本技术采用u

net网络来逐帧地对人物图片做分割和前景扣除,再利用补全技术deepfill v2来补全剩下的背景帧。通过平均所有补全后的背景帧可以完成初始背景的生成。将初始背景和当前姿态信息一起送入背景生成器,得到最终优化后的背景图。
[0184]
在本技术的一些实施例中,针对背景图和人物前景图的融合过程:可以通过以下公式(2

2)生成视频帧:
[0185]
i
syn
=i
fg

(1

p0) i
bg

p0ꢀꢀꢀ
公式(2

2);
[0186]
在本技术的一些实施例中,由于直接将生成的视频帧拼接起来会导致生成结果看起来不够真实,常常会不可避免地引入闪烁和抖动。为了解决这一问题,申请人在训练过程中引入时序(temporal)loss(对应上述实施例中的第三损失函数)。具体地,这项约束定义为生成的当前帧和生成的前一帧根据预计算的光流的warp结果的l1 loss,如下公式(2

3)所示:
[0187][0188]
其中,f
t
(
·
)是将t

1时刻视频帧warp至t时刻的函数。d=h
×
w是输出图片的维度,i(k)表示k处的像素。c
k
表示光流置信度:0表示该像素处的光流是不可信的,1代表是可信的。这里光流置信度c
k
和光流都是在训练数据上预计算好的。
[0189]
在本技术的一些实施例中,需要先通过最小化下述约束函数,公式(2

4)来预训练uv生成器:
[0190][0191]
其中,是交叉熵损失,p和c是uv生成器的预测结果,和是真实值(ground truth)。
[0192]
在uv生成器预训练之后,整个人体姿态迁移模型共同参与训练。其中,i
pose
,i
syn
和i
real
分别表示姿态图,生成结果和真实视频帧。总的优化目标包括gan loss(对应上述实施例中的第一损失函数),监督loss(对应上述实施例中的第二损失函数)和时序loss(对应上述实施例中的第三损失函数)。其中,gan loss形式为公式(2

5)所示:
[0193][0194]
其中,i
pose
,i
syn
和i
real
分别表示姿态图,生成结果和真实视频帧,d表示判别器,log是自然对数,表示在训练数据上的期望。通过可以使得判别器学习区分真/假视频帧的能力,通过使得姿态迁移模型能够学习生成“欺骗”判别器的能力。
[0195]
监督loss形式为公式(2

6)所示:
[0196]
[0197]
其中,vgg表示采用vgg

19的网络从图像中提取特征,λ
f
和λ
t
为权重参数。||vgg(i
syn
)

vgg(i
real
)||1是在特征空间约束生成结果和真实结果尽可能相似,||i
syn

i
real
||2是在图像空间约束生成结果和真实结果相似。λ
f
和λ
t
用于将前后两项调整至同一量级。在一些实施例中,选取λ
f
=10,λ
l
=200。
[0198]
下面继续说明本技术实施例提供的对象姿态迁移装置555的实施为软件模块的示例性结构,在本技术的一些实施例中,如图2所示,存储在存储器550的对象姿态迁移装置555中的软件模块可以包括:
[0199]
获取模块5551,用于获取源人物的视频帧中用于表征源人物的肢体动作的姿态数据;姿态数据包括表征人物骨架姿态的骨架特征和表征人物模型姿态的模型特征;
[0200]
第一生成模块5552,用于基于骨架特征和模型特征,分别生成目标人物的动态纹理数据和纹理坐标数据;
[0201]
第二生成模块5553,用于根据动态纹理数据和纹理坐标数据,生成用于显示目标人物的前景迁移图像;前景迁移图像中目标人物的肢体动作与视频帧中源人物的肢体动作相同;
[0202]
第三生成模块5554,用于基于前景迁移图像,生成迁移视频帧。
[0203]
在本技术的一些实施例中,所述获取模块5551还用于:获取视频帧中源人物的骨架关键点集合;基于骨架关键点集合得到骨架特征。
[0204]
在本技术的一些实施例中,所述获取模块5551还用于:根据视频帧构建源人物的三维模型;三维模型包括多个模型顶点;根据多个模型顶点构建拉普拉斯矩阵;确定普拉斯矩阵对应的多个特征值和每一特征值对应的特征向量;在多个特征值中确定满足预设要求的n个目标特征值;根据n个目标特征值对应的n个特征向量,确定每一模型顶点的顶点特征;将每一模型顶点的顶点特征投影至二维平面,得到模型特征。
[0205]
在本技术的一些实施例中,所述第一生成模块5552还用于:根据骨架特征和模型特征,生成每一迁移像素点对应的迁移坐标信息;迁移坐标信息包括迁移像素点处于每一纹理部位的坐标信息和置信度信息;根据骨架特征和模型特征,生成每一纹理部位对应的迁移纹理图。
[0206]
在本技术的一些实施例中,所述第二生成模块5553还用于:基于每一纹理部位对应的迁移纹理图,每一前景像素点处于每一纹理部位的坐标信息和置信度信息,生成前景迁移图像。
[0207]
在本技术的一些实施例中,所述第三生成模块5554还用于:根据所述骨架特征、所述模型特征对所述初始背景图进行处理,得到背景迁移图像;融合所述前景迁移图像和所述背景迁移图像,得到所述迁移视频帧。
[0208]
在本技术的一些实施例中,所述第三生成模块5554还用于:根据每一所述迁移像素点处于每一所述纹理部位的置信度信息,确定所述迁移视频帧中与每一所述迁移像素点对应的目标像素点属于所述背景迁移图像的概率;基于每一所述目标像素点属于所述背景迁移图像的概率、所述前景迁移图像和所述背景迁移图像,确定所述迁移视频帧。
[0209]
在本技术的一些实施例中,对象姿态迁移装置555还包括训练模块,其中;
[0210]
训练模块,用于获取目标人物视频中的原始视频帧;提取原始视频帧中的原始骨架特征和原始模型特征;将原始骨架特征和原始模型特征输入至待训练的姿态迁移模型,
得到预测视频帧;其中,姿态预测网络用于根据原始骨架特征和原始模型特征生成预测纹理数据和预测坐标数据,根据预测纹理数据和预测坐标数据,生成前景预测图像,并基于前景预测图像,生成预测视频帧;基于原始视频帧和预测视频帧,对待训练的姿态迁移模型的参数进行调整,以得到已训练的姿态迁移模型。
[0211]
在本技术的一些实施例中,所述训练模块还用于:将原始骨架特征和原始模型特征输入至前景生成网络,得到前景预测图像;将原始骨架特征和原始模型特征和初始背景图输入至背景生成网络,得到背景预测图像;融合前景预测图像和背景预测图像,得到预测视频帧。
[0212]
在本技术的一些实施例中,所述训练模块还用于:将原始骨架特征和原始模型特征输入至经过预训练的纹理坐标生成子网络,得到预测坐标数据;所述预测坐标数据包括前景预测图像中每一前景预测像素点对应的预测坐标信息;预测坐标信息包括前景预测像素点处于每一纹理部位的坐标信息和置信度信息;将原始骨架特征和原始模型特征输入至纹理图像生成子网络,得到预测纹理数据,所述预测纹理数据包括每一纹理部位对应的预测纹理图;基于每一纹理部位对应的预测纹理图,每一前景预测像素点处于每一纹理部位的坐标信息和置信度信息,生成前景预测图像。
[0213]
在本技术的一些实施例中,所述训练模块还用于:将原始模型特征投影至纹理空间,得到输入纹理特征;将输入纹理特征、原始骨架特征和原始模型特征输入至编码层,得到编码特征;将编码特征输入至解码层,得到每一纹理部位的对应的纹理预测图。
[0214]
在本技术的一些实施例中,所述训练模块还用于:将编码特征分别输入至每一纹理部位对应的局部解码器;得到每一纹理部位对应的局部解码器输出的每一纹理部位对应的纹理预测图。
[0215]
在本技术的一些实施例中,所述训练模块还用于:根据每一前景预测像素点处于每一纹理部位的置信度信息,确定预测视频帧中与每一前景预测像素点对应的输出像素点属于背景预测图像的概率;基于每一输出像素点属于背景预测图像的概率、前景预测图像和背景预测图像,确定预测视频帧。
[0216]
在本技术的一些实施例中,所述训练模块还用于:获取目标人物视频中的多个待处理视频帧;利用分割网络对多个待处理视频帧进行背景分割,得到多个第一背景帧;利用图像补全算法对多个第一背景帧进行处理,得到多个第二背景帧;对多个第二背景帧进行平均融合处理,得到初始背景图。
[0217]
在本技术的一些实施例中,所述训练模块还用于:获取纹理坐标训练集;纹理坐标训练集包括多个样本姿态信息和每一样本姿态信息对应的真实坐标信息;将每一样本姿态信息输入至待训练的纹理坐标生成子网络,得到每一样本姿态信息对应的预测坐标信息;将每一样本姿态信息对应的预测坐标信息和真实坐标信息输入至预设的坐标损失函数,确定坐标损失值;利用坐标损失值对待训练的纹理坐标生成子网络,直至坐标损失值收敛,输出经过预训练的纹理坐标生成子网络。
[0218]
在本技术的一些实施例中,所述训练模块还用于:基于姿态信息、原始视频帧和预测视频帧计算第一损失函数的值;基于原始视频帧和预测视频帧计算第二损失函数的值;基于第一损失函数的值和第二损失函数的值计算总损失值,并基于总损失值对待训练的姿态迁移模型的参数进行调整,直至达到预设的收敛条件,将达到预设的收敛条件时的待训
练的姿态迁移模型作为已训练的姿态迁移模型。
[0219]
在本技术的一些实施例中,所述训练模块还用于:获取预测视频帧的相邻预测视频帧;相邻预测视频帧为原始视频帧的上一帧图像的预测图像;将相邻预测视频帧输入至预设的光流预测模型,得到当前帧的光流预测图像;基于光流预测图像和预测视频帧输入计算第三损失函数的值;基于第一损失函数的值、第二损失函数的值和第三损失函数的值计算总损失值。
[0220]
本公开实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本技术实施例上述的对象姿态迁移方法。
[0221]
本公开实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本技术实施例提供的对象姿态迁移方法,例如,如图3、图4、图5、图6、图7a、图8a或图9示出的方法。
[0222]
在本技术的一些实施例中,计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、闪存、磁表面存储器、光盘、或cd

rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
[0223]
在本技术的一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
[0224]
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hyper text markup language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
[0225]
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
[0226]
综上所述,通过本技术实施例能够实现以下技术效果:
[0227]
(1)本技术实施例通过获取视频帧中表征对象骨架姿态的骨架特征和表征对象模型姿态的模型特征,可以从骨架维度和对象模型维度准确的获取源对象在当前视频帧中的肢体动作,由于以“从内到外”两个维度提取了源对象肢体动作的特征信息,可以在对象姿态迁移的过程中,提高源对象肢体动作到目标对象肢体动作的准确度,具有较强的鲁棒性;并且,由于基于该骨架特征和模型特征,分别生成动态纹理数据和纹理坐标数据,使得生成的动态纹理数据和纹理坐标数据可以随着肢体动作的不同而进行变化,提升了对象姿态迁移过程中对于纹理细节的还原度,生成的迁移视频帧细节更加丰富,真实度较高。
[0228]
(2)本技术实施例基于骨架特征和所述模型特征,针对对象的不同纹理部位生成对应的迁移纹理图,如此,不仅可以使生成的迁移纹理图可以随着源对象肢体动作的不同而进行动态变化,还可以针对不同纹理部位生成与该纹理部位更加贴合的动态纹理图,进而丰富了纹理图的细节,还可以提升对象姿态迁移过程的准确度。
[0229]
(3)本技术实施例根据骨架特征、模型特征对初始背景图进行处理,可以得到包含光影信息的背景迁移图像,可以提升迁移视频帧的真实度;并且,由于该光影信息是基于骨架特征、模型特征得到的,可以使光影信息更加接近真实场景下的光影状态,因此,可以进一步提升迁移视频帧的真实度;同时,本技术基于每一迁移像素点处于每一纹理部位的置信度信息,确定迁移视频帧中与每一迁移像素点对应的目标像素点属于背景迁移图像的概率,可以在对前景迁移图像和背景迁移图像进行融合的过程中,提升融合的准确度,进而可以提升对象姿态迁移过程中的准确度。
[0230]
(4)通过上述实施例训练得到的姿态迁移模型,可以从骨架维度和对象模型维度准确的获取目标对象在当前视频帧中的肢体动作,由于以“从内到外”两个维度提取了目标对象肢体动作的特征信息,可以使输入至姿态迁移模型的姿态信息更加准确,进而可以保证姿态迁移模型在训练过程中可以快速学习不同姿态信息与不同纹理信息之间的转换过程;并且,由于基于该骨架特征和模型特征,分别生成预测纹理数据和预测坐标数据,使得姿态迁移模型可以随着输入的姿态数据的不同,生成不同的预测纹理数据和预测坐标数据,提升了对象姿态迁移过程中对于纹理细节的还原度,生成的预测视频帧细节更加丰富,真实度较高。
[0231]
(5)本技术实施例将姿态迁移模型划分为前景生成网络和背景生成网络,可以使前景生成网络专注于学习对象姿态与纹理图像、纹理坐标之间的关系,同时,可以使背景生成网络专注于学习对象姿态对于初始背景图的影响。如此,可以使得生成的前景预测图像和背景预测图像更加真实,由此得到的预测视频帧也更加准确。
[0232]
以上所述,仅为本技术的实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本技术的保护范围之内。
再多了解一些

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

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

相关文献