数据压缩方法、装置、电子设备及存储介质制造方法及图纸

技术编号:38205738 阅读:11 留言:0更新日期:2023-07-21 16:52
本发明专利技术涉及数据处理领域,提供了一种数据压缩方法、装置、电子设备及存储介质,所述方法包括:获取预设高度场中的位置依次相邻的第一位置点、第二位置点和第三位置点;根据第一位置点和第二位置点,确定预设高度场的高度变化线;确定高度变化线上与第三位置点对应的预测点;根据预测点对第三位置点的位置数据进行压缩。本发明专利技术实现了在不限制高度场的高度差范围的同时实现有效数据压缩。的同时实现有效数据压缩。的同时实现有效数据压缩。

【技术实现步骤摘要】
数据压缩方法、装置、电子设备及存储介质


[0001]本专利技术涉及数据处理领域,具体而言,涉及一种数据压缩方法、装置、电子设备及存储介质。

技术介绍

[0002]当前游戏引擎中通常使用高度场表示地形的高度,在要表示的地形范围上间隔固定的距离对高度进行采样,就形成了一组高度数据,在计算机中,高度数据通常采用浮点类型的数据表示,当高度场的区域范围比较大时,高度数据的存储需要占用大量的存储空间。

技术实现思路

[0003]本专利技术的目的在于提供了一种数据压缩方法、装置、电子设备及存储介质,其能够有效对高度场的数据进行压缩,以减少高度场数据占用的存储空间。
[0004]为了实现上述目的,本专利技术采用的技术方案如下:
[0005]第一方面,本专利技术提供一种数据压缩方法,所述方法包括:获取预设高度场中的位置依次相邻的第一位置点、第二位置点和第三位置点;根据所述第一位置点和所述第二位置点,确定所述预设高度场的高度变化线;确定所述高度变化线上与所述第三位置点对应的预测点;根据所述预测点对所述第三位置点的位置数据进行压缩。
[0006]可选地,所述第一位置点和第二位置点的横坐标的差值为1,所述第二位置点和所述第三位置点的横坐标的差值为1,所述高度变化线对应高度变化函数,所述确定所述高度变化线上与所述第三位置点对应的预测点的步骤包括:
[0007]依据所述高度变化函数及所述第二位置点,确定所述预测点。
[0008]可选地,所述根据所述预测点对所述第三位置点的位置数据进行压缩的步骤包括:
[0009]获取预设误差范围,所述预设误差范围是根据预设误差和预设字节数确定的,所述预设字节数为用于表示压缩后的位置数据的数据类型占用的字节数、且小于所述第三位置点的位置数据的数据类型占用的字节数;
[0010]计算所述预测点和所述第三位置点的高度差值;
[0011]若所述高度差值处于所述预设误差范围内,则根据所述预设误差范围和预设压缩值之间的映射关系,确定所述高度差值对应的目标预设压缩值,并将所述目标预设压缩值作为所述第三位置点的位置数据的压缩值,所述预设压缩值的数据类型占用的字节数为所述预设字节数。
[0012]可选地,所述方法还包括:
[0013]根据所述预设误差和所述预设字节数,利用公式DIFF=ERROR
×
(2
8b

1),计算所述预设误差范围的最大值,其中,DIFF为所述预设误差范围的最大值,ERROR为所述预设误差,b为所述预设字节数;
[0014]将DIFF的相反数作为所述预设误差范围的最小值。
[0015]可选地,所述预设误差范围包括最大值和最小值,所述根据所述预设误差范围和预设压缩值之间的映射关系,确定所述高度差值对应的目标预设压缩值的步骤包括:
[0016]根据所述预设误差范围和预设压缩值之间的映射关系,利用公式计算所述目标预设压缩值,i为所述目标预设压缩值,f1为所述高度差值,f
min
为所述最小值,f
max
为所述最大值,b为所述预设字节数。
[0017]可选地,所述第三位置点与第四位置点相邻,所述方法还包括:
[0018]获取对所述第三位置点的位置数据进行压缩后的压缩值;
[0019]将所述第三位置点的压缩值进行解压缩,以确定所述第三位置点的还原点;
[0020]根据所述第二位置点和所述还原点对所述第四位置点的位置数据进行压缩。
[0021]可选地,所述将所述第三位置点的压缩值进行解压缩,以确定所述第三位置点的还原点的步骤包括:
[0022]获取预设误差范围,所述预设误差范围是对所述第三位置点的位置数据进行压缩时用的;
[0023]根据所述第三位置点的压缩值及所述预设误差范围,利用公式计算所述第三位置点的压缩值对应的还原值,f2为所述第三位置点的压缩值对应的还原值,i为所述第三位置点的压缩值,f
min
为所述预设误差范围的最小值,f
max
为所述预设误差范围的最大值,b为所述预设字节数;
[0024]将所述第三位置点的压缩值对应的还原值作为所述第三位置点的还原点的位置数据,以确定所述第三位置点的还原点。
[0025]第二方面,本专利技术提供一种数据压缩装置,所述装置包括:
[0026]获取模块,用于获取预设高度场中的位置依次相邻的第一位置点、第二位置点和第三位置点;
[0027]确定模块,用于根据所述第一位置点和所述第二位置点,确定所述预设高度场的高度变化线;
[0028]所述确定模块,还用于确定所述高度变化线上与所述第三位置点对应的预测点;
[0029]压缩模块,用于根据所述预测点对所述第三位置点的位置数据进行压缩。
[0030]第三方面,本专利技术提供一种电子设备,包括处理器和存储器,所述存储器用于存储程序,所述处理器用于在执行所述程序时,实现上述第一方面所述的数据压缩方法。
[0031]第四方面,本专利技术提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述第一方面所述的数据压缩方法。
[0032]与现有技术相比,本实施例首先根据位置相邻的第一位置点和第二位置点,确定预设高度场的高度变化线;然后确定高度变化线上与第二位置点位置相邻的第三位置点对应的预测点;根据预测点对第三位置点的位置数据进行压缩,实现了在不限制高度场的高度差范围的同时实现有效数据压缩。
附图说明
[0033]为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附
图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0034]图1为本专利技术实施例提供的高度场横截面的数据走势示例图。
[0035]图2为图1中矩形框中位置点走势的放大图。
[0036]图3为本专利技术实施例提供的数据压缩方法流程示例图一。
[0037]图4为本专利技术实施例提供的第三位置点及对应预测点的示例图。
[0038]图5为本专利技术实施例提供的数据压缩方法流程示例图二。
[0039]图6为本专利技术实施例提供的数据压缩方法流程示例图三。
[0040]图7为本专利技术实施例提供的第三位置点、预测点及还原点的示例图。
[0041]图8为本专利技术实施例提供的数据压缩装置的方框示意图。
[0042]图9为本专利技术实施例提供的电子设备的方框示意图。
[0043]图标:10

