[发明专利]数据压缩方法、装置、电子设备及存储介质在审
申请号: | 202211678596.1 | 申请日: | 2022-12-26 |
公开(公告)号: | CN116431587A | 公开(公告)日: | 2023-07-14 |
发明(设计)人: | 罗树权 | 申请(专利权)人: | 北京像素软件科技股份有限公司 |
主分类号: | G06F16/174 | 分类号: | G06F16/174;A63F13/52;A63F13/77 |
代理公司: | 北京超凡宏宇专利代理事务所(特殊普通合伙) 11463 | 代理人: | 徐闻聪 |
地址: | 102200 北京市昌平区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据压缩 方法 装置 电子设备 存储 介质 | ||
本发明涉及数据处理领域,提供了一种数据压缩方法、装置、电子设备及存储介质,所述方法包括:获取预设高度场中的位置依次相邻的第一位置点、第二位置点和第三位置点;根据第一位置点和第二位置点,确定预设高度场的高度变化线;确定高度变化线上与第三位置点对应的预测点;根据预测点对第三位置点的位置数据进行压缩。本发明实现了在不限制高度场的高度差范围的同时实现有效数据压缩。
技术领域
本发明涉及数据处理领域,具体而言,涉及一种数据压缩方法、装置、电子设备及存储介质。
背景技术
当前游戏引擎中通常使用高度场表示地形的高度,在要表示的地形范围上间隔固定的距离对高度进行采样,就形成了一组高度数据,在计算机中,高度数据通常采用浮点类型的数据表示,当高度场的区域范围比较大时,高度数据的存储需要占用大量的存储空间。
发明内容
本发明的目的在于提供了一种数据压缩方法、装置、电子设备及存储介质,其能够有效对高度场的数据进行压缩,以减少高度场数据占用的存储空间。
为了实现上述目的,本发明采用的技术方案如下:
第一方面,本发明提供一种数据压缩方法,所述方法包括:获取预设高度场中的位置依次相邻的第一位置点、第二位置点和第三位置点;根据所述第一位置点和所述第二位置点,确定所述预设高度场的高度变化线;确定所述高度变化线上与所述第三位置点对应的预测点;根据所述预测点对所述第三位置点的位置数据进行压缩。
可选地,所述第一位置点和第二位置点的横坐标的差值为1,所述第二位置点和所述第三位置点的横坐标的差值为1,所述高度变化线对应高度变化函数,所述确定所述高度变化线上与所述第三位置点对应的预测点的步骤包括:
依据所述高度变化函数及所述第二位置点,确定所述预测点。
可选地,所述根据所述预测点对所述第三位置点的位置数据进行压缩的步骤包括:
获取预设误差范围,所述预设误差范围是根据预设误差和预设字节数确定的,所述预设字节数为用于表示压缩后的位置数据的数据类型占用的字节数、且小于所述第三位置点的位置数据的数据类型占用的字节数;
计算所述预测点和所述第三位置点的高度差值;
若所述高度差值处于所述预设误差范围内,则根据所述预设误差范围和预设压缩值之间的映射关系,确定所述高度差值对应的目标预设压缩值,并将所述目标预设压缩值作为所述第三位置点的位置数据的压缩值,所述预设压缩值的数据类型占用的字节数为所述预设字节数。
可选地,所述方法还包括:
根据所述预设误差和所述预设字节数,利用公式DIFF=ERROR×(28b-1),计算所述预设误差范围的最大值,其中,DIFF为所述预设误差范围的最大值,ERROR为所述预设误差,b为所述预设字节数;
将DIFF的相反数作为所述预设误差范围的最小值。
可选地,所述预设误差范围包括最大值和最小值,所述根据所述预设误差范围和预设压缩值之间的映射关系,确定所述高度差值对应的目标预设压缩值的步骤包括:
根据所述预设误差范围和预设压缩值之间的映射关系,利用公式计算所述目标预设压缩值,i为所述目标预设压缩值,f1为所述高度差值,fmin为所述最小值,fmax为所述最大值,b为所述预设字节数。
可选地,所述第三位置点与第四位置点相邻,所述方法还包括:
获取对所述第三位置点的位置数据进行压缩后的压缩值;
将所述第三位置点的压缩值进行解压缩,以确定所述第三位置点的还原点;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京像素软件科技股份有限公司,未经北京像素软件科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211678596.1/2.html,转载请声明来源钻瓜专利网。