CN111862278B - 一种动画获得方法、装置、电子设备及存储介质 - Google Patents
一种动画获得方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111862278B CN111862278B CN202010713872.8A CN202010713872A CN111862278B CN 111862278 B CN111862278 B CN 111862278B CN 202010713872 A CN202010713872 A CN 202010713872A CN 111862278 B CN111862278 B CN 111862278B
- Authority
- CN
- China
- Prior art keywords
- target organism
- dimensional
- dimensional model
- model
- sequence
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000003860 storage Methods 0.000 title claims abstract description 13
- 230000004927 fusion Effects 0.000 claims abstract description 75
- 230000009467 reduction Effects 0.000 claims abstract description 32
- 239000011159 matrix material Substances 0.000 claims description 70
- 230000006870 function Effects 0.000 claims description 34
- 230000009466 transformation Effects 0.000 claims description 17
- 238000009499 grossing Methods 0.000 claims description 11
- 238000000513 principal component analysis Methods 0.000 claims description 11
- 238000007621 cluster analysis Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 description 25
- 238000012545 processing Methods 0.000 description 17
- 238000000605 extraction Methods 0.000 description 16
- 238000004422 calculation algorithm Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 238000000354 decomposition reaction Methods 0.000 description 9
- 230000033001 locomotion Effects 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 230000002829 reductive effect Effects 0.000 description 7
- 238000013461 design Methods 0.000 description 6
- 230000008921 facial expression Effects 0.000 description 6
- 230000003068 static effect Effects 0.000 description 6
- 238000003064 k means clustering Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 241001465754 Metazoa Species 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000005286 illumination Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000009877 rendering Methods 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000036961 partial effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000012512 characterization method Methods 0.000 description 2
- 210000003414 extremity Anatomy 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007935 neutral effect Effects 0.000 description 2
- 238000010183 spectrum analysis Methods 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 241000282472 Canis lupus familiaris Species 0.000 description 1
- 241000282326 Felis catus Species 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011960 computer-aided design Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000002996 emotional effect Effects 0.000 description 1
- 210000001097 facial muscle Anatomy 0.000 description 1
- 210000004247 hand Anatomy 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2135—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- 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/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
- G06T2207/10021—Stereoscopic video; Stereoscopic image sequence
-
- 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/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- 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/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- 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/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
-
- 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)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请提供一种动画获得方法、装置、电子设备及存储介质,用于改善获得目标生物的动画不仅非常耗时而且效率低下的问题。该方法包括:获得目标生物的多个图片和多个视频,多个图片均是使用图像采集设备对目标生物从不同角度采集的,多个视频均是对目标生物从不同角度采集的;使用多个图片对目标生物进行三维重建,获得三维模型,并使用多个视频对目标生物进行三维重建,获得模型序列;对三维模型和模型序列进行配准拟合,获得配准拟合后的拓扑序列;将拓扑序列进行数据降维,获得目标生物对应的融合形状;根据融合形状生成目标生物的动画。
Description
技术领域
本申请涉及图像处理的技术领域,具体而言,涉及一种动画获得方法、装置、电子设备及存储介质。
背景技术
图像处理,是指对图像进行分析、加工和处理,使其满足视觉、心理或其他要求的技术;图像处理是信号处理在图像领域上的一个应用;当前大多数的图像均是以数字形式存储,因而图像处理很多情况下指数字图像处理。
在目前的影视领域中,制作生物写实角色的动画一般都是摄像机对目标生物进行扫描,在扫描处理后获得目标生物的融合形状(Blend Shape)后,需要动画工程师对融合形状进行精修,使得融合形状更加接近于目标生物,然后需要绑定工程师根据精修的融合形状进行绑定,制作出融合形状的控制器,再由动画工程师根据融合形状的控制器进行手动创建关键帧动画,最后对关键帧动画进行渲染,获得目标生物的动画。由此可见,传统的方式需要大量工程师的努力才能获得生物写实角色的动画,因此,使用上述的方式获得目标生物的动画不仅非常耗时而且效率低下。
发明内容
本申请实施例的目的在于提供一种动画获得方法、装置、电子设备及存储介质,用于改善获得目标生物的动画不仅非常耗时而且效率低下的问题。
本申请实施例提供了一种动画获得方法,包括:获得目标生物的多个图片和多个视频,多个图片均是使用图像采集设备对目标生物从不同角度采集的,多个视频均是对目标生物从不同角度采集的;使用多个图片对目标生物进行三维重建,获得三维模型,并使用多个视频对目标生物进行三维重建,获得模型序列;对三维模型和模型序列进行配准拟合,获得配准拟合后的拓扑序列;将拓扑序列进行数据降维,获得目标生物对应的融合形状;根据融合形状生成目标生物的动画。在上述的实现过程中,通过使用多个图片对目标生物进行三维重建,获得三维模型,并使用多个视频对目标生物进行三维重建,获得模型序列;然后对三维模型和模型序列进行配准拟合和数据降维,获得融合形状,最后根据融合形状生成目标生物的动画;也就是说,使用三维重建、配准拟合和数据降维的方式替代了工程师的部分精修、绑定和渲染的工作,有效地提高了生成目标生物的动画的效率,同时也减少了动画的处理时间。
可选地,在本申请实施例中,获得目标生物的多个图片和多个视频,包括:使用相机矩阵采集多个图片和多个视频,相机矩阵表征不同角度的多个图片采集设备,多个图片均是使用图像采集设备对目标生物从不同角度在同一时刻采集的,多个视频均是对目标生物从不同角度在同一时间范围采集的。在上述的实现过程中,通过使用相机矩阵从不同角度在同一时刻采集多个图片,以及从不同角度在同一时间范围采集多个视频;尽量减少了光照条件和噪声干扰等等因素的影响,有效地提高了图像和视频的采集精度,从而提高了后续处理获得的动画的效果。
可选地,在本申请实施例中,使用多个图片对目标生物进行三维重建,获得三维模型,包括:对多个图片进行特征提取,获得目标生物的特征信息,特征信息包括目标生物的多个特征点;根据目标生物的多个特征点对多个图片进行立体匹配,获得匹配结果;根据图像采集设备的内部参数和外部参数对匹配结果进行标定,获得目标生物的三维点坐标;对目标生物的三维点坐标进行三角剖分,获得三维模型。
可选地,在本申请实施例中,使用多个视频对目标生物进行三维重建,获得模型序列,包括:对多个视频中的相同时刻的图像帧进行三维重建,获得多个立体模型;对多个立体模型进行重新拓扑,获得模型序列。
可选地,在本申请实施例中,对三维模型和模型序列进行配准拟合,包括:提取三维模型的多个关键控制点,关键控制点表征控制三维模型时的关键特征点;根据多个关键控制点将三维模型与模型序列进行迭代配准拟合。在上述的实现过程中,通过提取三维模型的多个关键控制点,关键控制点表征控制三维模型时的关键特征点;根据多个关键控制点将三维模型与模型序列进行迭代配准拟合;也就是说,通过关键控制点将表征图片中的高精度静态信息和视频中的动态信息进行迭代配准拟合,有效地提高了获得动画的精度。
可选地,在本申请实施例中,将拓扑序列进行数据降维,包括:使用聚类分析或者主成分分析将拓扑序列进行数据降维。
可选地,在本申请实施例中,根据融合形状生成目标生物的动画,包括:提取融合形状的系数;根据融合形状的系数和融合形状生成目标生物的动画。
本申请实施例还提供了一种动画获得装置,包括:图片视频获得模块,用于获得目标生物的多个图片和多个视频,多个图片均是使用图像采集设备对目标生物从不同角度采集的,多个视频均是对目标生物从不同角度采集的;目标三维重建模块,用于使用多个图片对目标生物进行三维重建,获得三维模型,并使用多个视频对目标生物进行三维重建,获得模型序列;拓扑序列获得模块,用于对三维模型和模型序列进行配准拟合,获得配准拟合后的拓扑序列;融合形状获得模块,用于将拓扑序列进行数据降维,获得目标生物对应的融合形状;融合动画生成模块,用于根据融合形状生成目标生物的动画。
可选地,在本申请实施例中,图片视频获得模块,包括:相机矩阵采集模块,用于使用相机矩阵采集多个图片和多个视频,相机矩阵表征不同角度的多个图片采集设备,多个图片均是使用图像采集设备对目标生物从不同角度在同一时刻采集的,多个视频均是对目标生物从不同角度在同一时间范围采集的。
可选地,在本申请实施例中,目标三维重建模块,包括:特征信息获得模块,用于对多个图片进行特征提取,获得目标生物的特征信息,特征信息包括目标生物的多个特征点;匹配结果获得模块,用于根据目标生物的多个特征点对多个图片进行立体匹配,获得匹配结果;三维坐标获得模块,用于根据图像采集设备的内部参数和外部参数对匹配结果进行标定,获得目标生物的三维点坐标;三维模型获得模块,用于对目标生物的三维点坐标进行三角剖分,获得三维模型。
可选地,在本申请实施例中,目标三维重建模块,包括:立体模型获得模块,用于对多个视频中的相同时刻的图像帧进行三维重建,获得多个立体模型;模型序列获得模块,用于对多个立体模型进行重新拓扑,获得模型序列。
可选地,在本申请实施例中,拓扑序列获得模块,包括:关键特征提取模块,用于提取三维模型的多个关键控制点,关键控制点表征控制三维模型时的关键特征点;迭代配准拟合模块,用于根据多个关键控制点将三维模型与模型序列进行迭代配准拟合。
可选地,在本申请实施例中,融合形状获得模块,包括:序列数据降维模块,用于使用聚类分析或者主成分分析将拓扑序列进行数据降维。
可选地,在本申请实施例中,融合动画生成模块,包括:融合系数提取模块,用于提取融合形状的系数;系数形状生成模块,用于根据融合形状的系数和融合形状生成目标生物的动画。
本申请实施例还提供了一种电子设备,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时执行如上面描述的方法。
本申请实施例还提供了一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上面描述的方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出的本申请实施例提供的动画获得方法的流程示意图;
图2示出的本申请实施例提供的相机矩阵拍摄获得的多个图片的示意图;
图3示出的本申请实施例提供的电子设备与终端设备进行交互的流程示意图;
图4示出的本申请实施例提供的动画获得装置的结构示意图;
图5示出的本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述。
在介绍本申请实施例提供的动画获得方法之前,先介绍本申请实施例所涉及的一些概念:
计算机动画(Computer Graphics,CG),是通过计算机软件所绘制的一切图形的总称,随着以计算机为主要工具进行视觉设计和生产的一系列相关产业的形成,国际上习惯将利用计算机技术进行视觉设计和生产的领域通称为CG;这里的CG既包括技术也包括艺术,几乎囊括了当今电脑时代中所有的视觉艺术创作活动,如平面印刷品的设计、网页设计、三维动画、影视特效、多媒体技术、以计算机辅助设计为主的建筑设计及工业造型设计等。
三维模型,是指物体的三维多边形表示,通常用电脑或者其它影片设备进行显示;显示的物体可以是现实世界的实体,也可以是虚构的东西,既可以小到原子,也可以大到很大的尺寸,当然,在物理自然界存在的东西都可以用三维模型表示。
立体模型,是指物体的三维立体的多边形表示,通常用电脑或者其它影片设备进行显示;显示的物体可以是现实世界的实体,也可以是虚构的东西,既可以小到原子,也可以大到很大的尺寸,当然,在物理自然界存在的东西都可以用立体模型表示。
网状拓扑(mesh),又称多边形网格(Polygon mesh),是指三维计算机图形学中表示多面体形状的顶点与多边形的集合,因此,这里的多边形网格也被称为非结构网格。这些网格通常由三角形、四边形或者其它的简单凸多边形组成,这样可以简化渲染过程。
视频帧率(Frame rate),是用于测量显示帧数的量度;所谓的测量单位为每秒显示帧数(Frames per Second,FPS)或“赫兹”(Hz),这里的视频帧率可以用于影视中的视频制作等场景。
狄洛尼(Delaunay)三角网是一系列相连的且不重叠的三角形的集合,而且这些三角形的外接圆不包含这个面域的其他任何点。Delaunay三角网的优点是结构良好,数据结构简单,数据冗余度小,存储效率高,Delaunay三角网与不规则的地面特征和谐一致,可以表示线性特征和叠加任意形状的区域边界,可适应各种分布密度的数据等。
聚类(Clustering),是指按照一个或多个维度将多个字符序列分成由类似的字符序列组成的多个类的过程。也就是说,由聚类所生成的簇类是一组数据对象的集合,这些对象与同一个簇类中的对象彼此相似,与其他簇类中的对象相异,即人们常说的“物以类聚,人以群分”。
主成分分析(Principal Component Analysis,PCA),又被称为主元分析法或主元分析,是在多元统计分析中的一种统计分析和简化数据集的方法;PCA利用正交变换来对一系列可能相关的变量的观测值进行线性变换,从而投影为一系列线性不相关变量的值,这些不相关变量称为主成分(Principal Components);具体地,主成分可以看做一个线性方程,其包含一系列线性系数来指示投影方向;PCA对原始数据的正则化或预处理敏感。
奇异值分解(Singular Value Decomposition,SVD),是指线性代数中一种重要的矩阵分解,奇异值分解在某些方面与对称矩阵或厄米矩阵基于特征向量的对角化类似,然而这两种矩阵分解尽管有其相关性,但还是有明显的不同,对称阵特征向量分解的基础是谱分析,而奇异值分解则是谱分析理论在任意矩阵上的推广。这里的奇异值是矩阵里的概念,一般通过奇异值分解定理求得;设A为mn阶矩阵,q=min(m,n),AA的q个非负特征值的算术平方根叫作A的奇异值。
服务器是指通过网络提供计算服务的设备,服务器例如:x86服务器以及非x86服务器,非x86服务器包括:大型机、小型机和UNIX服务器。当然在具体的实施过程中,上述的服务器可以具体选择大型机或者小型机,这里的小型机是指采用精简指令集计算(ReducedInstruction Set Computing,RISC)、单字长定点指令平均执行速度(MillionInstructions Per Second,MIPS)等专用处理器,主要支持UNIX操作系统的封闭且专用的提供计算服务的设备;这里的大型机,又名大型主机,是指使用专用的处理器指令集、操作系统和应用软件来提供计算服务的设备。
需要说明的是,本申请实施例提供的动画获得方法可以被电子设备执行,这里的电子设备是指具有执行计算机程序功能的设备终端或者上述的服务器,设备终端例如:智能手机、个人电脑(personal computer,PC)、平板电脑、个人数字助理(personal digitalassistant,PDA)、移动上网设备(mobile Internet device,MID)、网络交换机或网络路由器等。
在介绍本申请实施例提供的动画获得方法之前,先介绍该动画获得方法适用的应用场景,这里的应用场景包括但不限于:计算机动画处理、动画处理、二维或三维游戏建模或影视电影特效制作等等应用场景,具体地,可以使用该动画获得方法制作人体有关动画,这里的人体有关动画包括:人的运动肢体动画(例如体操)、人的面部表情动画和人的手部动作动画(例如手指操)等等,当然也可以使用该动画获得方法制作动物有关动画,这里的动物有关动画包括:猫、狗和老鼠等等动物,这里的动画包括:顶点动画、变形目标动画和蒙皮动画等动画类型。为了便于理解和说明,这里以制作人脸动画为例进行说明,在使用该动画获得方法获得人脸动画之后,还可以发送给显示器,也可以发送给终端设备进行下一步的处理;这里的下一步的处理例如:使用游戏引擎控制目标生物的动画、添加字幕或弹幕、配上声音或添加特效等等。
请参见图1示出的本申请实施例提供的动画获得方法的流程示意图;该动画获得方法通过使用多个图片对目标生物进行三维重建,获得三维模型,并使用多个视频对目标生物进行三维重建,获得模型序列;然后对三维模型和模型序列进行配准拟合和数据降维,获得融合形状,最后根据融合形状生成目标生物的动画;也就是说,使用三维重建、配准拟合和数据降维的方式替代了工程师的部分精修、绑定和渲染的工作,有效地提高了生成目标生物的动画的效率,同时也减少了动画的处理时间;该动画获得方法可以包括如下步骤:
步骤S110:获得目标生物的多个图片和多个视频。
目标生物,是指需要被图片或者视频记录的生物或者生物部分肢体,具体地,可以是采集人的形体动作,也可以采集动物的形体动作,这里的形体动作具体例如手部和腕部的具体动作,当然也可以采集人的面部表情,或者动物的面部表情,这里的面部表情是指面部肌肉的一个或多个动作或状态的结果;这些运动表达了个体对观察者的情绪状态。为了便于理解和说明,下面均以采集人的面部表情为例进行说明。
多个图片,是指目标生物的不同角度的图片;这里的多个图片均是使用图像采集设备对目标生物从不同角度采集的,这里的多个图片可以是同一时刻采集的,也可以不是同一时刻采集的;其中,多个图片是同一时刻采集的实施方式将在下面进详细地描述,多个图片不是同一时刻采集的方式例如:在光线条件不变的情况下,在多个时刻使用图像采集设备采集静止的目标生物的图像等等,这里的图片像素分辨率可以是高于视频的,即图片采集的精度高于视频,这里的图片可以是演员面部表情的各种贴图,这里的贴图类型包括:纹理贴图、法线贴图和粗糙度贴图等等。
多个视频,是指目标生物的不同角度的视频;这里的多个视频均是使用视频采集设备对目标生物从不同角度采集的,这里的多个视频可以是同一时间段采集的;其中,这里的时间段是指时间范围,即从第一时刻到第二时刻之间的所有时刻,第一时刻是早于第二时刻的,多个视频是同一时间段采集的实施方式将在下面进详细地描述。这里的视频的分辨率可以略低于上述的图片,视频能够很好的表征目标生物的运动信息,具体例如可以是演员面部的运动信息。
上述步骤S110中的获得目标生物的多个图片和多个视频的实施方式例如:使用相机矩阵同时采集多个图片和多个视频,该实施方式可以包括如下步骤:
步骤S111:使用相机矩阵采集多个图片,多个图片均是使用图像采集设备对目标生物从不同角度在同一时刻采集的。
请参见图2示出的本申请实施例提供的相机矩阵拍摄获得的多个图片的示意图;相机矩阵(Camera Matrix),又被称为相机阵列,是指将多个相机固定搭建的框架上成为标定好的相机矩阵,以最大程度地从不同角度采集目标生物的图像和视频,相机矩阵可以包括不同角度的多个图片采集设备,相机矩阵还可以包括不同角度的多个视频采集设备等。在具体的实施过程中,这里的相机矩阵可以根据具体实际情况设置为一定的形状,这里的形状包括:正方体、长方体和球体,以球体为例如:搭建一个球体的笼子,笼子的上面和周围均设置多个相机,这里的多个相机均可以同时对准球心的位置进行拍摄,这里的球心的位置可以是目标演员的面部表情;也就是说,多个相机在同一时刻对演员的面部表情进行拍摄,获得同一时刻的多个二维图像,这里的演员面部的光照条件、噪声干扰、景物几何形状畸变、表面物理特性以及相机的几何特性(例如相机的拍摄角度、内部参数和外部参数等等)等对获得的二维图像造成很大的影响,这些影响直接体现对二维图像进行后续处理的过程中。
上述步骤S111的实施方式例如:这里可以通过静态扫描的方式使用相机矩阵采集多个图片,具体例如:电子设备向相机矩阵的控制器发送采集信号,以使控制器向相机矩阵中的多个图片采集设备发送同时采集图片的控制信号,从而获得多个同一时刻采集的图片;其中,控制器与相机矩阵中的多个图片采集设备之间的时间同步可以有多种方式,具体例如:采用无线信号与时间服务器同步时间,又或者控制器与相机矩阵中的多个图片采集设备之间的通讯线的质量、大小、长度和抗干扰能力均是一样的,以使得多个图片采集设备接收到控制信号尽量在同一时刻。当然,在具体的实施过程中,也可以适当地增加相机矩阵的覆盖范围,比如增加拍摄目标生物的采集设备数量等。
步骤S112:使用相机矩阵采集多个视频,多个视频均是对目标生物从不同角度在同一时间范围采集的。
上述步骤S112的实施方式例如:这里的实施原理与步骤S111的实施原理类似,区别在于步骤S112是动态扫描,具体例如:电子设备向相机矩阵的控制器发送采集信号,这里的采集信号中可以包括采集的时间范围,具体例如:时间范围为绝对时间,那么可以是采集早上9点0分0毫秒到455毫秒的视频,时间范围为相对时间,那么可以是采集接收到采集信号后的第31毫秒到455毫秒的视频,以使控制器向相机矩阵中的多个图片采集设备发送采集视频的控制信号,这里的控制信号中可以包括采集的时间范围,从而获得采集的多个同一时间范围的视频。在具体的实施过程中,多个图片采集设备是从不同的角度使用帧同步的方式对目标生物进行拍摄,这里的帧同步的意思是指视频中的采集帧图像的时间是相同的,多个图片采集设备采集的视频帧率可以根据具体情况进行设置,例如视频帧率控制在30每秒帧数(Frames per Second,FPS)以上;其中,控制器与相机矩阵中的多个图片采集设备之间的时间同步的实施原理与步骤S111的实施原理是相似或类似的,因此,这里不再对该步骤的实施原理进行赘述。
当然,在具体的实施过程中,多个图片和多个视频的获得方式,除了上述的实施方式之外还可以包括:第一种方式,接收其它终端设备发送的多个图片和多个视频,将多个图片和多个视频存储至文件系统、数据库或移动存储设备中;第二种方式,获取预先存储的多个图片和多个视频,具体例如:从文件系统中获取多个图片和多个视频,或者从数据库中获取多个图片和多个视频,或者从移动存储设备中获取多个图片和多个视频;第三种方式,使用浏览器等软件获取互联网上的多个图片和多个视频,或者使用其它应用程序访问互联网获得多个图片和多个视频。在上述的实现过程中,通过使用相机矩阵从不同角度在同一时刻采集多个图片,以及从不同角度在同一时间范围采集多个视频;尽量减少了光照条件和噪声干扰等等因素的影响,有效地提高了图像和视频的采集精度,从而提高了后续处理获得的动画的效果。
在步骤S110之后,执行步骤S120:使用多个图片对目标生物进行三维重建,获得三维模型,并使用多个视频对目标生物进行三维重建,获得模型序列。
三维重建(3D Reconstruction),又被简称为3D重建,是指对三维物体建立适合计算机表示和处理的数学模型,是在计算机环境下对其进行处理、操作和分析其性质的基础,也是在计算机中建立表达客观世界的虚拟现实的关键技术;三维重建是利用二维投影或影像恢复物体三维信息的数学过程和计算机技术。
模型序列,是指随着视频中的时间序列而变化的网状拓扑(mesh)序列,简单理解的话,这里的模型序列可以简单地理解为三维模型的序列。
上述步骤S120中的使用多个图片对目标生物进行三维重建的实施方式可以包括如下步骤:
步骤S121:对多个图片进行特征提取,获得目标生物的特征信息,特征信息包括目标生物的多个特征点。
特征信息,是指能够表征目标生物的具体特征的信息,这里的特征信息具体可以包括特征点;其中,这里的特征点在具体的匹配过程中大多数情况下都是匹配基元,即基本上都是对多个图片中的特征点进行匹配。
需要说明的是,这里的特征信息的提取方式与下面的匹配策略紧密联系,因此,在进行特征信息提取的之前需要事先确定匹配策略;上述步骤S121的实施方式包括很多种:
第一种方式,使用成熟的三维重建软件对多个图片进行特征提取,获得目标生物的特征信息,这里的三维重建软件包括但不限于:meshroom和photoscan等软件。
第二种方式,使用特征提取网络对多个图片进行特征提取;其中,这里的特征提取网络是指用于提取图像中的图像特征的神经网络;这里的特征提取网络可以是深度神经网络,常用的深度神经网络包括:VGG网络、Resnet网络、Wide Resnet网络和Inception网络等;其中,VGG网络具体例如:VGG16或者VGG19;Resnet网络具体例如:Resnet12、Resnet50或者Resnet101;Wide Resnet网络具体例如Wide Resnet-28-10网络,这里的Wide Resnet-28-10网络有时又被缩写为WRN-28-10;Inception网络具体例如:Inception v1、Inceptionv2或者Inception v3。
第三种方式,使用特征提取算法对多个图片进行特征提取;这里的特征提取算法包括但不限于:局部二值模式(Local binary patterns,LBP)、方向梯度直方图(Histogramof Oriented Gradient,HOG)和Haar特征提取算子等等特征提取算法。
步骤S122:根据目标生物的多个特征点对多个图片进行立体匹配,获得匹配结果。
上述步骤S122的实施方式包括:根据目标生物的多个特征点建立多个图片之间的映射关系,即在同一个物理空间内将至少两个不同图像中的成像点进行对应匹配,获得匹配结果,也就是说,上述的立体匹配是指根据所提取的特征来建立图像对之间的一种对应关系,也就是将同一物理空间点在两个不同图像中的成像点进行一一对应起来,这里的匹配结果是指多个图片中在同一物理空间点下有对应关系的结果。当然,上述的特征信息还可以包括特征线和区域;在特征点有良好匹配的情况下,还可以参照特征线和区域对多个图片进行立体匹配。当然在具体的实施过程中,还需要注意演员面部的光照条件、噪声干扰、景物几何形状畸变、表面物理特性以及相机的几何特性等变化因素。
步骤S123:根据图像采集设备的内部参数和外部参数对匹配结果进行标定,获得目标生物的三维点坐标。
上述步骤S123的实施方式例如:使用meshroom和photoscan等软件根据图像采集设备的内部参数和外部参数对多个图片之间的匹配结果进行标定,获得目标生物的三维点坐标,以此来达到三维重建的目的。
步骤S124:对目标生物的三维点坐标进行三角剖分,获得三维模型。
上述步骤S124的实施方式包括:对目标生物的三维点坐标进行三角剖分,即对目标生物的三维点坐标进行狄洛尼三角化,获得三维模型;其中,这里的狄洛尼三角化又称Delaunay三角化,是指在数学和计算几何领域中,平面上的点集P的狄洛尼三角化是一种三角剖分DT(P),使得在P中没有点严格处于DT(P)中任意一个三角形外接圆的内部;这里的狄洛尼三角化过程可以理解为将目标生物的多个三维点坐标转换为多个狄洛尼(Delaunay)三角网。
上述步骤S120中的使用多个视频对目标生物进行三维重建的实施方式可以包括如下步骤:
步骤S125:对多个视频中的相同时刻的图像帧进行三维重建,获得多个立体模型。
上述步骤S125的实施方式包括:从多个视频中筛选出多个相同时刻的图像帧,这里的图像帧的数量与视频的数量相同,具体的筛选过程例如:将多个视频按照播放时长对齐,若多个视频的播放时长不相同,则对多个视频的图像帧进行相似度匹配,根据多个视频的图像帧进行对齐,在多个视频对齐后,从对齐的多个视频中提取同一时刻的图像帧;然后再对多个相同时刻的图像帧进行三维重建,获得多个立体模型;其中,这里的对多个相同时刻的图像帧进行三维重建的实施原理和实施方式与上述的步骤S121至步骤S124类似,因此,这里不再对这部分内容进行赘述。
步骤S126:对多个立体模型进行重新拓扑,获得模型序列。
上述步骤S126的实施方式包括:使用非刚体注册的方式对多个立体模型进行重新拓扑(remesh),获得模型序列;其中,这里的非刚体注册的作用是从糟糕的采集数据中重新拓扑(remesh)出较为可靠的3D数据,这里的3D数据包括模型序列。
在步骤S120之后,执行步骤S130:对三维模型和模型序列进行配准拟合,获得配准拟合后的拓扑序列。
在具体的实施过程中,由于动态扫描的视频对应的拓扑(mesh)和静态扫描的图像对应的拓扑(mesh)在物理空间上是无序的,因此,需要对三维模型和模型序列进行配准拟合,以获得更为可靠的三维模型;上述步骤S130中的对三维模型和模型序列进行配准拟合的实施方式可以包括如下步骤:
步骤S131:提取三维模型的多个关键控制点,关键控制点表征控制三维模型时的关键特征点。
其中,该步骤S131的实施原理和实施方式与步骤S121中的提取目标生物的特征信息中的特征点的实施原理和实施方式是相似或类似的,因此,这里不再对该步骤的实施方式和实施原理进行说明,如有不清楚的地方,可以参考对步骤S121的描述。
步骤S132:根据多个关键控制点将三维模型与模型序列进行迭代配准拟合。
上述步骤S132的实施方式具体例如:根据多个关键控制点使用非刚体配准(non-rigid ICP)的方式将三维模型(例如高质量人脸的拓扑模板)作为模板与模型序列进行迭代配准拟合,即根据多个关键控制点使用非刚体配准的方式将该三维模型进行变形,直到该三维模型和多个视频对应的立体模型相拟合;其中,在非刚体配准的过程中,可以用来进行非刚体配准的软件有很多,这里的软件包括但不限于:R3DS Wrap 3软件。
上述的非刚体配准的损失函数可以包括:数据损失(Data loss)函数、平滑损失(Smoothness loss)函数和地标损失(Landmarks loss)函数;假设三维模型作为模板S=(V,E);其中,V代表三维模型模板的顶点,这里顶点可以是n个,E代表三维模型模板的边,三维模型模板的多个顶点中的第i个顶点的变换矩阵Xi的大小可以是3*4,这里的所有顶点的变换矩阵可以表示为X=[X1,…,Xπ]T;大小可以表示为3×4n。
上述的数据损失函数使用公式可以表示为:其中,Ed(X)表示数据损失(Data loss),Xi表示三维模型模板的多个顶点中的第i个顶点的变换矩阵,vi表示人脸模型模板中的第i个顶点,wi表示权重,这里的τ表示上述模型序列中的三维人脸模型;在计算该数据损失函数的时候,需要从上述模型序列中的三维人脸模型中找到与人脸模型模板的第i个顶点最近的点,然后计算人脸模型模板的第i个顶点与第i个顶点的最近的点之间的距离。
上述的平滑损失(Smoothness loss)函数使用公式可以表示为:其中,Es(X)表示平滑损失(Smoothness loss),Xi表示三维模型模板的多个顶点中的第i个顶点的变换矩阵,Xj表示三维模型模板的多个顶点中的第j个顶点的变换矩阵,G表示对角矩阵,具体地,G=diag(1,1,1,r),这里的r是系数,该系数用来权衡旋转和平移的程度;该平滑损失函数的作用是使得变换后的三维模型模板尽量平滑,F表示F范数,即求矩阵的F范数,通常为2的范数。
上述的地标损失(Landmarks loss)函数使用公式可以表示为:L=(vi1,li),…,(vil,ll);其中,El(X)表示地标损失(Landmarks loss),Xi表示三维模型模板的多个顶点中的第i个顶点的变换矩阵,vi表示人脸模型模板中的第i个顶点,l是目标(target)三维模型的特征点,F表示F范数,即求矩阵的F范数,通常为2的范数。
因此,上述的非刚体配准的整个优化损失函数可以表示为E=Ed(X)+αEs(X)+βEl(X);其中,Ed(X)表示数据损失(Data loss),Es(X)表示平滑损失(Smoothness loss),El(X)表示地标损失(Landmarks loss),α表征数据损失权重的第一系数,β表征地标损失权重的第二系数,通过求解上述的非刚体配准的整个优化损失函数,得到每个顶点的变换矩阵,然后应用到每个三维模型模板的顶点上,即得到配准后的拟合后的拓扑序列。在上述的实现过程中,通过提取三维模型的多个关键控制点,关键控制点表征控制三维模型时的关键特征点;根据多个关键控制点将三维模型与模型序列进行迭代配准拟合;也就是说,通过关键控制点将表征图片中的高精度静态信息和视频中的动态信息进行迭代配准拟合,有效地提高了获得动画的精度。
在步骤S130之后,执行步骤S140:将拓扑序列进行数据降维,获得目标生物对应的融合形状。
为了动画引擎可以实时地使用上述的目标生物对应的融合形状(blendshape),需要对拓扑序列进行数据降维,这里的数据降维也可以理解为数据压缩,上述步骤S140中的将拓扑序列进行数据降维的实施方式包括:使用聚类分析或者主成分分析算法将拓扑序列进行数据降维,获得目标生物对应的融合形状(blendshape)和融合形状(blendshape)对应的系数;下面以K均值聚类算法和主成分分析算法为例将拓扑序列进行数据降维获得目标生物对应的融合形状的过程进行详细的说明。
第一种数据降维方式,使用K均值聚类算法将拓扑序列进行数据降维,获得目标生物对应的融合形状,这里的K-means聚类算法的作用在于;将相似对象归入同一簇,从而将不相似对象归到不同簇。上述的使用K均值聚类算法将拓扑序列进行数据降维的实施方式包括:设置需要对融合形状进行分类的具体数量,即融合形状(blendshape)的个数,可以使用k表示;随机选择k个中心点作为初始聚类中心;计算数据集中的每个样本到k个聚类中心的距离,并将其分到距离最小的聚类中心所对应的类中;针对每个类别,重新计算它的聚类中心(即该类别的质心);重复执行“计算数据集中的每个样本到k个聚类中心的距离,并将其分到距离最小的聚类中心所对应的类中;针对每个类别,重新计算它的聚类中心”直到收敛;聚类完成后,可以得到k个类别,以及每个类别中存放的拓扑(mesh)序列中的索引。
假设上述的每个类别存放的索引为Cq(0≤q≤k,0≤Cq≤p),其中,Cq表示第q个融合形状的类别,k为需要分类的融合形状的数量,q表示第q个融合形状,p表示收敛完成后的总类别数量;在使用K均值聚类算法执行完成后,获得对应的k个类别,可以根据这里的k个类别对应生成融合形状,这里生成的融合形状使用公式表示为:其中,0≤q≤k,k为需要分类的融合形状的数量,q表示第q个融合形状,Bq表示生成的融合形状,Cq表示第q个融合形状的类别,/>表示拓扑序列中第Cq个类别的拓扑(mesh);最后,计算每一帧融合形状(blendshape)的系数;针对拓扑(mesh)序列的每一帧有:/>其中,mi表示拓扑序列中第i个类别的拓扑,wq即为融合形状(blendshape)的系数,wq满足的条件为(0≤wq≤k),k为类别的个数,q表示第q个融合形状,Bq表示上面生成的融合形状,bs为基础拓扑(basemesh),即中性表情的拓扑(mesh),具体例如:人脸的三维模型模板,上述方程中只有wq为未知数且方程是带约束的线性方程,可以直接通过二次规划的求解方式进行求解,最终得到每一帧的融合形状(blendshape)的系数。
第二种数据降维方式,使用主成分分析算法将拓扑序列进行数据降维获得目标生物对应的融合形状,该实施方式具体例如:将每个拓扑(mesh)重构(reshape)为[3n,1]的一维向量,则一共有p个维度为3n的向量,假设要自动生成的融合形状(blendshape)的数量为k;将数据组成p行3n列的样本矩阵,该样本矩阵中的每一行为一个融合形状样本;对上述的样本矩阵进行中心化(具体例如:取均值);这里样本矩阵的均值表示为μ,那么样本矩阵的维度为[3n,1];然后计算样本的协方差矩阵;再计算协方差矩阵的特征值并取出最大的k个特征值所对应的特征向量Vi(0<=i<=k);并将每个特征向量加上基础拓扑(basemesh)再重构(reshape)为[3,n],获得的融合形状可以使用Bi来表示,这里的Bi表征自动生成的第i个融合形状(blendshape),除了特征向量以外,还有一个额外的融合形状(blendshape)使用公式表示为:addition_bs=μ+bs;其中,addition_bs表示额外的融合形状(blendshape),μ表示样本矩阵的均值,bs为基础拓扑(basemesh),针对拓扑(mesh)序列的每一帧有:其中,0≤j≤p,p表示维度为3n的向量的个数,mj表示拓扑序列中第j个类别的拓扑(mesh),bs表征基础拓扑(basemesh),即中性表情的拓扑(mesh),具体例如:人脸的三维模型模板,上述方程中只有wj为未知数且方程是带约束的线性方程,使用奇异值分解(Singular Value Decomposition,SVD)进行求解即可得到每一帧的系数,addition_bs的系数可以为1。
在步骤S140之后,执行步骤S150:根据融合形状生成目标生物的动画。
上述步骤S150中的根据融合形状生成目标生物的动画的实施方式可以包括:
步骤S151:提取融合形状的系数。
上述步骤S151的实施方式例如:使用数字内容创作(Digital Content Creation,DCC)软件提取融合形状的系数,这里的DCC软件包括但不限于:3Dmax、Maya和Blender等计算机动画(Computer Graphics,CG)处理软件。
步骤S152:根据融合形状的系数和融合形状生成目标生物的动画。
上述步骤S152的实施方式包括:将融合形状的系数确定为关键帧属性,这里的关键帧是指动画制作过程中能够表示关键变化的一帧图像,使用该关键帧属性控制上述的融合形状(blendshape)生成关键帧图像,获得多个关键帧图像,使用DCC软件将这里的多个关键帧图像进行渲染处理,获得目标生物的动画,这里的动画可以是fbx格式的,这里的fbx格式的动画可以被游戏引擎程序使用,因此,这里的动画也可以理解为游戏引擎动画。
在上述的实现过程中,通过使用多个图片对目标生物进行三维重建,获得三维模型,并使用多个视频对目标生物进行三维重建,获得模型序列;然后对三维模型和模型序列进行配准拟合和数据降维,获得融合形状,最后根据融合形状生成目标生物的动画;也就是说,使用三维重建、配准拟合和数据降维的方式替代了工程师的部分精修、绑定和渲染的工作,有效地提高了生成目标生物的动画的效率,同时也减少了动画的处理时间。
请参见图3示出的本申请实施例提供的电子设备与终端设备进行交互的流程示意图;可选地,在本申请实施例中,执行上述动画获得方法的电子设备还可以与终端设备进行交互,那么该电子设备与终端设备进行交互的过程可以包括如下步骤:
步骤S210:电子设备接收终端设备发送的多个图片和多个视频。
步骤S220:电子设备使用多个图片对目标生物进行三维重建,获得三维模型,并使用多个视频对目标生物进行三维重建,获得模型序列。
步骤S230:电子设备对三维模型和模型序列进行配准拟合,获得配准拟合后的拓扑序列。
步骤S240:电子设备将拓扑序列进行数据降维,获得目标生物对应的融合形状。
步骤S250:电子设备根据融合形状生成目标生物的动画。
其中,该步骤S220至步骤S250的实施原理和实施方式与步骤S120至步骤S150的实施原理和实施方式是相似或类似的,因此,这里不再对该步骤的实施方式和实施原理进行说明,如有不清楚的地方,可以参考对步骤S120至步骤S150的描述。
步骤S260:电子设备向终端设备发送目标生物的动画。
请参见图4示出的本申请实施例提供的动画获得装置的结构示意图;本申请实施例提供了一种动画获得装置300,包括:
图片视频获得模块310,用于获得目标生物的多个图片和多个视频,多个图片均是使用图像采集设备对目标生物从不同角度采集的,多个视频均是对目标生物从不同角度采集的。
目标三维重建模块320,用于使用多个图片对目标生物进行三维重建,获得三维模型,并使用多个视频对目标生物进行三维重建,获得模型序列。
拓扑序列获得模块330,用于对三维模型和模型序列进行配准拟合,获得配准拟合后的拓扑序列。
融合形状获得模块340,用于将拓扑序列进行数据降维,获得目标生物对应的融合形状。
融合动画生成模块350,用于根据融合形状生成目标生物的动画。
可选地,在本申请实施例中,图片视频获得模块,包括:
相机矩阵采集模块,用于使用相机矩阵采集多个图片和多个视频,相机矩阵表征不同角度的多个图片采集设备,多个图片均是使用图像采集设备对目标生物从不同角度在同一时刻采集的,多个视频均是对目标生物从不同角度在同一时间范围采集的。
可选地,在本申请实施例中,目标三维重建模块,包括:
特征信息获得模块,用于对多个图片进行特征提取,获得目标生物的特征信息,特征信息包括目标生物的多个特征点。
匹配结果获得模块,用于根据目标生物的多个特征点对多个图片进行立体匹配,获得匹配结果。
三维坐标获得模块,用于根据图像采集设备的内部参数和外部参数对匹配结果进行标定,获得目标生物的三维点坐标。
三维模型获得模块,用于对目标生物的三维点坐标进行三角剖分,获得三维模型。
可选地,在本申请实施例中,目标三维重建模块,还可以包括:
立体模型获得模块,用于对多个视频中的相同时刻的图像帧进行三维重建,获得多个立体模型。
模型序列获得模块,用于对多个立体模型进行重新拓扑,获得模型序列。
可选地,在本申请实施例中,拓扑序列获得模块,包括:
关键特征提取模块,用于提取三维模型的多个关键控制点,关键控制点表征控制三维模型时的关键特征点。
迭代配准拟合模块,用于根据多个关键控制点将三维模型与模型序列进行迭代配准拟合。
可选地,在本申请实施例中,融合形状获得模块,包括:
序列数据降维模块,用于使用聚类分析或者主成分分析将拓扑序列进行数据降维。
可选地,在本申请实施例中,融合动画生成模块,包括:
融合系数提取模块,用于提取融合形状的系数。
系数形状生成模块,用于根据融合形状的系数和融合形状生成目标生物的动画。
应理解的是,该装置与上述的动画获得方法实施例对应,能够执行上述方法实施例涉及的各个步骤,该装置具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。该装置包括至少一个能以软件或固件(firmware)的形式存储于存储器中或固化在装置的操作系统(operating system,OS)中的软件功能模块。
请参见图5示出的本申请实施例提供的电子设备的结构示意图。本申请实施例提供的一种电子设备400,包括:处理器410和存储器420,存储器420存储有处理器410可执行的机器可读指令,机器可读指令被处理器410执行时执行如上的方法。
本申请实施例还提供了一种存储介质430,该存储介质430上存储有计算机程序,该计算机程序被处理器410运行时执行如上的方法。
其中,存储介质430可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
本申请实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其他的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请实施例的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请实施例各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上的描述,仅为本申请实施例的可选实施方式,但本申请实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请实施例的保护范围之内。
Claims (9)
1.一种动画获得方法,其特征在于,包括:
获得目标生物的多个图片和多个视频,所述多个图片均是使用图像采集设备对所述目标生物从不同角度采集的,所述多个视频均是对所述目标生物从不同角度采集的;
使用所述多个图片对所述目标生物进行三维重建,获得三维模型,并使用所述多个视频对所述目标生物进行三维重建,获得模型序列;
对所述三维模型和所述模型序列进行配准拟合,获得配准拟合后的拓扑序列;
将所述拓扑序列进行数据降维,获得所述目标生物对应的融合形状;
根据所述融合形状生成所述目标生物的动画;
其中,所述对所述三维模型和所述模型序列进行配准拟合,包括:提取所述三维模型的多个关键控制点,所述关键控制点表征控制所述三维模型时的关键特征点;根据所述多个关键控制点使用非刚体配准的损失函数和所述非刚体配准的软件对该三维模型进行变形,直到该三维模型和所述模型序列中的立体模型相拟合,所述非刚体配准的软件包括:R3DSWrap 3软件;所述非刚体配准的整个优化损失函数包括:数据损失函数、平滑损失函数和地标损失函数;所述非刚体配准的整个优化损失函数表示为E=Ed(X)+αEs(X)+βEl(X);其中,Ed(X)表示数据损失,Es(X)表示平滑损失,El(X)表示地标损失,α表征数据损失权重的第一系数,β表征地标损失权重的第二系数;其中,所述数据损失函数表示为:Xi表示三维模型模板的多个顶点中的第i个顶点的变换矩阵,vi表示人脸模型模板中的第i个顶点,wi表示权重;所述平滑损失函数表示为:/>Xi表示三维模型模板的多个顶点中的第i个顶点的变换矩阵,Xj表示三维模型模板的多个顶点中的第j个顶点的变换矩阵,G表示对角矩阵;所述地标损失函数表示为:/>L=(vi1,li),…,(vil,ll);Xi表示三维模型模板的多个顶点中的第i个顶点的变换矩阵,vi表示人脸模型模板中的第i个顶点,l是目标三维模型的特征点,F表示F范数,即求矩阵的F范数。
2.根据权利要求1所述的方法,其特征在于,所述获得目标生物的多个图片和多个视频,包括:
使用相机矩阵采集所述多个图片和所述多个视频,所述相机矩阵表征不同角度的多个图片采集设备,所述多个图片均是使用图像采集设备对所述目标生物从不同角度在同一时刻采集的,所述多个视频均是对所述目标生物从不同角度在同一时间范围采集的。
3.根据权利要求1所述的方法,其特征在于,所述使用所述多个图片对所述目标生物进行三维重建,获得三维模型,包括:
对所述多个图片进行特征提取,获得所述目标生物的特征信息,所述特征信息包括所述目标生物的多个特征点;
根据所述目标生物的多个特征点对所述多个图片进行立体匹配,获得匹配结果;
根据所述图像采集设备的内部参数和外部参数对所述匹配结果进行标定,获得所述目标生物的三维点坐标;
对所述目标生物的三维点坐标进行三角剖分,获得三维模型。
4.根据权利要求1所述的方法,其特征在于,所述使用所述多个视频对所述目标生物进行三维重建,获得模型序列,包括:
对所述多个视频中的相同时刻的图像帧进行三维重建,获得多个立体模型;
对所述多个立体模型进行重新拓扑,获得所述模型序列。
5.根据权利要求1所述的方法,其特征在于,所述将所述拓扑序列进行数据降维,包括:
使用聚类分析或者主成分分析将所述拓扑序列进行数据降维。
6.根据权利要求1所述的方法,其特征在于,所述根据所述融合形状生成所述目标生物的动画,包括:
提取所述融合形状的系数;
根据所述融合形状的系数和所述融合形状生成所述目标生物的动画。
7.一种动画获得装置,其特征在于,包括:
图片视频获得模块,用于获得目标生物的多个图片和多个视频,所述多个图片均是使用图像采集设备对所述目标生物从不同角度采集的,所述多个视频均是对所述目标生物从不同角度采集的;
目标三维重建模块,用于使用所述多个图片对所述目标生物进行三维重建,获得三维模型,并使用所述多个视频对所述目标生物进行三维重建,获得模型序列;
拓扑序列获得模块,用于对所述三维模型和所述模型序列进行配准拟合,获得配准拟合后的拓扑序列;
融合形状获得模块,用于将所述拓扑序列进行数据降维,获得所述目标生物对应的融合形状;
融合动画生成模块,用于根据所述融合形状生成所述目标生物的动画;
其中,所述对所述三维模型和所述模型序列进行配准拟合,包括:提取所述三维模型的多个关键控制点,所述关键控制点表征控制所述三维模型时的关键特征点;根据所述多个关键控制点使用非刚体配准的损失函数和所述非刚体配准的软件对该三维模型进行变形,直到该三维模型和所述模型序列中的立体模型相拟合,所述非刚体配准的软件包括:R3DSWrap 3软件;所述非刚体配准的整个优化损失函数包括:数据损失函数、平滑损失函数和地标损失函数;所述非刚体配准的整个优化损失函数表示为E=Ed(X)+αEs(X)+βEl(X);其中,Ed(X)表示数据损失,Es(X)表示平滑损失,El(X)表示地标损失,α表征数据损失权重的第一系数,β表征地标损失权重的第二系数;其中,所述数据损失函数表示为:Xi表示三维模型模板的多个顶点中的第i个顶点的变换矩阵,vi表示人脸模型模板中的第i个顶点,wi表示权重;所述平滑损失函数表示为:/>Xi表示三维模型模板的多个顶点中的第i个顶点的变换矩阵,Xj表示三维模型模板的多个顶点中的第j个顶点的变换矩阵,G表示对角矩阵;所述地标损失函数表示为:/>L=(vi1,li),…,(vil,ll);Xi表示三维模型模板的多个顶点中的第i个顶点的变换矩阵,vi表示人脸模型模板中的第i个顶点,l是目标三维模型的特征点,F表示F范数,即求矩阵的F范数。
8.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述机器可读指令被所述处理器执行时执行如权利要求1至6任一所述的方法。
9.一种存储介质,其特征在于,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至6任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010713872.8A CN111862278B (zh) | 2020-07-22 | 2020-07-22 | 一种动画获得方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010713872.8A CN111862278B (zh) | 2020-07-22 | 2020-07-22 | 一种动画获得方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111862278A CN111862278A (zh) | 2020-10-30 |
CN111862278B true CN111862278B (zh) | 2024-02-27 |
Family
ID=72949654
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010713872.8A Active CN111862278B (zh) | 2020-07-22 | 2020-07-22 | 一种动画获得方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111862278B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112669424B (zh) * | 2020-12-24 | 2024-05-31 | 科大讯飞股份有限公司 | 一种表情动画生成方法、装置、设备及存储介质 |
CN112652056B (zh) * | 2020-12-25 | 2023-09-05 | 北京奇艺世纪科技有限公司 | 一种3d信息展示方法及装置 |
CN113963126A (zh) * | 2021-10-26 | 2022-01-21 | 云知声智能科技股份有限公司 | 模型构建方法、装置、存储介质及电子装置 |
CN116188640B (zh) * | 2022-12-09 | 2023-09-08 | 北京百度网讯科技有限公司 | 三维虚拟形象的生成方法、装置、设备和介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110047121A (zh) * | 2019-03-20 | 2019-07-23 | 北京字节跳动网络技术有限公司 | 端到端的动画生成方法、装置及电子设备 |
CN110415323A (zh) * | 2019-07-30 | 2019-11-05 | 成都数字天空科技有限公司 | 一种融合变形系数获得方法、装置及存储介质 |
CN110807833A (zh) * | 2019-11-04 | 2020-02-18 | 成都数字天空科技有限公司 | 一种网状拓扑获得方法、装置、电子设备及存储介质 |
CN110874864A (zh) * | 2019-10-25 | 2020-03-10 | 深圳奥比中光科技有限公司 | 获取对象三维模型的方法、装置、电子设备及系统 |
CN111179433A (zh) * | 2019-12-31 | 2020-05-19 | 杭州阜博科技有限公司 | 目标物体的三维建模方法及装置、电子设备、存储介质 |
CN111402374A (zh) * | 2018-12-29 | 2020-07-10 | 曜科智能科技(上海)有限公司 | 多路视频与三维模型融合方法及其装置、设备和存储介质 |
CN113272870A (zh) * | 2019-01-18 | 2021-08-17 | 斯纳普公司 | 用于逼真的实时人像动画的系统和方法 |
-
2020
- 2020-07-22 CN CN202010713872.8A patent/CN111862278B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111402374A (zh) * | 2018-12-29 | 2020-07-10 | 曜科智能科技(上海)有限公司 | 多路视频与三维模型融合方法及其装置、设备和存储介质 |
CN113272870A (zh) * | 2019-01-18 | 2021-08-17 | 斯纳普公司 | 用于逼真的实时人像动画的系统和方法 |
CN110047121A (zh) * | 2019-03-20 | 2019-07-23 | 北京字节跳动网络技术有限公司 | 端到端的动画生成方法、装置及电子设备 |
CN110415323A (zh) * | 2019-07-30 | 2019-11-05 | 成都数字天空科技有限公司 | 一种融合变形系数获得方法、装置及存储介质 |
CN110874864A (zh) * | 2019-10-25 | 2020-03-10 | 深圳奥比中光科技有限公司 | 获取对象三维模型的方法、装置、电子设备及系统 |
CN110807833A (zh) * | 2019-11-04 | 2020-02-18 | 成都数字天空科技有限公司 | 一种网状拓扑获得方法、装置、电子设备及存储介质 |
CN111179433A (zh) * | 2019-12-31 | 2020-05-19 | 杭州阜博科技有限公司 | 目标物体的三维建模方法及装置、电子设备、存储介质 |
Non-Patent Citations (1)
Title |
---|
基于连贯点漂移的点云配准研究;石珣;中国优秀硕士学位论文全文库信息科技;20190615(第6期);1-60 * |
Also Published As
Publication number | Publication date |
---|---|
CN111862278A (zh) | 2020-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111862278B (zh) | 一种动画获得方法、装置、电子设备及存储介质 | |
CN109410307B (zh) | 一种场景点云语义分割方法 | |
US10679046B1 (en) | Machine learning systems and methods of estimating body shape from images | |
Yang et al. | Weakly-supervised disentangling with recurrent transformations for 3d view synthesis | |
Kumar et al. | Monocular fisheye camera depth estimation using sparse lidar supervision | |
US9747668B2 (en) | Reconstruction of articulated objects from a moving camera | |
JP6207210B2 (ja) | 情報処理装置およびその方法 | |
CN111598998A (zh) | 三维虚拟模型重建方法、装置、计算机设备和存储介质 | |
CN112085835B (zh) | 三维卡通人脸生成方法、装置、电子设备及存储介质 | |
CN116385667B (zh) | 三维模型的重建方法、纹理重构模型的训练方法以及装置 | |
CN117218300B (zh) | 三维模型的构建方法、三维构建模型的训练方法及装置 | |
CN115222896B (zh) | 三维重建方法、装置、电子设备及计算机可读存储介质 | |
CN116416376A (zh) | 一种三维头发的重建方法、系统、电子设备及存储介质 | |
CN115346262A (zh) | 一种表情驱动参数的确定方法、装置、设备及存储介质 | |
CN116958420A (zh) | 一种数字人教师三维人脸的高精度建模方法 | |
CN115222917A (zh) | 三维重建模型的训练方法、装置、设备及存储介质 | |
CN115115805A (zh) | 三维重建模型的训练方法、装置、设备及存储介质 | |
Wu et al. | [Retracted] 3D Film Animation Image Acquisition and Feature Processing Based on the Latest Virtual Reconstruction Technology | |
CN114266693A (zh) | 图像处理方法、模型生成方法及设备 | |
CN117830611A (zh) | 目标检测方法、装置及电子设备 | |
JP2005317000A (ja) | 最適な視点のセットで得られた2d画像からの顔の3d形状構築に最適な視点のセットを求める方法 | |
Ham et al. | Learning a manifold-constrained map between image sets: applications to matching and pose estimation | |
CN116363320A (zh) | 重建模型的训练和三维模型重建方法、装置、设备及介质 | |
CN115497029A (zh) | 视频处理方法、装置及计算机可读存储介质 | |
Diao et al. | 3D Face Reconstruction Based on a Single Image: A Review |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |