图像压缩和解压缩方法、图像处理方法及相关装置与流程

文档序号:11157567阅读:896来源:国知局
图像压缩和解压缩方法、图像处理方法及相关装置与制造工艺

本发明涉及半导体显示及图像处理领域,尤其涉及一种图像压缩和解压缩方法、图像处理方法及相关装置。



背景技术:

随着集成电路设计与制造技术、半导体显示技术的发展,对于显示器驱动芯片、时序控制芯片以及其他涉及到面板显示、图像处理等功能的芯片的要求越来越高。在这种情况下,性能良好的实时数字图像压缩、解压缩算法就显得十分重要。

在实时数字图像压缩、解压缩技术中,经过压缩后产生的数据流经过某一途径送入解压缩模块,在这些途径中,若所述数据流发生了错误,将导致解压缩模块无法正确的恢复图像,从而导致图像显示错误。例如,针对液晶面板显示器中由于液晶分子偏转迟滞问题而带来的显示器灰阶响应时间过长的问题,在时序控制芯片或者驱动芯片中会采用过驱动(Over Drive)算法来减小液晶显示器的灰阶响应时间。过驱动算法需要将前一帧图像存储下来,用来作为与当前帧当前像素做比较的参考,然后调整当前帧当前像素的灰阶值大小。过驱动算法一般会将图像经过压缩之后再存储,以降低芯片实现的成本,这就需要在过驱动算法中实现一套实时的图像压缩、解压缩算法。如果压缩数据存在错误,解压缩模块就无法正确地恢复前一帧图像,过驱动算法就会错误地调整当前帧像素的灰阶值大小,这一帧图像就会在显示屏幕上显示出错误的图像,造成诸如噪点,图像抖动,闪屏等现象。



技术实现要素:

有鉴于此,本发明提供一种图像压缩方法和装置、图像解压缩方法和装置以及图像处理方法和装置,可以检测数据流发生错误的情况,进而减少由于数据流发生错误而造成的显示错误。

根据本发明的第一方面,提供一种图像压缩方法,包括:

对原图像数据进行压缩以生成压缩数据;

每生成预定量的压缩数据,针对所述预定量的压缩数据生成校验值;

将所述校验值与所述预定量的压缩数据组合后作为数据流输出。

优选地,所述预定量的压缩数据为根据预定像素数量的原图像数据生成的压缩数据。

优选地,所述预定像素数量根据所述原图像数据的图像分辨率以及预设的压缩率确定。

优选地,所述预定量的压缩数据为预定长度的压缩数据。

优选地,所述校验值包括循环冗余校验CRC值。

根据本发明的第二方面,提供一种图像解压缩方法,包括:

获取数据流,所述数据流包括压缩数据以及与每预定量的压缩数据组合的校验值;

对所述压缩数据进行解压缩以生成解压缩数据并针对每预定量的压缩数据生成校验值;

将针对每预定量的压缩数据生成的校验值和与该预定量的压缩数据组合的校验值相比较;

根据比较结果确定该预定量的压缩数据是否存在错误。

优选地,所述预定量的压缩数据为根据预定像素数量的原图像数据生成的压缩数据。

优选地,所述预定像素数量根据所述原图像数据的图像分辨率以及预设的压缩率确定。

优选地,所述预定量的压缩数据为预定长度的压缩数据。

优选地,所述校验值包括循环冗余校验CRC值。

根据本发明的第三方面,提供一种图像处理方法,包括:

由图像压缩装置对原图像数据进行压缩以生成压缩数据,每生成预定量的压缩数据,针对所述预定量的压缩数据生成对应的校验值,并将所述校验值与所述预定量的压缩数据组合后作为数据流输出;

由图像解压缩装置从所述图像压缩装置获取所述数据流,对所述压缩数据进行解压缩以生成解压缩数据并针对每预定量的压缩数据生成校验值,将针对每预定量的压缩数据生成的校验值和与该预定量的压缩数据组合的校验值相比较,并根据比较结果确定该预定量的压缩数据是否存在错误;

由图像处理装置根据解压缩数据进行图像处理,并且每当预定量的压缩数据存在错误时,跳过与该预定量的压缩数据对应的解压缩数据,继续进行图像处理。

优选地,所述预定量的压缩数据为根据预定像素数量的原图像数据生成的压缩数据。

优选地,所述预定量的压缩数据为预定长度的压缩数据。

优选地,所述校验值包括循环冗余校验CRC值。

优选地,所述图像处理包括过驱动算法处理。

根据本发明的第四方面,提供一种图像压缩装置,包括:

压缩模块,用于对原图像数据进行压缩以生成压缩数据;

计算模块,每生成预定量的压缩数据,用于针对所述预定量的压缩数据生成校验值;

输出模块,用于将所述校验值与所述预定量的压缩数据组合后作为数据流输出。

优选地,所述预定量的压缩数据为根据预定像素数量的原图像数据生成的压缩数据。

优选地,所述预定像素数量根据所述原图像数据的图像分辨率以及预设的压缩率确定。

优选地,所述预定量的压缩数据为预定长度的压缩数据。

优选地,所述校验值包括循环冗余校验CRC值。

根据本发明的第五方面,提供一种图像解压缩装置,包括:

数据分配模块,用于获取数据流,所述数据流包括压缩数据以及与每预定量的压缩数据组合的校验值;

