一种动画数据压缩、解压缩方法及装置制造方法及图纸

技术编号:19135219 阅读:25 留言:0更新日期:2018-10-13 07:59
本发明专利技术涉及计算机技术领域,尤其涉及一种动画数据压缩、解压缩方法及装置,服务器获取动画数据;对动画数据进行如下压缩处理:分别针对每一帧中包含的骨骼动画数据中的骨骼变换矩阵数据进行几何变换,将骨骼变换矩阵数据转换为相应的向量分量;将压缩处理后的动画数据传输给客户端,客户端将压缩后的动画数据进行相应的解压缩,并展示动画,这样,可以对动画数据的每一帧内的骨骼动画数据进行专门的压缩处理,可以有效压缩骨骼动画数据的数量,从而提高了动画数据的压缩率,降低了传输的网络流量。

A method and device for compressing and decompressing animation data

The invention relates to the field of computer technology, in particular to an animation data compression, decompression method and device, the server obtains the animation data, and compresses the animation data as follows: the skeleton transformation matrix data contained in each frame are geometrically transformed, and the skeleton transformation moment is obtained. Matrix data is converted into corresponding vector components; the compressed animation data is transmitted to the client, and the client decompresses the compressed animation data and displays animation. Thus, the animation data in each frame of the animation data can be compressed specially, and the skeleton can be compressed effectively. The number of animation data improves the compression ratio of the animation data and reduces the network traffic of the transmission.

