论文部分内容阅读
利用可编程图形硬件的高性能浮点运算能力和并行处理能力来加速数据压缩算法已逐步成为数据压缩领域的研究热点。在众多数据压缩方法中,矢量量化因其压缩比高和解码相对简单,吸引了国内外大量学者的研究热情。这些研究主要集中于如何加快码字搜索、如何改进码书生成算法来加速矢量量化,而关于在GPU中实施矢量量化的研究比较少,这是因为矢量量化是一种非并行结构的算法,所以直接将其在GPU中实现并不能起到明显的加速作用。本文研究的核心问题是:根据图形硬件的编程原理,并行化改进矢量量化,优化算法结构,在保证数据信息尽量完整的前提下,充分利用GPU的并行计算能力来加速大规模体数据的压缩编码过程。首先,提出一种根据图像空间相关性来指导码书设计的矢量量化算法。该算法根据体数据在图像空间上存在相关性的特点,在数据预处理阶段,使用图像自相关函数来评价矢量集中每个矢量的自相关性,根据自相关系数的大小将矢量集分成两个子集,使用LBG算法为每个子集设计一个码书。在体数据中,相关性较高的冗余数据通常占有较大的比例。通过实验证明,这种方法可以大幅度减少冗余数据和不需要精细绘制的数据的计算量。其次,结合CUDA编程技术和GPU并行计算原理,提出了一种矢量量化的并行化改进策略。该策略减少了矢量量化的各环节之间以及环节内部的相互依赖,使得在GPU中并行执行矢量量化成为了可能。当原始数据较大时,在LBG算法迭代过程中,CPU与GPU之间的数据传输比较频繁,显著增加了算法的时间开销。为解决这一问题,提出码书自适应的矢量量化算法,无论数据大小,该算法可以保证仅需载入一次数据便可以得出较优的码书。通过对比实验证明,该算法在保证图像重构质量和压缩比的前提下,极大的提高了压缩速度。最后,将码书自适应的矢量量化算法和两种高效矢量量化算法分别应用到本人参与开发的高维地震数据可视化系统的数据处理模块中,通过比较几种方法的压缩效率、压缩比以及图像重构质量等指标得出结论:基于GPU的码书自适应矢量量化算法是一种高效率且低失真的体压缩方法。