解压缩模块,用于对所述压缩数据进行解压缩;

计算模块,用于针对每预定量的压缩数据生成校验值;

比较模块,用于将针对每预定量的压缩数据生成的校验值和与该预定量的压缩数据组合的校验值相比较,根据比较结果确定该预定量的压缩数据是否存在错误。

优选地,所述预定量的压缩数据为根据预定像素数量的原图像数据生成的压缩数据。

优选地,所述预定像素数量根据所述原图像数据的图像分辨率以及预设的压缩率确定。

优选地,所述预定量的压缩数据为预定长度的压缩数据。

优选地,所述校验值包括循环冗余校验CRC值。

根据本发明的第六方面,提供一种图像处理装置,包括:

根据本发明的第四方面所述的图像压缩装置;

根据本发明的第五方面所述的图像解压缩装置;以及

图像处理装置,用于根据图像解压缩装置获得的解压缩数据进行图像处理,并且每当预定量的压缩数据存在错误时,跳过与该预定量的压缩数据对应的解压缩数据,继续进行图像处理。

优选地,所述图像处理包括过驱动算法处理。

根据本发明提供的方案,以预定量的压缩数据为校验对比的单位,可以降低存储图像时所需的带宽和对存储器容量的要求。通过原图像数据的图像分辨率以及预设的压缩率确定所述预定量的压缩数据中包含的原图像的像素数量,可以在降低存储图像时所需的带宽和对存储器容量的要求的同时,兼顾压缩率。以预定量的压缩数据为校验对比的单位,在校验不一致时,不仅可以提前得知数据流是否发生错误,还可以确定发生错误的预定量的压缩数据,进而避免根据发生错误的预定量的压缩数据进行图像处理后显示错误的图像。

附图说明

通过参照以下附图对本发明实施例的描述,本发明的上述以及其它目的、特征和优点将更为清楚,在附图中:

图1是根据本发明实施例提供的图像压缩方法的流程图;

图2是根据本发明实施例提供的图像解压缩方法的流程图;

图3是根据本发明实施例提供的图像处理方法的流程图;

图4是根据本发明实施例提供的图像压缩装置的结构示意图;

图5是根据本发明实施例提供的图像压缩装置的又一结构示意图;

图6是根据本发明实施例提供的图像解压缩装置的结构示意图;

图7是根据本发明实施例提供的图像解压缩装置的又一结构示意图;

图8是根据本发明实施例提供的图像处理装置的结构示意图;

图9是根据本发明实施例提供的图像处理装置的又一结构示意图。

具体实施方式

以下基于实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。为了避免混淆本发明的实质,公知的方法、过程、流程没有详细叙述。

图1是根据本发明实施例提供的图像压缩方法的流程图,如图1所示,所述方法包括:

在步骤S101中,对原图像数据进行压缩以生成压缩数据。

例如,按照像素排列顺序获取原图像数据的同时对所述原图像数据进行压缩,输出压缩数据流。

在步骤S102中,每生成预定量的压缩数据,针对所述预定量的压缩数据生成校验值。

校验值的生成算法不限定于一种。例如可以通过对所述预定量的压缩数据进行循环冗余校验计算生成校验值,所述循环冗余校验计算以预设的多项式为生成多项式。还可以通过对所述预定量的压缩数据进行奇偶校验等其他校验计算生成校验值。

以上提到的“预定量”可以根据情况而采用不同的标准来度量。作为示例,所述预定量的压缩数据可以为根据预定像素数量的原图像数据生成的压缩数据,其中所述预定的像素数量可以根据原图像数据的图像分辨率以及预设的压缩率确定。在这种情况下,可以每压缩预定像素数量的原图像数据,就相应地针对基于该预定像素数量的原图像数据获得的压缩数据生成校验值。作为另一示例,所述预定量的压缩数据可以为预定长度的压缩数据。在这种情况下,可以每获得预定长度的压缩数据,就相应地针对该预定长度的压缩数据生成校验值。

在步骤S103中,将所述校验值与所述预定量的压缩数据组合后作为数据流输出。

因所述循环冗余校验计算以预设的多项式为生成多项式,所以对应于每预定量的压缩数据的校验值的位数是固定且相同的。例如,在所述预定量的压缩数据为根据预定像素数量的原图像数据生成的压缩数据的情况下,可以以预定数量的像素为一个单元对原图像进行划分。对所述压缩数据进行循环冗余校验计算,同时对压缩的原图像数据对应的像素个数进行统计,当一个单元内的最后一个像素对应的数据被压缩完成时,执行如下操作:保留当前循环冗余校验计算生成的校验值,并将其拼接到所述压缩数据的末尾,连同压缩数据一并输出;重置循环冗余校验计算,对下一个单元的原图像进行压缩得到的压缩数据进行循环冗余校验计算。具体地,所述将其拼接到所述压缩数据的末尾,连同压缩数据一并输出可以是在输出压缩数据后,不间断地紧接着该压缩数据输出与该压缩数据对应的校验值。将所述校验值与所述预定量的压缩数据组合,不限于将所述校验值拼接到所述预定量的压缩数据的末尾。在一些实施例中,即可以将所述校验值置于所述预定量的压缩数据的之前,也可以同所述预定量的压缩数据和其他数据以预定的结构组合在一起,作为数据流输出。

