第4章 多媒体数据压缩与编码技术.
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二、香农-费诺编码
具体编码方法如下: (1)把 x1,..., xn 按概率由大到小、从上到下排成 一列,然后把 x ,..., x 分成两组 x ,..., x , x ,...,x ,并 使这两组符号概率和相等或几乎相等,即:
1 n
1 k
k 1 n
(2)把两组分别按0,1赋值,例如将第一组赋值 为0,则第二组赋值为1。然后分组、赋值,不 断反复,直到每组只有一种输入为止。将每个 所赋的值依次排列起来就是香农-费诺编码。
于编码压缩。第三阶段就是找一种更近于熵, 又利于计算机处理的编码方式。 下图(b)中显示的信源解码器仅包含两部 分:一个符号解码器和一个反向转换器。这些 模块的运行次序与编码器的符号编码器和转换 模块的操作次序相反。
二、信道编码器和解码器
当信道带有噪声或易于出现错误时,信道编 码器和解码器就在整个译码解码处理中扮演了 重要的角色。 最有用的—种信道编码技术是由 R.w.Hamming提出的。该技术基于这样的思 想,即向被编码数据中加入足够的位数以确保 可用的码字间变化的位数最小。例如,利用 Hamming码将3位冗余码加到4位字上,使得任 意两个有效码字间的距离为3,则所有的一位 错误都可以检测出来并得到纠止。与4位二进 制数b3b2b1b0相联系的7位Hamming(7,4)码字
下面通过一个例子来说明算术编码的方法。 对一个5符号信源A={a1,a2,a3,a2,a4}, 各字符出现的概率和设定的取值范围如下表 4.2:
为讨论方便起见,假定有 N s Fs Cl * L Ne Fe Cr * L 式中Ns为新子区间的起始位置;Fs为前子 区间的起始位置,Cl当前符号的区间左端; Ne为新子区间的结束位置;Fe为前子区间的结 束位置;Cr当前符号的区间右端;L为前子区 间的长度。
4.8 视频编码
4.8.1帧内预测编码 4.8.2 帧间预测编码 4.8.3 活动图像帧间内插
视频编码系统的基本结构如图所示。
编码器 有损过程 输入视频 分析 量化 二进制编码 无损过程
噪声 信源模型 量化参数 参数统 计特性 信道
重建视频 综合 反量化 二进制解码
解码器 图4.15视频编码系统的一般组成
h1h2…h5h6h7是:
这里表示异或运算。h1,h2和h4位分别是 位字段b3b2b0,b3b1b0和b2b1b0的偶校验位。
为了将汉明(Hamming)编码结果进行解 码,信道解码器必须为先前设立的偶校验的各 个位字段进行奇校验并检查译码值。一位错误 由一个非零奇偶校验字c4c2c1给出,这里,
(3)把该概率之和同其余概率由大到小排 队,然 后再把两个最小概率加起来,再重 新排队; 重复步骤,直到最后只剩下两个概率为止。 在上述工作完毕之后,从最后两个概率开 始逐步向前进行编码。对于概率大的赋予0, 小的赋予1。
经霍夫曼编码后,平均码长为:
B
P( w )n
i 1 i
6
i
=0.4×1+0.30×2+ 0.1×4+0.06×5+0.04×5 =2.20(bit)
i 1 j k 1
P ( x ) P( x )
i j
k
n
以前面的数据为例,香农-编码费诺如图4.5所 示。
三、算术编码
理论上,用Huffman方法对源数据流进行编 码可达到最佳编码效果。但由于计算机中存储、 处理的最小单位是“位”,因此,在一些情况 下,实际压缩比与理论压缩比的极限相去甚远。 算术编码把要压缩处理的整段数据映射 到—段实数半开区间[0,1]内的某一区段,构 造出小于1且大于或等于0的数值。这个数值是 输入数据流的唯—可译代码。
规律性的结构可由先验知识和背景知识得到, 我们称此类冗余为知识冗余。 5.视觉冗余 事实表明,人类的视觉系统对图像场的敏 感性是非均匀的和非线性的。然而,在记录原 始图像数据时,通常假定视觉系统是线性的和 均匀的,对视觉敏感和不敏感的部分同等对待, 从而产生了比理想编码更多的数据,这就是视 觉冗余。 6.图像区域的相同性冗余 是指在图像中的两个或多个区域所对应的所有
一Hale Waihona Puke 帧内预测编码
在视频预测编码中,主要分为帧内预测编码和 帧间预测编码。 所谓帧内预测,就是在一个视频帧,即一幅图 像内进行的预测。 帧内预测编码的优点是算法简单,易于实现, 但压缩比比较低,因此在视频图像压缩中几乎 不单独使用。
帧间预测编码就是利用视频图像帧间的相 关性,即时间相关性,来获得比帧内编码高得 多的压缩比。 具有运动补偿的帧间预测编码是视频压缩 的关键技术之一,它包括以下几个步骤: 首先,将图像分解成相对静止的背景和若干运 动的物体,通过运动估值得到每个物体的位移 矢量; 然后,利用位移矢量计算经运动补偿后的预测 值 最后对预测误差进行量化、编码、传输,同时 将位移矢量和图像分解方式等信息送到接收端。
二、 编码压缩的可能性
众所周知,视频由一帧一帧的图像组成, 而图像的各像素之间,无论是在行方向还是在 列方向,都存在着一定的相关性,即冗余度。 应用某种编码方法提取或减少这些冗余度,便 可以达到压缩数据的目的。 常见的静态图像数据冗余包括: 1.空间冗余 这是静态图像存在的最主要的一种数据冗 余。一幅图像记录了画面上可见景物的颜色。 同一景物表面上各采样点的颜色之间往往存在 着空间连贯性,从而产生了空间冗余。
4.3 编码压缩方法分类
数据压缩的目标是去除各种冗余。根据压 缩后是否有信息丢失,多媒体数据压缩技术可 分为无损压缩技术和有损压缩技术两类。数据 压缩编码分类如图4.3所示。 常见的无损压缩技术有: 霍夫曼编码 算术编码 行程编码 词典编码
常用的一些有损压缩技术包括: 预测编码 变换编码 基于模型编码 分形编码 其他编码
按上述区间的定义,最终结果如表4.3:
给定事件序列的算术编码步骤如下: (1)编码器在开始时将“当前间隔”[ L,H] 设置为[0,1)。 (2)对每一事件,编码器按步骤(a)和(b) 进行处理
(a)编码器将“当前间隔”分为子间隔, 每一个事件一个。 (b)一个子间隔的大小与下一个将出现的 事件的概率成比例,编码器选择子间隔对应于 下一个确切发生的事件相对应,并使它成为新 的“当前间隔”。 最后输出的“当前间隔”的下边界就是该 给定事件序列的算术编码。
1. 理论基础 一个事件集合x1, x2,…,xn处于一个基 本概率空间,其相应概率为p1,p2,…,pn, 且p1+ p2 +…pn=1。每一个信息的信息量 为 I ( xk ) loga ( pk ) (4-3) 定义在概率空间中每—事件的概率不相等 时的平均信息量为信息熵,则信息熵H可采用 如下公式计算: H E{I ( x )} p I ( x ) p log p (4-4)
2.时间冗余 在视频的相邻帧间,往往包含相同的背景 和移动物体,因此,后一帧数据与前一帧数据 有许多共同的地方,即在时间上存在大量的冗 余。 3.结构冗余 在有些图像的纹理区,图像的像素值存在 着明显的分布模式。例如,方格状的地板图案 等。我们称这种冗余为结构冗余。 4.知识冗余 有些图像的理解与某些知识有相当大的相 关性。例如,人脸的图像有固定的结构。这类
n n k k 1 k k k 1 k a k
【例4.1】信息熵的计算。 设8个随机变量具有同等概率为1/8,则熵:
1 1 H ( X ) log 2 3bit 8 j 1 8
8
即计算出H=3比特。 2. Huffman编码 Huffman编码是1952年由Huffman提出 的一种编码方法。它在变长编码方法中是最佳 的。
二、 信源编码器和信源解码器
信源编码器的任务是减少或消除输入图像 中的冗余。编码的框图如图下图(a)所示。
从原理来看主要分为三个阶段,第一阶段 将输入数据转换为可以减少输入图像中像素间 冗余的数据的集合。第二阶段设法去除原图象 信号的相关性,例如对电视信号就可以去掉帧 内各种相关,还可以去除帧间相关。这样有利
设信源A的信源空间为:
其中
N i 1 i
P(a ) 1,现用r个码符号的码符号集
a2 A : a1 A P P( A) : P(a1 ) P(a2 )
aN
P( aN )
X : x1, x2 ,
, xr 对信源A中的每个符号 ai(i=1,
2,…,N)进行编码。具体编码的方法是: (1)把信源符号按其出现概率的大小顺序排列起 来; (2)把最末两个具有最小概率的元素之概率加起 来;
像素值相同或相近,从而产生的数据重复性存 储,这就是图像区域的相似性冗余。 7.纹理的统计冗余 有些图像纹理尽管不严格服从某—分布规 律,但是它在统计的意义上服从该规律。利用 这种性质也可以减少表示图像的数据量,所以 我们称之为纹理的统计冗余。
4.2 编码模型
一个压缩系统包括两个不同的结构块: 一个编码器和一个解码器。图像f(x,y) 输入到编码器中,这个编码器可以根据 输入数据生成一组符号。在通过信道进 行传输之后,将经过编码的表达符号送 入解码器,经过重构后,就生成了输出 图像。
4.4 统计编码
统计编码属无损编码,它是根据消息出现 概率的分布特性而进行的压缩编码。统计编码 又可分为定长码和变长码。常用的统计编码有 Huffman编码、行程编码和算术编码三种。
一、 哈夫曼(Huffman)编码
在一幅图像中,有些图像数据出现的频率 高,有些图像数据出现的频率低。如果对那些 出现频率高的数据用较少的位数来表示,而出 现频率低的数据用较多的位数来表示,这样从 总的效果来看还是节省了存储空间。这种编码 思想首先由香农(Shannon)提出,哈夫曼后 来对它提出了一种改进的编码方法,用这种方 法得到的编码称为Huffman编码,Huffman编码 是一种变长编码。
3. Huffman编码的几点说明 (1)Huffman编码是最佳的,虽然构造出 来的码不唯一,但其平均码长却相同,所以不 影响编码效率和数据压缩性能。 (2)由于Huffman码的码长参差不齐,因 此,存在一个输入、输出速率匹配问题。解决 的办法是设置一定容量的缓冲存储器。 (3)Huffman码在存储或传输过程中,如 果出现误码,可能会引起误码的连续传播, 1bit的误码可能把一大串码字全部破坏,因此, 限制了Huffman码的使用。
(4)Huffman编码对不同信源其编码效率 也不尽相同。当信源概率是2的负次幂时, Huffman码的编码效率达到100%;当信源概率 相等时,其编码效率最低。这表明在使用 Huffman方法编码时,只有当信源概率分布很 不均匀时,Huffman码才会收到显著的效果。 (5)Huffman编码应用时,均需要与其他 编码结合起来使用,才能进一步提高数据压缩 比。例如,在静态图像处理标准JPEG中,先对 图像像素进行DCT变换、量化、Z形扫描、游程 编码后,再进行霍夫曼编码。
在算术编码中有几个问题需要注意: 由于实际的计算机的精度不可能无限长,一个 明显的问题是运算中出现溢出,但多数机器都 有16、32或者64位的精度,因此这个问题可使 用比例缩放方法解决。 算术编码器对整个消息只产生一个码字,这个 码字是在间隔[0,1]中的一个实数,因此译码 器在接收到表示这个实数的所有位之前不能进 行译码。 算术编码也是一种对错误很敏感的编码方法, 如果有一位发生错误就会导致整个消息译 错。
第4章 多媒体数据压缩与编码技术
本章重点:
编码模型 编码压缩方法分类 统计编码的基本原理 预测编码的基本原理 变换编码的基本原理 视频编码的基本原理
4.1 编码压缩的必要性与可能性
一、 编码压缩的必要性
众所周知,图像量化所需数据量大。图像和视 频的庞大数据对计算机的处理速度、存储容量 都提出过高的要求。因此必须进行数据量压缩。 从传送的角度来看,在信道带宽、通信链路容 量一定的前提下,采用编码压缩技术,减少 传输数据量,是提高通信速度的重要手段。因 此,更要求数据量压缩。