CN1284378C - 基于数学模型预测的运动估计快速半像素级搜索方法 - Google Patents

基于数学模型预测的运动估计快速半像素级搜索方法 Download PDF

Info

Publication number
CN1284378C
CN1284378C CN 200410073170 CN200410073170A CN1284378C CN 1284378 C CN1284378 C CN 1284378C CN 200410073170 CN200410073170 CN 200410073170 CN 200410073170 A CN200410073170 A CN 200410073170A CN 1284378 C CN1284378 C CN 1284378C
Authority
CN
China
Prior art keywords
pixel
matched position
semi
kinds
pix
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN 200410073170
Other languages
English (en)
Other versions
CN1589031A (zh
Inventor
赵波
吴成柯
肖嵩
宋锐
王柯俨
韩伟
石迎波
陈晨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
Original Assignee
Xidian University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xidian University filed Critical Xidian University
Priority to CN 200410073170 priority Critical patent/CN1284378C/zh
Publication of CN1589031A publication Critical patent/CN1589031A/zh
Application granted granted Critical
Publication of CN1284378C publication Critical patent/CN1284378C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Analysis (AREA)

Abstract

本发明涉及一种快速半象素级运动估计搜索方法。主要解决现有半象素级运动估计搜索方法性能低、计算复杂的问题。本发明利用最小绝对差和(SAD)准则下的整象素块匹配和半象素级块匹配的联系,对绝对差和(SAD)进行数学曲线拟合,即在水平方向和竖直方向上分别应用线性、抛物线、双曲线三种不同的凹函数预测模型,并由各自的判断准则,得到三种数学模型各自的最佳半像素级匹配位置(vxh1,vyh1)、(vxh2,vyh2)、(vxh3,vyh3);再对三种数学模型的最佳半像素级匹配位置结果进行投票,得到最终的半像素匹配位置(vxh,vyh);最后按照视频编码标准的插值方法,得到半像素匹配位置(vxh,vyh)的参考块像素值。该方法计算量小,能获得较好的重建图象质量,可用于对低功耗实时视频编码器的实现。

Description

基于数学模型预测的运动估计快速半像素级搜索方法
技术领域
本发明涉及视频编码技术领域,具体地说是一种基于数学模型预测的运动估计快速半像素级搜索方法,用于各种数字视频编码器的软硬件实现,特别是用于低功耗实时视频编码的实现。
背景技术
随着计算机技术,网络技术和集成电路技术的发展,视频压缩技术得到了越来越广泛的应用。现有的视频编码器大都采用图1所示的结构,主要由运动估计和变换编码及熵编码构成。由于图像序列在前后帧之间存在较大的相关性,运动估计就是找到前后帧之间的偏移,即运动矢量,这样传输时只需要传输运动矢量和残差值,大大减少了传输的数据量,达到了压缩的目的。运动估计能够去除图像序列在时域上的相关性,从而在视频压缩中占有非常重要的地位。
基于视频编码的便携式设备应用越来越广泛,如具有最吸引人的远程可视功能和可录像播放视频功能的第三代移动通信终端,个人数字助理,数码录像机,可携带移动数字电视等。这些应用有一个很重要的特点就是低功耗,所以要求视频编码算法的计算复杂度要低。而运动估计在整个视频编码中占有50%~80%的运算量,所以研究低复杂度的快速运动估计方法对硬件的实现是非常重要的。
目前,应用最广泛的运动估计方法是块匹配方法,该方法被多种视频压缩标准,如H.261,H.263,H.264,MPEG2,MPEG4所采用。为了提高图像序列的压缩效率和重建图像质量,新近的标准如H.263,H.264,MPEG4都建议进行半像素精度甚至更高精度级的运动估计。
如图2所示,精度到半像素级的运动估计一般分两步进行:首先在(-W,W-1)范围内进行精度为一个整点像素的运动估计,得到运动矢量(vx0,vy0);然后搜索(vx0,vy0])周围的8个半像素位置,得到半像素精度的运动矢量(vxh,vyh),则最终的运动矢量:
(vx,vy)=(vx0,vy0)+(vxh,vyh)。
图2中*为整点像素匹配位置,#为半像素匹配位置,W=4。半像素位置的像素值通过周围整点像素值线性插值得到。
图3给出了半像素和整点像素位置关系,其中B、C、D为整点像素,a、b、c、d、e为半像素值,计算公式如下,该式是以H.263为例:
a = ( A + C + 1 ) / 2 ; b = ( A + B + 1 ) / 2 ; c = ( C + D + 1 ) / 2 ; d = ( B + D + 1 ) / 2 ; e = ( A + B + C + D + 2 ) / 4 ;
考虑到实现的复杂度,块匹配时最佳匹配准则一般选用最小绝对误差和(SAD)准则,其定义如下式。
SAD ( i , j ) = 1 M * N Σ m = 1 M Σ n = 1 N | f k ( m , n ) - f k - 1 ( m + i , n + j ) |
式中:M和N为宏块的大小参数,fk(m,n)为当前帧的灰度像素值,fk-1(m+i,n+j)为参考帧的灰度像素值,最小的SAD(i,j)对应的(i,j)即为所求的运动矢量。
近年来,提出了各种基于块匹配的快速运动估计方法,如新三步搜索法、钻石搜索法、分层搜索法、基于投影的搜索法、基于预测的搜索法、六边形搜索法以及其它快速方法,这些方法在很大程度上降低了整像素精度运动估计的复杂度,从而降低了实时视频编码器的成本和实现难度。
随着整点像素级搜索的复杂度降低,相对地半像素精度搜索的复杂度同整点像素级搜索几乎相当,但是大多数快速运动估计方法的讨论都停留在整点像素精度的运动估计,从而寻找半像素精度搜索快速方法是很必要的。半象素级精度运动估计与只做整点象素级运动估计相比,可以提高重建图像质量1-2dB,但随之带来的是计算复杂度的提高,传统的半像素级运动估计需要大量的插值运算和随之带来的存储器的增加。美国摩托罗拉公司的Krit Panusopone和David M。Baylon在An analysis and efficientimplementation of half-pixel motion estimation(IEEE Trans.Circuits and systems forvideo technology,2002,12(8):724-729)中分析并提出了半像素级运动估计的实现方法,降低了一定的计算复杂度。杜诚,何芸,郑君礼在新的低码率视频编码快速半像素搜索方法(清华大学学报(自然科学版),2001,41(1):1-4)一文中提出了新的快速半像素级运动估计方法,这种方法虽说对运算复杂度又有一定的降低,但是仍然相对复杂,不利于硬件实现。上述两种方法都没有避开计算量大的半像素插值过程。
发明的技术方案
本发明的目的是提供一种编码性能高,且计算复杂度低的快速半像素级运动估计搜索方法,以满足低功耗实时编码硬件的实现。
实现本发明目的的技术关键是通过研究在最小绝对误差和准则下的整点像素级块匹配及半像素级块匹配的联系,从而在二者之间建立合理的数学模型,提出了基于数学预测模型的快速半像素级搜索方法。该方法的理论依据如下:
假设(i,j)和(i+1,j)为相邻整像素匹配位置,则二者之间的半像素匹配位置为(i+0.5,j),其中i和j为整数,且-M<=i,j<=M-1。由于
SAD ( i + 0.5 , j ) = 1 M * N Σ m = 1 M Σ n = 1 N | f k ( m , n ) - f k - 1 ( m + i + 0.5 , n + j ) |
= 1 M * N Σ m = 1 M Σ n = 1 N | f k ( m , n ) - ( f k - 1 ( m + i , n + j ) + f k - 1 ( m + i + 1 , n + j ) + 1 ) / 2 |
≤ 1 2 ( 1 M * N Σ m = 1 M Σ n = 1 N | f k ( m , n ) - f k - 1 ( m + i , n + j ) | +
1 M * N Σ m = 1 M Σ n = 1 N | f k ( m , n ) - f k - 1 ( m + i + 1 , n + j ) | )
即有 SAD ( i + 0.5 , j ) ≤ 1 2 ( SAD ( i , j ) + SAD ( i + 1 , j ) )
由上式可知SAD(i,j)在一维方向上的整数区间内是凹函数,由于最佳整像素匹配位置的SAD小于其临近的整点位置的SAD,所以可以假设SAD(i,j)在相邻整数区间内是光滑的,则可用凹函数来拟合SAD(i,j)在一维方向的投影SAD(i,J)或者SAD(I,j),其中i∈[i-1,i+1],J为常数;j∈[j-1,j+1],I为常数。
下面以SAD(i,J)为例,列出本发明涉及的三种常见的凹函数模型。
1.线性模型
设f(i)=MAD(i,J),i∈[-1,+1],且已知整像素相临近三点[-1,f(-1)]、[0,f(0)]、[1,f(1)]。用线性函数来拟合f(i),几何曲线见图4。
f(i)=a|i-b|+c    (a>0,-1<b<1,c>0)
根据已知三点可以拟合出的线性模型为:
f ( i ) = ( f ( - 1 ) - f ( 0 ) ) | i - f ( - 1 ) - f ( 1 ) 2 ( f ( - 1 ) - f ( 0 ) ) | + f ( 1 ) + 2 f ( 0 ) - f ( - 1 ) 2 ; ( 0 &le; b < 1 ) ( f ( 1 ) - f ( 0 ) ) | i - f ( - 1 ) - f ( 1 ) 2 ( f ( 1 ) - f ( 0 ) ) | + f ( - 1 ) + 2 f ( 0 ) - f ( 1 ) 2 ; ( - 1 < b < 0 )
对应该线性模型,有如下判断准则:
Figure C20041007317000092
2.抛物线模型
同上,用下式所示的抛物线来拟合f(i),几何曲线见图5。
f(i)=ai2+bi+c       (a>0,-1<b<1,c>0)
把已知整像素相临近三点[-1,f(-1)]、[0,f(0)]、[1,f(1)]代入上式,可得到抛物线模型为:
f ( i ) = 1 2 ( f ( 1 ) + f ( - 1 ) - 2 f ( 0 ) ) i 2 + 1 2 ( f ( 1 ) - f ( - 1 ) ) i + f ( 0 )
对应该抛物线模型,有如下判断准则:
Figure C20041007317000094
3.双曲线模型
同上,用下式所示的双曲线来拟合f(i),几何曲线见图6。
f ( i ) = a c c 2 + ( i - b ) 2 - - - ( a > 0 , - 1 < b < 1 , c > 0 )
代入所述的已知整像素相临近三点[-1,f(-1)]、[0,f(0)]、[1,f(1)]得b的值如下式:
b = f 2 ( - 1 ) - f 2 ( 0 ) f 2 ( - 1 ) + f 2 ( 1 ) - 2 f 2 ( 0 ) - 1 2
对应该双曲线模型,有如下判断准则:
Figure C20041007317000097
以上只给出了利用水平方向上的判断准则,可以得到水平方向上的最佳半像素级匹配位置vxh,同理,利用类似准则可以得到垂直方向上的最佳半像素级匹配位置vyh
本发明正是利用最小绝对差和SAD准则下的整像素块匹配和半像素级块匹配的联系,对绝对差和SAD进行数学曲线拟合,通过数学曲线来预测最小绝对差和SAD所在半像素位置,从而得到半像素级最佳匹配矢量,并通过计算得到半像素级最佳匹配矢量对应的参考块像素值,具体过程如下:
(1)记最佳整点匹配位置的最小绝对误差和SAD值为m0,若整像素搜索中搜索了最佳整点匹配位置临近的上、下、左、右4个位置,则分别记录SAD为m1、m2、m3、m4;否则通过计算得到m1、m2、m3、m4这四个值,计算公式为:
SAD ( i , j ) = 1 M * N &Sigma; m = 1 M &Sigma; n = 1 N | f k ( m , n ) - f k - 1 ( m + i , n + j ) |
式中:M为宏块的竖直方向像素数
N为宏块的竖直方向像素数
fk(m,n)为当前帧的灰度像素值
fk-1(m+i,n+j)为参考帧的灰度像素值
(i,j)为这四个位置的坐标;
(2)在水平方向和竖直方向上分别应用线性、抛物线、双曲线三种不同的凹函数预测模型,并由各自的判断准判断,得到三种数学模型各自的最佳半像素级匹配位置(vxh1,vyh1)、(vxh2,vyh2)、(vxh3,vyh3);
(3)对三种数学模型的最佳半像素级匹配位置结果(vxh1,vyh1)、(vxh2,vyh2)、(vxh3,vyh3)进行投票,得到最终的半像素匹配位置(vxh,vyh),即在水平或者竖直方向上分别运用所述的三种模型进行投票,可得到三种情况的结果:一是三种模型得到的结果一致;二是两种模型得到的结果一致,另一个不同;三是三种模型得到的结果各不相同,对这三种结果,采用民主集中制的原则进行投票选取,第1种情况取三种模型结果一致的结果,第2种情况取三种模型一致的那个结果,第3种情况取整像素位置;
(4)按照视频编码标准规定的插值方法,得到半像素匹配位置(vxh,vyh)对应的参考块像素值;
(5)输出半像素运动矢量即半像素匹配位置(vxh,vyh)和参考块像素值。
本发明由于是根据整点像素搜索的结果直接推算出半像素级运动估计的结果,与标准的先插值再搜索的方法相比免去了插值过程,节省了运算量和存储器,且流程简单从而容易硬件实现。标准的先插值再搜索的方法首先要插值256×8=2048个像素值,然后再匹配8个位置,而本发明的快速方法只需简单的比较再插值256个像素值,运算量为标准的先插值再搜索方法的1/8,而且还节省了半像素插值像素的存储空间。在硬件实现中,本发明的快速方法使半像素级搜索时间降为1/8,这对实时图像编码器的低功耗硬件实现是很有意义的。此外,由于本发明的数学预测是在一维方向上提出的,因此,可推广到二维方向上可得到相似的结果。
本发明通过实际编码实验比较了采用三种不同数学模型得到的重建图像的峰值信噪比(PSNR),结果表明本发明可以得到接近标准半像素级全搜索方法的重建图像质量。
附图说明:
图1是现有视频编码器的结构框图
图2是现有运动估计过程示意图
图3是现有半像素与整像素位置关系示意图
图4是现有线性模型曲线图
图5是现有抛物线模型曲线图
图6是现有双曲线模型图
图7是本发明快速半像素级搜索方法示意图
图8是本发明的实施流程图
图9是本发明与现有方法对mother&daughter序列实验的PSNR比较图
图10是本发明与现有方法对mother&daughter序列实验的每帧编码比特数比较图
图11是本发明与现有方法对foreman序列实验的PSNR比较图
图12是本发明与现有方法对foreman序列实验的每帧编码比特数比较图
具体实施方式
以下参照附图详细说明本发明的过程与效果。
图7给了本发明的快速半像素级搜索示意图,图7中的实线为整像素匹配位置网格,虚线为半像素匹配位置网格。整点像素匹配位置在实线与实线的交点上,半像素匹配位置位于虚线与虚线或者实现的交点上,m0为最佳整像素匹配位置的SAD值,m3和m4分别为水平方向上最佳整像素匹配位置相邻最近的两个整像素位置的SAD值,m1和m2为竖直方向上最佳整像素匹配位置相邻最近的两个整像素位置的SAD值。
在图7所示区域的水平与垂直两个方向上分别用线性、抛物线,双曲线三种数学预测模型,可以得到两个方向上的最小SAD对应的半像素级匹配位置(vxh,vyh),其具体实施步骤如图8所示,即:
1.记最佳整像素匹配位置的SAD值为m0,如果最佳整像素匹配竖直方向和水平方向上最近的整像素位置的SAD值在整像素匹配过程中已经得到,则分别记最佳整点匹配位置邻近的上、下、左、右四个整点位置的SAD值为m1、m2、m3、m4;否则匹配这四个位置按最小绝对差和SAD准则计算得到m1、m2、m3、m4,其计算方法为:
SAD ( i , j ) = 1 M * N &Sigma; m = 1 M &Sigma; n = 1 N | f k ( m , n ) - f k - 1 ( m + i , n + j ) |
式中,M为宏块的竖直方向像素数
N为宏块的竖直方向像素
fk(m,n)为当前帧的灰度像素值
fk-1(m+i,n+j)为参考帧的灰度像素值
(i,j)为最佳整点匹配位置邻近的上、下、左、右四个位置的坐标;
2.在水平方向和竖直方向上分别运用线性、抛物线、双曲线三种不同的数学模型,得到各自对应的结果(vxh1,vyh1),(vxh2,vyh2),(vxh3,vyh3);
具体方法如下:
A.水平方向
已知整像素相邻的三点为(-1,m3)、(0,m0)、(1,m4)。
(1)应用下式对应的线性模型:
f ( v xh 1 ) = ( m 3 - m 0 ) | v xh 1 - m 3 - m 4 2 ( m 3 - m 0 ) | + m 4 + 2 m 0 - m 3 2 ; ( 0 &le; m 3 - m 4 2 ( m 3 - m 0 ) < 1 ) ( m 4 - m 0 ) | v xh 1 - m 3 - m 0 2 ( m 4 - m 0 ) | + m 3 - 2 m 0 - m 4 2 ; ( - 1 < m 3 - m 0 2 ( m 4 - m 0 ) < 0 )
判断最佳半像素匹配位置vxh1,即f(vxh1)对应的最小值,其判断准则为:
如果 m 3 - m 0 2 ( m 4 - m 0 ) < - 1 4 , 即2(m3-m0)<(m4-m0),则vxh1=-0.5;
如果 m 3 - m 4 2 ( m 3 - m 0 ) > 1 4 , 即2(m4-m0)<(m3-m0),则vxh1=0.5;
否则,vxh1=0。
(2)应用下式对应的抛物线模型的对称轴判断最佳半像素精度的匹配位置vxh2:抛物线模型为:
f ( v xh 2 ) = 1 2 ( m 4 + m 3 - 2 m 0 ) v xh 2 2 + 1 2 ( m 4 - m 3 ) v xh 2 + m 0
抛物线的对称轴为:
v xh 2 = m 3 - m 4 2 ( m 3 + m 4 - 2 m 0 )
判断最佳半像素匹配位置vxh2,即f(vxh2)对应的最小值,其判断准则为:
如果 m 3 - m 4 2 ( m 3 + m 4 - 2 m 0 ) < - 1 4 , 即3(m3-m0)<(m4-m0),则vxh2=-0.5;
如果 m 3 - m 4 2 ( m 3 + m 4 - 2 m 0 ) > 1 4 , 即3(m4-m0)<(m3-m0),则vxh2=0.5;
否则,vxh2=0。
(3)应用双曲线模型的对称轴:
v xh 3 = m 3 2 - m 0 2 m 3 2 + m 4 2 - 2 m 0 2 - 1 2
判断最佳半像素精度的匹配位置vxh3,即f(vxh3)对应的最小值,其判断准则为:
如果 m 3 2 - m 0 2 m 3 2 + m 4 2 - 2 m 0 2 - 1 2 < - 1 4 , 即3(m32-m02)<(m42-m02),则vxh3=-0.5;
如果 m 3 2 - m 0 2 m 3 2 + m 4 2 - 2 m 0 2 - 1 2 > 1 4 , 即3(m42-m02)<(m32-m02),则vxh3=0.5;
否则,vxh3=0。
B.竖直方向
已知整像素相邻的三点为(-1,m1)、(0,m0)、(1,m2)。
(1)应用下式对应的线性模型:
f ( v yh 1 ) = ( m 1 - m 0 ) | v yh 1 - m 1 - m 2 2 ( m 1 - m 0 ) | + m 2 + 2 m 0 - m 1 2 1 ; ( 0 &le; m 1 - m 2 2 ( m 1 - m 0 ) < 1 ) ( m 2 - m 0 ) | v yh 1 - m 1 - m 0 2 ( m 2 - m 0 ) | + m 1 + 2 m 0 - m 2 2 ; ( - 1 < m 1 - m 0 2 ( m 2 - m 0 ) < 0 )
判断最佳半像素精度的匹配位置vyh1,即f(vyh1)对应的最小值,其判断准则为:
如果 m 1 - m 0 2 ( m 2 - m 0 ) < - 1 4 , 即2(m1-m0)<(m2-m0),则vyh1=-0.5;
如果 m 1 - m 2 2 ( m 1 - m 0 ) > 1 4 , 即2(m2-m0)<(m1-m0),则vyh1=0.5;
否则,vyh1=0。
(2)应用下式对应的抛物线模型的对称轴判断最佳半像素精度的匹配位置vyh2
抛物线模型为:
f ( v yh 2 ) = 1 2 ( m 2 + m 1 - 2 m 0 ) v yh 2 2 + 1 2 ( m 2 - m 1 ) v yh 2 + m 0
抛物线的对称轴为:
v yh 2 = m 1 - m 2 2 ( m 1 + m 2 - 2 m 0 )
由抛物线的对称轴判断最佳半像素精度的匹配位置vyh2,即f(vyh2)对应的最小值,其判断准则为:
如果 m 1 - m 2 2 ( m 1 + m 2 - 2 m 0 ) < - 1 4 , 即3(m3-m0)<(m4-m0),则vyh2=-0.5;
如果 m 1 - m 2 2 ( m 1 + m 2 - 2 m 0 ) > 1 4 , 即3(m4-m0)<(m3-m0),则vyh2=0.5;
否则,vyh2=0。
(3)应用双曲线的对称轴:
v yh 3 = m 1 2 - m 0 2 m 1 2 + m 2 2 - 2 m 0 2 - 1 2
判断最佳半像素精度的匹配位置vyh3,即f(vyh3)对应的最小值,其判断方法为:
如果 m 1 2 - m 0 2 m 1 2 + m 2 2 - 2 m 0 2 - 1 2 < - 1 4 , 即3(m32-m02)<(m42-m02),则vyh3=-0.5;
如果 m 1 2 - m 0 2 m 1 2 + m 2 2 - 2 m 0 2 - 1 2 > 1 4 , 即3(m42-m02)<(m32-m02),则vyh3=0.5;
否则,vyh3=0。
3.确定半像素精度的最终位置,即对上述水平方向半像素运动矢量vxh1、vxh2、vxh3和竖直方向半像素运动矢量vyh1、vyh2、vyh3分别进行投票,确定出半像素精度的最终位置(vxh,vyh),其确定方法为:
(1)水平方向
如果vxh1=vxh2=vxh3,则vxh=vxh1
如果vxh1≠vxh≠vxh3,则vxh=0;
否则vxh取vxh1,vxh2,vxh3中二者相同的,比如如果vxh1=vxh≠vxh3,则vxh=vxh1
(2)竖直方向
如果vyh1=vyh2=vyh3,则vyh=vyh1
如果vyh1≠vyh2≠vyh3,则vyh=0;
否则vyh取vyh1,vyh2,vyh3中二者相同的,比如如果vyh1=vyh2≠vyh3,则vyh=vyh1
4.如果得到的半像素运动矢量(vxh,vyh)为(0,0),则转步骤6,否则转步骤5;
5.按照视频标准中规定的插值方法得到半像素运动矢量(vxh,vyh)对应的参考块像素值;
6.输出半像素运动矢量(vxh,vyh)和对应的参考块像素值。
实验结果
本发明在基于MPEG4的编码程序上,对不同的图像序列,不同的半像素级运动估计方法进行了仿真。实验中,编码模式为IP模式,每种图像序列长度为50帧,第1帧I帧编码,其余49帧P帧编码,整像素级运动估计采用全搜索法,半像素级搜索采用了不同的方法,分别为标准的先插值再搜索的方法(full),本文的基于数学预测模型的方法(model),和不进行半像素搜索的方法(integer)。
实验中I帧和P帧的量化参数(QP)都为10,实验对两种具有代表性的运动序列进行了测试,即具有小运动特性的mother&daughter序列和具有较大运动特性的foreman序列,二者都为4∶2∶0的CIF(352*288)格式。
在实验中对本发明的峰值信噪比PSNR采用如下公式进行了计算,即
PSNR = 10 log 10 MN * 255 2 &Sigma; i = 1 M &Sigma; j = 1 N ( f i , j - f &prime; i , j ) 2
其中M和N分别为图像在水平方向和竖直方向上像素的个数,fi,j为原始图像的亮度值,f’i,j为对应重建图像的亮度值。
图9给出了上述三种方法对mother&daughter序列的峰值信噪比(PSNR)比较曲线,其中,横轴为mother&daughter序列的帧序号,纵轴为mother&daughter序列的重建图像峰值信噪比PSNR。从图9可以看出,本发明的方法比全搜索方法的峰值信噪比(PSNR)平均高出0.15dB,比只作整像素搜索方法的峰值信噪比(PSNR)平均要高出2dB。
图10给出了上述三种方法对mother&daughter序列每帧编码比特数的比较曲线,其中横轴为mother&daughter序列帧序号,纵轴为mother&daughter序列的每帧编码比特数。从图10可看出,采用本发明方法编码的比特数比全搜索方法编码的比特数平均要高2000比特,比只作整像素的搜索方法平均略高。
参照图9和图10的结果,本发明的方法比全搜索方法的峰值信噪比(PSNR)高,但是每帧的编码比特数也相对要高,因此总体看,二者的性能相当。本发明的方法比只作整像素搜索方法的峰值信噪比(PSNR)要高很多,且每帧编码比特数略高,因此总体看,本发明的方法比只作整像素搜索方法的性能高很多。
图11给出了上述三种方法对foreman序列的峰值信噪比(PSNR)比较曲线,其中,横轴为foreman序列的帧序号,纵轴为foreman序列的重建图像峰值信噪比(PSNR)。从图11可以看出,本发明的方法比全搜索的方法的PSNR平均低0.2dB,但比只作整像素搜索的方法要高出2dB。
图12给出了上述三种方法对foreman序列每帧编码比特数的比较曲线,其中,横轴为foreman序列帧序号,纵轴为foreman序列的每帧编码比特数。从图12可以看出,本发明对应的每帧编码比特数比全搜索方法对应的每帧编码比特数平均要高100比特,比只作整像素搜索方法对应的每帧编码比特数平均要低100比特。
参照图11和图12的结果,本发明的方法比全搜索方法的PSNR略低,每帧的编码比特数略高,因此总体看,本发明的方法性能与全搜索的方法性能基本相当。本发明的方法比只作整像素搜索方法的PSNR要高很多,且每帧编码比特数略低,。本发明的方法比只作整像素搜索的方法性能高很多。
综上试验结果表明:本发明的方法可获得较好的重建图象质量,本发明的方法与只做整像素搜索的运动估计方法相比明显提高了编码性能,与一般的全搜索半像素搜索方法相比极大的降低了计算复杂度。本发明的方法可以利用硬件或软件实现,并集成到现有的视频编码器中,特别适合于低功耗实时视频编码器的实现。本发明的方法可以进一步推广到更高精度的亚像素级运动估计搜索方法中。