图2是根据本发明实施例提供的图像解压缩方法的流程图,如图2所示,所述方法包括:

在步骤S201中,获取数据流,所述数据流包括压缩数据以及与每预定量的压缩数据组合的校验值。

校验值的生成算法不限定于一种。可以通过对每预定量的压缩数据进行循环冗余校验计算分别生成与每预定量的压缩数据组合的校验值,所述循环冗余校验计算以预设的多项式为生成多项式。还可以通过对所述预定量的压缩数据进行奇偶校验等其他校验计算生成校验值。具体地,所述与每预定量的压缩数据组合的校验值可以是数据流中不间断地紧接在预定量的压缩数据之后的与该压缩数据对应的校验值。

在步骤S202中,对所述压缩数据进行解压缩以生成解压缩数据并针对每预定量的压缩数据生成校验值。

校验值的生成算法不限定于一种。例如,可以通过对所述预定量的压缩数据进行循环冗余校验计算生成校验值,所述循环冗余校验计算以预设的多项式为生成多项式。还可以通过对所述预定量的压缩数据进行奇偶校验等其他校验计算生成校验值。在步骤S202中生成校验值的方式与在步骤S201获取的数据流中校验值的生成方式相同。例如,在循环冗余校验计算中以相同的生成多项式来生成CRC值。

以上提到的“预定量”可以根据情况而采用不同的标准来度量。作为示例,所述预定量的压缩数据可以为根据预定像素数量的原图像数据生成的压缩数据,其中所述预定的像素数量可以根据原图像数据的图像分辨率以及预设的压缩率确定。在这种情况下,可以每解压缩得到预定像素数量的原图像数据,就相应地针对基于该预定像素数量的原图像数据对应的压缩数据生成校验值。作为另一示例,所述预定量的压缩数据可以为预定长度的压缩数据。在这种情况下,可以每解压缩预定长度的压缩数据,就相应地针对该预定长度的压缩数据生成校验值。

对于所述预定量的压缩数据为根据预定像素数量的原图像数据生成的压缩数据的情况,可以对所述压缩数据进行解压缩,并同时统计解压缩后得到的原图像数据中所包含的像素数量,并在解压缩的过程中对所述压缩数据进行循环冗余校验计算生成校验值。每当解压缩后得到的原图像数据中所包含的像素数量达到预定的像素数量时,便停止对所述压缩数据进行循环冗余校验计算,从而针对根据该预定像素数量的原图像数据生成的压缩数据获得了校验值,然后执行步骤S203。

在步骤S203中,判断针对每预定量的压缩数据生成的校验值和与该预定量的压缩数据组合的校验值是否一致,如果二者一致,则执行步骤S204,否则执行步骤S205。

例如,可以将已经生成的校验值和与已经完成解压缩的压缩数据组合的固定位数的数据相比较。因为在步骤202中生成校验值的方式与在步骤201获取的数据流中校验值的生成方式相同,包括以相同的预设的生成多项式来生成CRC校验值,CRC值的位数是固定且相同的,所以只需要读取预定量的压缩数据之后的固定位数的数据即可确定其为校验值,然后和本步骤中进行循环冗余校验计算生成校验值进行比较。接着跳过所述固定位数的数据,重置循环冗余校验计算,对所述固定位数的数据之后的压缩数据进行解压缩和环冗余校验计算,等待继续解压缩后得到的原图像数据所对应的像素数量达到预定的像素数量时,再次执行步骤S203。

在步骤S204中,判定该预定量的压缩数据不存在错误。

例如,比较结果一致说明所述预定量的压缩数据没有在传输过程中发生错误,恢复出的对应的原图像数据可信度较高,从而判定所述预定量的压缩数据不存在错误。在判定不存在错误的情况下,可以输出指示信息,以指示该预定量的压缩数据对应的原图像数据被正确恢复。所述错误是指解压缩时针对的压缩数据与压缩原图像数据时生成的压缩数据间的不一致,这可以是传输或者存储的过程造成的。例如,如果压缩数据通过链接通道传输,可能因为噪声、数据接收等原因,导致压缩数据前后不一致;如果将压缩数据存储到外部SDRAM中,可能因为SDRAM出错、噪声、时序等原因,导致压缩数据前后不一致。如果解压缩时针对的压缩数据与压缩原图像数据时生成的压缩数据间的不一致,那么通过校验值的对比便可以判定该预定量的压缩数据是否存在错误。

在步骤S205中,判定该预定量的压缩数据存在错误。

例如,比较结果为不一致说明所述预定量的压缩数据在传输过程中发生错误,存在错误,难以准确恢复出对应的原图像数据。在这种情况下可以输出指示信息以指示该预定量的压缩数据对应的原图像数据未被正确恢复。

在步骤S204或步骤S205中可以将相关指示信息连同对应的原图像数据一同输出,重置循环冗余校验计算,重新开始对获取的数据流进行循环冗余校验计算。

图3是根据本发明实施例提供的图像处理方法的流程图,如图3所示,所述方法包括:

在步骤S301中,对原图像数据进行压缩以生成压缩数据。

在步骤S302中,每生成预定量的压缩数据,针对所述预定量的压缩数据生成校验值。