【技术实现步骤摘要】
一种动画数据压缩、解压缩方法及装置
本专利技术涉及计算机
,尤其涉及一种动画数据压缩、解压缩方法及装置。
技术介绍
云游戏是以云计算为基础的游戏方式,游戏响应速度快,提升了用户体验。但是,云游戏运行时需要大量传输游戏动画数据,带宽要求更高,传输的网络流量比较高,因此,需要对动画数据进行压缩。现有技术中,云游戏的动画数据压缩方式为,采用帧间差异(Difference,Diff)压缩算法,利用动画数据的帧与帧之间的数据差异,进行帧间压缩,仅保存相对于前一帧的差异部分,压缩与关键帧相邻的帧的原始数据。但是,这种压缩方式,将一帧内所有数据作为一个整体,只能利用帧与帧之间的差异进行压缩处理,无法对一帧中某部分特定数据进行压缩,压缩效率较低,尤其是对于目前云游戏的动画数据中骨骼动画数据占比很大的情形,由于帧与帧中包含的骨骼动画数据之间的差异比较大,因此,采用帧间Diff压缩算法,骨骼动画数据压缩率很低,也就导致了动画数据压缩率很低,从而造成了传输的网络流量比较高。
技术实现思路
本专利技术实施例提供一种动画数据压缩、解压缩方法及装置,以解决现有技术中动画数据压缩效率较低,从而造成传输的网络流量较高的问题。本专利技术实施例提供的具体技术方案如下:第一方面,提供了一种动画数据压缩方法,包括:服务器获取动画数据;对所述动画数据进行如下压缩处理:分别针对每一帧中包含的骨骼动画数据中的骨骼变换矩阵数据进行几何变换,将骨骼变换矩阵数据转换为相应的向量分量;将压缩处理后的动画数据传输给客户端,以使所述客户端根据压缩后的动画数据展示动画。可选的,所述骨骼动画数据,具体包括:所述动画数据的每一帧中生成骨骼动画的应用程序接口的标识对应的应用程序接口数据。可选的,所述对骨骼动画数据中的骨骼变换矩阵数据进行几何变换,将骨骼变换矩阵数据转换为相应的向量分量之前,进一步包括:确定所述每一帧中的骨骼动画数据中各角色对象与参考位置之间的距离;每间隔预设帧数目,丢弃一帧中距离大于预设阈值的角色对象对应的骨骼动画数据。可选的,所述向量分量,具体包括:一个平移向量、一个缩放向量和一个旋转向量。可选的,所述压缩处理,进一步包括:将进行了几何变换后的骨骼动画数据的类型由单精度浮点型类型转换为半精度浮点型类型。可选的,所述压缩处理,进一步包括:分别对所述动画数据的每一帧进行帧间压缩。可选的,所述的压缩处理,进一步包括:将进行帧间压缩后的动画数据的每一帧压缩为标准的数据压缩格式。第二方面,提供了一种动画数据解压缩方法,包括:接收服务器发送的压缩后的动画数据;其中,所述压缩后的动画数据中骨骼动画数据的骨骼变换矩阵数据的表示形式为:通过几何变换转换的相应的向量分量;对所述动画数据进行如下解压缩处理:分别针对每一帧中包含的骨骼动画数据中的骨骼变换矩阵数据,将骨骼变换矩阵数据由向量分量转换为变换矩阵;展示解压缩处理后的动画数据。可选的,针对骨骼动画数据中的骨骼变换矩阵数据,将骨骼变换矩阵数据由向量分量转换为变换矩阵之前,进一步包括:若确定任一帧中有丢弃骨骼动画数据,则复用所述任一帧的上一帧中相应的骨骼动画数据。第三方面,提供了一种动画数据压缩装置,包括:获取模块,用于获取动画数据;压缩处理模块,用于对所述动画数据进行如下压缩处理:分别针对每一帧中包含的骨骼动画数据中的骨骼变换矩阵数据进行几何变换,将骨骼变换矩阵数据转换为相应的向量分量;发送模块,用于将压缩处理后的动画数据传输给客户端,以使所述客户端根据压缩后的动画数据展示动画。可选的,所述骨骼动画数据,具体包括:所述动画数据的每一帧中生成骨骼动画的应用程序接口的标识对应的应用程序接口数据。可选的,所述对骨骼动画数据中的骨骼变换矩阵数据进行几何变换,将骨骼变换矩阵数据转换为相应的向量分量之前,所述压缩处理模块进一步用于:确定所述每一帧中的骨骼动画数据中各角色对象与参考位置之间的距离;每间隔预设帧数目,丢弃一帧中距离大于预设阈值的角色对象对应的骨骼动画数据。可选的,所述向量分量,具体包括:一个平移向量、一个缩放向量和一个旋转向量。可选的,所述压缩处理模块进一步用于:将进行了几何变换后的骨骼动画数据的类型由单精度浮点型类型转换为半精度浮点型类型。可选的,所述压缩处理模块进一步用于:分别对所述动画数据的每一帧进行帧间压缩。可选的,所述的压缩处理模块进一步用于:将进行帧间压缩后的动画数据的每一帧压缩为标准的数据压缩格式。第四方面,一种动画数据解压缩装置,包括:接收模块,用于接收服务器发送的压缩后的动画数据;其中,所述压缩后的动画数据中骨骼动画数据的骨骼变换矩阵数据的表示形式为:通过几何变换转换的相应的向量分量;解压缩处理模块,用于对所述动画数据进行如下解压缩处理:分别针对每一帧中包含的骨骼动画数据中的骨骼变换矩阵数据,将骨骼变换矩阵数据由向量分量转换为变换矩阵;展示模块,用于展示解压缩处理后的动画数据。可选的,针对骨骼动画数据中的骨骼变换矩阵数据,将骨骼变换矩阵数据由向量分量转换为变换矩阵之前,解压缩处理模块进一步用于:若确定任一帧中有丢弃骨骼动画数据,则复用所述任一帧的上一帧中相应的骨骼动画数据。可选的,还可以包括上述动画数据压缩装置。第五方面,提供了一种电子设备,包括:至少一个存储器,用于存储程序指令;至少一个处理器,用于调用所述存储器中存储的程序指令,按照获得的程序指令执行上述任一种动画数据压缩方法或动画数据解压缩方法。第六方面,一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种动画数据压缩方法或动画数据解压缩方法的步骤。本专利技术实施例中,服务器获取动画数据;对所述动画数据进行如下压缩处理:分别针对每一帧中包含的骨骼动画数据中的骨骼变换矩阵数据进行几何变换,将骨骼变换矩阵数据转换为相应的向量分量;将压缩处理后的动画数据传输给客户端,以使所述客户端根据压缩后的动画数据展示动画,这样,对动画数据的每一帧内的特定数据即骨骼动画数据进行专门的压缩处理,将骨骼变换矩阵数据转换为相应的向量分量,降低了骨骼变换矩阵数据的数据量,从而可以有效降低骨骼动画数据的数据量,提高骨骼动画数据的压缩率,因此可以降低动画数据的数据量,提高动画数据的压缩率,从而降低了整体的传输的网络流量,保证了云游戏的服务器和客户端之间高效流畅的通信。附图说明图1为本专利技术实施例中动画数据压缩及解压缩方法的应用场景架构图;图2为现有技术中动画数据压缩及解压缩方法的流程示意图;图3为现有技术中云游戏网络流量数据组成比例图;图4为本专利技术实施例中动画数据压缩方法的流程图;图5为本专利技术实施例中动画数据解压缩方法的流程图;图6为本专利技术实施例中动画数据压缩及解压缩方法时序图;图7为本专利技术实施例中动画数据压缩装置结构示意图;图8为本专利技术实施例中动画数据解压缩装置结构示意图;图9为本专利技术实施例中动画数据压缩及解压缩装置结构示意图;图10为本专利技术实施例中电子设备结构示意图;图11为本专利技术实施例中客户端结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,并不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有本文档来自技高网...

