一种基于非对称逆布局模型的静止图像压缩编码方法

文档序号:7923948阅读:323来源:国知局
专利名称:一种基于非对称逆布局模型的静止图像压缩编码方法
技术领域
本发明所属的技术领域为计算机图像处理,涉及图像表示与图像压缩编码方法,具体为一种基于非对称逆布局模型的静止图像压缩编码方法,简称为NAMC表示方法。

背景技术
图像表示是计算机图形学、计算机视觉、机器人、图像处理和模式识别等领域里的一个重要问题。有效的图像表示方法不仅能节省存储空间,而且还能提高图像处理的速度。随着数字化信息时代的到来和多媒体计算机技术的发展,使得人们所面对的各种图像数据量剧增,由于图像信息所具有的大量性,其快速、实时传输的要求得不到满足已成为制约Internet发展的一个难题。因此图像表示方法的研究就变得非常重要,它是目前最活跃的研究领域之一。
目前已有许多基于空间数据结构的二值图像表示方法,如树结构的表示方法、字符串表示方法和码字集表示方法。就二值图像的压缩方法来说,尽管压缩标准JBIG的压缩性能总是优于目前任何基于空间数据结构的二值图像表示方法,但由于JBIG表示方法涉及到熵编码过程,对于许多应用来说是不可能操作压缩的JBIG格式的。事实上,由于实际中的图像大多是灰度图像,所以对灰度图像表示方法的研究具有更为广泛的用途和实际的意义。而且就灰度图像而言,许多压缩技术如标准JPEG技术(G.K.Wallace.The JPEG still picture compression standard.Communications of the ACM,1991,34(4)34-43),DCT技术(K.Chung,Y.Liu,W.Yan.A hybrid gray image representationusing spatial-and DCT-based approach with application to moment computation.Journal ofVisual Communication and Image Representation,2006,17(6)1209-1226),以及基于小波的编解码技术(B.A.D.Vore,B.Jawerth,B.J.Lucien.Image compression throughwavelet transform coding.IEEE Transactions on Information Theory,1992,38(2)719-746)等的编码时间和解码时间是对称的。然而,一些快速的方法或者至少在解码部分快一些的快速方法也是经常需要的,因为快速的解码是在诸如图像通讯和图像处理等许多应用中是非常有用的。
基于B-树三角形编码(BTTC)方法,Distasi等(R.Distasi,M.Nappi,S.Vitulano.Image compression by B-tree triangular coding.IEEE Transactions onCommunications,1997,45(9)1095-1100)首次提出了基于空间数据结构的灰度图像表示方法。其编码模式是将灰度图像递归地分解成以二元树表示的直角三角形,BTTC方法是一种有效的快速编码方法,其编码复杂度为O(nlogn);而且其解码复杂度更低,仅为O(n),其中n是灰度图像的像素数。实验结果表明无论从主观还是从客观的角度来说,BTTC的重建图像质量均是较为满意的,而且在执行时间上BTTC是优于JPEG的。由于Distasi等首次将空间数据结构的设计从二值图像的表示扩展到了灰度图像的表示上来,因此基于BTTC的空间数据结构的灰度图像表示确实是一个先驱性的工作。后来,基于S树数据结构(W.D.Jonge,P.Scheuermann,A.Schijf.S+-TreesAn efficient structure for the representation of large pictures.Computer Vision and ImageUnderstanding,1994,59(3)265-280)和Gouraud阴影法(J.D.Foley,A.V.Dam,S.K.Feiner,et al.Computer Graphics,Principle,and Practice,second ed.Reading,MAAddision-Wesley,1990.),Chung等(K.Chung,J.Wu.Improved image compression usingS-tree and shading approach.IEEE Transactions on Communications,2000,48(5)748-751)提出了一种基于S树的空间数据结构的灰度图像表示(STC)方法。实验结果表明在保持图像质量和不牺牲图像压缩比的情况下,STC方法比BTTC方法的执行时间至少要少一半。
尽管上述的空间数据结构表示有许多优点,但是它们过于强调分割的对称性,因此不是最优的表示方法。借助于Packing问题的思想,以寻找分割最大化的非对称分割方法为目标,本发明人曾提出了一种基于矩形子模式的非对称逆布局模型(NAM)的彩色图像表示方法(郑运平,陈传波.一种基于非对称逆布局模型的彩色图像表示方法.软件学报,2007,18(11)2932-2941),这种表示方法的基本思想是给定一个已经布局好了的模式和一个预先定义的不同形状的矩形子模式,然后从这个给定的模式中抽出这些矩形子模式,用这些矩形子模式的组合来表示给定的模式。然而该文提出的基于矩形NAM的彩色图像表示方法的是图像的一种无损表示方法,并不适合图像的有损表示。