校验值的生成算法不限定于一种。例如可以通过对所述预定量的压缩数据进行循环冗余校验计算生成校验值,所述循环冗余校验计算以预设的多项式为生成多项式。还可以通过对所述预定量的压缩数据进行奇偶校验等其他校验计算生成校验值。

以上提到的“预定量”可以根据情况而采用不同的标准来度量。作为示例,所述预定量的压缩数据可以为与预定像素数量的原图像数据对应的压缩数据,其中所述预定的像素数量可以根据原图像数据的图像分辨率以及预设的压缩率确定。在这种情况下,可以每压缩预定像素数量的原图像数据,就相应地针对基于该预定像素数量的原图像数据获得的压缩数据生成校验值。作为另一示例,所述预定量的压缩数据可以为预定长度的压缩数据。在这种情况下,可以每获得预定长度的压缩数据,就相应地针对该预定长度的压缩数据生成校验值。

在步骤S303中,将所述校验值与所述预定量的压缩数据组合后作为数据流输出。

因所述循环冗余校验计算以预设的多项式为生成多项式,所以对应于每预定量的压缩数据的校验值的位数是固定且相同的。例如,在所述预定量的压缩数据为与预定像素数量的原图像数据对应的压缩数据的情况下,可以以预定数量的像素为一个单元对原图像进行划分。对所述压缩数据进行循环冗余校验计算,同时对压缩的原图像数据对应的像素个数进行统计,当一个单元内的最后一个像素对应的数据被压缩完成时,执行如下操作:保留当前循环冗余校验计算生成的校验值,并将其拼接到所述压缩数据的末尾,连同压缩数据一并输出;重置循环冗余校验计算,对下一个单元的原图像进行压缩得到的压缩数据进行循环冗余校验计算。具体地,所述将其拼接到所述压缩数据的末尾,连同压缩数据一并输出可以是在输出压缩数据后,不间断地紧接着该压缩数据输出与该压缩数据对应的校验值。将所述校验值与所述预定量的压缩数据组合,不限于将所述校验值拼接到所述预定量的压缩数据的末尾。在一些实施例中,即可以将所述校验值置于所述预定量的压缩数据的之前,也可以同所述预定量的压缩数据和其他数据以预定的结构组合在一起,作为数据流输出。

以上步骤S301至S303可以由图像压缩装置来执行。

在步骤S304中,获取所述数据流。例如,可以从生成该数据流的图像压缩装置来获取。

在步骤S305中,对所述压缩数据进行解压缩以生成解压缩数据并针对每预定量的压缩数据生成校验值。

校验值的生成算法不限定于一种。例如,可以通过对所述预定量的压缩数据进行循环冗余校验计算生成校验值,所述循环冗余校验计算以预设的多项式为生成多项式。还可以通过对所述预定量的压缩数据进行奇偶校验等其他校验计算生成校验值。在步骤S302中生成校验值的方式与在步骤S305中生成校验值的方式相同。例如,在循环冗余校验计算中以相同的生成多项式来生成CRC值。

以上提到的“预定量”可以根据情况而采用不同的标准来度量。作为示例,所述预定量的压缩数据可以为与预定像素数量的原图像数据对应的压缩数据,其中所述预定的像素数量可以根据原图像数据的图像分辨率以及预设的压缩率确定。在这种情况下,可以每解压缩得到预定像素数量的原图像数据,就相应地针对基于该预定像素数量的原图像数据对应的压缩数据生成校验值。作为另一示例,所述预定量的压缩数据可以为预定长度的压缩数据。在这种情况下,可以每解压缩预定长度的压缩数据,就相应地针对该预定长度的压缩数据生成校验值。

对于所述预定量的压缩数据与预定像素数量的原图像数据对应的情况,可以对所述压缩数据进行解压缩,并同时统计解压缩后得到的原图像数据中所包含的像素数量,并在解压缩的过程中对所述压缩数据进行循环冗余校验计算生成校验值。每当解压缩后得到的原图像数据中所包含的像素数量达到预定的像素数量时,便停止对所述压缩数据进行循环冗余校验计算,执行步骤S306。具体地,可以对获取的数据流中的压缩数据进行循环冗余校验计算,同时对所述压缩数据进行解压缩,恢复出一个个原图像的像素对应的数据,存入缓存器中,并对恢复出来的原图像数据对应的像素个数进行统计,每当预定像素数量的原图像数据被恢复时,重置循环冗余校验计算,重新开始对获取的数据流进行循环冗余校验计算。

在步骤S306中,判断针对每预定量的压缩数据生成的校验值和与该预定量的压缩数据组合的校验值是否一致。如果二者不一致,表明该预定量的压缩数据存在错误,执行步骤S307,如果二者一致,表明该预定量的压缩数据没有在传输过程中发生错误,恢复出的原图像数据可信度较高,执行步骤S308。

