其中R为量化步长。具体过程为:设PD是1个比特位,当M≤TPD=1时,输出码流中输出一位PD=0,则解码器以量化矩阵Q对输入码流进行反量化;当M>T时,输出码流中输出PD=1,然后输出量化步长R,用2个字节来表示,则解码器以量化矩阵Q(1+R)对输入码流进行反量化。
(3)熵编码:量化后的每个子带被进一步分成固定大小的块,并对每个子块采用位平面技术分别进行熵编码。嵌入式位平面编码器按照位平面从最高有效位N一1~0降序地进行编码,因此在截取压缩码流时,先保证所有系数的最高有效位平面的优先传输,保证码流的解码质量。在每个编码之后都同时记录当前编码的码率R和对应的失真D,得到的率失真曲线将用于后面的码流组装。
(4)码流组装:在所有的系数块完成编码后,根据最小化全局失真的原则用码流组装对各个块的码流进行码率分配。原始的码率控制方法采用全局最优的码率控制,会导致帧方向上质量的颤抖。本文结合率失真优化和帧方向上质量平稳2方面的要求,沿帧方向上采用新的码率分配方法,同时在沿水平和垂直方向上保持了率失真优化的方法。即对于同一时间轴小波子带的分块都采用同一斜率来选取截断点;对于不同时间轴小波子带的分块,按照不同的斜率来截断以调整时间轴方向的稳定性。可以根据式(2)的失真比例条件来调整截断点的斜率。
在中高码率环境下,各时间轴子带的衰减系数βn近似相等,因此可以简单的依照下等式通过控制各时间轴子带的率失真斜率来控制失真的比例。
此处δi为等式(2)给出的理论失真值,m为时间轴的小波子带个数。
前面的熵编码过程中已经计算并保存了每个块的率失真曲线。为了使先传输的码率对信息失真度的降低最快,需要保证率失真的凸性,因此按照文献中方法对每个块的率失真曲线采取凸包络处理。每个块的失真根据所处的小波子带乘上一个能量权重,以利用小波域的失真估计图像空域的失真:
此处w表示提升型小波合成滤波器带来的能量增益。对于双正交D9/7滤波器,低通增益wL=1.299,高通增益为wH=0.787。在三维方向上共经过n个低通和m个高通提升型滤波器的小波子带,能量增益为各层增益的乘积叫=wnLwmH。
对所有的块的率失真曲线,找出联合最优的率失真斜率点,并将码流在该点截断,然后将所有块中在同一斜率切点截断得到的码流片断组合成最终的压缩码流。最优斜率能够得出最接近目标码率的公共斜率,每个系数块的截断码率长度也作为头信息记录在压缩码流中,作为对压缩码流随机解码时的索引。