專(zhuān)利名稱(chēng):快速運(yùn)動(dòng)估計(jì)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種快速運(yùn)動(dòng)估計(jì)方法,尤其涉及一種在數(shù)字視頻信號(hào)處理(如場(chǎng)/幀頻轉(zhuǎn)換器、去隔行掃描轉(zhuǎn)換器)或數(shù)字視頻編碼中用于提升估計(jì)矢量場(chǎng)平滑度的高性能快速運(yùn)動(dòng)估計(jì)方法。
背景技術(shù):
眾所周知,目前運(yùn)動(dòng)估計(jì)在數(shù)字視頻領(lǐng)域中的應(yīng)用大致可以分為兩類(lèi)一種是視頻壓縮編碼,另一種是視頻后處理,如場(chǎng)/幀頻轉(zhuǎn)換器、去隔行掃描轉(zhuǎn)換器等。
現(xiàn)有視頻壓縮編碼標(biāo)準(zhǔn)(如H.26x和MPEG-2)采用了基于塊運(yùn)動(dòng)補(bǔ)償+殘差DCT變換的混合結(jié)構(gòu)編碼框架,此種編碼框架要求塊運(yùn)動(dòng)估計(jì)做支撐。視頻壓縮編碼標(biāo)準(zhǔn)中的運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)補(bǔ)償是對(duì)視頻圖像作一種非線性變換,此種變換過(guò)程是以增加運(yùn)動(dòng)矢量編碼成本來(lái)降低補(bǔ)償殘差編碼成本最終實(shí)現(xiàn)總體編碼成本最小化過(guò)程。可以理解,在標(biāo)準(zhǔn)指定的固定分塊結(jié)構(gòu)前提下,也就是給定運(yùn)動(dòng)矢量編碼成本的前提下,運(yùn)動(dòng)估計(jì)應(yīng)設(shè)法降低運(yùn)動(dòng)補(bǔ)償殘差。因此,在視頻壓縮應(yīng)用中,運(yùn)動(dòng)估計(jì)可不必是真實(shí)的物理運(yùn)動(dòng),只要能夠降低補(bǔ)償殘差的運(yùn)動(dòng)估計(jì)就是最優(yōu)的。
在數(shù)字視頻掃描格式轉(zhuǎn)換和自適應(yīng)幀頻提升應(yīng)用中,運(yùn)動(dòng)估計(jì)的目標(biāo)是在根據(jù)現(xiàn)存的信息尋找視頻對(duì)象的真實(shí)運(yùn)動(dòng),進(jìn)而根據(jù)運(yùn)動(dòng)矢量所指示的參考圖像信息來(lái)插補(bǔ)當(dāng)前圖像的缺失信息。因此,在視頻后處理應(yīng)用中,對(duì)視頻對(duì)象的運(yùn)動(dòng)真實(shí)性捕捉是至關(guān)重要的,這種真實(shí)性在運(yùn)動(dòng)矢量場(chǎng)上則表現(xiàn)為相鄰運(yùn)動(dòng)矢量場(chǎng)具有內(nèi)在的平滑性。但是現(xiàn)有的運(yùn)動(dòng)估計(jì)匹配準(zhǔn)則,包括最小方差準(zhǔn)則、絕對(duì)偏差準(zhǔn)則乃至匹配像素計(jì)數(shù)準(zhǔn)則都不能反映相鄰運(yùn)動(dòng)場(chǎng)這種內(nèi)在平滑性。
為來(lái)彌補(bǔ)運(yùn)動(dòng)估計(jì)評(píng)估準(zhǔn)則存在的不足,目前廣泛采用預(yù)約束機(jī)制進(jìn)行算法改良(如美國(guó)第5212548號(hào)和第6278736號(hào)專(zhuān)利所揭示的運(yùn)動(dòng)估計(jì)方法),也就是在構(gòu)造候選運(yùn)動(dòng)矢量時(shí)預(yù)先考慮運(yùn)動(dòng)場(chǎng)內(nèi)在連續(xù)性。典型的辦法有(1)利用視頻序列的幀內(nèi)相關(guān)性,在當(dāng)前幀內(nèi)抽取當(dāng)前塊的左上方、右上方或正左方、正上方的像素塊的運(yùn)動(dòng)矢量進(jìn)行空間遞歸預(yù)測(cè);(2)利用視頻序列的幀間相關(guān)性,在前一幀內(nèi)與當(dāng)前塊對(duì)應(yīng)的一個(gè)局部領(lǐng)域內(nèi)抽取部分像素塊的運(yùn)動(dòng)矢量對(duì)當(dāng)前塊的運(yùn)動(dòng)矢量進(jìn)行時(shí)間遞歸預(yù)測(cè)。上述方法為了降低運(yùn)動(dòng)估計(jì)的計(jì)算復(fù)雜度,同時(shí)又盡可能保持運(yùn)動(dòng)估計(jì)精度,一般在都采用固定的、類(lèi)正交的局部時(shí)空抽樣結(jié)構(gòu)進(jìn)行時(shí)空遞歸預(yù)測(cè)。
然而,通常視頻對(duì)象的外形是復(fù)雜多變的,上述現(xiàn)有運(yùn)動(dòng)估計(jì)方法的固定的稀疏抽樣結(jié)構(gòu),時(shí)常造成運(yùn)動(dòng)矢量的預(yù)測(cè)矢量偏離誤差面的收斂方向,其會(huì)導(dǎo)致運(yùn)動(dòng)估計(jì)的收斂速度減慢,運(yùn)動(dòng)矢量場(chǎng)的平滑度下降等問(wèn)題。
發(fā)明內(nèi)容
為了克服上述現(xiàn)有技術(shù)的不足,而提供一種快速運(yùn)動(dòng)估計(jì)方法,從而解決目前運(yùn)動(dòng)估計(jì)方法的運(yùn)動(dòng)估計(jì)的收斂速度減慢、運(yùn)動(dòng)矢量場(chǎng)的平滑度下降的問(wèn)題。
本發(fā)明所采用的技術(shù)方案為提供一種快速運(yùn)動(dòng)估計(jì)方法,其首先將每幀圖像分成互不重疊的多個(gè)子塊,并對(duì)每個(gè)當(dāng)前像素塊確定估計(jì)矢量的空間上下文和時(shí)間上下文,其還包括根據(jù)上述空間上下文和時(shí)間上下文確定多個(gè)候選運(yùn)動(dòng)矢量,計(jì)算每個(gè)候選運(yùn)動(dòng)矢量對(duì)應(yīng)的運(yùn)動(dòng)估計(jì)匹配誤差值,并將具有最低匹配誤差值的候選運(yùn)動(dòng)矢量指定為當(dāng)前像素塊的最佳運(yùn)動(dòng)矢量的步驟。
所述每個(gè)當(dāng)前像素塊的空間上下文和時(shí)間上下文確定方法是在當(dāng)前幀內(nèi),選取當(dāng)前像素塊的正左方、左上方、正上方、右上方像素塊的運(yùn)動(dòng)矢量作為當(dāng)前像素塊運(yùn)動(dòng)矢量的空間上下文;在前一幀內(nèi),選取與當(dāng)前像素塊對(duì)應(yīng)子塊的運(yùn)動(dòng)矢量及其一個(gè)局部鄰域抽樣({T11,T12,T13,T14}或{T21,T22,T23,T24})作為當(dāng)前塊運(yùn)動(dòng)矢量的時(shí)間上下文。
所述候選運(yùn)動(dòng)矢量包括基于空間上下文生成的一個(gè)空間中值估計(jì)子(V1)、一個(gè)空間反中值估計(jì)子(V2)和一個(gè)空間更新估計(jì)子(V4),基于時(shí)間上下文生成的一個(gè)時(shí)間中值估計(jì)子(V3)和一個(gè)時(shí)間更新估計(jì)子(V5),一個(gè)零矢量(V0)。
所述空間中值估計(jì)子通過(guò)空間上下文的擴(kuò)展矢量中值濾波確定,所述空間反中值估計(jì)子通過(guò)空間上下文的擴(kuò)展矢量反中值濾波確定,所述空間更新估計(jì)子通過(guò)隨機(jī)選取一個(gè)矢量并與空間中值估計(jì)子疊加確定,所述時(shí)間中值估計(jì)子通過(guò)時(shí)間上下文的擴(kuò)展矢量中值濾波確定,所述時(shí)間更新估計(jì)子通過(guò)隨機(jī)選取一個(gè)矢量并與時(shí)間中值估計(jì)子疊加確定。
上述方法中所述空間上下文和時(shí)間上下文的擴(kuò)展矢量中值濾波包括以下步驟(a)計(jì)算輸入矢量的均值Vave,即Vave=(V0+V1+...+Vn-1)/n;(b)將Vave添加到序列的尾部(即Vn=Vave)形成一組新序列V0,V1,...,Vn-1,Vn;(c)計(jì)算每個(gè)Vi同其他矢量的距離和SD,即SD=Σj=0ndist(Vi,Vj);]]>(d)從V0,V1,...Vn中選擇使得SD取極小值的Vi作為擴(kuò)展矢量中值濾波結(jié)果輸出。
上述方法中所述空間上下文的擴(kuò)展矢量反中值濾波包括以下步驟(a)計(jì)算輸入矢量的均值Vave,即Vave=(V0+V1+...+Vn-1)/n;(b)將Vave添加到序列的尾部(即Vn=Vave)形成一組新序列V0,V1,...,Vn-1,Vn;(c)計(jì)算每個(gè)Vi同其他矢量的距離和SD,即SD=Σj=0ndist(Vi,Vj);]]>(d)從V0,V1,...Vn-1中選擇使得SD取極大值的Vi作為擴(kuò)展矢量反中值濾波結(jié)果輸出。
所述每個(gè)Vi同其他矢量的距離計(jì)算可以采用以下函數(shù)方法dist(A,B)=|Ax-Bx|+|Ay-By|。
所述每個(gè)Vi同其他矢量的距離計(jì)算也可以采用以下函數(shù)方法dist(A,B)=(Ax-Bx)2+(Ay-By)2。
所述運(yùn)動(dòng)估計(jì)匹配誤差值可以通過(guò)計(jì)算當(dāng)前像素子塊的像素值與在參考像素子塊中的相應(yīng)數(shù)目的像素值之間絕對(duì)誤差和求得。
所述運(yùn)動(dòng)估計(jì)匹配誤差值也可以通過(guò)計(jì)算當(dāng)前像素子塊的像素值與在參考像素子塊中的相應(yīng)數(shù)目的像素值之間均方差求得。
本發(fā)明的有益效果在于本發(fā)明快速運(yùn)動(dòng)估計(jì)方法通過(guò)根據(jù)空間和時(shí)間上下文確定多個(gè)候選運(yùn)動(dòng)矢量,并計(jì)算每個(gè)候選運(yùn)動(dòng)矢量對(duì)應(yīng)的運(yùn)動(dòng)估計(jì)匹配誤差值,以將具有最低匹配誤差值的候選運(yùn)動(dòng)矢量指定為當(dāng)前像素塊的最佳運(yùn)動(dòng)矢量,其可大幅度提高估計(jì)運(yùn)動(dòng)場(chǎng)的平滑度,又能加速運(yùn)動(dòng)估計(jì)的收斂速度。
圖1是本發(fā)明快速運(yùn)動(dòng)估計(jì)方法的處理流程圖;圖2是本發(fā)明快速運(yùn)動(dòng)估計(jì)方法的空間上下文和時(shí)間上下文的抽取方法示意圖;圖3是本發(fā)明快速運(yùn)動(dòng)估計(jì)方法的擴(kuò)展矢量中值濾波處理流程圖;圖4是本發(fā)明快速運(yùn)動(dòng)估計(jì)方法的擴(kuò)展矢量反中值濾波處理流程圖。
具體實(shí)施例方式
請(qǐng)參閱圖1,本發(fā)明快速運(yùn)動(dòng)估計(jì)方法包括以下步驟首先,將每幀視頻圖像分成互不重疊的圖像塊;其次,對(duì)每個(gè)當(dāng)前像素塊分別確定空間上下文{S0,S1,S2,S3}和時(shí)間上下文{T0,T1,T2,T3,T4};根據(jù)時(shí)-空上下文為每個(gè)當(dāng)前像素塊生成六個(gè)候選運(yùn)動(dòng)矢量(V0,V1,V2,V3,V4,V5);計(jì)算每個(gè)候選運(yùn)動(dòng)矢量對(duì)應(yīng)的運(yùn)動(dòng)估計(jì)匹配誤差函數(shù)J,將具有最低匹配誤差值的候選運(yùn)動(dòng)矢量指定為當(dāng)前像素塊的最佳運(yùn)動(dòng)矢量。
請(qǐng)一并參閱圖2,上述步驟中為每個(gè)當(dāng)前子塊確定空間上下文和時(shí)間上下文的方法如下首先,在當(dāng)前幀內(nèi),選取當(dāng)前塊(C)的正左方子塊的運(yùn)動(dòng)矢量S0、左上方子塊的運(yùn)動(dòng)矢量S1、正上方子塊的運(yùn)動(dòng)矢量S2、右上方子塊的運(yùn)動(dòng)矢量S3作為當(dāng)前塊運(yùn)動(dòng)矢量的空間上下文{S0,S1,S2,S3};其次,在前一幀內(nèi),選取與當(dāng)前塊(C)對(duì)應(yīng)子塊的運(yùn)動(dòng)矢量T0和它的一個(gè)局部鄰域抽樣{T11,T21,T31,T41}或{T12,T22,T32,T42}作為當(dāng)前子塊運(yùn)動(dòng)矢量的時(shí)間上下文{T0,T1,T2,T3,T4}。
上述步驟中為每個(gè)當(dāng)前子塊生成六個(gè)候選運(yùn)動(dòng)矢量方法如下(1)零矢量賦予V0,即V0=(0,0);(2)對(duì)空間上下文實(shí)施擴(kuò)展矢量中值濾波,生成的空間中值估計(jì)子賦予V1,即V1=EVM(S0,S1,S2,S3);(3)對(duì)空間上下文實(shí)施擴(kuò)展矢量反中值濾波,生成的空間反中值估計(jì)子賦予V2,即V2=EVAM(S0,S1,S2,S3);(4)對(duì)時(shí)間上下文實(shí)施擴(kuò)展矢量中值濾波,生成的時(shí)間中值估計(jì)子賦予V3,即V3=EVM(T0,T1,T2,T3,T4);
(5)從{(1/4,0),(0,1/4),(-1/4,0),(0,-1/4)}中隨機(jī)選取一個(gè)空間迭代更新子US更新V1,生成的空間更新估計(jì)子賦予V4,即V4=V1+US;(6)從{(2,0),(0,2),(-3,0),(0,-3),(1/4,0),(0,1/4),(-1/4,0),(0,-1/4)}中隨機(jī)選取一個(gè)時(shí)間迭代更新子UT更新V3,生成的時(shí)間更新估計(jì)子賦予V5,即V5=V3+UT;請(qǐng)一并參閱圖3和圖4,上述步驟中所述擴(kuò)展矢量中值濾波EVM包含如下步驟301.計(jì)算輸入矢量的均值Vave,即Vave=(V0+V1+...+Vn-1)/n;302.將Vave添加到序列的尾部(即Vn=Vave)生成一組新序列V0,V1,...,Vn-1,Vn;303.計(jì)算每個(gè)Vi同其他矢量的距離和SD,即SD=Σj=0ndist(Vi,Vj);]]>304.從V0,V1,...Vn中選擇使得SD取極小值的Vi作為擴(kuò)展矢量中值濾波結(jié)果輸出。
可以理解,與擴(kuò)展矢量中值濾波類(lèi)似,上述步驟中所述擴(kuò)展矢量反中值濾波EVAM包含如下步驟401.計(jì)算輸入矢量的均值Vave,即Vave=(V0+V1+...+Vn-1)/n;402.將Vave添加到序列的尾部(即Vn=Vave)生成一組新序列V0,V1,...,Vn-1,Vn;403.計(jì)算每個(gè)Vi同其他矢量的距離和SD,即SD=Σj=0ndist(Vi,Vj)]]>404.從V0,V1,...Vn-1中選擇使得SD取極大值的Vi作為擴(kuò)展矢量反中值濾波結(jié)果輸出。
可以理解,上述濾波運(yùn)算中運(yùn)動(dòng)矢量間的距離可以通過(guò)選擇下面兩種方法中的任意一種方法進(jìn)行計(jì)算方法1dist(A,B)=|Ax-Bx|+|Ay-By|;方法2dist(A,B)=(Ax-Bx)2+(Ay-By)2;此外,本發(fā)明快速運(yùn)動(dòng)估計(jì)方法可以通過(guò)選取下面兩種方法中的任意一種計(jì)算每個(gè)候選運(yùn)動(dòng)矢量對(duì)應(yīng)的運(yùn)動(dòng)估計(jì)匹配誤差函數(shù)值方法1計(jì)算當(dāng)前像素塊的像素值與在參考像素塊中的相應(yīng)數(shù)目的像素值之間絕對(duì)誤差和;
方法2計(jì)算當(dāng)前像素塊的像素值與在參考像素塊中的相應(yīng)數(shù)目的像素值之間均方差。
權(quán)利要求
1.一種快速運(yùn)動(dòng)估計(jì)方法,其首先將每幀視頻圖像分成互不重疊的多個(gè)子塊,并對(duì)每個(gè)當(dāng)前像素塊確定估計(jì)矢量的空間上下文和時(shí)間上下文,其特征在于其還包括根據(jù)上述空間上下文和時(shí)間上下文確定多個(gè)候選運(yùn)動(dòng)矢量,計(jì)算每個(gè)候選運(yùn)動(dòng)矢量對(duì)應(yīng)的運(yùn)動(dòng)估計(jì)匹配誤差值,并將具有最低匹配誤差值的候選運(yùn)動(dòng)矢量指定為當(dāng)前像素塊的最佳運(yùn)動(dòng)矢量的步驟。
2.如權(quán)利要求1所述的快速運(yùn)動(dòng)估計(jì)方法,其特征在于所述每個(gè)當(dāng)前像素塊的空間上下文和時(shí)間上下文確定方法是在當(dāng)前幀內(nèi),選取當(dāng)前像素塊的正左方、左上方、正上方和右上方子塊的運(yùn)動(dòng)矢量作為當(dāng)前像素塊運(yùn)動(dòng)矢量的空間上下文;在前一幀內(nèi),選取與當(dāng)前像素塊對(duì)應(yīng)子塊的運(yùn)動(dòng)矢量及其一個(gè)局部鄰域抽樣({T11,T12,T13,T14}或{T21,T22,T23,T24})作為當(dāng)前像素塊運(yùn)動(dòng)矢量的時(shí)間上下文。
3.如權(quán)利要求1所述的快速運(yùn)動(dòng)估計(jì)方法,其特征在于所述候選運(yùn)動(dòng)矢量包括基于空間上下文生成的一個(gè)空間中值估計(jì)子(V1)、一個(gè)空間反中值估計(jì)子(V2)和一個(gè)空間更新估計(jì)子(V4),基于時(shí)間上下文生成的一個(gè)時(shí)間中值估計(jì)子(V3)和一個(gè)時(shí)間更新估計(jì)子(V5),一個(gè)零矢量(V0)。
4.如權(quán)利要求3所述的快速運(yùn)動(dòng)估計(jì)方法,其特征在于所述空間中值估計(jì)子通過(guò)空間上下文的擴(kuò)展矢量中值濾波確定,所述空間反中值估計(jì)子通過(guò)空間上下文的擴(kuò)展矢量反中值濾波確定,所述空間更新估計(jì)子通過(guò)隨機(jī)選取一個(gè)矢量并與空間中值估計(jì)子疊加確定,所述時(shí)間中值估計(jì)子通過(guò)時(shí)間上下文的擴(kuò)展矢量中值濾波確定,所述時(shí)間更新估計(jì)子通過(guò)隨機(jī)選取一個(gè)矢量并與時(shí)間中值估計(jì)子疊加確定。
5.如權(quán)利要求4所述的快速運(yùn)動(dòng)估計(jì)方法,其特征在于所述空間上下文和時(shí)間上下文的擴(kuò)展矢量中值濾波包括以下步驟(a)計(jì)算輸入矢量的均值Vave,即Vave=(V0+V1+...+Vn-1)/n;(b)將Vave添加到序列的尾部(即Vn=Vave)形成一組新序列V0,V1,...,Vn-1,Vn;(c)計(jì)算每個(gè)Vi同其他矢量的距離和SD,即SD=Σj=0ndist(Vi,Vj);]]>(d)從V0,V1,...Vn中選擇使得SD取極小值的Vi作為擴(kuò)展矢量中值濾波結(jié)果輸出。
6.如權(quán)利要求4所述的快速運(yùn)動(dòng)估計(jì)方法,其特征在于所述空間上下文的擴(kuò)展矢量反中值濾波包括以下步驟(a)計(jì)算輸入矢量的均值Vave,即Vave=(V0+V1+...+Vn-1)/n;(b)將Vave添加到序列的尾部(即Vn=Vave)形成一組新序列V0,V1,...,Vn-1,Vn;(c)計(jì)算每個(gè)Vi同其他矢量的距離和SD,即SD=Σj=0ndist(Vi,Vj);]]>(d)從V0,V1,...Vn-1中選擇使得SD取極大值的Vi作為擴(kuò)展矢量中值濾波結(jié)果輸出。
7.如權(quán)利要求5或6所述的快速運(yùn)動(dòng)估計(jì)方法,其特征在于所述每個(gè)Vi同其他矢量的距離計(jì)算采用以下函數(shù)方法dist(A,B)=|Ax-Bx|+|Ay-By|。
8.如權(quán)利要求5或6所述的快速運(yùn)動(dòng)估計(jì)方法,其特征在于所述每個(gè)Vi同其他矢量的距離計(jì)算采用以下函數(shù)方法dist(A,B)=(Ax-Bx)2+(Ay-By)2。
9.如權(quán)利要求1所述的快速運(yùn)動(dòng)估計(jì)方法,其特征在于所述運(yùn)動(dòng)估計(jì)匹配誤差值是通過(guò)計(jì)算當(dāng)前像素塊的像素值與在參考像素塊中的相應(yīng)數(shù)目的像素值之間絕對(duì)誤差和求得。
10.如權(quán)利要求1所述的快速運(yùn)動(dòng)估計(jì)方法,其特征在于所述運(yùn)動(dòng)估計(jì)匹配誤差值是通過(guò)計(jì)算當(dāng)前像素塊的像素值與在參考像素塊中的相應(yīng)數(shù)目的像素值之間均方差求得。
全文摘要
本發(fā)明涉及一種快速運(yùn)動(dòng)估計(jì)方法,其首先將每幀視頻圖像分成互不重疊的多個(gè)子塊,并對(duì)每個(gè)當(dāng)前像素塊確定估計(jì)矢量的空間上下文和時(shí)間上下文,其還包括根據(jù)上述空間上下文和時(shí)間上下文確定多個(gè)候選運(yùn)動(dòng)矢量,計(jì)算每個(gè)候選運(yùn)動(dòng)矢量對(duì)應(yīng)的運(yùn)動(dòng)估計(jì)匹配誤差值,并將具有最低運(yùn)動(dòng)估計(jì)匹配誤差值的候選運(yùn)動(dòng)矢量指定為當(dāng)前像素塊的最佳運(yùn)動(dòng)矢量的步驟。本發(fā)明快速運(yùn)動(dòng)估計(jì)方法通過(guò)根據(jù)空間和時(shí)間上下文確定多個(gè)候選運(yùn)動(dòng)矢量,并計(jì)算每個(gè)候選運(yùn)動(dòng)矢量對(duì)應(yīng)的運(yùn)動(dòng)估計(jì)匹配誤差值,以將具有最低匹配誤差值的候選運(yùn)動(dòng)矢量指定為當(dāng)前像素塊的最佳運(yùn)動(dòng)矢量,其可大幅度提高估計(jì)運(yùn)動(dòng)場(chǎng)的平滑度,又能加速運(yùn)動(dòng)估計(jì)的收斂速度。
文檔編號(hào)H04N7/01GK1925614SQ20051003697
公開(kāi)日2007年3月7日 申請(qǐng)日期2005年8月30日 優(yōu)先權(quán)日2005年8月30日
發(fā)明者張宗平, 劉鯤, 彭吉虎, 田華 申請(qǐng)人:深圳清華大學(xué)研究院