(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202211099566.5
(22)申请日 2022.09.09
(71)申请人 南京英特 克数字科技有限公司
地址 210019 江苏省南京市 建邺区贤坤路
60号仁恒置地广场0 5幢1404室
(72)发明人 沈小英 李海冬
(51)Int.Cl.
G06T 13/20(2011.01)
G06T 7/11(2017.01)
G06T 5/00(2006.01)
G06F 17/18(2006.01)
G06F 17/16(2006.01)
G06V 20/40(2022.01)
(54)发明名称
一种实时生 成动画数据系统、 方法及终端设
备
(57)摘要
本发明公开了一种实时生 成动画数据系统、
方法及终端设备, 包括Bvh(层次包围体)加载模
块: 播放器模块、 关键帧可视化模块和动画合成
模块; Bvh加载模块包 括Bvh文件读取、 Bvh文件 解
析以及绘图; 播放模块包含动画播放、 动画暂停、
动画拖拽; 所述关键帧可视化模块包含关键帧提
取、 绘图; 所述动画合成模块包含贝塞尔插值阶
数选择、 播放功能。 本发明提高了已有的运动捕
捉数据的可复用性, 降低了动画制作成本, 进而
提高创作上的自由度, 丰富了创作的数量和质
量, 进而推动行业的发展和进步。
权利要求书3页 说明书6页 附图6页
CN 115439580 A
2022.12.06
CN 115439580 A
1.一种实时生成动画数据系统、 方法, 其特征在于, 包括Bvh(层次包围体)加载模块: 播
放器模块、 关键帧可视化模块和动画合成模块; Bvh加载模块包括Bvh文件读取、 Bvh文件解
析以及绘图; 播放模块包含动画播放、 动画暂停、 动画拖拽; 所述关键帧可视化模块包含关
键帧提取、 绘图; 所述动画合成模块包 含贝塞尔插值阶数选择、 播 放功能; 还 包括以下步骤:
步骤S1、 在 Bvh加载模块中, 用户打开文件位置;
步骤S2、 读取Bvh文件, 把文件解析成位置矩阵;
步骤S3、 在开始界面中, 将首帧画面加载进入播 放器;
步骤S4、 在播 放器模块中, 对Bvh文件实现播 放、 暂停、 拖拽帧的功能;
步骤S5、 在关键帧可视化模块中, 自定义关键帧的帧数, 实现关键帧的提取;
步骤S6、 将关键帧逐一绘制;
步骤S7、 在动画合成模块中, 提取关键帧的基础上, 选择贝赛尔曲线的阶数, 实现动画
合成, 并且播 放动画。
2.根据权利要求1所述的一种实时生成动画数据系统、 方法, 其特征在于, 还包括, 数据
捕捉的最优分割求 解, 基本步骤如下:
步骤S11、 定义段的直径;
步骤S12、 定义 误差函数;
步骤S13、 生成递推公式;
步骤S14、 迭代求 解。
3.根据权利要求1所述的一种实时生成动画数据系统、 方法, 其特征在于, 还包括, 数据
捕捉的最优分割建模, 具体算法如下:
运动数据捕捉的每一帧都是63维向量, 则运动数据捕捉可以表示为一个n ×63的矩阵,
其中n代表帧数, 即一个包 含n个数据点的时序数据;
给定一个包 含n帧的运动捕捉数据N, 如下 所示:
N=(m1, m2,…, mn)T (3.1)
其中T表示矩阵的转置, mi代表第i帧数据, 可表示成一个63维的向量, N代表由63维向量
组成的矩阵;
其目的是从原 始运动捕捉数据中分割成k个段, 如下 所示:
A(n, k)=( α1, α2,…, αk, αk+1) (3.2)
其中αi代表第i个分段的边界, 并且 l=α1<α1<…<αk<αk+1=n+1, 得到第i个分段就是有帧
αi到帧αi+1‑1构成的, 则各个分段中心可以表示成下式:
B=(b( α1, α2‑1)b( α2, α3‑1),…, b( αk, αk+1‑1)) (3.3)
需要段内均方误差和L(A(n, k) )最小, 则可以形式化 为:
其中各个段的中心如下式所示
4.根据权利要求2所述的一种实时生成动画数据系统、 方法, 其特征在于, 还包括, 数据
捕捉的最优分割建模, 具体算法如下:权 利 要 求 书 1/3 页
2
CN 115439580 A
2一个从第u帧到第v帧的段的直径dist定义为段中各帧到该段平均值的距离, 形式如下
式:
得到:
将上式带入(3.5)得:
假设A*(n, k)是使得将 包含n帧的运动捕捉数据分割成k段的最优分割, 即最小化函数L,
如果k=2, 也就是说将n帧数据分割成两段, 可 得下式:
A*(n, 2)=(1, t, n+1) (4.4)
t为一个在[2,n]的值, 该值使得 下式去的最小值, 即:
minL(A(n, 2) )=dist(1, t ‑1)+dist(t, n) (4.5)
如果k>2, 则需要将原始的运动捕捉数据分成多余2个段, 将其看成是先将前t ‑1帧分
成k‑1个段, 那么剩下的n ‑t+1个帧就作为最后一个 分段, 这样k ‑1+1=k, 获得k个分段, 也就
是当n帧动作捕捉数据分成多于2个段时, 最优分段如下:
A*(n, k)=A*(t‑1, k‑1)∪(n+1) (4.6)
找到一个t∈[2, n], 使得 下式成立
minL(A(n, k) )=L(A*(t‑1, k‑1))+dist(t, n)k>2 (4.7)
得到最优分割算法的递推公式
5.根据权利要求4所述的一种实时生成动画数据系统、 方法, 其特征在于, 最优分割算
法分三步进行:
步骤S51、 计算 直径矩阵, 即对于每一对i, j, 其中i<j, 计算dist(i, j)
步骤S52、 基于步骤S51计算的直径矩阵dist, 计算最优2分割A*(j, 2)的代价L(j, 2), (1
<j≤m), 即将前j帧分割成2段的代价;
步骤S53、 迭代从A*(j, k‑1)的代价 L(j, k‑1)中计算A*(j, k)的代价 L(j, k), (1<j≤m)。
6.根据权利要求1所述的一种实时生成动画数据系统、 方法, 其特征在于, 步骤S5具体
如下:
步骤S61、 特 征提取;
步骤S62、 消除噪声;
步骤S63、 降维;
步骤S64、 余弦距离计算;
步骤S65、 聚类分割;
步骤S66、 关键帧提取。
7.一种实时生成动画数据终端设备, 用于上述权利要求1 ‑6所述的一种实时生成动画权 利 要 求 书 2/3 页
3
CN 115439580 A
3
专利 一种实时生成动画数据系统、方法及终端设备
安全报告 >
其他 >
文档预览
中文文档
16 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共16页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 思考人生 于 2024-03-03 20:13:35上传分享