三维动画生成的方法和装置的制造方法_3

文档序号:9751733阅读:来源:国知局
骼的垂直距离,根据垂 直距离确定连接三维动画骨骼的特征点对皮肤点的权重系数。如图13所示,为建立的人体 半身三维骨骼示意图,如图14所示,为建立的人体全身三维骨骼示意图。如图15所示,为建 立的狗的三维骨骼示意图。
[0084] 在一个实施例中,如图3所示,步骤S230包括:
[0085]步骤S231,根据主体骨骼特征确定所述三维动画骨骼的影响范围。
[0086] 具体的,根据主体骨骼特征,将模型特征点根据主体的分布连接形成相应的三维 动画骨骼,根据主体骨骼特征确定三维动画骨骼的影响皮肤点范围,三维动画骨骼由模型 特征点连接而成,则位于三维动画骨骼上的模型特征点的影响皮肤点范围就是它所在的三 维动画骨骼的影响皮肤点范围。
[0087] 步骤S232,根据主体骨骼特征确定模型特征点在影响范围内对不同位置的皮肤点 影响的权重系数,其中在确定权重系数时模型特征点对皮肤点的影响大小与两者之间的距 离成反比。
[0088] 具体的,模型特征点对皮肤点的影响权重系数由模型特征点与皮肤点的距离关系 结合主体骨骼特征确定,根据主体骨骼特征,不同位置肌肉的拉伸度不同,如三维动画骨骼 为手臂,则由于手臂上的骨骼运动对肌肉的位伸运动影响很小,所以设置一个较小的主体 骨骼特征权重系数al,再根据皮肤点与三维动画骨骼上的特征点的距离得到距离权重系数 a2,将al与a2相乘得到最终的权重系数。将最终的权重系数表达为以皮肤点和特征点之间 的距离为变量的函数,则在后续生成三维动画时,可直接根据距离大小得到对应的权重系 数。
[0089] 在一个实施例中,如图4所示,步骤S130包括:
[0090]步骤S131,将运动轨迹上的特征点根据深度信息映射到第一三维模型得到模型特 征点的空间三维坐标。
[0091] 具体的,由于运动轨迹由深度图像得到,深度图像包括了深度信息,特征点包括了 三维的空间信息,所以特征点映射到第一三维模型可得到一个空间三维坐标。
[0092] 步骤S132,根据影响权重信息获取模型特征点的第一影响范围,获取第一影响范 围内的第一皮肤点,根据第一皮肤点的原始空间三维坐标和模型特征点的空间三维坐标计 算第一皮肤点与模型特征点的空间位置关系。
[0093] 具体的,影响权重信息包括了各个特征点影响皮肤点的范围,获取第一影响范围 内的第一皮肤点,其它的皮肤点由于在影响范围之后,所以不会受到特征点的影响,如对于 2只手臂的模型,其中一只手臂的运动不会影响另一只手臂上的皮肤点。空间位置关系可根 据需要计算,如获取的权重系数是与皮肤点和模型特征点的距离相关的,则直接根据空间 三维坐标计算皮肤点和模型特征点之间点到点的距离。如获取的权重系数是与皮肤点和不 同模型特征点形成的骨骼距离相关的,则可根据空间三维坐标计算皮肤点至模型特征点形 成的骨骼之间的点到线的距离。
[0094]步骤S133,根据空间位置关系得到第一皮肤点的权重系数。
[0095]具体的,可根据计算出的空间距离得到与距离对应的权重系数作为第一皮肤点的 权重系数。可以理解的是,如果影响第一皮肤点的模型特征点有多个,则分别根据空间位置 关系得到第一皮肤点受到多个模型特征点影响的权重系数,再将不同的权重系数进行加权 计算得到最终的权重系数。
[0096]步骤S134,根据权重系数计算第一皮肤点的更新空间三维坐标,将第一皮肤点由 原始空间三维坐标移动至更新空间三维坐标。
[0097]具体的,特征点的运动轨迹通过映射到第一三维模型得到各个模型特征点的运动 轨迹,根据权重系数和各个模型特征点的运动轨迹的趋势计算第一皮肤点的更新空间坐 标,如模型特征点是向上运动,运动距离为bl,并且权重系数为b2,则得到第一皮肤点的更 新空间坐标为关于bl和b2和原始空间三维坐标的函数,根据函数计算得到更新空间三维坐 标。具体的函数公式可根据需要自定义。连续的皮肤点空间坐标的变化形成了三维动画。如 对于头部模型,当采集的主体深度图像对应为头部转动时,三维动画也跟随着头部转动,如 采集的主体深度图像对应为笑脸时,三维动画也跟随呈现笑脸。
[0098] 在一个实施例中,如图5所示,方法还包括:
[0099] 步骤S310,获取配饰模型,获取模型第一特征点对配饰模型的配饰影响权重信息。
[0100] 具体的,根据配饰模型的种类匹配能影响配饰模型的目标模型特征点,如配饰模 型为帽子,则目标模型特征点为头部模型特征点,如配饰模型为眼镜,则目标模型特征点为 鼻部模型特征点。除了目标模型特征点,其它模型特征点对配饰模型的配饰影响权重系数 为0。影响权重信息包括了模型第一特征点对配饰模型的配饰影响权重系数和影响范围。只 有影响范围内配饰上的点才会受到第一特征点的影响,如帽子只有边缘上的点会受到模型 第一特征点的影响,帽子顶部的点不会受到模型第一特征点的影响。影响权重系数确定了 模型第一特征点运动时,各个模型特征点对配饰模型影响大小,如配饰模型为帽子,帽子距 离头部较近的点的影响权重系数较大。
[0101] 步骤S320,根据模型第一特征点的位置信息和配饰影响权重信息改变配饰模型的 形态,将改变后的配饰模型佩戴至所述第一三维模型对应的位置。
[0102] 具体的,模型第一特征点的位置信息包括两个模型特征点之间的距离和特征点的 移动轨迹,可根据模型第一特征点的位置信息和配饰影响权重信息改变配饰模型的形态, 如大小、位置等。使得改变后的配饰模型与第一三维模型相匹配,从而能将改变后的配饰模 型佩戴至第一三维模型对应的位置。如用户A的头部较宽,则用户A的头部2个模型特征点之 间的距离较大,从而将原始配饰模型,如帽子调大,使得其与用户的头部相匹配。
[0103] 在一个实施例中,所述第一三维模型为头部三维模型,所述第一三维动画为头像 三维动画。
[0104] 具体的,当第一三维模型为头部三维模型时,获取的第一特征点对皮肤点的影响 权重信息会与头部的结构相匹配,根据头部特征点的运动轨迹得到皮肤的运动,从而得到 不同的表情,得到动态的头像三维动画。可用于用户间的视频通话实时生成对应的随人的 表情改变的三维动画,增加通信的趣味性。
[0105] 在一个实施例中,步骤S130包括:判断待生成的三维动画的皮肤点是否为摄像头 采集的深度图像上对应位置的皮肤点,如果是,则直接根据深度图像生成对应位置的第一 三维动画的皮肤点,否则根据运动轨迹和影响权重信息生成第一三维模型对应的第一三维 动画的其它皮肤点。
[0106] 具体的,由于深度图像携带了深度信息,是三维的空间信息,则对于深度图像上的 各个点可直接根据深度信息得到空间位置坐标,从而确定各个皮肤点的位置,如面对摄像 头的那一面的皮肤点在深度图像上有对应的点,则可直接得到这些皮肤点的三维位置,从 而生成对应的三维动画皮肤点。对于摄像头采集不到的部分,背对摄像头的部分,在深度图 像上没有对应的点,则需要根据运动轨迹和影响权重信息生成这些皮肤点。对于有深度信 息的皮肤点,直接根据深度信息生成对应的三维动画,可加快三维动画的生成速度。
[0107] 在一个实施例中,第一主体深度图像为RGBD图像中的深度图像,RGBD图像还包括 对应的彩色图像,第一三维动画为彩色的三维动画。
[0108] 具体的,RGBD图像为摄像机采集的同步的深度图像和彩色图像,由于采集的信息 中包括了彩色图像,并且彩色图像与深度图像的各个点一一对应,生成的三维动画为彩色 的。
[0109] 在一个实施例中,如图6所示,提供了一种三维动画生成的装置,包括:
[0110]深度图像和模型获取模块410,用于获取第一主体深度图像,获取与第一主体深度 图像对应的预先建立的第一三维模型,主体为人体或具有骨骼的动物。
[0111]特征点和权重获取模块420,用于获取第一主体深度图像匹配的第一特征点,将第 一特征点映射至第一三维模型得到对应的模型第一特征点,获取模型第一特征点对皮肤点 的影响权重信息。
[0112]三维动画生成模块430,用于根据第一主体深度图像获取第一特征点的运动轨迹, 根据运动轨迹和影响权重信息生成第一三维模型对应的第一三维动画。
[0113]在一个实施例中,如图7所示,所述装置还包括:
[0114]前处理模块440,用于获取不同形态的主体深度图像,对不同形态的主体深度图像 建立不同的三维模型,设置不同形态的主体深度图像对应的特征点,将特征点映射至三维 模型得到对应的模型特征点,根据模型特征点建立三维模型的三维动画骨骼,根据皮肤点 位置与三维动画骨骼的位置关系确定模型特征点对皮肤点的影响权重信息。
[0115]在一个实施例中,前处理模块440还用于根据主体骨骼特征确定三维动画骨骼的 影响范围,根据主体骨骼特征确定模型特征点在影响范围内对不同位置的皮肤点影响的权 重系数,其中在确定权重系数时模型特征点对皮肤点的影响大小与两者之间的距离成反 比。
[0116] 在一个实施例中,如图8所示,三维动画生成模块430包括:
[0117]特征点坐标单元431,用于将运动轨迹上的特征点根据深度信息映射到第一三维 模型得到模型特征点的空间三维坐标。
[0118] 空间关系计算单元432,用于根据影响权重信息获取模型特征点的第一影响范围, 获取第一影响范围内的第一皮肤点,根据第一皮肤点的原始空间三维坐标和模型特征点的 空间三维坐标计算第一皮肤点与模型特征点的空间位置关系。
[0119] 更新单元433,用于根据空间位置关系得到第一皮肤点的权重系数,根据权重系数 计算第一皮肤
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1