发明内容
本发明目的在于针对现有图像表示技术中存在的问题,提供一种基于非对称逆布局模型的静止图像压缩编码方法,该方法是图像表示的一种有损方法,可以进一步提高图像模式的表示和操作效率。
本发明提供的基于非对称逆布局模型的静止图像压缩编码方法,包括以下步骤 (A1)将矩阵变量R的所有元素赋值为0,矩阵变量R的大小与待处理的灰度图像f相等,均为M×N,同时令num=0;其中,M和N均为自然数; (A2)按光栅扫描的顺序确定灰度图像f中的一个未被标识的矩形块的起始点(x1,y1),根据该起始点和给定的误差允许量ε确定一个面积最大的同类块H,并将同类块H在灰度图像f中作标识; 同类块是指满足下述条件的矩形块 该矩形块内所有像素的灰度值g(x,y)均满足条件|g(x,y)-gest(x,y)|≤ε,其中,ε为用户设定的误差允许量,(x1,y1)、(x2,y2)分别为该矩形块左上角和右下角的坐标值,x1≤x≤x2,y1≤y≤y2;根据坐标(x1,y1)和(x2,y2)的位置关系,gest(x,y)表示该同类块中坐标(x,y)处的近似灰度值,按下述四种情况计算 如果x1<x2且y1<y2,则gest(x,y)=g5+(g6-g5)×i1, 其中g5=g1+(g2-g1)×i2,g6=g3+(g4-g3)×i2,i1=(y-y1)/(y2-y1),且i2=(x-x1)/(x2-x1); 如果x1≠x2且y1=y2,则gest(x,y)=g1+(g4-g1)×[(x-x1)/(x2-x1)]; 如果x1=x2且y1≠y2,则gest(x,y)=g1+(g4-g1)×[(y-y1)/(y2-y1)]; 如果x1=x2且y1=y2,则gest(x,y)=g1; (A3)记录同类块H的参数,即左上角的坐标(x1,y1)、右下角的坐标(x2,y2)、以及4个角落的灰度值(g1,g2,g3,g4);令num=num+1, (A4)根据坐标(x1,y1)和(x2,y2)的位置关系,按如下三种情况将找到的同类块H的参数存储到一个颜色表P中; 如果x1<x2且y1<y2,则将同类块的参数(g1,g2,g3,g4)赋值到颜色表P{num}中,并将矩阵变量R中对应位置的矩形块的左上角和右下角分别用“1”和“2”进行标识; 如果x1≠x2且y1=y2,或x1=x2且y1≠y2则将同类块的参数(g1,g4)赋值到颜色表P{num}中,并将矩阵变量R中对应位置的矩形块的左上角和右下角分别用“1”和“2”进行标识; 如果x1=x2且y1=y2,则将同类块的参数(g1)赋值到颜色表P{num}中,并将矩阵变量R中对应位置的矩形块用“-1”进行标识; (A5)循环执行步骤(A2)到(A4),直到灰度图像f中的同类块均被标识完毕; (A6)输出颜色表P; (A7)根据下述坐标数据压缩算法,对矩阵变量R中所有非零元素的坐标进行编码,并将编码结果存储到一个坐标表Q中; ①逐行扫描大小为M×N的矩阵变量R,如果该行所有元素均为零,那么就不用编码该行,在这种情况下,使用一个二进制位“0”来表示本行从头到尾都不存在非零元素,并将该二进制位“0”存储到该行的编码表q中;否则,如果该行存在非零元素,那么就在每一个非零元素前加一个前缀符“1”,然后在前缀符后加上用以标识非零元素1、2和-1的码字,最后将该前缀符“1”和其后的码字存储到该行的编码表q中; ②用b个比特来表示这个非零元素所在列的位置,并将这b个比特存储到该行的编码表q中,其中b的值按如下二种情况进行计算; 对于在某一行遇到的第一个非零元素,b=[log2N];这里的b个比特用来指明第一个非零元素关于本行首端的位置; 对于在某一行遇到的除了第一个非零元素以外的其他非零元素,b=[log2(N-c)],其中c是前一次遇到的非零元素的列的位置;这里的b个比特用来表示这个非零元素关于前一次编码的非零元素的右端的位置; ③在某一行的最后一个非零元素编码完后,使用一个二进制位“0”来表示本行剩余的元素均为零,并将这个二进制位“0”存储到该行的编码表q中,否则,如果该行的最后一个非零元素的位置在本行的末尾,那么就不必使用“0”来表示本行剩余的元素均为零; (A8)输出坐标表Q,其中Q是由矩阵变量R的所有行的行编码表顺序连接而得到的。
上述静止图像压缩编码方法的解码方法,其步骤包括 (B1)将一个大小为M×N的矩阵变量W的所有元素赋任意初值,同时令num=0; (B2)根据坐标表Q,解码出大小为M×N的坐标矩阵变量R; (B3)根据颜色表P,计算出同类块的总数total_num; (B4)num=num+1;根据P{num},获取该同类块的参数值,即左上角的坐标(x1,y1)、右下角的坐标(x2,y2)、以及其4个角落的灰度值(g1,g2,g3,g4); (B5)根据坐标(x1,y1)和(x2,y2)的位置关系,利用步骤(A2)中的公式计算该同类块的所有gest(x,y),其中gest(x,y)表示该同类块中坐标(x,y)处的近似灰度值,x1≤x≤x2,y1≤y≤y2; (B6)根据坐标矩阵变量R,将该同类块的解码结果赋值给矩阵变量W中左上角坐标为(x1,y1)且右下角坐标为(x2,y2)的矩形块; (B7)如果num<total_num,转入步骤(B4),否则进入步骤(B8); (B8)输出矩阵变量W所对应的灰度图像,得到解码图像。
本发明借助于布局问题的思想,通过采用寻找分割最大化的非对称分割方法,对著名的Gouraud阴影法进行了扩展,提出了扩展的Gouraud阴影法,通过使用矩形NAM图像表示方法和扩展的Gouraud阴影法,即可提供一种基于非对称逆布局模型的静止图像压缩编码方法,简称为NAMC表示方法。与已经商业化了JPEG表示相比,无论从主观还是从客观的角度来说,BTTC的重建图像质量均是较为满意的,而且在执行时间上BTTC是优于JPEG的。而且在保持图像质量和不牺牲图像压缩比的情况下,STC方法比BTTC方法的执行时间至少要少一半。BTTC和STC灰度图像表示算法的复杂度都是不对称的,编解码分别为O(n log n)和O(n),其中n为灰度图像的像素数。因此,在保持图像质量和不牺牲图像压缩比的情况下,BTTC和STC方法仅在执行时间上是优于JPEG方法的,但它们与JPEG方法相比并不能降低图像的比特率。这是BTTC和STC方法不能推广应用,不能与目前已经商业化了的JPEG方法相竞争的主要原因。
BTTC和STC方法过于强调分割的对称性,因此不是最优的表示方法。借助于布局问题的思想,通过以寻找分割最大化的非对称分割方法为研究目标,本发明提供了一种基于非对称逆布局模型的静止图像压缩编码方法,简称NAMC方法,NAMC灰度图像表示算法的编解码复杂度与BTTC和STC方法是一样的,分别为O(n log n)和O(n),其中n为灰度图像的像素数。
本发明相比现有技术具有如下优点 1、与已经商业化了JPEG方法相比,具有更低的比特率和更快的编解码速度,其编解码复杂度仅为O(n log n)和O(n),其中n为灰度图像的像素数。在保证图像质量的前提下,其比特率比JPEG下降约5.39%~11.24%,更能够更有效地减少数据存储空间。
2、与目前流行STC方法相比,具有更少的块数,在保证图像质量的前提下,其同类块的数目下降了12.22%~18.48%,从而具有更快的图像处理速度。
3、与流行的基于STC表示的矩计算算法的复杂度进行比较,理论分析表明基于NAMC表示方法的矩计算算法的复杂度是低于STC表示的矩计算算法的复杂度的,仅为O(n),其中n为灰度图像用NAMC表示时的同类块的数目,因而NAMC表示具有更快的计算速度。
因此,在保证图像质量的前提下,本发明提供的NAMC方法是优于STC和JPEG表示方法的。1991年至今的JPEG表示方法已经获得了广阔的商业前景,目前对JPEG热情最大的还是那些数字照相机厂商。本发明既可应用于传统的JPEG市场,如扫描仪、打印机、数码相机等,又可应用于新兴领域,如网路传输、无线通讯、医疗图像等。



