CN117315099A - 一种用于三维动画的画面数据处理系统及方法 - Google Patents
一种用于三维动画的画面数据处理系统及方法 Download PDFInfo
- Publication number
- CN117315099A CN117315099A CN202311424145.XA CN202311424145A CN117315099A CN 117315099 A CN117315099 A CN 117315099A CN 202311424145 A CN202311424145 A CN 202311424145A CN 117315099 A CN117315099 A CN 117315099A
- Authority
- CN
- China
- Prior art keywords
- frame
- scene element
- transition
- key
- key frame
- 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
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000012545 processing Methods 0.000 title claims abstract description 26
- 230000007704 transition Effects 0.000 claims abstract description 265
- 230000008859 change Effects 0.000 claims abstract description 86
- 239000011159 matrix material Substances 0.000 claims abstract description 21
- 230000009466 transformation Effects 0.000 claims abstract description 10
- 238000003672 processing method Methods 0.000 claims description 24
- 238000013507 mapping Methods 0.000 claims description 22
- 230000010076 replication Effects 0.000 claims description 17
- 238000013500 data storage Methods 0.000 claims description 3
- 230000002596 correlated effect Effects 0.000 abstract description 2
- 230000000875 corresponding effect Effects 0.000 description 46
- 238000004364 calculation method Methods 0.000 description 17
- 230000033001 locomotion Effects 0.000 description 11
- 238000013461 design Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 239000000463 material Substances 0.000 description 5
- 238000009877 rendering Methods 0.000 description 5
- 230000036544 posture Effects 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 238000005286 illumination Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002194 synthesizing effect Effects 0.000 description 2
- 210000000988 bone and bone Anatomy 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000000844 transformation Methods 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明出了一种用于三维动画的画面数据处理系统及方法,通过获取三维动画的关键帧画面数据,所述关键帧画面数据包括每一个关键帧的时间点及其帧画面内每个场景元素的顶点坐标数据,基于所述关键帧画面数据生成每两个相邻关键帧之间的过渡帧画面数据,从所述过渡帧画面数据中获取每一个过渡帧的关键变化数据,所述关键变化数据包括所述过渡帧相对于上一关键帧的变换矩阵以及所述过渡帧中的场景元素的变化部分的顶点坐标数据,将每一个过渡帧的所述关键变化数据与过渡帧的时间点关联保存,能够解决现有技术中过渡帧的生成数据缺失导致的视频文件精度不足和失真的问题。
Description
技术领域
本发明涉及三维动画技术领域,特别涉及一种用于三维动画的画面数据处理系统及方法。
背景技术
三维动画是通过计算机技术来实现三维效果的动画,它利用三维模型、渲染、动画技术,可以创建逼真的三维环境和对象,实现复杂的镜头移动,相比于传统的平面动画,三维动画能够为观众提供更好的沉浸式的视觉体验。三维动画的制作通常包括设计部分和生成部分,其中设计部分包括建模和动作设计两个阶段,建模阶段主要由模型设计师设计出动画场景及场景中各种元素如人物、道具、建筑等的立体模型,动作设计阶段主要是为立体模型添加骨骼和控制以形成每个模型各个组成部分对应不同时刻的位置和姿态。而生成部分则包括渲染和合成输出两个阶段,渲染阶段主要是为场景和模型添加光照效果和材质效果后生成对应每个画面的二维图像,光照效果和材质效果的添加便得三维动画内容更加真实,合成输出阶段则是将渲染得到的图像合成为动画序列,并为其添加视觉特效和声音后输出为视频文件。设计部分的设计内容通常保存在特定格式的三维动画文件中,常见的三维动画文件格式包括FBX、3DS、DAE、XSI、OBJ、LT、MA、MB、LWO等,这些格式主要用于保存三维模型、动画、材质和光照数据等各种信息,以便之后进行渲染、编辑和合成等操作。
由于三维动画的每一个帧都涉及大量的动画元素模型,每个模型都有大量的面组成,每一个面又关联有数量众多的顶点,模型的位置、姿态等信息在每一个帧中均由各个顶点的坐标数据进行体现,如果在三维动画文件中保存每一帧的所有顶点数据,那么这个数据量将会非常庞大,三维动画文件也变得极其庞大,需要占用大量的存储空间。在实际应用中,通常仅在三维动画文件中保存关键帧数据,通过对关键帧数据进行插值计算的方式来动态生成过渡帧,而过渡帧数据会在完成图像绘制后被丢弃。这种做法的好处在于可以节省大量的存储空间,同时只要使用的插值算法相同,相同的关键帧之间的过渡帧的生成往往都是稳定的。但这种方案也存在不足之处,一方面,每一次进行渲染之前都需要重新生成过渡帧,对于帧率较高的动画,其过渡帧的数量是非常庞大的,需要耗费大量的时间资源和计算资源;另一方面,目前常见的插值算法仅以前后两帧的数据为计算基础,其过渡帧的生成往往缺失足够的计算数据,导致生成的视频文件中大量画面存在精度不足和失真的问题。
发明内容
本发明正是基于上述问题,提出了一种用于三维动画的画面数据处理系统及方法,能够解决现有技术中过渡帧的生成数据缺失导致的视频文件精度不足和失真的问题。
有鉴于此,本发明的第一方面提出了一种用于三维动画的画面数据处理系统,包括:
关键帧画面数据获取模块,用于获取三维动画的关键帧画面数据,所述关键帧画面数据包括每一个关键帧的时间点及其帧画面内每个场景元素的顶点坐标数据;
过渡帧画面数据生成模块,用于基于所述关键帧画面数据生成每两个相邻关键帧之间的过渡帧画面数据;
关键变化数据获取模块,用于从所述过渡帧画面数据中获取每一个过渡帧的关键变化数据,所述关键变化数据包括所述过渡帧相对于上一关键帧的变换矩阵以及所述过渡帧中的场景元素的变化部分的顶点坐标数据;
关键变化数据保存模块,用于将每一个过渡帧的所述关键变化数据与过渡帧的时间点关联保存。
本发明的第二方面提出了一种用于三维动画的画面数据处理方法,包括:
获取三维动画的关键帧画面数据,所述关键帧画面数据包括每一个关键帧的时间点及其帧画面内每个场景元素的顶点坐标数据;
基于所述关键帧画面数据生成每两个相邻关键帧之间的过渡帧画面数据;
从所述过渡帧画面数据中获取每一个过渡帧的关键变化数据,所述关键变化数据包括所述过渡帧相对于上一关键帧的变换矩阵以及所述过渡帧中的场景元素的变化部分的顶点坐标数据;
将每一个过渡帧的所述关键变化数据与过渡帧的时间点关联保存。
进一步的,在上述的用于三维动画的画面数据处理方法中,基于所述关键帧画面数据生成每两个相邻关键帧之间的过渡帧画面数据的步骤具体包括:
将需要生成过渡帧的两个相邻关键帧确定为第一关键帧和第二关键帧;
输入所述第一关键帧和所述第二关键帧的关键帧画面数据;
在所述第二关键帧的帧画面中识别第一场景元素、第二场景元素和第三场景元素,所述第一场景元素为同时存在于所述第一关键帧和所述第二关键帧的帧画面中且差异值大于或等于预设的阈值的场景元素,所述第二场景元素为同时存在于所述第一关键帧和所述第二关键帧的帧画面中且差异值小于预设的阈值的场景元素,所述第三场景元素为存在于所述第二关键帧的帧画面中但不存在于所述第一关键帧的帧画面中的场景元素;
根据所述第一关键帧和所述第二关键帧的时间点确定所述第一关键帧和所述第二关键帧之间的过渡帧的数量;
生成所述第一场景元素、所述第二场景元素和所述第三场景元素在每一个过渡帧中的过渡区域数据;
基于所述过渡区域数据构建每一个过渡帧的过渡帧画面数据。
进一步的,在上述的用于三维动画的画面数据处理方法中,在所述第二关键帧的帧画面中识别第一场景元素、第二场景元素和第三场景元素的步骤具体包括:
在所述第二关键帧的帧画面中识别存在于所述第二关键帧的帧画面中但不存在于所述第一关键帧的帧画面中第三场景元素;
将所述第二关键帧的帧画面中除所述第三场景元素外的场景元素确定为目标场景元素;
获取所述目标场景元素的数量nobject以及预先配置的差异阈值d0;
遍历每一个目标场景元素以计算每一个目标场景元素在所述第一关键帧和所述第二关键帧之间的差异值dvari,i,其中i∈[1,nobject];
根据所述差异值dvari,i以及差异阈值d0的大小将所述目标场景元素确定为第一场景元素或第二场景元素。
进一步的,在上述的用于三维动画的画面数据处理方法中,遍历每一个第一场景元素以计算每一个第一场景元素在所述第一关键帧和所述第二关键帧之间的差异值dvari,i的步骤具体包括:
获取第i个第一场景元素在所述第一关键帧中的第一顶点数据序列和在所述第二关键帧中的第二顶点数据序列;
根据所述第二顶点数据序列中的顶点与所述第一顶点数据序列的顶点在第i个第一场景元素中的对应关系得到第三顶点数据序列,所述第三顶点数据序列中的顶点为存在于所述第二顶点数据序列中但不存在于所述第一顶点数据序列中的顶点;
根据所述第三顶点数据序列中的顶点的坐标识别遮挡区域;
获取第i个场景元素的每个遮挡区域所包含的面数nface,k以及每个面的面积sm,k,其中k∈[1,nregion],m∈[1,nface,k],nregion为第i个场景元素中的遮挡区域的数量,nface,k为第k个遮挡区域中的面的数量;
计算第i个场景元素在所述第一关键帧和所述第二关键帧之间的差异值:
其中α为预先配置的面数差异系数,β为预先配置的面积差异系数。
进一步的,在上述的用于三维动画的画面数据处理方法中,根据所述第三顶点数据序列中的顶点的坐标识别遮挡区域的步骤具体包括:
在所述第三顶点数据序列中识别关联同一个面的顶点组合,所述顶点组合中的顶点的数量大于或等于3;
确定每一个顶点组合对应的目标面,所述目标面为所述顶点组合中的顶点连线包围得到的面;
组合共边的目标面形成所述遮挡区域。
进一步的,在上述的用于三维动画的画面数据处理方法中,在所述第二关键帧的帧画面中识别第一场景元素、第二场景元素和第三场景元素的步骤之后,还包括:
在所述第二关键帧的帧画面中识别每一个第一场景元素的第一变化区域和第二变化区域,所述第一变化区域为在所述第一场景元素上的顶点同时存在于所述第一关键帧的帧画面中的区域,所述第二变化区域为在所述第一场景元素上的顶点不存在于所述第一关键帧的帧画面中的区域;
生成所述第一场景元素、所述第二场景元素和所述第三场景元素在每一个过渡帧中的过渡区域数据的步骤具体包括:
采用插值模式生成所述第一场景元素的第一变化区域在每一个过渡帧的帧画面中的第一过渡区域数据;
采用映射模式生成所述第一场景元素的第二变化区域以及所述第三场景元素在每一个过渡帧的帧画面中的第二过渡区域数据;
采用复制模式生成所述第二场景元素在每一个过渡帧的帧画面中的第三过渡区域数据。
进一步的,在上述的用于三维动画的画面数据处理方法中,采用插值模式生成所述第一场景元素的第一变化区域在每一个过渡帧的帧画面中的第一过渡区域数据的步骤具体包括:
确定插值模式的插值参数,所述插值参数包括所述第一关键帧、所述第二关键帧、目标过渡帧的时间点,每个场景元素对应的第一顶点数据序列以及第二顶点数据序列;
计算所述目标过渡帧的时间点相对于所述第一关键帧、所述第二关键帧的时间点的时间比例:
其中ttarget为所述目标过渡帧的时间点,tahead为所述第一关键帧的时间点,tafter为所述第二关键帧的时间点;
根据所述时间比例计算所述第一顶点数据序列的顶点在所述目标过渡帧中的坐标数据:
vtargeti,j=v1i,j·(1-ratiotarget)+v2i,j·ratiotarget,
其中j∈[1,nvertex],nvertex为所述第一场景元素的第一变化区域中的顶点数量,v1i,j为所述第一顶点数据序列中的每个顶点的坐标,v2i,j为所述第二顶点数据序列中的每个顶点坐标。
进一步的,在上述的用于三维动画的画面数据处理方法中,采用映射模式生成所述第一场景元素的第二变化区域以及所述第三场景元素在每一个过渡帧的帧画面中的第二过渡区域数据的步骤具体包括:
确定映射模式的映射参数,所述映射参数包括所述第一关键帧、所述第二关键帧、目标过渡帧的时间点;
构建对应所述第一关键帧的时间点的第一场景空间和对应所述第二关键帧的时间点的第二场景空间,所述第一场影空间和所述第二场景空间为立体空间;
分别在所述第一场景空间和所述第二场景空间中加载所述第一场景元素和所述经三场景元素的立体模型;
基于所述第一场景元素的第二变化区域和所述第三场景元素在所述第一场景空间和所述第二场景空间中的姿态以及所述第一关键帧、所述第二关键帧、目标过渡帧的时间点计算所述第一场景元素的第二变化区域和所述第三场景元素在所述目标过渡帧的时间点中的空间姿态;
根据所述空间姿态将所述第一场景元素的第二变化区域和所述第三场景元素的顶点在所述目标过渡帧中的坐标数据。
进一步的,在上述的用于三维动画的画面数据处理方法中,采用复制模式生成所述第二场景元素在每一个过渡帧的帧画面中的第三过渡区域数据的步骤具体包括:
确定复制模式的复制参数,所述复制参数包括所述第一关键帧、所述第二关键帧、目标过渡帧的时间点以及所述第二场景元素对应的第三顶点数据序列;
基于所述复制参数确定每个目标过渡帧中所述第二场景元素对应所述第三顶点数据序列的遮挡区域;
将所述第二场景元素的遮挡区域在所述目标过渡帧的上一帧中的顶点坐标数据复制为所述目标过渡帧中的坐标数据。
本发明出了一种用于三维动画的画面数据处理系统及方法,通过获取三维动画的关键帧画面数据,所述关键帧画面数据包括每一个关键帧的时间点及其帧画面内每个场景元素的顶点坐标数据,基于所述关键帧画面数据生成每两个相邻关键帧之间的过渡帧画面数据,从所述过渡帧画面数据中获取每一个过渡帧的关键变化数据,所述关键变化数据包括所述过渡帧相对于上一关键帧的变换矩阵以及所述过渡帧中的场景元素的变化部分的顶点坐标数据,将每一个过渡帧的所述关键变化数据与过渡帧的时间点关联保存,能够解决现有技术中过渡帧的生成数据缺失导致的视频文件精度不足和失真的问题。
附图说明
图1是本发明一个实施例提供的一种用于三维动画的画面数据处理系统的示意图;
图2是本发明一个实施例提供的一种用于三维动画的画面数据处理方法的流程图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
在本发明的描述中,术语“多个”则指两个或两个以上,除非另有明确的限定,术语“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。术语“连接”、“安装”、“固定”等均应做广义理解,例如,“连接”可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。此外,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本说明书的描述中,术语“一个实施例”、“一些实施方式”、“具体实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或实例。而且,描述的具体特征、结构、材料或特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
下面参照附图来描述根据本发明一些实施方式提供的一种用于三维动画的画面数据处理系统及方法。
如图1所示,本发明的第一方面提出了一种用于三维动画的画面数据处理系统,包括:
关键帧画面数据获取模块,用于获取三维动画的关键帧画面数据,所述关键帧画面数据包括每一个关键帧的时间点及其帧画面内每个场景元素的顶点坐标数据;
过渡帧画面数据生成模块,用于基于所述关键帧画面数据生成每两个相邻关键帧之间的过渡帧画面数据;
关键变化数据获取模块,用于从所述过渡帧画面数据中获取每一个过渡帧的关键变化数据,所述关键变化数据包括所述过渡帧相对于上一关键帧的变换矩阵以及所述过渡帧中的场景元素的变化部分的顶点坐标数据;
关键变化数据保存模块,用于将每一个过渡帧的所述关键变化数据与过渡帧的时间点关联保存。
具体的,所述帧画面为三维动画的画面数据中对应某个数据帧所在时刻的瞬时场景画面,每一个帧画面中一般包含若干个场景元素,这些场景元素的立体模型由大量的面(Face)构成,这些面通常由大量顶点(Vertex)及连接这些顶点的边(Edgd)构成的多边形(Polygon)组合而成。所述顶点坐标数据用于描述立体模型的每个顶点在三维空间中的位置信息,通过所述顶点坐标数据可以还原所述三维动画中每个模型的几何结构,即其对应的位置和姿态。
所述关键帧画面数据是建模师在进行动画设计时逐帧输入的数据,具体为选定关键帧对应的时间点,在三维动画的场景画面中放置场景元素并调整位置和姿态,从而形成对应该帧所在时间点的定格画面。与关键帧画面数据相同的是,所述过渡帧画面数据也包括每一个过渡帧的对应的时间点以及其帧画面内每个场景元素的顶点坐标数据。
进一步的,在上述的用于三维动画的画面数据处理系统中,所述过渡帧画面数据生成模块包括:
关键帧确定模块,用于将需要生成过渡帧的两个相邻关键帧确定为第一关键帧和第二关键帧;
关键帧画面数据输入模块,用于输入所述第一关键帧和所述第二关键帧的关键帧画面数据;
场景元素识别模块,用于在所述第二关键帧的帧画面中识别第一场景元素、第二场景元素和第三场景元素,所述第一场景元素为同时存在于所述第一关键帧和所述第二关键帧的帧画面中且差异值大于或等于预设的阈值的场景元素,所述第二场景元素为同时存在于所述第一关键帧和所述第二关键帧的帧画面中且差异值小于预设的阈值的场景元素,所述第三场景元素为存在于所述第二关键帧的帧画面中但不存在于所述第一关键帧的帧画面中的场景元素;
过渡帧数量确定模块,用于根据所述第一关键帧和所述第二关键帧的时间点确定所述第一关键帧和所述第二关键帧之间的过渡帧的数量;
过渡区域数据生成模块,用于生成所述第一场景元素、所述第二场景元素和所述第三场景元素在每一个过渡帧中的过渡区域数据;
所述过渡帧画面数据生成模块还用于基于所述过渡区域数据构建每一个过渡帧的过渡帧画面数据。
应当知道的是,所述第一关键帧和所述第二关键帧并非指代特定的两个关键帧,而是在生成任意两个相邻关键帧之间的过渡帧画面数据时,以第一关键帧和第二关键帧指代两个相邻关键帧的其中一个关键帧。具体的,所述第一关键帧指代相邻关键帧中时间点较早的关键帧,相应的,所述第二关键帧指代其中时间点较晚的关键帧。在上述实施方式的技术方案中,所述过渡帧数量确定模块包括:
三维动画帧率获取模块,用于获取预设的三维动画帧率fps;
时间点获取模块,用于获取所述第一关键帧的时间点taheaf和所述第二关键帧的时间点tafter;
过渡帧数量计算模块,用于计算所述第一关键帧和所述第二关键帧之间的过渡帧的数量:
countinbetweens=(tafter-tahead)·fps。
具体的,所述第一关键帧的帧画面具体为由所述第一关键帧的关键帧画面数据构成的,对应所述第一关键帧所在时间点的定格画面。同理,所述第二关键帧的帧画面具体为由所述第二关键帧的关键帧画面数据构成的,对应所述第二关键帧所在时间点的定格画面。在上述实施方式的技术方案中,当一个场景元素的局部或整体出现在一个关键帧的帧画面中时,则确定该场景元素是否存在于该关键帧的帧画面中。
在本发明一些实施方式的技术方案中,所述用于三维动画的画面数据处理系统还包括:
矩阵生成模块,用于生成用于执行每一个过渡帧相对于所述第一关键帧的位置偏移、缩放比例以及角度偏移变换的平移矩阵、缩放矩阵以及旋转矩阵;
关键变化数据确定模块,用于将每一个过渡帧的所述平移矩阵、所述缩放矩阵以及所述旋转矩阵确定为对应的过渡帧的关键变化数据。
进一步的,在上述的用于三维动画的画面数据处理系统中,所述场景元素识别模块包括:
第三场景元素识别模块,用于在所述第二关键帧的帧画面中识别存在于所述第二关键帧的帧画面中但不存在于所述第一关键帧的帧画面中第三场景元素;
目标场景元素确定模块,用于将所述第二关键帧的帧画面中除所述第三场景元素外的场景元素确定为目标场景元素;
场景参数获取模块,用于获取所述目标场景元素的数量nobject以及预先配置的差异阈值d0;
差异值计算模块,用于遍历每一个目标场景元素以计算每一个目标场景元素在所述第一关键帧和所述第二关键帧之间的差异值dvari,i,其中i∈[1,nobject[;
所述场景元素识别模块还用于根据所述差异值dvari,i以及差异阈值d0的大小将所述目标场景元素确定为第一场景元素或第二场景元素。
具体的,所述场景元素识别模块还包括:
第一场景元素确定模块,用于当dvari,i≥d0时,将所述目标场景元素确定为第一场景元素;
第二场景元素确定模块,用于当dvari,i<d0时,将所述目标场景元素确定为第二场景元素。
进一步的,在上述的用于三维动画的画面数据处理系统中,所述差异值计算模块包括:
顶点数据序列获取模块,用于获取第i个第一场景元素在所述第一关键帧中的第一顶点数据序列和在所述第二关键帧中的第二顶点数据序列;
第三顶点数据序列生成模块,用于根据所述第二顶点数据序列中的顶点与所述第一顶点数据序列的顶点在第i个第一场景元素中的对应关系得到第三顶点数据序列,所述第三顶点数据序列中的顶点为存在于所述第二顶点数据序列中但不存在于所述第一顶点数据序列中的顶点;
遮挡区域识别模块,用于根据所述第三顶点数据序列中的顶点的坐标识别遮挡区域;
遮挡区域参数获取模块,用于获取第i个场景元素的每个遮挡区域所包含的面数nface,k以及每个面的面积sm,k,其中k∈[1,nregion],m∈[1,nface,k],nregion为第i个场景元素中的遮挡区域的数量,nface,k为第k个遮挡区域中的面的数量;
所述差异值计算模块具体用于计算第i个场景元素在所述第一关键帧和所述第二关键帧之间的差异值:
其中α为预先配置的面数差异系数,β为预先配置的面积差异系数。
具体的,在一个场景元素的立体模型制作完成后,用于表示其几何结构的主要要素之一的顶点数量是不变的,每一个顶点及由顶点和其相邻的边构成的面共同构成立体模型的局部结构,因此每一个顶点在场景元素中都是一个独立的存在,通过赋予其唯一标识号以关联保存其不同时刻在三维空间中的坐标数据。所述第一顶点数据序列和所述第二顶点数据序列是第i个场景元素分别在两个不同时刻中各个顶点在场景画面对应的三维空间中的坐标数据。应当知道的是,所述第一顶点数据序列、所述第二顶点数据序列以及所述第三顶点数据序列仅包含第i个场景元素分别在所述第一关键帧或所述第二关键帧中的模型表面可见区域的顶点的坐标数据。因此,根据所述第二顶点数据序列中的顶点与所述第一顶点数据序列的顶点在第i个第一场景元素中的对应关系得到第三顶点数据序列具体为剔除第二顶点数据序列中所包含的,与第一顶点数据序列中任一顶点的唯一标识号相同的顶点的坐标数据,将剩余的顶点的坐标数据构建为第三顶点数据序列。
在上述实施方式的技术方案中,每个面的面积sm,k为相对值,具体的,在所述三维动画中确定一个参考物体的一个参考面,以该参考面在三维动画中的面积为标准面积s0,在该三维动画中,将任意面的面积与该标准面积s0的商作为该面的面积sm,k。应当知道的是,在本发明的技术方案中,当一个遮挡区域中的各个面的面积越大,则表示包含该遮挡区域的场景元素在两个关键帧之间的差异值就越大。同样的,遮挡区域包含的面数越多,则表示该遮挡区域的几何结构越复杂,相应的,包含该遮挡区域的场景元素在两个关键帧之间的差异值就越大。在上述实施方式的技术方案中,面数差异系数α和面积差异系数β的配置主要用于调节面数和面积在差异值计算过程中的权重,同时用于调节差异值的数值范围。
进一步的,在上述的用于三维动画的画面数据处理系统中,所述遮挡区域识别模块包括:
顶点组合识别模块,用于在所述第三顶点数据序列中识别关联同一个面的顶点组合,所述顶点组合中的顶点的数量大于或等于3;
目标面确定模块,用于确定每一个顶点组合对应的目标面,所述目标面为所述顶点组合中的顶点连线包围得到的面;
遮挡区域组合模块,用于组合共边的目标面形成所述遮挡区域。
具体的,关联同一个面的顶点组合具体指的是连接这些顶点的连线为同一个面的边,这里所称的同一个面即所述目标面为构成立体模型最小元素之一,当这些连线跨越了不止一个面时,则不能称这些顶点关联同一个面。在上述实施方式的技术方案中,共边的目标面是指具有相同的一条边相邻的两个目标面,当两个相邻的目标面具有共边时,则这两个目标面能够组成一个连续的区域。
进一步的,在上述的用于三维动画的画面数据处理系统中,所述过渡帧画面数据生成模块还包括:
变化区域识别模块,用于在所述第二关键帧的帧画面中识别每一个第一场景元素的第一变化区域和第二变化区域,所述第一变化区域为在所述第一场景元素上的顶点同时存在于所述第一关键帧的帧画面中的区域,所述第二变化区域为在所述第一场景元素上的顶点不存在于所述第一关键帧的帧画面中的区域;
所述过渡区域数据生成模块包括:
第一过渡区域数据生成模块,用于采用插值模式生成所述第一场景元素的第一变化区域在每一个过渡帧的帧画面中的第一过渡区域数据;
第二过渡区域数据生成模块,用于采用映射模式生成所述第一场景元素的第二变化区域以及所述第三场景元素在每一个过渡帧的帧画面中的第二过渡区域数据;
第三过渡区域数据生成模块,用于采用复制模式生成所述第二场景元素在每一个过渡帧的帧画面中的第三过渡区域数据。
在上述实施方式的技术方案中,基于所述过渡区域数据构建每一个过渡帧的过渡帧画面数据的步骤具体为基于所述第一过渡区域数据、所述第二过渡区域数据以及所述第三过渡区域数据构建每一个过渡帧的过渡帧画面数据。
进一步的,在上述的用于三维动画的画面数据处理系统中,所述第一过渡区域数据生成模块包括:
插值参数确定模块,用于确定插值模式的插值参数,所述插值参数包括所述第一关键帧、所述第二关键帧、目标过渡帧的时间点,每个场景元素对应的第一顶点数据序列以及第二顶点数据序列;
时间比例计算模块,用于计算所述目标过渡帧的时间点相对于所述第一关键帧、所述第二关键帧的时间点的时间比例:
其中ttarget为所述目标过渡帧的时间点,tahead为所述第一关键帧的时间点,tafter为所述第二关键帧的时间点;
坐标数据计算模块,用于根据所述时间比例计算所述第一顶点数据序列的顶点在所述目标过渡帧中的坐标数据:
vtargeti,j=v1i,j·(1-ratiotarget)+v2i,j·ratiotarget,
其中j∈[1,nvertex],nvertex为所述第一场景元素的第一变化区域中的顶点数量,v1i,j为所述第一顶点数据序列中的每个顶点的坐标,v2i,j为所述第二顶点数据序列中的每个顶点坐标。
应当知道的是,上述实施方式仅为本发明提供的一种线性插值计算方法的示例,在本发明其它实施方式的技术方案中,还可以使用类似的思路,将其改成对应的非线性计算方法。
进一步的,在上述的用于三维动画的画面数据处理系统中,所述第二过渡区域数据生成模块包括:
映射参数确定模块,用于确定映射模式的映射参数,所述映射参数包括所述第一关键帧、所述第二关键帧、目标过渡帧的时间点;
场景空间构建模块,用于构建对应所述第一关键帧的时间点的第一场景空间和对应所述第二关键帧的时间点的第二场景空间,所述第一场影空间和所述第二场景空间为立体空间;
立体模型加载模块,用于分别在所述第一场景空间和所述第二场景空间中加载所述第一场景元素和所述经三场景元素的立体模型;
空间姿态计算模块,用于基于所述第一场景元素的第二变化区域和所述第三场景元素在所述第一场景空间和所述第二场景空间中的姿态以及所述第一关键帧、所述第二关键帧、目标过渡帧的时间点计算所述第一场景元素的第二变化区域和所述第三场景元素在所述目标过渡帧的时间点中的空间姿态;
坐标数据计算模块,用于根据所述空间姿态将所述第一场景元素的第二变化区域和所述第三场景元素的顶点在所述目标过渡帧中的坐标数据。
在上述实施方式的技术方案中,采用映射模式来处理所述第一场景元素在所述第一关键帧的帧画面中的遮挡区域以及在所述第一关键帧的帧画面中不可见的第三场景元素。在分别在所述第一场景空间和所述第二场景空间中加载所述第一场景元素和所述经三场景元素的立体模型的步骤中,还包括加载在所述第一关键帧的帧画面中不可见的顶点数据,在所述第一关键帧的帧画面中不可见的顶点数据包括虽然从视角上仍然处于所述第一关键帧的帧画面中,但被其它顶点所构成的面所遮挡的顶点数据,以及所述第一关键帧的时间点时位于所述第一关键帧的帧画面之外,在所述第二关键帧的时间点之前移动进入所述第二关键帧的帧画面内的顶点数据,所述移动包括场景元素本身的移动以及视角的移动。
在本发明一些实施方式的技术方案中,在从所述过渡帧画面数据中获取每一个过渡帧的关键变化数据的步骤之前,还包括将所述第一场景元素的第二变化区域和所述第三场景元素的顶点在所述目标过渡帧中的坐标数据确定为所述目标过渡帧的关键变化数据。
进一步的,在上述的用于三维动画的画面数据处理系统中,所述第三过渡区域数据生成模块包括:
复制参数确定模块,用于确定复制模式的复制参数,所述复制参数包括所述第一关键帧、所述第二关键帧、目标过渡帧的时间点以及所述第二场景元素对应的第三顶点数据序列;
遮挡区域确定模块,用于基于所述复制参数确定每个目标过渡帧中所述第二场景元素对应所述第三顶点数据序列的遮挡区域;
坐标数据复制模块,用于将所述第二场景元素的遮挡区域在所述目标过渡帧的上一帧中的顶点坐标数据复制为所述目标过渡帧中的坐标数据。
在上述实施方式的技术方案中,所述第二场景元素是在所述第一关键帧的时间点与所述第二关键帧的时间点之间变化较小的场景元素,当第二场景元素的遮挡区域的顶点在任一个过渡帧中开始出现时,直接复制上一帧相同位置的顶点坐标数据来作为该遮挡区域对应的顶点在所述目标过渡帧中的坐标数据,即将所述第二场景元素的遮挡区域在所述目标过渡帧的上一帧中的顶点坐标数据复制为所述目标过渡帧中的坐标数据。
在本发明一些实施方式的技术方案中,所述复制参数还包括所述第二场景元素对应的第一顶点数据序列和第二顶点数据序列,在复制模式下,同样采用插值方式来计算所述第一顶点数据序列和所述第二顶点数据序列对应的顶点在目标过渡帧中的坐标数据。
如图2所示,本发明的第二方面提出了一种用于三维动画的画面数据处理方法,包括:
获取三维动画的关键帧画面数据,所述关键帧画面数据包括每一个关键帧的时间点及其帧画面内每个场景元素的顶点坐标数据;
基于所述关键帧画面数据生成每两个相邻关键帧之间的过渡帧画面数据;
从所述过渡帧画面数据中获取每一个过渡帧的关键变化数据,所述关键变化数据包括所述过渡帧相对于上一关键帧的变换矩阵以及所述过渡帧中的场景元素的变化部分的顶点坐标数据;
将每一个过渡帧的所述关键变化数据与过渡帧的时间点关联保存。
具体的,所述帧画面为三维动画的画面数据中对应某个数据帧所在时刻的瞬时场景画面,每一个帧画面中一般包含若干个场景元素,这些场景元素的立体模型由大量的面(Face)构成,这些面通常由大量顶点(Vertex)及连接这些顶点的边(Edgd)构成的多边形(Polygon)组合而成。所述顶点坐标数据用于描述立体模型的每个顶点在三维空间中的位置信息,通过所述顶点坐标数据可以还原所述三维动画中每个模型的几何结构,即其对应的位置和姿态。
所述关键帧画面数据是建模师在进行动画设计时逐帧输入的数据,具体为选定关键帧对应的时间点,在三维动画的场景画面中放置场景元素并调整位置和姿态,从而形成对应该帧所在时间点的定格画面。与关键帧画面数据相同的是,所述过渡帧画面数据也包括每一个过渡帧的对应的时间点以及其帧画面内每个场景元素的顶点坐标数据。
进一步的,在上述的用于三维动画的画面数据处理方法中,基于所述关键帧画面数据生成每两个相邻关键帧之间的过渡帧画面数据的步骤具体包括:
将需要生成过渡帧的两个相邻关键帧确定为第一关键帧和第二关键帧;
输入所述第一关键帧和所述第二关键帧的关键帧画面数据;
在所述第二关键帧的帧画面中识别第一场景元素、第二场景元素和第三场景元素,所述第一场景元素为同时存在于所述第一关键帧和所述第二关键帧的帧画面中且差异值大于或等于预设的阈值的场景元素,所述第二场景元素为同时存在于所述第一关键帧和所述第二关键帧的帧画面中且差异值小于预设的阈值的场景元素,所述第三场景元素为存在于所述第二关键帧的帧画面中但不存在于所述第一关键帧的帧画面中的场景元素;
根据所述第一关键帧和所述第二关键帧的时间点确定所述第一关键帧和所述第二关键帧之间的过渡帧的数量;
生成所述第一场景元素、所述第二场景元素和所述第三场景元素在每一个过渡帧中的过渡区域数据;
基于所述过渡区域数据构建每一个过渡帧的过渡帧画面数据。
应当知道的是,所述第一关键帧和所述第二关键帧并非指代特定的两个关键帧,而是在生成任意两个相邻关键帧之间的过渡帧画面数据时,以第一关键帧和第二关键帧指代两个相邻关键帧的其中一个关键帧。具体的,所述第一关键帧指代相邻关键帧中时间点较早的关键帧,相应的,所述第二关键帧指代其中时间点较晚的关键帧。在上述实施方式的技术方案中,根据所述第一关键帧和所述第二关键帧的时间点确定所述第一关键帧和所述第二关键帧之间的过渡帧的数量的步骤具体包括:
获取预设的三维动画帧率fps;
获取所述第一关键帧的时间点tahead和所述第二关键帧的时间点tafter;
计算所述第一关键帧和所述第二关键帧之间的过渡帧的数量:
countinbetweens=(tafter-tahead)·fps。
具体的,所述第一关键帧的帧画面具体为由所述第一关键帧的关键帧画面数据构成的,对应所述第一关键帧所在时间点的定格画面。同理,所述第二关键帧的帧画面具体为由所述第二关键帧的关键帧画面数据构成的,对应所述第二关键帧所在时间点的定格画面。在上述实施方式的技术方案中,当一个场景元素的局部或整体出现在一个关键帧的帧画面中时,则确定该场景元素是否存在于该关键帧的帧画面中。
在本发明一些实施方式的技术方案中,在基于所述过渡区域数据构建每一个过渡帧的过渡帧画面数据的步骤之后,还包括:
生成用于执行每一个过渡帧相对于所述第一关键帧的位置偏移、缩放比例以及角度偏移变换的平移矩阵、缩放矩阵以及旋转矩阵;
将每一个过渡帧的所述平移矩阵、所述缩放矩阵以及所述旋转矩阵确定为对应的过渡帧的关键变化数据。
进一步的,在上述的用于三维动画的画面数据处理方法中,在所述第二关键帧的帧画面中识别第一场景元素、第二场景元素和第三场景元素的步骤具体包括:
在所述第二关键帧的帧画面中识别存在于所述第二关键帧的帧画面中但不存在于所述第一关键帧的帧画面中第三场景元素;
将所述第二关键帧的帧画面中除所述第三场景元素外的场景元素确定为目标场景元素;
获取所述目标场景元素的数量nobject以及预先配置的差异阈值d0;
遍历每一个目标场景元素以计算每一个目标场景元素在所述第一关键帧和所述第二关键帧之间的差异值dvari,i,其中i∈[1,nobject];
根据所述差异值dvari,i以及差异阈值d0的大小将所述目标场景元素确定为第一场景元素或第二场景元素。
具体的,根据所述差异值dvari,i以及差异阈值d0的大小将所述目标场景元素确定为第一场景元素或第二场景元素的步骤具体包括:
当dvari,i≥d0时,将所述目标场景元素确定为第一场景元素;
当dvari,i<d0时,将所述目标场景元素确定为第二场景元素。
进一步的,在上述的用于三维动画的画面数据处理方法中,遍历每一个第一场景元素以计算每一个第一场景元素在所述第一关键帧和所述第二关键帧之间的差异值dvari,i的步骤具体包括:
获取第i个第一场景元素在所述第一关键帧中的第一顶点数据序列和在所述第二关键帧中的第二顶点数据序列;
根据所述第二顶点数据序列中的顶点与所述第一顶点数据序列的顶点在第i个第一场景元素中的对应关系得到第三顶点数据序列,所述第三顶点数据序列中的顶点为存在于所述第二顶点数据序列中但不存在于所述第一顶点数据序列中的顶点;
根据所述第三顶点数据序列中的顶点的坐标识别遮挡区域;
获取第i个场景元素的每个遮挡区域所包含的面数nface,k以及每个面的面积sm,k,其中k∈[1,nregion],m∈[1,nface,k],nregion为第i个场景元素中的遮挡区域的数量,nface,k为第k个遮挡区域中的面的数量;
计算第i个场景元素在所述第一关键帧和所述第二关键帧之间的差异值:
其中α为预先配置的面数差异系数,β为预先配置的面积差异系数。
具体的,在一个场景元素的立体模型制作完成后,用于表示其几何结构的主要要素之一的顶点数量是不变的,每一个顶点及由顶点和其相邻的边构成的面共同构成立体模型的局部结构,因此每一个顶点在场景元素中都是一个独立的存在,通过赋予其唯一标识号以关联保存其不同时刻在三维空间中的坐标数据。所述第一顶点数据序列和所述第二顶点数据序列是第i个场景元素分别在两个不同时刻中各个顶点在场景画面对应的三维空间中的坐标数据。应当知道的是,所述第一顶点数据序列、所述第二顶点数据序列以及所述第三顶点数据序列仅包含第i个场景元素分别在所述第一关键帧或所述第二关键帧中的模型表面可见区域的顶点的坐标数据。因此,根据所述第二顶点数据序列中的顶点与所述第一顶点数据序列的顶点在第i个第一场景元素中的对应关系得到第三顶点数据序列具体为剔除第二顶点数据序列中所包含的,与第一顶点数据序列中任一顶点的唯一标识号相同的顶点的坐标数据,将剩余的顶点的坐标数据构建为第三顶点数据序列。
在上述实施方式的技术方案中,每个面的面积sm,k为相对值,具体的,在所述三维动画中确定一个参考物体的一个参考面,以该参考面在三维动画中的面积为标准面积s0,在该三维动画中,将任意面的面积与该标准面积s0的商作为该面的面积sm,k。应当知道的是,在本发明的技术方案中,当一个遮挡区域中的各个面的面积越大,则表示包含该遮挡区域的场景元素在两个关键帧之间的差异值就越大。同样的,遮挡区域包含的面数越多,则表示该遮挡区域的几何结构越复杂,相应的,包含该遮挡区域的场景元素在两个关键帧之间的差异值就越大。在上述实施方式的技术方案中,面数差异系数α和面积差异系数β的配置主要用于调节面数和面积在差异值计算过程中的权重,同时用于调节差异值的数值范围。
进一步的,在上述的用于三维动画的画面数据处理方法中,根据所述第三顶点数据序列中的顶点的坐标识别遮挡区域的步骤具体包括:
在所述第三顶点数据序列中识别关联同一个面的顶点组合,所述顶点组合中的顶点的数量大于或等于3;
确定每一个顶点组合对应的目标面,所述目标面为所述顶点组合中的顶点连线包围得到的面;
组合共边的目标面形成所述遮挡区域。
具体的,关联同一个面的顶点组合具体指的是连接这些顶点的连线为同一个面的边,这里所称的同一个面即所述目标面为构成立体模型最小元素之一,当这些连线跨越了不止一个面时,则不能称这些顶点关联同一个面。在上述实施方式的技术方案中,共边的目标面是指具有相同的一条边相邻的两个目标面,当两个相邻的目标面具有共边时,则这两个目标面能够组成一个连续的区域。
进一步的,在上述的用于三维动画的画面数据处理方法中,在所述第二关键帧的帧画面中识别第一场景元素、第二场景元素和第三场景元素的步骤之后,还包括:
在所述第二关键帧的帧画面中识别每一个第一场景元素的第一变化区域和第二变化区域,所述第一变化区域为在所述第一场景元素上的顶点同时存在于所述第一关键帧的帧画面中的区域,所述第二变化区域为在所述第一场景元素上的顶点不存在于所述第一关键帧的帧画面中的区域;
生成所述第一场景元素、所述第二场景元素和所述第三场景元素在每一个过渡帧中的过渡区域数据的步骤具体包括:
采用插值模式生成所述第一场景元素的第一变化区域在每一个过渡帧的帧画面中的第一过渡区域数据;
采用映射模式生成所述第一场景元素的第二变化区域以及所述第三场景元素在每一个过渡帧的帧画面中的第二过渡区域数据;
采用复制模式生成所述第二场景元素在每一个过渡帧的帧画面中的第三过渡区域数据。
在上述实施方式的技术方案中,基于所述过渡区域数据构建每一个过渡帧的过渡帧画面数据的步骤具体为基于所述第一过渡区域数据、所述第二过渡区域数据以及所述第三过渡区域数据构建每一个过渡帧的过渡帧画面数据。
进一步的,在上述的用于三维动画的画面数据处理方法中,采用插值模式生成所述第一场景元素的第一变化区域在每一个过渡帧的帧画面中的第一过渡区域数据的步骤具体包括:
确定插值模式的插值参数,所述插值参数包括所述第一关键帧、所述第二关键帧、目标过渡帧的时间点,每个场景元素对应的第一顶点数据序列以及第二顶点数据序列;
计算所述目标过渡帧的时间点相对于所述第一关键帧、所述第二关键帧的时间点的时间比例:
其中ttarget为所述目标过渡帧的时间点,tahead为所述第一关键帧的时间点,tafter为所述第二关键帧的时间点;
根据所述时间比例计算所述第一顶点数据序列的顶点在所述目标过渡帧中的坐标数据:
vtargeti,j=v1i,j·(1-ratiotarget)+v2i,j·ratiotarget,
其中j∈[1,nvertex],nvertex为所述第一场景元素的第一变化区域中的顶点数量,v1i,j为所述第一顶点数据序列中的每个顶点的坐标,v2i,j为所述第二顶点数据序列中的每个顶点坐标。
应当知道的是,上述实施方式仅为本发明提供的一种线性插值计算方法的示例,在本发明其它实施方式的技术方案中,还可以使用类似的思路,将其改成对应的非线性计算方法。
进一步的,在上述的用于三维动画的画面数据处理方法中,采用映射模式生成所述第一场景元素的第二变化区域以及所述第三场景元素在每一个过渡帧的帧画面中的第二过渡区域数据的步骤具体包括:
确定映射模式的映射参数,所述映射参数包括所述第一关键帧、所述第二关键帧、目标过渡帧的时间点;
构建对应所述第一关键帧的时间点的第一场景空间和对应所述第二关键帧的时间点的第二场景空间,所述第一场影空间和所述第二场景空间为立体空间;
分别在所述第一场景空间和所述第二场景空间中加载所述第一场景元素和所述经三场景元素的立体模型;
基于所述第一场景元素的第二变化区域和所述第三场景元素在所述第一场景空间和所述第二场景空间中的姿态以及所述第一关键帧、所述第二关键帧、目标过渡帧的时间点计算所述第一场景元素的第二变化区域和所述第三场景元素在所述目标过渡帧的时间点中的空间姿态;
根据所述空间姿态将所述第一场景元素的第二变化区域和所述第三场景元素的顶点在所述目标过渡帧中的坐标数据。
在上述实施方式的技术方案中,采用映射模式来处理所述第一场景元素在所述第一关键帧的帧画面中的遮挡区域以及在所述第一关键帧的帧画面中不可见的第三场景元素。在分别在所述第一场景空间和所述第二场景空间中加载所述第一场景元素和所述经三场景元素的立体模型的步骤中,还包括加载在所述第一关键帧的帧画面中不可见的顶点数据,在所述第一关键帧的帧画面中不可见的顶点数据包括虽然从视角上仍然处于所述第一关键帧的帧画面中,但被其它顶点所构成的面所遮挡的顶点数据,以及所述第一关键帧的时间点时位于所述第一关键帧的帧画面之外,在所述第二关键帧的时间点之前移动进入所述第二关键帧的帧画面内的顶点数据,所述移动包括场景元素本身的移动以及视角的移动。
在本发明一些实施方式的技术方案中,在从所述过渡帧画面数据中获取每一个过渡帧的关键变化数据的步骤之前,还包括将所述第一场景元素的第二变化区域和所述第三场景元素的顶点在所述目标过渡帧中的坐标数据确定为所述目标过渡帧的关键变化数据。
进一步的,在上述的用于三维动画的画面数据处理方法中,采用复制模式生成所述第二场景元素在每一个过渡帧的帧画面中的第三过渡区域数据的步骤具体包括:
确定复制模式的复制参数,所述复制参数包括所述第一关键帧、所述第二关键帧、目标过渡帧的时间点以及所述第二场景元素对应的第三顶点数据序列;
基于所述复制参数确定每个目标过渡帧中所述第二场景元素对应所述第三顶点数据序列的遮挡区域;
将所述第二场景元素的遮挡区域在所述目标过渡帧的上一帧中的顶点坐标数据复制为所述目标过渡帧中的坐标数据。
在上述实施方式的技术方案中,所述第二场景元素是在所述第一关键帧的时间点与所述第二关键帧的时间点之间变化较小的场景元素,当第二场景元素的遮挡区域的顶点在任一个过渡帧中开始出现时,直接复制上一帧相同位置的顶点坐标数据来作为该遮挡区域对应的顶点在所述目标过渡帧中的坐标数据,即将所述第二场景元素的遮挡区域在所述目标过渡帧的上一帧中的顶点坐标数据复制为所述目标过渡帧中的坐标数据。
在本发明一些实施方式的技术方案中,所述复制参数还包括所述第二场景元素对应的第一顶点数据序列和第二顶点数据序列,在复制模式下,同样采用插值方式来计算所述第一顶点数据序列和所述第二顶点数据序列对应的顶点在目标过渡帧中的坐标数据。
应当说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
依照本发明的实施例如上文所述,这些实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施例。显然,根据以上描述,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地利用本发明以及在本发明基础上的修改使用。本发明仅受权利要求书及其全部范围和等效物的限制。
Claims (10)
1.一种用于三维动画的画面数据处理系统,其特征在于,包括:
关键帧画面数据获取模块,用于获取三维动画的关键帧画面数据,所述关键帧画面数据包括每一个关键帧的时间点及其帧画面内每个场景元素的顶点坐标数据;
过渡帧画面数据生成模块,用于基于所述关键帧画面数据生成每两个相邻关键帧之间的过渡帧画面数据;
关键变化数据获取模块,用于从所述过渡帧画面数据中获取每一个过渡帧的关键变化数据,所述关键变化数据包括所述过渡帧相对于上一关键帧的变换矩阵以及所述过渡帧中的场景元素的变化部分的顶点坐标数据;
关键变化数据保存模块,用于将每一个过渡帧的所述关键变化数据与过渡帧的时间点关联保存。
2.一种用于三维动画的画面数据处理方法,其特征在于,包括:
获取三维动画的关键帧画面数据,所述关键帧画面数据包括每一个关键帧的时间点及其帧画面内每个场景元素的顶点坐标数据;
基于所述关键帧画面数据生成每两个相邻关键帧之间的过渡帧画面数据;
从所述过渡帧画面数据中获取每一个过渡帧的关键变化数据,所述关键变化数据包括所述过渡帧相对于上一关键帧的变换矩阵以及所述过渡帧中的场景元素的变化部分的顶点坐标数据;
将每一个过渡帧的所述关键变化数据与过渡帧的时间点关联保存。
3.根据权利要求2所述的用于三维动画的画面数据处理方法,其特征在于,基于所述关键帧画面数据生成每两个相邻关键帧之间的过渡帧画面数据的步骤具体包括:
将需要生成过渡帧的两个相邻关键帧确定为第一关键帧和第二关键帧;
输入所述第一关键帧和所述第二关键帧的关键帧画面数据;
在所述第二关键帧的帧画面中识别第一场景元素、第二场景元素和第三场景元素,所述第一场景元素为同时存在于所述第一关键帧和所述第二关键帧的帧画面中且差异值大于或等于预设的阈值的场景元素,所述第二场景元素为同时存在于所述第一关键帧和所述第二关键帧的帧画面中且差异值小于预设的阈值的场景元素,所述第三场景元素为存在于所述第二关键帧的帧画面中但不存在于所述第一关键帧的帧画面中的场景元素;
根据所述第一关键帧和所述第二关键帧的时间点确定所述第一关键帧和所述第二关键帧之间的过渡帧的数量;
生成所述第一场景元素、所述第二场景元素和所述第三场景元素在每一个过渡帧中的过渡区域数据;
基于所述过渡区域数据构建每一个过渡帧的过渡帧画面数据。
4.根据权利要求3所述的用于三维动画的画面数据处理方法,其特征在于,在所述第二关键帧的帧画面中识别第一场景元素、第二场景元素和第三场景元素的步骤具体包括:
在所述第二关键帧的帧画面中识别存在于所述第二关键帧的帧画面中但不存在于所述第一关键帧的帧画面中第三场景元素;
将所述第二关键帧的帧画面中除所述第三场景元素外的场景元素确定为目标场景元素;
获取所述目标场景元素的数量nobject以及预先配置的差异阈值d0;
遍历每一个目标场景元素以计算每一个目标场景元素在所述第一关键帧和所述第二关键帧之间的差异值dvari,i,其中i∈[1,nobject];
根据所述差异值dvari,i以及差异阈值d0的大小将所述目标场景元素确定为第一场景元素或第二场景元素。
5.根据权利要求4所述的用于三维动画的画面数据处理方法,其特征在于,遍历每一个第一场景元素以计算每一个第一场景元素在所述第一关键帧和所述第二关键帧之间的差异值dvari,i的步骤具体包括:
获取第i个第一场景元素在所述第一关键帧中的第一顶点数据序列和在所述第二关键帧中的第二顶点数据序列;
根据所述第二顶点数据序列中的顶点与所述第一顶点数据序列的顶点在第i个第一场景元素中的对应关系得到第三顶点数据序列,所述第三顶点数据序列中的顶点为存在于所述第二顶点数据序列中但不存在于所述第一顶点数据序列中的顶点;
根据所述第三顶点数据序列中的顶点的坐标识别遮挡区域;
获取第i个场景元素的每个遮挡区域所包含的面数nface,k以及每个面的面积sm,k,其中k∈[1,nregion],m∈[1,nface,k],nregion为第i个场景元素中的遮挡区域的数量,nface,k为第k个遮挡区域中的面的数量;
第i个场景元素在所述第一关键帧和所述第二关键帧之间的差异值:
其中α为预先配置的面数差异系数,β为预先配置的面积差异系数。
6.根据权利要求5所述的用于三维动画的画面数据处理方法,其特征在于,根据所述第三顶点数据序列中的顶点的坐标识别遮挡区域的步骤具体包括:
在所述第三顶点数据序列中识别关联同一个面的顶点组合,所述顶点组合中的顶点的数量大于或等于3;
确定每一个顶点组合对应的目标面,所述目标面为所述顶点组合中的顶点连线包围得到的面;
组合共边的目标面形成所述遮挡区域。
7.根据权利要求3所述的用于三维动画的画面数据处理方法,其特征在于,在所述第二关键帧的帧画面中识别第一场景元素、第二场景元素和第三场景元素的步骤之后,还包括:
在所述第二关键帧的帧画面中识别每一个第一场景元素的第一变化区域和第二变化区域,所述第一变化区域为在所述第一场景元素上的顶点同时存在于所述第一关键帧的帧画面中的区域,所述第二变化区域为在所述第一场景元素上的顶点不存在于所述第一关键帧的帧画面中的区域;
生成所述第一场景元素、所述第二场景元素和所述第三场景元素在每一个过渡帧中的过渡区域数据的步骤具体包括:
采用插值模式生成所述第一场景元素的第一变化区域在每一个过渡帧的帧画面中的第一过渡区域数据;
采用映射模式生成所述第一场景元素的第二变化区域以及所述第三场景元素在每一个过渡帧的帧画面中的第二过渡区域数据;
采用复制模式生成所述第二场景元素在每一个过渡帧的帧画面中的第三过渡区域数据。
8.根据权利要求7所述的用于三维动画的画面数据处理方法,其特征在于,采用插值模式生成所述第一场景元素的第一变化区域在每一个过渡帧的帧画面中的第一过渡区域数据的步骤还包括:
确定插值模式的插值参数,所述插值参数包括所述第一关键帧、所述第二关键帧、目标过渡帧的时间点,每个场景元素对应的第一顶点数据序列以及第二顶点数据序列;
计算所述目标过渡帧的时间点相对于所述第一关键帧、所述第二关键帧的时间点的时间比例:
其中ttarget为所述目标过渡帧的时间点,tahead为所述第一关键帧的时间点,tafter为所述第二关键帧的时间点;
根据所述时间比例计算所述第一顶点数据序列的顶点在所述目标过渡帧中的坐标数据:
vtargeti,j=v1i,j·(1-ratiotarget)+v2i,j·ratiotarget,
其中j∈[1,nvertex],nvertex为所述第一场景元素的第一变化区域中的顶点数量,v1i,j为所述第一顶点数据序列中的每个顶点的坐标,v2i,j为所述第二顶点数据序列中的每个顶点坐标。
9.根据权利要求7所述的用于三维动画的画面数据处理方法,其特征在于,采用映射模式生成所述第一场景元素的第二变化区域以及所述第三场景元素在每一个过渡帧的帧画面中的第二过渡区域数据的步骤具体包括:
确定映射模式的映射参数,所述映射参数包括所述第一关键帧、所述第二关键帧、目标过渡帧的时间点;
构建对应所述第一关键帧的时间点的第一场景空间和对应所述第二关键帧的时间点的第二场景空间,所述第一场影空间和所述第二场景空间为立体空间;
分别在所述第一场景空间和所述第二场景空间中加载所述第一场景元素和所述经三场景元素的立体模型;
基于所述第一场景元素的第二变化区域和所述第三场景元素在所述第一场景空间和所述第二场景空间中的姿态以及所述第一关键帧、所述第二关键帧、目标过渡帧的时间点计算所述第一场景元素的第二变化区域和所述第三场景元素在所述目标过渡帧的时间点中的空间姿态;
根据所述空间姿态将所述第一场景元素的第二变化区域和所述第三场景元素的顶点在所述目标过渡帧中的坐标数据。
10.根据权利要求7所述的用于三维动画的画面数据处理方法,其特征在于,采用复制模式生成所述第二场景元素在每一个过渡帧的帧画面中的第三过渡区域数据的步骤具体包括:
确定复制模式的复制参数,所述复制参数包括所述第一关键帧、所述第二关键帧、目标过渡帧的时间点以及所述第二场景元素对应的第三顶点数据序列;
基于所述复制参数确定每个目标过渡帧中所述第二场景元素对应所述第三顶点数据序列的遮挡区域;
将所述第二场景元素的遮挡区域在所述目标过渡帧的上一帧中的顶点坐标数据复制为所述目标过渡帧中的坐标数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311424145.XA CN117315099A (zh) | 2023-10-30 | 2023-10-30 | 一种用于三维动画的画面数据处理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311424145.XA CN117315099A (zh) | 2023-10-30 | 2023-10-30 | 一种用于三维动画的画面数据处理系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117315099A true CN117315099A (zh) | 2023-12-29 |
Family
ID=89246453
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311424145.XA Pending CN117315099A (zh) | 2023-10-30 | 2023-10-30 | 一种用于三维动画的画面数据处理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117315099A (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130300751A1 (en) * | 2010-12-29 | 2013-11-14 | Thomson Licensing | Method for generating motion synthesis data and device for generating motion synthesis data |
US20150071613A1 (en) * | 2012-04-13 | 2015-03-12 | In Situ Media Corporation | Method and system for inserting and/or manipulating dynamic content for digital media post production |
CN111161392A (zh) * | 2019-12-20 | 2020-05-15 | 苏宁云计算有限公司 | 一种视频的生成方法、装置及计算机系统 |
WO2020135538A1 (zh) * | 2018-12-29 | 2020-07-02 | 深圳Tcl新技术有限公司 | 基于场景的图像处理方法、装置、智能终端及存储介质 |
US20200242728A1 (en) * | 2019-01-25 | 2020-07-30 | Beijing Baidu Netcom Science Technology Co., Ltd. | Image warping method and device |
CN111773686A (zh) * | 2020-06-30 | 2020-10-16 | 完美世界(北京)软件科技发展有限公司 | 动画的生成方法和装置、存储介质、电子装置 |
CN114581565A (zh) * | 2022-02-17 | 2022-06-03 | 南方电网数字电网研究院有限公司 | 动画路径可视化编辑方法、装置、计算机设备、存储介质 |
CN114639034A (zh) * | 2022-01-28 | 2022-06-17 | 深圳市大富网络技术有限公司 | 一种基于关键帧的视频生成方法、系统、装置及存储介质 |
CN115082821A (zh) * | 2022-05-31 | 2022-09-20 | 网易(杭州)网络有限公司 | 过渡帧的生成方法、装置、电子设备及存储介质 |
CN116051688A (zh) * | 2022-12-30 | 2023-05-02 | 魔珐(上海)信息科技有限公司 | 过渡动画生成方法及装置、计算机可读存储介质、终端 |
-
2023
- 2023-10-30 CN CN202311424145.XA patent/CN117315099A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130300751A1 (en) * | 2010-12-29 | 2013-11-14 | Thomson Licensing | Method for generating motion synthesis data and device for generating motion synthesis data |
US20150071613A1 (en) * | 2012-04-13 | 2015-03-12 | In Situ Media Corporation | Method and system for inserting and/or manipulating dynamic content for digital media post production |
WO2020135538A1 (zh) * | 2018-12-29 | 2020-07-02 | 深圳Tcl新技术有限公司 | 基于场景的图像处理方法、装置、智能终端及存储介质 |
US20200242728A1 (en) * | 2019-01-25 | 2020-07-30 | Beijing Baidu Netcom Science Technology Co., Ltd. | Image warping method and device |
CN111161392A (zh) * | 2019-12-20 | 2020-05-15 | 苏宁云计算有限公司 | 一种视频的生成方法、装置及计算机系统 |
CN111773686A (zh) * | 2020-06-30 | 2020-10-16 | 完美世界(北京)软件科技发展有限公司 | 动画的生成方法和装置、存储介质、电子装置 |
CN114639034A (zh) * | 2022-01-28 | 2022-06-17 | 深圳市大富网络技术有限公司 | 一种基于关键帧的视频生成方法、系统、装置及存储介质 |
CN114581565A (zh) * | 2022-02-17 | 2022-06-03 | 南方电网数字电网研究院有限公司 | 动画路径可视化编辑方法、装置、计算机设备、存储介质 |
CN115082821A (zh) * | 2022-05-31 | 2022-09-20 | 网易(杭州)网络有限公司 | 过渡帧的生成方法、装置、电子设备及存储介质 |
CN116051688A (zh) * | 2022-12-30 | 2023-05-02 | 魔珐(上海)信息科技有限公司 | 过渡动画生成方法及装置、计算机可读存储介质、终端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11721071B2 (en) | Methods and systems for producing content in multiple reality environments | |
CA2581273C (en) | System and method for processing video images | |
Yang et al. | Real-time consensus-based scene reconstruction using commodity graphics hardware | |
US8655052B2 (en) | Methodology for 3D scene reconstruction from 2D image sequences | |
US8472700B2 (en) | Method and apparatus for creating 3D face model by using multi-view image information | |
Starck et al. | Video-based character animation | |
US20120032948A1 (en) | System and method for processing video images for camera recreation | |
US20080259073A1 (en) | System and method for processing video images | |
JP3870167B2 (ja) | レンダリングシステム、レンダリング方法及びその記録媒体 | |
Colburn et al. | Image-based remodeling | |
Starck et al. | Virtual view synthesis of people from multiple view video sequences | |
Na et al. | Hierarchical retargetting of fine facial motions | |
JP2007507945A (ja) | 立体映像化 | |
JP2002163678A (ja) | 擬似三次元画像生成方法および装置 | |
CN117315099A (zh) | 一种用于三维动画的画面数据处理系统及方法 | |
CA2716257A1 (en) | System and method for interactive painting of 2d images for iterative 3d modeling | |
Eisert et al. | Geometry-assisted image-based rendering for facial analysis and synthesis | |
JP2005092782A (ja) | 3次元モデルの生成方法および装置並びにコンピュータプログラム | |
JP2002312810A (ja) | 合成動画像生成装置および合成動画像生成方法 | |
Mihut et al. | Lighting and Shadow Techniques for Realistic 3D Synthetic Object Compositing in Images | |
EP3009987B1 (en) | Method and system for providing a dynamic appearance to a generic, morphable 3D model | |
Okuya et al. | Reproduction of perspective in cel animation 2D composition for real-time 3D rendering | |
KR20210081030A (ko) | 실시간 영상의 3d 매핑 서비스장치 | |
KR20040000613A (ko) | 컴퓨터 그래픽 모델링 방법 | |
Durand et al. | The Video Mesh: A Data Structure for Image-based Video Editing |
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 |