第 7 讲 预测编码
3.3.2 预测编码
1,DPCM线性预测编码方法
(1) 差分预测编码的基本原理
(2) DPCM预测编码算法
(3) 三邻域预测法
2,基于运动补偿的帧间预测
(1) 运动补偿预测编码原理
(2) 运动图像及补偿块的概念结构
(3) 运动补偿的块匹配算法
(4) 宏块的预测模型
3.3.2 预测编码适用场合:对传输速率要求很高的实时应用
1.DPCM线性预测编码方法差分脉冲编码调制 ( DPCM) 技术的特点:
预测对象不是信源的实际数据,而是采样的样本数据,
是预测样本值与实际样本值的差分量
(1)差分预测编码的基本原理基本思想:利用前序的,相邻的和已知的样本值,
来预测后序的或新的样本值,
再将实际值与预测值相减以得到一个误差值,
从而只对误差值进行编码;
由于误差值 << 样本值,故可大幅度减少数据的位码表示差分预测编码的框架原理:
① 对预测误差进行编码前,需选取合适的量化器与预测器
② 将采样获得的样本值序列 Xn送入量化器进行量化处理
③ 量化数据送预测器并产生一个预测值,加到差分比较点
④ 在输入与反馈比较点,实际样本值与预测值进行差值比较,
从而获得误差值 en,即
⑤ 对预测误差 en进行量化处理后,送编码器进行编码处理
⑵ DPCM预测编码算法算法设计:根据原理框图来设计预测器的预测模型设,tn时刻的采样信号即样本值为 Xn,
根据 tn以前的采样序列 {Xi|i=1,2,…,n-1}所作出的预测值为 ;则 的预测方程为:
其中,a( i=1,2,…,n-1) 为预测系数对于线性预测,a是与 x无关的常数再设:采样输入的实际样本值与预测样本值的误差值为 en,
误差信号的量化输出为 en’,接收端的输出信号为 Xn’;
则 en的预测误差为:
且量化器的量化误差 qn = en - en’
⑶ 三邻域预测法设:用一维和二维预测器对 m× n个像素组成的图像进行预测,
预测点 x的坐标为 ( i,j) ;已知在 x的邻域有三个采样值 {a,b,c},求 x的预测值讨论:根据预测方程,
一维预测,邻域的前一个样本值二维预测:
预测误差:
在本例中,给定的 x邻域及采样值 {a,b,c}见图 ( a),分析:
预测点 x邻域的第一行:采用 x - a预测第一列,x - b
其余点,x - ( a +( b - c) / 2)
2,基于运动补偿的帧间预测
(1) 运动补偿预测编码原理预测对象:时域相关的运动对象.如视频图像,可视电话运动补偿法:① 建立运动模型来跟踪序列帧的运动情况;
② 选择合适的补偿单元,关键是运动矢量参数的估值计算;
③ 对补偿后的序列帧进行帧间预测运动补偿预测编码原理的结构框图如下:
讨论,DPCM预测与运动补偿帧间预测的关系分析:预测编码只对运动图像中相邻帧间的差异部分进行处理因此,若要建立差别帧( fk,fk-d)之间的预测关系,
须对每帧图像进行子块分割,
以找出帧间各子块间相对运动的映射关系,
即块匹配的运动矢量关系;
从而先进行运动位移估值计算,
再进行运动帧间的差分预测结论:运动图像的补偿与预测处理过程可描述为单帧图像子块分割 → 建立帧间子块映射的块匹配关系
→ 建立补偿单元块的运动矢量及区间位移关系
→ 确定运动补偿的块匹配算法
(2) 运动图像及补偿块的概念结构现以 MPEG数据压缩标准为例,说明运动图像及块结构定义方法
① MPEG数据流构成的概念结构
(a)视频图像序列:以图片组为独立压缩单位.可含三种类型:
I(帧内)图像,P(预测)图像,B(双向预测)图像
(b)图片:图片组序列中的原始编码单位;其抽样表示为切片,
可用于调整编码参数,如预测误差.
一幅图像可用亮度 y和色差( u,v)的像素分布关系来描述;
每四个亮度值与一对色差值相联系,且 u和 v的位置相同
(c)宏块:组成图像切片的亮度块和色差块的组合表示,
是基本运动补偿单元.宏块( MacroBlock)结构定义为由四个亮度块 y( 16× 16的像素单位)
和两个色差块 u与 v( 8× 8pixel)组成一个块流结构;
单个像素块的顺序是 1-2-3-4-5-6
块:宏块构成单位,由一个 8× 8的亮度或色差信息组成
② 视频序列中的 3种图像类型及预测关系帧内图像 I:提供组成视频流的单帧图片
—— 静止图像的内部数据相关性处理的压缩方法压缩后,每个像素为 1~ 2bit;压缩率适中预测图像 P:用于前向预测;即在运动补偿后,
可从前一个 I图像或 P图像的预测编码得到,作用:
进一步提高压缩比;作为下一次预测的参照图像插补图像 B:可采用帧内,前向,后向和双向插补等四种技术,
以提供最高的压缩比,且减少噪音影响后向预测:用下一帧作参考;
可使前一帧中没出现的区域逐渐显示出来双向预测:同时使用前序和后序帧两个参考图像三种图像的交插关系及预测作用关系如下图所示:
③ 运动图像的帧流格式定义运动数据流:定义( I,P,B)图像的显示次序及帧间相关性
a.合理选取 I 图像的发生频度和位置,
以适应编码数据随机存取和场景位置切换的要求
b.合理安排 I图像之间,P和 B图像的位置及显示频度,
以适应被编码图像的特性和帧存储要求
MPEG编码算法:针对特定的广播视频标准,
定义图片组的( I,P,B)数据流关系
NTSC制:帧速率 = 30帧/秒图像显示次序及其运动补偿预测关系为:
I图像,1秒出现 2次
I与 P或 P与 P参照帧间:可含 2~ 3个 B图像帧流格式定义:
MPEG编码器的解码输出次序:
为了提高解码效率,应使 I和 P参照帧先于 B图像而恢复;
因此,编码器需对图片组的连续帧输出次序进行重新排序
⑶ 运动补偿的块匹配算法块匹配算法:运动表示基于块;运动补偿预测在宏块一级进行帧间差异处理体现为,对每个宏块进行运动估值计算运动估值:
a.在参照帧中,
寻求与当前被预测块特性相适应的最佳匹配块;
b.恢复时,用匹配块取代被预测块 — 运动补偿;
或用匹配块加上预测误差
— 对预测误差进行 ADCT编码差分编码:
a.获得当前宏块与前序相邻块的运动差值矢量;
b.差分后的运动信息可用变长编码表示讨论,运动矢量位移计算方法运动估值过程及计算方法可用下图来加以说明可以计算图像亮度信号 fk(m,n)与 fk-d(m,n) 的子块相关函数:
其中,当 F(i,j)达到最小值时,
i和 j值就是子块 Bi,j 的水平和垂直位移值公式表明,通过求取运动矢量即位移坐标值( i,j)
以使子块匹配的条件是:
在搜索区 SR范围内,
寻求某一子块使其与被匹配块的差平方达到最小注意:块匹配法易于产生压缩图像的,方块效应,,
需通过预处理/后处理予以消除
⑷ 宏块的预测模型在 MPEG编码方案中,图像的每个宏块可表示为四种类型之一:
·I块(帧内宏块)
·F块(前向预测宏块)
·B块(后向预测宏块)
·A块(双向预测 — 平均宏块)
由( I,P,B)三种图像的交插与预测关系可知:
·F块预测的参照帧为前一个 I图像或 P 图像
·B块预测的参照帧为后一个 I图像或 P图像
·A块预测的参照帧是双向的设:前一参照帧为 I0,后一参照帧为 I2;
当前帧为 I1,当前被预测点宏块的坐标为 ;
预测点相对 I0的运动矢量为,
相对于 I2的运动矢量为则:四种宏块类型的预测模型可由上述相关函数计算式导出
① I块预测:
② F块预测:
③ B块预测:
④ A块预测:
其中,预测误差均为:
上述公式表明:目前的运动补偿模型都是平移模型
(假定预测目标只沿 X方向或 Y方向移动)