图像编码解码装置以及方法与流程

文档序号:11865977阅读:280来源:国知局
图像编码解码装置以及方法与流程

本发明涉及计算机及其软件技术领域,特别地涉及一种图像编码解码装置以及方法。



背景技术:

在计算机视觉领域中,图片可以分为位图图片和矢量图图片。位图图片通常简称图像,而矢量图图片通常简称图形。通常一张图像中包括大量像素。当需要在某界面上显示一份大数据量的图像时,最原始的方法需要将全部数据读取完成之后才能进行,效率太低。

技术人员提出一种“缩略图加原图”方案来提高图像显示效率,具体如下:同时存储模糊的缩略图和清晰的原图,在原图尚未加载完时显示缩略图,并且在原图加载过程中逐渐覆盖掉缩略图。但是该方案需要保存两份图像数据,并且缩略图通常太过模糊而无法表达出原图的内容。

技术人员还提出另一种“递增式编码解码”方案以提高效率,具体如下:先加载图像中的少数像素,其他未加载的像素都用邻近已加载像素的色彩参数进行填充,然后逐渐提高加载的点的数量,使图像逐渐清晰。但是该方案也只能显示大概轮廓,半加载的图像与原图对比显得比较失真。

因此,亟需提出一种加载效率高、可预见内容的、用户体验佳的图像编码解码技术。



技术实现要素:

有鉴于此,本发明提供一种快速显示、预见性好、用户体验好的图像编码解码装置以及方法。

为实现上述目的,根据本发明的一个方面,提供了一种图像编码解码装置。

本发明的图像编码解码装置包括:分组模块,用于将图像中所有像素的完整色彩深度参数按照色彩深度数位高低进行分组,分组结果为多组色彩深度数据,各组所述色彩深度数据包括所有像素的色彩深度参数在特定位数上的数值;发送模块,用于按照对应数位从高到低顺序发送所述分组结果;接收模块,用于接收所述分组结果;加载模块,用于按照对应数位从高到低顺序逐组加载所述分组结果以实现逐渐绘图。

可选地,所述发送模块还用于:将所述分组结果按照对应数位从高到低顺序压缩,然后发送压缩结果;所述接收模块还用于:接收所述压缩结果并解压,还原出所述分组结果。

可选地,所述压缩为流式压缩,所述解压为流式解压。

可选地,所述加载模块还用于:按照对应数位从高到低顺序,循环地执行如下操作直至所有组所述色彩深度数据被加载完毕:获取当前组的所述色彩深度数据,然后对图像中的各个像素执行如下处理:若像素加载完全部位,则按所述全部位的数值显示;若像素未加载任何位,则按邻近点的平均值显示或者最近点的值显示;若像素加载了部分位,则将所述特定位数加载当前组的色彩深度数据,将指定的较高数位的已加载的数值保留,并且将指定的较低数位填充数字0,然后进行显示。

可选地,所述分组模块还用于:对图像中所有像素的完整色彩深度参数执行按照色彩深度数位高低分组和按照像素坐标分组的双重分组操作,所述分组结果为多组局部位置色彩深度数据,各组所述局部位置色彩深度数据包括特定位置像素的色彩深度参数在特定位数上的数值;所述发送模块还用于:按照对应数位从高到低顺序和预设像素坐标顺序发送所述分组结果;所述加载模块还用于:按照对应数位从高到低顺序和预设像素坐标顺序逐组加载所述分组结果以实现逐渐绘图。

根据本发明的另一方面,提供了一种图像编码解码方法。

本发明的图像编码解码方法包括:分组模块将图像中所有像素的完整色彩深度参数按照色彩深度数位高低进行分组,分组结果为多组色彩深度数据,各组所述色彩深度数据包括所有像素的色彩深度参数在特定位数上的数值;发送模块按照对应数位从高到低顺序发送所述分组结果;接收模块接收所述分组结果;加载模块按照对应数位从高到低顺序逐组加载所述分组结果以实现逐渐绘图。