所述错误是指解压缩时针对的压缩数据与压缩原图像数据时生成的压缩数据间的不一致,这可以是传输或者存储的过程造成的。例如,如果压缩数据通过链接通道传输,可能因为噪声、数据接收等原因,导致压缩数据前后不一致;如果将压缩数据存储到外部SDRAM中,可能因为SDRAM出错、噪声、时序等原因,导致压缩数据前后不一致。如果解压缩时针对的压缩数据与压缩原图像数据时生成的压缩数据间的不一致,那么通过校验值的对比便可以判定该预定量的压缩数据是否存在错误。例如,若与该预定量的压缩数据组合的校验值为拼接在所述压缩数据之后的循环冗余校验值,则每当解压缩预定量的压缩数据时,从后续数据流中提取拼接的循环冗余校验值,并将其与步骤S305中通过循环冗余校验计算生成校验值进行比较,比较一致便输出该预定量的压缩数据对应的原图像数据被正确恢复的指示信息,否则输出该预定量的压缩数据对应的原图像数据未被正确恢复的指示信息,并将所述指示信息连同缓存器中对应的原图像数据一同输出;重置循环冗余校验计算,重新开始对获取的数据流进行循环冗余校验计算。与该预定量的压缩数据组合的校验值,不限于拼接在该预定量的压缩数据之后的循环冗余校验值。在一些实施例中,即可以是置于该预定量的压缩数据之前的奇偶校验,也可以是以预定的结构和该预定量的压缩数据组合在一起,作为数据流输出的其他具有校验功能的校验值。

以上步骤S304至S306可以由图像解压缩装置来执行。

另外,在一些实施例中,校验值的具体位置可以被利用作为同步图像压缩装置和图像解压缩装置特定操作的标志位信息,比如,图像压缩装置可以在插入校验值之后,采用某种特定的压缩算法来压缩之后的第一个像素,那么,图像解压缩装置在定位到所述校验值的位置之后,后续第一个需要被图像解压缩恢复出来的像素则采用跟图像压缩装置所采用的某种特定的压缩算法相对应的解压算法解压恢复。由此可以减少标志位,一定程度上能够提升压缩比。

在步骤S307中,跳过与该预定量的压缩数据对应的解压缩数据,继续进行图像处理。

预定量的压缩数据存在错误,则该预定量的压缩数据对应的原图像数据难以被正确恢复,可以不根据存在错误的预定量的压缩数据解压缩得到的数据进行图像处理。例如,在图像处理为过驱动算法处理的情况下,不根据该预定量的压缩数据解压缩得到数据进行相应的过驱动算法处理。所述过驱动算法处理可以在变化初期的短时间内,将本应对液晶分子施加的电压增加一定比例,强迫液晶分子在较短时间内改变排列,从而提升液晶的响应时间。比如上一帧图像中一个像素的灰度值为100,而当前帧图像中对应的像素灰度值为150,如果压缩解压缩模块正确,过驱动算法会基于100和150这两个数值在短时间内增加对液晶分子施加的电压,以快速显示正确的图像;如果压缩数据存在错误,便不能通过解压缩得到准确的该像素的灰度值,例如,将上一帧的图像中该像素灰度值解压缩为200,此时过驱动算法就会基于200和150这两个数值对液晶分子施加极性不同且增加一定比例的电压,自然会得到错误的图像。再例如,将上一帧的图像中该像素灰度值解压缩为50,此时过驱动算法就会基于50和150这两个数值对液晶分子施加比正常情况下更大的电压,可能会造成显示的像素灰度瞬时超过正确的灰度值150,得到错误的图像。如果二者不一致,表明该预定量的压缩数据存在错误,此时直接输出下一帧图像中对应的图像数据可以避免液晶显示屏中出现诸如噪点,图像抖动,闪屏等现象。然后继续根据步骤S306对下一预定量的压缩数据进行判断。

在一些实施例中,可以在过驱动算法处理的过程中,在解压缩模块中设置两组存储器,其存储器的容量为预定量的压缩数据解压缩后所占的容量;这样,过驱动算法执行乒乓操作,假如当前解压缩操作的结果放入到存储器A中,在当前预定量的压缩数据解压缩完成,得到校验值前,是无法得知当前预定量的压缩数据是否正确的。如果正确,则利用该存储器A中的解压缩结果进行后续的过驱动处理;如果不正确,则不进行过驱动处理。无论进行或不进行过驱动操作,均可以并行地对下一预定量的压缩数据进行解压缩,并将解压缩结果放入到存储器B中。

在步骤S308中,根据与该预定量的压缩数据对应的解压缩数据进行图像处理。

例如,可以根据对该预定量的压缩数据进行解压缩生成的数据和下一帧图像数据中对应的数据进行过驱动算法处理。

图4是根据本发明实施例提供的图像压缩装置的结构示意图,如图4所示,图像压缩装置40包括:压缩模块401、计算模块402和输出模块403。

压缩模块401用于对原图像数据进行压缩以生成压缩数据。

计算模块402,每生成预定量的压缩数据,用于针对所述预定量的压缩数据生成校验值。以上提到的“预定量”可以根据情况而采用不同的标准来度量。作为示例,所述预定量的压缩数据可以为与预定像素数量的原图像数据对应的压缩数据,其中所述预定的像素数量可以根据原图像数据的图像分辨率以及预设的压缩率确定。在这种情况下,可以由压缩模块401统计压缩的原图像数据中包含的像素数量,每生成预定量的压缩数据时,由计算模块402针对所述预定量的压缩数据生成校验值发送给输出模块403。作为另一示例,所述预定量的压缩数据可以为预定长度的压缩数据。在这种情况下,可以由计算模块402检测压缩模块401对原图像数据进行压缩所生成的压缩数据是否达到预定量,每生成预定量的压缩数据时,针对所述预定量的压缩数据生成校验值发送给输出模块403。校验值的生成算法不限定于一种。例如,计算模块402可以通过对所述预定量的压缩数据进行循环冗余校验计算生成所述校验值,所述循环冗余校验计算以预设的多项式为生成多项式。计算模块402还可以通过对所述预定量的压缩数据进行奇偶校验等其他校验计算生成校验值。

