一种基于行数据分块重排的图像压缩、解压缩方法及系统与流程

文档序号:30428105发布日期:2022-06-15 15:51阅读:242来源:国知局
一种基于行数据分块重排的图像压缩、解压缩方法及系统与流程

1.本发明属于图像处理技术领域,尤其涉及一种基于行数据分块重排的图像压缩、解压缩方法及系统。


背景技术:

2.众所周知,随着显示技术的进步,在车载显示、近眼显示、消费电子类tv、nb以及手机等所有显示产品中,屏幕的分辨率越来越高,屏幕的刷新率越来越高。这就要求这些芯片内置的图像处理电路,比如本发明所涉及到的图像压缩解压缩电路,具有更高的处理带宽。
3.一般地,可以通过使用更加先进的工艺制程来提升电路性能,这种方法简单有效,但是受限于代工厂的支持以及芯片成本的急剧增加。
4.还可以通过增加图像处理电路的数据通道,即在同一个时钟内处理更多的数据来解决,但是这种方式会极大地增加电路面积(电路面积也是成本),从而增加电路实现如布局布线的难度。而当布局布线成为制约芯片设计实现的主要因素时,这种方法会极大地增加芯片物理实现难度,甚至可能会直接导致芯片物理实现失败。
5.还可以通过修改图像算法,适当减小算法复杂度,适当牺牲图像算法性能,依靠降低图像算法ip的设计复杂度,从而达到缩减电路关键路径的长度,提升电路工作时钟的目的,如中国发明专利专利cn105208394b公开的一种实时数字图像压缩预测方法和系统。
6.因此,如何在不改变图像压缩解压缩算法本身,且不以牺牲图像压缩解压缩性能为代价的前提下,来提升工作时钟频率,是一个亟待解决的问题。


技术实现要素:

