浅谈多媒体数据压缩技术中的几种编码方法

2012-08-22 08:02蔡春梅
科技视界 2012年35期
关键词:香农码字信源

蔡春梅

(遵义师范学院计算机与信息科学学院 贵州 遵义 563002)

0 引言

21世纪的人类社会是信息化的社会,数字化后的信息,尤其是数字化的视频和音频信息具有数据海量性,它给数据的存储和传输带来较大的困难,成为人类有效地获取和使用信息的瓶颈问题之一。

现如今,媒体元素种类繁多、构成复杂,即数字计算机所要处理、传输和存储等对象为数值、文字、语言、音乐、图形、动画、静态图像和电视视频图像等多种媒体元素,并且使他们在模拟量和数字量之间进行自由转换、信息吞吐、存储和传输。目前,虚拟现实技术要实现逼真的三维空间、3D立体声效果和在实境中进行仿真交互,带来的突出的问题是媒体元素数字化后数据量大得惊人,致使海量数据存储与传送电视信号数字化后的庞大数据量成为了多媒体信息传送面临的最大难题,数据压缩是解决问题的重要途径。

1 多媒体数据压缩的可能性及分类

1.1 数据压缩的可能性

经研究发现,与音频数据一样,图像数据中存在着大量的冗余,通过去除那些冗余数据可以极大地降低原始图像数据量,从而解决图像数据量巨大的问题。图像数据压缩技术就是研究如何利用图像数据的冗余性来减少图像数据量的方法。因此,进行图像压缩研究的起点是研究图像数据的冗余性。常见的主要数据冗余有:

(1)空间冗余:在静态图像中有一块表面颜色均匀的区域,在这个区域中所有点的光强和色彩以及色饱和度都相同,具有很大的数据冗余,这种冗余称为空间冗余。

(2)时间冗余:电视图像、动画等序列图片,当其中物体有位移时,后一帧的数据与前一帧的数据有许多共同的地方,即数据不需要全部传输,这些共同的地方则是冗余,这种冗余称为时间冗余。

(3)结构冗余:在有些图像的纹理区,图像的像素值存在着明显的分布模式。例如,方格状的地板图案等,称此为结构冗余。

1.2 数据压缩的分类

多媒体数据压缩方法根据不同的依据可产生不同的分类。通常,我们对数据压缩方法分类是根据据解码后数据是否能够完全无丢失地恢复原始数据,此种分类可分为两种:

(1)无损压缩:此类压缩也称为可逆压缩,这种压缩方式是在数据的压缩过程中去除或减少冗余值,而在数据解压是,这些被去除或减少的冗余值可重新插入到数据中以恢复原始数据。无损压缩通常使用在对文本和数据的压缩上,压缩比较低,大致在2:1~5:1之间。典型算法有:哈夫曼编码、香农编码、费诺编码、算术编码、游程编码等。

(2)有损压缩:也称不可逆压缩和熵压缩等。这种方法在压缩时减少了数据信息是不能恢复的。在语音、图像和动态视频的压缩中,经常采用这类方法。

2 编码的分类

编码的目的是为了优化通信系统。一般来说,通信系统的性能指标主要是有效性、可靠性、安全性和经济性。所谓优化,就是是这些指标达到最佳。按照不同的编码目的,编码问题可分为三类:信源编码、信道编码和安全编码。

信源编码的目的是为了提高通信系统的有效性,这种有效性通常通过压缩信源的冗余度来实现,即压缩每个信源符号的信息量,使得同样多的信息用较少的信息传输率来传送。编码的思路主要是根据信源输出符号序列的统计特性,寻找一定的把信源输出符号序列变换为最短码字序列的方法。

3 常用的几种编码方法

信源编码理论是信息论的一个重要分支,其理论基础是信源编码的两个定理:无失真信源编码定理和限失真信源编码定理。常用的信源编码方法有:香农编码、费诺编码和哈夫曼编码。

3.1 香农编码

香农编码的基本原理是采用信源符号的累计概率分布函数来分配码字。编码步骤描述为:

①将信源符号按概率递减的顺序排列,令:p(x1)≥p(x2)≥…≥p(xn);

②按照不等式:-log p(xi)≤li≤-log p(xi)+1 求 xi对应码字的码长li;