电子设备;11

处理器;12

存储器;13

总线;100

数据压缩装置;110

获取模块;120

确定模块;130...

【技术保护点】

【技术特征摘要】
1.一种数据压缩方法,其特征在于,所述方法包括:获取预设高度场中的位置依次相邻的第一位置点、第二位置点和第三位置点;根据所述第一位置点和所述第二位置点,确定所述预设高度场的高度变化线;确定所述高度变化线上与所述第三位置点对应的预测点;根据所述预测点对所述第三位置点的位置数据进行压缩。2.如权利要求1所述的数据压缩方法,其特征在于,所述第一位置点和第二位置点的横坐标的差值为1,所述第二位置点和所述第三位置点的横坐标的差值为1,所述高度变化线对应高度变化函数,所述确定所述高度变化线上与所述第三位置点对应的预测点的步骤包括:依据所述高度变化函数及所述第二位置点,确定所述预测点。3.如权利要求1所述的数据压缩方法,其特征在于,所述根据所述预测点对所述第三位置点的位置数据进行压缩的步骤包括:获取预设误差范围,所述预设误差范围是根据预设误差和预设字节数确定的,所述预设字节数为用于表示压缩后的位置数据的数据类型占用的字节数、且小于所述第三位置点的位置数据的数据类型占用的字节数;计算所述预测点和所述第三位置点的高度差值;若所述高度差值处于所述预设误差范围内,则根据所述预设误差范围和预设压缩值之间的映射关系,确定所述高度差值对应的目标预设压缩值,并将所述目标预设压缩值作为所述第三位置点的位置数据的压缩值,所述预设压缩值的数据类型占用的字节数为所述预设字节数。4.如权利要求3所述的数据压缩方法,其特征在于,所述方法还包括:根据所述预设误差和所述预设字节数,利用公式DIFF=ERROR
×
(2
8b

1),计算所述预设误差范围的最大值,其中,DIFF为所述预设误差范围的最大值,ERROR为所述预设误差,b为所述预设字节数;将DIFF的相反数作为所述预设误差范围的最小值。5.如权利要求2所述的数据压缩方法,其特征在于,所述预设误差范围包括最大值和最小值,所述根据所述预设误差范围和预设压缩值之间的映射关系,确定所述高度差值对应的目标预设压缩值的步骤包括:根据所述预设误差范围和预设压缩值之间的映射关系,利用公式计算所述目标预...

【专利技术属性】
技术研发人员:罗树权
申请(专利权)人:北京像素软件科技股份有限公司
类型:发明
国别省市:

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

1