图1为本发明NAMC方法的完整流程图; 图2为NAMC方法的编解码流程图,其中(2a)为NAMC编码方法的流程图,(2b)为NAMC解码方法的流程图; 图3为本发明同类块的示意图; 图4为STC方法的一个实例(ε=10),其中,(4a)为512×512大小的F16灰度图像,(4b)为16×16大小的子图像矩阵,(4c)为STC方法分割后的同类块,(4d)为STC方法重建后的图像矩阵; 图5是NAMC方法的一个实例(ε=10),其中,(5a)是NAMC方法分割后的同类块,(5b)是图(5a)对应的R矩阵;(5c)是NAMC方法重建后的图像矩阵。
图6是标准Lena图像和用STC方法和NAMC方法重建后的图像(ε=20),其中,(6a)是512×512大小的标准Lena灰度图像,(6b)是STC方法重建后的图像;(6c)是NAMC方法重建后的图像。

具体实施例方式 借助于BTTC和STC灰度图像表示方法的思想,本发明扩展了著名的Gouraud阴影法,并通过使用矩形NAM和扩展的Gouraud阴影法,提供了一种基于非对称逆布局模型的静止图像压缩编码方法,简称为NAMC表示方法。本发明包括编码和解码二个部分,其总体流程如图1所示,其编码过程主要是利用扩展的Gouraud阴影法和矩形NAM方法,将灰度图像f分割为互不重叠的同类块;再对所有同类块进行编码,获取其颜色表P和坐标表Q。其解码过程主要是根据坐标表Q,解码出坐标矩阵变量R,再根据R和颜色表P,利用扩展的Gouraud阴影法重建解码图像,并计算其PSNR。本发明方法的复杂度与BTTC与STC的复杂度是一样的,即编解码部分的时间复杂度分别为O(n log n)和O(n),其中n为灰度图像的像素数。实验结果表明与当前的STC灰度图像表示方法相比,在保持图像质量的前提下,本发明提出的灰度图像表示方法具有更低的比特率和更少的块数,因而能够更有效地减少数据存储空间,是静止图像压缩编码的一种良好方法。这种表示方法可以应用于图像表示的各个方面,在降低存储空间、加快传输速度、提高模式匹配效率等方面具有良好的理论参考意义和实际应用价值。
如图2(a)所示,本发明提供的编码方法通过对给定的一幅M×N的灰度图像f和误差允许量ε进行NAMC编码,并将结果存储到一个颜色表P和一个坐标表Q里。具体包括以下步骤 第一步将矩阵变量R的所有元素赋值为0,矩阵变量R的大小与待处理的灰度图像f相等,均为M×N,同时令num=0;其中,M和N均为自然数。
第二步按光栅扫描的顺序确定灰度图像f中的一个未被标识的矩形块的起始点(x1,y1),根据该起始点和给定的误差允许量ε确定一个面积最大的同类块H,并将同类块H在灰度图像f中作标识,以便下一个起始点的寻找。当ε取值较小时,比特率较高,但压缩率较低;反之,当ε取值较大时,比特率较低,但压缩率较高。误差允许量ε的经验值优选范围为5~25, 在扩展的Gouraud阴影法中,给定一个误差允许量ε,当且仅当一个矩形块内所有像素的灰度值g(x,y)均满足条件|g(x,y)-gest(x,y)|≤ε时,这个矩形块才被称为同类块,其中,(x1,y1)、(x2,y2)分别为矩形块左上角和右下角的坐标值,x1≤x≤x2,y1≤y≤y2。同类块的形式化定义如附图3所示,其中g1,g2,g3和g4是矩形块4个角落的灰度值,gest(x,y)是矩形块中坐标(x,y)处的近似灰度值。根据坐标(x1,y1)和(x2,y2)的位置关系,gest(x,y)的计算方法如下 第1种情况如果x1<x2且y1<y2,则 gest(x,y)=g5+(g6-g5)×i1, 其中g5=g1+(g2-g1)×i2,g6=g3+(g4-g3)×i2,i1=(y-y1)/(y2-y1),且i2=(x-x1)/(x2-x1)。
第2种情况如果x1≠x2且y1=y2,则 gest(x,y)=g1+(g4-g1)×[(x-x1)/(x2-x1)]. 第3种情况如果x1=x2且y1≠y2,则 gest(x,y)=g1+(g4-g1)×[(y-y1)/(y2-y1)]. 第4种情况如果x1=x2且y1=y2,则 gest(x,y)=g1. 第三步记录同类块H的参数,即左上角的坐标(x1,y1)、右下角的坐标(x2,y2)、以及4个角落的灰度值(g1,g2,g3,g4);令num=num+1, 第四步根据坐标(x1,y1)和(x2,y2)的位置关系,按如下3种情况将找到的同类块H的参数存储到一个颜色表P中。
第1种情况如果x1<x2且y1<y2,则 将同类块的参数(g1,g2,g3,g4)赋值到颜色表P{num}中,并将矩阵变量R中对应位置的矩形块的左上角和右下角分别用“1”和“2”进行标识。
第2种情况如果x1≠x2且y1=y2,或x1=x2且y1≠y2则 将同类块的参数(g1,g4)赋值到颜色表P{num}中,并将矩阵变量R中对应位置的矩形块的左上角和右下角分别用“1”和“2”进行标识。
第3种情况如果x1=x2且y1=y2,则 将同类块的参数(g1)赋值到颜色表P{num}中,并将矩阵变量R中对应位置的矩形块用“-1”进行标识。
第五步循环执行第二步到第四步,直到灰度图像f中的同类块均被标识完毕。
第六步输出颜色表P。
第七步根据下述坐标数据压缩算法,对矩阵变量R中所有非零元素的坐标进行编码,并将编码结果存储到一个坐标表Q中。
坐标数据压缩算法包括下述过程 ①逐行扫描大小为M×N的矩阵变量R,如果该行所有元素均为零,那么就不用编码该行,在这种情况下,使用一个二进制位“0”来表示本行从头到尾都不存在非零元素,并将该二进制位“0”存储到该行的编码表q中。否则,如果该行存在非零元素,那么就在每一个非零元素前加一个前缀符“1”,然后在前缀符后加上用以标识非零元素1、2和-1的码字,最后将该前缀符“1”和其后的码字存储到该行的编码表q中。编码过程中使用的前缀码字集如下表1所示。
表1 3类顶点符号的码字集

