CN115222859A - 图像动画化 - Google Patents

图像动画化 Download PDF

Info

Publication number
CN115222859A
CN115222859A CN202110412709.2A CN202110412709A CN115222859A CN 115222859 A CN115222859 A CN 115222859A CN 202110412709 A CN202110412709 A CN 202110412709A CN 115222859 A CN115222859 A CN 115222859A
Authority
CN
China
Prior art keywords
frame
training
motion
video
input image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110412709.2A
Other languages
English (en)
Inventor
刘蓓
杨欢
傅建龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Priority to CN202110412709.2A priority Critical patent/CN115222859A/zh
Priority to US18/279,764 priority patent/US20240153189A1/en
Priority to EP22719119.4A priority patent/EP4323966A1/en
Priority to PCT/US2022/023186 priority patent/WO2022221080A1/en
Publication of CN115222859A publication Critical patent/CN115222859A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/802D [Two Dimensional] animation, e.g. using sprites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Processing Or Creating Images (AREA)

Abstract

根据本公开的实现,提出了一种用于从图像生成视频的方案。在该方案中,获取输入图像和参考视频。基于参考视频,确定参考视频中的参考对象的运动模式。生成以输入图像作为起始帧的输出视频,输入图像中的目标对象在输出视频中的运动具有参考对象的运动模式。以此方式,该方案能够直观地将参考视频中的参考对象的运动模式应用于输入图像,以生成输出视频,并且目标对象在输出视频中的运动具有参考对象的运动模式。

Description