输出模块403用于将所述校验值与所述预定量的压缩数据组合后作为数据流输出。在一些实施例中,输出模块403可以包括数据选择器,选择输出压缩模块401输出的数据或计算模块402输出的数据。因所述循环冗余校验计算以预设的多项式为生成多项式,所以所述对应于每预定量的压缩数据的校验值的位数是固定且相同的。

图5是根据本发明实施例提供的图像压缩装置的又一结构示意图,如图5所示,图像压缩装置50包括:单元划分模块501、压缩模块502、计算模块503和输出模块504。在本实施例中,图像压缩装置50可以应用于预定量的压缩数据与预定像素数量的原图像数据对应的情况。

单元划分模块501用于将原图像数据按照像素数量划分为不同单元。例如根据像素数量对原图像进行划分。根据图像或者视频流中每帧图像分辨率的大小、数字电路实现的难度、以及压缩效率的折中,选取单元划分依据的像素数量。可以由每一单元对应一个校验值,该校验值会拼接在该单元的图像数据经过压缩器压缩之后所得到的压缩数据的后面,发送给解压缩器,所以单元划分依据的像素数量不宜过小,否则会较多地影响到压缩、解压缩算法的压缩效率。

压缩模块502用于对原图像数据进行压缩输出压缩数据流。

计算模块503用于根据单元划分模块501的划分,对每一单元原图像数据经过压缩所得到的压缩数据进行计算,得到与所述压缩数据对应的校验值。校验值的生成算法不限定于一种。例如,计算模块503可以对压缩数据进行循环冗余校验计算,得到循环冗余校验CRC值。计算模块503还可以通过对所述预定量的压缩数据进行奇偶校验等其他校验计算生成校验值。

输出模块504可以由数据选择器来实现,用于根据单元划分模块501的划分,将所述校验值拼接在对应的每一单元原图像数据经过压缩所得到的压缩数据之后输出。例如,随着图像按像素排列一个个输入,压缩模块502对图像像素进行压缩,输出压缩之后的压缩数据。与此同时,计算模块503对压缩模块502压缩之后的压缩数据进行循环冗余校验计算,单元划分模块501对输入的图像像素个数进行统计,当当前像素为当前单元内的最后一个像素时,计算模块503保留当前的CRC校验值,输出模块504将CRC校验值拼接到压缩数据的末尾,连同压缩数据一并输出。之后,计算模块503重置循环冗余校验计算,对压缩模块502压缩下一个单元的图像数据得到的压缩数据进行CRC计算。具体地,所述输出模块504将CRC校验值拼接到压缩数据的末尾,连同压缩数据一并输出可以是输出模块504在输出压缩数据后,不间断地紧接着输出与该压缩数据对应的校验值。

在预定量的压缩数据与预定像素数量的原图像数据对应的情况下,相较于图4示出的图像压缩装置40,在图像压缩装置50中,根据预定量划分压缩数据由增加的单元划分模块501执行,而在图像压缩装置40中可以由压缩模块401执行。

图6是根据本发明实施例提供的图像解压缩装置的结构示意图,如图6所示,图像解压缩装置60包括:数据分配模块601、解压缩模块602、计算模块603和比较模块604。

数据分配模块601用于获取数据流,所述数据流包括压缩数据以及与每预定量的压缩数据组合的校验值。具体地,可以将校验值拼接于每预定量的压缩数据之后与其组合,所述与每预定量的压缩数据组合的校验值可以是数据流中不间断地紧接在压缩数据之后的与该压缩数据对应的校验值。数据分配模块601可以包括数据分配器,在不同的情况下选择向不同的模块发送数据。例如,获取的数据流可以包括每预定量的压缩数据和拼接于其后的对其进行循环冗余校验计算生成校验值,所述循环冗余校验计算以预设的多项式为生成多项式。以上提到的“预定量”可以根据情况而采用不同的标准来度量。作为示例,所述预定量的压缩数据可以与预定像素数量的原图像数据对应,其中所述预定的像素数量可以根据原图像数据的图像分辨率以及预设的压缩率确定。在这种情况下,可以每解压缩得到预定像素数量的原图像数据,就相应地针对基于该预定像素数量的原图像数据对应的压缩数据生成校验值。作为另一示例,所述预定量的压缩数据可以为预定长度的压缩数据。在这种情况下,可以每解压缩预定长度的压缩数据,就相应地针对该预定长度的压缩数据生成校验值。

解压缩模块602用于对数据流中的压缩数据进行解压缩。在一些实施例中,解压缩模块602可以将解压缩后所得的原图像数据发送至缓存器中,所述缓存器的容量为所述预定量的压缩数据解压后所占容量。