7.有鉴于此,本发明的目的之一在于提供一种基于行数据分块重排的图像压缩解压缩方法,在提升工作时钟频率的同时,并不改变图像压缩解压缩算法本身,不以牺牲图像压缩解压缩性能为代价。
8.本发明的另一目的还在于提供一种能够实现上述基于行数据分块重排的图像压缩解压缩方法的系统。
9.为实现上述目的,本发明第一方面提供了一种基于行数据分块重排的图像压缩方法,包括:将每一行的行像素数据分成m段分块数据,将m段所述分块数据进行穿插排序,生成重排序数据,使得所述重排序数据的分块数据中,每个像素数据之间间隔(m-1)个像素数据,m为大于等于2的整数;以m个线程,每个线程为m倍的时钟间隔,分别对所述重排序数据中的行像素数据的各个分块数据进行pipeline dsc压缩,生成重排序压缩数据。
10.本发明第二方面提供了一种基于行数据分块重排的图像解压缩方法,包括:获取每行具有m个分块数据的重排序压缩数据,m为大于等于2的整数;以m个线程,每个线程为m倍的时钟间隔,分别对所述重排序压缩数据中的行像素
数据的各个分块数据进行pipeline dsc解压缩,生成重排序解压缩数据;对所述重排序解压缩数据中的行像素数据进行逆穿插排序,使得逆穿插排序前,间隔(m-1)个像素数据的两个像素数据在逆穿插排序后相邻。
11.本发明第三方面提供了一种基于行数据分块重排的图像压缩解压缩方法,包括:将每一行的行像素数据分成m段分块数据,将m段所述分块数据进行穿插排序,生成重排序数据,使得所述重排序数据的分块数据中,每个像素数据之间间隔(m-1)个像素数据,m为大于等于2的整数;以m个线程,每个线程为m倍的时钟间隔,分别对所述重排序数据中的行像素数据的各个分块数据进行pipeline dsc压缩,生成重排序压缩数据并存储;获取所述重排序压缩数据;以m个线程,每个线程为m倍的时钟间隔,分别对所述重排序压缩数据中的行像素数据的各个分块数据进行pipeline dsc解压缩,生成重排序解压缩数据;对所述重排序解压缩数据中的行像素数据进行逆穿插排序,使得逆穿插排序前,间隔(m-1)个像素数据的两个像素数据在逆穿插排序后相邻。
12.本发明第四方面提供了一种基于行数据分块重排的图像压缩解压缩方法,包括:将每一行的行像素数据分成m段分块数据,将m段所述分块数据进行穿插排序,生成重排序数据,使得所述重排序数据的分块数据中,每个像素数据之间间隔(m-1)个像素数据,m为大于等于2的整数;以m个线程,每个线程为m倍的时钟间隔,分别对所述重排序数据中的行像素数据的各个分块数据进行pipeline dsc压缩,生成重排序压缩数据;对所述重排序压缩数据中的行像素数据进行逆穿插排序,使得逆穿插排序前,间隔(m-1)个像素数据的两个像素数据在逆穿插排序后相邻,生成常规排序压缩数据并存储;对所述常规排序压缩数据进行常规dsc解压缩,生成解压缩数据。
13.本发明第五方面提供了一种基于行数据分块重排的图像压缩解压缩方法,包括:将每一行的行像素数据进行常规dsc压缩,生成常规压缩数据并存储;将所述常规压缩数据的行像素数据分成m段分块数据,将m段所述分块数据进行穿插排序,生成重排序压缩数据,使得所述重排序压缩数据的分块数据中,每个像素数据之间间隔(m-1)个像素数据,m为大于等于2的整数;以m个线程,每个线程为m倍的时钟间隔,分别对所述重排序压缩数据中的行像素数据的各个分块数据进行pipeline dsc解压缩,生成重排序解压缩数据;对所述重排序解压缩数据中的行像素数据进行逆穿插排序,使得逆穿插排序前,间隔(m-1)个像素数据的两个像素数据在逆穿插排序后相邻。
14.本发明第六方面提供了一种基于行数据分块重排的图像压缩解压缩系统,包括:输入行像素缓存器,用于缓存输入的原始图像的行像素数据;像素排序器,用于将每一行的行像素数据分成m段分块数据,将m段所述分块数据进行穿插排序,生成重排序数据,使得所述重排序数据的分块数据中,每个像素数据之间间隔(m-1)个像素数据,m为大于等于2的整数;pipeline dsc压缩器,用于以m个线程,每个线程为m倍的时钟间隔,分别对所述重排序数据中的行像素数据的各个分块数据进行pipeline dsc压缩,生成重排序压缩数据;
图像存储器,用于存储所述重排序压缩数据;pipeline dsc解压缩器,用于以m个线程,每个线程为m倍的时钟间隔,分别对所述重排序压缩数据中的行像素数据的各个分块数据进行pipeline dsc解压缩,生成重排序解压缩数据;像素逆排序器,用于对所述重排序解压缩数据中的行像素数据进行逆穿插排序,使得逆穿插排序前,间隔(m-1)个像素数据的两个像素数据在逆穿插排序后相邻;输出行像素缓存器,用于缓存经过逆穿插排序的重排序解压缩数据,作为输出。
15.本发明第七方面提供了一种基于行数据分块重排的图像压缩解压缩系统,包括:输入行像素缓存器,用于缓存输入的原始图像的行像素数据;像素排序器,用于将每一行的行像素数据分成m段分块数据,将m段所述分块数据进行穿插排序,生成重排序数据,使得所述重排序数据的分块数据中,每个像素数据之间间隔(m-1)个像素数据,m为大于等于2的整数;pipeline dsc压缩器,用于以m个线程,每个线程为m倍的时钟间隔,分别对所述重排序数据中的行像素数据的各个分块数据进行pipeline dsc压缩,生成重排序压缩数据;压缩数据逆排序器,用于对所述重排序压缩数据中的行像素数据进行逆穿插排序,使得逆穿插排序前,间隔(m-1)个像素数据的两个像素数据在逆穿插排序后相邻,生成常规排序压缩数据;图像存储器,用于存储所述常规排序压缩数据;常规dsc解压缩器,用于对所述常规排序压缩数据进行常规dsc解压缩,生成解压缩数据;输出行像素缓存器,用于缓存所述解压缩数据,作为输出。
16.本发明第八方面提供了一种基于行数据分块重排的图像压缩解压缩系统,包括:输入行像素缓存器,用于缓存输入的原始图像的行像素数据;常规dsc压缩器,用于将每一行的行像素数据进行常规dsc压缩,生成常规压缩数据;图像存储器,用于存储所述常规压缩数据;压缩数据排序器,用于将所述常规压缩数据的行像素数据分成m段分块数据,将m段所述分块数据进行穿插排序,生成重排序压缩数据,使得所述重排序压缩数据的分块数据中,每个像素数据之间间隔(m-1)个像素数据,m为大于等于2的整数;pipeline dsc解压缩器,用于以m个线程,每个线程为m倍的时钟间隔,分别对所述重排序压缩数据中的行像素数据的各个分块数据进行pipeline dsc解压缩,生成重排序解压缩数据;像素逆排序器,用于对所述重排序解压缩数据中的行像素数据进行逆穿插排序,使得逆穿插排序前,间隔(m-1)个像素数据的两个像素数据在逆穿插排序后相邻;输出行像素缓存器,用于缓存经过逆穿插排序的重排序解压缩数据,作为输出。
17.本发明第一方面中所公开的一种基于行数据分块重排的图像压缩方法,将行像素数据进行穿插排序生成重排序数据,再输入pipeline dsc压缩器处理。重排序步骤为pipeline dsc压缩算法的电路实现提供了流水线打拍处理(pipeline)的时序空间,pipeline时序空间为mt,也就是说,原来需要在1t内做完的所有的压缩算法的处理步骤,现
在有mt的时间可以完成,能够保持pipeline dsc压缩算法对图像的压缩效果不受任何影响。
18.本发明中第二方面所公开的一种基于行数据分块重排的图像解压缩方法,先对压缩数据进行pipeline dsc解压缩算法,生成重排序解压缩数据,再对重排序解压缩数据进行逆穿插排序,生成与压缩前的行像素数据排序完全一致的行像素。pipeline时序空间为mt,也就是说,原来需要在1t内做完的所有的解压缩算法的处理步骤,现在有mt的时间可以完成,能够保持pipeline dsc解压缩算法对图像的解压缩效果不受任何影响。
19.本发明中第三方面所公开的一种基于行数据分块重排的图像压缩解压缩方法,顺序采用pipeline dsc压缩方法和pipeline dsc解压缩方法;本发明中第四方面所公开的一种基于行数据分块重排的图像压缩解压缩方法,在采用pipeline dsc压缩方法后,需要对pipeline dsc压缩生成的重排序压缩数据进行逆穿插排序,生成常规排序压缩数据,常规排序压缩数据与常规dsc压缩器输出的一行压缩数据的排序完全一致,之后通过常规dsc解压缩进行解压缩;本发明中第五方面所公开的一种基于行数据分块重排的图像压缩解压缩方法,先通过常规dsc压缩方法进行压缩,生成常规压缩数据,之后对常规压缩数据进行穿插排序,生成重排序压缩数据,再对重排序压缩数据进行pipeline dsc压缩处理。
20.本发明中第三方面、第四方面和第五方面所公开的一种基于行数据分块重排的图像压缩解压缩方法,均能够在提升工作时钟频率的同时,并不改变图像压缩解压缩算法本身,不以牺牲图像压缩解压缩性能为代价。
附图说明
21.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
22.图1为一种wqhd图像在手机应用上的四种划分方式的示意图;图2为一种常规dsc压缩解压缩系统的系统框图;图3为本发明所公开的基于行数据分块重排的图像压缩方法的流程示意图;图4为本发明所公开的基于行数据分块重排的图像解压缩方法的流程示意图;图5为本发明第一实施例中所公开的基于行数据分块重排的图像压缩解压缩方法的流程示意图;图6为本发明第一实施例中所公开的基于行数据分块重排的图像压缩解压缩系统的系统框图;图7a为本发明第一实施例中所公开的当m=1时original dsc压缩时序的示意图;图7b为本发明第一实施例中所公开的当m=2时original dsc压缩时序和pipeline dsc压缩时序的对比示意图;图7c为本发明第一实施例中所公开的当m=3时original dsc压缩时序和pipeline dsc压缩时序的对比示意图;图7d为本发明第一实施例中所公开的当m=4时original dsc压缩时序和pipeline dsc压缩时序的对比示意图;
图8a为本发明第一实施例中所公开的当m=1时original dsc解压缩时序的示意图;图8b为本发明第一实施例中所公开的当m=2时original dsc解压缩时序和pipeline dsc解压缩时序的对比示意图;图8c为本发明第一实施例中所公开的当m=3时original dsc解压缩时序和pipeline dsc解压缩时序的对比示意图;图8d为本发明第一实施例中所公开的当m=4时original dsc解压缩时序和pipeline dsc解压缩时序的对比示意图;图9为本发明第二实施例中所公开的基于行数据分块重排的图像压缩解压缩方法的流程示意图;图10为本发明第二实施例中所公开的基于行数据分块重排的图像压缩解压缩系统的系统框图;图11为本发明第三实施例中所公开的基于行数据分块重排的图像压缩解压缩方法的流程示意图;图12为本发明第三实施例中所公开的基于行数据分块重排的图像压缩解压缩系统的系统框图。
具体实施方式
23.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
24.本发明特别适用于基于图像分块(slice based)的压缩解压缩图像处理,比如vesa dsc算法,且slice分块在图像的行方向(h方向)上至少划分为m份 (记为m slice line,本发明适用于m》=2的情形)。vesa dsc算法的特点是,每个slice块各自独立压缩解压缩。在显示领域高速数字接口方面,mipi联盟的mipi标准和vesa联盟旗下的通信接口display port标准,均使用vesa dsc作为其通信接口协议的其中一部分。在集成高刷新率、高分辨率显示模组的高端手机产品中,以及在tv、nb等产品中,国内外知名企业均使用vesa dsc算法。另外,vesa dsc算法的算法复杂度高,电路实现代价高,对时序有很高的要求。尤其是当手机应用中刷新率和分辨率同步提高的场景下,这个问题变得越来越关键。图1所示为一种wqhd图像在手机应用上的四种划分方式(wqhd 1440x2960分辨率),其中m值分别为1、2、3、4,每个slice块的高度为592行。图2所示为一种常规dsc(记为original dsc)压缩解压缩系统。
25.为了便于描述本发明的内容,本发明使用pipeline dsc压缩算法来描述。需要注意的是,将任何一种slice based的压缩算法替换掉pipeline dsc压缩算法,并不影响本发明的实质。本发明中所述的slice line表示每个slice块的一行像素。
26.请参阅图3,本发明所公开的一种基于行数据分块重排的图像压缩方法,包括:将每一行的行像素数据分成m段分块数据,将m段所述分块数据进行穿插排序,生成重排序数据,使得所述重排序数据的分块数据中,每个像素数据之间间隔(m-1)个像素数
据,m为大于等于2的整数;以m个线程,每个线程为m倍的时钟间隔,分别对所述重排序数据中的行像素数据的各个分块数据进行pipeline dsc压缩,生成重排序压缩数据。
27.本发明所公开的基于行数据分块重排的图像压缩方法,将行像素数据通过穿插排序生成重排序数据,再输入pipeline dsc压缩器处理,这就为pipeline dsc压缩算法的电路实现提供了流水线打拍处理(pipeline)的时序空间,pipeline时序空间为mt,也就是说,原来需要在1t内做完的所有的压缩算法的处理步骤,现在有mt的时间可以完成,能够保持pipeline dsc压缩算法对图像的压缩效果不受任何影响。
28.请参阅图4,本发明所公开的一种基于行数据分块重排的图像解压缩方法,包括:获取每行具有m个分块数据的重排序压缩数据,m为大于等于2的整数;以m个线程,每个线程为m倍的时钟间隔,分别对所述重排序压缩数据中的行像素数据的各个分块数据进行pipeline dsc解压缩,生成重排序解压缩数据;对所述重排序解压缩数据中的行像素数据进行逆穿插排序,使得逆穿插排序前,间隔(m-1)个像素数据的两个像素数据在逆穿插排序后相邻。
29.本发明提供的一种基于行数据分块重排的解图像压缩方法,先对压缩数据进行pipeline dsc解压缩算法,生成重排序解压缩数据,再对重排序解压缩数据进行逆穿插排序,生成与压缩前的行像素数据排序完全一致的行像素。pipeline时序空间为mt,也就是说,原来需要在1t内做完的所有的解压缩算法的处理步骤,现在有mt的时间可以完成,能够保持pipeline dsc解压缩算法对图像的解压缩效果不受任何影响。
30.本发明中通过三个具体实施例对本发明中所保护的基于行数据分块重排的图像压缩解压缩方法的方法进行更为详细描述。
31.第一实施例请参阅图5,本实施例中所公开的基于行数据分块重排的图像压缩解压缩方法,包括如下步骤:s1)图像输入:以sacnline的方式,逐行输入像素。
32.s2)像素排序:将每一行的行像素数据分成m段分块数据,将m段分块数据进行穿插排序,生成重排序数据,使得所述重排序数据的分块数据中,每个像素数据之间间隔(m-1)个像素数据,m为大于等于2的整数。
33.s3)图像压缩:以m个线程,每个线程为m倍的时钟间隔,分别对重排序数据中的行像素数据的各个分块数据进行pipeline dsc压缩,生成重排序压缩数据。
34.s4)图像存储:存储重排序压缩数据。
35.s5)图像解压缩:以m个线程,每个线程为m倍的时钟间隔,分别对重排序压缩数据中的行像素数据的各个分块数据进行pipeline dsc解压缩,生成重排序解压缩数据。
36.s6)像素逆排序:对重排序解压缩数据中的行像素数据进行逆穿插排序,使得逆穿插排序前,间隔(m-1)个像素数据的两个像素数据在逆穿插排序后相邻。
37.s7)图像输出:缓存并输出。
38.请参阅图6,一种能够实现本实施例中所公开的基于行数据分块重排的图像压缩解压缩方法的系统,包括:输入行像素缓存器、像素排序器、pipeline dsc压缩器、图像存储器、pipeline dsc解压缩器、像素逆排序器以及输出行像素缓存器。具体地:
输入行像素缓存器:用于缓存输入的原始图像的行像素数据,作为下一级像素排序器的输入行(记为raw line)。
39.像素排序器:本发明的特征就在于将raw line重新排序为remapped line,再输入pipeline dsc压缩器处理。根据m值(要求m 》= 2)将一行raw line的各个像素重新排序。以m=2为例:此时一行raw line像素分为2行slice line,则采取如图7b中所对应的排序方式{raw line in =》 remapped line in},将2行slice line的像素按各自的先后顺序穿插排序,组成新的一行(记为remapped line);以m=3为例:此时一行raw line像素分为3行slice line,则采取如图7c中所对应的排序方式{raw line in =》 remapped line in},将3行slice line的像素按各自的先后顺序穿插排序,组成新的一行remapped line;以m=4为例:此时一行raw line像素分为4行slice line,则采取如图7d中所对应的排序方式{raw line in =》 remapped line in},将4行slice line的像素按各自的先后顺序穿插排序,组成新的一行remapped line。类似的,对于m》4的场景,也可以采取一致的排序方式。
40.pipeline dsc压缩器:为了便于描述本发明的内容,本发明使用pipeline dsc压缩算法做压缩器。需要注意的是,将任何一种slice based的压缩算法替换掉pipeline dsc压缩器,并不影响本发明的实质。
41.pipeline dsc压缩算法对每个slice是独立压缩的,彼此slice之间没有任何依赖关系。如图7a、7b、7c和7d中的original dsc压缩时序所示,将raw line直接送入original dsc压缩器处理获得压缩数据(记为compressed stream),是常规的做法。此时,original dsc压缩器逐个处理输入的raw line像素,因为处理pn像素依赖与对前一个像素pn-1的处理结果,所以original dsc压缩器对每一个输入的raw line像素的所有压缩算法的处理步骤,必须在一个时钟周期之内完成(original timing path为1t),所以这部分数字电路的时序常常成为制约电路设计实现的关键问题。为了解决这个问题,同时还要保持pipeline dsc压缩算法的对图像的压缩效果不受任何影响,先对raw line像素进行重新排序处理,这就为pipeline dsc压缩算法的电路实现提供了流水线打拍处理(pipeline)的时序空间。如图7b中的pipeline dsc压缩时序所示,当m=2时,pipeline时序空间为2t;如图7c中的pipeline dsc压缩时序所示,当m=3时,pipeline时序空间为3t;如图7d中的pipeline dsc压缩时序所示,当m=4时,pipeline时序空间为4t。类似的,对于m》4的场景,pipeline时序空间为mt。m值越高,pipeline的时序空间越高,也就是说,原来需要在1t内做完的所有的压缩算法的处理步骤,现在有mt的时间可以完成。一般在手机产品的实际应用中,通常选取m值为2或4。
42.图像存储器:存储压缩图像,为下一级模块pipeline dsc解压缩器提供压缩数据。
43.pipeline dsc解压缩器:为了便于描述本发明的内容,本发明使用pipeline dsc解压缩算法做解压缩器。需要注意的是,将任何一种slice based的压缩算法替换掉pipeline dsc解压缩器,并不影响本发明的实质。
44.pipeline dsc解压缩算法对每个slice是独立压缩的,彼此slice之间没有任何依赖关系。如图8a、8b、8c和8d中的original dsc解压缩时序所示,将压缩数据(compressed stream)直接送入dsc解压缩器处理获得解压缩像素(记为decompressed pixel line),是常规的做法。此时,dsc解压缩器逐个处理输入的压缩数据,因为处理cn数据依赖与对前一个像素cn-1的处理结果,所以dsc解压缩器对每一个输入的压缩数据的所有解压缩算法的
处理步骤,必须在一个时钟周期之内完成(original timing path为1t),所以这部分数字电路的时序也常常成为制约电路设计实现的关键问题。为了解决这个问题,同时还要保持dsc解压缩算法的对图像的压缩效果不受任何影响,先对压缩数据进行重新排序处理,这就为dsc解压缩算法的电路实现提供了流水线打拍处理(pipeline)的时序空间。如图8b中的pipeline dsc解压缩时序所示,当m=2时,pipeline时序空间为2t;如图8c中的pipeline dsc解压缩时序所示,当m=3时,pipeline时序空间为3t;如图8d中的pipeline dsc解压缩时序所示,当m=4时,pipeline时序空间为4t。类似的,对于m》4的场景,pipeline时序空间为mt。m值越高,pipeline的时序空间越高,也就是说,原来需要在1t内做完的所有的压缩算法的处理步骤,现在有mt的时间可以完成。一般在手机产品的实际应用中,通常选取m值为2或4。
45.像素逆排序器:本发明的特征,就在于将pipeline dsc解压缩器输出的一行像素(记为remapped decompressed pixel line),重新逆排序为跟raw line排序完全一致的一行像素(记为inv-remapped decompressed pixel line)。根据m值(要求m 》= 2)将一行remapped decompressed pixel line的各个像素重新排序。以m=2为例:此时一行remapped decompressed pixel line像素包括2行slice line的像素,则采取如图7b中所对应的逆排序方式{remapped decompressed pixel line out =》 inv-remapped decompressed pixel line out},将2行slice line的像素按各自的先后顺序逆穿插排序,组成新的一行(记为inv-remapped decompressed pixel line);以m=3为例:此时一行remapped decompressed pixel line像素包括3行slice line的像素,则采取如图7c中所对应的逆排序方式{remapped decompressed pixel line out =》 inv-remapped decompressed pixel line out },将3行slice line的像素按各自的先后顺序逆穿插排序,组成新的一行(记为inv-remapped decompressed pixel line);以m=4为例:此时一行remapped decompressed pixel line像素包括4行slice line的像素,则采取如图7d中所对应的逆排序方式{remapped decompressed pixel line out =》 inv-remapped decompressed pixel line out },将4行slice line的像素按各自的先后顺序逆穿插排序,组成新的一行(记为inv-remapped decompressed pixel line)。类似的,对于m》4的场景,也可以采取一致的逆排序方式。
46.输出行像素缓存器:缓存一行像素,作为输出。
47.第二实施例请参阅图9,本实施例中所公开的基于行数据分块重排的图像压缩解压缩方法,包括如下步骤:s1)图像输入:以sacnline的方式,逐行输入像素。
48.s2)像素排序:将每一行的行像素数据分成m段分块数据,将m段分块数据进行穿插排序,生成重排序数据,使得所述重排序数据的分块数据中,每个像素数据之间间隔(m-1)个像素数据,m为大于等于2的整数。
49.s3)图像压缩:以m个线程,每个线程为m倍的时钟间隔,分别对重排序数据中的行像素数据的各个分块数据进行pipeline dsc压缩,生成重排序压缩数据。
50.s4)压缩数据逆排序:对重排序压缩数据中的行像素数据进行逆穿插排序,使得逆穿插排序前,间隔(m-1)个像素数据的两个像素数据在逆穿插排序后相邻,生成常规排序压
缩数据。
51.s5)图像存储:存储常规排序压缩数据。
52.s6)图像解压缩:对常规排序压缩数据进行常规dsc解压缩,生成解压缩数据。
53.s7)图像输出:缓存并输出。
54.本实施例所公开的基于行数据分块重排的图像压缩解压缩方法,在压缩部分采用pipeline dsc压缩,而在解压缩部分采用常规dsc解压缩,因此在pipeline dsc压缩后需要对重排序压缩数据进行逆排序,将pipeline dsc压缩器输出的一行重排序压缩数据,重新逆排序成为跟常规dsc压缩器输出的一行压缩数据排序完全一致的一行压缩数据。
55.对应的,请参阅图10,一种能够实现本实施例所公开的基于行数据分块重排的图像压缩解压缩方法的系统,包括:输入行像素缓存器、像素排序器、pipeline dsc压缩器、压缩数据逆排序器、图像存储器、original dsc解压缩器及输出行像素缓存器。其中,输入行像素缓存器、像素排序器、pipeline dsc压缩器与第一实施例的作用相同。
56.压缩数据逆排序器:本发明的特征,就在于将pipeline dsc压缩器输出的一行压缩数据(记为remapped compressed stream),重新逆排序为跟original dsc压缩器输出的一行压缩数据(compressed stream)排序完全一致的一行压缩数据(记为inv-remapped decompressed stream)。当m = 2,3,4时,分别对应如图7b、7c、7d中所对应的逆排序方式{remapped compressed stream out =》 inv-remapped decompressed stream out}。 类似的,对于m》4的场景,也可以采取一致的逆排序方式。
57.图像存储器:用于存储压缩数据逆排序器生成的常规排序压缩数据。
58.original dsc解压缩器:为常规的dsc解压缩器,为现有技术,在此不再详述。
59.输出行像素缓存器:缓存一行像素,作为输出。
60.第三实施例请参阅图11,本实施例中所公开的基于行数据分块重排的图像压缩解压缩方法,包括如下步骤:s1)图像输入:以sacnline的方式,逐行输入像素。
61.s2)图像压缩:将每一行的行像素数据进行常规dsc压缩,生成常规压缩数据。
62.s3)图像存储:存储常规压缩数据。
63.s4)压缩数据排序:将常规压缩数据的行像素数据分成m段分块数据,将m段分块数据进行穿插排序,生成重排序压缩数据,使得重排序压缩数据的分块数据中,每个像素数据之间间隔(m-1)个像素数据,m为大于等于2的整数。
64.s5)图像解压缩:以m个线程,每个线程为m倍的时钟间隔,分别对重排序压缩数据中的行像素数据的各个分块数据进行pipeline dsc解压缩,生成重排序解压缩数据。
65.s6)像素逆排序:对重排序解压缩数据中的行像素数据进行逆穿插排序,使得逆穿插排序前,间隔(m-1)个像素数据的两个像素数据在逆穿插排序后相邻。
66.s7)图像输出:缓存并输出。
67.本实施例所公开的基于行数据分块重排的图像压缩解压缩方法,在压缩部分采用常规dsc压缩,而在解压缩部分采用pipeline dsc解压缩,因此在常规dsc压缩后需要对常规压缩数据进行排序,将original dsc解压缩器输入的一行压缩数据,重新排序成为跟pipeline dsc解压缩器输入的一行压缩数据排序完全一致的一行压缩数据。
68.对应的,请参阅图12,一种能够实现本实施例所公开的基于行数据分块重排的图像压缩解压缩方法的系统,包括:输入行像素缓存器、original dsc压缩器、图像存储器、压缩数据排序器、pipeline dsc解压缩器、像素逆排序器及输出行像素缓存器。其中,输入行像素缓存器、pipeline dsc解压缩器、像素逆排序器与第一实施例的作用相同。
69.original dsc压缩器:为常规的dsc压缩器,为现有技术,在此不再详述。
70.图像存储器:存储original dsc压缩器生成的常规压缩数据。.压缩数据排序器:本发明的特征,就在于将original dsc解压缩器输入的一行压缩数据(compressed stream),重新排序为跟pipeline dsc解压缩器输入的一行压缩数据(remapped compressed stream)排序完全一致的一行压缩数据。当m = 2,3,4时,分别对应如图8b、8c、8d中所对应的排序方式{compressed stream in =》 remapped decompressed stream in}。 类似的,对于m》4的场景,也可以采取一致的排序方式。
71.输出行像素缓存器:缓存一行像素,作为输出。
72.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
73.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一 致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1