图像动画化
背景技术
图像动画化(image animation)是指以自动的方式从静态图像生成动态视频。与静态图像相比,动态视频更加生动并具有表现力。因此,可以提升用户的使用体验。目前,图像动画化已广泛应用于生成动态背景、动态壁纸等。但是,所生成的视频的质量仍然需要提高。因此,需要能够生成高质量的视频的图像动画化方法。
发明内容
根据本公开的实现,提出了一种用于从图像生成视频的方案。在该方案中,获取输入图像和参考视频。基于参考视频,确定参考视频中的参考对象的运动模式。生成以输入图像作为起始帧的输出视频,输入图像中的目标对象在输出视频中的运动具有参考对象的运动模式。以此方式,该方案能够直观地基于输入图像和参考视频生成输出视频,并且输出视频中目标对象的运动具有参考视频中的参考对象的运动模式。
提供发明内容部分是为了简化的形式来介绍对概念的选择,其在下文的具体实施方式中将被进一步描述。发明内容部分无意标识要求保护的主题的关键特征或主要特征,也无意限制要求保护的主题的范围。
附图说明
图1示出了能够实施本公开的多个实现的计算设备的框图;
图2示出了根据本公开的实现的用于图像动画化的系统的架构图;
图3示出了根据本公开的实现的训练图像动画化模型的系统的架构图;
图4示出了根据本公开的实现的图像动画化的方法的流程图;
图5示出了根据本公开的实现的训练图像动画化模型的方法的流程图;并且
这些附图中,相同或相似参考符号用于表示相同或相似元素。
具体实施方式
现在将参照若干示例实现来论述本公开。应当理解,论述了这些实现仅是为了使得本领域普通技术人员能够更好地理解且因此实现本公开,而不是暗示对本公开的范围的任何限制。
如本文所使用的,术语“包括”及其变体要被解读为意味着“包括但不限于”的开放式术语。术语“基于”要被解读为“至少部分地基于”。术语“一个实现”和“一种实现”要被解读为“至少一个实现”。术语“另一个实现”要被解读为“至少一个其他实现”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
如本文所使用的,“神经网络”能够处理输入并且提供相应输出,其通常包括输入层和输出层以及在输入层与输出层之间的一个或多个隐藏层。在深度学习应用中使用的神经网络通常包括许多隐藏层,从而延长网络的深度。神经网络的各个层按顺序相连,从而前一层的输出被提供作为后一层的输入,其中输入层接收神经网络的输入,而输出层的输出作为神经网络的最终输出。神经网络的每个层包括一个或多个节点(也称为处理节点或神经元),每个节点处理来自上一层的输入。CNN是一种类型的神经网络,包括一个或多个卷积层,用于对各自的输入执行卷积操作。CNN可以用于在各种场景中,特别适合于处理图像或视频数据。在本文中,术语“神经网络”、“网络”和“神经网络模型”可替换地使用。
如上所述,由于动态的视频相比静态图像更加生动和有趣,因此可以提高用户的使用体验。然而,常规的图像动画化方法通常直接将预先获得的运动模式应用到整个图像,而不考虑图像中的不同对象的语义之间的区别,使得所生成的输出视频较为单调生硬。附加地,预先获得的运动模式通常以代码本的形式被存储和调用,使得用户难以直观地了解运动模式。因此,用户很难想象应用运动模式所生成的输出视频。例如,用户可能需要尝试许多不同的运动模式来找到能够生成期望的输出视频的优选运动模式。因此,需要能够以直观的方式生成高质量视频的图像动画化方法。
以上讨论了在常规的从图像生成视频的方案中存在的一些问题。根据本公开的实现,提出了一种用于从图像生成视频的方案,旨在解决上述问题以及其他潜在问题中的一个或多个。在该方案中,获取输入图像和参考视频。基于参考视频,确定参考视频中的参考对象的运动模式。生成以输入图像作为起始帧的输出视频,输入图像中的目标对象在输出视频中的运动具有参考对象的运动模式。以下进一步结合附图来详细描述该方案的各种示例实现。
图1示出了能够实施本公开的多个实现的计算设备100的框图。应当理解,图1所示出的计算设备100仅仅是示例性的,而不应当构成对本公开所描述的实现的功能和范围的任何限制。如图1所示,计算设备100包括通用计算设备形式的计算设备100。计算设备100的组件可以包括但不限于一个或多个处理器或处理单元110、存储器120、存储设备130、一个或多个通信单元140、一个或多个输入设备150以及一个或多个输出设备160。
在一些实现中,计算设备100可以被实现为具有计算能力的各种用户终端或服务终端。服务终端可以是各种服务提供方提供的服务器、大型计算设备等。用户终端诸如是任意类型的移动终端、固定终端或便携式终端,包括移动手机、站点、单元、设备、多媒体计算机、多媒体平板、互联网节点、通信器、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、个人通信系统(PCS)设备、个人导航设备、个人数字助理(PDA)、音频/视频播放器、数码相机/摄像机、定位设备、电视接收器、无线电广播接收器、电子书设备、游戏设备或者其任意组合,包括这些设备的配件和外设或者其任意组合。还可预见到的是,计算设备100能够支持任意类型的针对用户的接口(诸如“可佩戴”电路等)。
处理单元110可以是实际或虚拟处理器并且能够根据存储器120中存储的程序来执行各种处理。在多处理器系统中,多个处理单元并行执行计算机可执行指令,以提高计算设备100的并行处理能力。处理单元110也可以被称为中央处理单元(CPU)、图形处理单元(GPU)、微处理器、控制器、微控制器。
计算设备100通常包括多个计算机存储介质。这样的介质可以是计算设备100可访问的任何可以获得的介质,包括但不限于易失性和非易失性介质、可拆卸和不可拆卸介质。存储器120可以是易失性存储器(例如寄存器、高速缓存、随机访问存储器(RAM))、非易失性存储器(例如,只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存)或其某种组合。存储器120可以包括图像动画化模块122,这些程序模块被配置为执行本文所描述的各种实现的功能。图像动画化模块122可以由处理单元110访问和运行,以实现相应功能。
存储设备130可以是可拆卸或不可拆卸的介质,并且可以包括机器可读介质,其能够用于存储信息和/或数据并且可以在计算设备100内被访问。计算设备100可以进一步包括另外的可拆卸/不可拆卸、易失性/非易失性存储介质。尽管未在图1中示出,可以提供用于从可拆卸、非易失性磁盘进行读取或写入的磁盘驱动和用于从可拆卸、非易失性光盘进行读取或写入的光盘驱动。在这些情况中,每个驱动可以由一个或多个数据介质接口被连接至总线(未示出)。
通信单元140实现通过通信介质与另外的计算设备进行通信。附加地,计算设备100的组件的功能可以以单个计算集群或多个计算机器来实现,这些计算机器能够通过通信连接进行通信。因此,计算设备100可以使用与一个或多个其他服务器、个人计算机(PC)或者另一个一般网络节点的逻辑连接来在联网环境中进行操作。
输入设备150可以是一个或多个各种输入设备,例如鼠标、键盘、追踪球、语音输入设备等。输出设备160可以是一个或多个输出设备,例如显示器、扬声器、打印机等。计算设备100还可以根据需要通过通信单元140与一个或多个外部设备(未示出)进行通信,外部设备诸如存储设备、显示设备等,与一个或多个使得用户与计算设备100交互的设备进行通信,或者与使得计算设备100与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)进行通信。这样的通信可以经由输入/输出(I/O)接口(未示出)来执行。
在一些实现中,除了被集成在单个设备上之外,计算设备100的各个部件中的一些或所有部件还可以以云计算架构的形式被设置。在云计算架构中,这些部件可以被远程布置,并且可以一起工作以实现本公开所描述的功能。在一些实现中,云计算提供计算、软件、数据访问和存储服务,它们不需要终端用户知晓提供这些服务的系统或硬件的物理位置或配置。在各种实现中,云计算使用适当的协议通过广域网(诸如因特网)提供服务。例如,云计算提供商通过广域网提供应用,并且它们可以通过web浏览器或任何其他计算组件被访问。云计算架构的软件或组件以及相应的数据可以被存储在远程位置处的服务器上。云计算环境中的计算资源可以在远程数据中心位置处被合并或者它们可以被分散。云计算基础设施可以通过共享数据中心提供服务,即使它们表现为针对用户的单一访问点。因此,可以使用云计算架构从远程位置处的服务提供商提供本文所描述的组件和功能。备选地,它们也可以从常规服务器被提供,或者它们可以直接或以其他方式被安装在客户端设备上。
计算设备100可以根据本公开的多种实现来从图像生成视频。如图1所示,计算设备100可以通过输入设备150接收输入图像170和参考视频171。输入设备150可以将输入图像170和参考视频171传输给图像动画化模块122。图像动画化模块122基于输入图像170和参考视频171生成输出视频190。输出视频190包括作为起始帧的输入图像170,以及随后的至少一个输出帧,例如图1所示的输出帧190-1、190-2。
例如,输入图像170可以是待处理的风景图。如图所示,输入图像170可以是包含草地、蓝天和白云等对象的风景图。在另一些实现中,输入图像170可以是包含瀑布、星空、湖泊之类的风景图。应理解,也可以基于非风景图类型的输入图像170来生成视频。参考视频171可以是用于提取参考运动模式的输入视频。参考视频171至少包括连续的两帧。在输入图像170是包含草地、蓝天和白云的风景图的情况下,参考视频171也可以是包含草地、蓝天和白云的视频。在这种情况下,可以提取参考视频171中草地、蓝天和白云的运动模式,并将它们分别应用到输入图像170中的草地、蓝天和白云来生成输出视频190。如图1所示,输出视频190中的白云在连续的帧170、190-1和190-2中移动了位置(如圆圈所指示的),并且输出视频190中的白云的运动具有参考视频171中白云的运动模式。在一些实现中,参考视频171中的对象与输入图像170中的对象也可以不相对应。在这种情况下,可以根据用户的指示将参考视频171中的任意对象的运动模式应用到输入图像170中的目标对象,以生成用户期望的输出视频190。
图2示出了根据本公开的实现的图像动画化的系统200的架构图。系统300可以被实现在图1的计算设备100中。系统300可以是端到端的神经网络模型。
如图2所示,计算设备100可以基于参考视频171的第一帧171-1和随后的第二帧171-2,确定第一参考运动特征210。第一参考运动特征210用于表征从第一帧171-1到第二帧171-2的运动。第一参考运动特征210可以利用光流(optical flow)来表示。光流是空间运动物体的像素运动的瞬时速度。在时间间隔很小(比如视频的连续前后两帧之间)时,光流也等同于目标点的位移。光流可以用与第一帧和第二帧大小相等的双通道图(分别表示x方向的位移和y方向的位移)来表示。可以利用光流估计(optical flow estimation)来确定以光流表示的第一参考运动特征210。光流估计通过利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到第一帧跟第二帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息。换句话说,光流估计可以确定用于表征从第一帧171-1到第二帧171-2的运动的第一参考运动特征210。在一些实现中,可以利用FlowNet 2.0来提取基于第t帧和第t+1帧的光流Ft。在利用光流估计来确定第一参考运动特征的情况下,由于光流法本身的限制,相邻帧之间目标点的位移应该比较小。因此,图像中的对象在相邻帧之间不应该发生较大的位置变化。在这种情况下,相比描绘球类运动的参考视频(对象的位置变化更大),描绘风景变化的参考视频171可以提取更准确的第一参考运动特征210。应理解,本公开的范围不限制确定第一参考运动特征210的方法。在利用其它方法来确定参考运动特征的情况下,可以不限制参考视频171中的对象在相邻帧之间的变化幅度。换句话说,可以不限制参考视频171的类型为风景图。
在一些实现中,计算设备100可以确定第一帧171-1中的第一组参考对象和输入图像170中的至少一个对象。至少一个对象可以包括目标对象。参照图2,第一帧171-1中的第一组参考对象可以包括蓝天、白云、树和湖泊。输入图像170中的至少一个对象可以包括蓝天、白云、树、湖泊和桥。在一些实现中,输入图像170中的目标对象可以是白云。在另一些实现中,输入图像170中的目标对象可以包括白云和树。
可以利用多种方法来确定第一帧171-1中的第一组参考对象和输入图像170中的至少一个对象。例如,可以利用语义分割的方法来确定具有相应语义的对象。在这种情况下,具有相同语义的对象对应于相同的语义分割掩模。在一些实现中,通过对第一帧171-1进行语义分割,可以生成第一组语义分割掩模220。第一组语义分割掩模220可以指示第一组参考对象在第一帧171-1中的相应位置。例如,参考图2,第一组语义分割掩模220可以包括分别与蓝天、树和湖泊对应的语义分割掩模。语义分割掩模可以利用二进制掩码来表示。例如,假设第一帧171-1具有300×300像素,则针对每个语义的语义分割掩模可以用300×300的矩阵来表示。矩阵中每个元素的二进制值指示具有该语义的对象是否存在于相应位置。参考图2,在第一帧171-1中,湖泊仅存在于图像的下方,因此针对湖泊的语义分割掩模仅在矩阵的下方具有为1的值,并且在其他位置均具有为零的值。类似地,可以通过对输入图像170进行语义分割来生成至少一个语义分割掩模。该至少一个语义分割掩模可以指示至少一个对象在输入图像170中的相应位置。参考图2,可以基于输入图像170生成分别与蓝天、白云、树、湖泊和桥对应的语义分割掩模。每个语义分割掩模可以指示具有对应语义的对象在输入图像170中的相应位置。在一些实现中,可以采用除语义分割以外的其他对象确定方法来确定第一帧171-1中的第一组参考对象和输入图像170中的至少一个对象。本公开的范围在此不受限制。
在一些实现中,计算设备100可以通过确定第一组参考对象中的至少一个参考对象到输入图像170中的至少一个对象的语义映射,基于第一参考运动特征210来生成用于输入图像170的第一预测运动特征240。如上所述,第一参考运动特征210用于表征从第一帧171-1到第二帧171-2的运动,并且可以用光流来表示。类似地,第一预测运动特征240也可以用光流来表示。第一预测运动特征240可以表征输入图像170将发生的运动。应注意的是,例如通过光流估计获得的第一参考运动特征210只能描述图像的整体运动,而无法单独描述图像中的每个参考对象的运动。在这种情况下,如果直接将第一参考运动特征210应用到输入图像170,则难以使得输入图像170中的目标对象按照期望的运动模式发生运动。例如,输入图像170中的树也可能按照参考视频171中的湖泊的运动模式来运动。因此,如果直接利用第一参考运动特征210作为用于输入图像170的第一预测运动特征240,则所生成的输出视频190的质量可能不高。
因此,在一些实现中,计算设备100可以基于第一参考运动特征210确定针对参考视频171中的每个参考对象的运动模式230,并且利用运动模式230来生成第一预测运动特征240。在一些实现中,计算设备100可以基于参考对象到目标对象的语义映射,将参考对象的运动模式230迁移到目标对象。在这种情况下,可以通过确定第一组参考对象中的至少一个参考对象到输入图像170中的至少一个对象的语义映射,将针对参考对象的运动模式230迁移到输入图像170中的目标对象。例如,通过将参考视频171中的湖泊映射到输入图像170中的湖泊,可以将参考视频171中的湖泊的运动模式迁移到输入图像170中的湖泊。并且,通过将参考视频171中的树映射到输入图像170中的树,可以将参考视频171中的树的运动模式迁移到输入图像170中的树。
在一些实现中,计算设备100还可以基于指示参考对象到输入图像170中的目标对象的映射的预定规则,将参考对象的运动模式230迁移到目标对象。预定规则可以由用户定制。预定规则的示例可以包括基于对象颜色进行映射、基于对象形状进行映射,等等。附加地,预定规则还可以指示在输入图像170中的某些对象未被映射时,这些对象在所生成的输出视频190中保持静止。
在一些实现中,计算设备100还可以基于附加参考视频的附加参考对象到输入图像170中的附加目标对象的映射,将附加参考对象的运动模式迁移到附加目标对象。附加参考视频可以包括一个或多个参考视频。在这种情况下,可以通过确定多个参考视频中的多个参考对象分别到输入图像170中的多个目标对象的映射,将多个参考对象的相应运动模式230分别迁移到输入视频170中的多个目标对象。例如,可以将第一参考视频中的湖泊映射到输入图像170中的湖泊,从而将第一参考视频中的湖泊的运动模式230迁移到输入图像170中的湖泊。并且,可以将第二参考视频中的树映射到输入图像170中的树,从而将第二参考视频的树的运动模式迁移到输入图像170中的树。
在一些实现中,计算设备100可以基于各种映射规则将参考视频171中的参考对象的运动模式230组合成针对输入图像170的组合运动模式(图2中未示出)。例如,参考图2,可以通过将第一帧171-1中的参考对象蓝天和树分别映射到输入图像170中的对象蓝天和树,从而生成针对输入图像170的组合运动模式。附加地,在输入图像170中的某些对象未被映射时,可以将组合运动模式中与这些对象对应的相应元素的值设为零。基于组合运动模式,可以确定针对输入图像170的第一预测运动特征240。例如,可以利用运动预测卷积神经网络来提取第一预测运动特征240。下文将参考图3详细描述生成组合运动模式和生成第一预测运动特征240的细节。
在一些实现中,计算设备100可以基于第一预测运动特征240和输入图像170,生成输出视频190中位于起始帧之后的第一输出帧190-1。如上所述,第一预测运动特征240可以用来表征输入图像170将发生的运动,并且该运动与参考视频171中从第一帧171-1到第二帧171-2的运动对应。在一些实现中,可以基于第一预测运动特征240对输入图像170进行图像变换(warp),以生成第一输出帧190-1。图像变换可以指图像与图像之间的某种变形或变换。例如,图像变换可以包括对图像进行重采样(re-sampling)并对采样点进行插值。在一些实现中,图像变换可以指代光流映射。换句话说,可以基于光流来对输入图像170进行光流映射,从而生成第一输出帧190-1。本公开的范围不限制用于生成第一输出帧190-1的图像变换的类型。
在一些实现中,计算设备100还可以基于所生成的第一输出帧190-1来生成输出视频190中位于第一输出帧190-1之后的第二输出帧190-2。类似地,可以基于参考视频171的第二帧171-2和随后的第三帧,确定第二参考运动特征。第二参考运动特征用于表征从第二帧171-2到第三帧的运动。可以确定第二帧171-2中的第二组参考对象和第一输出帧190-1中的至少一个对象。应注意,由于第一输出帧190-1是通过对输入图像170进行光流映射而生成的,因此第一输出帧190-1包括的对象应该与输入图像170包括的对象一致。然而,由于对象的运动,每个对象的相应语义分割掩模可能发生变化。通过确定第二组参考对象中的至少一个参考对象到第一输出帧190-1中的至少一个对象的语义映射,可以基于第二参考运动特征生成用于第一输出帧190-1的第二预测运动特征。应注意,通常希望输出视频190中的目标对象在连续的输出帧中按照同一参考对象的运动模式而运动。在这种情况下,通常维持参考对象到目标对象的语义映射关系不变。基于所生成第一预测运动特征240、第二预测运动特征和输入图像,可以生成输出视频190中位于第一输出帧190-1之后的第二输出帧190-2。应注意,与生成第一输出帧190-1不同,可以基于第一预测运动特征240和第二预测运动特征的和来对输入图像170进行图像变换,以生成第二输出帧190-2。通过直接对输入图像170进行图像变换来生成第二输出帧190-2,可以减小所生成的输出帧的误差累积,从而使得输出视频190更为逼真。
在一些实现中,参考视频171还可以包括多个参考视频。在这种情况,针对多个参考视频171中的每个参考视频,可以基于相邻帧来确定与多组参考对象对应的相应参考运动特征210,并生成相应的语义分割掩模220。基于此,可以生成针对多个参考视频171的多组运动模式230。类似地,可以通过确定多组参考对象中的至少一个参考对象到输入图像170中的至少一个对象的语义映射,将针对参考对象的多组运动模式230组合成针对输入视频170的组合运动模式。例如,可以将第一参考视频中的湖泊映射到输入图像170中的湖泊并且将第二参考视频中的树映射到输入图像170中的树,从而利用第一参考视频的湖泊的运动模式和第二参考视频的树的运动模式来组成组合运动模式,以生成用于输入图像170的第一预测运动特征240。
以此方式,本公开的实现可以基于参考视频171中的参考对象的运动从输入图像170生成输出视频190,并且目标对象在所生成的输出视频190中的运动具有参考对象的运动模式。用户可以将参考视频中的多个参考对象的运动模式分别迁移到对应的目标对象。此外,由于引入了参考视频171,用户可以直观地了解将被应用到输入图像170的运动模式。因此,用户将容易想象所生成的输出视频190中目标对象的运动效果,而无需经历多次尝试来选择心仪的运动效果。此外,由于通过直接对输入图像170进行光流映射来生成输出视频190,输出视频190中的每个像素都来自原始的输入图像170,因此输出视频190具有较高的真实性。此外,本公开的实施例可以通过直接输入参考视频171和输入图像170来生成输出视频190,并且输入图像170中的目标对象在输出视频190中的运动具有参考对象的运动模式。换句话说,用户不需要基于参考对象的运动模式230来预测目标对象的运动模式,而是直接将参考对象的运动模式230迁移到目标对象,使得目标对象在输出视频190中的运动具有参考对象的运动模式230。
以上参考图2描述了用于图像动画化的系统200。下文将参考图3来描述用于训练图像动画化模型的系统300。图3示出了根据本公开的实现的用于训练图像动画化模型的系统300的架构图。系统300可以被实现在图1的计算设备100中。如图3所示,系统300获取训练视频,训练视频包括第一训练帧301-1和随后的第二训练帧301-2。系统300利用机器学习模型生成针对训练视频的预测视频。预测视频中的对象的运动具有该对象在训练视频中的运动模式,并且预测视频包括第一训练帧301-1和随后的针对第二训练帧301-2的预测帧380。系统300至少基于预测帧380和第二训练帧301-2来训练机器学习模型。
应注意,在系统300中,训练视频不仅对应于图像动画化模型在推理时使用的参考视频171,训练视频中的第一训练帧301还对应推理时使用的输入图像170。因此,机器学习模型基于第一训练帧301(对应输入图像170)和训练视频(对应参考视频171)所生成的预测视频被期望与训练视频本身一致。换句话说,可以将训练视频中的第二训练帧301-2作为预测帧380的标签,以用于训练图像动画化模型。以此方式,可以将训练视频本身作为标签来监督式地训练用于从图像生成视频的机器学习模型。为了使得经训练的模型可以广泛应用于其他未见过的(unseen)输入图像和参考视频,在本公开的实现中可以执行附加的空间变换操作来防止模型过度学习训练视频之间的空间关联。空间变换操作的细节将在下文参考图3详细描述。
如图3所示,系统300可以基于第一训练帧301-1和第二训练帧301-2来生成训练运动特征302。训练运动特征302用于表征从第一训练帧301-1到第二训练帧301-2的运动。在一些实现中,系统300还可以确定第一训练帧301-1中的一组训练对象。如参考图2所描述的,可以对第一训练帧301-1进行语义分割,以生成对应的一组语义分割掩模303。一组语义分割掩模303可以指示一组训练对象在第一训练帧301-1中的相应位置。
系统300可以对训练运动特征302和一组训练语义分割掩模303分别执行相同的空间变换,以生成经变换的训练运动特征310与经变换的一组训练语义分割掩模320。空间变换可以打乱对应输入图像170的训练视频中的第一训练帧301-1与对应参考视频的训练视频之间的空间关联,以使得经训练的图像动画化模型具有更强的泛化能力。此外,对训练运动特征302和一组训练语义分割掩模303分别执行相同的空间变换可以保持图像中对象的位置与运动特征在空间上保持一致。空间变换的示例可以包括水平翻转、竖直翻转、旋转等。例如,图3中示出了水平翻转的空间变换的示例。
在一些实现中,系统300可以基于经变换的训练运动特征310和经变换的一组训练语义分割掩模320,来生成针对每个训练对象的运动模式340。如图3所示,可以利用部分卷积(partial convolution)模块330来确定针对第一训练帧301-1中的训练对象的运动模式340。部分卷积已经广泛应用于图像补全、图像修复等领域。在本公开的实现中,可以分别利用每个训练对象的经变换的语义分割掩模320对训练运动特征310进行部分卷积,以确定针对每个训练对象的运动模式。
具体地,可以参考公式(1)来进行部分卷积。
Figure BDA0003024537780000131
其中X表示经变换的训练运动特征310中与卷积核(kernel)对应的特征部分,M表示针对特定训练对象的语义分割掩模中与卷积核对应的掩模部分,W和b分别是可学习的权重参数和偏差,sum(1)表示卷积核大小的全1矩阵的元素的和,sum(M)表示掩模部分的元素的和,sum(1)/sum(M)可以用于补偿不同对象在卷积滑动窗口中的面积的差异。
从公式(1)可以看到,通过利用针对特定训练对象的掩模来对经变换的训练运动特征310进行卷积,只有在与特定训练对象对应的位置处的经变换的训练运动特征310被传递到后续计算中。换句话说,只有针对特定参考对象的运动特征被保留。
此外,在每次部分卷积之后,可以利用公式(2)更新语义分割掩模320。
Figure BDA0003024537780000141
公式(2)表明,只要与卷积核对应的掩模区域有一个元素是与参考对象对应的,则与卷积核中心位置对应的掩码就会被更新为1。换句话说,与该卷积核中心位置对应的经变换的训练运动特征310被认为与该特定训练对象有关,因而被保留以用于后续计算。以此方式,可以基于描述图像的整体运动的经变换的训练运动特征310来确定针对每个训练对象的运动模式340。
在一些实现中,可以基于针对每个训练对象的运动模式340来生成用于第一训练帧301-1的预测运动特征370。应注意,在此第一训练帧301对应于推理时使用的输入图像170。如图3所示,可以基于第一训练帧301-1的语义分割掩模303以及针对训练对象的运动模式340来生成用于第一训练帧301-1的组合运动模式350。基于组合运动模式350和第一训练帧301-1,可以确定用于第一训练帧301-1的预测运动特征370。如参考图2所描述的,可以基于第一训练帧301-1中的至少一个对象的语义分割掩模303,利用第一训练帧301-1中的至少一个对象到训练对象的语义映射,将被映射到的训练对象的运动模式组合成用于第一训练帧301-1的组合运动模式350。例如,参考图3,可以将第一训练帧301-1(对应输入图像170)中的湖泊映射到第一训练帧301-1(对应参考视频171中的第一帧171-1)中的湖泊。应理解,在系统300中,由于第一训练帧301-1对应输入图像170和参考视频171中的第一帧171-1,可以省略语义映射的操作而直接利用运动模式340来组合成用于第一训练帧301-1的组合运动模式350。可以利用公式(3)来确定组合运动模式350。
L(i,j)=zk,当Mk(i,j)=1 (3)
其中,L(i,j)表示位置(i,j)的组合运动模式350的值(以向量表示),Mk表示针对第一训练帧301-1(对应输入图像170)中的对象k的语义分割掩模,zk表示第一训练帧301-1(对应参考视频171中的第一帧171-1)中的对象k的运动模式。公式(3)表明,可以将符合Mk(i,j)=1条件的位置(i,j)的相应向量确定为zk,从而基于zk来组合成用于第一训练帧301-1的组合运动模式350。
在一些实现中,可以基于组合运动模式350和第一训练帧301-1来确定用于第一训练帧301-1的预测运动特征370。如上所述,预测运动特征370也可以用光流来表示。可以利用卷积神经网络来预测运动特征。例如,可以将组合运动模式350与第一训练帧301-1联接(concatenate)并输入用于预测运动特征的U-Net网络以生成预测运动特征370。
在一些实现中,可以基于预测运动特征370和第一训练帧301-1生成预测帧380。如上所述,可以基于预测运动特征370对第一训练帧301-1进行图像变换,以生成预测帧380。在一些实现中,可以基于以光流表示的预测运动特征370来对第一训练帧301-1进行光流映射,从而生成预测帧380。
在一些实现中,可以确定用于训练图像动画化模型的至少一个损失函数。可以通过对至少一个损失函数进行加权求和,确定目标损失函数。可以通过使目标损失函数最小化,来训练图像动画化模型。
在一些实现中,可以基于预测帧380和第二训练帧301-2之间的差异确定帧损失函数
Figure BDA0003024537780000151
例如,可以参考公式(4)计算预测帧380和第二训练帧301-2之间的一范数:
Figure BDA0003024537780000152
其中
Figure BDA0003024537780000153
和It+1分别表示预测帧380和第二训练帧301-2,
Figure BDA0003024537780000154
表示帧损失函数。
在一些实现中,可以基于预测运动特征370和训练运动特征302之间的差异确定运动特征损失函数
Figure BDA0003024537780000161
例如,可以参考公式(5)计算预测运动特征370和训练运动特征302之间的一范数:
Figure BDA0003024537780000162
其中
Figure BDA0003024537780000163
和Ft分别表示针对第一训练帧301-1的预测运动特征370和训练运动特征302,
Figure BDA0003024537780000164
表示运动特征损失函数。
在一些实现中,可以基于预测运动特征370的空间分布和预测帧的380空间分布,确定平滑度损失函数
Figure BDA0003024537780000165
通过引入平滑度损失函数
Figure BDA0003024537780000166
可以使得图像动画化模型所预测的运动特征具有更高的平滑度。例如,可以参考公式(6)和(7)来计算平滑度损失函数
Figure BDA0003024537780000167
Figure BDA0003024537780000168
Figure BDA0003024537780000169
其中
Figure BDA00030245377800001610
Figure BDA00030245377800001611
分别表示预测帧380中的p位置和邻近的q位置的像素,
Figure BDA00030245377800001612
Figure BDA00030245377800001613
分别表示预测运动特征370中的p位置和邻近的q位置的特征值,
Figure BDA00030245377800001614
表示平滑度损失函数。并且公式(7)定义了公式(6)中的w函数。
如上所述,可以通过对至少一个损失函数进行加权求和,确定目标损失函数。例如,可以参考公式(8)来计算目标损失函数
Figure BDA00030245377800001615
其中α、β和γ表示对应的系数。
Figure BDA00030245377800001616
通过使目标损失函数最小化,可以训练图像动画化模型。经训练的图像动画化模型可以基于输入图像170和参考视频171来生成输出视频190,并使得输出视频190中的目标对象的运动具有参考视频171中的参考对象的运动模式。
图4示出了根据本公开一些实现的用于图像动画化的方法400的流程图。方法400可以由计算设备100来实现,例如可以被实现在计算设备100的存储器120中的图像动画化模块122处。
如图4所示,在框410处,计算设备100获取输入图像170和参考视频171。在框420处,计算设备100基于参考视频171,确定参考视频171中的参考对象的运动模式230。在框430处,计算设备100生成以输入图像170作为起始帧的输出视频190。输入图像170中的目标对象在输出视频190中的运动具有参考视频171中的参考对象的运动模式。
在一些实现中,生成输出视频包括:基于参考对象到目标对象的语义映射,将参考对象的运动模式迁移到目标对象。
在一些实现中,生成输出视频包括以下至少一项:基于指示参考对象到目标对象的映射的预定规则,将参考对象的运动模式迁移到目标对象;以及基于附加参考视频的附加参考对象到输入图像中的附加目标对象的映射,将附加参考对象的运动模式迁移到附加目标对象。
在一些实现中,确定参考对象的运动模式包括:基于参考视频的第一帧和随后的第二帧,确定第一参考运动特征,第一参考运动特征用于表征从第一帧到第二帧的运动;通过生成第一帧的第一组语义分割掩模,确定第一帧中的第一组参考对象,第一组语义分割掩模指示第一组参考对象在第一帧中的相应位置;对第一参考运动特征与第一组语义分割掩模进行部分卷积,以确定第一组参考对象的运动模式。
在一些实现中,生成输出视频包括:通过生成输入图像的至少一个语义分割掩模,确定输入图像中的至少一个对象,至少一个对象包括目标对象,至少一个语义分割掩模指示至少一个对象在输入图像中的相应位置;通过确定第一组参考对象中的至少一个参考对象到至少一个对象的语义映射,基于至少一个参考对象的相应运动模式和至少一个语义分割掩模来确定用于输入图像的组合运动模式;基于组合运动模式和输入图像,利用卷积神经网络生成用于输入图像的第一预测运动特征;以及利用第一预测运动特征对输入图像进行图像变换,生成输出视频中位于起始帧之后的第一输出帧。
在一些实现中,生成输出视频还包括:基于参考视频的第二帧和随后的第三帧,确定第二参考运动特征,第二参考运动特征用于表征从第二帧到第三帧的运动;生成第二帧的第二组语义分割掩模,第二组语义分割掩模指示第一组参考对象在第二帧中的相应位置;对第二参考运动特征与第二组语义分割掩模进行部分卷积,以确定第一组参考对象的第二运动模式;以及生成输出视频中位于第一输出帧之后的第二输出帧,目标对象从第一输出帧到第二输出帧的运动具有第一组参考对象中的参考对象的相应的第二运动模式。
基于以上描述能够看出,根据本公开的实现的图像动画化方案能够直观地将参考视频中的参考对象的运动模式应用于输入图像,以生成输出视频,并且输出视频中的目标对象的运动具有参考对象的运动模式。
图5示出了根据本公开一些实现的用于训练图像动画化模型的方法500的流程图。方法500可以由计算设备100来实现,例如可以被实现在计算设备100的存储器120中的图像动画化模块122处。
如图5所示,在框510处,计算设备100获取训练视频。训练视频包括第一训练帧和随后的第二训练帧。在框520处,计算设备100利用机器学习模型生成针对训练视频的预测视频。预测视频中的对象的运动具有对象在训练视频中的运动模式,并且预测视频包括第一训练帧和随后的针对第二训练帧的预测帧。在框530处,计算设备100至少基于预测帧和第二训练帧,训练机器学习模型。
在一些实现中,生成预测视频包括:基于第一训练帧和第二训练帧,确定第一训练帧中的一组训练对象的相应运动模式;以及生成预测帧,一组训练对象从第一训练帧到预测帧的运动具有相应运动模式。
在一些实现中,确定一组训练对象的相应运动模式包括:基于第一训练帧和第二训练帧,确定训练运动特征,训练运动特征用于表征从第一训练帧到第二训练帧的运动;通过生成第一训练帧的一组训练语义分割掩模,确定第一训练帧中的一组训练对象,一组训练语义分割掩模指示一组训练对象在第一训练帧中的相应位置;对训练运动特征和一组训练语义分割掩模分别执行相同的空间变换;对经变换的训练运动特征与经变换的一组训练语义分割掩模进行部分卷积,以确定一组训练对象的相应运动模式。
在一些实现中,生成预测帧包括:基于一组训练对象的相应运动模式和一组训练语义分割掩模,来确定用于第一训练帧的组合运动模式;基于组合运动模式和第一训练帧,利用卷积神经网络生成用于第一训练帧的预测运动特征;以及利用预测运动特征对第一训练帧进行图像变换,生成预测帧。
在一些实现中,训练机器学习模型包括:确定用于训练机器学习模型的至少一个损失函数;通过对至少一个损失函数进行加权求和,确定目标损失函数;以及通过使目标损失函数最小化,来训练机器学习模型。
在一些实现中,确定至少一个损失函数包括以下至少一项:基于预测帧和第二训练帧之间的差异,确定帧损失函数;基于预测运动特征和训练运动特征之间的差异,确定运动特征损失函数;以及基于预测运动特征的空间分布和预测帧的空间分布,确定平滑度损失函数。
基于以上描述能够看出,根据本公开的实现的训练图像动画化模型的方案能够利用训练视频来监督式地训练机器学习模型,而无需额外的标注工作。
以下列出了本公开的一些示例实现方式。
在第一方面,本公开提供了一种计算机实现的方法。所述方法包括:获取输入图像和参考视频。基于参考视频,确定参考视频中的参考对象的运动模式。生成以输入图像作为起始帧的输出视频,输出视频中的目标对象的运动具有参考视频中的参考对象的运动模式。
在一些实现中,生成输出视频包括:基于参考对象到目标对象的语义映射,将参考对象的运动模式迁移到目标对象。
在一些实现中,生成输出视频包括以下至少一项:基于指示参考对象到目标对象的映射的预定规则,将参考对象的运动模式迁移到目标对象;以及基于附加参考视频的附加参考对象到输入图像中的附加目标对象的映射,将附加参考对象的运动模式迁移到附加目标对象。
在一些实现中,确定参考对象的运动模式包括:基于参考视频的第一帧和随后的第二帧,确定第一参考运动特征,第一参考运动特征用于表征从第一帧到第二帧的运动;通过生成第一帧的第一组语义分割掩模,确定第一帧中的第一组参考对象,第一组语义分割掩模指示第一组参考对象在第一帧中的相应位置;对第一参考运动特征与第一组语义分割掩模进行部分卷积,以确定第一组参考对象的运动模式。
在一些实现中,生成输出视频包括:通过生成输入图像的至少一个语义分割掩模,确定输入图像中的至少一个对象,至少一个对象包括目标对象,至少一个语义分割掩模指示至少一个对象在输入图像中的相应位置;通过确定第一组参考对象中的至少一个参考对象到至少一个对象的语义映射,基于至少一个参考对象的相应运动模式和至少一个语义分割掩模来确定用于输入图像的组合运动模式;基于组合运动模式和输入图像,利用卷积神经网络生成用于输入图像的第一预测运动特征;以及利用第一预测运动特征对输入图像进行图像变换,生成输出视频中位于起始帧之后的第一输出帧。
在一些实现中,生成输出视频还包括:基于参考视频的第二帧和随后的第三帧,确定第二参考运动特征,第二参考运动特征用于表征从第二帧到第三帧的运动;生成第二帧的第二组语义分割掩模,第二组语义分割掩模指示第一组参考对象在第二帧中的相应位置;对第二参考运动特征与第二组语义分割掩模进行部分卷积,以确定第一组参考对象的第二运动模式;以及生成输出视频中位于第一输出帧之后的第二输出帧,目标对象从第一输出帧到第二输出帧的运动具有第一组参考对象中的参考对象的相应的第二运动模式。
在第二方面,本公开还提供了一种计算机实现的方法。所述方法包括:获取训练视频。所述训练视频包括第一训练帧和随后的第二训练帧。利用机器学习模型生成针对所述训练视频的预测视频。所述预测视频中的对象的运动具有对象在所述训练视频中的运动模式,并且所述预测视频包括所述第一训练帧和随后的针对所述第二训练帧的预测帧。至少基于所述预测帧和所述第二训练帧,训练所述机器学习模型。
在一些实现中,生成预测视频包括:基于第一训练帧和第二训练帧,确定第一训练帧中的一组训练对象的相应运动模式;以及生成预测帧,一组训练对象从第一训练帧到预测帧的运动具有相应运动模式。
在一些实现中,确定一组训练对象的相应运动模式包括:基于第一训练帧和第二训练帧,确定训练运动特征,训练运动特征用于表征从第一训练帧到第二训练帧的运动;通过生成第一训练帧的一组训练语义分割掩模,确定第一训练帧中的一组训练对象,一组训练语义分割掩模指示一组训练对象在第一训练帧中的相应位置;对训练运动特征和一组训练语义分割掩模分别执行相同的空间变换;对经变换的训练运动特征与经变换的一组训练语义分割掩模进行部分卷积,以确定一组训练对象的相应运动模式。
在一些实现中,生成预测帧包括:基于一组训练对象的相应运动模式和一组训练语义分割掩模,来确定用于第一训练帧的组合运动模式;基于组合运动模式和第一训练帧,利用卷积神经网络生成用于第一训练帧的预测运动特征;以及利用预测运动特征对第一训练帧进行图像变换,生成预测帧。
在一些实现中,训练所述机器学习模型包括:确定用于训练所述机器学习模型的至少一个损失函数;通过对所述至少一个损失函数进行加权求和,确定目标损失函数;以及通过使所述目标损失函数最小化,来训练所述机器学习模型。
在一些实现中,确定所述至少一个损失函数包括以下至少一项:基于所述预测帧和所述第二训练帧之间的差异,确定帧损失函数;基于所述预测运动特征和所述训练运动特征之间的差异,确定运动特征损失函数;以及基于所述预测运动特征的空间分布和所述预测帧的空间分布,确定平滑度损失函数。
在第三方面,本公开提供了一种电子设备。所述电子设备包括:处理单元;以及存储器,耦合至所述处理单元并且包含存储于其上的指令,所述指令在由所述处理单元执行时,使得所述设备执行动作,所述动作包括:获取输入图像和参考视频。基于参考视频,确定参考视频中的参考对象的运动模式。生成以输入图像作为起始帧的输出视频,输入图像中的目标对象在输出视频中的运动具有参考视频中的参考对象的运动模式。
在一些实现中,生成输出视频包括:基于参考对象到目标对象的语义映射,将参考对象的运动模式迁移到目标对象。
在一些实现中,生成输出视频包括以下至少一项:基于指示参考对象到目标对象的映射的预定规则,将参考对象的运动模式迁移到目标对象;以及基于附加参考视频的附加参考对象到输入图像中的附加目标对象的映射,将附加参考对象的运动模式迁移到附加目标对象。
在一些实现中,确定参考对象的运动模式包括:基于参考视频的第一帧和随后的第二帧,确定第一参考运动特征,第一参考运动特征用于表征从第一帧到第二帧的运动;通过生成第一帧的第一组语义分割掩模,确定第一帧中的第一组参考对象,第一组语义分割掩模指示第一组参考对象在第一帧中的相应位置;对第一参考运动特征与第一组语义分割掩模进行部分卷积,以确定第一组参考对象的运动模式。
在一些实现中,生成输出视频包括:通过生成输入图像的至少一个语义分割掩模,确定输入图像中的至少一个对象,至少一个对象包括目标对象,至少一个语义分割掩模指示至少一个对象在输入图像中的相应位置;通过确定第一组参考对象中的至少一个参考对象到至少一个对象的语义映射,基于至少一个参考对象的相应运动模式和至少一个语义分割掩模来确定用于输入图像的组合运动模式;基于组合运动模式和输入图像,利用卷积神经网络生成用于输入图像的第一预测运动特征;以及利用第一预测运动特征对输入图像进行图像变换,生成输出视频中位于起始帧之后的第一输出帧。
在一些实现中,生成输出视频还包括:基于参考视频的第二帧和随后的第三帧,确定第二参考运动特征,第二参考运动特征用于表征从第二帧到第三帧的运动;生成第二帧的第二组语义分割掩模,第二组语义分割掩模指示第一组参考对象在第二帧中的相应位置;对第二参考运动特征与第二组语义分割掩模进行部分卷积,以确定第一组参考对象的第二运动模式;以及生成输出视频中位于第一输出帧之后的第二输出帧,目标对象从第一输出帧到第二输出帧的运动具有第一组参考对象中的参考对象的相应的第二运动模式。
在第四方面,本公开提供了一种电子设备。所述电子设备包括:处理单元;以及存储器,耦合至所述处理单元并且包含存储于其上的指令,所述指令在由所述处理单元执行时,使得所述设备执行动作,所述动作包括:获取训练视频,所述训练视频包括第一训练帧和随后的第二训练帧;利用机器学习模型生成针对所述训练视频的预测视频,所述预测视频中的对象的运动具有所述对象在所述训练视频中的运动模式,并且所述预测视频包括所述第一训练帧和随后的针对所述第二训练帧的预测帧;以及至少基于所述预测帧和所述第二训练帧,训练所述机器学习模型。
在第五方面,本公开提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机存储介质中并且包括机器可执行指令,机器可执行指令在由设备执行时使设备执行上述第一方面或第二方面所述的方法。
在第六方面,本公开提供了一种计算机程序产品,计算机程序产品包括机器可执行指令,机器可执行指令在由设备执行时使设备执行上述第一方面或第二方面所述的方法。
在第七方面,本公开提供了一种计算机可读介质,其上存储有机器可执行指令,机器可执行指令在由设备执行时使设备执行上述第一方面或第二方面所述的方法。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)等等。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实现的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