计算模块603用于针对每预定量的压缩数据生成校验值。校验值的生成算法不限定于一种。例如,计算模块603可以分别对每预定量的压缩数据进行循环冗余校验计算生成校验值,所述循环冗余校验计算以预设的多项式为生成多项式,计算模块603还可以通过对所述预定量的压缩数据进行奇偶校验等其他校验计算生成校验值。计算模块603生成校验值的方式和与每预定量的压缩数据组合的校验值的生成方式相同。例如,在循环冗余校验计算中以相同的生成多项式来生成CRC值。计算模块603可以检测解压缩模块602是否完成对预定量的压缩数据的解压缩,每完成对预定量的压缩数据的解压缩时,就将生成的校验值发送给比较模块604,并重置循环冗余校验计算。

比较模块604用于将针对每预定量的压缩数据生成的校验值和与该预定量的压缩数据组合的校验值相比较,根据比较结果确定该预定量的压缩数据是否存在错误。例如,如果二者不一致,则判定所述预定量的压缩数据存在错误,输出该预定量的压缩数据对应的原图像数据未被正确恢复的指示信息;如果二者一致,说明所述预定量的压缩数据没有在传输过程中发生错误,恢复出的原图像数据可信度较高,输出该预定量的压缩数据对应的原图像数据被正确恢复的指示信息。所述错误是指解压缩时针对的压缩数据与压缩原图像数据时生成的压缩数据间的不一致,这可以是传输或者存储的过程造成的。例如,如果压缩数据通过链接通道传输,可能因为噪声、数据接收等原因,导致压缩数据前后不一致;如果将压缩数据存储到外部SDRAM中,可能因为SDRAM出错、噪声、时序等原因,导致压缩数据前后不一致。如果解压缩时针对的压缩数据与压缩原图像数据时生成的压缩数据间的不一致,那么通过校验值的对比便可以判定该预定量的压缩数据是否存在错误。

图7是根据本发明实施例提供的图像解压缩装置的又一结构示意图,如图7所示,图像解压缩装置70包括:数据分配模块701、单元划分模块702、计算模块703、解压缩模块704和比较模块705。在本实施例中,图像解压缩装置70可以应用于预定量的压缩数据与预定像素数量的原图像数据对应的情况。

数据分配模块701用于从输入的数据流中分离出对每一单元原图像数据经过压缩所得的压缩数据和拼接于压缩数据之后与压缩数据对应的校验值。具体地,所述拼接于压缩数据之后与压缩数据对应的校验值可以是数据流中不间断地紧接在压缩数据之后的与该压缩数据对应的校验值。

单元划分模块702用于对数据流中的压缩数据进行单元划分以得到预定量的压缩数据,即,根据预定像素数量的原图像数据生成的压缩数据。

计算模块703用于根据单元划分模块702的划分,对预定量的压缩数据进行计算,得到与所述预定量的压缩数据对应的校验值。

解压缩模块704用于将输入的压缩数据解压缩,输出原图像数据。

比较模块705用于比较利用计算模块703得到的与预定量的压缩数据对应的校验值数据与拼接于该压缩数据之后的校验值是否一致。

可选地,图像解压缩装置70还可以包括缓存模块706,用于存储解压后得到的原图像数据,以便于后续图像处理使用。在一些实施例中,缓存模块706的存储容量与预定像素数量的原图像数据相当。

在图像解压缩装置70进行图像解压缩时,数据分配模块701将图像压缩装置50提供的数据流作为输入数据流,并根据单元划分模块702对数据流的划分将数据流分配给计算模块703、解压缩模块704和比较模块705,计算模块703对压缩数据进行循环冗余校验计算,得到CRC校验值。需要注意的是,CRC校验值仅是一个优选实施例,校验值的生成算法不限定于这一种。计算模块703还可以通过对所述预定量的压缩数据进行奇偶校验等其他校验计算生成校验值。计算模块703生成校验值的方式与图像压缩装置50提供的数据流中校验值的生成方式相同。与此同时,解压缩模块704对该压缩数据进行解压缩,恢复出一个个图像像素,存入缓存模块706中。单元划分模块702对恢复出来的图像像素进行统计,当当前恢复出来的像素为当前预定像素数量的原图像数据中最后一个像素时,比较模块705从紧紧跟随的后续数据流中提取拼接于压缩数据之后的CRC校验值,并将其与计算模块703计算得到的CRC校验值进行比较,比较一致时,输出该预定量的压缩数据对应的原图像数据被正确恢复的指示信息,比较不一致时,输出该预定量的压缩数据对应的原图像数据未被正确恢复的指示信息,缓存模块706将存储的与所述指示信息对应的原图像数据一同输出。计算模块703重置循环冗余校验计算,继续对数据流中的压缩数据进行循环冗余校验计算。

在预定量的压缩数据与预定像素数量的原图像数据对应的情况下,相较于图6示出的图像解压缩装置60,在图像解压缩装置70中,确定每预定量的压缩数据由增加的单元划分模块702执行,而在图像解压缩装置60中可以由解压缩模块602执行。此外,在图像解压缩装置70中可以选择性地增加缓存模块706,用于存储解压后得到的原图像数据,以便后续图像处理使用。

图8是根据本发明实施例提供的图像处理装置的结构示意图,如图8所示,图像处理装置80包括:图像压缩模块801、图像解压缩模块802和图像处理模块803。

图像压缩模块801可以为图像压缩装置40或图像压缩装置50中的任一个。

图像解压缩模块802可以为图像解压缩装置60或图像解压缩装置70中的任一个。