③令Pi=0,用pi来表示第i个码字的累加概率,则:

④将所有的累加和概率pi变换成2进制数,然后去小数点pi后位作为信源符号xi的2进制码字。

香农编码所得的码字,没有相同的,也没有一个码字是其它码字的前缀,所有是即时码。但因香农编码的编码效率不高,其冗余度还是比较大,不是最佳编码,实用性受到较大限制。

3.2 费诺编码

费诺编码又称为子集分解法,基本编码原理是通过将信源符号的概率分组,对每个组分配相应的码元来实现编码,其编码步骤如下:

①将信源符号以概率递减的次序排列起来,令:p(x1)≥p(x2)≥…≥p(xn);

②将按递减顺寻排列好的信源符号按概率分成m个组,使每个组的信源符号的概率和尽可能接近或相等,然后赋予每组一个m元码符号;

③将每一大组的信源符号按概率和递减的次序再分成m组,使同一大组细分的m个小组的信源符号的概率和尽可能接近或相等,并分别赋予每小组一个m元码符号;

④重复上述的分组,分配m元码符号的过程,直至最后分得的每个小组只剩一个信源符号为止,最后每个信源符号所对应的码元序列就是相应的码字。

费诺码考虑了信源的统计特性,使经常出现的信源符号对应短码字,但是不一定能使短码得到充分利用,尤其当信源符号较多时,若有一些符号概率分布很接近时,分两大组的组合方法就会很多,可能某种分大组的结果,会使后面小组的“概率和”相差较远,从而使平均码长增加。

3.3 哈夫曼编码

Huffman编码法利用了最佳编码定理:在变字长码中,对于出现概率大的信息符号以短字长编码,对于出现概率小的信息符号以长字长编码。如果码字长度严格按照符号概率的大小的相反顺序排列,则平均码字长度一定小于按任何其他符号顺序排列方式得到的码字长度。具体步骤归纳如下:

①将信源信息符号的n个概率,按概率大小排序,即p(x1)≥p(x2)≥…≥p(xn);

②将n个概率中的最后两个小概率相加,这时概率个数减为n-1个;

③将n-1个概率按大小重新排序;

④重复步骤③,将新排序后的最后两个小概率再相加,相加所得到的和与其余概率再排序;

⑤如此反复重复n-2次,最后只剩下两个概率序列;

⑥以二进制码元(0,1)赋值(如大概率用“0”表示,小概率用“1”表示),构成哈夫曼字。

哈夫曼码字长度和信息符号出现概率大小次序正好相反,即大概率信息符号分配码字长度短,小概率信息符号分配码字长度长。

由于哈夫曼编码每次对缩减信源两个概率最小的符号分配“0”或“1”码元是任意的,所以可得到不同的码字,因此,哈夫曼编码不是唯一的,在进行解码时必须对照相应的哈夫曼表才可正确解码。

4 结束语

香农、费诺和哈夫曼编码是信源编码的三种主要编码方法,它们都考虑了信源的统计特性,使经常出现的信源符号对应较短的码字,使信源的平均码长缩短。香农编码有系统的、唯一的编码方法,但编码效率不高;费诺编码比较适合于分组概率相等或接近的信源编码;哈夫曼编码对系统特性没有特殊的要求,编码效率比较高,对编码设备的要求比较简单,当信源符号概率相差较大时,选择哈夫曼编码是最理想的,哈夫曼编码是最佳编码。

[1]陈运.信息论与编码[M].北京:电子工业出版社,2009.

[2]张旭东,等.图像编码基础和小波压缩技术[M].北京:清华大学出版社,2004.

[3]吴家安,等.语音编码技术及应用[M].北京:机械工业出版社,2006.

[4]钟家恺.通信原理教程[M].北京:科学出版社,2003.

[5]钟玉琢.多媒体技术基础与应用[M].北京:清华大学出版社,2008.

猜你喜欢
香农码字信源
基于极化码的分布式多信源信道联合编码
大卫,不可以
放 下
数据链系统中软扩频码的优选及应用
信源控制电路在功率容量测试系统中的应用
信源自动切换装置的设计及控制原理
基于香农熵的超细粉体填料混合均匀度的评价研究
长为{4,5,6}的完备删位纠错码的存在性*
基于Matlab的信源编码实验系统的设计