第26卷第4期 2007年l2月 延安大学学报(自然科学版) Journal of Yanan University(Natural Science Edition V01.26 No.4 Dec.2o07
浅析图像压缩技术
张俊兰 冯 伍 叶 倩 (1.延安大学计算机学院,2.延安大学教务处陕西延安716000) 摘要:着重介绍了无损压缩和有损压缩的几种图像压缩技术以及其应用领域,并对它们的算法特 性进行了分析和讨论。 关键词:图像压缩技术;有损压缩;无损压缩;空间冗余;时间冗余 中图分类号:TP391 文献标识码:A 文章编号:1004-602X(2007)04-0026-04
由于图像具有很大的信息量,在目前计算机系 统的条件下,要想实现实时处理,就必须对图像进行 压缩,如果图像信息不经过压缩,则占用信道宽,使 传输成本变得昂贵。图像数据压缩技术总的来说就 是利用图像数据固有的冗余性和相干性,将一个大 的数据文件转移成较小的同性质的文件。在数字信 息时代,我们没有必要浪费大量空间存储冗余数据, 也不愿在Intemet网上花很长时间传递一整幅图 像。因此,图像数据压缩的目的就是消除图像中大 量的冗余信息,用尽可能少的字节数来表示原始数 据,以提高图像的传输效率,减少图像的存储容量。 针对多媒体数据冗余类型的不同,相应地有不同的压 缩方法,根据解码后数据与原始数据是否完全一致进 行分类,可把压缩技术分为无损压缩和有损压缩。 1 无损压缩 无损压缩…也可称为无失真压缩。其原理是 对原始数据中的冗余部分进行压缩。使用无损压缩 可完全恢复原始数据,无任何误差或失真,即经过压 缩和解压后产生一个与原始数据相同的副本。由于 受到数据中冗余理论的限制,在原理上大多采用概 率统计编码,因而一般对在内容上重复较多的文件 压缩倍数比较大,而没有重复或重复较少的文件则 压缩倍数较低。由于压缩比的限制,仅使用无损压
收稿日期:2007—05—08 作者简介:张俊兰(1953一),女,陕西绥德人,延安大学教授。 缩不能实时处理数字声音、视频图像的存储和传输 问题。 无损压缩根据算法可以分为:行程编码RLC (Running Length Coding),LZW编码,霍夫曼(Huff- man Coding)编码,算术编码,游程编码。 1.1行程编码RLC 行程编码 是在一个逐行存储的图像中,具有 相同灰度值的一些像素组成的序列,称为一个行程。 可以只存储一个代表那个灰度值的码,后面是行程 的长度,而不必将同样的灰度值存很多很多次。例 如,对图3—4中的二维图像灰度值f( ,Y)作水平 扫描后得到(8,8);(8,2)、(7,6);(7,8);(6, 3)、(5,5);(5,4)、(3,4);(3,8);(3,2)、 (2,6);(1,5)、(0,3)。这样用13对数据就表示 了图1中64个像素的灰度值。 ——— X
图1一幅图像数据 维普资讯 http://www.cqvip.com 第4期 张俊兰,冯伍,叶倩:浅析图像压缩技术 27 行程编码可以分为定长和变长行程编码两种方 式。定长行程编码时,行程长度的最大值固定,若灰 度值连续相同的个数超过了固定的这个最大值,则 超过部分进行下一轮行程编码。变长行程编码时, 对不同范围的行程用不同的行程长度编码,这时需 要增加标志位来说明长度使用的二进制位数。行程 编码对传输差错很敏感,一位符号出错就会改变行 程编码的长度,使整个图像出现偏移,因此,一般 要用行同步、列同步的方法,把差错控制在一行一 列之内。 它适用于那些包含很少灰度级的图像,对单一 颜色背景下物体的图形图像可以达到很高的压缩 比,但对其他类型的图像压缩比就很低。在最坏的 情况下,RLC甚至可将文件的大小加倍。 1.2 LZW编码 Lzw编码是由Lemple和Ziv最早提出的无损 压缩技术。它由Welch加以充实而形成了广泛应用 的有专利保护的Lzw算法。同RLE类似,它也是 对字符串编码,从而实现压缩。然而,与RLE不同 的是,它在对文件进行编码的同时,生成了特定字符 序列的表以及它们对应的代码。例如,一个由8位 字节组成的文件可以被编成12位的代码。在这 4096个可能的代码中,256个代码代表所有可能的 单个字符(8位),剩下的3840个代码分配在压缩过 程中数据里出现的字符串(字符对)。每当表中没 有的字符串头一次出现的时候,它就被原样存起来, 同时将分配给它的代码也一起保存。之后,当这个 串再次出现时,只将它的代码存起来。这就去掉了 文件冗余信息。Lzw算法的显著特点是逻辑性强, 易于硬件实现,且价格低廉,运算速度快。 1.3哈夫曼编码 哈夫曼编码是用变长的码来使冗余量达到最 小,它用一棵二叉树来编码,使常出现的字符用较短 的码代表,不常出现的字符用较长的码代表。静态 哈夫曼编码使用一棵在压缩之前就建好的编码树, 它是根据可能的字符出现的概率来生成的。相反, 动态哈夫曼编码是在编码过程中建立它的编码树。 具体的方法是,在分配码字长度时,首先将其中概率 最小的两个符号的概率求和,并把它看作是一个新 组合符号的概率,再与其它符号按概率递降顺序排 列,重复上述做法,直到最后只剩下两个符号的概 率为止。然后开始以相反顺序逐步进行编码,每一 步有两个概率分支,各赋予一个二进制的码。可以 对概率小的赋编码为0,则概率大的就赋1,也可以 反过来赋编码。这种统计方法能够达到更高的压缩 比,而且此方法有效简单,编码效率高。但是,这是 以增大编码和解码的时间为代价的。 1.4算术编码 算术编码方法是将被编码的一则消息或符号串 表示成0点和1之间的一个间隔,即对一串符号直 接编码成[0,1]区间上的一个浮点小数,符号序列 越长,编码表示它的间隔越小,表示这一间隔所需的 位数就越多。信源中的符号序列仍然要根据某种模 式生成概率的大小来减少问题。可能出现的符号概 率要比不可能出现的符号减少范围小。因此,只增 加减少的比特位。算术编码不是为每个符号产生一 个单独的代码,而是使整条信息公用一个代码。因 而可进一步提高压缩比。但是,它的实现较为复杂, 常与其它有损压缩方法结合使用。 1.5游程编码 游程编码是一种利用空间冗余度压缩图像的方 法。设图像中的某一行或某一块像素经采样或经某 种方法变换后的系数为(x1,)【2,…xrn)。某一行或 某一块内像素值可分为k段。长度为li的连续串, 每个串(片)具有相同的值。那么,该图的某一行或 某一块可由下面偶对(gi,li)来表示。游程编码将数 据中连续出现的字符用单一的记号来表示,游程编 码算法的压缩比主要取决于原始数据的分布状况, 压缩比不稳定且压缩比不太高,但该方法具有简单 直观、编码,解码速度快的优点,时间复杂度也较好。 因此许多图形和视频文件的压缩均采用这种方式。 2有损压缩 有损压缩 常称为有失真压缩,通过解压缩后 不能把信息恢复成原样,同原始数据间存在一定的 误差。有损压缩利用人类视觉和听觉器官对频带中 某频率成分不敏感这一特点,采用一些高效的有限 失真数据压缩算法,大幅度减少多媒体中冗余的信 息,其压缩效率远高于无损压缩。经过有损压缩的 数据虽然不能完全恢复原来的面貌,但其所损失的 这部分信息对理解原图像和声音基本上没有影响。 因此有损压缩被广泛应用于数字化的声音、图形、图 像以及视频信号的压缩。常用的有损压缩方法有: 预测编码、变化编码、子带编码、小波变换,分形编 码、知识(模型)基编码。 2.1
预测编码 维普资讯 http://www.cqvip.com 28 延安大学学报(自然科学版) 第26卷 预测编码(又称差值脉冲编码调制)不直接传 送图像本身,而是对实际值与它的一个预测值之间 的差值(预测误差)进行再次量化和编码。这种方 法可以消除图像信号的空间相关冗余(帧内预测) 和时间相关冗余(帧间预测)。差值脉冲编码调制 可以消除电视信号的统计冗余度,因此大大地压缩 了码率。预测编码又称为预测量化系统,它所传输 的不是信号本身,而是实际信号与其预测量之间的 差值(预测误差)。预测值是借助已经传送的、与待 传抽样相邻的若干抽样值估计(预测)出来的。由 于电视信号的强相关性,邻近抽样的取值一般很接 近,因此预测能有较高的准确性。从统计上讲,需要 传输的预测误差主要集中在零附近的一个小范围之 内,比信号本身小得多,只有在图像轮廓和边缘处才 出现较大的预测误差,但这只是少量的,且人眼很不 易察觉这种误差。因此,预测误量化所需要的量化 级极较少,从而码率得到压缩。预测编码的贡献实 际上是减少了传输的数据量。 2.2变化编码 变化编码的基本思想是将通常的几何空间(空 间域)描写的图像信号变换到另外的向量空间(变 换域)进行描写,然后再根据图像在变换域中系数 的特点和人眼视觉特性进行编码。一般而言图像数 据在空间上具有较强的相关性,变换到变换域后能 量往往被集中在少数样值上,通过舍弃一些较小的 系数,从而实现图像数据压缩的目的。变化编码实 际是利用图像在空间分布上的规律性来消除图像冗 余的编码方法,它要达到改变能量分布的目的,这样 便将图像能量在空间域的分散分布变为在变换域的 能量的相对集中分布,从而有利于进一步采用其它 的处理方式,如之字形扫描、自适应量化、变长编码 等,从而获得对图像信息量的有效压缩。变化编码 一般采用正交变换,常用的图像正交变换有:离散傅 立叶变换,离散余弦变换,最佳变换,沃尔什变换。 我们熟悉的余弦变换就是变换编码的一个典型例 子,其主要贡献就是去掉空间相关性。 2.3子带编码 利用带通滤波器组将信道频带分割成若干个子 频带,将子频带搬移至零频处进行子带取样,再对每 一个子带用一个与其统计特性相适配的编码器进行 图像数据压缩。解码时在接收端将信号搬移到原始 频率位置,然后同步相加合成为原始信号。子带编 码具有如下的优点: (1)一个子带的编码噪声在解码后只局限于该 子带内,不会扩散到其他子带。这样,即使有的子带 信号较弱,也不会被其他子带的编码噪声所掩盖。 (2)可以根据主观视觉特性,将有限的数码在各 个子带之间合理分配,有利于提高图像的主观质量。 (3)通过频带分解,各个子带的抽样频率可以成 倍下降,减小硬件的实现难度,便于并行处理。 2.4小波变换 小波变换可以看成是原始信号和一组不同尺寸 的小波带通滤波器滤波运算,从而可以把信号分解 到一系列频带上进行分析处理。小波变换编码的优 点:可以对带宽较高的信号进行压缩,压缩比比离散 余弦变换(DCT)高,当压缩比较大时,图像损伤不易 产生DCT中易见的方块效应,其量化噪声在整个图 像中随机分布,因而不易察觉。小波变换弥补了离 散余弦变换不适合于对带宽较宽的信号进行压缩的 不足。小波变换是一种频率上伸缩自由的变换,是 一种不受带宽约束的图像压缩方法。在MPEG-4和 JPEG2000中采用了小波变换编码。 2.5分形编码 分形编码是基于事物中的局部与局部或整体与 局部的相关性提出来的。它是一种直接在空间域寻 找并最大限度地利用图像的自相关性的编码方法。 这是基于客观世界中有许多事物存在着很强的自相 关性,即无论几何尺寸怎么变化,景物任何一小部分 的形状与较大部分的形状极为相似。由于分形编码 利用了整体与局部之间的相关性,使分形编码的压 缩比可以达到10000:1。当然这种高压缩比是建立 在景物内在自相关性较强的基础之上的,若其内在 自相关性不强时,压缩比也只有几十比一。 2.6知识(模型)基编码 知识基或模型基是一种从新的角度对图像内容 进行分析、利用图像内容的先验知识来进行压缩编 码的方法。它把图像看作三维物体经摄像机在二维 图像平面上的投影。编码中利用图像的轮廓、区域 等二维特征,也可利用物体本身的三维形状、运动参 数等三维特征,甚至还可以利用三维物体模型,然后 通过对输入图像和模型的分析得出模型的各种参 数,再对参数进行编码传输,解码端则由图像综合恢 复出图像。知识基或模型基编码是一种很有应用前 景的图像压缩编码方法,可以实现很高的压缩比,恢 复后图像类似动画,只产生了人眼不太敏感的几何
失真而无经典编码器中出现的颗粒量化噪声,也不 维普资讯 http://www.cqvip.com