CN116152876A - 表情迁移方法、装置、设备、存储介质及程序产品 - Google Patents
表情迁移方法、装置、设备、存储介质及程序产品 Download PDFInfo
- Publication number
- CN116152876A CN116152876A CN202111388795.4A CN202111388795A CN116152876A CN 116152876 A CN116152876 A CN 116152876A CN 202111388795 A CN202111388795 A CN 202111388795A CN 116152876 A CN116152876 A CN 116152876A
- Authority
- CN
- China
- Prior art keywords
- source
- diagram
- optical flow
- driving
- key point
- 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
Links
- 230000005012 migration Effects 0.000 title claims abstract description 153
- 238000013508 migration Methods 0.000 title claims abstract description 152
- 238000000034 method Methods 0.000 title claims abstract description 104
- 238000003860 storage Methods 0.000 title claims abstract description 32
- 238000010586 diagram Methods 0.000 claims abstract description 288
- 230000003287 optical effect Effects 0.000 claims abstract description 212
- 238000012545 processing Methods 0.000 claims abstract description 72
- 238000012549 training Methods 0.000 claims description 82
- 238000000605 extraction Methods 0.000 claims description 58
- 238000012512 characterization method Methods 0.000 claims description 25
- 238000006243 chemical reaction Methods 0.000 claims description 23
- 238000013519 translation Methods 0.000 claims description 22
- 230000008569 process Effects 0.000 claims description 21
- 230000008859 change Effects 0.000 claims description 14
- 230000009466 transformation Effects 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 10
- 230000016776 visual perception Effects 0.000 claims description 8
- 230000004438 eyesight Effects 0.000 claims description 7
- 230000009467 reduction Effects 0.000 claims description 6
- 230000001131 transforming effect Effects 0.000 claims description 5
- 230000008485 antagonism Effects 0.000 claims description 4
- 230000008447 perception Effects 0.000 claims description 3
- 238000013473 artificial intelligence Methods 0.000 abstract description 16
- 230000000694 effects Effects 0.000 abstract description 14
- 230000008901 benefit Effects 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 description 20
- 230000001815 facial effect Effects 0.000 description 18
- 230000006870 function Effects 0.000 description 13
- 210000000887 face Anatomy 0.000 description 10
- 238000013528 artificial neural network Methods 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 7
- 230000007547 defect Effects 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 241001465754 Metazoa Species 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000012015 optical character recognition Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/207—Analysis of motion for motion estimation over a hierarchy of resolutions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
- G06T2207/30201—Face
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Computer Graphics (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Geometry (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种表情迁移方法、装置、设备、存储介质及程序产品,涉及人工智能技术领域。所述方法包括:根据源图和驱动图,生成第一3D关键点集合和第二3D关键点集合;根据第一3D关键点集合和第二3D关键点集合,生成3D稠密光流集合;基于3D稠密光流集合对源图的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码;根据3D稠密光流集合、3D光流掩码、源图的3D特征表征和2D遮挡掩码,生成源图对应的驱动结果图。本申请在提升表情迁移效果的同时,还提升了表情迁移的效率。
Description
技术领域
本申请实施例涉及人工智能技术领域,特别涉及一种表情迁移方法、装置、设备、存储介质及程序产品。
背景技术
表情迁移是指将驱动图中脸部对象的姿态和表情,迁移到源图的脸部对象上,生成一张驱动结果图。该驱动结果图是具有源图中脸部对象的身份信息,以及驱动图中脸部对象的姿态和表情信息的图像。
相关技术提供了一种基于三维建模的表情迁移方法,首先构建源图中脸部对象的3D(3Dimension,三维)模型,然后基于驱动图中脸部对象的姿态和表情,对上述3D模型进行姿态和表情的拟合,使得该3D模型具备驱动图中脸部对象的姿态和表情。
这种方式由于需要对源图中的脸部对象进行三维重构,一方面,重构出的3D模型往往不够真实,缺少源图中脸部对象的个性化特征,导致表情迁移效果不够理想;另一方面,由于三维重构需要较长时间,因此导致表情迁移的效率不高。
发明内容
本申请实施例提供了一种表情迁移方法、装置、设备、存储介质及程序产品。所述技术方案如下:
根据本申请实施例的一个方面,提供了一种表情迁移方法,所述方法包括:
根据源图和驱动图,生成第一3D关键点集合和第二3D关键点集合;其中,所述第一3D关键点集合是用于表征所述源图中脸部对象的姿态和表情信息的关键点集合;所述第二3D关键点集合是用于表征所述源图中脸部对象受所述驱动图驱动后的姿态和表情信息的关键点集合;
根据所述第一3D关键点集合和所述第二3D关键点集合,生成3D稠密光流集合;其中,所述3D稠密光流集合用于表征所述第一3D关键点集合和所述第二3D关键点集合中相对应关键点的空间位置变化;
基于所述3D稠密光流集合对所述源图的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码;其中,所述3D光流掩码用于对所述3D稠密光流集合中的各个3D稠密光流进行线性组合,所述2D遮挡掩码用于对所述源图的特征信息进行选择性保留;
根据所述3D稠密光流集合、所述3D光流掩码、所述源图的3D特征表征和所述2D遮挡掩码,生成所述源图对应的驱动结果图;其中,所述驱动结果图是具有所述源图中脸部对象的身份信息,以及所述驱动图中脸部对象的姿态和表情信息的图像。
根据本申请实施例的一个方面,提供了一种表情迁移模型的训练方法,所述方法包括:
获取所述表情迁移模型的训练数据,所述训练数据包括源图样本、驱动图样本和所述源图样本对应的目标驱动结果图;
通过所述表情迁移模型根据所述源图样本和所述驱动图样本,生成第一3D关键点集合和第二3D关键点集合;其中,所述第一3D关键点集合是用于表征所述源图样本中脸部对象的姿态和表情信息的关键点集合;所述第二3D关键点集合是用于表征所述源图样本中脸部对象受所述驱动图样本驱动后的姿态和表情信息的关键点集合;
根据所述第一3D关键点集合和所述第二3D关键点集合,生成3D稠密光流集合;其中,所述3D稠密光流集合用于表征所述第一3D关键点集合和所述第二3D关键点集合中相对应关键点的空间位置变化;
通过所述表情迁移模型基于所述3D稠密光流集合对所述源图样本的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码;其中,所述3D光流掩码用于对所述3D稠密光流集合中的各个3D稠密光流进行线性组合,所述2D遮挡掩码用于对所述源图样本的特征信息进行选择性保留;
通过所述表情迁移模型根据所述3D稠密光流集合、所述3D光流掩码、所述源图样本的3D特征表征和所述2D遮挡掩码,生成所述源图样本对应的输出驱动结果图;
根据所述输出驱动结果图和所述目标驱动结果图计算所述表情迁移模型的训练损失,并基于所述训练损失对所述表情迁移模型的参数进行调整。
根据本申请实施例的一个方面,提供了一种表情迁移装置,所述装置包括:
关键点生成模块,用于根据源图和驱动图,生成第一3D关键点集合和第二3D关键点集合;其中,所述第一3D关键点集合是用于表征所述源图中脸部对象的姿态和表情信息的关键点集合;所述第二3D关键点集合是用于表征所述源图中脸部对象受所述驱动图驱动后的姿态和表情信息的关键点集合;
光流生成模块,用于根据所述第一3D关键点集合和所述第二3D关键点集合,生成3D稠密光流集合;其中,所述3D稠密光流集合用于表征所述第一3D关键点集合和所述第二3D关键点集合中相对应关键点的空间位置变化;
掩码生成模块,用于基于所述3D稠密光流集合对所述源图的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码;其中,所述3D光流掩码用于对所述3D稠密光流集合中的各个3D稠密光流进行线性组合,所述2D遮挡掩码用于对所述源图的特征信息进行选择性保留;
结果图生成模块,用于根据所述3D稠密光流集合、所述3D光流掩码、所述源图的3D特征表征和所述2D遮挡掩码,生成所述源图对应的驱动结果图;其中,所述驱动结果图是具有所述源图中脸部对象的身份信息,以及所述驱动图中脸部对象的姿态和表情信息的图像。
根据本申请实施例的一个方面,提供了一种表情迁移模型的训练装置,所述装置包括:
训练数据获取模块,用于获取所述表情迁移模型的训练数据,所述训练数据包括源图样本、驱动图样本和所述源图样本对应的目标驱动结果图;
关键点生成模块,用于通过所述表情迁移模型根据所述源图样本和所述驱动图样本,生成第一3D关键点集合和第二3D关键点集合;其中,所述第一3D关键点集合是用于表征所述源图样本中脸部对象的姿态和表情信息的关键点集合;所述第二3D关键点集合是用于表征所述源图样本中脸部对象受所述驱动图样本驱动后的姿态和表情信息的关键点集合;
光流生成模块,用于根据所述第一3D关键点集合和所述第二3D关键点集合,生成3D稠密光流集合;其中,所述3D稠密光流集合用于表征所述第一3D关键点集合和所述第二3D关键点集合中相对应关键点的空间位置变化;
掩码生成模块,用于通过所述表情迁移模型基于所述3D稠密光流集合对所述源图样本的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码;其中,所述3D光流掩码用于对所述3D稠密光流集合中的各个3D稠密光流进行线性组合,所述2D遮挡掩码用于对所述源图样本的特征信息进行选择性保留;
结果图生成模块,用于通过所述表情迁移模型根据所述3D稠密光流集合、所述3D光流掩码、所述源图样本的3D特征表征和所述2D遮挡掩码,生成所述源图样本对应的输出驱动结果图;
参数调整模块,用于根据所述输出驱动结果图和所述目标驱动结果图计算所述表情迁移模型的训练损失,并基于所述训练损失对所述表情迁移模型的参数进行调整。
根据本申请实施例的一个方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述表情迁移方法,或者实现上述表情迁移模型的训练方法。
根据本申请实施例的一个方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述表情迁移方法,或者实现上述表情迁移模型的训练方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中,处理器从手术室计算机可读存储介质读取并执行所述计算机指令,以实现上述表情迁移方法,或者实现上述表情迁移模型的训练方法。
本申请实施例提供的技术方案可以带来如下有益效果:
采用隐式3D建模的方式,通过提取源图和驱动图中的3D特征信息,基于该3D特征信息将驱动图中人脸对象的姿态和表情特征,迁移到源图的人脸对象上,并保持源图中人脸对象的身份特征,最终生成表情迁移后的驱动结果图,整个过程不需要重构源图中脸部对象的3D模型,避免了重构3D模型所存在的真实性差和效率低的固有缺陷,提升表情迁移效果的同时,还提升了表情迁移的效率。
附图说明
图1是本申请一个实施例提供的方案实施环境的示意图;
图2是本申请一个实施例提供的表情迁移效果的示意图;
图3是本申请一个实施例提供的表情迁移方法的流程图;
图4是本申请另一个实施例提供的表情迁移方法的流程图;
图5是本申请一个实施例提供的表情迁移模型的训练方法的流程图;
图6是本申请一个实施例提供的表情迁移装置的框图;
图7是本申请一个实施例提供的表情迁移模型的训练装置的框图;
图8是本申请一个实施例提供的计算机设备的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
AI(Artificial Intelligence,人工智能)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
CV(Computer Vision,计算机视觉技术)是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR(Optical Character Recognition,光学字符识别)、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
ML(Machine Learning,机器学习)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例提供的方案涉及人工智能的计算机视觉技术和机器学习技术,提供了一种表情迁移方法,采用隐式3D建模的方式,通过提取源图和驱动图中的3D特征信息,基于该3D特征信息将驱动图中人脸对象的姿态和表情特征,迁移到源图的人脸对象上,并保持源图中人脸对象的身份特征,最终生成表情迁移后的驱动结果图,整个过程不需要重构源图中脸部对象的3D模型,避免了重构3D模型所存在的真实性差和效率低的固有缺陷,提升表情迁移效果的同时,还提升了表情迁移的效率。
请参考图1,其示出了本申请一个实施例提供的方案实施环境的示意图。该方案实施环境可以包括模型训练设备10和模型使用设备20。
模型训练设备10可以是诸如电脑、服务器、智能机器人等电子设备,或者是其他一些具有较强计算能力的电子设备。模型训练设备10用于对表情迁移模型30进行训练。在本申请实施例中,表情迁移模型30是用于表情迁移的神经网络模型,模型训练设备10可以采用机器学习的方式对该表情迁移模型30进行训练,以使得其具备较好的性能。
上述训练完成的表情迁移模型30可部署在模型使用设备20中使用,以提供表情迁移的功能。模型使用设备20可以是诸如手机、电脑、智能电视、多媒体播放设备、可穿戴设备、车载终端、PC(Personal Computer,个人计算机)等终端设备,也可以是服务器,本申请对此不作限定。
如图1所示,表情迁移模型30用于将驱动图D中脸部对象的姿态和表情,迁移到源图S中,生成驱动结果图Y。该驱动结果图Y是具有源图S中脸部对象的身份信息,以及驱动图D中脸部对象的姿态和表情信息的图像。
可选地,驱动图D是驱动视频中的一个图像帧,将源图S对应的多个驱动结果图进行整合,生成源图S对应的驱动结果视频;其中,多个驱动结果图是根据源图S和驱动视频中的多个图像帧生成的。也即,将驱动视频中的各个图像帧,依次作为驱动图D对源图S进行表情驱动,生成多个驱动结果图,这些驱动结果图按序排列即可作为驱动结果视频。简而言之,就是收集驱动视频的每一帧中脸部对象的姿态和表情信息,根据算法移植到源图S上,生成一新的动态视频(也即上文所述的“驱动结果视频”)。
示例性地,如图2所示,源图S是一张静态图像,驱动视频中包括图像帧21a、图像帧21b和图像帧21c等多个图像帧。将图像帧21a作为驱动图,基于该图像帧21a和源图S可以生成图像22a。从图2中可以明显看出,图像22a具有源图S的身份信息(也即图像22a中人脸的长相和源图S中人脸的长相一致),并且图像22a具有图像帧21a的姿态和表情信息(也即图像22a中人脸的姿态和表情,与图像帧21a中人脸的姿态和表情一致)。类似地,将图像帧21b作为驱动图,基于该图像帧21b和源图S可以生成图像22b。将图像帧21c作为驱动图,基于该图像帧21c和源图S可以生成图像22c。将上述图像22a、图像22b和图像22c等作为图像帧进行按需排列,即可生成驱动结果视频。
在一些可能的应用场景中,用户可以通过客户端上传源图S,并选择驱动视频,客户端或服务器根据源图S和驱动视频,生成驱动结果视频,并通过客户端播放该驱动结果视频。上述驱动视频可以是从预先设定的素材库中选择的一个视频,也可以是用户自行上传的一个视频,本申请对此不作限定。
下面,将通过几个方法实施例对本申请技术方案进行介绍说明。
请参考图3,其示出了本申请一个实施例提供的表情迁移方法的流程图。该方法可以由图1所示方案实施环境中的模型使用设备20执行。该方法可以包括如下几个步骤(310~340)中的至少一个步骤:
步骤310,根据源图和驱动图,生成第一3D关键点集合和第二3D关键点集合;其中,第一3D关键点集合是用于表征源图中脸部对象的姿态和表情信息的关键点集合;第二3D关键点集合是用于表征源图中脸部对象受驱动图驱动后的姿态和表情信息的关键点集合。
在本申请实施例中,源图可以是一张静态图像,且源图中包含脸部对象,例如该脸部对象可以是人脸。当然,在一些其他可能的实施例中,该脸部对象也可以是诸如卡通人物的脸部、动漫人物的脸部、动物的脸部或者其他类型的脸部,本申请对此不作限定。
在本申请实施例中,驱动图也可以是一张静态图像,且驱动图中也包含脸部对象,例如该脸部对象也可以是人脸。当然,在一些其他可能的实施例中,该脸部对象也可以是诸如卡通人物的脸部、动漫人物的脸部、动物的脸部或者其他类型的脸部,本申请对此不作限定。
源图和驱动图中脸部对象的类型可以是同一类型,例如源图中脸部对象和驱动图中脸部对象均为人脸。另外,在源图中脸部对象和驱动图中脸部对象均为人脸的情况下,源图中脸部对象和驱动图中脸部对象可以是同一个人的人脸,也可以是两个不同人的人脸。例如,源图中脸部对象可以是用户“张三”的人脸,驱动图中脸部对象可以是某一明星“李某”的人脸。
为了保证表情迁移效果,源图和驱动图中脸部对象的类型最好保持一致,例如均为人脸,这样源图和驱动图中脸部对象的关键点数量和分布会更为接近,从而有助于提升表情迁移效果。当然,在一些其他可能的实施例中,源图和驱动图中脸部对象的类型也可以不同,例如源图中脸部对象的类型是一人脸,驱动图中脸部对象的类型是一卡通人物的脸部或动物的脸部,又例如源图中脸部对象的类型是一卡通人物的脸部,驱动图中脸部对象的类型是一人脸,本申请技术方案对于这种场景同样适用。
在本申请实施例中,基于源图和驱动图,可以得到第一3D关键点集合和第二3D关键点集合。其中,第一3D关键点集合是用于表征源图中脸部对象的姿态和表情信息的关键点集合,该第一3D关键点集合中可以包括K个第一关键点,K为正整数。第二3D关键点集合是用于表征源图中脸部对象受驱动图驱动后的姿态和表情信息的关键点集合,该第二3D关键点集合中可以包括K个第二关键点,K为正整数。上述第一3D关键点集合和第二3D关键点集合中包含的关键点数量相同,例如均为K,示例性地,K为30、40、50、60或70等,本申请对此不作限定。
在一些实施例中,上述步骤310可以包括如下几个子步骤:
1.从源图中提取K个规范化的3D关键点,K为正整数;
所谓规范化的3D关键点,是指与图像中脸部对象的姿态和表情无关,仅与图像中脸部对象的身份相关的关键点,且该关键点是三维的关键点,也即用空间三维坐标来表示每一个关键点的位置。对于两张图像,如果这两张图像中脸部对象是同一个脸部对象,例如是同一个人的人脸,那么即便这两张图像中脸部对象的姿态和表情不同,从这两张图像中分别提取的K个规范化的3D关键点的位置也是基本相同或相近的。对于两张图像,如果这两张图像中脸部对象是两个不同的脸部对象,例如是两个不同人的人脸,那么即便这两张图像中脸部对象的姿态和表情相同,从这两张图像中分别提取的K个规范化的3D关键点的位置也是不同或存在较大差异的。
可选地,通过3D关键点提取网络从源图中提取K个规范化的3D关键点,该3D关键点提取网络可以是一个神经网络,如深度卷积神经网络。在本申请实施例中,对3D关键点提取网络的具体网络结构不作限定。
2.获取源图和驱动图分别对应的图像信息,图像信息包括脸部对象的姿态角、平移量和K个3D关键点的偏置量;
源图对应的图像信息用于表征该源图中脸部对象的姿态和表情信息,源图对应的图像信息可以包括该源图中脸部对象的姿态角、平移量和K个3D关键点的偏置量。驱动图对应的图像信息用于表征该驱动图中脸部对象的姿态和表情信息,驱动图对应的图像信息可以包括该驱动图中脸部对象的姿态角、平移量和K个3D关键点的偏置量。
上述姿态角也可以称作欧拉角,包括俯仰角(pitch)、偏航角(yaw)和翻滚角(roll),其描述了脸部对象的姿态。平移量描述了脸部对象的空间位置,是指图像中脸部对象的位置相较于某一设定位置的平移量,该平移量也是一个三维的量,其包括空间3个维度的平移量。每一个3D关键点的偏置量描述了该3D关键点的空间位置,是指图像中脸部对象上该3D关键点的位置相较于其规范化位置的偏置量,该偏置量也是一个三维的量,其包括空间3个维度的偏置量。
通过源图对应的图像信息,能够将源图中脸部对象的姿态和表情描述出来;类似地,通过驱动图对应的图像信息,能够将驱动图中脸部对象的姿态和表情描述出来。
2-1.分别提取源图的特征信息和驱动图的特征信息;
2-2.基于源图的特征信息,预测得到源图对应的图像信息;
2-3.基于驱动图的特征信息,预测得到驱动图对应的图像信息。
可选地,通过图像信息提取网络从源图中提取源图对应的图像信息,以及从驱动图中提取驱动图对应的图像信息。
可选地,图像信息提取网络可以包括特征提取网络和3个分支预测网络,记为第一分支预测网络、第二分支预测网络和第三分支预测网络。其中,特征提取网络用于提取图像的特征信息,第一分支预测网络、第二分支预测网络和第三分支预测网络用于分别提取脸部对象的姿态角、平移量和K个3D关键点的偏置量。
例如,将源图输入至特征提取网络,通过特征提取网络输出源图的特征信息,然后将源图的特征信息分别输入第一分支预测网络、第二分支预测网络和第三分支预测网络,通过第一分支预测网络输出源图中脸部对象的姿态角,通过第二分支预测网络输出源图中脸部对象的平移量,通过第三分支预测网络输出源图中脸部对象的K个3D关键点的偏置量。
类似地,将驱动图输入至特征提取网络,通过特征提取网络输出驱动图的特征信息,然后将驱动图的特征信息分别输入第一分支预测网络、第二分支预测网络和第三分支预测网络,通过第一分支预测网络输出驱动图中脸部对象的姿态角,通过第二分支预测网络输出驱动图中脸部对象的平移量,通过第三分支预测网络输出驱动图中脸部对象的K个3D关键点的偏置量。
上述图像信息提取网络可以是一个神经网络,如深度神经网络。在本申请实施例中,对图像信息提取网络的具体网络结构不作限定。
3.采用源图对应的图像信息对K个规范化的3D关键点进行3D变换处理,生成第一3D关键点集合;
在得到源图中脸部对象的姿态角、平移量和K个3D关键点的偏置量之后,可以采用这些数据对K个规范化的3D关键点进行3D变换处理,该3D变换处理包括旋转、平移和形变,生成用于表征源图中脸部对象的姿态和表情信息的第一3D关键点集合。
可选地,第一3D关键点集合中的第k个关键点xs,k如下:
xs,k=T(xc,k,Rs,ts,δs,k)=Rsxc,k+ts+δs,k
其中,xc,k表示源图中第k个规范化的3D关键点,Rs表示源图中脸部对象的姿态角,ts表示源图中脸部对象的平移量,δs,k表示源图中脸部对象的第k个3D关键点的偏置量,T表示3D变换处理,k为正整数,例如k是取值在[1,K]这一范围内的正整数。
4.采用驱动图对应的图像信息对K个规范化的3D关键点进行3D变换处理,生成第二3D关键点集合。
在得到驱动图中脸部对象的姿态角、平移量和K个3D关键点的偏置量之后,可以采用这些数据对K个规范化的3D关键点进行3D变换处理,该3D变换处理包括旋转、平移和形变,生成用于表征源图中脸部对象受驱动图驱动后的姿态和表情信息的第二3D关键点集合。
可选地,第二3D关键点集合中的第k个关键点xd,k如下:
xd,k=T(xc,k,Rd,td,δd,k)=Rdxc,k+td+δd,k
其中,xc,k表示源图中第k个规范化的3D关键点,Rd表示驱动图中脸部对象的姿态角,td表示驱动图中脸部对象的平移量,δd,k表示驱动图中脸部对象的第k个3D关键点的偏置量,T表示3D变换处理,k为正整数,例如k是取值在[1,K]这一范围内的正整数。
步骤320,根据第一3D关键点集合和第二3D关键点集合,生成3D稠密光流集合;其中,3D稠密光流集合用于表征第一3D关键点集合和第二3D关键点集合中相对应关键点的空间位置变化。
正如上文介绍,第一3D关键点集合中包括K个第一关键点,第二3D关键点集合中包括K个第二关键点,第一3D关键点集合和第二3D关键点集合中用来标记同一脸部位置的2个关键点记为一组相对应关键点。例如,第一3D关键点集合中用来标记鼻尖位置的1个关键点和第二3D关键点集合中用来标记鼻尖位置的1个关键点构成一组相对应关键点。又例如,第一3D关键点集合中用来标记右眼角位置的1个关键点和第二3D关键点集合中用来标记右眼角位置的1个关键点构成另一组相对应关键点。这样,第一3D关键点集合和第二3D关键点集合中的关键点两两组合,可以构成K组相对应关键点。
在一些实施例中,上述步骤320包括如下几个子步骤:
1.对于第一3D关键点集合和第二3D关键点集合中的每一组相对应关键点,根据该相对应关键点中两个3D关键点的位置信息,确定该相对应关键点对应的3D稠密光流;
2.根据各组相对应关键点分别对应的3D稠密光流,得到3D稠密光流集合。
对于上述K组相对应关键点中的每一组相对应关键点,根据该相对应关键点中两个3D关键点的位置信息,确定该相对应关键点对应的3D稠密光流;然后,综合K组相对应关键点分别对应的3D稠密光流,得到3D稠密光流集合。
可选地,根据K组相对应关键点(xs,k,xd,k),基于一阶运动的近似方法,可以得到K个3D稠密光流。其中,第k个3D稠密光流wk表示如下:
其中,pd是驱动图特征空间的3维坐标,ps是源图特征空间的3维坐标,Rs和Rd参见上文解释。
步骤330,基于3D稠密光流集合对源图的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码;其中,3D光流掩码用于对3D稠密光流集合中的各个3D稠密光流进行线性组合,2D遮挡掩码用于对源图的特征信息进行选择性保留。
源图的3D特征表征用于表征该源图中脸部对象的三维特征信息。可选地,通过3D特征提取网络提取源图的3D特征表征。例如,将源图输入至3D特征提取网络,通过该3D特征提取网络输出源图的3D特征表征。在一些实施例中,3D特征提取网络包括2D卷积网络和3D卷积网络,首先将源图输入至2D卷积网络,通过该2D卷积网络将源图映射到2D特征空间,得到源图的2D特征表征,然后将该源图的2D特征表征通过变维操作(如Reshape操作)变维到3D特征空间,得到源图的初始3D特征表征,再将源图的初始3D特征表征输入至3D卷积网络,通过该3D卷积网络输出源图的3D特征表征。3D特征表征相较于2D特征表征,会多出一维深度信息。
在得到源图的3D特征表征之后,可以基于步骤320得到的3D稠密光流集合对源图的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码。3D光流掩码可以看作是一个三维矩阵,矩阵中每一个元素的取值在[0,1]之间。2D遮挡掩码可以看作是一个二维矩阵,矩阵中每一个元素的取值也在[0,1]之间。
在一些实施例中,上述步骤330可以包括如下几个子步骤:
1.基于3D稠密光流集合中的各个3D稠密光流,对源图的3D特征表征分别进行变换处理,得到多个变换后的3D特征表征;
2.对多个变换后的3D特征表征进行拼接,得到拼接后的3D特征表征;
3.对拼接后的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码。
3D稠密光流集合中包括K个3D稠密光流,对于该K个3D稠密光流中的每一个3D稠密光流,采用该3D稠密光流对源图的3D特征表征进行变换处理(如warp处理),得到一个变换后的3D特征表征。K个3D稠密光流分别对源图的3D特征表征进行变换处理,就可以得到K个变换后的3D特征表征。之后,将该K个变换后的3D特征表征进行拼接(concat),得到拼接后的3D特征表征。之后,将该拼接后的3D特征表征作为运动场估计网络的输入,通过该运动场估计网络对其进行处理,输出3D光流掩码和2D遮挡掩码。运动场估计网络也可以是一个神经网络,本申请对其网络结构同样不作限定。
步骤340,根据3D稠密光流集合、3D光流掩码、源图的3D特征表征和2D遮挡掩码,生成源图对应的驱动结果图;其中,驱动结果图是具有源图中脸部对象的身份信息,以及驱动图中脸部对象的姿态和表情信息的图像。
在一些实施例中,上述步骤340可以包括如下几个子步骤:
1.基于3D光流掩码对3D稠密光流集合中的各个3D稠密光流进行线性组合,得到组合后的3D稠密光流;
利用步骤330得到的3D光流掩码对K个3D稠密光流进行线性组合,得到组合后的3D稠密光流。
可选地,组合后的3D稠密光流w表示如下:
其中,wk(pd)表示第k个3D稠密光流,mk(pd)表示从3D光流掩码中得到的该第k个3D稠密光流对应的掩码。
2.基于组合后的3D稠密光流对源图的3D特征表征进行变换处理,得到变换后的3D特征表征;
采用组合后的3D稠密光流对源图的3D特征表征进行变换处理(如warp处理),得到变换后的3D特征表征。
3.对变换后的3D特征表征进行降维处理,得到变换后的2D特征表征;
通过变维操作(如Reshape操作)对变换后的3D特征表征进行降维处理,从3D特征空间降维到2D特征空间,得到变换后的2D特征表征。
4.根据2D遮挡掩码和变换后的2D特征表征,生成源图对应的驱动结果图。
可选地,采用2D遮挡掩码对变换后的2D特征表征进行处理,得到处理后的2D特征表征。例如计算2D遮挡掩码和变换后的2D特征表征的哈达玛积(Hadamard product),得到处理后的2D特征表征。然后,对处理后的2D特征表征进行解码,生成源图对应的驱动结果图。例如,将处理后的2D特征表征输入至解码网络,通过该解码网络输出源图对应的驱动结果图。解码网络也可以是一个神经网络,本申请对其网络结构同样不作限定。
在本申请实施例中,通过基于组合后的3D稠密光流对源图的3D特征表征在3D空间中进行变换处理,相比于仅在2D空间进行处理,多考虑了一维深度信息,使得姿态和表情的迁移变换更加准确,从而提升最终生成的驱动结果图的表情迁移效果。
在一些实施例中,驱动图是驱动视频中的一个图像帧,采用驱动视频中的多个图像帧分别作为驱动图,和源图生成相应的驱动结果图,将该源图对应的多个驱动结果图进行整合,即可生成源图对应的驱动结果视频。驱动结果视频中脸部对象的身份信息与源图中脸部对象的身份信息保持一致,且驱动结果视频中脸部对象的动作和表情信息,与驱动视频中脸部对象的动作和表情信息保持一致。该效果可以如图2所示,通过驱动视频对源图进行驱动,生成一个人物动作和表情随驱动视频变化的驱动结果视频,提升了表情迁移在产品应用中的趣味性。
本申请实施例提供的技术方案,采用隐式3D建模的方式,通过提取源图和驱动图中的3D特征信息,基于该3D特征信息将驱动图中人脸对象的姿态和表情特征,迁移到源图的人脸对象上,并保持源图中人脸对象的身份特征,最终生成表情迁移后的驱动结果图,整个过程不需要重构源图中脸部对象的3D模型,避免了重构3D模型所存在的真实性差和效率低的固有缺陷,提升表情迁移效果的同时,还提升了表情迁移的效率。
另外,通过表情迁移模型,实现对源图和驱动图的隐式3D建模,即在神经网络空间中隐式地学习图像的3D特征信息,相比于一些基于2D特征信息的表情迁移方案,本申请多考虑了深度信息,能够提升模型对于脸部对象特征信息表征的准确性和精确度,提升了驱动结果图的生成质量。
另外,通过从源图中提取多个规范化的3D关键点,获取源图和驱动图分别对应的图像信息,该图像信息包括脸部对象的姿态角、平移量和多个3D关键点的偏置量,然后采用源图和驱动图分别对应的图像信息,对上述多个规范化的3D关键点分别进行3D变换处理,得到用于表征源图中脸部对象的姿态和表情信息的关键点集合,以及用于表征源图中脸部对象受驱动图驱动后的姿态和表情信息的关键点集合,实现了对图像中脸部对象的身份信息、空间姿态、空间位置和关键点位置进行解耦表征,这样解耦之后,能够使得模型对每一个控制量都比较明确,对于具有复杂姿态或表情的图像,能够较好地拆分出各个不同的控制量,实现灵活而又精确的控制(例如驱动图中脸部对象仅做了一个眨眼的表情,那么就只要改变眼部的一些关键点的偏置量,而其他关键点的偏置量不需要改变,且整个脸部的姿态角和平移量也不需要改变),这样就使得在图像中脸部对象大幅度偏转或扭曲的情况下,也能够生成高质量的驱动结果图,提高了在复杂和大幅度运动场景下的表情迁移效果。
在一些实施例中,通过表情迁移模型实现上述表情迁移方法。示例性地,如图4所示,表情迁移模型可以包括:3D关键点提取网络41、图像信息提取网络42、3D特征提取网络43、运动场估计网络44和解码网络45。其中,3D关键点提取网络41用于从源图S中提取K个规范化的3D关键点。图像信息提取网络42用于获取源图S和驱动图D分别对应的图像信息。其中,源图S对应的图像信息用于对K个规范化的3D关键点进行3D变换处理,生成第一3D关键点集合。驱动图D对应的图像信息用于对K个规范化的3D关键点进行3D变换处理,生成第二3D关键点集合。3D特征提取网络43用于提取源图S的3D特征表征。运动场估计网络44用于生成3D光流掩码和2D遮挡掩码。解码网络45用于生成源图S对应的驱动结果图Y。
参见图4,将源图S输入至3D关键点提取网络41,通过该3D关键点提取网络41输出源图S的K个规范化的3D关键点。将源图S输入至图像信息提取网络42,通过该图像信息提取网络42提取源图S对应的图像信息,包括源图S中脸部对象的姿态角、平移量和K个3D关键点的偏置量。将驱动图D输入至图像信息提取网络42,通过该图像信息提取网络42提取驱动图D对应的图像信息,包括驱动图D中脸部对象的姿态角、平移量和K个3D关键点的偏置量。之后,采用源图S对应的图像信息对上述K个规范化的3D关键点进行3D变换处理,生成第一3D关键点集合,该第一3D关键点集合用于表征源图S中脸部对象的姿态和表情信息;采用驱动图D对应的图像信息对上述K个规范化的3D关键点进行3D变换处理,生成第二3D关键点集合,该第二3D关键点集合用于表征源图S中脸部对象受驱动图D驱动后的姿态和表情信息。之后,根据第一3D关键点集合和第二3D关键点集合,生成3D稠密光流集合,该3D稠密光流集合中包括K组相对应关键点分别对应的3D稠密光流。另外,源图S经过3D特征提取网络43输出该源图S的3D特征表征,基于3D稠密光流集合中的K个3D稠密光流,对源图S的3D特征表征分别进行变换处理,得到K个变换后的3D特征表征,对该K个变换后的3D特征表征进行拼接,得到拼接后的3D特征表征,对拼接后的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码。其中,3D光流掩码用于对3D稠密光流集合中的各个3D稠密光流进行线性组合,2D遮挡掩码用于对源图S的特征信息进行选择性保留。之后,基于3D光流掩码对3D稠密光流集合中的K个3D稠密光流进行线性组合,得到组合后的3D稠密光流,基于组合后的3D稠密光流对源图S的3D特征表征进行变换处理,得到变换后的3D特征表征,对变换后的3D特征表征进行降维处理,得到变换后的2D特征表征,计算2D遮挡掩码和变换后的2D特征表征的哈达玛积,得到处理后的2D特征表征,最后将处理后的2D特征表征输入至解码网络45,通过该解码网络45输出源图S对应的驱动结果图Y。
上文介绍了表情迁移模型的使用过程,下面,将通过实施例对表情迁移模型的训练过程进行介绍说明。需要说明的是,有关该模型使用过程中涉及的内容和训练过程中涉及的内容是相互对应的,两者互通,如在一侧未作详细说明的地方,可以参考另一侧的描述说明。
请参考图5,其示出了本申请一个实施例提供的表情迁移模型的训练方法的流程图。该方法可以由图1所示方案实施环境中的模型训练设备10执行。该方法可以包括如下几个步骤(510~560)中的至少一个步骤:
步骤510,获取表情迁移模型的训练数据,训练数据包括源图样本、驱动图样本和源图样本对应的目标驱动结果图。
源图样本和驱动图样本在模型训练过程中,分别作为源图和驱动图使用。源图样本对应的目标驱动结果图作为标签,用来评价表情迁移模型生成的源图样本对应的输出驱动结果图的质量。
在一些实施例中,步骤510可以包括如下几个子步骤:
1.获取用于生成训练数据的视频样本;
2.从视频样本中提取第一图像帧和第二图像帧,第二图像帧是第一图像帧的下一个图像帧;
3.将第一图像帧确定为源图样本;
4.将第二图像帧确定为驱动图样本和源图样本对应的目标驱动结果图。
视频样本可以是一个包含某一特定的脸部对象的视频,例如包含某一特定人物的人脸的视频。从视频样本中,获取多组图像帧对,每一组图像帧对可以包含向量的两个图像帧。也即每一组图像帧对包括第一图像帧和第二图像帧,第二图像帧是第一图像帧的下一个图像帧。本申请将第一图像帧作为源图样本使用,将第二图像帧作为驱动图样本使用,同时将该第二图像帧作为源图样本对应的目标驱动结果图使用,这样就可以简单高效地构建出模型训练所需的训练数据。
当然,可以从多个不同的视频样本中,选择图像帧构建训练数据,从而提升训练数据的丰富性,例如使得训练数据能够包含不同人物的人脸,这有助于提升最终训练得到的表情迁移模型的鲁棒性,使之能够处理不同人物的源图和驱动图。
步骤520,通过表情迁移模型根据源图样本和驱动图样本,生成第一3D关键点集合和第二3D关键点集合;其中,第一3D关键点集合是用于表征源图样本中脸部对象的姿态和表情信息的关键点集合;第二3D关键点集合是用于表征源图样本中脸部对象受驱动图样本驱动后的姿态和表情信息的关键点集合。
在一些实施例中,上述步骤520可以包括如下几个子步骤:
1.从源图样本中提取K个规范化的3D关键点,K为正整数;
可选地,通过3D关键点提取网络从源图样本中提取K个规范化的3D关键点。
2.获取源图样本和驱动图样本分别对应的图像信息,图像信息包括脸部对象的姿态角、平移量和K个3D关键点的偏置量;
可选地,分别提取源图样本的特征信息和驱动图样本的特征信息;基于源图样本的特征信息,预测得到源图样本对应的图像信息;基于驱动图样本的特征信息,预测得到驱动图样本对应的图像信息。
可选地,通过图像信息提取网络从源图样本中提取源图样本对应的图像信息,以及从驱动图样本中提取驱动图样本对应的图像信息。
3.采用源图样本对应的图像信息对K个规范化的3D关键点进行3D变换处理,生成第一3D关键点集合;
4.采用驱动图样本对应的图像信息对K个规范化的3D关键点进行3D变换处理,生成第二3D关键点集合。
步骤530,根据第一3D关键点集合和第二3D关键点集合,生成3D稠密光流集合;其中,3D稠密光流集合用于表征第一3D关键点集合和第二3D关键点集合中相对应关键点的空间位置变化。
在一些实施例中,上述步骤530可以包括如下几个子步骤:
1.对于第一3D关键点集合和第二3D关键点集合中的每一组相对应关键点,根据该相对应关键点中两个3D关键点的位置信息,确定该相对应关键点对应的3D稠密光流;
2.根据各组相对应关键点分别对应的3D稠密光流,得到3D稠密光流集合。
步骤540,通过表情迁移模型基于3D稠密光流集合对源图样本的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码;其中,3D光流掩码用于对3D稠密光流集合中的各个3D稠密光流进行线性组合,2D遮挡掩码用于对源图样本的特征信息进行选择性保留。
可选地,通过3D特征提取网络提取源图样本的3D特征表征。
在一些实施例中,上述步骤540可以包括如下几个子步骤:
1.基于3D稠密光流集合中的各个3D稠密光流,对源图样本的3D特征表征分别进行变换处理,得到多个变换后的3D特征表征;
2.对多个变换后的3D特征表征进行拼接,得到拼接后的3D特征表征;
3.对拼接后的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码。
可选地,将拼接后的3D特征表征作为运动场估计网络的输入,通过该运动场估计网络对其进行处理,输出3D光流掩码和2D遮挡掩码。
步骤550,通过表情迁移模型根据3D稠密光流集合、3D光流掩码、源图样本的3D特征表征和2D遮挡掩码,生成源图样本对应的输出驱动结果图。
在一些实施例中,上述步骤550可以包括如下几个子步骤:
1.基于3D光流掩码对3D稠密光流集合中的各个3D稠密光流进行线性组合,得到组合后的3D稠密光流;
2.基于组合后的3D稠密光流对源图样本的3D特征表征进行变换处理,得到变换后的3D特征表征;
3.对变换后的3D特征表征进行降维处理,得到变换后的2D特征表征;
4.根据2D遮挡掩码和变换后的2D特征表征,生成源图样本对应的输出驱动结果图。
可选地,采用2D遮挡掩码对变换后的2D特征表征进行处理,得到处理后的2D特征表征。然后,将处理后的2D特征表征输入至解码网络,通过该解码网络输出源图样本对应的输出驱动结果图。
步骤560,根据输出驱动结果图和目标驱动结果图计算表情迁移模型的训练损失,并基于训练损失对表情迁移模型的参数进行调整。
表情迁移模型的训练损失用于衡量表情迁移模型的迁移效果,例如在构建该表情迁移模型的损失函数时,可以考虑输出驱动结果图和目标驱动结果的接近度。在模型训练过程中,以该表情迁移模型的损失函数的值(也即训练损失)收敛为目标,不断调整表情迁移模型中各个网络的参数,使得表情迁移模型具有较优的迁移效果。
在一些实施例中,通过如下步骤计算表情迁移模型的训练损失:
1.根据输出驱动结果图的图像特征和目标驱动结果图的图像特征,计算视觉感知损失,视觉感知损失用于衡量输出驱动结果图的图像特征和目标驱动结果图的图像特征之间的差异度;
可选地,驱动结果图的图像特征和目标驱动结果图的图像特征,可以通过图像信息提取网络进行提取得到,例如该图像特征可以是图像信息提取网络中的特征提取网络提取的特征信息。
2.根据输出驱动结果图和目标驱动结果图,计算生成对抗损失,生成对抗损失用于衡量输出驱动结果图和目标驱动结果图之间的差异度;
可选地,生成对抗损失的损失函数可以采用合页损失函数(Hinge loss),来提升输出结果的真实度。
3.根据第二3D关键点集合中各个第二关键点的位置信息,计算几何同变性损失,几何同变性损失用于衡量第二关键点在薄板样条插值变换的过程中的几何同变性;
可选地,几何同变性损失LE=||xd-T-1(xT(d))||1,其中xd表示第二关键点的位置信息,T表示薄板样条插值变换,xT(d)是对xd进行薄板样条插值变换后的结果,|| ||1表示L1距离。
当然,在一些其他可能的实施例中,也可以根据第一3D关键点集合和/或第二3D关键点集合中各个关键点的位置信息,计算几何同变性损失,该几何同变性损失用于衡量第一关键点和/或第二关键点在薄板样条插值变换的过程中的几何同变性。
4.根据第二3D关键点集合中各个第二关键点的位置信息,计算3D关键点先验损失,3D关键点先验损失用于衡量各个第二关键点的分散度和深度;
可选地,3D关键点先验损失 其中,xd,i和xd,j表示第二3D关键点集合中的任意两个第二关键点,Dt为第一阈值,|| ||2表示L2距离,Z(xd)表示第二关键点的深度值,zt为第二阈值,上述第一阈值和第二阈值的取值可以预先设定。
当然,在一些其他可能的实施例中,也可以根据第一3D关键点集合和/或第二3D关键点集合中各个关键点的位置信息,计算3D关键点先验损失,3D关键点先验损失用于衡量各个第一关键点的分散度和深度和/或各个第二关键点的分散度和深度。
5.根据驱动图中脸部对象的姿态角,计算脸部姿态损失,脸部姿态损失用于衡量脸部姿态估计的准确度;
当然,在一些其他可能的实施例中,也可以根据源图和/或驱动图中脸部对象的姿态角,计算脸部姿态损失。
6.根据驱动图中脸部对象的3D关键点的偏置量,计算偏置先验损失,偏置先验损失用于衡量驱动图中脸部对象的3D关键点的位置信息与基准位置信息之间的偏差量;
可选地,偏置先验损失LΔ=||δd,k||1,δd,k表示驱动图中脸部对象的第k个3D关键点的偏置量,|| ||1表示L1距离。
当然,在一些其他可能的实施例中,也可以根据源图和/或驱动图中脸部对象的3D关键点的偏置量,计算偏置先验损失。
7.根据视觉感知损失、对抗损失、几何同变性损失、3D关键点先验损失、脸部姿态损失和偏置先验损失,计算表情迁移模型的训练损失。
可选地,表情迁移模型的训练损失L的计算公式如下:
其中,LP(d,y)为视觉感知损失,LG(d,y)为生成对抗损失,LE({xd,k})为几何同变性损失,LL({xd,k})为3D关键点先验损失,为脸部姿态损失,LΔ({δd,k})为偏置先验损失,λP、λG、λE、λL、λH和λΔ分别为上述各个损失对应的权重值,该权重值可以预先设定。
综上所述,本申请实施例提供的技术方案,通过训练表情迁移模型,利用该表情迁移模型采用隐式3D建模的方式,通过提取源图和驱动图中的3D特征信息,基于该3D特征信息将驱动图中人脸对象的姿态和表情特征,迁移到源图的人脸对象上,并保持源图中人脸对象的身份特征,最终生成表情迁移后的驱动结果图,整个过程不需要重构源图中脸部对象的3D模型,避免了重构3D模型所存在的真实性差和效率低的固有缺陷,提升表情迁移效果的同时,还提升了表情迁移的效率。
而且,本申请在计算模型的训练损失时,考虑了视觉感知损失、对抗损失、几何同变性损失、3D关键点先验损失、脸部姿态损失和偏置先验损失等多方面的损失,充分保证了模型中包含的各个网络的训练效果。
另外,对于模型训练方法实施例中未详细说明的细节,可参见上述表情迁移方法实施例中的介绍说明,一些相同或相似的内容将不再赘述。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
请参考图6,其示出了本申请一个实施例提供的表情迁移装置的框图。该装置具有实现上述表情迁移方法的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置可以是模型使用设备,也可以设置在模型使用设备中。该装置600可以包括:关键点生成模块610、光流生成模块620、掩码生成模块630和结果图生成模块640。
关键点生成模块610,用于根据源图和驱动图,生成第一3D关键点集合和第二3D关键点集合;其中,所述第一3D关键点集合是用于表征所述源图中脸部对象的姿态和表情信息的关键点集合;所述第二3D关键点集合是用于表征所述源图中脸部对象受所述驱动图驱动后的姿态和表情信息的关键点集合。
光流生成模块620,用于根据所述第一3D关键点集合和所述第二3D关键点集合,生成3D稠密光流集合;其中,所述3D稠密光流集合用于表征所述第一3D关键点集合和所述第二3D关键点集合中相对应关键点的空间位置变化。
掩码生成模块630,用于基于所述3D稠密光流集合对所述源图的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码;其中,所述3D光流掩码用于对所述3D稠密光流集合中的各个3D稠密光流进行线性组合,所述2D遮挡掩码用于对所述源图的特征信息进行选择性保留。
结果图生成模块640,用于根据所述3D稠密光流集合、所述3D光流掩码、所述源图的3D特征表征和所述2D遮挡掩码,生成所述源图对应的驱动结果图;其中,所述驱动结果图是具有所述源图中脸部对象的身份信息,以及所述驱动图中脸部对象的姿态和表情信息的图像。
在一些实施例中,所述结果图生成模块640,用于:
基于所述3D光流掩码对所述3D稠密光流集合中的各个3D稠密光流进行线性组合,得到组合后的3D稠密光流;
基于所述组合后的3D稠密光流对所述源图的3D特征表征进行变换处理,得到变换后的3D特征表征;
对所述变换后的3D特征表征进行降维处理,得到变换后的2D特征表征;
根据所述2D遮挡掩码和所述变换后的2D特征表征,生成所述源图对应的驱动结果图。
在一些实施例中,所述结果图生成模块640在根据所述2D遮挡掩码和所述变换后的2D特征表征,生成所述源图对应的驱动结果图时,具体用于:
采用所述2D遮挡掩码对所述变换后的2D特征表征进行处理,得到处理后的2D特征表征;
对所述处理后的2D特征表征进行解码,生成所述源图对应的驱动结果图。
在一些实施例中,所述掩码生成模块630,用于:
基于所述3D稠密光流集合中的各个3D稠密光流,对所述源图的3D特征表征分别进行变换处理,得到多个变换后的3D特征表征;
对所述多个变换后的3D特征表征进行拼接,得到拼接后的3D特征表征;
对所述拼接后的3D特征表征进行处理,生成所述3D光流掩码和所述2D遮挡掩码。
在一些实施例中,所述关键点生成模块610,用于:
从所述源图中提取K个规范化的3D关键点,所述K为正整数;
获取所述源图和所述驱动图分别对应的图像信息,所述图像信息包括脸部对象的姿态角、平移量和K个3D关键点的偏置量;
采用所述源图对应的图像信息对所述K个规范化的3D关键点进行3D变换处理,生成所述第一3D关键点集合;
采用所述驱动图对应的图像信息对所述K个规范化的3D关键点进行3D变换处理,生成所述第二3D关键点集合。
在一些实施例中,所述关键点生成模块610在获取所述源图和所述驱动图分别对应的图像信息时,具体用于:
分别提取所述源图的特征信息和所述驱动图的特征信息;
基于所述源图的特征信息,预测得到所述源图对应的图像信息;
基于所述驱动图的特征信息,预测得到所述驱动图对应的图像信息。
在一些实施例中,所述光流生成模块620,用于:
对于所述第一3D关键点集合和所述第二3D关键点集合中的每一组相对应关键点,根据所述相对应关键点中两个3D关键点的位置信息,确定所述相对应关键点对应的3D稠密光流;
根据各组所述相对应关键点分别对应的3D稠密光流,得到所述3D稠密光流集合。
在一些实施例中,通过表情迁移模型实现所述方法,所述表情迁移模型包括:3D关键点提取网络、图像信息提取网络、3D特征提取网络、运动场估计网络和解码网络;其中,
所述3D关键点提取网络用于从所述源图中提取K个规范化的3D关键点;
所述图像信息提取网络用于获取所述源图和所述驱动图分别对应的图像信息,其中,所述源图对应的图像信息用于对所述K个规范化的3D关键点进行3D变换处理,生成所述第一3D关键点集合,所述驱动图对应的图像信息用于对所述K个规范化的3D关键点进行3D变换处理,生成所述第二3D关键点集合;
所述3D特征提取网络用于提取所述源图的3D特征表征;
所述运动场估计网络用于生成所述3D光流掩码和所述2D遮挡掩码;
所述解码网络用于生成所述源图对应的驱动结果图。
在一些实施例中,所述驱动图是驱动视频中的一个图像帧,所述装置600还包括:视频生成模块(图6中未示出)。
视频生成模块,用于将所述源图对应的多个驱动结果图进行整合,生成所述源图对应的驱动结果视频;其中,所述多个驱动结果图是根据所述源图和所述驱动视频中的多个图像帧生成的。
请参考图7,其示出了本申请一个实施例提供的表情迁移模型的训练装置的框图。该装置具有实现上述表情迁移模型的训练方法的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置可以是模型训练设备,也可以设置在模型训练设备中。该装置700可以包括:训练数据获取模块710、关键点生成模块720、光流生成模块730、掩码生成模块740、结果图生成模块750和参数调整模块760。
训练数据获取模块710,用于获取所述表情迁移模型的训练数据,所述训练数据包括源图样本、驱动图样本和所述源图样本对应的目标驱动结果图。
关键点生成模块720,用于通过所述表情迁移模型根据所述源图样本和所述驱动图样本,生成第一3D关键点集合和第二3D关键点集合;其中,所述第一3D关键点集合是用于表征所述源图样本中脸部对象的姿态和表情信息的关键点集合;所述第二3D关键点集合是用于表征所述源图样本中脸部对象受所述驱动图样本驱动后的姿态和表情信息的关键点集合。
光流生成模块730,用于根据所述第一3D关键点集合和所述第二3D关键点集合,生成3D稠密光流集合;其中,所述3D稠密光流集合用于表征所述第一3D关键点集合和所述第二3D关键点集合中相对应关键点的空间位置变化。
掩码生成模块740,用于通过所述表情迁移模型基于所述3D稠密光流集合对所述源图样本的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码;其中,所述3D光流掩码用于对所述3D稠密光流集合中的各个3D稠密光流进行线性组合,所述2D遮挡掩码用于对所述源图样本的特征信息进行选择性保留。
结果图生成模块750,用于通过所述表情迁移模型根据所述3D稠密光流集合、所述3D光流掩码、所述源图样本的3D特征表征和所述2D遮挡掩码,生成所述源图样本对应的输出驱动结果图。
参数调整模块760,用于根据所述输出驱动结果图和所述目标驱动结果图计算所述表情迁移模型的训练损失,并基于所述训练损失对所述表情迁移模型的参数进行调整。
在一些实施例中,所述表情迁移模型包括:3D关键点提取网络、图像信息提取网络、3D特征提取网络、运动场估计网络和解码网络;其中,
所述3D关键点提取网络用于从所述源图样本中提取K个规范化的3D关键点;
所述图像信息提取网络用于获取所述源图样本和所述驱动图样本分别对应的图像信息,其中,所述源图样本对应的图像信息用于对所述K个规范化的3D关键点进行3D变换处理,生成所述第一3D关键点集合,所述驱动图样本对应的图像信息用于对所述K个规范化的3D关键点进行3D变换处理,生成所述第二3D关键点集合;
所述3D特征提取网络用于提取所述源图样本的3D特征表征;
所述运动场估计网络用于生成所述3D光流掩码和所述2D遮挡掩码;
所述解码网络用于生成所述源图样本对应的输出驱动结果图。
在一些实施例中,所述参数调整模块760,用于:
根据所述输出驱动结果图的图像特征和所述目标驱动结果图的图像特征,计算视觉感知损失,所述视觉感知损失用于衡量所述输出驱动结果图的图像特征和所述目标驱动结果图的图像特征之间的差异度;
根据所述输出驱动结果图和所述目标驱动结果图,计算生成对抗损失,所述生成对抗损失用于衡量所述输出驱动结果图和所述目标驱动结果图之间的差异度;
根据所述第二3D关键点集合中各个第二关键点的位置信息,计算几何同变性损失,所述几何同变性损失用于衡量所述第二关键点在薄板样条插值变换的过程中的几何同变性;
根据所述第二3D关键点集合中各个第二关键点的位置信息,计算3D关键点先验损失,所述3D关键点先验损失用于衡量各个所述第二关键点的分散度和深度;
根据所述驱动图中脸部对象的姿态角,计算脸部姿态损失,所述脸部姿态损失用于衡量脸部姿态估计的准确度;
根据所述驱动图中脸部对象的3D关键点的偏置量,计算偏置先验损失,所述偏置先验损失用于衡量所述驱动图中脸部对象的3D关键点的位置信息与基准位置信息之间的偏差量;
根据所述视觉感知损失、所述对抗损失、所述几何同变性损失、所述3D关键点先验损失、所述脸部姿态损失和所述偏置先验损失,计算所述表情迁移模型的训练损失。
在一些实施例中,所述训练数据获取模块710,用于:
获取用于生成所述训练数据的视频样本;
从所述视频样本中提取第一图像帧和第二图像帧,所述第二图像帧是所述第一图像帧的下一个图像帧;
将所述第一图像帧确定为所述源图样本;
将所述第二图像帧确定为所述驱动图样本和所述源图样本对应的目标驱动结果图。
需要说明的是,上述实施例提供的装置,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
请参考图8,其示出了本申请一个实施例提供的计算机设备的结构示意图。该计算机设备可以是任何具备数据计算、处理和存储功能的电子设备,该计算机设备可以实现成为图1所示方案实施环境中的模型训练设备10和/或模型使用设备20。在该计算机设备实现成为图1所示方案实施环境中的模型训练设备10时,该计算机设备可用于实施上述实施例中提供的表情迁移模型的训练方法。在该计算机设备实现成为图1所示方案实施环境中的模型使用设备20时,该计算机设备可用于实施上述实施例中提供的表情迁移方法。具体来讲:
该计算机设备800包括中央处理单元(如CPU(Central Processing Unit,中央处理器)、GPU(Graphics Processing Unit,图形处理器)和FPGA(Field Programmable GateArray,现场可编程逻辑门阵列)等)801、包括RAM(Random-Access Memory,随机存储器)802和ROM(Read-Only Memory,只读存储器)803的系统存储器804,以及连接系统存储器804和中央处理单元801的系统总线805。该计算机设备800还包括帮助服务器内的各个器件之间传输信息的基本输入/输出系统(Input Output System,I/O系统)806,和用于存储操作系统813、应用程序814和其他程序模块815的大容量存储设备807。
在一些实施例中,该基本输入/输出系统806包括有用于显示信息的显示器808和用于用户输入信息的诸如鼠标、键盘之类的输入设备809。其中,该显示器808和输入设备809都通过连接到系统总线805的输入输出控制器810连接到中央处理单元801。该基本输入/输出系统806还可以包括输入输出控制器810以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器810还提供输出到显示屏、打印机或其他类型的输出设备。
该大容量存储设备807通过连接到系统总线805的大容量存储控制器(未示出)连接到中央处理单元801。该大容量存储设备807及其相关联的计算机可读介质为计算机设备800提供非易失性存储。也就是说,该大容量存储设备807可以包括诸如硬盘或者CD-ROM(Compact Disc Read-Only Memory,只读光盘)驱动器之类的计算机可读介质(未示出)。
不失一般性,该计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM(Erasable Programmable Read-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically Erasable Programmable Read-Only Memory,电可擦写可编程只读存储器)、闪存或其他固态存储技术,CD-ROM、DVD(Digital Video Disc,高密度数字视频光盘)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知该计算机存储介质不局限于上述几种。上述的系统存储器804和大容量存储设备807可以统称为存储器。
根据本申请实施例,该计算机设备800还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机设备800可以通过连接在该系统总线805上的网络接口单元811连接到网络812,或者说,也可以使用网络接口单元811来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、至少一段程序、代码集或指令集存储于存储器中,且经配置以由一个或者一个以上处理器执行,以实现上述表情迁移方法,或表情迁移模型的训练方法。
在示例性实施例中,还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集在被计算机设备的处理器执行时实现上述表情迁移方法,或表情迁移模型的训练方法。
可选地,该计算机可读存储介质可以包括:ROM(Read-Only Memory,只读存储器)、RAM(Random-Access Memory,随机存取存储器)、SSD(Solid State Drives,固态硬盘)或光盘等。其中,随机存取记忆体可以包括ReRAM(Resistance Random Access Memory,电阻式随机存取记忆体)和DRAM(Dynamic Random Access Memory,动态随机存取存储器)。
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中。计算机设备的处理器从所述计算机可读存储介质中读取所述计算机指令,所述处理器执行所述计算机指令,使得所述计算机设备执行上述表情迁移方法,或表情迁移模型的训练方法。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。另外,本文中描述的步骤编号,仅示例性示出了步骤间的一种可能的执行先后顺序,在一些其它实施例中,上述步骤也可以不按照编号顺序来执行,如两个不同编号的步骤同时执行,或者两个不同编号的步骤按照与图示相反的顺序执行,本申请实施例对此不作限定。
以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (18)
1.一种表情迁移方法,其特征在于,所述方法包括:
根据源图和驱动图,生成第一3D关键点集合和第二3D关键点集合;其中,所述第一3D关键点集合是用于表征所述源图中脸部对象的姿态和表情信息的关键点集合;所述第二3D关键点集合是用于表征所述源图中脸部对象受所述驱动图驱动后的姿态和表情信息的关键点集合;
根据所述第一3D关键点集合和所述第二3D关键点集合,生成3D稠密光流集合;其中,所述3D稠密光流集合用于表征所述第一3D关键点集合和所述第二3D关键点集合中相对应关键点的空间位置变化;
基于所述3D稠密光流集合对所述源图的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码;其中,所述3D光流掩码用于对所述3D稠密光流集合中的各个3D稠密光流进行线性组合,所述2D遮挡掩码用于对所述源图的特征信息进行选择性保留;
根据所述3D稠密光流集合、所述3D光流掩码、所述源图的3D特征表征和所述2D遮挡掩码,生成所述源图对应的驱动结果图;其中,所述驱动结果图是具有所述源图中脸部对象的身份信息,以及所述驱动图中脸部对象的姿态和表情信息的图像。
2.根据权利要求1所述的方法,其特征在于,所述根据所述3D稠密光流集合、所述3D光流掩码、所述源图的3D特征表征和所述2D遮挡掩码,生成所述源图对应的驱动结果图,包括:
基于所述3D光流掩码对所述3D稠密光流集合中的各个3D稠密光流进行线性组合,得到组合后的3D稠密光流;
基于所述组合后的3D稠密光流对所述源图的3D特征表征进行变换处理,得到变换后的3D特征表征;
对所述变换后的3D特征表征进行降维处理,得到变换后的2D特征表征;
根据所述2D遮挡掩码和所述变换后的2D特征表征,生成所述源图对应的驱动结果图。
3.根据权利要求2所述的方法,其特征在于,所述根据所述2D遮挡掩码和所述变换后的2D特征表征,生成所述源图对应的驱动结果图,包括:
采用所述2D遮挡掩码对所述变换后的2D特征表征进行处理,得到处理后的2D特征表征;
对所述处理后的2D特征表征进行解码,生成所述源图对应的驱动结果图。
4.根据权利要求1所述的方法,其特征在于,所述基于所述3D稠密光流集合对所述源图的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码,包括:
基于所述3D稠密光流集合中的各个3D稠密光流,对所述源图的3D特征表征分别进行变换处理,得到多个变换后的3D特征表征;
对所述多个变换后的3D特征表征进行拼接,得到拼接后的3D特征表征;
对所述拼接后的3D特征表征进行处理,生成所述3D光流掩码和所述2D遮挡掩码。
5.根据权利要求1所述的方法,其特征在于,所述根据源图和驱动图,生成第一3D关键点集合和第二3D关键点集合,包括:
从所述源图中提取K个规范化的3D关键点,所述K为正整数;
获取所述源图和所述驱动图分别对应的图像信息,所述图像信息包括脸部对象的姿态角、平移量和K个3D关键点的偏置量;
采用所述源图对应的图像信息对所述K个规范化的3D关键点进行3D变换处理,生成所述第一3D关键点集合;
采用所述驱动图对应的图像信息对所述K个规范化的3D关键点进行3D变换处理,生成所述第二3D关键点集合。
6.根据权利要求5所述的方法,其特征在于,所述获取所述源图和所述驱动图分别对应的图像信息,包括:
分别提取所述源图的特征信息和所述驱动图的特征信息;
基于所述源图的特征信息,预测得到所述源图对应的图像信息;
基于所述驱动图的特征信息,预测得到所述驱动图对应的图像信息。
7.根据权利要求1所述的方法,其特征在于,所述根据所述第一3D关键点集合和所述第二3D关键点集合,生成3D稠密光流集合,包括:
对于所述第一3D关键点集合和所述第二3D关键点集合中的每一组相对应关键点,根据所述相对应关键点中两个3D关键点的位置信息,确定所述相对应关键点对应的3D稠密光流;
根据各组所述相对应关键点分别对应的3D稠密光流,得到所述3D稠密光流集合。
8.根据权利要求1至7任一项所述的方法,其特征在于,通过表情迁移模型实现所述方法,所述表情迁移模型包括:3D关键点提取网络、图像信息提取网络、3D特征提取网络、运动场估计网络和解码网络;其中,
所述3D关键点提取网络用于从所述源图中提取K个规范化的3D关键点;
所述图像信息提取网络用于获取所述源图和所述驱动图分别对应的图像信息,其中,所述源图对应的图像信息用于对所述K个规范化的3D关键点进行3D变换处理,生成所述第一3D关键点集合,所述驱动图对应的图像信息用于对所述K个规范化的3D关键点进行3D变换处理,生成所述第二3D关键点集合;
所述3D特征提取网络用于提取所述源图的3D特征表征;
所述运动场估计网络用于生成所述3D光流掩码和所述2D遮挡掩码;
所述解码网络用于生成所述源图对应的驱动结果图。
9.根据权利要求1至7任一项所述的方法,其特征在于,所述驱动图是驱动视频中的一个图像帧,所述方法还包括:
将所述源图对应的多个驱动结果图进行整合,生成所述源图对应的驱动结果视频;
其中,所述多个驱动结果图是根据所述源图和所述驱动视频中的多个图像帧生成的。
10.一种表情迁移模型的训练方法,其特征在于,所述方法包括:
获取所述表情迁移模型的训练数据,所述训练数据包括源图样本、驱动图样本和所述源图样本对应的目标驱动结果图;
通过所述表情迁移模型根据所述源图样本和所述驱动图样本,生成第一3D关键点集合和第二3D关键点集合;其中,所述第一3D关键点集合是用于表征所述源图样本中脸部对象的姿态和表情信息的关键点集合;所述第二3D关键点集合是用于表征所述源图样本中脸部对象受所述驱动图样本驱动后的姿态和表情信息的关键点集合;
根据所述第一3D关键点集合和所述第二3D关键点集合,生成3D稠密光流集合;其中,所述3D稠密光流集合用于表征所述第一3D关键点集合和所述第二3D关键点集合中相对应关键点的空间位置变化;
通过所述表情迁移模型基于所述3D稠密光流集合对所述源图样本的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码;其中,所述3D光流掩码用于对所述3D稠密光流集合中的各个3D稠密光流进行线性组合,所述2D遮挡掩码用于对所述源图样本的特征信息进行选择性保留;
通过所述表情迁移模型根据所述3D稠密光流集合、所述3D光流掩码、所述源图样本的3D特征表征和所述2D遮挡掩码,生成所述源图样本对应的输出驱动结果图;
根据所述输出驱动结果图和所述目标驱动结果图计算所述表情迁移模型的训练损失,并基于所述训练损失对所述表情迁移模型的参数进行调整。
11.根据权利要求10所述的方法,其特征在于,所述表情迁移模型包括:3D关键点提取网络、图像信息提取网络、3D特征提取网络、运动场估计网络和解码网络;其中,
所述3D关键点提取网络用于从所述源图样本中提取K个规范化的3D关键点;
所述图像信息提取网络用于获取所述源图样本和所述驱动图样本分别对应的图像信息,其中,所述源图样本对应的图像信息用于对所述K个规范化的3D关键点进行3D变换处理,生成所述第一3D关键点集合,所述驱动图样本对应的图像信息用于对所述K个规范化的3D关键点进行3D变换处理,生成所述第二3D关键点集合;
所述3D特征提取网络用于提取所述源图样本的3D特征表征;
所述运动场估计网络用于生成所述3D光流掩码和所述2D遮挡掩码;
所述解码网络用于生成所述源图样本对应的输出驱动结果图。
12.根据权利要求10所述的方法,其特征在于,所述根据所述输出驱动结果图和所述目标驱动结果图计算所述表情迁移模型的训练损失,包括:
根据所述输出驱动结果图的图像特征和所述目标驱动结果图的图像特征,计算视觉感知损失,所述视觉感知损失用于衡量所述输出驱动结果图的图像特征和所述目标驱动结果图的图像特征之间的差异度;
根据所述输出驱动结果图和所述目标驱动结果图,计算生成对抗损失,所述生成对抗损失用于衡量所述输出驱动结果图和所述目标驱动结果图之间的差异度;
根据所述第二3D关键点集合中各个第二关键点的位置信息,计算几何同变性损失,所述几何同变性损失用于衡量所述第二关键点在薄板样条插值变换的过程中的几何同变性;
根据所述第二3D关键点集合中各个第二关键点的位置信息,计算3D关键点先验损失,所述3D关键点先验损失用于衡量各个所述第二关键点的分散度和深度;
根据所述驱动图中脸部对象的姿态角,计算脸部姿态损失,所述脸部姿态损失用于衡量脸部姿态估计的准确度;
根据所述驱动图中脸部对象的3D关键点的偏置量,计算偏置先验损失,所述偏置先验损失用于衡量所述驱动图中脸部对象的3D关键点的位置信息与基准位置信息之间的偏差量;
根据所述视觉感知损失、所述对抗损失、所述几何同变性损失、所述3D关键点先验损失、所述脸部姿态损失和所述偏置先验损失,计算所述表情迁移模型的训练损失。
13.根据权利要求10至12任一项所述的方法,其特征在于,所述获取所述表情迁移模型的训练数据,包括:
获取用于生成所述训练数据的视频样本;
从所述视频样本中提取第一图像帧和第二图像帧,所述第二图像帧是所述第一图像帧的下一个图像帧;
将所述第一图像帧确定为所述源图样本;
将所述第二图像帧确定为所述驱动图样本和所述源图样本对应的目标驱动结果图。
14.一种表情迁移装置,其特征在于,所述装置包括:
关键点生成模块,用于根据源图和驱动图,生成第一3D关键点集合和第二3D关键点集合;其中,所述第一3D关键点集合是用于表征所述源图中脸部对象的姿态和表情信息的关键点集合;所述第二3D关键点集合是用于表征所述源图中脸部对象受所述驱动图驱动后的姿态和表情信息的关键点集合;
光流生成模块,用于根据所述第一3D关键点集合和所述第二3D关键点集合,生成3D稠密光流集合;其中,所述3D稠密光流集合用于表征所述第一3D关键点集合和所述第二3D关键点集合中相对应关键点的空间位置变化;
掩码生成模块,用于基于所述3D稠密光流集合对所述源图的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码;其中,所述3D光流掩码用于对所述3D稠密光流集合中的各个3D稠密光流进行线性组合,所述2D遮挡掩码用于对所述源图的特征信息进行选择性保留;
结果图生成模块,用于根据所述3D稠密光流集合、所述3D光流掩码、所述源图的3D特征表征和所述2D遮挡掩码,生成所述源图对应的驱动结果图;其中,所述驱动结果图是具有所述源图中脸部对象的身份信息,以及所述驱动图中脸部对象的姿态和表情信息的图像。
15.一种表情迁移模型的训练装置,其特征在于,所述装置包括:
训练数据获取模块,用于获取所述表情迁移模型的训练数据,所述训练数据包括源图样本、驱动图样本和所述源图样本对应的目标驱动结果图;
关键点生成模块,用于通过所述表情迁移模型根据所述源图样本和所述驱动图样本,生成第一3D关键点集合和第二3D关键点集合;其中,所述第一3D关键点集合是用于表征所述源图样本中脸部对象的姿态和表情信息的关键点集合;所述第二3D关键点集合是用于表征所述源图样本中脸部对象受所述驱动图样本驱动后的姿态和表情信息的关键点集合;
光流生成模块,用于根据所述第一3D关键点集合和所述第二3D关键点集合,生成3D稠密光流集合;其中,所述3D稠密光流集合用于表征所述第一3D关键点集合和所述第二3D关键点集合中相对应关键点的空间位置变化;
掩码生成模块,用于通过所述表情迁移模型基于所述3D稠密光流集合对所述源图样本的3D特征表征进行处理,生成3D光流掩码和2D遮挡掩码;其中,所述3D光流掩码用于对所述3D稠密光流集合中的各个3D稠密光流进行线性组合,所述2D遮挡掩码用于对所述源图样本的特征信息进行选择性保留;
结果图生成模块,用于通过所述表情迁移模型根据所述3D稠密光流集合、所述3D光流掩码、所述源图样本的3D特征表征和所述2D遮挡掩码,生成所述源图样本对应的输出驱动结果图;
参数调整模块,用于根据所述输出驱动结果图和所述目标驱动结果图计算所述表情迁移模型的训练损失,并基于所述训练损失对所述表情迁移模型的参数进行调整。
16.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至9任一项所述的表情迁移方法,或者实现如权利要求10至13任一项所述的表情迁移模型的训练方法。
17.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至9任一项所述的表情迁移方法,或者实现如权利要求10至13任一项所述的表情迁移模型的训练方法。
18.一种计算机程序产品或计算机程序,其特征在于,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中,处理器从手术室计算机可读存储介质读取并执行所述计算机指令,以实现如权利要求1至9任一项所述的表情迁移方法,或者实现如权利要求10至13任一项所述的表情迁移模型的训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111388795.4A CN116152876A (zh) | 2021-11-22 | 2021-11-22 | 表情迁移方法、装置、设备、存储介质及程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111388795.4A CN116152876A (zh) | 2021-11-22 | 2021-11-22 | 表情迁移方法、装置、设备、存储介质及程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116152876A true CN116152876A (zh) | 2023-05-23 |
Family
ID=86352989
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111388795.4A Pending CN116152876A (zh) | 2021-11-22 | 2021-11-22 | 表情迁移方法、装置、设备、存储介质及程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116152876A (zh) |
-
2021
- 2021-11-22 CN CN202111388795.4A patent/CN116152876A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110796111B (zh) | 图像处理方法、装置、设备及存储介质 | |
US11748934B2 (en) | Three-dimensional expression base generation method and apparatus, speech interaction method and apparatus, and medium | |
CN111401216B (zh) | 图像处理、模型训练方法、装置、计算机设备和存储介质 | |
US20230072627A1 (en) | Gaze correction method and apparatus for face image, device, computer-readable storage medium, and computer program product face image | |
CN112287820A (zh) | 人脸检测神经网络及训练方法、人脸检测方法、存储介质 | |
CN111553267A (zh) | 图像处理方法、图像处理模型训练方法及设备 | |
CN112116684A (zh) | 图像处理方法、装置、设备及计算机可读存储介质 | |
CN111652974A (zh) | 三维人脸模型的构建方法、装置、设备及存储介质 | |
CN113570684A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
WO2022188697A1 (zh) | 提取生物特征的方法、装置、设备、介质及程序产品 | |
CN112085835B (zh) | 三维卡通人脸生成方法、装置、电子设备及存储介质 | |
CN113177616A (zh) | 图像分类方法、装置、设备及存储介质 | |
CN110457523B (zh) | 封面图片的选取方法、模型的训练方法、装置及介质 | |
CN115222917A (zh) | 三维重建模型的训练方法、装置、设备及存储介质 | |
CN117218300B (zh) | 三维模型的构建方法、三维构建模型的训练方法及装置 | |
Bourbia et al. | No-reference 3D point cloud quality assessment using multi-view projection and deep convolutional neural network | |
CN114298997A (zh) | 一种伪造图片检测方法、装置及存储介质 | |
CN116342776A (zh) | 三维场景解耦方法、电子设备及存储介质 | |
WO2024031882A1 (zh) | 视频处理方法、装置及计算机可读存储介质 | |
CN111598904B (zh) | 图像分割方法、装置、设备及存储介质 | |
CN115482557A (zh) | 人体图像生成方法、系统、设备及存储介质 | |
CN116152876A (zh) | 表情迁移方法、装置、设备、存储介质及程序产品 | |
CN117011449A (zh) | 三维面部模型的重构方法和装置、存储介质及电子设备 | |
CN114282741A (zh) | 任务决策方法、装置、设备及存储介质 | |
CN113592990A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40087200 Country of ref document: HK |