Claims (5)

1.一种基于数学模型预测的运动估计快速半像素级搜索方法,利用最小绝对差和SAD准则下的整象素块匹配和半象素级块匹配的联系,对绝对差和SAD进行数学曲线拟合,通过数学曲线来预测最小绝对差和SAD所在位置,从而得到半象素级最佳匹配矢量,并通过视频编码标准的插值计算得到半象素级最佳匹配矢量对应的参考块像素值,具体过程如下:
(1)记最佳整点匹配位置的最小绝对误差和SAD值为m0,若整像素搜索中搜索了最佳整点匹配位置临近的上、下、左、右4个位置,则分别记录SAD为m1、m2、m3、m4;否则通过计算得到m1、m2、m3、m4这四个值,计算公式为:
SAD ( i , j ) = 1 M * N &Sigma; m = 1 M &Sigma; n = 1 N | f k ( m , n ) - f k - 1 ( m + i , n + j ) |
式中:M为宏块的竖直方向像素数;
N为宏块的竖直方向像素数;
fk(m,n)为当前帧的灰度像素值;
fk-1(m+i,n+j)为参考帧的灰度像素值;
(i,j)为这四个位置的坐标;
(2)在水平方向和竖直方向上分别应用线性、抛物线、双曲线三种不同的凹函数预测模型,并由各自的判断准判断,得到三种数学模型各自的最佳半像素级匹配位置(vxh1,vvh2)、(vxh2,vyh2)、(vxh3,vyh3);
(3)对三种数学模型的最佳半像素级匹配位置结果(vxh1,vyh1)、(vxh2,vyh2)、(vxh3,vyh3)进行投票,得到最终的半像素匹配位置(vxh,vyh),即在水平或者竖直方向上分别运用所述的三种模型进行投票,可得到三种情况的结果:一是三种模型得到的结果一致;二是两种模型得到的结果一致,另一个不同;三是三种模型得到的结果各不相同,对这三种结果,采用民主集中制的原则进行投票选取,第1种情况取结果一致的结果,第2种情况取三种模型一致的那个结果,第3种情况取整像素位置;
(4)按照视频编码标准的插值方法,得到半像素匹配位置(vxh,vyh)对应的参考块像素值;
(5)输出半像素运动矢量即半像素匹配位置(vxh,vyh)和参考块像素值。
2.根据权利要求1所述的搜索方法,其特征在于获取线性数学模型对应的最佳半像素级匹配位置(vxh1,vyh1)的过程为:
(1)在水平方向根据已知整像素相邻的三点(-1,m3)、(0,m0)、(1,m4),应用线性模型对应式:
f ( v xh 1 ) = ( m 3 - m 0 ) | v xh 1 - m 3 - m 4 2 ( m 3 - m 0 ) | + m 4 + 2 m 0 - m 3 2 ; ( 0 &le; m 3 - m 4 2 ( m 3 - m 0 ) < 1 ) ( m 4 - m 0 ) | v xh 1 - m 3 - m 0 2 ( m 4 - m 0 ) | + m 3 + 2 m 0 - m 4 2 ; ( - 1 < m 3 - m 0 2 ( m 4 - m 0 ) < 0 )
判断水平方向的最佳半像素匹配位置vxh1,即按如下准则判断f(vxh1)对应的最小值:
如果2(m3-m0)<(m4-m0),则vxh1=-0.5;
如果2(m4-m0)<(m3-m0),则vxh1=0.5;
否则vxh1=0;
(2)在竖直方向根据已知整像素相邻的三点(-1,m1)、(0,m0)、(1,m2),应用线性模型对应式:
f ( v yh 1 ) = ( m 1 - m 0 ) | v yh 1 - m 1 - m 2 2 ( m 1 - m 0 ) | + m 2 + 2 m 0 - m 1 2 1 ; ( 0 &le; m 1 - m 2 2 ( m 1 - m 0 ) < 1 ) ( m 2 - m 0 ) | v yh 1 - m 1 - m 0 2 ( m 2 - m 0 ) | + m 1 + 2 m 0 - m 2 2 ; ( - 1 < m 1 - m 0 2 ( m 2 - m 0 ) < 0 )
判断竖直方向的最佳半像素匹配位置vyh1,即按如下准则判断f(vyh1)对应的最小值:
如果2(m1-m0)<(m2-m0),则vyh1=-0.5;
如果2(m2-m0)<(m1-m0),则vyh1=0.5;
否则vyh1=0。
3.根据权利要求1所述的搜索方法,其特征在于获取抛物线数学模型对应的最佳半像素级匹配位置(vxh2,vyh2)的过程为:
(1)在水平方向根据已知整像素相邻的三点(-1,m3)、(0,m0)、(1,m4),应用抛物线模型的对称轴判断水平方向的最佳半像素匹配位置vxh2
抛物线模型为:
f ( v xh 2 ) = 1 2 ( m 4 + m 3 - 2 m 0 ) v xh 2 2 + 1 2 ( m 4 - m 3 ) v xh 2 + m 0 ,
抛物线的对称轴: v xh 2 = m 3 - m 4 2 ( m 2 + m 4 - 2 m 0 )
判断水平方向的最佳半像素匹配位置vyh2,即按如下准则判断f(vxh2)对应的最小值:
如果3(m3-m0)<(m4-m0),则vxh2=-0.5;
如果3(m4-m0)<(m3-m0),则vxh2=0.5;
否则vxh2=0;
(2)在竖直方向根据已知整像素相邻的三点(-1,m1)、(0,m0)、(1,m2),应用抛物线模型的对称轴判断在竖直方向的最佳半像素匹配位置vyh2
抛物线模型为:
f ( v yh 2 ) = 1 2 ( m 2 + m 1 - 2 m 0 ) v yh 2 2 + 1 2 ( m 2 - m 1 ) v yh 2 + m 0
抛物线的对称轴为: v yh 2 = m 1 - m 2 2 ( m 1 + m 2 - 2 m 0 )
判断竖直方向的最佳半像素匹配位置vyh2,即按如下准则判断f(vyh2)对应的最小值:
如果3(m3-m0)<(m4-m0),则vyh2=-0.5;
如果3(m4-m0)<(m3-m0),则vyh2=0.5;
否则vyh2=0。
4.根据权利要求1所述的搜索方法,其特征在于获取双曲线模型数学模型对应的最佳半像素级匹配位置(vxh3,vyh3)的过程为:
(1)在水平方向根据已知整像素相邻的三点(-1,m3)、(0,m0)、(1,m4),应用双曲线模型的对称轴:
v xh 3 = m 3 2 - m 0 2 m 3 2 + m 4 2 - 2 m 0 2 - 1 2
判断水平方向的最佳半像素匹配位置vxh3,即按如下准则判断f(vxh3)对应的最小值:
如果3(m32-m02)<(m42-m02),则vxh3=-0.5;
如果3(m42-m02)<(m32-m02),则vxh3=0.5;
否则vxh3=0;
(2)在竖直方向根据已知整像素相邻的三点(-1,m1)、(0,m0)、(1,m2),应用双曲线模型的对称轴:
v yh 3 = m 1 2 - m 0 2 m 1 2 + m 2 2 - 2 m 0 2 - 1 2
判断竖直方向的最佳半像素匹配位置vxh3,即按如下准则判断f(vyh3)对应的最小值:
如果3(m32-m02)<(m42-m02),则vyh3=-0.5;
如果3(m42-m02)<(m32-m02),则vyh3=0.5;
否则,vyh3=0。
5.根据权利要求1所述的搜索方法,其特征在于对三种数学模型对应的最佳半像素级匹配位置(vxh1,vyh1)、(vxh2,vyh2)、(vxh3,vyh3)结果进行投票,得到半像素匹配位置(vxh,vyh),具体过程为:
(1)在水平方向
如果vxh1=vxh2=vxh3,则vxh=vxh1
如果vxh1≠vxh2≠vxh3,则vxh=0;
否则vxh取vxh1,vxh2,vxh3中二者相同的,即如果vxh1=vxh2≠vxh3,则vxh=vxh1
(2)在竖直方向
如果vyh1=vyh2=vyh3,则vyh=vyh1
如果vyh1≠vyh2≠vyh3,则vyh=0;
否则vyh取vyh1,vyh2,vyh3中二者相同的,即如果vyh1=vyh2≠vyh3,则vyh=vyh1
CN 200410073170 2004-10-13 2004-10-13 基于数学模型预测的运动估计快速半像素级搜索方法 Expired - Fee Related CN1284378C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200410073170 CN1284378C (zh) 2004-10-13 2004-10-13 基于数学模型预测的运动估计快速半像素级搜索方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200410073170 CN1284378C (zh) 2004-10-13 2004-10-13 基于数学模型预测的运动估计快速半像素级搜索方法

