本公开涉及计算机,具体涉及一种数据压缩方法、装置、计算机设备及存储介质。
背景技术:
1、格子玻尔兹曼(lattice boltzmann method,简称lbm)方法广泛应用于计算流体力学、多相流、湍流等领域。由于格子玻尔兹曼方法应用于的数据例如离散的分布函数(discrete distribution function,简称ddf)数据的数据量巨大,因此,在对lbm方法应用于的研究区域的每个格点的ddf数据进行持久化存储之前,需要对lbm方法应用于的研究区域的每个格点的ddf数据进行压缩。数据用于描述流体的动力学行为。格子玻尔兹曼方法应用于的研究区域的每个格点分别具有ddf数据。每个格点的ddf数据均迭代地更新。由于ddf数据包含丰富的信息例如粒子的速度分布、非平衡态等,因此,ddf数据可以作为涉及流体力学的机器学习模型例如用于流场预测的机器学习模型、用于的流动控制和优化设计的机器学习模型的训练数据。
2、在相关技术中,将对lbm方法应用于的研究区域的每个格点的格子玻尔兹曼方法应用于的数据存储到文件中,使用常用的文件压缩算法例如zip、rar、hdf5、gzip,对文件进行压缩。常用的压缩算法将格子玻尔兹曼方法应用于的数据视为二进制数的序列。由于没有考虑格子玻尔兹曼方法应用于的数据的特性,导致格子玻尔兹曼方法应用于的数据的压缩效果较差。如何提升格子玻尔兹曼方法应用于的数据的压缩效果成为一个需要解决的问题。
技术实现思路
1、有鉴于此,本公开实施例提供了一种数据压缩方法、装置、计算机设备及存储介质。
2、第一方面,本公开实施例提供了一种数据压缩方法,该方法包括:
3、对研究区域进行空间块划分,得到研究区域的所有空间块,所述研究区域包括:目标区域、目标区域的附近区域、其他区域,其他区域为除了目标区域和目标区域的附近区域之外的区域,所述所有空间块包括:目标区域的小空间块、目标区域的附近区域的小空间块,所述其他区域的大空间块,其中,小空间块的体积小于大空间块的体积,小空间块、大空间块分别包括研究区域的多个格点,研究区域的所有格点是对研究区域进行格点划分得到的;
4、对于所述研究区域的至少部分空间块中每个空间块,对所述空间块的目标步格子玻尔兹曼方法应用于的数据进行小波变换,得到所述空间块的目标步小波变换系数数据,其中,所述空间块的目标步格子玻尔兹曼方法应用于的数据包括:所述空间块的每个格点的目标步格子玻尔兹曼方法应用于的数据,所述空间块的目标步小波变换系数数据包括:小波变换系数,目标步为针对所述研究区域的用于更新格子玻尔兹曼方法应用于的数据的多步中任意一步;
5、根据所述至少部分空间块中每个空间块的目标步小波变换系数数据,得到研究区域的目标步经过处理的数据,研究区域的目标步经过处理的数据包括:所述所有空间块的目标步经过处理的数据,其中,根据所述至少部分空间块中每个空间块的目标步小波变换系数数据,得到研究区域的目标步经过处理的数据包括:分别以第一步长对所述所有空间块中至少部分小空间块中每个小空间块的目标步小波变换系数数据进行量化,得到所述至少部分小空间块中每个小空间块的目标步经过处理的数据;分别以第二步长对所述所有空间块中至少部分大空间块中每个大空间块的目标步小波变换系数数据进行量化,得到所述至少部分大空间块中每个大空间块的目标步经过处理的数据;
6、根据研究区域的目标步经过处理的数据,确定研究区域的目标步压缩数据,以及存储研究区域的目标步压缩数据,研究区域的目标步压缩数据包括:所述每个空间块的目标步压缩数据。
7、第二方面,本公开实施例提供了一种数据压缩装置,所述装置包括:
8、划分单元,用于对研究区域进行空间块划分,得到研究区域的所有空间块,所述研究区域包括:目标区域、目标区域的附近区域、其他区域,其他区域为除了目标区域和目标区域的附近区域之外的区域,所述所有空间块包括:目标区域的小空间块、目标区域的附近区域的小空间块,所述其他区域的大空间块,其中,小空间块的体积小于大空间块的体积,小空间块、大空间块分别包括研究区域的多个格点,研究区域的所有格点是对研究区域进行格点划分得到的;
9、小波变换单元,用于对于所述研究区域的至少部分空间块中每个空间块,对所述空间块的目标步格子玻尔兹曼方法应用于的数据进行小波变换,得到所述空间块的目标步小波变换系数数据,其中,所述空间块的目标步格子玻尔兹曼方法应用于的数据包括:所述空间块的每个格点的目标步格子玻尔兹曼方法应用于的数据,所述空间块的目标步小波变换系数数据包括:小波变换系数,目标步为针对所述研究区域的用于更新格子玻尔兹曼方法应用于的数据的多步中任意一步;
10、处理单元,用于根据所述至少部分空间块中每个空间块的目标步小波变换系数数据,得到研究区域的目标步经过处理的数据,研究区域的目标步经过处理的数据包括:所述所有空间块的目标步经过处理的数据,其中,根据所述至少部分空间块中每个空间块的目标步小波变换系数数据,得到研究区域的目标步经过处理的数据包括:分别以第一步长对所述所有空间块中至少部分小空间块中每个小空间块的目标步小波变换系数数据进行量化,得到所述至少部分小空间块中每个小空间块的目标步经过处理的数据;分别以第二步长对所述所有空间块中至少部分大空间块中每个大空间块的目标步小波变换系数数据进行量化,得到所述至少部分大空间块中每个大空间块的目标步经过处理的数据;
11、确定和存储单元,用于根据研究区域的目标步经过处理的数据,确定研究区域的目标步压缩数据,以及存储研究区域的目标步压缩数据,研究区域的目标步压缩数据包括:所述每个空间块的目标步压缩数据。
12、第三方面,本公开实施例提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的方法。
13、第四方面,本公开实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的方法。
14、第五方面,本发明提供了一种计算机程序产品,包括计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的方法。
15、本公开实施例提供的数据压缩方法,在对格子玻尔兹曼方法应用于的数据进行压缩时,考虑了格子玻尔兹曼方法应用于的数据的特性即lbm方法应用于的研究区域中的目标区域和/或目标区域的附近区域的高频信息较多,而远离研究目标的区域中的低频信号占比较多,高频信息较少。根据了格子玻尔兹曼方法应用于的数据的特性,可以将目标区域划分为目标区域的多个小空间块。可以将目标区域的附近区域划分为目标区域的附近区域的多个小空间块,可以将远离目标区域的其他区域划分为其他区域的多个大空间块。分别以第一步长对所有空间块中至少部分小空间块中每个小空间块的目标步小波变换系数数据进行量化,得到该至少部分小空间块中每个小空间块的目标步经过处理的数据;分别以第二步长对该所有空间块中至少部分大空间块中每个大空间块的目标步小波变换系数数据进行量化,得到该至少部分大空间块中每个大空间块的目标步经过处理的数据。从而,在压缩小空间块中的各个格点的格子玻尔兹曼方法应用于的数据的同时,可以保留小空间块中的各个格点的格子玻尔兹曼方法应用于的数据中较多的高频信息,同时,对大空间块中的各个格点的格子玻尔兹曼方法应用于的数据进行较大幅度的压缩即以较大的压缩率进行压缩,可以较大幅度的节省存储空间,最终取得较好的格子玻尔兹曼方法应用于的数据的压缩效果。