第二章多媒体数据压缩编码技术
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
表2-2 色度量化表
2.3.2 JPEG压缩基本处理算法
对DCT系数的量化是基于限失真编码理
论进行的,量化是造成图像质量下降的最主要
的原因。其作用是在一定的主观保真度图像质
量的前提下,丢掉那些对视觉效果影响不大的
信息,失真度在人的视觉所能接受的容限之内
。
2.3.2 JPEG压缩基本处理算法
4.DC系数差值编码和AC系数的行程编码
e(i,j)= f(i,j)-f’(i,j)
由于图像像素之间有极强的相关性,所
以这个预测误差是很小的。编码时,是对预测
误差e(i,j)进行量化、编码、发送,由此而
得名为差值脉冲编码调制法(DPCM)。
2.2.5 预测编码
图2-4 DPCM编、解码原理图
2.2.5 预测编码
2.自适应差值脉冲编码调制(ADPCM)
(3)适中的计算复杂性:压缩算法既可用软件实现
,也可用硬件实现,并具有较好的性能。
(4)具有顺序编码、累进编码、无失真编码和层
次编码4种操作模式。
2.3.2 JPEG压缩基本处理算法
1.分块采样
JPEG压缩首先要对连续彩色图像的每一
帧中的亮度信号(Y)和色差(CR、CB)信
号进行单独采样。采样时,首先将图像分割成
2.2.1 量化
量化操作实质上是将连续的模拟信号采
样得到的瞬时幅度值映射成离散的数字信号,
即用一组规定的电平,把瞬时抽样值用最接近
的电平值来表示。
2.2.1 量化
1.量化位数
量化位数是每个采样点能够表示的数
据范围,常用的有8位、12位和16位。
量化过程是,先将整个幅值划分为有
限个小幅度(量化阶距)的集合,把落入某
冗 余。
2.1.3 数据压缩方法的分类
图2-1 常用压缩编码方法的分类
2.2 多媒体数据压缩编码基础
数据压缩是通过消除输入数据序列(原
始数据序列)中的冗余性,将它变换成较短的
输出数据序列(压缩数据序列)的技术。如果
将压缩数据序列与原始数据序列长度之比定义
为压缩比,尽量减小数据压缩的压缩比则是进
行数据压缩的根本目的。
制码元,对其中概率大的符号分配0,概率小的符号分 配1(反之亦可)。
(2)把概率最小的两个符号概率相加,求出的
和作为一个新符号的概率,将新的概率值与剩下的N-2
个概率值一起重新进行排序,再重复步骤(1)的编码
过程。
(3)重复步骤(2)直到只剩一个概率值为止,
其值为1。
(4)分配码字,对于各种信源符号,基于步骤
许多16×16个采样点构成的宏区块,将宏区块 再分成4部分,每一部分为8×8个采样点组成 的像块,像块是基于DCT压缩编码处理的最小 单位,DCT变换就是以像块为单位的。
2.3.2 JPEG压缩基本处理算法
2.3.2 JPEG压缩基本处理算法
2.DCT变换
DCT是英文Discrete Cosine Transform的
量化误差或量化噪声。
2.2.1 量化
3.非均匀量化
非均匀量化的基本思想是,对输入信
号进行量化时,大的输入信号采用大的量化
间隔,小的输入信号采用小的量化间隔,这
样就可以在满足精度要求的情况下用较少的
位数来表示。声音数据还原时,采用相同的
规则。
2.2.2 莫尔斯码
莫尔斯码即电报码,它采用“· ”和“-”
2.2.7 变换编码
变换编码也是去除冗余的一种最基本的
编码方法。不同的是变换编码首先要把压缩的
数据变换到某个变换域中(如频域),然后再
进行编码。变化域中表现为能量集中在某个区
域,可以利用这一特点在不同区域间有效地分
配量化比特数,或者去掉那些能量很小的区域
,从而达到数据压缩的目的。例如声音信号,
从时域变换到频域以后,可以清楚的看到能量
称为“游程”。
控制符
重复次数 被重复字符
图2-3 3字节码字格式
2.2.5 预测编码
1.差值脉冲编码调制(DPCM)
设二维图像上空间坐标为(i,j)的像
素的实际样本值为f(i,j),f’(i,j)是根据
已传输的相邻像素的样本值对该像素估算得到
的预测值。实际值和预测值之间的差值即预测
误差,用下式来表示:
但这种相关性还不是十分明显,要最终实现数
据压缩,还需要进一步降低非零系数的幅值,
增加零值系数的数量,从而进一步提高F矩阵的 相关性。为此还要对变换后的DCT系数进行量 化,来减少表示每个DCT系数所使用的位数, 另外可以增加零值系数,提高压缩比。
2.3.2 JPEG压缩基本处理算法
表2-1 亮度量化表
个矢量进行量化。矢量量化一般是限失真编码
。
输入矢量X是一个待编码的k维矢量,该
矢量原则上既可以是原始图像,也可以是图像
的预测误差或变换矩阵系数的分块(或称分组
)。码本C是一个具有N个k维矢量的集合, C={Yi},i=1,2,…N,
2.2.6 矢量量化
矢量编码的过程就是在码本C中搜索一
个与输入矢量最接近的码字Yi的过程。在码本
责制定静态的数字图像数据压缩编码方法,这
个专家组开发的算法称为JPEG算法,并于1991
年正式成为国际标准,编号为ISO/IEC10918,
现常称为JPEG标准。JPEG是一个使用范围很
广的静态图像数据压缩标准,既可用于灰度图
像又可用于彩色图像。
2.3.1 JPEG压缩算法简介
JPEG的目的是为了给出一个连续色调图像的压
缩方法使之满足以下要求:
(1) 压缩比可控:能覆盖一个较宽的图像质量等级
范围,能达到“很好”到“极好”的评估,与原始图
像相比,人的视觉难以区分。
(2)不受限制:适用于所有的连续色调图像,不应
对图像的尺寸、彩色空间和像素纵横比等特性进行限
制,也不应对图像的场景内容(如复杂性、彩色范围或
统计特性)有任何限制。
译
码,这就需要在存储代码之前加以考
虑。
尽管如此,哈夫曼编码还是得到了
广泛的 应用。
2.2.4 行程长度编码
行程长度编码(Run-Length Encoding,
RLE)也称游程编码,是一种非常简单的数据
压缩编码形式。它基于简单的编码数据原则,
即重复的数据值序列(或称为流)用一个重复
次数和单个数据值来代替。这里,重复的次数
应用系统中,一定要对声音、图像等多媒体信
号进行压缩。
2.1.2 数据压缩的可能性
•
多媒体数据表示中存在着大量的冗余,以图像
数据压缩为例,图像信息冗余通常有以下几种情况:
•
在
(1)空间冗余。在很多图像数据中,像素间 行、列方向上都有很大的相关性,相
邻像素的值比较接近,或者完全相同,这种数据冗余 叫做空间冗余。
2.2.5 预测编码
3.帧间预测编码
采用预测编码方法消除序列图像在时间
上的相关性,传送前后两帧的对应像素之间的
差值,这称为帧间预测。
图2-6 具有运动补偿的帧间预测
2.2.6 矢量量化
在矢量量化编码中,是把输入数据几个
一组地分成许多组,成组地量化编码,即将这
些数看成一个k维矢量,然后以矢量为单位逐
增加零值的游程长度。图2-9为Z字形扫描轨迹图 。 从 左 上 方 AC01 开 始 , 沿 对 角 线 方 向 , 直 到 AC77扫描结束。63个AC系数行程编码的码字, 可用2个字节来表示,如图2-10所示。
2.3.2 JPEG压缩基本处理算法
图2-9 Z字形扫描
2.3.2 JPEG压缩基本处理算法
集中在哪些频率范围内,从而根据频率范围分
布有效地分配不同的量化位数。
2.3 静态图像压缩标准JPEG
JPEG(Joint Photographic Experts Group
)是联合图像专家小组的英文缩写,这个专家
组是由国际电报电话咨询委员会(CCITI)和
国际标准化协会(ISO)于1986年联合组成负
•
(4)信息熵冗余。信息熵是指一组数据所携
带的信息量,信息熵冗余指数据所携带的信息量少
于 数据本身而反映出来的数据冗余。
•
(5)结构冗余。在有些图像的纹理区,图像
的像素值存在着明显的分布模式。
•
(6)知识冗余。有许多图像的理解与某些先
验知识有相当大的相关性。这类规律性的结构可由
先
验知识和背景知识得到,称此类冗余为知识
缩写,意思是离散余弦变换。它是一种傅立叶
变换,任何连续的实对称函数采用傅立叶变换
后,只含余弦项。
在空间域中的样值矩阵,经DCT变换后
,成了频率域中8×8DCT系数矩阵。频域中的
右下角对应高频部分,而在左上角对应低频部
分,其中左上角(0,0)位置的系数反映图像
子块的平均样本值,对应直流分量,称为DC系
数。其他63个对应交流分量的系数,称为AC系
数。
2.3.2 JPEG压缩基本处理算法
DCT变换公式为: 正变换:
逆变换:ቤተ መጻሕፍቲ ባይዱ
其中:
DC系数:
2.3.2 JPEG压缩基本处理算法
3.DCT系数量化
经过DCT变换后,DCT系数间的相关性
已经显现出来,即左上角的系数值大,而右下
角的系数值小,为数据压缩创造了必要条件。
量化后的64个DCT系数仍然是二维系数矩
阵,坐标(0,0)处的系数是直流分量,相邻两
个8×8像块之间的DC系数有强相关性,JPEG中对
DC系数采用DPCM编码,即对相邻块之间的DC系
数差值DIFF=DCi-DCi-1进行编码。
其余63个交流系数采用行程编码,使用Z字
形扫描方式可以增加连续零系数的个数,也就是
个阶距内的样值归为一类,并赋予相同的量
化值,如图2-2所示,其中虚线箭头表示采样
值量化后的电平值。
2.2.1 量化
图2-2 模拟信号的采样和量化
2.2.1 量化
2. 均匀量化
采用相等的量化间隔对采样得到的信
号做量化就是均匀量化,也称为线性量化。量
化 后 的 样 本 值 Y 和 实 际 值 X 的 差 E=Y-X 称 为
采用哈夫曼编码时有两个问题值得注意:
(1)哈夫曼编码没有错误保护功能。在
译码时,如果某些位出现错误,会引起一连串
的
错 误 , 造 成 错 误 传 播 ( Error
Propagation )。计算机对这种错误也无能
为力,说不 出错在哪里,更谈不上去纠正
它。
(2)哈夫曼编码是可变长度码,因此很
难随意查找或调用压缩文件中的内容,然后再
其基本思想是:利用自适应的思想改变
量化阶的大小,即使用小的量化阶(step-size)去
编码小的差值,使用大的量化阶去编码大的差
值;使用过去的样本值估算下一个输入样本的
预测值,使实际样本值和预测值之间的差值总
是最小。其简化的编码框图如图2-5所示。
2.2.5 预测编码
图2-5 ADPCM简化的编码框图
中寻找到与输入矢量完全一致的码字的概率很
小,但只要二者之间误差最小时,便可用该码
字Yi代表输入矢量。传输时并不传送码字 Yi本
身,只传送其下标“i” 。当码本长度为N,,
为传送下标所需要的比特数为 log2N 。传送一
个像素所需要的平均比特数为 log2N。
2.2.6 矢量量化
图2-7 矢量量化编码解码框图
2.1多媒体数据
压缩编码的重要性和分类
数据压缩是通过减少计算机中所存储数
据或者通信传播中数据的冗余度,达到增大数
据密度,最终使数据的存储空间减少的技术。
2.1.1数据压缩编码的必要性
多媒体数据,其惊人的数据量为媒体的
存储、传输及处理带来了巨大的压力。为解决
这一问题,单纯用扩大存储容量、增加传输线
路带宽的办法是不现实的。因此,在多媒体的
•
(2)时间冗余。在视频图像序列中,相邻两
帧图像数据有许多共同的地方,这种共同性称为时间
冗余,可采用运动补偿算法来去掉冗余信息.
2.1.2 数据压缩的可能性
•
(3)视觉冗余。视觉冗余度是相对于人眼的
视觉特性而言的,人类视觉系统对图像的敏感性是
非均匀和非线性的,并不是图像中的所有变化人
眼都能观察到。
来表示26个英文字母。采用常出现的字母用短
码表示(如E用“·”表示,T用“-”表示),不
常出现的字母用长码表示(如Q用“- -·-”表示,
X用“-··-”表示)的变长编码方式以减少码率。
2.2.3 哈夫曼编码
该算法基于一种称为编码树的技术,其步骤如下
:
(1)将待编码的N个信源符号按照出现的概率由
大到小 排列,给排在最后的两个符号各分配一位二进
(1)分配的数字,从编码树的根部开始回溯读出,并
2.2.3 哈夫曼编码
例 设有离散无记忆信源,符号a1、a2、a3、a4
、a5、a6的出现概率分别为0.12、0.08、0.4、0.1、0.25
、0.05,其哈夫曼编码过程如下:
2.2.3 哈夫曼编码
平均码长为: 信源熵为: 编码效率为:
2.2.3 哈夫曼编码
图2-10 AC系数行程编码的码字
2.3.2 JPEG压缩基本处理算法
5.熵编码
为了进一步压缩数据,对DPCM编码后
的直流系数DC和RLE编码后的交流系数AC采
用熵编码。在JPEG有损压缩算法中,使用哈