Publications (2)

Publication Number Publication Date
CN1589031A CN1589031A (zh) 2005-03-02
CN1284378C true CN1284378C (zh) 2006-11-08

Family

ID=34604740

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200410073170 Expired - Fee Related CN1284378C (zh) 2004-10-13 2004-10-13 基于数学模型预测的运动估计快速半像素级搜索方法

Country Status (1)

Country Link
CN (1) CN1284378C (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1913629B (zh) * 2005-08-11 2011-06-29 深圳市凯达尔科技实业有限公司 线性正方形并行搜索快速运动估计方法
JP2010524396A (ja) * 2007-04-12 2010-07-15 トムソン ライセンシング ビデオエンコーダにおける高速な幾何学的なモードの判定方法及び装置
JP5198543B2 (ja) * 2010-11-19 2013-05-15 株式会社東芝 画像処理方法、画像処理装置及び画像処理プログラム
CN102611887B (zh) * 2011-01-21 2015-08-05 华为技术有限公司 非整像素位置运动矢量的坐标值取整方法和装置
CN102497494A (zh) * 2011-12-09 2012-06-13 首都师范大学 基于fpga的高速稳像系统中的运动估计模块
CN103761754B (zh) * 2014-01-22 2016-10-12 浙江宇视科技有限公司 一种对曲线进行熵编码的方法
CN105578188A (zh) * 2015-12-22 2016-05-11 西安理工大学 一种隔点全搜索运动估计方法

Also Published As

Publication number Publication date
CN1589031A (zh) 2005-03-02

Similar Documents

Publication Publication Date Title
CN1257614C (zh) 信号编码方法与装置以及信号解码方法与装置
CN1581982A (zh) 基于模式分析的运动矢量补偿装置和方法
CN1764277A (zh) 图像和视频编码用的改进的块变换和量化
CN1917647A (zh) 自适应地选择用于熵编码的上下文模型的方法和设备
CN106303521B (zh) 一种基于感知敏感度的hevc率失真优化方法
CN1318258A (zh) 改进的用于数字视频简单形状编码的色度键控技术
CN1843039A (zh) 用于使用描述性模型参数来编码并解码增强层数据的系统和方法
CN1697328A (zh) 快速视频编解码变换实现
CN1197251A (zh) 图象信号的填补方法、编码装置及译码装置
CN1564602A (zh) 视频编码的整数变换矩阵选择方法及相关的整数变换方法
CN1638482A (zh) 利用水环扫描设备编码/解码视频序列的设备和方法
CN1324904C (zh) 运动图像编码设备和运动图像编码方法
CN1941911A (zh) 退色补偿的参数化
CN1245028C (zh) 非均匀多层次六边形格点整象素运动搜索方法
CN1652608A (zh) 数据处理装置及其方法以及编码装置和解码装置
CN1882083A (zh) 一种降低图像方块效应的方法
CN1198462C (zh) 用于定向内插器节点的编码装置和方法
CN1455600A (zh) 基于相邻像素预测的帧内预测方法
CN1284378C (zh) 基于数学模型预测的运动估计快速半像素级搜索方法
CN1543221A (zh) 1/4像素精度插值的方法和装置
CN1358028A (zh) 图像编码/解码方法,图像编码装置和图像解码装置
CN1216495C (zh) 视频图像亚像素插值的方法和装置
CN1495603A (zh) 用操作指令编码的计算机可读介质
CN1633184A (zh) 基于有效区域的多参考帧快速运动估计方法
CN1713729A (zh) 一种视频压缩方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20061108

Termination date: 20131013