图像处理-Ch7-图像压缩
Ch8 图像压缩
8.1 8.2名词解释(基本含义),海明码
8.3五大概念理解(自&互信息、信道容量、熵),物理意义
8.4 8.5 霍夫曼编码+LZW编码+无损编码有损编码看作业题
[TOC]
基础知识(Basis of Image Compression)
图像压缩要解决的问题是:尽量减少表示数字图像所需的数据量。减少数据量的基本原理是去除冗余数据。
“数据压缩”这个术语指的是减少表示给定信息量所需的数据量。必须明确区分数据和信息。
数据是传递信息的手段。由于能够使用各种数量的数据来表示相同的信息量,因此说包含无关或重复信息的表示中含有冗余数据。数据冗余是数字图像压缩中的主要问题,它是一个可以用数学量化的实体。
如果
- 当
时, , ,这意味着第一个数据集相对于第二个数据集没有冗余数据。 - 当
时,意味着有显著的压缩和高冗余度。 - 当
时,表明第二个数据集中包含的数据量远远超过原始表达的数据量。
在数字图像压缩中,
编码冗余 | 空间和时间冗余 | 无关信息 |
---|---|---|
编码:表示信息主体or事件集合的符号系统。 | 空间相关:多数二维灰度值阵列中,每个像素与相邻像素相似。 | 含有被人类视觉系统所忽略或与期望用途无关的信息。 |
码字:每条信息被赋予的一系列编码符号。 | 在相关像素表示中,信息被不必要重复。 | 消除这种信息会导致定量信息的丢失,这种信息的去除称为量化。 |
码字长度:每个码字中符号的数量。 | 时间相关:相邻帧中的像素相似。 | —- |
多数的二维灰度值阵列中,用于表示灰度的8bit编码所包含的bit数,要比表示灰度所需的bit多。 | e.g. 视频序列 | —- |
符号:指字母、数字、bit等。
编码冗余
假设一个在区间
如果
对大小为
例:变长编码的计算
code1使用 8 bit编码:
code2使用变长编码(根据出现概率编码):
因此冗余77.4%。
空间冗余
考虑图 (a)和图 (b)所示的图像。如图(c)和图(d)所示,这些图像实质上有同样的直方图。同时要注意,这两幅直方图都是具有三个波峰的,表明灰度级存在三个主要的值域。
因为这些图像中的灰度级的出现概率不是等可能性的,所以可以使用变长编码减少由于对像素进行统一长度的编码或自然二进制编码带来的编码冗余。
然而,编码处理不会改变图像的像素之间相关性的级别。换句话说,用于表示每幅图像的灰度级的编码与像素之间的相关性无关。这些相关来自于图像中对象之间的结构或几何关系。
图(e)和(f)分别展示了沿每幅图像的一条线计算出的自相关系数。
保真度准则
删除”无关视觉”信息会损失真实或定量的图像信息。由于出现信息损失,因此需要一种方法来量化损失。
评价标准:
- 客观保真度准则
- 主观保真度准则
例:客观保真度准则
对于任意的
这样两幅图像之间的总误差为:
图像压缩模型(Image Compression Model)
一个压缩系统由两个不同的结构块组成:一个编码器和一个解码器。图像
- 如果是,该系统是无误差或信息保留的;
- 如果不是,重建图像中会存在一定程度的失真。
图中所示的编码器和解码器都由两个相对独立的功能或子块组成:source/channel
(信源/信道) ,encoder/decoder
(编码/解码)
信源编/解码器(The Source Encoder and Decoder)
信源编码器负责减少或消除输入图像中的任何编码、像素间或心理视觉冗余。
- 信源编码器: 映射器、量化器和符号编码器
- 信源解码器: 符号解码器和逆映射器
信道编/解码器(The Channel Encoder and Decoder)
信道编码器和解码器旨在通过在源编码数据中插入受控形式的冗余来减少信道噪声的影响。由于信源编码器的输出几乎没有冗余,没有这种“受控冗余”,它将对传输噪声高度敏感。
汉明码(Hamming encoder and decoder)
汉明编码器和解码器是在被编码数据中加入足够的比特,以确保有效码字之间必须有最少数量的比特变化(码字间变化的位数最小)。
7位汉明(7,4)码字 :
将3位冗余码加到4位字中,使任意两个有效码字间的距离为3,则所有的1 bit错误可以检测并纠正。
为将汉明码解码,信道解码器必须为先前设立的偶校验的各个字段进行奇校验并检查译码值。1bit错误由非零奇偶校验字
如果找到一个非零值,则解码器就只需简单地在校验字指出地位置补充码字比特。
信息论要素(Elements of Information Theory)
信息论的基本前提是信息的产生可以被建模为一个概率过程,并且可以以符合直觉的方式进行度量。 一个以概率
这个量
信息信道(The Information Channel)
当自信息在信息源与信息用户之间传送时,称信息源与信息用户之间通过信息信道相连。信息信道时连接信源和用户的物理媒介。
假设图中的信息源从一个有限或可数无限的可能符号集中生成一个随机符号序列。信源的输出是离散的随机变量。
信源符号集
一个
离散信源产生符号
如果产生
每个信源输出的平均信息,记为
这个量被称为信源的不确定性或熵。它定义了通过观察单个信源输出所获得的平均信息量。随着其值的增加,与信源相关的不确定性和信息量也增加。如果信源符号具有相同的概率,熵或不确定性达到最大值,并且信源在每个信源符号上提供最大可能的平均信息量。
因为我们在图中将信道的输入建模为离散随机变量,传递到信道输出的信息也是离散随机变量
给定信道输出的概率
其中
这些条件概率排列成一个
完整输出字母表的概率分布可以由
矩阵
为决定
记
观察信息信道的单个输出时接收到的平均信息量是输入或信源符号概率向量
信道容量定义了信息能够可靠地通过信道传输的最大速率。此外,信道的容量不依赖于信源的输入概率(即如何使用信道),而是仅由定义信道的条件概率函数决定。
无误差压缩(Error-Free Compression)
本节重点介绍经典的、主要的无误差压缩策略,通常能提供 2 到 10 的压缩率。而且,它们对二进制图像和灰度图像同样适用。
无误差压缩技术通常由两个相对独立的操作组成:
- 设计一种图像的替代表示法,以减少像素间的冗余;
- 对这种表示进行编码以消除编码冗余。
变长编码(Variable-Length Coding)
无误差图像压缩的最简单方法就是减少仅有的编码冗余。编码冗余通常存在于图像灰度级的自然二进制编码过程中。这样做需要变长编码结构,它可把最短的码字赋予出现概率最大的灰度级对于构造这样的码字,这里分析几种最佳的和接近最佳的编码技术。这些技术都是使用信息论的语言进行表达的。实际上,信源符号既可能是图像灰度级,也可能是灰度级映射操作的输出如素差异或行程宽度等)。
哈夫曼编码(Huffman coding)
算术编码(Arithmetic coding)
算术编码只为整个信源符号序列分配一个算术码字,这个码字定义了一个位于[0,1]之间的实数区间。当信息符号(消息)中的符号增多、用于表示消息的区间变小,而表示该区间所需的信息单元(bit)数量变大。
LZW编码(LZW Coding)
LZW编码处理空间冗余。不需要被编码符号中出现的概率的先验知识。
LZW编码对信源符号的变长序列分配定长码字。
比特平面编码(Bit-Plane Coding)
原理:将一副多灰度级图像分解为一系列二值图像,并采用以下两种二值压缩方法之一来压缩每幅图像。
m-bit单色图像的灰度表示:
将该多项式的m个系数分为m个1-bit平面。最低有效bit平面式手机每个像素
另外一种分解方法:(这种方法可以减少小灰度级变化的影响)是首先用一个
127:0100 0000, 128: 1100 0000
无损预测编码(Lossless Predictive Coding)
无损预测编码基于通过提取和编码每个像素中的新信息来消除紧密相邻像素间的冗余。像素的新信息定义为该像素实际值与预测值之间的差值。
预测误差使用变长码进行编码:
解码器从接收到的变长码字中重构
在其他情况下,
有损压缩(Lossy Compression)
- 与前文所述的无损方法不同,有损编码基于以降低重建图像的精度为代价来换取更高的压缩率。
- 如果能够容忍由此产生的失真(这种失真可能肉眼可见也可能不可见),那么压缩率的提升可能会非常显著。
- 许多有损编码技术能够从被压缩超过100:1的数据中重现可识别的单色图像,并且在10:1到50:1的压缩率下得到与原图几乎无法区分的图像。然而,单色图像的无损编码很少能使数据减少超过3:1。
有损压缩编码(Lossy Predictive Coding)
在无损预测编码的模型中加入量化器,并研究由此产生的重建精度和压缩性能之间的权衡关系。
大多数预测编码应用中使用的最优预测器能使编码器的均方预测误差最小:
前提是:
在这些条件下,最优预测器的设计问题就简化为选择
对上述等式关于每个系数求导,令导数为零,并在假设
其中
因此,对于任何输入图像,使式
使用这些最优系数产生的预测误差方差为:
通常要求预测系数
做出这一限制是为了确保预测器的输出落在允许的灰度级范围内,并减少传输噪声的影响,传输噪声在重建图像中通常表现为水平条纹。
总结
信息信道时连接信源和用户的物理媒介。
信道容量定义了信息能够可靠地通过信道传输的最大速率。