用于图形图像访问密集型系统的数据真无损压缩解压方法

文档序号:36334403发布日期:2023-12-13 00:41阅读:30来源:国知局
用于图形图像访问密集型系统的数据真无损压缩解压方法

本发明涉及图形图像访问密集型系统的数据处理技术,特别涉及用于图形图像访问密集型系统的数据真无损压缩解压方法。


背景技术:

1、图形图像访问密集型系统在现代计算机图形处理中扮演着至关重要的角色,例如在图形渲染、游戏开发、虚拟现实等领域。这些系统经常需要频繁地读取和写入argb(alpha-red-green-blue)像素块数据到颜色缓冲区。然而,随着图像分辨率和颜色深度的不断提高,颜色缓冲区的数据传输量也相应增大,导致数据写入和读取的时间开销显著增加。

2、现有技术中,针对图形图像访问密集型系统的处理方法主要有两种。一种是简单地增加颜色缓冲区的带宽,以满足更高分辨率和颜色深度下的数据传输需求。然而,这种方法会带来昂贵的硬件成本,并且随着数据规模的继续增长,仍然难以完全解决数据传输时间延迟的问题。

3、另一种方法是采用数据压缩技术,即在数据传输前对argb像素块数据进行压缩。然而,现有的压缩算法在保持数据完整性的同时,往往会引入一定的数据丢失,这对于要求高质量图形图像显示和处理的应用领域是不可接受的。而且,一些压缩算法的实现较为复杂,对于图形图像访问密集型系统的实时性和效率也存在一定的挑战。


技术实现思路

1、本发明的目的在于克服现有技术缺陷,优化系统的数据传输和处理效率,提高图形图像访问密集型系统的性能和响应速度,提出了一种适用于该类系统的argb数据真无损压缩解压算法。旨在通过在颜色缓冲区写入和读取前对argb像素块数据进行压缩和解压缩,从而降低数据传输量,减少写入和读取数据所需的时间,并提高系统的性能。

2、为了实现上述目的,本发明提出了一种用于图形图像访问密集型系统的数据真无损压缩解压方法,所述方法包括:

3、对图片的argb数据使用基于混合策略的真无损压缩算法压缩后再输入图形图像访问密集型系统的颜色缓冲区;

4、从图形图像访问密集型系统的颜色缓冲区读取压缩后的argb数据,使用基于混合策略的真无损解压算法解压缩后得到原始argb数据。

5、优选的,所述图形图像访问密集型系统频繁读写颜色缓冲区的系统,包括gpu、tpu和/或ai加速器。

6、优选的,所述方法以块数据为最小数据单元,所述块数据为4x4、8x8或16x16大小的像素块。

7、优选的,所述对图片的argb数据使用基于混合策略的真无损压缩算法压缩后再输入图形图像访问密集型系统的颜色缓冲区;具体包括:

8、缓存待压缩的像素块数据;

9、在缓存的数据块中按照从左到右、从上到下的折线形顺序依次读取像素块的每个像素的a分量、r分量、g分量和b分量,得到4个分量队列;对每个分量队列分别进行以下处理:

10、对于每个分量队列,遍历每个待压缩像素n,分别读取待压缩像素的前一个像素n-1、左上方像素n-t-1、右上方像素n-t+1和正上方像素n-t作为邻近像素,用于选择压缩模式和压缩数据;其中t为像素数据块的尺寸,为4、8或16;

11、当像素n的值x与像素n-1的值z相等,使用游程编码模式压缩该像素;否则,分别计算预测值p和预测误差merrval,当预测误差merrval大于127,使用不编码模式压缩像素n;当预测误差merrval的golomb-rice编码位数大于9bit,使用不编码模式压缩像素n;当预测误差不大于127且预测误差的golomb-rice编码位数不大于9bit,则使用预测编码模式压缩像素n。

