论文部分内容阅读
基于小波变换的图像压缩方法是一直以来都是图像处理领域比较重要的一个研究方向,而基于提升结构的小波变换能够方便的实现从整数到整数的变换。自适应方向提升(AdaptiveDirectionalLifting,ADL)小波能够在分数像素精度上检测图像的纹理方向,并沿纹理方向进行提升小波变换。另一方面,依靠单个核心进行计算的图像压缩技术在效率的提升方面是很有限的,而并行计算是提高处理速度的有效手段。CUDA(ComputeUnifiedDeviceArchitecture)为寻找高性能的并行图像压缩算法开辟了新的途径。由于ADL算法需要在变换过程中进行插值操作,并且还要选择最佳提升方向,因此比一般的提升小波变换计算量要大。针对计算量大这一问题,做了一系列研究和改进:分析了ADL算法的执行流程,并分析了其访存和计算性能;针对访存和计算性能进行了改进,并进行了比较;还分析了ADL算法内在的并行性,然后结合CUDA平台的特性,将ADL变换过程划分为适合并行实现的变换步骤;从线程块和线程两个层次的并行性、不同提升步骤之间的数据依赖等方面考虑,分析了已有算法存在的缺陷,并做出了相应的改进,如采用可分离的核函数避免不同线程之间的不必要的等待时间,合理划分计算任务以消除不同提升步骤之间的数据依赖,采用Slice配置方案提高线程块内线程的并行度等;最后通过实验验证了原有算法和改进算法的效果,实验所得数据表明文中提出的算法,相比原来的算法都取得了更好的加速比。