可选地,所述发送模块按照对应数位从高到低顺序发送所述分组结果的步骤包括:所述发送模块将所述分组结果按照对应数位从高到低顺序压缩,然后发送压缩结果;所述接收模块接收所述分组结果的步骤包括:所述接收模块接收所述压缩结果并解压,还原出所述分组结果。

可选地,所述压缩为流式压缩,所述解压为流式解压。

可选地,所述加载模块按照对应数位从高到低顺序逐组加载所述分组结果以实现逐渐绘图的步骤包括:按照对应数位从高到低顺序,循环地执行如下操作直至所有组所述色彩深度数据被加载完毕:获取当前组的所述色彩深度数据,,然后对图像中的各个像素执行如下处理:若像素加载完全部位,则按所述全部位的数值显示;若像素未加载任何位,则按邻近点的平均值显示或者最近点的值显示;若像素加载了部分位,则将所述特定位数加载当前组的色彩深度数据,将指定的较高数位的已加载的数值保留,并且将指定的较低数位填充数字0,然后进行显示。

可选地,所述分组模块将图像中所有像素的完整色彩深度参数按照色彩深度数位高低进行分组的步骤包括:对图像中所有像素的完整色彩深度参数执行按照色彩深度数位高低分组和按照像素坐标分组的双重分组操作,所述分组结果为多组局部位置色彩深度数据,各组所述局部位置色彩深度数据包括特定位置像素的色彩深度参数在特定位数上的数值;所述发送模块按照对应数位从高到低顺序发送所述分组结果的步骤包括:所述发送模块按照对应数位从高到低顺序和预设像素坐标顺序发送所述分组结果;所述加载模块按照对应数位从高到低顺序逐组加载所述分组结果以实现逐渐绘图的步骤包括:按照对应数位从高到低顺序和预设像素坐标顺序逐组加载所述分组结果以实现逐渐绘图。

由于位图颜色中处于越高位的值对颜色影响越大。根据这一特性,根据本发明的技术方案采用按位分组策略将色彩深度信息分成多组数据,然后按照从高位到低位顺序加载多组数据。先加载色彩深度参数中的高位信息、后加载低位信息,这相当于在图像中先填充粗略色彩再填充精细色彩。这样意味着在数据尚未加载完全的情况下也能够尽量地展示出原图的色彩信息,能够使用户预见到大部分图像内容,减少用户等待时间,从而提升用户体验。此外,本发明的图像编码解码装置和方法无需生成和保存缩略图,具有简便易行,节约存储空间的优点。

附图说明

附图用于更好地理解本发明,不构成对本发明的不当限定。其中:

图1是根据本发明实施方式的图像编码解码装置的主要模块的示意图;

图2是根据本发明实施方式的图像编码解码方法的主要步骤的示意图;

图3是根据本发明实施方式的图像编码解码装置的工作过程示意图。

具体实施方式

以下结合附图对本发明的示范性实施方式做出说明,其中包括本发明实施方式的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施方式做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

图像中像素的颜色深度参数可以用多位二进制数字表示。例如:一张24位彩色图像中像素点的色彩深度参数为R8G8B8格式,具体记为r1r2r3r4r5r6r7r8g1g2g3g4g5g6g7g8b1b2b3b4b5b6b7b8,其中r1至r8、g1至g8以及b1至b8都是数字“0”或数字“1”。其中红色通道中的r1至r4、绿色通道中的g1至g4以及蓝色通道中的b1至b4是较高数位,代表了色彩信息中的主要信息。而红色通道中的r5至r5、绿色通道中的g5至g8以及蓝色通道中的b5至b8是较低数位,代表了色彩信息中的细节信息。根据“位图颜色中处于越高位的值对颜色影响越大”这一特性,本发明提出了一种图像编码解码装置以及图像编码解码方法。

图1是根据本发明实施方式的图像编码解码装置的主要模块的示意图。如图1所示,本发明实施方式的图像编码解码装置10主要包括分组模块11、发送模块12、接收模块13和加载模块14。需要说明的是,可以是分组模块11和发送模块12安装在一台设备上,接收模块13和加载模块14安装在另一台设备上。