12、优选的,当读取的待压缩像素在第一行、第一列或最后一列时,需要补全邻近像素,将4x4的像素块扩充为5x6的像素块,将8x8的像素块扩充为9x10的像素块,将16x16的像素块扩充为17x18的像素块;具体是:在像素块的最前面一行填充一行0,将像素块的最后一列复制填充在最后一列的后边,在像素块的第一列前填充对应位置右上方的像素。

13、优选的,所述预测值p为min(z,s),max(z,s)和z+s-c的中位数,其中c为待压缩像素n的左上方像素n-t-1的像素值,s为待压缩像素n的正上方像素n-t的像素值,z为待压缩像素n的前一个像素n-1的像素值;

14、根据下式计算中间变量errval:

15、errval=x-p

16、判断errval是否大于等于0,判断为是,所述预测误差merrval=2*errval,否则,merrval=-2*errval-1。

17、优选的,

18、所述游程编码模式具体包括:在压缩时,若为一组游程编码像素的第一个像素,向压缩数据流输出2bit二进制码00作为游程编码模式标志位;若为一组游程编码像素的最后一个像素,向压缩数据流输出1bit二进制码0;若为一组游程编码像素的其他像素,向压缩数据流输出1bit二进制码1;

19、所述预测编码模式具体包括:在压缩时,先向压缩数据流输出1bit二进制码1作为预测编码模式标志位,再输出待压缩像素预测误差的golomb-rice编码;

20、所述不编码模式具体包括:在压缩时,先向压缩数据流输出2bit二进制码01作为不编码模式标志位,再输出待压缩像素。

21、优选的,所述从图形图像访问密集型系统的颜色缓冲区读取压缩后的argb数据,使用基于混合策略的真无损解压算法解压缩后得到原始argb数据;具体包括:

22、步骤s1)从缓存数据块中逐bit读取待解压数据,根据读取的标志位,确定解压缩模式,当标志位是2bit二进制码00,为游程解压缩模式;当标志位是2bit二进制码01,为不编码解压缩模式,当标志位是1bit二进制码1,为预测解压缩模式;

23、步骤s2)根据解压缩模式,读取相应数量的待解压数据;解压缩得到一个像素的某一颜色分量,转至步骤s1),直至全部待解压数据解压缩完毕,转至步骤s3);

24、步骤s3)将每个像素的四个颜色分量按顺序组装,再将组装后的像素按顺序组装构成一个像素块数据;

25、步骤s4)将全部像素块数据进行组装得到一张图片并输出至外部存储器。

26、优选的,

27、所述游程解压缩模式具体包括:在解压缩时,逐bit读取待解压数据,若读到1bit二进制码1,则继续读取下一bit,直至读到1bit二进制码0,以待解压缩像素的前一个像素的像素值作为解压结果输出,并结束游程编码;

28、所述预测解压缩模式具体包括:在解压时,逐bit读取待解压数据,以golomb-rice方式解压缩,还原预测误差merrval,再使用预测值p和merrval还原待解压像素;

29、所述不编码解压缩模式具体包括:在解压时,读取8bit数据作为解压缩结果输出。

30、另一方面,本发明提出了一种用于图形图像访问密集型系统的数据真无损压缩解压系统,所述系统包括:

31、压缩模块,用于对图片的argb数据使用基于混合策略的真无损压缩算法压缩后再输入图形图像访问密集型系统的颜色缓冲区;

32、解压缩模块,用于从图形图像访问密集型系统的颜色缓冲区读取压缩后的argb数据,使用基于混合策略的真无损解压算法解压缩后得到原始argb数据。

33、与现有技术相比,本发明的优势在于:

34、1、本发明基于多模式混合策略实现,通过灵活选择不同的编码模式,可针对不同情况提高压缩效率和性能,使算法在处理不同类型的argb数据时都能达到较优的压缩结果;

35、2、本发明适合使用高速硬件实现,如流水线、乱序执行、并行扩展等技术,通过充分发挥硬件并行计算能力,可以大幅提高数据处理速度,适应高负载和高要求的图形图像访问密集型系统。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1