CN102427528B - 一种基于聚类统计的视频运动估计方法 - Google Patents

一种基于聚类统计的视频运动估计方法 Download PDF

Info

Publication number
CN102427528B
CN102427528B CN 201110300465 CN201110300465A CN102427528B CN 102427528 B CN102427528 B CN 102427528B CN 201110300465 CN201110300465 CN 201110300465 CN 201110300465 A CN201110300465 A CN 201110300465A CN 102427528 B CN102427528 B CN 102427528B
Authority
CN
China
Prior art keywords
motion vector
cluster
macro block
vector
class
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 201110300465
Other languages
English (en)
Other versions
CN102427528A (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.)
Beihang University
Original Assignee
Beihang 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 Beihang University filed Critical Beihang University
Priority to CN 201110300465 priority Critical patent/CN102427528B/zh
Publication of CN102427528A publication Critical patent/CN102427528A/zh
Application granted granted Critical
Publication of CN102427528B publication Critical patent/CN102427528B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一种基于聚类统计的视频运动估计方法,步骤为:(1)按视频帧从右上角到左下角的对角线及其平行线对视频帧的宏块进行分组;(2)根据宏块的分组编号,选取第i组宏块,对第i组中的每一个宏块ij进行搜索,获取宏块ij的运动向量;(3)把步骤(2)所得到的第i组宏块的运动向量加入已有的运动向量聚类中,并重新聚类;(4)检查是否有宏块没有进行搜索,若还有宏块没有进行搜索,则进入步骤(2),否则结束。本方法可以有效地对视频进行运动估计,提高运动估计的速度和精度以及补偿图像的质量。

Description