本发明的实施方式中,发送模块12还可以用于:将分组结果按照对应数位从高到低顺序压缩,然后发送压缩结果。压缩可以为流式压缩。例如,发送模块12可以流式压缩算法(例如LZ77压缩算法)进行压缩后传输。流式传输可以实现边压缩边传输边解压,能够缩短耗时,提高效率。相对应地,接收模块13还可以用于接收压缩结果并解压,还原出分组结果。解压可以为流式解压。需要说明的是,压缩动作和解压动作可以设为可选动作,而非必选动作。

分组模块11可以用于将图像中所有像素的完整色彩深度参数按照色彩深度数位高低进行分组,得到多组色彩深度数据。各组色彩深度数据包括所有像素的色彩深度参数在特定位数上的数值。其中,分组的形式可以灵活多变,可以分为两组、三组或者更多组,各组之间的数位数目可以相等或者不相等。分组规则只要满足“每个点的高位与高位一组,低位与低位一组”原则即可。例如:完整的色彩深度参数R8G8B8可以分为高四位色彩深度数据R4G4B4和低四位色彩深度数据R4G4B4,也可以分为高三位色彩深度数据R3G3B3和低五位色彩深度数据R5G5B5。又例如:完整的色彩深度参数R5G6B5可以分为高位组色彩深度数据R2G2B2、中位组色彩深度数据R1G2B1和低位组色彩深度数据R2G2B2。

发送模块12用于按照对应数位从高到低顺序发送分组结果。换言之,发送模块12用于将多组色彩深度数据按照对应数位从高到低的顺序发送给接收模块13。

接收模块13用于接收分组结果。该实施例中的接收到的分组结果即按照对应数位从高到低顺序排列的多组色彩深度数据。

加载模块14用于按照对应数位从高到低顺序逐组加载分组结果以实现逐渐绘图。具体地,加载模块14可以用于:按照对应数位从高到低顺序,循环地执行如下操作直至所有组色彩深度数据被加载完毕:获取当前组的色彩深度数据,然后对图像中的各个像素执行如下处理:若像素加载完全部位,则按全部位的数值显示;若像素未加载任何位,则按邻近点的平均值显示或者最近点的值显示;若像素加载了部分位,则将特定位数加载当前组的色彩深度数据,将指定的较高数位的已加载的数值保留,并且将指定的较低数位填充数字0,然后进行显示。其中“指定的较高数位”和“指定的较低数位”均是相对于当前组颜色深度数据对应的特定数位而言的。

由上可知,该实施方式的图像编码解码装置中采用了按位分组策略,该策略是针对单个像素点来说,将色彩深度参数分成影响较大的高位信息和影响较小的低位信息,在后续加载过程中分批加载,实现“分多次填色,越填颜色越精确”的视觉效果。

根据本发明实施方式的图像编码解码装置中的各个模块的功能还可以如下:分组模块11用于对图像中所有像素的完整色彩深度参数执行按照色彩深度数位高低分组和按照像素坐标分组的双重分组操作,分组结果为多组局部位置色彩深度数据,各组局部位置色彩深度数据包括特定位置像素的色彩深度参数在特定位数上的数值。发送模块12用于按照对应数位从高到低顺序和预设像素坐标顺序发送分组结果。接收模块13用于接收分组结果。加载模块14用于按照对应数位从高到低顺序和预设像素坐标顺序逐组加载分组结果以实现逐渐绘图。该实施例的图像编码解码装置中采用了按位分组策略兼按像素坐标分组策略。其中按像素坐标分组策略实际上是针对整张图像的多个像素点来说,先加载一部分位置的像素,再加载另一部分位置的像素,分批加载完毕。由此可见,采用按位分组策略兼按像素坐标分组策略,能够进一步提高图像的可预见程度。

需要说明的是,按像素坐标分组的具体规则可以灵活设置。可以是按奇数行一组、偶数行一组。可以是奇数列一组、偶数列一组。还可以是按模分组,结果相同的为一组。例如:模4即表示将像素的横纵坐标相加后对4取模,分为结果是0,1,2,3的四组。假设图像所有像素的色彩深度参数按位分出了i组色彩深度数据,可以进一步通过以j为模按像素坐标分组后可获得i×j组局部位置色彩深度数据。其中j的取值最大可以按总像素点数目的一半,即每组局部位置色彩深度数据中最多包含两个像素的特定位数上的值。

