首页 理论教育预测编码实现像素值预测的方法

预测编码实现像素值预测的方法

【摘要】:在接收端,将收到的预测误差的码字解码后再与预测值相加,得到当前像素值。在视频编码中,根据预测像素选取的位置不同,预测编码可分为帧内预测和帧间预测两种。在帧内预测编码时,选取的预测像素位于要编码像素同一帧的相邻位置;而帧间预测编码时,则选取时间上相邻的像素进行预测。

对于绝大多数视频图像来说,图像的近邻像素之间有着很强的相似性。预测编码的基本原理就是利用图像数据的相关性,利用已传输的像素值对当前需要传输的像素值进行预测,然后对当前像素的实际值与预测值的差值(即预测误差)进行编码传输,而不是对当前像素值本身进行编码传输,以去除图像数据中的空间冗余或时间冗余。在接收端,将收到的预测误差的码字解码后再与预测值相加,得到当前像素值。

在视频编码中,根据预测像素选取的位置不同,预测编码可分为帧内预测和帧间预测两种。在帧内预测编码时,选取的预测像素位于要编码像素同一帧的相邻位置;而帧间预测编码时,则选取时间上相邻的像素进行预测。

1.帧内预测编码

预测编码的关键是如何选择一种足够好的预测模型,使预测值尽可能与当前需要传输的像素实际值相接近。

在图像数据压缩中,常用如下几种线性预测方案:

1)前值预测,即978-7-111-34368-4-Chapter04-3.jpg

2)一维预测,即采用同一扫描行中前面已知的若干个样值来预测978-7-111-34368-4-Chapter04-4.jpg

3)二维预测,即不但用同一扫描行中的前面几个样值,而且还要用以前几行扫描行中的样值来预测978-7-111-34368-4-Chapter04-5.jpg

2.帧间预测编码

具有运动补偿的帧间预测编码是视频压缩的关键技术之一,它包括以下几个步骤:首先,通过运动估值对运动物体的位移作出估计,即对运动物体从前一帧到当前帧位移的方向和像素数作出估计,也就是求出每个物体的运动矢量;然后,根据求出的运动矢量计算经运动补偿后的预测值;最后对运动矢量、预测误差进行编码、传输。显然,获得好的运动补偿预测的关键是运动估值的精度。

运动估值技术主要分两大类:

(1)像素递归法

像素递归法根据像素间亮度的变化和梯度,通过递归修正的方法来估计每个像素的运动矢量,对较小面积物体的运动估值较为精确。但像素递归法在估值时需要进行迭代运算,从而存在着收敛速度和稳定性问题。该方法的代价是接收端较复杂,不利于一发多收(如数字电视广播等)的应用。

(2)块匹配法(BMA)

块匹配法是另一种更为简单的运动估值方法。它将图像划分为许多子块,并假设位于同一图像子块内的所有像素都作相同的运动,且只作平移运动,这意味着将每个子块视为一个“运动物体”。对于第K帧图像中的某一子块,如果在第K-1帧图像中可以找到与其最为相似的匹配块,则认为该子块是由第K-1帧图像中的相应匹配块移位的结果。该子块的运动矢量由两帧中相应子块的坐标决定。

在块匹配法中,需要考虑以下三个问题:

1)子块大小的选择。子块大时,一个子块可能包含多个作不同运动的物体,子块内各像素作相同平移运动的假设难以成立,影响估计精度;但若子块太小,则估计精度容易受噪声干扰的影响,不够可靠,而且传送运动矢量所需的附加比特数过多,不利于数据压缩。因此,必须恰到好处地选择子块的大小,以做到两者兼顾。

2)衡量两个子块匹配的准则。衡量两个子块匹配程度的准则有绝对差均值(MAD)最小准则、均方误差(MSE)最小准则和归一化互相关函数最大准则。研究表明,各种匹配准则对运动矢量的估值精度影响差别不是很大。由于MAD最小准则的计算不含有乘法和除法运算,实现简单、方便,所以应用最广。MAD定义为

式中,SKmn)为第K帧位于(mn)的像素值;SK-1m+in+j)为第K-1帧位于(m+in+j)的像素值;ij分别为水平和垂直方向的位移量,取值范围为-dxmaxi≤dxmax,-dymaxj≤dymax

若在某一个(ij)处MAD(ij)为最小,则该点就是要找的最优匹配点。

3)匹配搜索算法。最简单和直接的方法就是穷尽搜索(也称全搜索)。它对(M+2dxmax)×(M+2dymax)搜索范围内的每一点都计算MAD值,共需计算(2dxmax+1)×(2dymax+1)个MAD值,从中找出最小的MAD值,其对应的位移量即为所求的运动矢量。此方法虽计算量大,但最简单、可靠,找到的匹配点肯定是全局最优点,而且算法简单,非常适合用专用集成电路(ASIC)芯片实现,因此具有实用价值。此外,为了减少运动估值的计算量,特别是在用软件实现的环境中,人们还提出了许多快速搜索算法,如二维对数法、三步搜索法、交叉搜索法、共轭方向法等。这些快速搜索算法都基于如下的假设:当偏离最小误差方向时,判决函数是单调上升的,搜索总是沿着判决函数值减小的方向进行。