②用b个比特来表示这个非零元素所在列的位置,并将这b个比特存储到该行的编码表q中,其中b的值按如下二种情况进行计算。
第一种情况对于在某一行遇到的第一个非零元素,b=[log2N]。这里的b个比特用来指明第一个非零元素关于本行首端的位置。
第二种情况对于在某一行遇到的除了第一个非零元素以外的其他非零元素,b=[log2(N-c)],其中c是前一次遇到的非零元素的列的位置。这里的b个比特用来表示这个非零元素关于前一次编码的非零元素的右端的位置。
③在某一行的最后一个非零元素编码完后,使用一个二进制位“0”来表示本行剩余的元素均为零,并将这个二进制位“0”存储到该行的编码表q中,否则,如果该行的最后一个非零元素的位置在本行的末尾,那么就不必使用“0”来表示本行剩余的元素均为零。
第八步输出坐标表Q,其中Q是由矩阵变量R的所有行的行编码表顺序连接而得到的。
如图2(b)所示,本发明提供的解码方法通过对给定的一个颜色表P和一个坐标表Q进行NAMC解码(P和Q是一幅大小为M×N的灰度图像f的NAMC编码算法的结果),输出重建图像。通过计算该重建图像的PSNR(峰值信噪比),可以得知重建图像的质量。具体包括以下步骤 第一步将一个大小为M×N的矩阵变量W的所有元素赋任意初值,同时令num=0。
第二步根据坐标表Q,解码出大小为M×N的坐标矩阵变量R。
第三步根据颜色表P,计算出同类块的总数total_num。
第四步num=num+1。根据P{num},获取该同类块的参数值,即左上角的坐标(x1,y1)、右下角的坐标(x2,y2)、以及其4个角落的灰度值(g1,g2,g3,g4)。
第五步根据坐标(x1,y1)和(x2,y2)的位置关系,利用扩展的Gouraud阴影法计算该同类块的所有gest(x,y),其中gest(x,y)表示该同类块中坐标(x,y)处的近似灰度值,x1≤x≤x2,y1≤y≤y2。
第六步根据坐标矩阵变量R,将该同类块的解码结果赋值给矩阵变量W中左上角坐标为(x1,y1)且右下角坐标为(x2,y2)的矩形块。
第七步如果num<total_num,转入第四步,否则进入第八步。
第八步输出解码图像,并根据如下公式计算其PSNR 实例 附图4是STC方法的一个示意图(ε=10),ε是误差允许量;图4(a)是从一幅大小为512×512的F16灰度图像,图4(b)是从图4(a)中提取出的大小为16×16的子图像矩阵。图4(c)是在ε=10时根据Gouraud阴影法和二元树分解规则所获得51个同类块。图4(d)是根据图4(c)的线性树表和颜色表重建后的图像,易知重建后图像的PSNR为41.7117。根据图4(c)对应的二元树表示结构可以算出线性树表的长度为101,因此图4(b)用STC方法表示时的BPP为(101+51×4×8)/(16×16)=6.7695。
图5是本发明NAMC方法的一个示意图(ε=10),通过使用本发明描述的NAMC表示算法,可以把图4(b)分割为如图5(a)所示的互不重叠的矩形块。在另外一个矩阵变量R中(如图5(b)所示)用单独的标签来标识图5(a)中不同的顶点类型。在矩阵变量R中,符号“1”和“2”分别用来标识矩形的左上角和右下角,符号“-1”仅用来标识孤立点矩形。这些互不重叠的矩形块具有如下特点,即如果以光栅扫描的方式扫描矩阵变量R,每一个矩形的左上顶点和右下顶点在列方向上是最近的。因此,只要原始图像被分割后的矩形互不重叠,矩阵变量R就是可以解码的。图5(a)中一共有36个矩形,也即30个标准矩形,3个宽为1的矩形,2个长为1的矩形和1个孤立点矩形。而且,根据Mohamed等人提出的坐标压缩程序(S.A.Mohamed,M.M.Fahmy.Binary image compression using efficient partitioninginto rectangular regions.IEEE Transactions on Communications,1995,43(5)1888-1892),不难算出总共需要423个比特来表示这36个矩形块的坐标。因此图5(a)用NAMC方法表示时的BPP为(423+30×4×8+(3+2)×2×8+1×8)/(16×16)=5.7461。图5(c)是根据NAMC解码算法重建后的图像,易算出解码后重建图像的PSNR为37.6069。
因此,通过与图4的对比分析,不难看出,与STC方法相比,在保持图像质量的前提下,NAMC方法具有更低的比特率和更少的块数,因此能更有效地减少数据存储空间。
下面以512×512大小的标准Lena灰度图像作为测试对象(如图6(a)所示)来更好地说明NAMC表示方法的有效性。考虑6种不同的误差允许量ε=5、10、15、20、25和30,下面的表2给出了NAMC表示方法和STC表示方法的性能比较,这两种表示方法的灰度图像的表示效率可以用以下3个参数进行度量,即:矩形块的数目N、压缩性能BPP、以及质量性能PSNR。
表2中ΔN、ΔBPP和ΔPSNR分别表示NAMC表示方法相对于STC表示方法在N、BPP和PSNR上减少或下降的程度,分别用如下3个公式来进行计算: 表2 STC方法和NAMC方法的性能比较
从表2不难看出,在不同的误差允许量下,NAMC表示方法与STC表示方法相比,在矩形块的数目N方面,前者比后者少12.22%~18.48%;在压缩性能BPP方面,前者比后者降低了5.39%~11.24%;在质量性能PSNR方面,前者比后者下降了5.01%~8.85%。而且,随着ε的增加,这两种表示方法的N、BPP和PSNR均呈下降趋势。
在相同的误差允许量下,比如当ε=20,NAMC(STC)的矩形数为7686(9428),NAMC(STC)的BPP为1.2228(1.2925),NAMC(STC)的PSNR为30.5179(33.1101),显然,NAMC在矩形块的数目N(减少了18.48%)和压缩性能BPP(降低了5.39%)上是优于STC的,尽管NAMC的PSNR比STC下降了7.83%。图6(b)和(c)分别是在ε=20时用STC方法和NAMC方法重建后的图像。从主观上来说,人眼视觉系统是很难区分这两幅图像之间的差别的。从客观上来说,通常,如果重建图像的PSNR达到30左右,人眼主观上是分辨不出原始图像与重建图像之间的差异的。显然,当ε=20,两种方法重建后的图像的PSNR均达到了30以上。
因此,与STC表示方法相比,在相同的误差允许量(如当ε=20)并在保持图像质量的前提下,NAMC表示方法具有更低的比特率和更少的块数,能够更有效地节省减少数据存储空间,因而是一种更好的灰度图像表示方法。
权利要求
1、一种基于非对称逆布局模型的静止图像压缩编码方法,包括以下步骤
(A1)将矩阵变量R的所有元素赋值为0,矩阵变量R的大小与待处理的灰度图像f相等,均为M×N,同时令num=0;其中,M和N均为自然数;
(A2)按光栅扫描的顺序确定灰度图像f中的一个未被标识的矩形块的起始点(x1,y1),根据该起始点和给定的误差允许量ε确定一个面积最大的同类块H,并将同类块H在灰度图像f中作标识;
同类块是指满足下述条件的矩形块
该矩形块内所有像素的灰度值g(x,y)均满足条件|g(x,y)-gest(x,y)|≤ε,其中,ε为用户设定的误差允许量,(x1,y1)、(x2,y2)分别为该矩形块左上角和右下角的坐标值,x1≤x≤x2,y1≤y≤y2;根据坐标(x1,y1)和(x2,y2)的位置关系,gest(x,y)表示该同类块中坐标(x,y)处的近似灰度值,按下述四种情况计算
如果x1<x2且y1<y2,则gest(x,y)=g5+(g6-g5)×i1,
其中g5=g1+(g2-g1)×i2,g6=g3+(g4-g3)×i2,i1=(y-y1)/(y2-y1),且i2=(x-x1)/(x2-x1);
如果x1≠x2且y1=y2,则gest(x,y)=g1+(g4-g1)×[(x-x1)/(x2-x1)];
如果x1=x2且y1≠y2,则gest(x,y)=g1+(g4-g1)×[(y-y1)/(y2-y1)];
如果x1=x2且y1=y2,则gest(x,y)=g1;
(A3)记录同类块H的参数,即左上角的坐标(x1,y1)、右下角的坐标(x2,y2)、以及4个角落的灰度值(g1,g2,g3,g4);令num=num+1,
(A4)根据坐标(x1,y1)和(x2,y2)的位置关系,按如下三种情况将找到的同类块H的参数存储到一个颜色表P中;
如果x1<x2且y1<y2,则将同类块的参数(g1,g2,g3,g4)赋值到颜色表P{num}中,并将矩阵变量R中对应位置的矩形块的左上角和右下角分别用“1”和“2”进行标识;
如果x1≠x2且y1=y2,或x1=x2且y1≠y2则将同类块的参数(g1,g4)赋值到颜色表P{num}中,并将矩阵变量R中对应位置的矩形块的左上角和右下角分别用“1”和“2”进行标识;
如果x1=x2且y1=y2,则将同类块的参数(g1)赋值到颜色表P{num}中,并将矩阵变量R中对应位置的矩形块用“-1”进行标识;
(A5)循环执行步骤(A2)到(A4),直到灰度图像f中的同类块均被标识完毕;
(A6)输出颜色表P;
(A7)根据下述坐标数据压缩算法,对矩阵变量R中所有非零元素的坐标进行编码,并将编码结果存储到一个坐标表Q中;
①逐行扫描大小为M×N的矩阵变量R,如果该行所有元素均为零,那么就不用编码该行,在这种情况下,使用一个二进制位“0”来表示本行从头到尾都不存在非零元素,并将该二进制位“0”存储到该行的编码表q中;否则,如果该行存在非零元素,那么就在每一个非零元素前加一个前缀符“1”,然后在前缀符后加上用以标识非零元素1、2和-1的码字,最后将该前缀符“1”和其后的码字存储到该行的编码表q中;
②用b个比特来表示这个非零元素所在列的位置,并将这b个比特存储到该行的编码表q中,其中b的值按如下二种情况进行计算;
对于在某一行遇到的第一个非零元素,b=[log2N];这里的b个比特用来指明第一个非零元素关于本行首端的位置;
对于在某一行遇到的除了第一个非零元素以外的其他非零元素,b=[log2(N-c)],其中c是前一次遇到的非零元素的列的位置;这里的b个比特用来表示这个非零元素关于前一次编码的非零元素的右端的位置;
③在某一行的最后一个非零元素编码完后,使用一个二进制位“0”来表示本行剩余的元素均为零,并将这个二进制位“0”存储到该行的编码表q中,否则,如果该行的最后一个非零元素的位置在本行的末尾,那么就不必使用“0”来表示本行剩余的元素均为零;
(A8)输出坐标表Q,其中Q是由矩阵变量R的所有行的行编码表顺序连接而得到的。
2、一种权利要求1所述静止图像压缩编码方法的解码方法,其步骤包括
(B1)将一个大小为M×N的矩阵变量W的所有元素赋任意初值,同时令num=0;
(B2)根据坐标表Q,解码出大小为M×N的坐标矩阵变量R;
(B3)根据颜色表P,计算出同类块的总数total_num;
(B4)num=num+1;根据P{num},获取该同类块的参数值,即左上角的坐标(x1,y1)、右下角的坐标(x2,y2)、以及其4个角落的灰度值(g1,g2,g3,g4);
(B5)根据坐标(x1,y1)和(x2,y2)的位置关系,利用步骤(A2)中的公式计算该同类块的所有gest(x,y),其中gest(x,y)表示该同类块中坐标(x,y)处的近似灰度值,x1≤x≤x2,y1≤y≤y2;
(B6)根据坐标矩阵变量R,将该同类块的解码结果赋值给矩阵变量W中左上角坐标为(x1,y1)且右下角坐标为(x2,y2)的矩形块;
(B7)如果num<total_num,转入步骤(B4),否则进入步骤(B8);
(B8)输出矩阵变量W所对应的灰度图像,得到解码图像。
全文摘要
借助于布局问题的思想,本发明公开了一种基于非对称逆布局模型的静止图像压缩编码方法,简称为NAMC表示方法。编码技术主要是利用扩展的Gouraud阴影法和矩形非对称逆布局模型方法,将灰度图像分割为互不重叠的同类块;再对所有同类块进行编码。其解码技术主要是根据NAMC编码结果的坐标表和颜色表,利用扩展的Gouraud阴影法重建解码图像。在保证图像质量的前提下,NAMC表示方法具有更低的比特率和更少的块数,从而具有更快的处理速度,是一种优于目前已经商业化了的JPEG方法的图像压缩编码方法。本发明既可应用于传统的JPEG市场,如扫描仪、打印机、数码相机等,又可应用于新兴领域,如网路传输、无线通讯、医疗图像等。
文档编号H04N1/41GK101364306SQ200810196929
公开日2009年2月11日 申请日期2008年9月12日 优先权日2008年9月12日
发明者陈传波, 郑运平, 方少红, 刘小峰 申请人:华中科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1