还需要说明的是,对于图像所有像素的完整的色彩深度信息,也可先按像素坐标分组、后按位分组得到多个小组数据,然后逐小组加载数据,并不改变发明原理。

图2是根据本发明实施方式的图像编码解码方法的主要步骤的示意图。如图2所示,该实施方式的图像编码解码方法主要包括如下的步骤A至步骤D。该方法适用于本发明实施方式的图像编码解码装置。

步骤A:分组模块将图像中所有像素的完整色彩深度参数按照色彩深度数位高低进行分组,分组结果为多组色彩深度数据,各组色彩深度数据包括所有像素的色彩深度参数在特定位数上的数值。

步骤B:发送模块按照对应数位从高到低顺序发送分组结果。

步骤C:接收模块接收分组结果。

步骤D:加载模块按照对应数位从高到低顺序逐组加载分组结果以实现逐渐绘图。

本发明实施方式的图像编码解码方法中,发送模块按照对应数位从高到低顺序发送分组结果的步骤可以包括:发送模块将分组结果按照对应数位从高到低顺序压缩,然后发送压缩结果;接收模块接收分组结果的步骤可以包括:接收模块接收压缩结果并解压,还原出分组结果。其中,压缩可以是流式压缩,解压可以说流式解压。流式传输可以实现边压缩边传输边解压,能够缩短耗时,提高效率。

本发明实施方式的图像编码解码方法中,步骤D可以包括如下具体步骤:按照对应数位从高到低顺序,循环地执行如下操作直至所有组色彩深度数据被加载完毕:获取当前组的色彩深度数据,然后对图像中的各个像素执行如下处理:若像素加载完全部位,则按全部位的数值显示;若像素未加载任何位,则按邻近点的平均值显示或者最近点的值显示;若像素加载了部分位,则将特定位数加载当前组的色彩深度数据,将指定的较高数位的已加载的数值保留,并且将指定的较低数位填充数字0,然后进行显示。

本发明实施方式的图像编码解码方法中,步骤A还可以替换为:对图像中所有像素的完整色彩深度参数执行按照色彩深度数位高低分组和按照像素坐标分组的双重分组操作,分组结果为多组局部位置色彩深度数据,各组局部位置色彩深度数据包括特定位置像素的色彩深度参数在特定位数上的数值。相应地,步骤B的可以替换为程为:发送模块按照对应数位从高到低顺序和预设像素坐标顺序发送分组结果。步骤C仍为:接收模块接收分组结果。步骤D的可以替换为:加载模块按照对应数位从高到低顺序和预设像素坐标顺序逐组加载分组结果(即多组局部位置色彩深度数据)以实现逐渐绘图。

综上所述,有如下结论:由于位图颜色中处于越高位的值对颜色影响越大。根据这一特性,本发明实施方式的图像编码解码装置和图像编码解码方法采用按位分组策略将色彩深度信息分成多组数据,然后按照从高位到低位顺序加载多组数据。先加载色彩深度参数中的高位信息、后加载低位信息,这相当于在图像中先填充粗略色彩再填充精细色彩。这样意味着在数据尚未加载完全的情况下也能够尽量地展示出原图的色彩信息,能够使用户预见到大部分图像内容,减少用户等待时间,从而提升用户体验。此外,本发明的图像编码解码装置和方法无需生成和保存缩略图,具有简便易行,节约存储空间的优点。

为使本领域技术人员更好地理解本发明的内容,下面结合具体实施例作详细描述。

图3是根据本发明实施方式的图像编码解码装置的工作过程示意图。

假设原始图像为R8G8B8格式的24位彩色图像,其中各个像素记为P1、P2、P3、P4……。图像的所有像素的完整色彩深度信息记为:

P1(r1r2r3r4r5r6r7r8g1g2g3g4g5g6g7g8b1b2b3b4b5b6b7b8);