Claims (20)

1.一种计算机实现的方法,包括:
获取输入图像和参考视频;
基于所述参考视频,确定所述参考视频中的参考对象的运动模式;以及
生成以所述输入图像作为起始帧的输出视频,所述输入图像中的目标对象在所述输出视频中的运动具有所述参考对象的运动模式。
2.根据权利要求1所述的方法,其中生成所述输出视频包括:
基于所述参考对象到所述目标对象的语义映射,将所述参考对象的运动模式迁移到所述目标对象。
3.根据权利要求1所述的方法,其中生成所述输出视频包括以下至少一项:
基于指示所述参考对象到所述目标对象的映射的预定规则,将所述参考对象的运动模式迁移到所述目标对象;以及
基于附加参考视频的附加参考对象到所述输入图像中的附加目标对象的映射,将所述附加参考对象的运动模式迁移到所述附加目标对象。
4.根据权利要求1所述的方法,其中确定所述参考对象的运动模式包括:
基于所述参考视频的第一帧和随后的第二帧,确定第一参考运动特征,所述第一参考运动特征用于表征从所述第一帧到所述第二帧的运动;
通过生成所述第一帧的第一组语义分割掩模,确定所述第一帧中的第一组参考对象,所述第一组语义分割掩模指示所述第一组参考对象在所述第一帧中的相应位置;
对所述第一参考运动特征与所述第一组语义分割掩模进行部分卷积,以确定所述第一组参考对象的运动模式。
5.根据权利要求4所述的方法,其中生成所述输出视频包括:
通过生成所述输入图像的至少一个语义分割掩模,确定所述输入图像中的至少一个对象,所述至少一个对象包括所述目标对象,所述至少一个语义分割掩模指示所述至少一个对象在所述输入图像中的相应位置;
通过确定所述第一组参考对象中的至少一个参考对象到所述至少一个对象的语义映射,基于所述至少一个参考对象的相应运动模式和所述至少一个语义分割掩模来确定用于所述输入图像的组合运动模式;
基于所述组合运动模式和所述输入图像,利用卷积神经网络生成用于所述输入图像的第一预测运动特征;以及
利用所述第一预测运动特征对所述输入图像进行图像变换,生成所述输出视频中位于所述起始帧之后的第一输出帧。
6.根据权利要求5所述的方法,其中生成所述输出视频还包括:
基于所述参考视频的所述第二帧和随后的第三帧,确定第二参考运动特征,所述第二参考运动特征用于表征从所述第二帧到所述第三帧的运动;
生成所述第二帧的第二组语义分割掩模,所述第二组语义分割掩模指示所述第一组参考对象在所述第二帧中的相应位置;
对所述第二参考运动特征与所述第二组语义分割掩模进行部分卷积,以确定所述第一组参考对象的第二运动模式;以及
生成所述输出视频中位于所述第一输出帧之后的第二输出帧,所述目标对象从所述第一输出帧到所述第二输出帧的运动具有所述第一组参考对象中的所述参考对象的相应的第二运动模式。
7.一种计算机实现的方法,包括:
获取训练视频,所述训练视频包括第一训练帧和随后的第二训练帧;
利用机器学习模型生成针对所述训练视频的预测视频,所述预测视频中的对象的运动具有所述对象在所述训练视频中的运动模式,并且所述预测视频包括所述第一训练帧和随后的针对所述第二训练帧的预测帧;以及
至少基于所述预测帧和所述第二训练帧,训练所述机器学习模型。
8.根据权利要求7所述的方法,其中生成所述预测视频包括:
基于所述第一训练帧和所述第二训练帧,确定所述第一训练帧中的一组训练对象的相应运动模式;以及
生成所述预测帧,所述一组训练对象从所述第一训练帧到所述预测帧的运动具有所述相应运动模式。
9.根据权利要求8所述的方法,其中确定所述一组训练对象的相应运动模式包括:
基于所述第一训练帧和所述第二训练帧,确定训练运动特征,所述训练运动特征用于表征从所述第一训练帧到所述第二训练帧的运动;
通过生成所述第一训练帧的一组训练语义分割掩模,确定所述第一训练帧中的所述一组训练对象,所述一组训练语义分割掩模指示所述一组训练对象在所述第一训练帧中的相应位置;
对所述训练运动特征和所述一组训练语义分割掩模分别执行相同的空间变换;
对经变换的所述训练运动特征与经变换的所述一组训练语义分割掩模进行部分卷积,以确定所述一组训练对象的相应运动模式。
10.根据权利要求9所述的方法,其中生成所述预测帧包括:
基于所述一组训练对象的相应运动模式和所述一组训练语义分割掩模,来确定用于所述第一训练帧的组合运动模式;
基于所述组合运动模式和所述第一训练帧,利用卷积神经网络生成用于所述第一训练帧的预测运动特征;以及
利用所述预测运动特征对所述第一训练帧进行图像变换,生成所述预测帧。
11.根据权利要求10所述的方法,其中训练所述机器学习模型包括:
确定用于训练所述机器学习模型的至少一个损失函数;
通过对所述至少一个损失函数进行加权求和,确定目标损失函数;以及
通过使所述目标损失函数最小化,来训练所述机器学习模型。
12.根据权利要求10所述的方法,其中确定所述至少一个损失函数包括以下至少一项:
基于所述预测帧和所述第二训练帧之间的差异,确定帧损失函数;
基于所述预测运动特征和所述训练运动特征之间的差异,确定运动特征损失函数;以及
基于所述预测运动特征的空间分布和所述预测帧的空间分布,确定平滑度损失函数。
13.一种电子设备,包括:
处理单元;以及
存储器,耦合至所述处理单元并且包含存储于其上的指令,所述指令在由所述处理单元执行时,使得所述设备执行动作,所述动作包括:
获取输入图像和参考视频;
基于所述参考视频,确定所述参考视频中的参考对象的运动模式;以及
生成以所述输入图像作为起始帧的输出视频,所述输入图像中的目标对象在所述输出视频中的运动具有所述参考对象的运动模式。
14.根据权利要求13所述的电子设备,其中生成所述输出视频包括:
基于所述参考对象到所述目标对象的语义映射,将所述参考对象的运动模式迁移到所述目标对象。
15.根据权利要求14所述的电子设备,其中生成所述输出视频包括以下至少一项:
基于指示所述参考对象到所述目标对象的映射的预定规则,将所述参考对象的运动模式迁移到所述目标对象;以及
基于附加参考视频的附加参考对象到所述输入图像中的附加目标对象的映射,将所述附加参考对象的运动模式迁移到所述附加目标对象。
16.根据权利要求15所述的电子设备,其中确定所述参考对象的运动模式包括:
基于所述参考视频的第一帧和随后的第二帧,确定第一参考运动特征,所述第一参考运动特征用于表征从所述第一帧到所述第二帧的运动;
通过生成所述第一帧的第一组语义分割掩模,确定所述第一帧中的第一组参考对象,所述第一组语义分割掩模指示所述第一组参考对象在所述第一帧中的相应位置;
对所述第一参考运动特征与所述第一组语义分割掩模进行部分卷积,以确定所述第一组参考对象的运动模式。
17.根据权利要求16所述的电子设备,其中生成所述输出视频包括:
通过生成所述输入图像的至少一个语义分割掩模,确定所述输入图像中的至少一个对象,所述至少一个对象包括所述目标对象,所述至少一个语义分割掩模指示所述至少一个对象在所述输入图像中的相应位置;
通过确定所述第一组参考对象中的至少一个参考对象到所述至少一个对象的语义映射,基于所述至少一个参考对象的相应运动模式和所述至少一个语义分割掩模来确定用于所述输入图像的组合运动模式;
基于所述组合运动模式和所述输入图像,利用卷积神经网络生成用于所述输入图像的第一预测运动特征;以及
利用所述第一预测运动特征对所述输入图像进行图像变换,生成所述输出视频中位于所述起始帧之后的第一输出帧。
18.一种电子设备,包括:
处理单元;以及
存储器,耦合至所述处理单元并且包含存储于其上的指令,所述指令在由所述处理单元执行时,使得所述设备执行动作,所述动作包括:
获取训练视频,所述训练视频包括第一训练帧和随后的第二训练帧;
利用机器学习模型生成针对所述训练视频的预测视频,所述预测视频中的对象的运动具有所述对象在所述训练视频中的运动模式,并且所述预测视频包括所述第一训练帧和随后的针对所述第二训练帧的预测帧;以及
至少基于所述预测帧和所述第二训练帧,训练所述机器学习模型。
19.一种计算机程序产品,所述计算机程序产品包括机器可执行指令,所述机器可执行指令在由设备执行时使所述设备执行动作,所述动作包括:
获取输入图像和参考视频;
基于所述参考视频,确定所述参考视频中的参考对象的运动模式;以及
生成以所述输入图像作为起始帧的输出视频,所述输入图像中的目标对象在所述输出视频中的运动具有所述参考对象的运动模式。
20.一种计算机程序产品,所述计算机程序产品包括机器可执行指令,所述机器可执行指令在由设备执行时使所述设备执行动作,所述动作包括:
获取训练视频,所述训练视频包括第一训练帧和随后的第二训练帧;
利用机器学习模型生成针对所述训练视频的预测视频,所述预测视频中的对象的运动具有所述对象在所述训练视频中的运动模式,并且所述预测视频包括所述第一训练帧和随后的针对所述第二训练帧的预测帧;以及
至少基于所述预测帧和所述第二训练帧,训练所述机器学习模型。
CN202110412709.2A 2021-04-16 2021-04-16 图像动画化 Pending CN115222859A (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202110412709.2A CN115222859A (zh) 2021-04-16 2021-04-16 图像动画化
US18/279,764 US20240153189A1 (en) 2021-04-16 2022-04-02 Image animation
EP22719119.4A EP4323966A1 (en) 2021-04-16 2022-04-02 Image animation
PCT/US2022/023186 WO2022221080A1 (en) 2021-04-16 2022-04-02 Image animation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110412709.2A CN115222859A (zh) 2021-04-16 2021-04-16 图像动画化

Publications (1)

Publication Number Publication Date
CN115222859A true CN115222859A (zh) 2022-10-21

Family

ID=81386997

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110412709.2A Pending CN115222859A (zh) 2021-04-16 2021-04-16 图像动画化

Country Status (4)

Country Link
US (1) US20240153189A1 (zh)
EP (1) EP4323966A1 (zh)
CN (1) CN115222859A (zh)
WO (1) WO2022221080A1 (zh)

Also Published As

Publication number Publication date
WO2022221080A1 (en) 2022-10-20
EP4323966A1 (en) 2024-02-21
US20240153189A1 (en) 2024-05-09

Similar Documents

Publication Publication Date Title
US11631239B2 (en) Iterative spatio-temporal action detection in video
US20210090327A1 (en) Neural network processing for multi-object 3d modeling
KR102663519B1 (ko) 교차 도메인 이미지 변환 기법
KR102612808B1 (ko) 조명 추정
US10977549B2 (en) Object animation using generative neural networks
CN110490959B (zh) 三维图像处理方法及装置、虚拟形象生成方法以及电子设备
US20230237342A1 (en) Adaptive lookahead for planning and learning
CN113780326A (zh) 一种图像处理方法、装置、存储介质及电子设备
US20230237713A1 (en) Method, device, and computer program product for generating virtual image
US10445921B1 (en) Transferring motion between consecutive frames to a digital image
CN114170558A (zh) 用于视频处理的方法、系统、设备、介质和产品
CN111815748B (zh) 一种动画处理方法、装置、存储介质及电子设备
CN113379877A (zh) 人脸视频生成方法、装置、电子设备及存储介质
CN113516697A (zh) 图像配准的方法、装置、电子设备及计算机可读存储介质
CN113569855A (zh) 一种舌象分割方法、设备及存储介质
CN117315758A (zh) 面部表情的检测方法、装置、电子设备及存储介质
US20230351662A1 (en) Methods and systems for emotion-controllable generalized talking face generation
US20220398283A1 (en) Method for fast and better tree search for reinforcement learning
CN113610856B (zh) 训练图像分割模型和图像分割的方法和装置
US20220157012A1 (en) Relighting Images and Video Using Learned Lighting and Geometry
CN115222859A (zh) 图像动画化
CN117011156A (zh) 图像处理方法、装置、设备及存储介质
CN114399708A (zh) 一种视频动作迁移深度学习系统和方法
US11900258B2 (en) Learning device, image generating device, learning method, image generating method, and program
CN115362478A (zh) 用于标记图像之间的空间关系的强化学习模型

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination