專利名稱:一種基于聚類統(tǒng)計的視頻運動估計方法
技術(shù)領(lǐng)域:
本發(fā)明涉及視頻技術(shù)領(lǐng)域,更具體地講,涉及一種對視頻進行運動估計的方法。
背景技術(shù):
在視頻圖像壓縮中,運動估計根據(jù)已經(jīng)編碼的參考幀產(chǎn)生當(dāng)前編碼幀的運動補償預(yù)測,去除視頻序列中存在的時間冗余?;趬K匹配的運動估計的基本思想是將圖像序列的每一幀分成宏塊,對于當(dāng)前幀中的每一塊根據(jù)一定的匹配準(zhǔn)則在前一幀或后一幀某一給定搜索范圍內(nèi)搜索與當(dāng)前塊最相似塊,即最匹配塊,由最匹配塊與當(dāng)前塊的相對位置計算出運動位移,即當(dāng)前塊的運動向量。一個宏塊的運動向量包括水平和垂直兩個方向的位移。運動估計算法中搜索精度最高的是FS (Full karch,全搜索)算法,F(xiàn)S算法是對搜索范圍內(nèi)的全部候選位置進行匹配運算,搜索宏塊的最小塊誤差點,得到一個最優(yōu)的運動向量。FS算法雖然搜索精度最高,但由于進行搜索區(qū)域內(nèi)的完全搜索,所以計算復(fù)雜度很尚ο為了提高宏塊搜索匹配速度,快速運動估計算法被提出,如TSS(Three Step karch,三步搜索)算法、CS(Cross karch,交叉搜索)算法、NTSS(New Three Step karch,新三步搜索)算法、FSS (Four Step karch,四步搜索)算法、DS (Diamond Search, 菱形搜索)算法和HS (Hexagon Search,六邊形搜索)算法,以及PLS (I^redictive Line Search,預(yù)測線搜索)算法和UMHexagonS算法。TSS算法和CS算法第一步搜索步長較大,而進一步的搜索是在第一步確定的方向上進行的,因而很容易陷入局部最優(yōu)。NTSS算法、FSS 算法和DS算法利用視頻序列運動矢量在空間分布上的中心偏置特性,減小了搜索步長,加強了對中心區(qū)域的搜索,忽略了相鄰宏塊之間運動向量的相關(guān)性,因此,這些算法不適合大運動的視頻序列,其搜索精度與FS算法相比有較大的差距。HS算法是搜索速度最快的運動估計算法之一,與DS算法相比,該算法能夠用更少的搜索匹配次數(shù)找到一個相同的運動向量,但是HS算法并沒有利用相鄰宏塊之間運動向量的相關(guān)性,因此,對于大運動的視頻序列,HS算法的搜索精度較低。PLS算法是搜索精度與FS算法最接近的快速運動估計算法之一,其平均搜索速度約是FS算法的10倍。UMHexagonS算法是H. 264標(biāo)準(zhǔn)中運動估計的參考算法,該算法采用了混合式的搜索模板與移動搜索策略相結(jié)合的思想,與FS算法相比, UMHexagonS算法減少了 90%的計算量,但是,UMHexagonS算法的搜索精度比FS算法低。對于視頻序列而言,每一幀視頻圖像通常是由多個前景物體和多個背景物體組成,按照宏塊所屬的不同物體對宏塊進行分類,可以看出,通常屬于同一個物體的宏塊通常具有相近的運動,屬于不同物體的宏塊的運動是不同的。運動估計算法可以利用宏塊運動的聚類統(tǒng)計信息進行搜索匹配,從而提高運動估計的搜索精度,并減少搜索匹配的次數(shù)。上述的各種快速運動估計算法都沒有充分利用宏塊運動向量的聚類統(tǒng)計信息,因此,它們的搜索速度和搜索精度均在一定程度上受到了影響。根據(jù)宏塊運動向量的聚類統(tǒng)計信息,本發(fā)明提出了一種基于聚類統(tǒng)計的視頻運動估計方法,該方向在對宏塊進行運動估計的過程中,同時對宏塊的運動向量進行聚類分析,運動向量的聚類分析數(shù)據(jù)為宏塊的搜索匹配提供參考,從而提高了運動估計的搜索精度和搜索速度。
發(fā)明內(nèi)容
本發(fā)明的目的是克服現(xiàn)有運動估計方法沒有充分利用視頻幀中宏塊運動向量的聚類統(tǒng)計信息,提供了一種基于聚類統(tǒng)計的視頻運動估計方法,該該方法可以有效地對視頻進行運動估計,提高了視頻運動估計的速度和精度,以及運動補償圖像的質(zhì)量。為了實現(xiàn)上述目的,本發(fā)明的原理是視頻中宏塊的運動向量并不是二維離散均勻分布,而是二維離散多峰分布,因此某些運動向量及其相鄰向量的使用頻率較高,其它運動向量的使用頻率很低。本發(fā)明對宏塊的運動向量進行聚類統(tǒng)計分析,每個類使用一個代表向量作為該類的代表運動向量,即該類的運動向量。由于視頻中相鄰宏塊的運動向量通常是相近的,根據(jù)宏塊運動向量的相關(guān)性,相鄰宏塊的運動向量通常會屬于同一個類,因此,已搜索宏塊的運動向量的聚類統(tǒng)計結(jié)果可以為相鄰宏塊的搜索匹配提供參考,從而減少相鄰塊的搜索匹配次數(shù),提高運動估計的速度。本發(fā)明所采取的技術(shù)方案是按視頻幀從右上角到左下角的對角線及其平行線對視頻幀的宏塊進行分組,并以組為單位對宏塊進行運動估計,每個宏塊在運動估計時都參考運動向量的聚類信息進行搜索,若使用聚類信息不能搜索到宏塊的運動向量,則對宏塊在整個搜索窗口中進行搜索,獲取其運動向量,每完成一組宏塊的運動估計時,都把該組宏塊的運動向量加入已有的運動向量聚類中,并重新聚類,具體包含的步驟如下(1)按視頻幀從右上角到左下角的對角線及其平行線對視頻幀的宏塊進行分組。(2)根據(jù)宏塊的分組編號,選取第i(i = 1,2,3,...)組宏塊,對第i組中的每一個宏塊^進行搜索,獲取宏塊^的運動向量(2. 1)若宏塊ij在第i-Ι組中的相鄰宏塊存在,則宏塊ij分別參考其左邊和上邊相鄰宏塊的運動向量所屬聚類的代表向量進行搜索,獲取宏塊的局部最小塊誤差點,否則直接進入步驟(2. 2),若該局部最小塊誤差點的塊誤差小于一定的閾值,則宏塊的運動估計結(jié)束,返回局部最小塊誤差點所對應(yīng)的運動向量,否則進入步驟(2.2);(2. 2)若成員出現(xiàn)頻率最大的類存在,則宏塊ij參考該類的代表運動向量進行搜索,獲取宏塊、的局部最小塊誤差點,否則直接進入步驟(2.幻,若該局部最小塊誤差點的塊誤差小于一定的閾值,則宏塊、的運動估計結(jié)束,返回局部最小塊誤差點所對應(yīng)的運動向量,否則進行步驟(2.3);(2. 3)對宏塊在整個搜索窗口中進行搜索,獲取宏塊的全局最小塊誤差點, 并返回全局最小塊誤差點所對應(yīng)的運動向量。(3)把步驟⑵所得到的第i組宏塊的運動向量加入已有的運動向量聚類中,并重新聚類。(4)檢查是否有宏塊沒有進行搜索,若還有宏塊沒有進行搜索,則進入步驟0), 否則結(jié)束。本發(fā)明與現(xiàn)有技術(shù)相比的優(yōu)點在于充分利用了視頻幀中宏塊運動向量的聚類統(tǒng)計信息對宏塊進行搜索,從而可以有效地對視頻進行運動估計,提高運動估計的速度以及補償圖像的質(zhì)量。
圖IA是第5幀的原始圖像,圖IB是第6幀圖像的原始圖像,圖IC為第6幀圖像的宏塊運動向量的統(tǒng)計結(jié)果;圖2A為Manhattan距離為1或2的運動向量的示意圖,圖2B為Manhattan距離為1的運動向量所對應(yīng)的搜索窗口的重疊情況,圖2C為Manhattan距離為2的運動向量所對應(yīng)的搜索窗口的重疊情況;圖3為本發(fā)明基于聚類統(tǒng)計的視頻運動估計方法的流程;圖4為宏塊按從右上角到左下角的對角線及其平行線進行分組的示意圖;圖5為宏塊的搜索窗口的示意圖;圖6A為運動向量的聚類的示意圖,圖6B為類成員的歸屬改變的示意圖,圖6C為類的代表向量移動的示意圖。圖7為宏塊運動向量聚類的流程;圖8A為原始的第6幀圖像,圖8B為本發(fā)明方法的補償圖像,圖8C為FS搜索算法的補償圖像,圖8D為HS算法的補償圖像,圖8E為PLS算法的補償圖像,圖8F為UMHexagonS 算法的補償圖像。圖9為各種算法的PSNR對比和執(zhí)行時間對比。
具體實施例方式下面結(jié)合附圖和實施例對本發(fā)明作進一步詳細(xì)的描述每一幀視頻圖像通常是由多個前景物體和多個背景物體組成,按照宏塊所屬的不同物體對宏塊進行分類,可以看出,通常屬于同一個物體的宏塊通常具有相近的運動,屬于不同物體的宏塊的運動是不同的。宏塊運動向量的分布是二維離散多峰分布,某些運動向量及其相鄰向量的使用頻率較高,而其它運動向量的使用頻率較低。圖1以視頻的相鄰兩幀為例說明宏塊運動向量的分布,圖IA是第5幀的原始圖像,圖IB是第6幀圖像的原始圖像,利用FS算法根據(jù)第5幀圖像對第6幀圖像進行運動估計,第6幀圖像的宏塊運動向量的統(tǒng)計結(jié)果如圖IC所示。在圖IC中,平面xoy中的每個離散點(X,y)代表一個運動向量 (X,y),其中,χ表示運動向量的水平位移,y表示運動向量的垂直位移,ζ軸表示運動向量的出現(xiàn)頻率(次數(shù))。任意兩個運動向量Uui)和j(Xj,yj)的距離可以表示成平面xoy 中的任意兩點(Xi, Yi)和(χ」,Yj)之間的Manhattan距離,如公式1所示。d(i, j) = Ixi-Xjl + Iyi-Yj(1)通過分析各運動向量之間的距離,以圖1中三組運動向量為例(-12,-10)及其相鄰向量、(0,6)及其相鄰向量和(8,_8)及其相鄰向量,可以得出,使用頻率較高的運動向量具有聚類的趨勢,而且,這些運動向量的相鄰向量的使用頻率也較高。如果把使用頻率較高的運動向量按照距離分成若干組,則組內(nèi)各向量之間的平均距離通常較小,而組間各向量之間的平均距離通常較大。由于組內(nèi)各向量之間的平均距離較小,因此,宏塊在參考屬于同一組的各個運動向量進行搜索時,各搜索窗口的大部分區(qū)域會出現(xiàn)重疊,如圖2所示。在圖2A中,每個點分別表示一個運動向量,其中,點P1、P2、P3和P4表示與向量r的距離為1的運動向量,點qi、q2、 q3、q4、q5、q6、q7和q8表示與向量r的距離為2的運動向量。圖2B以運動向量P2為例說明了距離為1的運動向量所對應(yīng)的搜索窗口的重疊情況,正方形ABCD和正方形A1B1C1D1分別表示參考向量r和向量?2進行搜索的搜索窗口,兩個窗口的大小均為8X8,陰影部分A1B1CD 是兩個搜索窗口區(qū)域的重疊區(qū)域,其重疊率為0.875。圖2C以運動向量(14為例說明了距離為2的運動向量所對應(yīng)的搜索窗口的重疊情況,正方形ABCD和正方形A2B2C2D2分別表示參考向量r和向量(14進行搜索的搜索窗口,兩個窗口的大小均為8X8,陰影部分A2ECF是兩個搜索窗口區(qū)域的重疊區(qū)域,其重疊率為0. 766。因此,從一組運動向量中可以選出一個代表向量作為宏塊搜索的參考向量,只要能夠滿足代表向量與其它向量的距離最大為2,就可以保證代表向量和其它向量所對應(yīng)的搜索窗口的覆蓋率為75%以上。因此,同一組運動向量只需要選出一個代表向量作為宏塊搜索的參考向量。根據(jù)宏塊運動向量的多峰分布特性以及聚類趨勢,本發(fā)明對宏塊的運動向量進行聚類分析,分成N個運動向量類C1, C2, ... , Cn, 每個類Ci使用一個運動向量作為該類的代表向量,記為Mp(Ci)。一個運動向量m的出現(xiàn)頻率(即出現(xiàn)次數(shù))表示了運動向量m的權(quán)值,記為nm。一個類C的權(quán)值是類C所有成員向量的權(quán)值之和,記為η。。根據(jù)宏塊運動向量的空間相關(guān)性,一個宏塊的運動向量通常與其左邊、上邊、右上的相鄰塊的運動向量是相近的,因此,一個宏塊的運動向量通常與其相鄰塊的運動向量屬于同一個類。根據(jù)相鄰宏塊的聚類特點,本發(fā)明使用已搜索宏塊的運動向量的聚類統(tǒng)計結(jié)果為相鄰宏塊的搜索匹配提供參考,一個宏塊可以參考其相鄰塊所屬聚類的代表運動向量進行搜索,從而減少相鄰塊的搜索匹配次數(shù),提高運動估計的速度。本發(fā)明提出的基于聚類統(tǒng)計的視頻運動估計方法的流程如圖3所示,其步驟如下(1)按視頻幀從右上角到左下角的對角線及其平行線對視頻幀的宏塊進行分組, 如圖4所示。一個Ν*Μ個宏塊的圖像被分成了 Ν+Μ-1組,每一組中的宏塊再按照從上到下的順序進行編號。宏塊、表示該宏塊是第i組中的第j個宏塊。(2)根據(jù)宏塊的分組編號,選取第i(i = 1,2,3,...)組宏塊,對第i組中的每一個宏塊ij進行搜索,以SAD (Sum of Absolute Difference,絕對誤差和)作為宏塊誤差計算準(zhǔn)則尋找局部或全局最小塊誤差點,返回最小塊誤差點所對應(yīng)的運動向量,如圖5所示。其中,計算塊誤差時也可以采用其他準(zhǔn)則,如MAD(Mean Absolute Distortion,平均絕對誤差)、MSE(Mean Square Error,均方誤差)禾口 NCCF(Normalized Cross Correlation Function,歸一化互相關(guān)函數(shù))等。(2. 1)若宏塊ij在第i-Ι組中的相鄰宏塊存在,則宏塊ij分別參考其左邊和上邊相鄰宏塊的運動向量所屬聚類的代表向量進行搜索,獲取宏塊的局部最小塊誤差點,否則直接進入步驟(2. 2),若該局部最小塊誤差點的塊誤差小于一定的閾值,則宏塊的運動估計結(jié)束,返回局部最小塊誤差點所對應(yīng)的運動向量,否則進入步驟(2. 2)。其中,閾值的設(shè)定與宏塊大小和塊匹配準(zhǔn)則相關(guān),當(dāng)宏塊大小為16*16像素時,若使用SAD作為匹配準(zhǔn)則, 則閾值通常設(shè)定為16*16*5或16*16*10等,其中16*16*5含義為宏塊大小乘以平均每個像素灰度值的偏差。在圖5中,111 表示左邊相鄰宏塊的運動向量所屬聚類的代表向量,!!!(^表示上邊相鄰宏塊的運動向量所屬聚類的代表向量,宏塊ij參考運動向量111 和Hicu只需要在兩個8*8的搜索窗口中進行全搜或線搜索,而不需要在整個32*32的搜索窗口中進行搜索。(2. 2)若成員出現(xiàn)頻率最大的類存在,則宏塊ij參考該類的代表運動向量進行搜索,獲取宏塊、的局部最小塊誤差點,否則直接進入步驟(2.幻,若該局部最小塊誤差點的塊誤差小于一定的閾值,則宏塊、的運動估計結(jié)束,返回局部最小塊誤差點所對應(yīng)的運動向量,否則進行步驟(2. 3)。其中,閾值的設(shè)定與宏塊大小和塊匹配準(zhǔn)則相關(guān),當(dāng)宏塊大小為 16*16像素時,若使用SAD作為匹配準(zhǔn)則,則閾值通常設(shè)定為16*16*5或16*16*10等。在圖 5中,HiCfflax表示權(quán)值最大的類的代表運動向量,宏塊ij參考運動向量HiCmax只需要在8*8的搜索窗口中進行全搜或線搜索,而不需要在整個32*32的搜索窗口中進行搜索。(2. 3)對宏塊在整個搜索窗口中進行搜索,獲取宏塊的全局最小塊誤差點, 并返回全局最小塊誤差點所對應(yīng)的運動向量。(3)把步驟⑵所得到的第i組宏塊的運動向量加入已有的運動向量聚類中,并重新聚類。在介紹運動向量聚類算法的具體實施步驟之前,對運動向量聚類的定義和原則進行說明。定義1 :(運動向量的直接可達性)運動向量P和運動向量q是直接可達的,當(dāng)且僅當(dāng)d(p,q) = 1,即運動向量ρ和運動向量q的距離為1,直接可達性記為P — q。定義2 (運動向量的間接可達性)運動向量ρ和運動向量r是間接可達的,當(dāng)且僅當(dāng)存在一個運動向量q使得P — q且q — r,即運動向量ρ和運動向量q直接可達,且運動向量q和運動向量r直接可達,間接可達記為ρ > r。定義3:(運動向量的類)設(shè)D是一個運動向量集合,一個代表向量為Mp(Ci)的類Ci是D的一個非空子集,滿足(1) VgeD (Vge D表示運動向量q屬于集合D)如果q — r印(Ci),則q e Ci(2) Vg e D ( Vg e D表示運動向量q屬于集合D)如果q > r印(Ci),且 q^repi^Cj),] Φ ,則 q e Ci根據(jù)定義3所述的運動向量的類的定義,當(dāng)判定一個運動向量m屬于某個類C時, 需要遵守運動向量聚類原則如下。聚類原則設(shè)已有η個運動向量類CiG = 1,2,...,n),若一個運動向量m被判定為類Ci的成員,則m滿足(l)m ^ rep (Cj)或(2)m > rep (Cj),且對于Vrep(Ci) m^rep(C1), j ^ i在圖6A中,u和t與ρ是不可達的,ρ與q是直接可達的,q與r和s分別是直接可達的,由于P — q,q — r和q — s,所以P與r和s分別是間接可達的,即ρ > r,ρ > S。 根據(jù)聚類定義和聚類原則,對于代表向量為P的類C1, C1= {q,p,r,s}且Mp(C1) = ρ。由于u和t無法被聚到類C1,因此生成新類C2 = {u}和C3 = {t}。對于無法根據(jù)聚類原則進行聚類的運動向量m’,將會為m’生成一個新類Cmw = {m’},且r印(Cnew) = m’。Cnew的產(chǎn)生可能會使一些無法聚類到C1, C2,...,Cn中的運動向量成為Cnrat的成員,Cmw也可能對原有的類C1, C2,...,Cn的成員造成影響。類Cnrat對原有的類 C1, C2,...,Cn的成員改變需要遵守成員歸屬改變原則。成員歸屬改變原則設(shè)已有N個運動向量類C1, C2, ...,Cn,若m e Ci,現(xiàn)有一個類 Cj使得m e C」,當(dāng)且僅當(dāng)m > r印(Ci)且m — r印(Cj)。
在圖6B中,新出現(xiàn)的運動向量ν由于不能按照聚類原則被判定為CpC2和C3的成員,因此,生成新的類C4= M且RP(C4) =V0根據(jù)類成員的歸屬改變原則,C4會使C1的成員產(chǎn)生影響,因此,在C4出現(xiàn)之后原本屬于C1的向量S成為了 C4的成員。對于已有的聚類C1, C2, ... , Cn,新加入的運動向量Hi1, m2,. . .,mk可能對已有聚類產(chǎn)生的影響,主要包括以下三點⑴導(dǎo)致新類cnewl,Cnew2, ... , Cmwn的產(chǎn)生;⑵使用C1, C2, ...,Cn的成員發(fā)生變化;(3)C1, C2, ...,Cn的成員的使用頻率發(fā)生變化。當(dāng)一個類C的成員發(fā)生變化或其成員的權(quán)值發(fā)生變化時,類C的代表向量rep (C)可能會發(fā)生變化。代表向量移動原則設(shè)類C的rep(C) = p,若類C的成員發(fā)生變化或成員的權(quán)值發(fā)生變化,則類C的代表向量會移動,移動后rep (C) =ρ',ρ'滿足(l)p' e {p} U {q :q e C,ρ — q}(2intracost (C, ρ ‘ ) = min {intracost (C, i), i e {ρ} U {q :qeC, ρ —i}}其中,intracost (C,i)表示類C使用運動向量i作為代表向量所對應(yīng)的類內(nèi)平均誤差,如公式2所示
權(quán)利要求
1.一種基于聚類統(tǒng)計的視頻運動估計方法,其特征在于它包括步驟如下(1)按視頻幀從右上角到左下角的對角線及其平行線對視頻幀的宏塊進行分組;(2)根據(jù)宏塊的分組編號,選取第i組宏塊,其中i= 1,2,3,...,對第i組中的每一個宏塊進行搜索,其中j = 1,2,3,...,獲取宏塊的運動向量;(3)把步驟( 所得到的第i組宏塊的運動向量加入已有的運動向量聚類中,并重新聚類;(4)檢查是否有宏塊沒有進行搜索,若還有宏塊沒有進行搜索,則進入步驟O),否則結(jié)束。
2.根據(jù)權(quán)利要求1所述的基于聚類統(tǒng)計的視頻運動估計方法,其特征在于所述步驟(1)按視頻幀從右上角到左下角的對角線及其平行線對視頻幀的宏塊進行分組,一個由 N*M個宏塊組成的圖像被分成了 N+M-1組,每一組中的宏塊再按照從上到下的順序進行編號,宏塊、表示該宏塊是第i組中的第j個宏塊。
3.根據(jù)權(quán)利要求1所述的基于聚類統(tǒng)計的視頻運動估計方法,其特征在于所述步驟(2)對第i組中的每一個宏塊進行搜索,包括步驟如下(2. 1)若宏塊ij在第i-Ι組中的相鄰宏塊存在,則宏塊ij分別參考其左邊和上邊相鄰宏塊的運動向量所屬聚類的代表向量進行搜索,獲取宏塊、的局部最小塊誤差點,否則直接進入步驟(2. 2),若該局部最小塊誤差點的塊誤差小于一定的閾值,則宏塊的運動估計結(jié)束,返回局部最小塊誤差點所對應(yīng)的運動向量,否則進入步驟(2.2);(2. 2)若成員出現(xiàn)頻率最大的類存在,則宏塊ij參考該類的代表運動向量進行搜索,獲取宏塊h的局部最小塊誤差點,否則直接進入步驟(2. 3),若該局部最小塊誤差點的塊誤差小于一定的閾值,則宏塊、的運動估計結(jié)束,返回局部最小塊誤差點所對應(yīng)的運動向量,否則進行步驟(2. 3);(2. 3)對宏塊、在整個搜索窗口中進行搜索,獲取宏塊、的全局最小塊誤差點,并返回全局最小塊誤差點所對應(yīng)的運動向量。
4.根據(jù)權(quán)利要求1所述的基于聚類統(tǒng)計的視頻運動估計方法,其特征在于所述步驟(3)把第i組宏塊的運動向量加入已有的運動向量聚類中,并重新聚類,其中,運動向量的類的定義包括以下三個方面(I)運動向量的直接可達性運動向量P和運動向量q是直接可達的,當(dāng)且僅當(dāng)運動向量P和運動向量q的Manhattan距離為1,直接可達性記為ρ — q ;(II)運動向量的間接可達性運動向量P和運動向量r是間接可達的,當(dāng)且僅當(dāng)存在一個運動向量q使得P — q且q — r,即運動向量ρ和運動向量q直接可達,且運動向量q 和運動向量r直接可達,間接可達記為ρ > r ;(III)運動向量的類是指設(shè)D是一個運動向量集合,一個代表向量為Tep(Ci)的類Ci 是D的一個非空子集,滿足(a)VqeD 如果 q — rep (Ci),則 q e Ci(b)VgeD 如果 q > rep (Ci),且^^),_/ 本 i ,則 q e Ci0
5.根據(jù)權(quán)利要求1所述的基于聚類統(tǒng)計的視頻運動估計方法,其特征在于所述步驟 (3)把第i組宏塊的運動向量加入已有的運動向量聚類中,并重新聚類,包括以下步驟,其中,Mi = Im1, m2,. . .,mp}表示第i組宏塊的運動向量,C = (C1, C2, ... , Cj表示已有的運動向量聚類(3. 1)對第i組宏塊的運動向量Mi中的每個若% e Ck,則增加Ck的成員%的權(quán)值, 使得\ = \ + nIj,nfflJ表示Ck的成員叫的權(quán)值,Iiinu表示第i組宏塊的運動向量Mi中的Hij的權(quán)值;否則,根據(jù)聚類原則對進行聚類;(3.2)令M’為虬中無法聚類的運動向量,即M’= {m’ m’ 2,...,m’,并設(shè)置迭代次數(shù)為0 ;(3.3)每次選取M’中一個沒有聚類的運動向量m’彳生成一個新類C’j = {m’」},檢查 m’ j的直接可達向量和間接可達向量,根據(jù)聚類原則對沒有聚類的向量m’進行聚類,其中 m' e M',并按照成員歸屬改變原則對已聚類的向量進行修改,重復(fù)步驟(3.3)直到M’中的所有向量都已經(jīng)聚類,若迭代次數(shù)超過一定次數(shù),則算法結(jié)束,否則進入步驟(3.4);(3. 4)對于當(dāng)前的運動向量聚類C = IC1, C2, ... , CJ,根據(jù)代表向量移動原則,重新計算每個類Ci的代表向量;(3.5)令M是代表向量移動的各個類的成員,即M= Im1, m2,. . .,mj,若M = Φ,艮P M 為空集,則聚類算法結(jié)束,否則,進入步驟(3.6);(3. 6)對于M中的每個根據(jù)聚類原則對!^進行聚類;(3. 7)對于當(dāng)前的運動向量聚類C = (CijC2,.. ·,(;,},檢查每個(;的代表向量rep (Ci) 的直接可達向量,并按照成員歸屬改變原則進行修改;(3.8)令M’為M中無法聚類的運動向量,即M’ = {m’ m’ 2,. . .,m’ s,},并使迭代次數(shù)增加1,進入步驟(3. 3)。
6.根據(jù)權(quán)利要求1所述的基于聚類統(tǒng)計的視頻運動估計方法,其特征在于所述步驟 (3)把第i組宏塊的運動向量加入已有的運動向量聚類中,并重新聚類,其中,聚類原則如下設(shè)已有η個運動向量類Ci, i = 1,2,. . .,n,若一個運動向量m被判定為類Cj的成員, 則m滿足(a)m — rep (Cj)或(b)m> rep(Cj),且對于Vrep(Ci) m/4rep[C1、’j^i。
7.根據(jù)權(quán)利要求1所述的基于聚類統(tǒng)計的視頻運動估計方法,其特征在于所述步驟 (3)把第i組宏塊的運動向量加入已有的運動向量聚類中,并重新聚類,其中,成員歸屬改變原則如下設(shè)已有N個運動向量類C1, C2,...,Cn,若m e Ci,現(xiàn)有一個類Cj使得m e Cj,當(dāng)且僅當(dāng) m > rep (Ci)且 m — rep (Cj)。
8.根據(jù)權(quán)利要求1所述的基于聚類統(tǒng)計的視頻運動估計方法,其特征在于所述步驟 (3)把第i組宏塊的運動向量加入已有的運動向量聚類中,并重新聚類,其中,代表向量移動原則如下設(shè)類C的Mp (C) = p,若類C的成員發(fā)生變化或成員的權(quán)值發(fā)生變化,則類C的代表向量會移動,移動后r印(C) = ρ,,ρ,滿足(A)p'e {p} U {q :q e C,p — q}(B)int ra cost (C, ρ' ) = min {int ra cost (C, i), i e {p} U {q :q e C, ρ — i}} 其中,intrac0st(C,i)表示類C使用運動向量i作為代表向量所對應(yīng)的類內(nèi)平均誤差,如下述公式所示
全文摘要
一種基于聚類統(tǒng)計的視頻運動估計方法,步驟為(1)按視頻幀從右上角到左下角的對角線及其平行線對視頻幀的宏塊進行分組;(2)根據(jù)宏塊的分組編號,選取第i組宏塊,對第i組中的每一個宏塊ij進行搜索,獲取宏塊ij的運動向量;(3)把步驟(2)所得到的第i組宏塊的運動向量加入已有的運動向量聚類中,并重新聚類;(4)檢查是否有宏塊沒有進行搜索,若還有宏塊沒有進行搜索,則進入步驟(2),否則結(jié)束。本方法可以有效地對視頻進行運動估計,提高運動估計的速度和精度以及補償圖像的質(zhì)量。
文檔編號H04N7/32GK102427528SQ20111030046
公開日2012年4月25日 申請日期2011年9月30日 優(yōu)先權(quán)日2011年9月30日
發(fā)明者吳威, 周忠, 趙沁平, 陳珂 申請人:北京航空航天大學(xué)