JPEG2000编码方案和结构划分研究

打印本文 - 下载本文〗〖0条评论 - 150推荐〗〖字数:3400字〗

1JPEG2000是新一代静止图像压缩标准,它采用了小波变换、优化截断嵌入块编码和高效的码流组织形式。适用于各种类型的静止图像,如二值图像、灰度图像和彩色图像;支持自然图像、合成图像、医学图像和文本。JPEG2000具有如下主要特点:①良好的低比特率压缩性能,以适应网络、移动通信等有限带宽的应用;②能够根据图像质量、视觉感受和分辨率进行渐进传输;③既支持无损又支持有损压缩;④对码流的随机存取和感兴趣区域(ROI)的编码;⑤具有较强的抗误码能力;⑥具有开放结构,并向下兼容等。

2JPEG2000基本编码方案

2.1基本编码流程方案

JPEG2000的基本编码流程方案主要有以下6个部分组成(如图1):(1)预处理:主要是将源图像划分为较小的矩形区域,称为拼接块,作为独立的图像用于压缩。目的是为了降低压缩过程所需的内存资源。降低量级可以使样本的动态范围基本关于零对称,使在进行离散小波变换后的系数的动态范围不会过大,有利于编码。(2)分量变换:指对具有多个分量的图像先经过某种变换来降低各分量之间的相关性。(3)离散小波变换:针对每个拼接块的每个分量要进行离散小波变换,就是从二维空间到分辨率空间的变换,变换的目的是增加数据的冗余度,因而可以大幅提高压缩效率。(4)量化:就是降低数据精度,提高压缩效率,实施有损压缩。(5)第一级编码:按照位平面的次序经过三个通道进行熵编码(算术编码)。(6)量二级编码:分层打包形成码流。

2.2.1分辨率、子带和码块源图像在预处理阶段被划分为各自独立的拼接块,在针对每个拼接块的每个分量进行离散小波变换时,若进行N级小波分解,则可有N个分辨率;每个分辨率的LH、HL和HH子带保留,LL子带继续分解,共得到(3N+1)个子带。如图2是三级变换的子带分布情况。每个子带又要被划分为大小相同的矩形块,称为码块,码块的宽和高都要是2的幂,典型值是32×32或64×64,每个码块将被独立编码。图2三级小波变换的子带分布图

2.2.2质量层、分区和包分区(Precinct)是一个逻辑结构,是同一分辨率下某空间连续区域所有子带中对应码块的集合(见图3)。图中粗实线为子带分界,细实线为Precinct分界。简单地说,Precinct包含3个具有相同空间位置的相同大小的矩形区域,这3个矩形区域分别在某分辨率的LH、HL、HH之中。Precinct包含整数个码块,最少包含3个码块(分别属于LH、HL、HH)。图3分区示意图按照对图像失真的影响程度,对码流进行裁剪,分类组织,把具有相似失真影响的码流的集合称为一个质量层。每个分区为每个层贡献一个包,包是码流组织的基本单位,它包含该分区中所有码块对该质量层的增量贡献。

3编码模型与算法

3.1分量变换模型

JPEG2000标准中定义了两种分量间变换:不可逆分量变换(ICT)和可逆分量变换(RCT)。ICT实质上是实数到实数的,RCT实质上是整数到整数的。这两种变换都是从RGB颜色空间变换到YCbCr颜色空间。分量变换之后,各个分量之间可以认为是独立的。不可逆分量变换的公式为:Y=0.299R+0.587G+0.114BU=-0.16875R-0.33126G+0.5BV=0.5R-0.41869G-0.08131B可逆分量变换为:Y=(R+2*G+B)/4U=R-GV=B-GG=Y-(Ur+Vr)/4R=U+GB=V+G

3.2量化模型

JPEG2000使用的是均匀量化。其量化和反量化模型为:y=||x/Δ||*sgn(x)x=(y+r*sgn(y))*Δ其中,△称为步长,r称为偏置参数,通常是1/2,对于无损压缩,量化步长为1(也可以说无须量化);对于有损压缩,量化步长与码率控制有关。不同的子带数据的动态范围不一样,因而不同子带使用不同的步长。

