2
2
2
2
第 14 卷 第 10 期
2002 年 10 月
JOU RNAL O F COM PU T ER
A ID ED D ES IGN & COM PU T ER GRA PH ICS
计算机辅助设计与图形学学报
V o l. 14,N o. 10
O ct. , 2002
JPEG2000 图像压缩过程及原理概述
刘方敏 吴永辉 俞建新
(南京大学计算机科学与技术系 南京 210093)
(南京大学计算机软件新技术国家重点实验室 南京 210093)
摘 要 随着多媒体技术的广泛应用, 图像压缩界呼唤一种新的国际标准, 以满足用户对更高压缩效率和对压缩图
像的互动性和可伸缩性的要求, JPEG2000 就是在这种背景下应运而生的. 文中重点讨论 JPEG2000 PA R T 1 的图像
压缩过程和对应的原理技术, 说明它的几个重要特征是如何实现的; 并对最近即将标准化的 JPEG2000 PA R T 2 作
了一个简要的介绍, 通过实验数据再次说明了 JPEG2000 的先进性.
关键词 JPEG2000, EBCO T , 离散小波变换, 感兴趣区
中图法分类号 T P391
Image Com pression Process and Pr inc iple of JPEG2000
L iu Fangm in W u Yonghu i Yu J ianx in
(D ep a rtm en t of Com p u ter and T echnology , N anj ing U n iversity , N anj ing 210093)
(S ta te K ey L abora tory f or N ovel S of tw a re T echnology , N anj ing U n iversity , N anj ing 210093)
Abstract A s a new in ternational standard fo r im age com p ression JPEG2000 cam e in to being to m eet the u sers’
the p rocess, fundam en tal theo ries and in
new est dem ands of better perfo rm ance and functionality.
vo lved techno logies of im age com p ression in JPEG2000 PA R T 1 are p resen ted. M o reover,
the realization of som e
im po rtan t function s in JPEG2000 is also illu strated. A t the end of th is paper, the au tho rs m ake a b rief in troduction to
JPEG2000 PA R T 2,w h ich w ill be standardized soon, and verify the advancem en t of JPEG2000 by experim en tal data.
In th is paper,
Key words JPEG2000, EBCO T , DW T , RO I
1 引 言
随着时间的推移, 人们对图像压缩处理的要求越来越高,
旧的标准 (如 JPEG) 难以适应最新的形势. 在这种背景下, 近
几年来 JPEG 委员会的专家们一直致力于制订出一个全新的
图形压缩国际标准, 即 JPEG2000. 该标准共有 8 个部分, 其中
PA R T 1 在 2000 年 12 月份成为了国际标准, 它的目标是提供一
个最小化的无知识产权问题的 JPEG2000 可用系统; PA R T
2 目前仍处于 In ternational Standard U nder Pub lication 阶
段, 与 PA R T 1 比较, 它采用的技术更加复杂, 性能也更加优
良, 不过其中一些技术涉及到了知识产权问题( IPR ) , 并且它的
解码器并不能解码采用 PA R T 1 技术得到的码流; 其余 6 个部
分的标准化也在积极进行中, 重点将放到诸如移动图像, 标准的
高质量实施, 参考软件实施方案的提供, 针对扫描传真等应用的
图像格式、安全性、互动性以及传输协议、三维编码等问题上.
JPEG2000 的优秀之处并不仅仅体现在它对图像压缩性
能提高上, 更为重要的是, 它提供了一种全新的图像再现形
式. 为了具体地理解这一点, 先看一下 JPEG2000 PA R T 1 所
支持的特征:
(1) 改进的压缩性能;
(2) 有损压缩和无损压缩的能力;
(3) 多解析度支持;
(4) 可嵌入的码流;
(5) 感兴趣区 (R egion O f In terest, RO I) ;
(6) 对错误的鲁棒性;
(7) 对码流的随机访问处理;
(8) 灵活的文件格式;
……
这些特征的灵活运用, 可以在达到高效压缩的同时, 满足
在移动和网络环境下对互操作和可伸缩性的要求[1 ]. 而它们
的成功实现则在于 JPEG2000 采用了众多的最新技术, 如离
原稿收到日期: 2001
30. 刘方敏, 男, 1979 年生, 硕士研究生, 主要研究方向为多媒体技术. 吴永辉, 男,
1979 年生, 学士, 工程师, 主要研究方向为多媒体技术、数据库技术. 俞建新, 男, 1953 年生, 高级工程师, 主要研究方向为多媒体技术、计算机图
形学.
02; 修改稿收到日期: 2002
07
05
609
计算机辅助设计与图形学学报
2002 年
散小波变换 (D iscrete W avelet T ran sfo rm , DW T ) , EBCO T
(Em bedded B lock Coding w ith O p tim al T runcation) 编码算
法, 带 deadzone 的量化器等. JPEG2000 的需求针对性以及
技术先进性保证了它光明的应用前景.
2 JPEG2000 PART 1 的压缩过程及原理
图 1 所示为一个典型 JPEG2000 PA R T 1 的压缩过程.
2. 1 数据预处理
PA R T 1 的预处理一般包括三种操作: 区域划分, 降低
量级, 分量变换.
2. 1. 1 区域划分
区域划分是指将图像划分为大小相等的若干区域, 对每
一区域独立进行压缩处理. 区域划分的目的在于要降低压缩
过程所需的内存资源, 如果内存足够, 这一步可以忽略.
PA R T 1 要求划分的区域是互不重叠的, 因为这种划分是最
简单的, 但由此而产生的一个缺点就是边缘象素环境信息的
缺乏, 这个问题在 PA R T 2 中得到了解决 (见第 5 节).
2. 1. 2 降低量级
降低量级是将采样精度为 P 的无符号整数减去 2P - 1, 使
原来范围为[ 0, 2P - 1 ]的样本移位到[ - 2P - 1, 2P - 1- 1 ]这个
关于 0 对称的范围内. 这一步在简化对数值溢出等问题处理
的同时, 不会影响编码的效率.
2. 1. 3 分量变换
分量变换指对具有多个分量的图像先通过某种变换降
低这几个分量之间的相关性, 提高压缩效率. 目前 PA R T 1
中主要是对 R GB 分量采用 ICT 或 RCT , 将色彩信息转换为
频道信息.
ICT ( Irreversib le Co lo r T ran sfo rm ) 定义如下
Y
C b
C r
0. 299
0. 587
=
- 0. 16875
0. 500
- 0. 33126
- 0. 41869
0. 114
0. 500
- 0. 08131
×
R
G
B
.
RCT (R eversib le Co lo r T ran sfo rm ) 定义如下
Y =
- R + 2G + B
4
, U = R - G, V = B - G .
解压缩时需进行相应的逆变换以恢复原分量的值.
2. 2 离散小波变换 (DW T)
2. 2. 1 离散小波变换的一般过程
预处理后的数据将进行离散小波变换, 以进一步降低数
据之间的相关性. 与 JPEG 采用的离散余弦变换 (DCT ) 相
比,DW T 具有很好的局部性, 能够针对不同类型特点的图像
中的不同区域采用不同的空
频分辨率, 从而有可能取得更
好的压缩比, 而且它还可以提供实现无损压缩的机制.
简单来讲, 一维 DW T 即是对源信号进行了一系列的高
通和低通滤波, 并在每次滤波后将数据采样频率降为原来的
一半, 以保证每次小波变换后得到的系数与源信号数目相
同. 每次的低通滤波输出保存了源信息的低频信息, 它是一
个以更低分辨率对源信号的再现, 集中了源信号中的大部分
能量; 而高通滤波输出保存的则是源信号的高频信息, 如边
界、材质等, 其中所含能量很少. 一次低通滤波后的信号往往
还存在着大量的相关性, 为提高压缩性能, 仍需要对它再次
滤波, 直至信号之间相关性达到可以忽略的程度为止. 高通
滤波后的信号由于能量很小, 再对它进行滤波往往是不划算
的, 因而一般不再对它滤波. 这种滤波方式 (如图 2 所示) 被
称为 dyadic 分解, 它是 JPEG2000 PA R T 1 唯一支持的分解
方式.
二维 DW T 是对一维 DW T 的简单扩充, 通过将行信号
和列信号与高通滤波器 h 1 (n) 和低通滤波器 h 0 (n) 进行不同
的组合, 源图像被划分为 4 个子带. 其中唯一的一个低频子
带仍可以继续分解, 形成如图 3 所示的结构.
有几个细节问题需要注意: (1) 对边界信号进行小波变
换前, 由于缺乏周边信号的信息, 需先对信号进行扩展. 具体
的扩展方式受到滤波器的影响, 一般采取对称扩展的方式
( 如图 4 所示). (2) DW T 内在的提供了一个解决多分辨率
问题的机制, 对一个 N 层小波分解的图像来说, 它可以提供
N + 1 种分辨率供用户选择, 因为每层分解中的 kL L 都是对
源图像的一个低分辨率再现. (3) DW T 是针对整块区域的,
而DCT 是针对某个 8×8 块的, 所以当压缩率超过一定限度
时, JPEG2000 可以消除 JPEG 不可避免的“马赛克”现象. 关
于 DCT 和 DW T 的差异, 有一个形象的比喻: 同是压缩一堵
墙,DCT 是将每块砖敲碎了重新组装再放回原处, 而 DW T 是
将整堵墙敲碎了再重新组织. (4) JPEG2000 PA R T 1 所支持
∃
∃
10 期
刘方敏等: JPEG2000 图像压缩过程及原理概述
709
的滤波器组只有两种, 一种是具有较高有损压缩性能的浮点
型的 (9, 7) 滤波器组, 另一种是可同时满足有损无损压缩需求
的整数型的 (5, 3) 滤波器组 (无损压缩的介绍见第 2. 2. 2 节).
2. 2. 2 基于卷积的滤波和基于提升小波的滤波
JPEG2000 支持两种滤波方式: 基于卷积的滤波和基于
提升小波的滤波. 基于卷积的滤波是传统方法, 它将扩充后
的源信号与 h 0 (n) , h 1 (n) 作基于内积的点运算, 其缺点在于
无法即时用离散小波变换系数替换对应点的源信号数据, 因
此要占用更多的内存; 而基于提升小波的滤波可完全消除这
一缺点, 它的基本思想是先将源信号划分为奇数信号集合
i }, 然后对它们交替进行预测和更新
{d 0
的操作, 依次得到{d 1
i }, n= 0, 1,
2, …, N 保存的是源信号的高频滤波系数, {sN
i }保存的是低
频滤波系数, 并且数值上与相应的基于卷积的滤波系数相
等. 预测和更新操作的公式分别为
i }和偶数信号集合{s0
i }, …其中{d n
i }, {s1
i }, {d 2
i }, {s2
d n
i = d n- 1
i
i = sn- 1
sn
i
+ ∑
+ ∑
k
k
P n (k ) sn- 1
k
, n ∈ [ 1, 2, …, N ] ,
U n (k) d n
k, n ∈ [ 1, 2, …, N ] .
其 中, P n (k ) , U n (k ) 分别为预测和更新操作的权重, N
代表某次奇数 (偶数) 信号的获取所涉及的上一层的偶数 (奇
数) 信号的个数, 它的数值因所采用的滤波器族的不同而有
所差异, JPEG2000 PA R T 1 中 N 取值为 2. 图 5 所示为 N =
2 时的一个基于提升小波的滤波过程.
基于提升小波的滤波的另一个特点就是计算简单, 不论
是分解或重构都不涉及复杂的内积运算, 而且它还提供了无
损压缩的能力. 对于基于卷积的滤波, 即使是采用整数型的
(5, 3) 滤波器组, 随着分解层数的加深, 由于计算机无法为完
整的表示滤波系数提供足够的精度, 从而出现信息丢失; 而
基于提升小波的滤波则可以和量化器结合提供一个整数到
整数的压缩框架, 以实现无损压缩 [2 ].
一个可能的基于提升小波滤波的无损压缩系统的构成为
正变换
y (2n + 1) = x (2n + 1) -
x (2n) + x (2n + 2)
2
y (2n) = x (2n) +
逆变换
x (2n) = y (2n) -
y (2n - 1) + y (2n + 1) + 2
4
y (2n - 1) + y (2n + 1) + 2
4
,
.
,
x (2n + 1) = y (2n + 1) +
x (2n) + x (2n + 2)
2
.
这个系统得到的滤波系数全为整数, 正、逆变换简单, 并
且逆变换可完整地恢复出正变换之前的结果, 因而可实现无
损压缩.
2. 3 量 化
JPEG2000 的量化与 JPEG 量化基本相同: 总体上都是采
用均匀量化; 不同子带的量化步长一般不同. JPEG2000 的量
化器的一个特殊之处在于它引入了一个“deadzone”的概念,
在 PA R T 1 中, 对每个子带的量化器, deadzone 的宽度都是其
它步长的 2 倍, 如图 6 所示. 这意味着如果采用步长为
b的这
种量化器并得到长为M b的量化索引值, 那么在解码过程中,
我们可通过选用步长为
b×2M b- M a的量化器来恢复原来的索
引值最重要的前M a位. 这样做的优点就是为我们提供信噪比
分级的一个手段: 先用较小的步长对信号进行细致的量化, 然
后依据用户的需求, 采用不同的宽步长 (一般为量化步长的 2
809
计算机辅助设计与图形学学报
2002 年
的幂次方倍) 进行逆量化, 仅解码原索引中重要性较高的若干
位, 以提供给用户不同质量的图像.
JPEG2000 量化器的另一个不同在于, 解码时量化索引
的逆量化值可取量化器允许范围中的某个值而不是仅局限
在中值点. 如果取值策略正确, 将有助于提高解码性能.
量化器步长是因子带而异的, 目前有两种考虑因素: 一
种是人类视觉对子带信号的敏感性 (HV S 的属性) ; 另一种
是依据不同子带的均方误差对重建后图像的总均方误差的
贡献大小来决定量化步长. 量化器步长的传输也有两种方
table, 显式地传给解码器; 另
式: 一种是类似于 JPEG 中的 q
一种仅传输某子带的量化器步长
b计
算出.
2. 4 自适应算术编码 (第一层编码) 和
b, 其它子带步长由
码流组织 (第二层编码)
2. 4. 1 EBCO T 算法
本小节介绍 JPEG2000 的另一个核心内容—— 优化截
取的嵌入式块编码 (EBCO T ) 算法, 它是基于小波变换的嵌
入式编码的方法之一. 所谓“基于小波变换的嵌入式编码”是
指编码器将等待编码的、经过小波变换后的比特流按重要性
不同进行排序, 提供多个满足不同目标码率或失真度的截断
点, 使得解码器方能根据目标码率或失真度的要求在某一截
断点结束解码, 提供相应质量的图像. 当前这种编码方法很
多, 如 EZW 算法, SP IH T 算法等. 那么, JPEG2000 为何选择
EBCO T 呢?
JPEG2000 非常强调的一点是灵活性, 因为它能保证用
同一个图像满足不同用户的需求. 多分辨率支持和多失真度
支持都是灵活性的必然要求. 多分辨率支持可通过 DW T 来
实现, 多失真度支持则可通过位平面编码 (位平面指将所有
数据相同位的数据抽取出来组织到一起) 来解决. 但是, 将这
两种技术结合起来并不能达到“1+ 1= 2”的效果, 原因在于
位平面编码过程中往往用到了源信号数据之间的某种相关
性来提高编码效率, 即将不同位平面或者不同位置上相关性
较强的数据组织到一起进行编码. 这将和多分辨率支持所要
求的数据按子带排列的要求产生冲突, 结果是虽然可能取得
了多失真度的支持, 但无法用同一码流取得多分辨率的支
持, EZW 和 SP IH T 算法均存在着这一问题. 而 EBCO T 中则
不会出现这一问题, 因为它将源图像分为若干大小相等的
块, 对每块独立进行编码, 如果想要得到某分辨率下的图像
就仅仅解码该分辨率下对应的块; 如果想要得到某失真度下
的图像就仅仅解码每块中对应该失真度的部分. 它可能产生
的缺点是由于没有利用到源信号数据块之间的相关性消除
冗余而造成压缩性能降低. 事实表明, 由于块编码可以对每
一块进行独立优化, 因此这种操作带来的压缩性能的提高可
完全补偿上述损失.
在进行块编码时, JPEG2000 强调多截断点的支持, 越多
的截断点, 表明图像可提供更多的质量选择. 如果我们对每
块仅仅进行位平面编码, 那么对于数据最高位数为 N 的块,
最多可得到的截断点有 N 个. 很多时候这种截断是粗糙的
而且截断点数目过少. 为了获得更多的截断点, EBCO T 引入
“片段化位平面”的概念, 将编码的逻辑单位进一步细化, 对
每一个位平面再进行 3 次扫描, 得到 3 个“片段化位平面”,
它们是对原位平面的一个无重复划分. 这样对某块 B i来说,
可能的截断点可以有 3N 个 (实际有 3N - 2 个, 原因见第
2. 4. 2节).
对码流的组织, EBCO T 也有专门的论述. 因为若没有合
理的组织, 单纯的嵌入式编码并不能保证对多失真度的支
持. 图 7 所示为一种最简单的码流组织方式, 它的码流虽然
是可嵌入的, 但并不能支持多失真度.
图 7 所示码流失败的原因在于它没有在码流的组织中
加入有关图像质量分级的辅助信息, 而 EBCO T 中采用了第
Ρ
10 期
刘方敏等: JPEG2000 图像压缩过程及原理概述
909
二层编码的概念对该信息的提供进行了规范化.
2. 4. 2 自适应算术编码
JPEG2000 PA R T 1 的编码方法采用自适应算术编码而
非 JPEG 常用的霍夫曼编码. 自适应算术编码与霍夫曼编码
最大的不同在于它并不是对每个信号产生一个码值, 而是对
一个信号序列产生一个码值; 它除了需要获得信号序列外,
还要获得其中每个信号的预测概率. 根据这个概率. 将[ 0, 1)
区间不断分割, 最后得到的码值即是最后分割得到的小区间
所对应的一个二进制表示. 自适应性的获得在于不断更新信
号的预测概率, 使之总是趋近于实际.
位平面中点 (u, v ) 的信号对应预测概率的获得需要考虑
该点周围各点的信号分布以及该点在高位平面的信号分布.
在 EBCO T 中, 这些分布情况是由显著位来指示的. 显著位
在初始时 (即对某块最高位平面编码时) 全置为 0, 当编码时
得到非 0 数据时, 它将立即由 0 变为 1. 在编码的某个时刻显
著位
(u, v ) = 0;
若大于 0, 则
(u, v ) 标志该点已编码数据的值若为 0, 则
(u, v ) = 1.
下面介绍对某块进行自适应算术编码所需的 3 次扫描
中的具体内容 (扫描的次序如图 8 所示, 扫描每列高为 4 个
象素, 这也是块高度的最小值).
(1) “显著性传播”扫描
本次扫描的编码对象是当前状态位为 0, 且其直接相邻
8 个系数的状态位至少有一个为 1 的样本, 即在当前位平面
中最有可能成为“显著”(显著位为 1) 的那些“不显著”样本.
根据文献[ 3 ], 它们单位数据包含的信息量最大, 而 EBCO T
的编码原则是将最有价值的信息优先编码, 使得在文件大小
一定的情况下取得最小的失真度. 这些样本直接相邻的 8 个
样本的状态位作为“上下文”提供给编码器, 编码器根据“上
下文”选择一种预测概率对其进行算术编码[4 ].
(u, v ) 要即
时反映 (u, v ) 点最近被编码位的变化, 它将影响下面待扫描
点的“上下文”, 进而影响编码, 这也是本次扫描名称中“传
播”的由来. 另外, 在某样本变为显著时, 要对它的正负号立
即进行编码, 编码过程类似于上述的数值编码.
(2) “数值范围重定义”扫描
对当前状态位为 1, 但没有被第一次扫描编码过的样本
进行编码, 这些样本的高位字节是“显著”的, 包含的信息量
也较大. 编码过程类似于“显著性传播”扫描.
(3) “清除”扫描
将所有剩下的未编码的样本进行编码. 由于本次编码的
数据都是“不显著”的, 所以可采用一种称为“run 模式”的编
码模式. 其原理是将一列 4 个样本作为一个整体进行编码,
如果这 4 个样本同是“不显著”的 (即都属于本次扫描) , 就可
以仅用一个二进制符号来代表; 如某列中至少含有一个“显
著”样本, 在标记了第一个“显著”样本的位置后, 立即停止
“run 模式”, 改用前两次的编码方式进行编码. 当在编码过程
中某样本成为“显著”时, 同样需对其进行正负号编码 [5 ].
由于在初始化编码时, 所有的状态位均被置为 0, 因此没
有前两次扫描. 这样, 对量化索引最高位为 N 的块, 可能的
截断点有 3N - 2 个.
2. 4. 3 码流的组织 (第二层编码)
以上三种扫描的次序是固定的, 它反映的核心思想是把
位平面上不同位置的样本按其包含的信息量分级, 然后依次
编码. 这种编码方式是码流可支持多失真度的基础, 但是采
用这种编码方式得到的码流并不保证一定支持多失真度的
图像再现, 图 7 所示为一个反面的例子.
JPEG2000 采用层来组织码流, 它的功能是提供有关图
像质量分级的信息. 第一层 Q 0摘取了每一块中的某一部分,
并满足当总长度受限的情况下, 各块失真度之和最小, 即在
∑
i 指块 i 对应 Q 0层的截断
m ax 时, D 0= ∑
D
z 0
i 最小 (z
i
z 0
i ≤l0
i
l
0
i
i
点; l
z 0
i 指块 i 中对应 Q 0层的部分长度; D
i
z 0
i 指块 i 中对应 Q 0层
i
z n
的部分失真度). 而接续的某层 Q n则取每一块中的长为 l
i
i -
zn- 1
i 的附加部分, 并满足在∑
m ax 情况下, D n = ∑
i
D
最小.
i ≤ ln
lz
n
i
l
i
i
z n
i
i
图 9 所示为一个 3 层图像码流的组织.
JPEG2000 为了更好地表达这种分层的思想, 又引入了
几种中间逻辑结构, 即 P rinct 和包. P rinct 指某一分辨率下
空间某连续区域在所有子带中对应块的集合; 而包则包括由
某个 P rinct 中所有块的一次或者几次扫描后得到的码流中
的一个连续片段, 它是编码的逻辑单位, 并采用包头封装了
2
019
计算机辅助设计与图形学学报
2002 年
息, 满足不同用户对图像质量的要求.
必要的逻辑信息. 而层就是以包为单位组成的. 为了在不同
的分辨率下明确指示同一块空间区域, JPEG2000 采用了
Canvas 坐标系统, 它在实质上与分形编码中的码表是一样
的. 在这种坐标系统中, 空间的矩形区域是由该矩形左上角
的坐标和它的长宽来指定的, 不同分辨率下的同一块空间区
域的左上角坐标和长度可以相互换算. 例如, 在分辨率为 64
× 64 的图像中, 左上角顶点坐标 (x 0, y 0) 为 (31, 31) , 长宽
(x size, y size) 为 (32, 32) 的矩形区域, 在分辨率为 32×32 时 (x 0,
y 0) 为 (15, 15) , (x size, y size) 为 (16, 16). 除了定位空间区域外,
Canvas 坐标系统还有利于裁剪操作, 因为对坐标原点以上部
分和以左部分的裁剪, 并不影响剩余部分的坐标, 无需重新
编码.
图 10 所示为 P rinct 和块、子带之间的关系.
R eso lu tion
L ayer,
Com ponen t
Com ponen t
综上所述, 包需要 4 个参数来指定, 即分量(Com ponen t) ,
分辨率(R eso lu tion) , 层(L ayer) , P rinct. 这样, 包的组织就可
以 有 若 干 种 顺 序, 如 L ayer
P rinct,
P rinct
R eso lu tion
Com ponen t
P rinct
L ayer 等, 而每一种组织顺序意味着对某类应用
R eso lu tion
更好的支持. 如 Com ponen t
L ayer 的组织
顺序对图像库的应用是很有利的, 因为可以方便地得到不同
质量的图像. 与 JPEG 标准相比, 这种以包为基础的编码和
解码方式非常灵活, 从一种应用到另一种应用只需对包进行
重新排列, 并不需要重新解码、逆变换这样的复杂操作.
P rinct
R eso lu tion
3 JPEG2000 PART 1 的一些重要功能
本小节着重介绍基于以上压缩过程的 JPEG2000 一些
重要功能及其实现.
3. 1 多失真度支持
多失真度支持的实现方法如下:
方法 1. 量化时采用一个很小的步长, 对变换系数进行
最细致的量化, 而在逆量化时采用不同的宽步长 (一般为量
化步长的 2 的幂次方倍) , 舍弃量化索引中不重要位上的信
方法 2. 充分利用 EBCO T 中层的概念, 对某一特定目
标码率, 仅解码相关层所含的包, 从而达到在一定文件大小
的限制下, 对图像的最佳再现. 实施这一方法的前提是层组
织的正确性, JPEG2000 采用拉格朗日 R
D 优化方法确保了
这一点. 第 2. 4. 3 节对层的描述说明的即是该方法的一般过
程, 具体实现见文献[ 3 ].
3. 2 感兴趣区 (RO I)
在实际应用中, 用户可能需要图像中的某些特定区域能
以较其它部分更高的质量进行编码、解码, 或者在图像显示
过程中对这些区域实行优先显示, JPEG2000 通过提供一种
称为感兴趣区的功能来满足用户的这种需求.
RO I 的压缩过程如下: (1) 确定图像中用户感兴趣的区
域. (2) 用RO I 掩膜指明这些区域. 在背景区域, 其值为 0; 在
RO I 区域, 其值为 1.
(3) 在编码前, 将 RO I 内的系数加倍
(或将背景系数减倍) 以提高 RO I 内数据 (或降低背景数据)
编码精度. 其余过程同第 2 节所述. 在解压缩时, 要将 RO I 区
域信息以及系数加倍 (或背景系数减倍) 信息传递给解码器,
以恢复原系数值.
JPEG2000 具体实现 RO I 采用的M ax riff 方法与上文略
有不同, 它先找到背景区域变换系数的最高位数 s, 而后将所
有背景系数除以 2s, 确保即使 RO I 内系数最小的值也比背景
系数大, 使得解码时先解码 RO I 内系数, 再将背景系数扩大
2s倍后进行解码. 它的优点在于无需显式地传递 RO I 区域信
息给解码器.
3. 3 容错性
JPEG2000 最大的容错性是由 EBCO T 提供的. EBCO T
采用的独立编码确保某块内的错误不会扩散到其它块中, 并
且在进行某“片段化位平面”扫描前,“上下文”对应的概率分
布都要重置, 以确保上一个“片段化位平面”扫描的错误不会
影响到下一次扫描的结果[6 ].
除此之外, JPEG2000 还从码流组织上提供了容错的手
段. 如对某位平面编码, JPEG2000 规定在每一次 C leanup 扫
描过后, 编码器都应在其后加入“1010”标志; 解码时如未能
正确取得此标志, 说明该位平面的码流中存在错误. 同时在
第二层编码中, JPEG2000 对每一个包进行了记数, 确保包头
和包的数据能够正确对应起来, 提高鲁棒性.
3. 4 文件格式
每种图像文件格式的主要内容就是对颜色空间的定义
和元数据的嵌入. JPEG2000 PA R T 1 中对此作了非常灵活
的规定.
PA R T 1 提供了一种称为 JP2 的文件格式. 它对颜色空
间的定义有两种方式: 一是强调互动性, 仅提供了两种颜色
空间, 即 R GB 和灰度级; 另一种则强调灵活性, 提供了一种
描述颜色空间变换的数据结构, 允许用户自定义空间. 对元
数据的嵌入也有两种定义方式: 采用 U U ID (U n iversal U
n ique Iden tifier) 的方式和采用 XM L 的方式. 无论采用哪一
种方式, 元数据在文件中嵌入的位置都是随意的.
10 期
刘方敏等: JPEG2000 图像压缩过程及原理概述
119
4 JPEG2000 PART 2
由于 JPEG 委员会考虑到计算复杂度、编码效率以及知
识产权的问题 (JPEG 委员会希望 JPEG2000 PA R T 1 没有
涉及知识产权问题) , 因此很多技术并没有放到 PA R T 1 中,
而是被吸收到在 2001 年 12 月份成为国际标准的 PA R T 2
中. 总地来讲, PA R T 2 是对 PA R T 1 的一个深入和提高.
PA R T 2 中与 PA R T 1 相关的一些技术特点简介如下:
(1) 数据预处理
在 PA R T 1 的区域划分中, 划分出来的空间区域是不能
重叠的; 在 PA R T 2 的区域划分中, 划分出来的空间区域是
可以重叠的, 虽然这样会带来计算上的复杂度, 但它消除了
边缘信息的缺乏.
在 PA R T 1 的量级降低中, 针对某一个区域划分出来的
区域, 变换系数仅仅允许减去 2s- 1 (s 为该区域中变换系数的
最高位) ; 在 PA R T 2 中, 这一数值更加一般化, 并不局限于
某个值.
在 PA R T 1 的分量转换中, 仅允许对 R GB 分量进行
ICT 和 RCT 两种转换; 在 PA R T 2 中, 允许对多分量进行变
换, 并且提供了对多分量去除相关的一般方法.
(2) 量 化
在 PA R T 1 的量化中 , 各子带的量化器的结构都是一
样 的 (deadzone 的宽度都是其它索引位置步长的 2 倍) ; 在
PA R T 2 的量化中, 各子带的 deadzone 的宽度可以是其它索
引步长的 x 倍 (1≤x ≤2) , 以更好地体现子带之间的差异性.
(3) DCT
在 PA R T 1 的 DCT 中, 仅对 kL L (k = 0, 1, 2, …, N ) 继
续分解以降低相关性; 在 PA R T 2 中, 其它子带 (kL H , kH L ,
kH H , k = 0, 1, 2, …,N ) 也可视需要深入分解.
在 PA R T 1 中允许的滤波器族仅有两种: 可回复的 (5,
3) 滤波器族和不可回复的 (9, 7) 滤波器族; 在 PA R T 2 中用
户自定义的滤波器族是允许的.
(4) RO I
在 PA R T 1 中的 RO I 由于采用了M ax riff 方法, 因此不
能够支持 RO I 与背景系数的多对比度; 而在 PA R T 2 中, 通
过显式地向解码器提供 RO I 相关信息, 允许 RO I 与背景的
多对比度.
(5) 格 式
PA R T 1 提供的格式为 JP2, 而 PA R T 2 中提供的格式为
JPX, 它提高了对颜色空间和元数据定义的灵活性, 并可在一
个文件中包含多幅不同图像 (类似于动态 gif). 除此之外, 它
还定义了众多的元数据域来说明图像的历史、内容、特征、知
识产权等信息.
5 JPEG2000 和多级树集合分裂算法
(SP IHT) 的性能比较
由于采取了众多的先进技术, 理论上 JPEG2000 应提供
更好的性能和更多的功能, 下面通过几组对比数据加以验
证. 用作参考的 SP IH T 算法是业界一个成熟的比较好的压
缩算法, 而且它同样采用离散小波变换. 实验采用的压缩性
能的度量是信噪比 (PSN R ) ,
PSN R = 10lg
2552
M S E
.
JPEG2000 采用 JPEG 委员会提供的 JPEG2000 V erifi
jpeg. o rg) , SP I
cation M odel 的 C 语言实现 (h ttp:
H T 的实现则采用一个 实 际 中 广 泛 使 用 的 系 统 (h ttp:
www. cip r. rp i. edu) : 它包括 3 种单色调编解码器 (实验中使
用的是压缩性能最高的一个) 和一种彩色图像编解码器.
www.
为保证结果的客观性, 实验采用W aterloo B ragZone 推
) , 它将
荐的标准测试图像系列 (h ttp:
图像分为 3 类: Grayset1 (小灰度图像) , Grayset2 (中灰度图
像) , Co lo rset (彩色图像). 对每一类图像, 考虑到大小、自然、
非自然等因素, 抽取两个代表进行测试, 如表 1 所示.
link s. uw aterloo. ca
表 1 不同目标码率下实验数据
类 属
图 片
Grayset1
Grayset2
Co lo rset1
Go ldh ill(N )
(256×256×8)
L ena (N )
(256×256×8)
Barb (N )
(512×512×8)
M oun tain (N )
(640×480×8)
F rym ire (A )
(1118×1105×24)
M onarch (N )
(768×512×24)
编解码器
JPEG2000
SP IH T
JPEG2000
SP IH T
JPEG2000
SP IH T
JPEG2000
SP IH T
JPEG2000
SP IH T
JPEG2000
SP IH T
注: N 表示自然图像,A 表示人工图像, dB 为 PSN R 单位
0. 125 bpp
24. 68 dB
25. 40 dB
24. 59 dB
26. 11 dB
25. 05 dB
25. 38 dB
17. 90 dB
18. 05 dB
15. 52 dB
15. 57 dB
26. 00 dB
27. 01 dB
0. 25 bpp
26. 48 dB
27. 10 dB
27. 82 dB
28. 96 dB
27. 82 dB
28. 13 dB
19. 15 dB
19. 37 dB
17. 18 dB
17. 38 dB
29. 23 dB
30. 25 dB
0. 5 bpp
29. 03 dB
29. 52 dB
31. 68 dB
32. 74 dB
31. 42 dB
32. 11 dB
21. 02 dB
21. 44 dB
19. 63 dB
19. 97 dB
33. 25 dB
34. 22 dB
1. 0 bpp
32. 25 dB
32. 86 dB
36. 59 dB
37. 67 dB
36. 56 dB
37. 45 dB
24. 10 dB
24. 64 dB
23. 23 dB
23. 55 dB
37. 91 dB
38. 98 dB
为获得对同一图像的不同目标码率再现, JPEG2000 对
同一码流进行了不同的截取; 并且 JPEG2000 提供多分辨率
支持, 通过对包的重排, 将原来为失真度渐变的图像变为分
辨率渐变的图像. 这些功能是 SP IH T 无法提供的, 所以在功
能上, JPEG2000 已是“稍胜一筹”了.
(下转第 916 页)
Ù
2
2
619
计算机辅助设计与图形学学报
2002 年
[ 2 ] W u Yonghu i, et a l. R esearch fo r b io logical m anufactu ring
engineering based on rap id p ro to typ ing [J ]. Ch inese Jou rnal
of M echan ical Engineering, 2000, 36 (9) : 61~ 64 (in Ch inese)
(吴永辉, 等. 基于快速成型的生物制造工程研究[J ]. 机械工
程学报, 2000, 36 (9) : 61~ 64)
[ 8 ] W ang Guozhao. D iscrete in tersection algo rithm of Bézier
su rface[J ]. Jou rnal of Zhejiang U n iversity, 1984 (Spe
cu rve
cial Issue: Compu tational Geom etry) : 108~ 119 ( in Ch inese)
(汪国昭. Bézier 曲线曲面的离散求交方法[ J ]. 浙江大学学
报, 1984 (计算几何专集) : 108~ 119)
[ 3 ] Zo llikofer C P E, et a l. Too ls fo r rap id p ro to typ ing in the
[ 9 ] L i J ijun, et a l. T he trimm ing of compo site triangu lar Bézier
b io sciences [J ].
1995, 15 (11) : 48~ 55
IEEE Compu ter Graph ics and A pp lication s,
[ 4 ] Barequet G,
et a l. M u ltilevel sen sitive recon struction of
po lyhedral su rfaces from parallel slices[J ]. T he V isual Com
pu ter, 2000, 16 (2) : 116~ 133
Jou rnal of Compu ter
A ided D esign & Compu ter
su rface[J ].
Graph ics, 2000, 12 (1) : 65~ 69 ( in Ch inese)
(李际军, 等. 复合三角Bézier 曲面的裁剪[J ]. 计算机辅助设
计与图形学学报, 2000, 12 (1) : 65~ 69)
[ 10 ] P iegl L A. Fundam en tal D evelopm en ts of Compu ter
A ided
[ 5 ] A tesh ian G A , et a l. A B
sp line least
squares su rface
fitting
Geom etric M odeling[M ]. N ew Yo rk: A cadem ic P ress, 1993
m ethod fo r articu lar su rfaces of diarth rodial jo in ts[J ]. Jou r
nal of B iom echan ical Engineering, 1993, 115 (4) : 366~ 373
[ 6 ] Ke Yinglin. Study on the techno logy and app lication s of scat
tered data based geom etry modeling [D ]. N an jing: N an jing
U n iversity of A eronau tics & A stronau tics, 1992 ( in Ch inese)
(柯映林. 离散数据几何造型技术及其应用研究[ 博士学位论
文 ]. 南京: 南京航空航天大学, 1992)
[ 7 ] Farin G. Cu rves and Su rfaces fo r Compu ter A ided Geom etric
D esign [M ]. Bo ston: A cadem ic P ress, 1988
[ 11 ] M a W eiyin, et a l. Param eterization of random ly m easu red
po in ts fo r least squares fitting of B
sp line cu rves and su rfaces
[J ]. Compu ter
A ided D esign, 1995, 27 (9) : 663~ 675
[ 12 ] Greiner G, et a l. D ata dependen t th in p late energy and its
u se in in teractive su rface modeling [J ]. Compu ter Graph ics
Fo rum , 1996 , 15 (3) : C175~ C185
[ 13 ] T erzopou lo s D , et a l. D ynam ic NU RBS w ith geom etric con
strain ts fo r in teractive scu lp ting [J ]. A CM T ran saction s on
Graph ics, 1994, 13 (2) : 103~ 136
[ 2 ] M ajid R abban i, R ajan Jo sh i. A n overview of the JPEG2000
still im age comp ression standard[J ]. Signal P rocessing: Im age
Comm un ication, 2002, 17 (1) : 3~ 48
[ 3 ] D avid T aubm an. H igh perfo rm ance scalab le im age comp res
IEEE T ran saction s on Im age P roceed
sion w ith EBCO T [J ].
ings, 2000, 9 (7) : 1158~ 1170
[ 4 ] E O rden tlich, D T aubm an, M W einberger, et a l. M emo ry ef
In: P roceedings of
ficien t scalab le line
the IEEE D ata Comp ression Conference, Snow b ird, 1999. 218
~ 227
based im age coding[A ].
[ 5 ] D avid T aubm an, E rik O rden tlich, M arcelo W einberger, et a l.
Em bedded b lock coding in JPEG2000 [J ]. Signal P rocessing:
Im age Comm un ication, 2002, 17 (1) : 49~ 72
ISO
[ S ]
JPEG2000 im age coding system
IEC FCD 15444
[ 6 ]
1
2000.
(上接第 911 页)
在压缩性能方面, 绝大部分情况下 JPEG2000 与 SP IH T
的最优实现的表现相差无几, 考虑到 SP IH T 采用了最新的
小波变换技术, 可以认为 JPEG2000 的压缩性能比当前大多
数压缩算法高. 同时, 这也说明了 EBCO T 中的独立块编码
技术带来的优点可完全弥补没有充分利用数据位置相关性
所带来的损失.
6 结 论
JPEG2000 是当今图像压缩界的一个新标准, 它对一些
新兴的图像压缩领域, 如遥感、扫描、数字照相、医疗图像等
提供了一个全新的解决问题的框架. 这个框架的先进性和光
明前景正为事实所证明. 目前, 在 JPEG2000 的具体实施上,
尚未出现大量的、免费的、高效的工具软件的支持. 相信随着
时间的推移, 这个问题将得到逐步地解决.
参 考 文 献
[ 1 ] C Ch ristopou lo s, T Eb rah im i, A Skodras. T he upcom ing
In: P roceedings of Invited T u to rial to
JPEG2000 standard[A ].
the 11th Po rtuguese Conference on Pattern R ecogn ition
(R ECPAD 2000) , Po rto, Po rtugal, 2000. 359~ 366