【技术保护点】
1.一种动画数据压缩方法,其特征在于,包括:服务器获取动画数据;对所述动画数据进行如下压缩处理:分别针对每一帧中包含的骨骼动画数据中的骨骼变换矩阵数据进行几何变换,将骨骼变换矩阵数据转换为相应的向量分量;将压缩处理后的动画数据传输给客户端,以使所述客户端根据压缩后的动画数据展示动画。

【技术特征摘要】
1.一种动画数据压缩方法,其特征在于,包括:服务器获取动画数据;对所述动画数据进行如下压缩处理:分别针对每一帧中包含的骨骼动画数据中的骨骼变换矩阵数据进行几何变换,将骨骼变换矩阵数据转换为相应的向量分量;将压缩处理后的动画数据传输给客户端,以使所述客户端根据压缩后的动画数据展示动画。2.如权利要求1所述的方法,其特征在于,所述骨骼动画数据,具体包括:所述动画数据的每一帧中生成骨骼动画的应用程序接口的标识对应的应用程序接口数据。3.如权利要求1所述的方法,其特征在于,所述对骨骼动画数据中的骨骼变换矩阵数据进行几何变换,将骨骼变换矩阵数据转换为相应的向量分量之前,进一步包括:确定所述每一帧中的骨骼动画数据中各角色对象与参考位置之间的距离;每间隔预设帧数目,丢弃一帧中距离大于预设阈值的角色对象对应的骨骼动画数据。4.如权利要求1所述的方法,其特征在于,所述向量分量,具体包括:一个平移向量、一个缩放向量和一个旋转向量。5.如权利要求1所述的方法,其特征在于,所述压缩处理,进一步包括:将进行了几何变换后的骨骼动画数据的类型由单精度浮点型类型转换为半精度浮点型类型。6.如权利要求1-5任一项所述的方法,其特征在于,所述压缩处理,进一步包括:分别对所述动画数据的每一帧进行帧间压缩。7.如权利要求6所述的方法,其特征在于,所述的压缩处理,进一步包括:将进行帧间压缩后的动画数据的每一帧压缩为标准的数据压缩格式。8.一种动画数据解压缩方法,其特征在于,包括:接收服务器发送的压缩后的动画数据;其中,所述压缩后的动画数据中骨骼动画数据的骨骼变换矩阵数据的表示形式为:通过几何变换转换的相应的向量分量;对所述动画数据进行如下解压缩处理:分别针对每一帧中包含的骨骼动画数据中的骨骼变换矩阵数据,将骨骼变换矩阵数据由向量分量转换为变换矩阵;展示解压缩处理后的动画数据。9.如权利要求8所述的方法,其特征在于,针对骨骼动画数据中的骨骼变换矩阵数据,将骨骼变...

【专利技术属性】
技术研发人员:杜幸阁陈国乐程东哲沈超
申请(专利权)人:深圳市腾讯网络信息技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1