数字图像压缩编码
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字图像处理
——图像压缩编码概述
数据编码的目的各异,信息保密、信息的压缩存储与传输等。数据压缩是以较少的数据量表示信源以原始形式所代表的信息,其目的在于节省存储空间、传输时间、信号频带或发送能量等。这些概念对于静态的文字、图像,动态的音频、视频都适用。
各种数据压缩的方法不尽相同,但是系统的组成框架如图1所示
图1
图中信源编码主要解决压缩的有效性问题,而信道编码主要解决编码的可靠性问题。从原理上看,压缩主要依靠前者,而后者是可靠实现压缩过程的可靠保证。
若信源编码的熵大于信源的实际熵,则信源中的数据一定存在冗余度。冗余数据的去除并不会减少信息量。一般图像中存在着以下数据冗余因素:编码冗余;像素间的相关性形成的冗余;视觉特性和显示设备引起的冗余。
常用的图像压缩技术指标:图像熵与平均码长;图像冗余度与编码效率;压缩比;客观评价(信噪比);主观评价(参与测试组的全体组员的平均判分)。
传统数据压缩方法的分类:无损压缩包括统计编码(Huffman编码,Shannon编码,游程编码,算术编码等)和轮廓编码;有损压缩包括预测编码(脉冲编码调制PCM,Differential PCM,AdaptiveDPCM等)、变换编码(DFT,DCT,KLT,WHT,小波变换等)和混合编码。
统计编码是根据信源的概率分布特性,分配具有惟一可译性的可变长码字,降低平均码字长度,以提高信息的传输速度,节省存储空间。其基本原理是在信号概率分布情况已知的基础上,概率大的信号对应的码字短,概率小的信号对应的码字长,这样就降低了平均码字长度。
Huffman(哈夫曼)编码算法如下①将图像的灰度等级按概率大小进行升序排序。②在灰度级集合中取两个最小概率相加,合成一个概率。③新合成的概率与其他的概率成员组成新的概率集合。④在新的概率集合中,仍然按照步骤②~③的规则,直至新的概率集合中只有一个概率为1的成员。这样的归并过程可以用二叉树描述。⑤从根节点按前缀码的编码规则进行二进制编码。优点:实现Huffman编码的基础是统计源数据集中各信号的概率分布。Huffman编码在无失真的编码方法中效率优于其他编码方法,是一种最佳变长码,其平均码长接近于熵值。
Shannon提出了将信源符号依其概率降序排列,用符号序列累积概率的二进制表示作为对信源的唯一可译编码。其应用于图像编码的步骤如下:
(1)将N个灰度级x i按其概率递减进行排列。
(2)求概率分布p i的第i个灰度级的二进制位数n i。
(3)计算与p i相对应的累积概率P i ,把与P i相对应的二进码和接下去与p k(k>i)相应的码相比较,前面的n i位至少有一位以上的数字是不同的。
预测编码的基本思想:在某种模型的指导下,根据过去的样本序列推测当前的信号样本值,然后用实际值与预测值之间的误差值进行编码。如果模型与实际情况符合得比较好且信号序列的相关性较强,则误差信号的幅度将远远小于样本信号。对实际值与预测值之间的误差值进行编码的方法是差分脉冲编码调制(Differential Pulse Code Modulation,DPCM),下图2是DPCM系统的组成原理。
图2
变换编码的基本原理是通过数学变换可以改变信号能量的分布,从而压缩信息量。以傅里叶变换的概念说明合理的变换可以改变信号能量分布的基本原理。在变换编码中有以下二个问题值得注意:图像变换方法的选取;子图像大小的选取。多变样率变换编码系统框图如下图3所示
图3
传统的DFT,DCT,KLT和经典小波变换等变换编码在图像变换后会产生浮点数,因而必须对变换后的数据进行量化处理,这样就产生不同程度的失真。而新一代的整数小波变换(第二代小波变换)采用提升方法能够实现整数变换,因而能够实现图像的无损压缩。新的静态图像压缩标准JPEG2000中采用了基于提升方法的整数小波变换。提升方
法构造小波有3个步骤:
1.分裂(split)将一原始信号序列s j按偶数和奇数序号分成两个较小的、互不相交的小波子集s j-1和d j-1:
2.预测(predict)由于数据间存在相关性,因而可以定义一个预测算子P,用P(s j-1)来预测d j-1.。这样可用相邻的偶数序列来预测奇数序列。用d j-1与P(s j-1)的差值代替d j-1,则数据量要比原始d j-1要小得多。
3.更新(update)上述两个过程一般不能保持原图像中的某些整体性质(如亮度),为此我们要构造一个U算子去更新s,使之保持原有数据集的某些特性。
经典的编码方法利用去除图像数据的相关性等方法对图像进行压缩,其压缩效果受到一定的限制。而模型编码利用对图像建模的方法对图像参数进行估计。由于参数的数据量远远少于图像的数据量,因而用模型编码对压缩数据量极其有效。常见的模型编码主要是分形编码(fractal coding)和自适应网格编码(self-adaptive mesh coding)两种。
分形编码在思路上和经典的编码方法相比有它新的突破,其压缩比高出一般编码方法2到3个数量级。压缩过程时间长但解压缩速度快的特点将使其在大数据量、高质量的多媒体应用、高速网络等场合中发挥重要的角色。
分形的基本思想来源于数学上对客观世界一些现象的自相似性描述。分形是一种由许多与全局相似的局部所构成的形体。对于集合A,如果描述其中的点需要d个坐标,则称该集合A是d维的,即dim(A)=d ,在分形几何学中,d可以扩展为分数,这时d 称为分维。分形压缩的基本方法是分形压缩将图像分解成若干子图像,利用图像的仿射变换可以寻找出子图像间的自相似性。
仿射变换是指对子图像进行旋转、伸缩、位移变换。仿射变换的特性有:
(1)仿射变换的逆变换也是仿射变换。
(2)仿射变换是线性变换。
(3)两平行线经过仿射变换后仍然是平行线,所以平行四边形经仿射变换后变成另外一个平行四边形。
(4)可以通过变换参数求解变换后平面图形的面积与原平面图形面积的比值。
(5)选择合适的参数,仿射变换为相似变换。
通过用数据量极小的系数代替数据量较大的实际像素值而将图像表示成压缩形式。目前采用全自动的分形压缩,对灰度图像一般可以达到4:1~100:1,对彩色图像压缩比还可以更高些。压缩时间较慢,而解压缩时间极快。用户常常关心的是解压缩时间,因而分形压缩的这种不对称性对使用数据的用户是很有用的。分形压缩的另一个特点是压缩特性与分辨率无关,利用分形压缩的图像可以按不同分辨率实现无级缩放而计算量相同。
在静态图像压缩编码中,JPEG标准是著名标准之一。视频可看成是一幅幅不同但相关的静态图像的时间序列。静态图像的压缩技术和标准可以直接应用于视频的单帧图像。JPEG算法就是每个单独的彩色图像分量的编码算法:
①将量化精度为8位的待压缩图像分成若干个8⨯8样值子块,做基于8⨯8子块的DCT。
②根据最佳视觉特性构造量化表,设计自适应量化器并对DCT的频率系数进行量化。
③为了增加连续的0系数的个数,对量化后的系数进行Z字形重排。
④用Huffman码作变字长熵编码器对量化系数进行编码,进一步压缩数据量。
JPEG编/解码器算法框图如图4所示