3.3小波变换模型

离散小波变换可以是不可逆的小波变换,也可以是可逆的小波变换。不可逆小波变换默认使用Daubechies9/7滤波器实现,即是有损编码。可逆变换默认使用LeGal5/3滤波器实现,即是无损编码。JPEG2000中使用的是小波的提升算法。5/3小波提升算法模型:Y(2n+1)=X(2n+1)-[X(2n)+X(2n+2)]/2Y(2n)=X(2n)-[Y(2n-1)+X(2n+1)+2]/49/7小波提升算法模型,包含四个步骤:第一次预测、第一次更新、第二次预测和第二次更新,公式分别为:Y(2n+1)=X(2n+1)-[X(2n)+X(2n+2)]×αY(2n)=X(2n)-[Y(2n-1)+Y(2n+1)+2]×βY(2n+1)=Y(2n+1)-[Y(2n)+Y(2n+2)]×γY(2n)=Y(2n)-[Y(2n-1)+Y(2n+1)+2]×δ其中:α=-1.586134342,β=-0.052980118,γ=0.882911075,δ=0.443506852

3.4块编码

块编码是依位平面由高到低的次序使用三个编码过程而实施的,其流程如图4所示。编码过程P1称为重要性传播通道,对系数本身重要状态为0但它的8个邻居系数至少有一个重要状态已经为1的系数进行编码。编码过程P2称为幅度精炼通道,对在以前已编码位平面变为重要的系数进行编码。编码过程P2称为清除通道,对在P1和P2中没有被编码的系数进行编码。所谓重要状态,就是其值是一个二值变量,初始化时为0,当按从高平面到低平面的顺序编码过程中首次遇到该系数的第一个1比特时变为1,表示这个系数已经重要。图4位平面编码流程图经过三个通道得到的并不是最终的压缩数据码流,还要使用算术编码器进行编码,JPEG2000使用的是基于上下文的自适应二进制算术编码器,其内容可参考文献1,本文不再赘述。

3.5码流组织与质量控制

3.5.1码流组织

在块编码中,把某一个编码通道过程形成的码流,称为过程码流。最终的码流是由包构成的,一个数据包是由相关过程码流组成的,每个包隶属于某个层。分层打包的准则是保证一定码长下的失真度最小。把分层打包之前的码流,也就是第一级编码形成的码流,称为第一级码流;第一级码流经过第二级编码的形成的码流,称为第二级码流,也就是最终的码流。显然,必须确定第一级码流的一系列的截断点,裁剪形成第二级码流。

3.5.2率分配

率分配(率控制)是一个把量化步长和编码率赋予不同频带的过程。编码率指单位样本的编码位数。编码率越低,压缩率越高,失真越大;编码率越高,压缩率越低,失真越小。在某个码块Bi中,每个编码通道过程的端点都是候选截断点(z),必须估算每个候选截断点(z)为止的所有编码字节数,以及在该点处产生的失真。失真-长度斜率(distortion-lengthslope),定义为:可行截断点要求:按照可行截断点要求,可行截断点恰好在所谓的“凸壳”上。如图5所示。图5失真-长度斜率图

3.5.3质量层控制

把每个码块的具有相似斜率的可行截断点收集到一起,形象地叫“斜率箱”,这就是质量层的本质含义。为此,每个层有一个相关的截断门限,包含在层中的具有的斜率范围为,如图6所示。

4结束语

JPEG2000作为静态图像压缩标准,在数字图像领域得到了广泛而成功的应用。JPEG2000采用小波变换和位平面熵编码器,可获得当今最先进的压缩性能。目前诸多文献对JPEG2000的概念原理的认识不够全面,本文从总体上阐述了其基本概念、模型与算法,为JPEG2000的进一步研究和应用提供了依据。

版权声明: 请尊重本站原创内容,如需转载本范文,请注明原文出处:中国范文模板网
原文地址:http://www.fanwenmuban.com/lw/jsjyy/220115.html

    按字数查找计算机应用研究

    相关评论

    评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)