图像处理模块803用于根据图像解压缩模块802提供的解压缩数据进行图像处理,并且每当预定量的压缩数据存在错误时,跳过与该预定量的压缩数据对应的解压缩数据,继续进行图像处理。所述错误是指解压缩时针对的压缩数据与压缩原图像数据时生成的压缩数据间的不一致,这可以是传输或者存储的过程造成的。例如,如果压缩数据通过链接通道传输,可能因为噪声、数据接收等原因,导致压缩数据前后不一致;如果将压缩数据存储到外部SDRAM中,可能因为SDRAM出错、噪声、时序等原因,导致压缩数据前后不一致。如果解压缩时针对的压缩数据与压缩原图像数据时生成的压缩数据间的不一致,那么通过校验值的对比便可以判定该预定量的压缩数据是否存在错误。预定量的压缩数据存在错误,则该预定量的压缩数据对应的原图像数据难以被正确恢复。图像处理模块803可以不根据存在错误的预定量的压缩数据解压缩得到的数据进行图像处理。在一些实施例中,图像处理模块803可以包括过驱动算法处理器,在所述预定量的压缩数据不存在错误的情况下,用于根据对所述预定量的压缩数据进行解压缩获得的数据和下一帧图像数据中对应的数据进行过驱动算法处理。在所述预定量的压缩数据存在错误的情况下,该预定量的压缩数据对应的原图像数据难以被正确恢复,不根据该预定量的压缩数据解压缩得到的数据进行相应的过驱动算法处理,直接输出下一帧图像中对应的图像数据。

图9是根据本发明实施例提供的图像处理装置的又一结构示意图,如图9所示,图像处理装置90包括图像压缩装置50、图像解压缩装置70、帧存储模块901和过驱动算法处理模块902。

图像压缩装置50和图像解压缩装置70以上参考图5和图7已经进行了详细的说明,在此不再赘述。

帧存储模块901用于存储图像压缩装置50输出的数据流。在一些实施例中,帧存储模块901的存储容量为压缩一帧图像所得到的压缩数据的大小以及一帧图像中对应每预定量的压缩数据的校验值的大小。通过利用帧存储模块901暂时存储图像压缩装置50输出的数据流,使得图像解压缩装置70在准确的时刻读取图像压缩装置50输出的数据流,更好的配合过驱动算法处理模块902进行图像处理。

过驱动算法处理模块902用于根据图像解压缩装置70解压得到的原图像数据进行过驱动算法处理。例如,当图像解压缩装置70给出的上一帧图像中与预定量的压缩数据对应的原图像数据的指示信息意为正确恢复的时候,过驱动算法处理模块902根据上一帧图像中的该原图像数据与当前帧同一位置的图像数据进行过驱动算法处理,在变化初期的短时间内,将本应对液晶分子施加的电压增加一定比例,强迫液晶分子在较短时间内改变排列,从而提升液晶的响应时间,比如上一帧图像中一个像素的灰度值为100,而当前帧图像中对应的像素灰度值为150,如果压缩解压缩模块正确,过驱动算法会基于100和150这两个数值在短时间内增加对液晶分子施加的电压,以快速显示正确的图像。当图像解压缩装置70给出的该原图像数据的指示信息意为未被正确恢复的时候,则过驱动算法处理模块902不根据该原图像数据进行相应的过驱动算法处理,直接输出当前帧对应位置的图像数据,因为如果压缩数据存在错误,便不能通过解压缩得到准确的该像素的灰度值,例如,将上一帧的图像中该像素灰度值解压缩为200,此时过驱动算法就会基于200和150这两个数值对液晶分子施加极性不同且增加一定比例的电压,自然会得到错误的图像。再例如,将上一帧的图像中该像素灰度值解压缩为50,此时过驱动算法就会基于50和150这两个数值对液晶分子施加比正常情况下更大的电压,可能会造成显示的像素灰度瞬时超过正确的灰度值150,得到错误的图像。所述错误是指解压缩时针对的压缩数据与压缩原图像数据时生成的压缩数据间的不一致,这可以是传输或者存储的过程造成的。例如,如果压缩数据通过链接通道传输,可能因为噪声、数据接收等原因,导致压缩数据前后不一致;如果将压缩数据存储到外部SDRAM中,可能因为SDRAM出错、噪声、时序等原因,导致压缩数据前后不一致。如果解压缩时针对的压缩数据与压缩原图像数据时生成的压缩数据间的不一致,那么通过校验值的对比便可以判定该预定量的压缩数据是否存在错误。

本发明的实施例通过在图像压缩过程中针对每预定量的压缩数据生成校验值,并在图像解压缩过程中重新生成校验值并与先前校验值进行比较,可以检测到数据流的发生错误情况,进而减少由于数据流发生错误而造成的后续图像显示错误,减少诸如噪点,图像抖动,闪屏等现象。在本发明实施例中,通过在图像数据的压缩过程中将压缩数据以预定量来划分,一方面可以降低储存图像时所需要的带宽,另一方面可以降低对存储器存储容量的要求。通过原图像数据的图像分辨率以及预设的压缩率确定所述预定量的压缩数据中包含的原图像的像素数量,可以在降低存储图像时所需的带宽和对存储器容量的要求的同时兼顾压缩率。在本发明实施例中,对所述压缩数据进行循环冗余校验计算生成校验值,误判率低,检验精度高,且编码简单利于实现。

以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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