第四章 预测编码和变换编码
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
lim H n ( x ) lim H n ( xn | xn 1 xn 2 ...x1 )
n n
所以参与预测的符号越多,预测就越准确,该信源的不确定性就越小, 数码率就可以降低。
原理
利用以往的样本值对新样本值进行预测,将新样本值的实际值
与其预测值相减,得到误差值,对该误差值进行编码,传送此 编码即可。
采用预测编码的方法消除序列图像在时间上的相关性,即不直接传送 当前帧的像素值,而是传送x和其前一帧或后一帧的对应像素x‘ 之间 的差值,这称为帧间预测。 当图像中存在着运动物体时,简单的预测不能收到好的效果, 例如当前帧与前一帧的背景完全一样,只是小球平移了一个位置, 如果简单地以第k-1帧像素值作为k帧的预测值,则在实线和虚线 所示的圆内的预测误差都不为零。如果已经知道了小球运动的方 向和速度,可以从小球在k-1帧的位置推算出它在k帧中的位置来, 而背景图像(不考虑被遮挡的部分)仍以前一帧的背景代替,将 这种考虑了小球位移的k-1帧图像作为k帧的预测值,就比简单的 预测准确得多,从而可以达到更高的数据压缩比。这种预测方法 称为具有运动补偿的帧间预测。
^ Xk
Fra Baidu bibliotek
借助预测器将原来对原始信号的编码转换成对预测误差的编码。在预 测比较准确时,预测误差的动态范围会远小于原始信号序列的动态范 围,所以对顶测误差的编码所需的比持数会大大减少,这是预测编码 获得数据压缩结果的原因。 在多数情况下,可通过将M个先前的值进行线性组合以得到预测值
预测方程式:
Modulation:差值脉冲编码调制是利用信号的相关性找出可 以反映信号变化特征的一个差值量进行编码。
ADPCM:自适应差分脉冲调制预测,Adaptive Differential
Pulse Code Modulation
4.1.1 无损预测编码原理
图4-1
Xk 预测器 整数舍入
-
ek
^
编码器
自适应预测
预测参数的最佳化依赖信源的特征,要得到最佳预测参数显然是
一件繁琐的工作。而采用固定的预测参数往往又得不到较好的性 能。为了能使性能较佳,又不致于有太大的工作量,可以采用自 适应预测。
为了减少计算工作量,预测参数仍采用固定的,但此时有多组预
测参数可供选择,这些预测参数根据常见的信源特征求得。编码 时具体采用哪组预测参数需根据特征来自适应地确定。
x k xk 1
^
最佳线性预测
使误差函数 达到最小值的预测方程式叫做最佳 线性预测。 求最佳线性预测的各个参数ai, 列方程组:
^ m se E ( xk xk ) 2
E[( xk xk ) 2 ] 0, (i 1,2,...,n 1) ai
x k f ( x1 , x2 , x3 ,..., xN , k ), k N
K>N表示x1, x2,…, xN 的时序在xk 之前。
线性预测是指预测方程式的右方是各个xi的线性函数:
^
xk
^
a (k ) x
i 1 i
k 1
i
如果ai (k)是常数,则为时不变线性预测。 最简单的预测方程:
DPCM/Huffman Codign DPCM/Arithmetic Coding
Results
DPCM at 1.0 bpp
Results
DPCM at 2.0 bpp
Results
DPCM at 3.0 bpp
二、活动图像的帧间预测编码
视频信号的冗余度主要体现在空间相关性(帧内)、时间相 关性(帧间)和色度空间表示上的相关性。 对于每秒25帧(30)的电视信号,其相继帧之间存在极强 的相关性。所以在活动图像序列中可以利用前面的帧来预测 后面的帧,以实现数据压缩。 帧间预测编码技术被广泛应用到H.261、H.263、MPEG-1和 MPEG-2等视频压缩标准之中。
4.1.4 图像信号的预测编码
一幅数字图像可以看成一个空间点阵,图像信号不仅在水平方向 是相关的,在垂直方向也是相关的。根据已知样值与待预测样值 间的位置关系,可以分为:
(1)一维预测(行内预测):利用同一行上相邻的样值进 行预测。 (2)二维预测(帧内预测):利用同一行和前面几行的数 据进行预测。
一、静止图像的二维预测编码
选择值 预测值
c a
b d x
0
1 2 3 4
非预测
a b c a+b-c a+(b-c)/2 b+(a-c)/2
三邻域预测法
5 6
7
(a+b)/2
这种压缩算法被应用到JPEG标准的无损压缩模式之中, 中等复杂程度的图像压缩比可达到2:1。 Lossless JPEG
^
实际上就是发送端的量化器对误差ek’量化的误差 对 ek’的量化越粗糙,压缩比越高,失真越大.
为接纳量化步骤,需要改变图4-1中的无损编码器以使编码器和解 码器所产生的预测能相等。为此在图4-2中将有损编码器的预测器 放在1个反馈环中。这个环的输入是过去预测和与其对应的量化误 差的函数
’ =e ’ + ^ x k k Xk
DM编码失真示例
4.1.3 自适应差分脉冲调制(ADPCM)预测
输入数据不是平稳的随机过程 自适应差分脉冲调制(ADPCM)预测 定期重新调整预测器的预测参数,使预测器随输入数据的变化 而变化 自适应改变量化器的量化阶数,用小量化阶量化小差值,大量 化阶量化大差值 分为线性自适应预测与非线性自适应预测两种
原理 为达到目的,可以通过不同的路径——殊途同归 例1: 数学计算机中,经常利用某些数学函数略加转换可以找出一条计 算的捷径。 乘法:1000000X100000=100000000000 运算时,数据很大,可以变成对数进行加法
1000000 取对数 lg106 算法 变换
X
100000=100000000000 取对数 取指数
这样一个闭环结构能防止在解码器的输出端产生误差。这里解码 器的输出也由上式给出。
示例一:德尔塔调制(DM或ΔM)
最简单的有损预测编码方法是德尔塔(或称增量)调制(DM或ΔM) 方 法,早期在数字电话中采用,是一种最简单的差值脉冲编码 。 其预测器和量化器分别定义为
其中a是预测系数(一般小于等于1),c是1个正的常数。 因为量化器的输出可用单个位符表示(输出只有2个值),所以编码器 中的符号编码器可以只用长度固定为1比特的码。由DM方法得到的码 率是1比特/像素。
外,还要传送位移矢量以及区域分割信息。
运动补偿帧间预测编码
图像输入
编码器
预测误差输出 译码器
-
运动 补偿 运动 估值
帧 缓存 运动矢量输出
4.2 变换编码
利用预测编码可以去除图象数据的时间和空间的冗余。它 的优点是直观、简捷、易于实现,特别是用于硬件实现。 但压缩能力有限,DPCM一般只能压缩到2~4bit/像素。 变换编码是进行一种函数变换,映射变换从信号域变换到 另一个信号域。 预测编码希望通过对信源建模来尽可能的预测源数据;而 变换编码则考虑将原始数据变换到另一个表示空间,使数 据在新的空间上尽可能相互独立,而能量更集中。
三、具有运动补偿的帧间预测
活动图像序列中的一个画面可以大致划分为3个区域:
背景区:相邻两个画面的背景区基本相同。
运动物体区:可以视为由前一个画面的某一区域的像素平移而
成。(位移矢量)
暴露区:指物体运动后而显露出来的曾被遮盖的背景区域。
运动补偿预测就是将前一个画面的背景区+平移后的运 动物体区作为后一个画面的预测值。
运动补偿帧间预测编码
• 运动补偿帧间预测从原理上包括如下几个基本步骤:
(1)图像分割:把图像划分为静止的背景和若干运动的物体,
各个物体可能有不同的位移,但构成同一物体的所有像素的 位移相同。
(2)运动矢量估值:考察前后两个画面,利用运动估值算法
得到每个物体的位移矢量。
(3)运动补偿:用运动矢量补偿物体的运动效果再进行预测。 (4)编码:除了对实测值与预测值之间的差值进行编码传送
第四章 预测编码和变换编码
4.1 预测编码
4.2 变换编码
4.1 预测编码
预测编码是数据压缩理论的一个重要分支。根据离散信号之间存在一 定相关性的特点,利用前面的一个或多个信号对下一个信号进行预测, 然后对实际值和预测值的差(预测误差)进行编码。如果预测比较准 确,那么误差信号就会很小,就可以用较少的码位进行编码,以达到 数据压缩的目的。
lg105
1011
6
+
5
=
11
例2:
X(t)为模拟输入信号,取样后成为样本序列{Xk}
第n个符号Xn的熵满足:
H ( xn ) H ( xn | xn1 ) H ( xn | xn1 xn2 ) ...... H ( xn | xn1 xn2 ...x1 )
n越大考虑更多元素之间的依赖关系时,熵值进一步降低,得到的熵 越接近于实际信源所含的实际熵(极限熵)。
Xk
发送端
ek
译码器
+
^
接收端
Xk
整数舍入 预测器
Xk
当输入信号序列X(k=1,2、…)逐个进入编码器时,预测器根据若 干个过去的输入产生当前输入的预测(估计)值。将预测器的输出舍入 ^ 成最接近的整数 ,并用来计算预测误差ek Xk ek = xk ^ Xk
这个误差可用符号编码器借助变长码进行编码以产生压缩信号数据流 的下—个元素。 在解码器方根据接收到的变长码字重建预测误差,并执行以下操作以 得到解码信号 xk =ek+
^
代入
x k ai xi
i 1
^
k 1
得到联立方程组,解方程定出ai。
4.1.2 有损预测编码原理(DPCM)
图4-2
Xk
-
^
ek
量化器 Xk’
ek’
编码器
Xk
发送端
预测器
’ =e ’ + ^ x k k Xk
+
译码器
ek’
+
^
接收端
Xk
预测器
Xk’
有损预测编码( DPCM )
在无损预测编码系统的基础上加一个量化器构成 压缩过程
示例: 取a=1和c=5。设输入序列为12,16,12,14,20、32,46,52, 50,51,50。编码开始时先将第1个输入像素直接传给编码器。
上例的输入和输出中显示出2种有损预测编码典型的失真现象。 • 其一,当c远大于输入中的最小变化时,如在n=0到n=3的相对平滑区 间,DM编码会产生颗粒噪声,即误差正负波动。 • 其二,当c远小于输入中的最大变化时,如在n=5到n=9的相对陡峭区间, DM编码会产生斜率过载,有较大的误差。 对大多数图像来说, 上述2种情况分别会导致图像中目标边缘发生模糊和整个图 像产生纹状表面。
发送端预测器带有存储器,把tn时刻以前的采样值x1, x2, x3,…, xk-1
^ ek为xn与Xk的差值, ek’为ek经量化器量化的值
xk’是接收端的输出信号 误差ek为
^ 存储起来并据此对xk进行预测,得到预测值 X
k
^ ek= xk- xk’= xk-( k +ek’)= (xkXk )- ek’= ek - ek’ X
为了自适应地选择最佳参数,通常将信源数据分区间编码,编码
时自动地选择一组预测参数,使该实际值与预测值的均方误差最 小。随着编码区间的不同,预测参数自适应地变化,以达到准最 佳预测。
示例三:
4个不同的预测器如下所示 其中第4个预测器是自适应预测器,它通过计算图像的局部方向性来 选择合适的预测值以达到保持图像边缘的目的。
自适应量化
在一定量化级数下减少量化误差或在同样的误
差条件下压缩数据,根据信号分布不均匀的特 点,希望系统具有随输入信号的变化区间足以 保持输入量化器的信号基本均匀的能力,这种 能力叫自适应量化。
示例二:
ADPCM采用与DPCM相同的预测器,但对误差量化时采用自 适应改变量化器的量化阶数的压缩结果
理论上数据源可以准确地用一个数学模型表示,使其输出数据
总是与模型的输出一致,因此可以准确地预测数据,但是实际 上预测器不可能找到如此完美的数学模型;
预测本身不会造成失真。误差值的編码可以采用无失真压縮法
或失真压縮法。
分类
无损预测编码 有损预测编码
DPCM:差分脉冲调制预测,Differential Pulse Code
n n
所以参与预测的符号越多,预测就越准确,该信源的不确定性就越小, 数码率就可以降低。
原理
利用以往的样本值对新样本值进行预测,将新样本值的实际值
与其预测值相减,得到误差值,对该误差值进行编码,传送此 编码即可。
采用预测编码的方法消除序列图像在时间上的相关性,即不直接传送 当前帧的像素值,而是传送x和其前一帧或后一帧的对应像素x‘ 之间 的差值,这称为帧间预测。 当图像中存在着运动物体时,简单的预测不能收到好的效果, 例如当前帧与前一帧的背景完全一样,只是小球平移了一个位置, 如果简单地以第k-1帧像素值作为k帧的预测值,则在实线和虚线 所示的圆内的预测误差都不为零。如果已经知道了小球运动的方 向和速度,可以从小球在k-1帧的位置推算出它在k帧中的位置来, 而背景图像(不考虑被遮挡的部分)仍以前一帧的背景代替,将 这种考虑了小球位移的k-1帧图像作为k帧的预测值,就比简单的 预测准确得多,从而可以达到更高的数据压缩比。这种预测方法 称为具有运动补偿的帧间预测。
^ Xk
Fra Baidu bibliotek
借助预测器将原来对原始信号的编码转换成对预测误差的编码。在预 测比较准确时,预测误差的动态范围会远小于原始信号序列的动态范 围,所以对顶测误差的编码所需的比持数会大大减少,这是预测编码 获得数据压缩结果的原因。 在多数情况下,可通过将M个先前的值进行线性组合以得到预测值
预测方程式:
Modulation:差值脉冲编码调制是利用信号的相关性找出可 以反映信号变化特征的一个差值量进行编码。
ADPCM:自适应差分脉冲调制预测,Adaptive Differential
Pulse Code Modulation
4.1.1 无损预测编码原理
图4-1
Xk 预测器 整数舍入
-
ek
^
编码器
自适应预测
预测参数的最佳化依赖信源的特征,要得到最佳预测参数显然是
一件繁琐的工作。而采用固定的预测参数往往又得不到较好的性 能。为了能使性能较佳,又不致于有太大的工作量,可以采用自 适应预测。
为了减少计算工作量,预测参数仍采用固定的,但此时有多组预
测参数可供选择,这些预测参数根据常见的信源特征求得。编码 时具体采用哪组预测参数需根据特征来自适应地确定。
x k xk 1
^
最佳线性预测
使误差函数 达到最小值的预测方程式叫做最佳 线性预测。 求最佳线性预测的各个参数ai, 列方程组:
^ m se E ( xk xk ) 2
E[( xk xk ) 2 ] 0, (i 1,2,...,n 1) ai
x k f ( x1 , x2 , x3 ,..., xN , k ), k N
K>N表示x1, x2,…, xN 的时序在xk 之前。
线性预测是指预测方程式的右方是各个xi的线性函数:
^
xk
^
a (k ) x
i 1 i
k 1
i
如果ai (k)是常数,则为时不变线性预测。 最简单的预测方程:
DPCM/Huffman Codign DPCM/Arithmetic Coding
Results
DPCM at 1.0 bpp
Results
DPCM at 2.0 bpp
Results
DPCM at 3.0 bpp
二、活动图像的帧间预测编码
视频信号的冗余度主要体现在空间相关性(帧内)、时间相 关性(帧间)和色度空间表示上的相关性。 对于每秒25帧(30)的电视信号,其相继帧之间存在极强 的相关性。所以在活动图像序列中可以利用前面的帧来预测 后面的帧,以实现数据压缩。 帧间预测编码技术被广泛应用到H.261、H.263、MPEG-1和 MPEG-2等视频压缩标准之中。
4.1.4 图像信号的预测编码
一幅数字图像可以看成一个空间点阵,图像信号不仅在水平方向 是相关的,在垂直方向也是相关的。根据已知样值与待预测样值 间的位置关系,可以分为:
(1)一维预测(行内预测):利用同一行上相邻的样值进 行预测。 (2)二维预测(帧内预测):利用同一行和前面几行的数 据进行预测。
一、静止图像的二维预测编码
选择值 预测值
c a
b d x
0
1 2 3 4
非预测
a b c a+b-c a+(b-c)/2 b+(a-c)/2
三邻域预测法
5 6
7
(a+b)/2
这种压缩算法被应用到JPEG标准的无损压缩模式之中, 中等复杂程度的图像压缩比可达到2:1。 Lossless JPEG
^
实际上就是发送端的量化器对误差ek’量化的误差 对 ek’的量化越粗糙,压缩比越高,失真越大.
为接纳量化步骤,需要改变图4-1中的无损编码器以使编码器和解 码器所产生的预测能相等。为此在图4-2中将有损编码器的预测器 放在1个反馈环中。这个环的输入是过去预测和与其对应的量化误 差的函数
’ =e ’ + ^ x k k Xk
DM编码失真示例
4.1.3 自适应差分脉冲调制(ADPCM)预测
输入数据不是平稳的随机过程 自适应差分脉冲调制(ADPCM)预测 定期重新调整预测器的预测参数,使预测器随输入数据的变化 而变化 自适应改变量化器的量化阶数,用小量化阶量化小差值,大量 化阶量化大差值 分为线性自适应预测与非线性自适应预测两种
原理 为达到目的,可以通过不同的路径——殊途同归 例1: 数学计算机中,经常利用某些数学函数略加转换可以找出一条计 算的捷径。 乘法:1000000X100000=100000000000 运算时,数据很大,可以变成对数进行加法
1000000 取对数 lg106 算法 变换
X
100000=100000000000 取对数 取指数
这样一个闭环结构能防止在解码器的输出端产生误差。这里解码 器的输出也由上式给出。
示例一:德尔塔调制(DM或ΔM)
最简单的有损预测编码方法是德尔塔(或称增量)调制(DM或ΔM) 方 法,早期在数字电话中采用,是一种最简单的差值脉冲编码 。 其预测器和量化器分别定义为
其中a是预测系数(一般小于等于1),c是1个正的常数。 因为量化器的输出可用单个位符表示(输出只有2个值),所以编码器 中的符号编码器可以只用长度固定为1比特的码。由DM方法得到的码 率是1比特/像素。
外,还要传送位移矢量以及区域分割信息。
运动补偿帧间预测编码
图像输入
编码器
预测误差输出 译码器
-
运动 补偿 运动 估值
帧 缓存 运动矢量输出
4.2 变换编码
利用预测编码可以去除图象数据的时间和空间的冗余。它 的优点是直观、简捷、易于实现,特别是用于硬件实现。 但压缩能力有限,DPCM一般只能压缩到2~4bit/像素。 变换编码是进行一种函数变换,映射变换从信号域变换到 另一个信号域。 预测编码希望通过对信源建模来尽可能的预测源数据;而 变换编码则考虑将原始数据变换到另一个表示空间,使数 据在新的空间上尽可能相互独立,而能量更集中。
三、具有运动补偿的帧间预测
活动图像序列中的一个画面可以大致划分为3个区域:
背景区:相邻两个画面的背景区基本相同。
运动物体区:可以视为由前一个画面的某一区域的像素平移而
成。(位移矢量)
暴露区:指物体运动后而显露出来的曾被遮盖的背景区域。
运动补偿预测就是将前一个画面的背景区+平移后的运 动物体区作为后一个画面的预测值。
运动补偿帧间预测编码
• 运动补偿帧间预测从原理上包括如下几个基本步骤:
(1)图像分割:把图像划分为静止的背景和若干运动的物体,
各个物体可能有不同的位移,但构成同一物体的所有像素的 位移相同。
(2)运动矢量估值:考察前后两个画面,利用运动估值算法
得到每个物体的位移矢量。
(3)运动补偿:用运动矢量补偿物体的运动效果再进行预测。 (4)编码:除了对实测值与预测值之间的差值进行编码传送
第四章 预测编码和变换编码
4.1 预测编码
4.2 变换编码
4.1 预测编码
预测编码是数据压缩理论的一个重要分支。根据离散信号之间存在一 定相关性的特点,利用前面的一个或多个信号对下一个信号进行预测, 然后对实际值和预测值的差(预测误差)进行编码。如果预测比较准 确,那么误差信号就会很小,就可以用较少的码位进行编码,以达到 数据压缩的目的。
lg105
1011
6
+
5
=
11
例2:
X(t)为模拟输入信号,取样后成为样本序列{Xk}
第n个符号Xn的熵满足:
H ( xn ) H ( xn | xn1 ) H ( xn | xn1 xn2 ) ...... H ( xn | xn1 xn2 ...x1 )
n越大考虑更多元素之间的依赖关系时,熵值进一步降低,得到的熵 越接近于实际信源所含的实际熵(极限熵)。
Xk
发送端
ek
译码器
+
^
接收端
Xk
整数舍入 预测器
Xk
当输入信号序列X(k=1,2、…)逐个进入编码器时,预测器根据若 干个过去的输入产生当前输入的预测(估计)值。将预测器的输出舍入 ^ 成最接近的整数 ,并用来计算预测误差ek Xk ek = xk ^ Xk
这个误差可用符号编码器借助变长码进行编码以产生压缩信号数据流 的下—个元素。 在解码器方根据接收到的变长码字重建预测误差,并执行以下操作以 得到解码信号 xk =ek+
^
代入
x k ai xi
i 1
^
k 1
得到联立方程组,解方程定出ai。
4.1.2 有损预测编码原理(DPCM)
图4-2
Xk
-
^
ek
量化器 Xk’
ek’
编码器
Xk
发送端
预测器
’ =e ’ + ^ x k k Xk
+
译码器
ek’
+
^
接收端
Xk
预测器
Xk’
有损预测编码( DPCM )
在无损预测编码系统的基础上加一个量化器构成 压缩过程
示例: 取a=1和c=5。设输入序列为12,16,12,14,20、32,46,52, 50,51,50。编码开始时先将第1个输入像素直接传给编码器。
上例的输入和输出中显示出2种有损预测编码典型的失真现象。 • 其一,当c远大于输入中的最小变化时,如在n=0到n=3的相对平滑区 间,DM编码会产生颗粒噪声,即误差正负波动。 • 其二,当c远小于输入中的最大变化时,如在n=5到n=9的相对陡峭区间, DM编码会产生斜率过载,有较大的误差。 对大多数图像来说, 上述2种情况分别会导致图像中目标边缘发生模糊和整个图 像产生纹状表面。
发送端预测器带有存储器,把tn时刻以前的采样值x1, x2, x3,…, xk-1
^ ek为xn与Xk的差值, ek’为ek经量化器量化的值
xk’是接收端的输出信号 误差ek为
^ 存储起来并据此对xk进行预测,得到预测值 X
k
^ ek= xk- xk’= xk-( k +ek’)= (xkXk )- ek’= ek - ek’ X
为了自适应地选择最佳参数,通常将信源数据分区间编码,编码
时自动地选择一组预测参数,使该实际值与预测值的均方误差最 小。随着编码区间的不同,预测参数自适应地变化,以达到准最 佳预测。
示例三:
4个不同的预测器如下所示 其中第4个预测器是自适应预测器,它通过计算图像的局部方向性来 选择合适的预测值以达到保持图像边缘的目的。
自适应量化
在一定量化级数下减少量化误差或在同样的误
差条件下压缩数据,根据信号分布不均匀的特 点,希望系统具有随输入信号的变化区间足以 保持输入量化器的信号基本均匀的能力,这种 能力叫自适应量化。
示例二:
ADPCM采用与DPCM相同的预测器,但对误差量化时采用自 适应改变量化器的量化阶数的压缩结果
理论上数据源可以准确地用一个数学模型表示,使其输出数据
总是与模型的输出一致,因此可以准确地预测数据,但是实际 上预测器不可能找到如此完美的数学模型;
预测本身不会造成失真。误差值的編码可以采用无失真压縮法
或失真压縮法。
分类
无损预测编码 有损预测编码
DPCM:差分脉冲调制预测,Differential Pulse Code