P2(r1r2r3r4r5r6r7r8g1g2g3g4g5g6g7g8b1b2b3b4b5b6b7b8);

P3(r1r2r3r4r5r6r7r8g1g2g3g4g5g6g7g8b1b2b3b4b5b6b7b8);

P4(r1r2r3r4r5r6r7r8g1g2g3g4g5g6g7g8b1b2b3b4b5b6b7b8);

……

首先分组模块对图像的所有像素的完整色彩深度信息按位分组,得到高四位色彩深度数据D1和低四位色彩数据D2。

D1=P1(r1r2r3r4g1g2g3g4b1b2b3b4);

P2(r1r2r3r4g1g2g3g4b1b2b3b4);

P3(r1r2r3r4g1g2g3g4b1b2b3b4);

P4(r1r2r3r4g1g2g3g4b1b2b3b4);

……

D2=P1(r5r6r7r8g5g6g7g8b5b6b7b8);

P2(r5r6r7r8g5g6g7g8b5b6b7b8);

P3(r5r6r7r8g5g6g7g8b5b6b7b8);

P4(r5r6r7r8g5g6g7g8b5b6b7b8);

……

然后,分组模块进一步按像素坐标分组,将高四位色彩深度数据D1分组得到奇数像素高四位色彩深度数据data1和偶数像素高四位色彩深度数据data2,以及将低四位色彩数据D2分组得到奇数像素低四位色彩深度数据data3和偶数像素低四位色彩深度数据data4。

data1=P1(r1r2r3r4g1g2g3g4b1b2b3b4);

P3(r1r2r3r4g1g2g3g4b1b2b3b4);

……

data2=P2(r1r2r3r4g1g2g3g4b1b2b3b4);

P4(r1r2r3r4g1g2g3g4b1b2b3b4);

……

data3=P1(r5r6r7r8g5g6g7g8b5b6b7b8);

P3(r5r6r7r8g5g6g7g8b5b6b7b8);

……

data4=P2(r5r6r7r8g5g6g7g8b5b6b7b8);

P4(r5r6r7r8g5g6g7g8b5b6b7b8);

……

然后压缩发送模块将data1、data2data3和data4有序地进行流式压缩并发送。接收解压模块接收数据流并解压,有序地还原出data1、data2、data3和data4。

加载模块首先加载data1,这相当于对奇数像素的位置实施粗略填色。具体过程是对各个奇数像素,加载已读取的较高四位r1至r4、g1至g4以及b1至b4的值,较低四位的r5至r8、g5至g8以及b5至b8填充数字0。例如:像素I的位置上填充颜色r1r2r3r40000g1g2g3g40000b1b2b3b40000。这一阶段中,对于尚未进行任何一次加载的空白像素(即偶数像素),空白像素的颜色可以为距离该点最近的像素的数值来代替,或者以周围已加载的多个像素的平均值来代替。例如:像素P2位置的颜色和像素P1位置的颜色相同,如此类推。等到加载模块加载完data1时,用户已经可以看到相当于原图一半位置的粗略色彩,这足以使用户辨识原图的大致内容。

加载模块继续加载data2,这一阶段中奇数像素的位置上色彩维持不变,仅对偶数像素的位置上的色彩进行刷新。等到加载模块加载完data2时,用户已经可以看到原图中所有位置的大致色彩。

加载模块进一步加载data3,这相当于对奇数像素的位置上的色彩做进一步修正,高四位的值维持不变,加载低四位的值。例如:像素I的位置上的填充颜色由r1r2r3r40000g1g2g3g40000b1b2b3b40000变为r1r2r3r4r5r6r7r8g1g2g3g4g5g6g7g8b1b2b3b4b5b6b7b8。这一阶段中偶数像素的色彩维持不变。

加载模块最后加载data4,这相当于对偶数像素的位置上的色彩做进一步修正。等到加载模块加载完data4时,得到了所有像素的完整色彩信息,也就是说得到原始的图像。

由上可知,通过本发明实施方式的图像编码解码装置,具有预见性好、用户体验佳等优点。

上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

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