一种基于聚类统计的视频运动估计方法
技术领域
本发明涉及视频技术领域,更具体地讲,涉及一种对视频进行运动估计的方法。
背景技术
在视频图像压缩中,运动估计根据已经编码的参考帧产生当前编码帧的运动补偿预测,去除视频序列中存在的时间冗余。基于块匹配的运动估计的基本思想是将图像序列的每一帧分成宏块,对于当前帧中的每一块根据一定的匹配准则在前一帧或后一帧某一给定搜索范围内搜索与当前块最相似块,即最匹配块,由最匹配块与当前块的相对位置计算出运动位移,即当前块的运动向量。一个宏块的运动向量包括水平和垂直两个方向的位移。
运动估计算法中搜索精度最高的是FS(Full Search,全搜索)算法,FS算法是对搜索范围内的全部候选位置进行匹配运算,搜索宏块的最小块误差点,得到一个最优的运动向量。FS算法虽然搜索精度最高,但由于进行搜索区域内的完全搜索,所以计算复杂度很高。
为了提高宏块搜索匹配速度,快速运动估计算法被提出,如TSS(Three StepSearch,三步搜索)算法、CS(Cross Search,交叉搜索)算法、NTSS(New Three StepSearch,新三步搜索)算法、FSS(Four Step Search,四步搜索)算法、DS(DiamondSearch,菱形搜索)算法和HS(Hexagon Search,六边形搜索)算法,以及PLS(Predictive Line Search,预测线搜索)算法和UMHexagonS算法。TSS算法和CS算法第一步搜索步长较大,而进一步的搜索是在第一步确定的方向上进行的,因而很容易陷入局部最优。NTSS算法、FSS算法和DS算法利用视频序列运动矢量在空间分布上的中心偏置特性,减小了搜索步长,加强了对中心区域的搜索,忽略了相邻宏块之间运动向量的相关性,因此,这些算法不适合大运动的视频序列,其搜索精度与FS算法相比有较大的差距。HS算法是搜索速度最快的运动估计算法之一,与DS算法相比,该算法能够用更少的搜索匹配次数找到一个相同的运动向量,但是HS算法并没有利用相邻宏块之间运动向量的相关性,因此,对于大运动的视频序列,HS算法的搜索精度较低。PLS算法是搜索精度与FS算法最接近的快速运动估计算法之一,其平均搜索速度约是FS算法的10倍。UMHexagonS算法是H.264标准中运动估计的参考算法,该算法采用了混合式的搜索模板与移动搜索策略相结合的思想,与FS算法相比,UMHexagonS算法减少了90%的计算量,但是,UMHexagonS算法的搜索精度比FS算法低。
对于视频序列而言,每一帧视频图像通常是由多个前景物体和多个背景物体组成,按照宏块所属的不同物体对宏块进行分类,可以看出,通常属于同一个物体的宏块通常具有相近的运动,属于不同物体的宏块的运动是不同的。运动估计算法可以利用宏块运动的聚类统计信息进行搜索匹配,从而提高运动估计的搜索精度,并减少搜索匹配的次数。
上述的各种快速运动估计算法都没有充分利用宏块运动向量的聚类统计信息,因此,它们的搜索速度和搜索精度均在一定程度上受到了影响。根据宏块运动向量的聚类统计信息,本发明提出了一种基于聚类统计的视频运动估计方法,该方向在对宏块进行运动估计的过程中,同时对宏块的运动向量进行聚类分析,运动向量的聚类分析数据为宏块的搜索匹配提供参考,从而提高了运动估计的搜索精度和搜索速度。
发明内容
本发明的目的是:克服现有运动估计方法没有充分利用视频帧中宏块运动向量的聚类统计信息,提供了一种基于聚类统计的视频运动估计方法,该该方法可以有效地对视频进行运动估计,提高了视频运动估计的速度和精度,以及运动补偿图像的质量。
为了实现上述目的,本发明的原理是:视频中宏块的运动向量并不是二维离散均匀分布,而是二维离散多峰分布,因此某些运动向量及其相邻向量的使用频率较高,其它运动向量的使用频率很低。本发明对宏块的运动向量进行聚类统计分析,每个类使用一个代表向量作为该类的代表运动向量,即该类的运动向量。由于视频中相邻宏块的运动向量通常是相近的,根据宏块运动向量的相关性,相邻宏块的运动向量通常会属于同一个类,因此,已搜索宏块的运动向量的聚类统计结果可以为相邻宏块的搜索匹配提供参考,从而减少相邻块的搜索匹配次数,提高运动估计的速度。
本发明所采取的技术方案是:按视频帧从右上角到左下角的对角线及其平行线对视频帧的宏块进行分组,并以组为单位对宏块进行运动估计,每个宏块在运动估计时都参考运动向量的聚类信息进行搜索,若使用聚类信息不能搜索到宏块的运动向量,则对宏块在整个搜索窗口中进行搜索,获取其运动向量,每完成一组宏块的运动估计时,都把该组宏块的运动向量加入已有的运动向量聚类中,并重新聚类,具体包含的步骤如下:
(1)按视频帧从右上角到左下角的对角线及其平行线对视频帧的宏块进行分组。
(2)根据宏块的分组编号,选取第i(i=1,2,3,...)组宏块,对第i组中的每一个宏块ij进行搜索,获取宏块ij的运动向量:
(2.1)若宏块ij在第i-1组中的相邻宏块存在,则宏块ij分别参考其左边和上边相邻宏块的运动向量所属聚类的代表向量进行搜索,获取宏块ij的局部最小块误差点,否则直接进入步骤(2.2),若该局部最小块误差点的块误差小于一定的阈值,则宏块ij的运动估计结束,返回局部最小块误差点所对应的运动向量,否则进入步骤(2.2);
(2.2)若成员出现频率最大的类存在,则宏块ij参考该类的代表运动向量进行搜索,获取宏块ij的局部最小块误差点,否则直接进入步骤(2.3),若该局部最小块误差点的块误差小于一定的阈值,则宏块ij的运动估计结束,返回局部最小块误差点所对应的运动向量,否则进行步骤(2.3);
(2.3)对宏块ij在整个搜索窗口中进行搜索,获取宏块ij的全局最小块误差点,并返回全局最小块误差点所对应的运动向量。
(3)把步骤(2)所得到的第i组宏块的运动向量加入已有的运动向量聚类中,并重新聚类。
(4)检查是否有宏块没有进行搜索,若还有宏块没有进行搜索,则进入步骤(2),否则结束。
本发明与现有技术相比的优点在于:充分利用了视频帧中宏块运动向量的聚类统计信息对宏块进行搜索,从而可以有效地对视频进行运动估计,提高运动估计的速度以及补偿图像的质量。
附图说明
图1A是第5帧的原始图像,图1B是第6帧图像的原始图像,图1C为第6帧图像的宏块运动向量的统计结果;
图2A为Manhattan距离为1或2的运动向量的示意图,图2B为Manhattan距离为1的运动向量所对应的搜索窗口的重叠情况,图2C为Manhattan距离为2的运动向量所对应的搜索窗口的重叠情况;
图3为本发明基于聚类统计的视频运动估计方法的流程;
图4为宏块按从右上角到左下角的对角线及其平行线进行分组的示意图;
图5为宏块的搜索窗口的示意图;
图6A为运动向量的聚类的示意图,图6B为类成员的归属改变的示意图,图6C为类的代表向量移动的示意图。
图7为宏块运动向量聚类的流程;
图8A为原始的第6帧图像,图8B为本发明方法的补偿图像,图8C为FS搜索算法的补偿图像,图8D为HS算法的补偿图像,图8E为PLS算法的补偿图像,图8F为UMHexagonS算法的补偿图像。
图9为各种算法的PSNR对比和执行时间对比。
具体实施方式
下面结合附图和实施例对本发明作进一步详细的描述:
每一帧视频图像通常是由多个前景物体和多个背景物体组成,按照宏块所属的不同物体对宏块进行分类,可以看出,通常属于同一个物体的宏块通常具有相近的运动,属于不同物体的宏块的运动是不同的。宏块运动向量的分布是二维离散多峰分布,某些运动向量及其相邻向量的使用频率较高,而其它运动向量的使用频率较低。图1以视频的相邻两帧为例说明宏块运动向量的分布,图1A是第5帧的原始图像,图1B是第6帧图像的原始图像,利用FS算法根据第5帧图像对第6帧图像进行运动估计,第6帧图像的宏块运动向量的统计结果如图1C所示。在图1C中,平面xoy中的每个离散点(x,y)代表一个运动向量(x,y),其中,x表示运动向量的水平位移,y表示运动向量的垂直位移,z轴表示运动向量的出现频率(次数)。任意两个运动向量i(xi,yi)和j(xj,yj)的距离可以表示成平面xoy中的任意两点(xi,yi)和(xj,yj)之间的Manhattan距离,如公式1所示。
d(i,j)=|xi-xj|+|yi-yj|    (1)
通过分析各运动向量之间的距离,以图1中三组运动向量为例:(-12,-10)及其相邻向量、(0,6)及其相邻向量和(8,-8)及其相邻向量,可以得出,使用频率较高的运动向量具有聚类的趋势,而且,这些运动向量的相邻向量的使用频率也较高。如果把使用频率较高的运动向量按照距离分成若干组,则组内各向量之间的平均距离通常较小,而组间各向量之间的平均距离通常较大。
由于组内各向量之间的平均距离较小,因此,宏块在参考属于同一组的各个运动向量进行搜索时,各搜索窗口的大部分区域会出现重叠,如图2所示。在图2A中,每个点分别表示一个运动向量,其中,点p1、p2、p3和p4表示与向量r的距离为1的运动向量,点q1、q2、q3、q4、q5、q6、q7和q8表示与向量r的距离为2的运动向量。图2B以运动向量p2为例说明了距离为1的运动向量所对应的搜索窗口的重叠情况,正方形ABCD和正方形A1B1C1D1分别表示参考向量r和向量p2进行搜索的搜索窗口,两个窗口的大小均为8×8,阴影部分A1B1CD是两个搜索窗口区域的重叠区域,其重叠率为0.875。图2C以运动向量q4为例说明了距离为2的运动向量所对应的搜索窗口的重叠情况,正方形ABCD和正方形A2B2C2D2分别表示参考向量r和向量q4进行搜索的搜索窗口,两个窗口的大小均为8×8,阴影部分A2ECF是两个搜索窗口区域的重叠区域,其重叠率为0.766。因此,从一组运动向量中可以选出一个代表向量作为宏块搜索的参考向量,只要能够满足代表向量与其它向量的距离最大为2,就可以保证代表向量和其它向量所对应的搜索窗口的覆盖率为75%以上。因此,同一组运动向量只需要选出一个代表向量作为宏块搜索的参考向量。根据宏块运动向量的多峰分布特性以及聚类趋势,本发明对宏块的运动向量进行聚类分析,分成N个运动向量类C1,C2,...,CN,每个类Ci使用一个运动向量作为该类的代表向量,记为rep(Ci)。一个运动向量m的出现频率(即出现次数)表示了运动向量m的权值,记为nm。一个类C的权值是类C所有成员向量的权值之和,记为nC
根据宏块运动向量的空间相关性,一个宏块的运动向量通常与其左边、上边、右上的相邻块的运动向量是相近的,因此,一个宏块的运动向量通常与其相邻块的运动向量属于同一个类。根据相邻宏块的聚类特点,本发明使用已搜索宏块的运动向量的聚类统计结果为相邻宏块的搜索匹配提供参考,一个宏块可以参考其相邻块所属聚类的代表运动向量进行搜索,从而减少相邻块的搜索匹配次数,提高运动估计的速度。本发明提出的基于聚类统计的视频运动估计方法的流程如图3所示,其步骤如下:
(1)按视频帧从右上角到左下角的对角线及其平行线对视频帧的宏块进行分组,如图4所示。一个N*M个宏块的图像被分成了N+M-1组,每一组中的宏块再按照从上到下的顺序进行编号。宏块ij表示该宏块是第i组中的第j个宏块。
(2)根据宏块的分组编号,选取第i(i=1,2,3,...)组宏块,对第i组中的每一个宏块ij进行搜索,以SAD(Sum of Absolute Difference,绝对误差和)作为宏块误差计算准则寻找局部或全局最小块误差点,返回最小块误差点所对应的运动向量,如图5所示。其中,计算块误差时也可以采用其他准则,如MAD(MeanAbsolute Distortion,平均绝对误差)、MSE(Mean Square Error,均方误差)和NCCF(Normalized Cross Correlation Function,归一化互相关函数)等。
(2.1)若宏块ij在第i-1组中的相邻宏块存在,则宏块ij分别参考其左边和上边相邻宏块的运动向量所属聚类的代表向量进行搜索,获取宏块ij的局部最小块误差点,否则直接进入步骤(2.2),若该局部最小块误差点的块误差小于一定的阈值,则宏块ij的运动估计结束,返回局部最小块误差点所对应的运动向量,否则进入步骤(2.2)。其中,阈值的设定与宏块大小和块匹配准则相关,当宏块大小为16*16像素时,若使用SAD作为匹配准则,则阈值通常设定为16*16*5或16*16*10等,其中16*16*5含义为宏块大小乘以平均每个像素灰度值的偏差。在图5中,mcL表示左边相邻宏块的运动向量所属聚类的代表向量,mcU表示上边相邻宏块的运动向量所属聚类的代表向量,宏块ij参考运动向量mcL和mcU只需要在两个8*8的搜索窗口中进行全搜或线搜索,而不需要在整个32*32的搜索窗口中进行搜索。
(2.2)若成员出现频率最大的类存在,则宏块ij参考该类的代表运动向量进行搜索,获取宏块ij的局部最小块误差点,否则直接进入步骤(2.3),若该局部最小块误差点的块误差小于一定的阈值,则宏块ij的运动估计结束,返回局部最小块误差点所对应的运动向量,否则进行步骤(2.3)。其中,阈值的设定与宏块大小和块匹配准则相关,当宏块大小为16*16像素时,若使用SAD作为匹配准则,则阈值通常设定为16*16*5或16*16*10等。在图5中,mcmax表示权值最大的类的代表运动向量,宏块ij参考运动向量mcmax只需要在8*8的搜索窗口中进行全搜或线搜索,而不需要在整个32*32的搜索窗口中进行搜索。
(2.3)对宏块ij在整个搜索窗口中进行搜索,获取宏块ij的全局最小块误差点,并返回全局最小块误差点所对应的运动向量。
(3)把步骤(2)所得到的第i组宏块的运动向量加入已有的运动向量聚类中,并重新聚类。在介绍运动向量聚类算法的具体实施步骤之前,对运动向量聚类的定义和原则进行说明。
定义1:(运动向量的直接可达性)运动向量p和运动向量q是直接可达的,当且仅当d(p,q)=1,即运动向量p和运动向量q的距离为1,直接可达性记为p→q。
定义2:(运动向量的间接可达性)运动向量p和运动向量r是间接可达的,当且仅当存在一个运动向量q使得p→q且q→r,即运动向量p和运动向量q直接可达,且运动向量q和运动向量r直接可达,间接可达记为
Figure BDA00000953273400091
定义3:(运动向量的类)设D是一个运动向量集合,一个代表向量为rep(Ci)的类Ci是D的一个非空子集,满足:
(1)
Figure BDA00000953273400092
(
Figure BDA00000953273400093
表示运动向量q属于集合D):如果q→rep(Ci),则q∈Ci
(2)
Figure BDA00000953273400094
(
Figure BDA00000953273400095
表示运动向量q属于集合D):如果
Figure BDA00000953273400096
Figure BDA00000953273400097
j≠i,则q∈Ci
根据定义3所述的运动向量的类的定义,当判定一个运动向量m属于某个类C时,需要遵守运动向量聚类原则如下。
聚类原则:设已有n个运动向量类Ci(i=1,2,...,n),若一个运动向量m被判定为类Cj的成员,则m满足:
(1)m→rep(Cj)
(2)且对于
Figure BDA00000953273400102
Figure BDA00000953273400103
j≠i
在图6A中,u和t与p是不可达的,p与q是直接可达的,q与r和s分别是直接可达的,由于p→q,q→r和q→s,所以p与r和s分别是间接可达的,即
Figure BDA00000953273400104
Figure BDA00000953273400105
根据聚类定义和聚类原则,对于代表向量为p的类C1,C1={q,p,r,s}且rep(C1)=p。由于u和t无法被聚到类C1,因此生成新类C2={u}和C3={t}。
对于无法根据聚类原则进行聚类的运动向量m’,将会为m’生成一个新类Cnew={m’},且rep(Cnew)=m’。Cnew的产生可能会使一些无法聚类到C1,C2,...,Cn中的运动向量成为Cnew的成员,Cnew也可能对原有的类C1,C2,...,Cn的成员造成影响。类Cnew对原有的类C1,C2,...,Cn的成员改变需要遵守成员归属改变原则。
成员归属改变原则:设已有N个运动向量类C1,C2,...,CN,若m∈Ci,现有一个类Cj使得m∈Cj,当且仅当:
Figure BDA00000953273400106
且m→rep(Cj)。
在图6B中,新出现的运动向量v由于不能按照聚类原则被判定为C1、C2和C3的成员,因此,生成新的类C4={v}且rep(C4)=v。根据类成员的归属改变原则,C4会使C1的成员产生影响,因此,在C4出现之后原本属于C1的向量s成为了C4的成员。
对于已有的聚类C1,C2,...,CN,新加入的运动向量m1,m2,...,mk可能对已有聚类产生的影响,主要包括以下三点:(1)导致新类Cnew1,Cnew2,...,CnewN的产生;(2)使用C1,C2,...,CN的成员发生变化;(3)C1,C2,...,Cn的成员的使用频率发生变化。当一个类C的成员发生变化或其成员的权值发生变化时,类C的代表向量rep(C)可能会发生变化。
代表向量移动原则:设类C的rep(C)=p,若类C的成员发生变化或成员的权值发生变化,则类C的代表向量会移动,移动后rep(C)=p’,p’满足:
(1)p′∈{p}∪{q:q∈C,p→q}
(2int ra cost(C,p′)=min{int ra cost(C,i),i∈{p}∪{q:q∈C,p→i}}
其中,intracost(C,i)表示类C使用运动向量i作为代表向量所对应的类内平均误差,如公式2所示:
intra cos t ( C , i ) = 1 Σ j ∈ C , d ( i , j ) ≤ 2 n j Σ j ∈ C , d ( i , j ) ≤ 2 n j · d ( i , j ) - - - ( 2 )
在公式(2)中,d(i,j)表示运动向量i和j的Manhattan距离。
当类C的代表向量req(C)发生变化时,需要按照聚类原则对类C原有的成员进行重新聚类,对于无法聚类的成员需要为其生成新的类。在图6C中,运动向量q和s的权值急剧增大使得类C1和C4的代表向量发生变化,根据代表向量的移动原则,C1的代表向量rep(C1)变成了q,C4的代表向量rep(C4)变成了s。
运动向量聚类算法把第i组宏块的运动向量Mi={m1,m2,...,mp}加入已有的运动向量聚类C={C1,C2,...,Cn}中,并重新聚类,其中,mj≠mk(k≠j),每个mj在第i组宏块的运动向量中的出现频率(出现次数)为
Figure BDA00000953273400112
运动向量聚类算法的流程如图7所示,其具体步骤如下:
(3.1)对第i组宏块的运动向量Mi中的每个mj,若mj∈Ck,则增加Ck的成员mj的权值nmj,使得
Figure BDA00000953273400121
其中nmj表示Ck的成员mj的权值,ni mj表示第i组宏块的运动向量Mi中的mj的权值,否则,根据聚类原则对mj进行聚类;
(3.2)令M’为Mi中无法聚类的运动向量,即M’={m’1,m’2,...,m’q},并设置迭代次数为0;
(3.3)每次选取M’中一个没有聚类的运动向量m’j生成一个新类C’j={m’j},检查m’j的直接可达向量和间接可达向量,根据聚类原则对没有聚类的向量m’(m′∈M′)进行聚类,并按照成员归属改变原则对已聚类的向量进行修改,重复步骤(3.3)直到M’中的所有向量都已经聚类,若迭代次数超过10次,则聚类算法结束,否则进入步骤(3.4)。
(3.4)对于当前的运动向量聚类C={C1,C2,...,Cr},根据代表向量移动原则,重新计算每个类Ci的代表向量。
(3.5)令M是代表向量移动的各个类的成员,即M={m1,m2,...,ms},若M=φ(φ是空集,表示M中的元素个数为0),则聚类算法结束,否则,进入步骤(3.6)。
(3.6)对于M中的每个mj,根据聚类原则对mj进行聚类。
(3.7)对于当前的运动向量聚类C={C1,C2,...,Cr’},检查每个Ci的代表向量rep(Ci)的直接可达向量,并按照成员归属改变原则进行修改。
(3.8)令M’为M中无法聚类的运动向量,即M’={m’1,m’2,...,m’s’},并使迭代次数增加1,进入步骤(3.3)。
(4)检查是否有宏块没有进行搜索,若还有宏块没有进行搜索,则进入步骤(2)对下一组宏块进行搜索,否则结束。
本发明对基于聚类统计的视频运动估计方法进行了实验。实验所采用的数据为沿校园道路拍摄的视频,其中视频帧数为50帧,分辨率为512×512像素。在实验中,分别采用FS算法,HS算法,PLS算法,UMHexagonS算法以及本方法对视频序列进行运动估计,利用各算法进行运动估计生成的补偿图像如图8所示。图8A为原始的第6帧图像,图8B为本发明方法的补偿图像,图8C为FS搜索算法的补偿图像,图8D为HS算法的补偿图像,图8E为PLS算法的补偿图像,图8F为UMHexagonS算法的补偿图像。从图8的各组图像可以看出,本方法进行运动估计的补偿图像比HS和UMHexagonS算法的补偿图像的主观质量更高,与FS算法和PLS算法的补偿图像很接近。
为了衡量本方法的运动估计的性能,采用了PSNR(Peak Signal to NoiseRatio,峰值信噪比)作为实验指标,如公式(4)所示。PSNR反映了图像的失真程度,其单位为分贝(dB),PSNR值越大,图像失真越少。
PSNR = 10 × log 10 ( 255 2 1 w × h Σ x = 1 w Σ y = 1 h [ I k ( x , y ) - I t ( x , y ) ] 2 ) - - - ( 4 )
其中,Ik(x,y)是补偿图像中点(x,y)的灰度像素值,It(x,y)是原始图像中点(x,y)的灰度像素值,w和h分别是图像的宽度与高度。
根据公式(4),实验计算了50帧视频图像分别采用FS算法,HS算法,PLS算法,UMHexagonS算法以及本方法进行运动估计的补偿图像的平均PSNR,并统计了各种算法的平均执行时间,如图9所示。从平均PSNR对比可以看出,本方法的平均PSNR为27.59dB,比PLS算法更接近FS算法,明显优于HS算法和UMHexagonS算法,比HS算法提高了约3dB,比UMHexagonS算法提高了约1.5dB。从平均执行时间可以看出,本方法的平均执行时间是36ms,比FS算法快420ms,比PLS算法快17ms,比UMHexagonS算法快18ms,虽然HS算法比本方法的速度快,但是本方法的搜索精度比HS算法更高,平均PSNR比HS算法高3dB。
本发明中未详细阐述的部分属于本领域技术人员的公知技术。
最后所应说明的是,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明基于聚类统计的视频运动估计方法的前提下,还可以做出若干改进或等同替换,这些改进和等同替换也应视为本发明的保护范围。

Claims (6)

1.一种基于聚类统计的视频运动估计方法,其特征在于它包括步骤如下:
(1)按视频帧从右上角到左下角的对角线及其平行线对视频帧的宏块进行分组;
(2)根据宏块的分组编号,选取第i组宏块,其中i=1,2,3,...,对第i组中的每一个宏块ij进行搜索,其中j=1,2,3,...,获取宏块ij的运动向量;
(3)把步骤(2)所得到的第i组宏块的运动向量加入已有的运动向量聚类中,并重新聚类;
(4)检查是否有宏块没有进行搜索,若还有宏块没有进行搜索,则进入步骤(2),否则结束;
所述步骤(2)对第i组中的每一个宏块ij进行搜索,包括步骤如下:
(2.1)若宏块ij在第i-1组中的相邻宏块存在,则宏块ij分别参考其左边和上边相邻宏块的运动向量所属聚类的代表向量进行搜索,获取宏块ij的局部最小块误差点,否则直接进入步骤(2.2),若该局部最小块误差点的块误差小于一定的阈值,则宏块ij的运动估计结束,返回局部最小块误差点所对应的运动向量,否则进入步骤(2.2);
(2.2)若成员出现频率最大的类存在,则宏块ij参考该类的代表运动向量进行搜索,获取宏块ij的局部最小块误差点,否则直接进入步骤(2.3),若该局部最小块误差点的块误差小于一定的阈值,则宏块ij的运动估计结束,返回局部最小块误差点所对应的运动向量,否则进行步骤(2.3);
(2.3)对宏块ij在整个搜索窗口中进行搜索,获取宏块ij的全局最小块误差点,并返回全局最小块误差点所对应的运动向量。
2.根据权利要求1所述的基于聚类统计的视频运动估计方法,其特征在于:所述步骤(3)把第i组宏块的运动向量加入已有的运动向量聚类中,并重新聚类,其中,运动向量的类的定义包括以下三个方面:
(I)运动向量的直接可达性:运动向量p和运动向量q是直接可达的,当且仅当运动向量p和运动向量q的Manhattan距离为1,直接可达性记为p→q;
(II)运动向量的间接可达性:运动向量p和运动向量r是间接可达的,当且仅当存在一个运动向量q使得p→q且q→r,即运动向量p和运动向量q直接可达,且运动向量q和运动向量r直接可达,间接可达记为
(III)运动向量的类是指:设D是一个运动向量集合,一个代表向量为rep(Ci)的类Ci是D的一个非空子集,满足:
(a)
Figure FDA00002829099300022
如果q→rep(Ci),则q∈Ci
(b)
Figure FDA00002829099300023
如果
Figure FDA00002829099300024
Figure FDA00002829099300025
j≠i,则q∈Ci
3.根据权利要求1所述的基于聚类统计的视频运动估计方法,其特征在于:所述步骤(3)把第i组宏块的运动向量加入已有的运动向量聚类中,并重新聚类,包括以下步骤,其中,Mi={m1,m2,...,mp}表示第i组宏块的运动向量,C={C1,C2,...,Cn}表示已有的运动向量聚类:
(3.1)对第i组宏块的运动向量Mi中的每个mj,若mj∈Ck,则增加Ck的成员mj的权值,使得nmj表示Ck的成员mj的权值,ni mj表示第i组宏块的运动向量Mi中的mj的权值;否则,根据聚类原则对mj进行聚类;
(3.2)令M’为Mi中无法聚类的运动向量,即M’={m’1,m’2,...,m’q},并设置迭代次数为0;
(3.3)每次选取M’中一个没有聚类的运动向量m’j生成一个新类C’j={m’j},检查m’j的直接可达向量和间接可达向量,根据聚类原则对没有聚类的向量m’进行聚类,其中m′∈M′,并按照成员归属改变原则对已聚类的向量进行修改,重复步骤(3.3)直到M’中的所有向量都已经聚类,若迭代次数超过一定次数,则算法结束,否则进入步骤(3.4);
(3.4)对于当前的运动向量聚类C={C1,C2,...,Cr},根据代表向量移动原则,重新计算每个类Ci的代表向量;
(3.5)令M是代表向量移动的各个类的成员,即M={m1,m2,...,ms},若M=φ,即M为空集,则聚类算法结束,否则,进入步骤(3.6);
(3.6)对于M中的每个mj,根据聚类原则对mj进行聚类;
(3.7)对于当前的运动向量聚类C={C1,C2,...,Cr’},检查每个Ci的代表向量rep(Ci)的直接可达向量,并按照成员归属改变原则进行修改;
(3.8)令M’为M中无法聚类的运动向量,即M’={m’1,m’2,...,m’s’},并使迭代次数增加1,进入步骤(3.3)。
4.根据权利要求1所述的基于聚类统计的视频运动估计方法,其特征在于:所述步骤(3)把第i组宏块的运动向量加入已有的运动向量聚类中,并重新聚类,其中,聚类原则如下:
设已有n个运动向量类Ci,i=1,2,...,n,若一个运动向量m被判定为类Cj的成员,则m满足:
(a)m→rep(Cj)
(b)
Figure FDA00002829099300031
且对于
Figure FDA00002829099300032
Figure FDA00002829099300033
j≠i。
5.根据权利要求1所述的基于聚类统计的视频运动估计方法,其特征在于:所述步骤(3)把第i组宏块的运动向量加入已有的运动向量聚类中,并重新聚类,其中,成员归属改变原则如下:
设已有N个运动向量类C1,C2,...,CN若m∈Ci现有一个类Cj使得m∈Cj,当且仅当:
Figure FDA00002829099300041
且m→rep(Cj)。
6.根据权利要求1所述的基于聚类统计的视频运动估计方法,其特征在于:所述步骤(3)把第i组宏块的运动向量加入已有的运动向量聚类中,并重新聚类,其中,代表向量移动原则如下:
设类C的rep(C)=p,若类C的成员发生变化或成员的权值发生变化,则类C的代表向量会移动,移动后rep(C)=p’,p’满足:
(A)p′∈{p}∪{q:q∈C,p→q}
(B)int ra cost(C,p′)=min{int ra cost(C,i),i∈{p}∪{q:q∈C,p→i}}
其中,intracost(C,i)表示类C使用运动向量i作为代表向量所对应的类内平均误差,如下述公式所示:
intra cos t ( C , i ) = 1 Σ j ∈ C , d ( i , j ) ≤ 2 n j Σ j ∈ C , d ( i , j ) ≤ 2 n j · d ( i , j )
其中,d(i,j)表示运动向量i和j的Manhattan距离,其计算公式为:
d(i,j)=|xi-xj|+|yi-yj|。
CN 201110300465 2011-09-30 2011-09-30 一种基于聚类统计的视频运动估计方法 Expired - Fee Related CN102427528B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110300465 CN102427528B (zh) 2011-09-30 2011-09-30 一种基于聚类统计的视频运动估计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110300465 CN102427528B (zh) 2011-09-30 2011-09-30 一种基于聚类统计的视频运动估计方法

Publications (2)

Publication Number Publication Date
CN102427528A CN102427528A (zh) 2012-04-25
CN102427528B true CN102427528B (zh) 2013-07-31

Family

ID=45961466

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110300465 Expired - Fee Related CN102427528B (zh) 2011-09-30 2011-09-30 一种基于聚类统计的视频运动估计方法

Country Status (1)

Country Link
CN (1) CN102427528B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106572354B (zh) * 2015-10-09 2021-10-15 腾讯科技(北京)有限公司 基于图像块的搜索匹配方法、系统及视频处理设备
CN105488794B (zh) * 2015-11-26 2018-08-24 中山大学 一种基于空间定位和聚类的动作预测方法及系统
CN105931274B (zh) * 2016-05-09 2019-02-15 中国科学院信息工程研究所 一种基于运动向量轨迹的快速物体分割和追踪方法
CN107968946B (zh) * 2016-10-18 2021-09-21 深圳万兴信息科技股份有限公司 视频帧率提升方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080165852A1 (en) * 2007-01-05 2008-07-10 Sony Corporation Video coding system
CN101563926A (zh) * 2006-12-18 2009-10-21 皇家飞利浦电子股份有限公司 图像压缩与解压缩
CN101583036A (zh) * 2009-06-22 2009-11-18 浙江大学 像素域视频转码中确定运动特征和高效编码模式关系的方法
US20100118156A1 (en) * 2008-11-12 2010-05-13 Canon Kabushiki Kaisha Image processing apparatus, image pickup apparatus and image processing method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101563926A (zh) * 2006-12-18 2009-10-21 皇家飞利浦电子股份有限公司 图像压缩与解压缩
US20080165852A1 (en) * 2007-01-05 2008-07-10 Sony Corporation Video coding system
US20100118156A1 (en) * 2008-11-12 2010-05-13 Canon Kabushiki Kaisha Image processing apparatus, image pickup apparatus and image processing method
CN101583036A (zh) * 2009-06-22 2009-11-18 浙江大学 像素域视频转码中确定运动特征和高效编码模式关系的方法

Also Published As

Publication number Publication date
CN102427528A (zh) 2012-04-25

Similar Documents

Publication Publication Date Title
CN101394566B (zh) 一种十字菱形运动估计搜索方法
CN101420617B (zh) 一种十字六边形运动估计搜索方法
CN101448159B (zh) 一种基于率失真代价和模式频率的快速帧间模式选择方法
CN101667295B (zh) 一种将线搜索扩展于全景视频运动估计的方法
CN102427528B (zh) 一种基于聚类统计的视频运动估计方法
CN104702955A (zh) 屏幕视频的预测编码的方法与系统
Tsai et al. A novel 3-D predict hexagon search algorithm for fast block motion estimation on H. 264 video coding
Zhao et al. Efficient VVC intra prediction based on deep feature fusion and probability estimation
CN112235570A (zh) 基于预编码的快速预测方法
Ni et al. High efficiency intra CU partition and mode decision method for VVC
JP2011010297A (ja) 誤差絶対値和の推定システム及び推定方法
CN103974077B (zh) 一种用于h.264编码的整数运动估计快速搜索方法
KR100947447B1 (ko) 다시점 동영상 부호화에서 고속 모드 결정 방법 및 장치
Li et al. Efficient search and mode prediction algorithms for motion estimation in H. 264/AVC
CN103763563A (zh) 运动估计搜索方法
KR100924487B1 (ko) 인터 예측에서의 블록 크기 분할 방법 및 장치
Sowmyayani et al. Block based Motion Estimation using Octagon and Square Pattern
Salih et al. Improved hybrid block-based motion estimation for inter-frame coding
Hill et al. Sub-pixel motion estimation using kernel methods
KR20080022843A (ko) 움직임 벡터를 이용한 탐색 영역 조절 방법
KR101938311B1 (ko) 기계학습을 이용한 객체정보 기반 고속 고효율 비디오 코덱 영상 부호화 시스템
CN101771870B (zh) 一种视频编码技术中块运动匹配的快速搜索方法
US8265155B2 (en) Method of block partition for H.264 inter prediction
Bondarchuk et al. Motion Vector Search Algorithm for Motion Compensation in Video Encoding
CN100469141C (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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130731

Termination date: 20200930