專利名稱:一種多視點(diǎn)視頻圖像視差估計(jì)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及采用平行相機(jī)系統(tǒng)的多視點(diǎn)視頻圖像信號(hào)的編碼方法,尤其是涉及一種多視點(diǎn)視頻圖像視差估計(jì)的方法。
背景技術(shù):
在真實(shí)世界中,觀察者所看到的視覺(jué)內(nèi)容取決于觀察者相對(duì)于被觀察對(duì)象的位置,觀察者可以自由地選擇各個(gè)不同的角度去觀察和分析事物。在傳統(tǒng)的視頻系統(tǒng)中,真實(shí)場(chǎng)景的相對(duì)于一個(gè)視點(diǎn)的畫面是由攝像師或?qū)а葸x擇決定的,用戶只能被動(dòng)地觀看攝像機(jī)在單一視點(diǎn)上所攝制的視頻圖像序列,而不能自由選擇其它視點(diǎn)來(lái)觀察真實(shí)場(chǎng)景。這些單方向上的視頻序列只能反映真實(shí)世界場(chǎng)景的一個(gè)側(cè)面。自由視點(diǎn)視頻系統(tǒng)可以使用戶自由地選擇視點(diǎn)去觀看真實(shí)世界場(chǎng)景中的一定范圍內(nèi)的任意側(cè)面,被國(guó)際標(biāo)準(zhǔn)組織MPEG稱為下一代視頻系統(tǒng)的發(fā)展方向。
多視點(diǎn)視頻圖像技術(shù)是自由視點(diǎn)視頻技術(shù)中的一個(gè)核心環(huán)節(jié),它能提供所拍攝場(chǎng)景的不同角度的視頻圖像信息。圖1為多視點(diǎn)平行相機(jī)系統(tǒng)成像示意圖,其中n個(gè)相機(jī)(或攝像機(jī))被平行地放置以拍攝多視點(diǎn)視頻圖像。利用多視點(diǎn)視頻信號(hào)中多個(gè)視點(diǎn)的信息可以合成用戶所選擇的任意視點(diǎn)的圖像信息,達(dá)到自由切換任意視點(diǎn)圖像的目的。但是多視點(diǎn)視頻信號(hào)的數(shù)據(jù)量隨著視點(diǎn)數(shù)目的增加而成倍增加,因此需要相應(yīng)的多視點(diǎn)視頻編碼壓縮技術(shù)來(lái)減少其龐大的數(shù)據(jù)量,以節(jié)省多視點(diǎn)視頻信號(hào)傳送的帶寬和存儲(chǔ)的空間。
多視點(diǎn)視頻信號(hào)中各視點(diǎn)圖像間存在著明顯的數(shù)據(jù)冗余,即各視點(diǎn)圖像間具有很高的相似性。與傳統(tǒng)的視頻編碼中利用運(yùn)動(dòng)估計(jì)與補(bǔ)償來(lái)消除時(shí)間上的數(shù)據(jù)冗余類似,利用合理的視差估計(jì)與補(bǔ)償方法能有效消除各視點(diǎn)圖像間的數(shù)據(jù)冗余,達(dá)到對(duì)多視點(diǎn)視頻信號(hào)有效壓縮的目的。圖2所示為視差估計(jì)的示意圖,視差估計(jì)與補(bǔ)償技術(shù)是利用不同視點(diǎn)圖像間的相似性,對(duì)目標(biāo)視點(diǎn)圖像中的正在編碼的塊B尋找其在參考視點(diǎn)圖像中的最佳對(duì)應(yīng)塊P作為塊B的預(yù)測(cè)信號(hào),并以視差矢量表示塊P相對(duì)于塊B的位置偏移,然后令D=B-P為塊B的預(yù)測(cè)殘差信號(hào),由于預(yù)測(cè)殘差信號(hào)D相對(duì)于原信號(hào)B具有更小的幅值,因此相對(duì)于直接對(duì)原信號(hào)B編碼而言,對(duì)預(yù)測(cè)殘差信號(hào)D進(jìn)行編碼所需的比特?cái)?shù)大為降低,從而提高了壓縮率。
視差估計(jì)是多視點(diǎn)視頻編碼中的關(guān)鍵技術(shù)之一,也是整個(gè)多視點(diǎn)視頻信號(hào)編碼中計(jì)算量最大的部分之一。多視點(diǎn)視頻信號(hào)視差估計(jì)性能的優(yōu)劣直接影響到整個(gè)多視點(diǎn)視頻編碼器的編碼速度、壓縮率和重構(gòu)的多視點(diǎn)圖像的質(zhì)量。圖3為一種多視點(diǎn)圖像的視差估計(jì)補(bǔ)償預(yù)測(cè)示意圖,其中最左和最右的視點(diǎn)圖像被作為2個(gè)參考視點(diǎn)圖像,其余位于中間的視點(diǎn)圖像被作為目標(biāo)視點(diǎn)圖像。目標(biāo)視點(diǎn)圖像可以通過(guò)多視點(diǎn)視差估計(jì)由最左和最右的2個(gè)參考視點(diǎn)圖像進(jìn)行預(yù)測(cè)得到。這樣,在編碼端只要對(duì)左右2個(gè)參考視點(diǎn)圖像采用普通視頻編碼技術(shù)進(jìn)行編碼,而對(duì)其余的目標(biāo)視點(diǎn)圖像的視差矢量和相應(yīng)的殘差信號(hào)進(jìn)行編碼,從而有效降低多視點(diǎn)視頻信號(hào)編碼所需碼率。多視點(diǎn)視差估計(jì)也可以采用2個(gè)以上的參考視點(diǎn),以提高預(yù)測(cè)的準(zhǔn)確性,從而提高重構(gòu)的多視點(diǎn)圖像的質(zhì)量;但隨著參考視點(diǎn)數(shù)量的增加,多視點(diǎn)視差估計(jì)的計(jì)算復(fù)雜度也隨之成倍增長(zhǎng)。
多視點(diǎn)視差估計(jì)的計(jì)算復(fù)雜度非常高,是限制多視點(diǎn)視頻系統(tǒng)實(shí)時(shí)應(yīng)用的一個(gè)技術(shù)瓶頸。同時(shí),多視點(diǎn)視差估計(jì)的預(yù)測(cè)準(zhǔn)確性對(duì)提高多視點(diǎn)視頻系統(tǒng)的編碼壓縮性能有重要作用。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種多視點(diǎn)視頻圖像視差估計(jì)的方法,在保證多視點(diǎn)視差估計(jì)準(zhǔn)確性的同時(shí),降低視差估計(jì)的計(jì)算復(fù)雜度。
本發(fā)明解決上述技術(shù)問(wèn)題所采用的技術(shù)方案為一種多視點(diǎn)視頻圖像視差估計(jì)的方法首先令具有n個(gè)相機(jī)的平行相機(jī)系統(tǒng)拍攝的多視點(diǎn)圖像從左至右表示為視點(diǎn)圖像k,1≤k≤n,將k=1的最左視點(diǎn)圖像和k=n的最右視點(diǎn)圖像作為參考視點(diǎn)圖像,其余2≤k≤n-1的中間視點(diǎn)圖像作為目標(biāo)視點(diǎn)圖像,并令各視點(diǎn)圖像編碼順序?yàn)橄染幋a參考視點(diǎn)圖像,然后按從左到右或從右到左的次序依次編碼各目標(biāo)視點(diǎn)圖像;正在編碼處理的目標(biāo)視點(diǎn)圖像稱為當(dāng)前目標(biāo)視點(diǎn)圖像k,當(dāng)前目標(biāo)視點(diǎn)圖像以塊為單位進(jìn)行視差估計(jì)與編碼,其中正在編碼處理的塊稱為當(dāng)前塊c;當(dāng)前塊c在當(dāng)前目標(biāo)視點(diǎn)圖像內(nèi)的相鄰塊中已完成編碼處理的上塊a、右上塊b及左塊d通稱為視點(diǎn)內(nèi)相鄰塊,而當(dāng)前塊c在當(dāng)前目標(biāo)視點(diǎn)圖像的前一相鄰視點(diǎn)圖像中的對(duì)應(yīng)塊稱為視點(diǎn)間相鄰塊e,然后進(jìn)行以下具體步驟的操作(1)以最左視點(diǎn)為參考視點(diǎn),對(duì)最右視點(diǎn)圖像進(jìn)行視差估計(jì),獲得最右視點(diǎn)圖像相對(duì)于最左視點(diǎn)圖像的視差矢量{DVL→R};以最右視點(diǎn)為參考視點(diǎn),對(duì)最左視點(diǎn)圖像進(jìn)行視差估計(jì),獲得最左視點(diǎn)圖像相對(duì)于最右視點(diǎn)圖像的視差矢量{DVR→L};(2)分別計(jì)算當(dāng)前目標(biāo)視點(diǎn)圖像k中的當(dāng)前塊c及其3個(gè)視點(diǎn)內(nèi)相鄰塊a、b、d在8×8的Hadamard矩陣中位于(0,0)、(0,2)、(2,0)三個(gè)特定位置的Hadamard系數(shù);這里,8×8的Hadamard變換表示為G=HFH*,其中,F(xiàn)為輸入的8×8圖像塊信號(hào),G為Hadamard系數(shù)矩陣,是變換輸出信號(hào),H為Hadamard變換矩陣,H*為H的共軛矩陣,H=18111111111-11-11-11-111-1-111-1-11-1-111-1-111111-1-1-1-11-11-1-11-1111-1-1-1-1111-1-11-111-1;]]>(3)分別計(jì)算當(dāng)前塊c和視點(diǎn)內(nèi)相鄰塊a、b、d的Hadamard相似度系數(shù)Rna、Rnb、Rnd,令Rn=min(Rna,Rnb,Rnd),min()為取最小值運(yùn)算,將Rn與視點(diǎn)內(nèi)相似度系數(shù)閾值RT進(jìn)行比較,若Rn<RT,則轉(zhuǎn)到步驟(4),否則轉(zhuǎn)到步驟(5);(4)以具有最小Hadamard相似度系數(shù)的視點(diǎn)內(nèi)相鄰塊的參考視點(diǎn)和視差矢量作為當(dāng)前塊c的預(yù)測(cè)參考視點(diǎn)和預(yù)測(cè)視差矢量DVc(0),用該預(yù)測(cè)視差矢量確定當(dāng)前塊c在預(yù)測(cè)參考視點(diǎn)圖像中的預(yù)測(cè)塊,計(jì)算當(dāng)前塊c與其預(yù)測(cè)塊之間的絕對(duì)差和SADc(0),令SADa、SADb、SADd分別為當(dāng)前目標(biāo)視點(diǎn)圖像內(nèi)已完成編碼處理的相鄰塊a、b、d與其各自的預(yù)測(cè)信號(hào)Pa、Pb、Pd之間的絕對(duì)差和,若SADc(0)≤median(SADa,SADb,SADd),median()為取中值運(yùn)算,則該預(yù)測(cè)視差矢量DVc(0)即作為當(dāng)前塊c的最佳視差矢量DVc,轉(zhuǎn)到步驟(9),否則轉(zhuǎn)到步驟(7);(5)根據(jù)當(dāng)前塊c所在目標(biāo)視點(diǎn)k、當(dāng)前塊c的視點(diǎn)間相鄰塊e所在視點(diǎn)、最左和最右視點(diǎn)之間的距離,分別利用最左、最右視點(diǎn)圖像之間的視差矢量{DVL→R}和{DVR→L},通過(guò)視差矢量插值得到當(dāng)前塊c相對(duì)于最左和最右視點(diǎn)中對(duì)應(yīng)塊的位移作為其預(yù)測(cè)視差矢量DVcl(0)和DVcr(0),計(jì)算當(dāng)前塊c在8×8矩陣中位于(0,4)、(4,0)和(4,4)三個(gè)特定位置的Hadamard系數(shù)以及視點(diǎn)間相鄰塊e位于(0,0)、(0,2)、(2,0)、(0,4)、(4,0)和(4,4)六個(gè)特定位置的Hadamard系數(shù),在此基礎(chǔ)上計(jì)算當(dāng)前塊c和其視點(diǎn)間相鄰塊e的Hadamard相似度系數(shù)Rj,若Rj小于視點(diǎn)間相似度系數(shù)閾值Rt則轉(zhuǎn)到步驟(6),否則轉(zhuǎn)到步驟(8);(6)若最左視點(diǎn)較最右視點(diǎn)距離當(dāng)前目標(biāo)視點(diǎn)k更近,則選擇最左視點(diǎn)為當(dāng)前塊c的預(yù)測(cè)參考視點(diǎn),DVcl(0)為預(yù)測(cè)視差矢量,即DVc(0)=DVcl(0);反之選擇最右視點(diǎn)為預(yù)測(cè)參考視點(diǎn),DVcr(0)為預(yù)測(cè)視差矢量,即DVc(0)=DVcr(0),若|DVcl(0)-DVcr(0)|<1,則本步驟所述的預(yù)測(cè)視差矢量DVc(0)即作為當(dāng)前塊c的最佳視差矢量DVc,轉(zhuǎn)到步驟(9),否則轉(zhuǎn)到步驟(7);(7)對(duì)于當(dāng)前塊c,以預(yù)測(cè)參考視點(diǎn)為參考視點(diǎn),預(yù)測(cè)視差矢量DVc(0)為初值進(jìn)行單參考視點(diǎn)最佳匹配塊搜索以找到最佳視差矢量DVc,轉(zhuǎn)到步驟(9);(8)根據(jù)預(yù)測(cè)視差矢量DVcl(0)和DVcr(0)分別在最左和最右2個(gè)參考視點(diǎn)中進(jìn)行最佳塊匹配搜索,比較在最左參考視點(diǎn)中獲得的最佳塊和在最右參考視點(diǎn)中獲得的最佳塊的絕對(duì)差和SAD,取最小者作為最佳視差矢量DVc和最佳參考視點(diǎn),轉(zhuǎn)到步驟(9);(9)結(jié)束當(dāng)前塊c的視差估計(jì)過(guò)程,并繼續(xù)進(jìn)行下一塊的視差估計(jì)過(guò)程,直至完成所有目標(biāo)視點(diǎn)中的所有塊的視差估計(jì)過(guò)程,這里當(dāng)前塊的下一塊是指當(dāng)前塊的右塊,若當(dāng)前塊為所在行的最右塊,則其下一塊為下一行的最左塊。
視點(diǎn)內(nèi)相鄰塊的Hadamard相似度系數(shù)為Rn=(C0,0+C0,2+C2,0)/S0,0,其中,Ci,j=|G1(i,j)-G2(i,j)|為2個(gè)圖像塊位置為(i,j)的Hadamard系數(shù)差的絕對(duì)值,Si,j=|G1(i,j)+G2(i,j)|為2個(gè)圖像塊位置為(i,j)的Hadamard系數(shù)和的絕對(duì)值。
視點(diǎn)間相鄰塊的Hadamard相似度系數(shù)Rj=(C0,0+C0,2+C0,4+C2,0+C4,0+C4,4)/(S0,0+S4,4),其中,Ci,j=|G1(i,j)-G2(i,j)|為2個(gè)圖像塊位置為(i,j)的Hadamard系數(shù)差的絕對(duì)值,Si,j=|G1(i,j)+G2(i,j)|為2個(gè)圖像塊位置為(i,j)的Hadamard系數(shù)和的絕對(duì)值。
對(duì)于16×16的宏塊,采用其4個(gè)8×8子塊相應(yīng)位置的Hadamard系數(shù)的平均值計(jì)算相似度系數(shù)。
與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于基于Hadamard相似度與相鄰塊特征,利用多視點(diǎn)圖像間和目標(biāo)視點(diǎn)圖像中相鄰塊之間的相關(guān)性,通過(guò)目標(biāo)視點(diǎn)圖像中已完成視差估計(jì)的當(dāng)前塊的相鄰塊的視差估計(jì)結(jié)果,快速預(yù)測(cè)當(dāng)前塊的預(yù)測(cè)視差矢量和預(yù)測(cè)參考視點(diǎn),并通過(guò)最佳視差矢量判定和快速搜索終止準(zhǔn)則,使得目標(biāo)視點(diǎn)圖像中多數(shù)塊的視差估計(jì)過(guò)程提前終止,從而在保證編碼質(zhì)量的前提下,大大減少多視點(diǎn)圖像視差估計(jì)的計(jì)算復(fù)雜度,提高多視點(diǎn)視頻圖像編碼系統(tǒng)的編碼速度。
與采用全搜索的視差估計(jì)方法相比,采用本發(fā)明的視差估計(jì)方法時(shí)整個(gè)編碼過(guò)程的時(shí)耗僅相當(dāng)于前者的1.53%~2.22%左右,而PSNR的下降不超過(guò)0.08dB,碼流的比特?cái)?shù)增加不超過(guò)2.43%;而與現(xiàn)有的快速視差估計(jì)方法DLS(方向—有限搜索方法)相比,采用本發(fā)明的快速視差估計(jì)方法時(shí)整個(gè)編碼過(guò)程的時(shí)耗也僅相當(dāng)于DLS的11.62%~14.05%左右,而碼流的比特?cái)?shù)還略有節(jié)省,且PSNR基本相當(dāng)。
圖1為多視點(diǎn)平行相機(jī)系統(tǒng)成像示意圖;圖2為視差估計(jì)示意圖;圖3為多視點(diǎn)圖像的視差估計(jì)補(bǔ)償預(yù)測(cè)示意圖;圖4為相鄰塊定義示意圖;圖5為用于確定視點(diǎn)間相鄰塊位置的多視點(diǎn)視差插值示意圖;圖6為用視點(diǎn)間相鄰塊視差矢量預(yù)測(cè)當(dāng)前塊的視差矢量示意圖;圖7為最佳匹配塊搜索過(guò)程示意圖;圖8為本發(fā)明的快速多視點(diǎn)視頻圖像視差估計(jì)流程圖;
圖9為“Xmas”多視點(diǎn)測(cè)試集10個(gè)視點(diǎn)中的3個(gè)視點(diǎn)圖像;圖10為“Cup”多視點(diǎn)測(cè)試集10個(gè)視點(diǎn)中的3個(gè)視點(diǎn)圖像;圖11為“Note”多視點(diǎn)測(cè)試集10個(gè)視點(diǎn)中的3個(gè)視點(diǎn)圖像;圖12為“Xmas”多視點(diǎn)測(cè)試集的編碼率失真性能比較曲線圖;圖13為“Cup”多視點(diǎn)測(cè)試集的編碼率失真性能比較曲線圖;圖14為“Note”多視點(diǎn)測(cè)試集的編碼率失真性能比較曲線圖。
具體實(shí)施例方式
以下結(jié)合附圖實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)描述。
這里僅以一個(gè)目標(biāo)視點(diǎn)圖像的視差估計(jì)為例進(jìn)行說(shuō)明,其余各目標(biāo)視點(diǎn)圖像的處理方法與之相同。
下面首先描述本發(fā)明定義的“相鄰塊”概念和基于Hadamard變換的圖像塊相似度系數(shù)。
相鄰塊的定義如圖4所示塊a、b、d分別為與當(dāng)前塊c在同一目標(biāo)視點(diǎn)圖像k內(nèi)的上塊、右上塊和左塊,稱為視點(diǎn)內(nèi)相鄰塊,它們是當(dāng)前目標(biāo)視點(diǎn)圖像k內(nèi)已完成編碼處理的塊;塊e為塊c在相鄰視點(diǎn)圖像k-1中的對(duì)應(yīng)塊,稱為視點(diǎn)間相鄰塊,相鄰視點(diǎn)圖像k-1已先于當(dāng)前目標(biāo)視點(diǎn)圖像k完成編碼處理。塊e的位置采用如圖5所示的視差插值方式確定先以最左視點(diǎn)圖像為參考視點(diǎn)對(duì)最右視點(diǎn)圖像進(jìn)行視差估計(jì),即對(duì)最右視點(diǎn)圖像中每個(gè)塊(用實(shí)線表示的方塊)尋找其在最左視點(diǎn)圖像中的最佳匹配塊,得到視差矢量DVL→R,然后對(duì)于當(dāng)前目標(biāo)視點(diǎn)圖像k根據(jù)其視點(diǎn)位置與最左和最右視點(diǎn)位置的距離利用視差矢量DVL-R插值確定當(dāng)前目標(biāo)視點(diǎn)圖像中塊c在相鄰視點(diǎn)圖像k-1中的對(duì)應(yīng)塊e的位置。圖5中帶箭頭的實(shí)線表示以最左視點(diǎn)為參考視點(diǎn)對(duì)最右視點(diǎn)圖像進(jìn)行視差估計(jì),得到最左和最右視點(diǎn)圖像間的視差矢量{DVL→R},帶箭頭的虛線表示目標(biāo)視點(diǎn)視差插值,用以確定視點(diǎn)間相鄰塊的位置關(guān)系,以及當(dāng)前塊c在最左參考視點(diǎn)的預(yù)測(cè)視差矢量。顯然,同樣可以以最右視點(diǎn)圖像為參考視點(diǎn)來(lái)確定塊e的位置。
對(duì)于當(dāng)前塊與其相鄰塊的相似性判斷,本發(fā)明利用Hadamard系數(shù)來(lái)確定圖像塊間的相關(guān)性。8×8的Hadamard變換表示為G=HFH*,其中,F(xiàn)為8×8圖像塊,是變換輸入信號(hào),G為Hadamard系數(shù)矩陣,是變換輸出信號(hào),H為Hadamard變換矩陣,H*為H的共軛矩陣,
H=18111111111-11-11-11-111-1-111-1-11-1-111-1-111111-1-1-1-11-11-1-11-1111-1-1-1-1111-1-11-111-1.]]>定義視點(diǎn)內(nèi)相鄰塊的Hadamard相似度系數(shù)Rn=(C0,0+C0,2+C2,0)/S0,0,用于判斷當(dāng)前塊c與視點(diǎn)內(nèi)相鄰塊a、b、d的相關(guān)性;定義視點(diǎn)間相鄰塊的Hadamard相似度系數(shù)Rj=(C0,0+C0,2+C0,4+C2,0+C4,0+C4,4)/(S0,0+S4,4),用于判斷當(dāng)前塊c與視點(diǎn)間相鄰塊e的相關(guān)性。這里,Ci,j=|G1(i,j)-G2(i,j)|,為兩圖像塊位置為(i,j)的Hadamard系數(shù)差的絕對(duì)值,Si,j=|G1(i,j)+G2(i,j)|,為兩圖像塊位置為(i,j)的Hadamard系數(shù)和的絕對(duì)值。對(duì)于16×16的宏塊,采用其4個(gè)8×8子塊相應(yīng)位置的Hadamard系數(shù)的平均值計(jì)算相似度系數(shù)。事實(shí)上,本發(fā)明不需要計(jì)算所有的64個(gè)Hadamard系數(shù),而只要計(jì)算8×8矩陣中(0,0)、(0,2)、(2,0)、(0,4)、(4,0)和(4,4)六個(gè)特定位置的Hadamard系數(shù)即可。相似度系數(shù)越小,表明進(jìn)行比較的兩圖像塊越相似。
在上述相鄰塊和基于Hadamard變換的相似度系數(shù)定義的基礎(chǔ)上,描述本發(fā)明的快速多視點(diǎn)視頻圖像視差估計(jì)方法步驟如下首先分別以最左和最右視點(diǎn)為參考視點(diǎn),如圖2所示在最左和最右視點(diǎn)圖像間進(jìn)行視差估計(jì),獲得最左、最右視點(diǎn)圖像之間的雙向視差矢量{DVL→R}和{DVR→L};對(duì)于當(dāng)前目標(biāo)視點(diǎn)圖像k中的當(dāng)前塊c,分別計(jì)算它和三個(gè)視點(diǎn)內(nèi)相鄰塊a、b、d的Hadamard相似度系數(shù)Rna、Rnb、Rnd,令Rn為三者中的最小數(shù),即Rn=min(Rna,Rnb,Rnd),將Rn與視點(diǎn)內(nèi)相鄰塊相似度閾值RT進(jìn)行比較,當(dāng)Rn<RT時(shí),則將當(dāng)前塊c看作同具有最小視點(diǎn)內(nèi)相鄰塊Hadamard相似度系數(shù)的塊是同一區(qū)域的,具有相同的性質(zhì),因此以該已編碼塊的參考視點(diǎn)作為c塊的預(yù)測(cè)參考視點(diǎn),并且以該塊的視差矢量作為c塊的預(yù)測(cè)視差矢量DVc(0)。這里視點(diǎn)內(nèi)相鄰塊相似度閾值RT為一經(jīng)驗(yàn)常數(shù),可通過(guò)實(shí)驗(yàn)比較分析RT取不同值時(shí)的多視點(diǎn)視頻圖像編碼性能,從中確定一個(gè)合適的值,使得在編碼速度和解碼信號(hào)質(zhì)量之間獲得平衡,即二者都是可接受的。
本發(fā)明采用絕對(duì)差和SAD來(lái)衡量?jī)蓚€(gè)8×8圖像塊的差異,SAD=Σi=07Σj=07|Bij-Pij|]]>Bij為目標(biāo)視點(diǎn)圖像的某一塊中位置為(i,j)的像素值,Pij為參考視點(diǎn)圖像的某一塊中位置為(i,j)的像素值,如圖2所示,P塊為B塊在參考視點(diǎn)圖像中尋找的匹配塊,是B塊的預(yù)測(cè)塊。令SADa、SADb、SADd分別為a、b、d三個(gè)塊與它們各自所對(duì)應(yīng)的預(yù)測(cè)塊之間的SAD值,SADc(0)表示當(dāng)前塊c與用預(yù)測(cè)參考視點(diǎn)和預(yù)測(cè)視差矢量DVc(0)確定的預(yù)測(cè)塊之間的SAD值。若滿足SADc(0)≤median(SADa,SADb,SADd),其中median()表示取中值運(yùn)算,則令當(dāng)前塊c的最佳視差矢量DVc等于其預(yù)測(cè)視差矢量DVc(0),并結(jié)束當(dāng)前塊c的視差估計(jì),轉(zhuǎn)而繼續(xù)進(jìn)行下一塊的視差估計(jì)。反之,若條件不滿足,則以DVc(0)為初始預(yù)測(cè)視差矢量在預(yù)測(cè)參考視點(diǎn)圖像中進(jìn)行小范圍的搜索,以尋找當(dāng)前塊c在參考視點(diǎn)圖像中的最佳匹配塊,得到當(dāng)前塊c的最佳視差矢量DVc。
若前述當(dāng)前塊c與它的3個(gè)視點(diǎn)內(nèi)相鄰塊之間的最小Hadamard相似度系數(shù)Rn≥RT,則轉(zhuǎn)而判斷當(dāng)前塊c和其視點(diǎn)間相鄰塊e的相關(guān)性,若當(dāng)前塊c與其相鄰塊e的視點(diǎn)間相鄰塊Hadamard相似度系數(shù)Rj<Rt,Rt為視點(diǎn)間相鄰塊相似度閾值,則認(rèn)為e塊就是c塊在前一個(gè)視點(diǎn)圖像中的匹配塊,這時(shí)c塊的參考視點(diǎn)就采用e塊的參考視點(diǎn)。與視點(diǎn)內(nèi)相鄰塊相似度閾值相類似,視點(diǎn)間相鄰塊相似度閾值Rt也為一由實(shí)驗(yàn)確定的經(jīng)驗(yàn)常數(shù)。由于采用視差插值確定e塊位置,會(huì)造成相鄰視點(diǎn)圖像k-1中的e塊如圖6所示由小塊e1、e2、e3、e4組成。因此,e塊的參考視點(diǎn)由4小塊中面積最大塊的參考視點(diǎn)決定。e塊的視差矢量DVe=(el·DVe1+e2·DVe2+e3·DVe3+e4·DVe4)/64,即e塊的視差矢量由4小塊各自的視差矢量DVe1、DVe2、DVe3、DVe4加權(quán)平均得到。根據(jù)當(dāng)前視點(diǎn)k和相鄰視點(diǎn)k-1及其與參考視點(diǎn)之間的距離,可以用DVe插值得到c塊的預(yù)測(cè)視差矢量DVc(0)。圖5所示的DVc(0)的獲取是以最左視點(diǎn)為參考視點(diǎn)得到的,該預(yù)測(cè)視差矢量DVc(0)表示為DVcl(0);相似地,如果DVc(0)的獲取是以最右視點(diǎn)為參考視點(diǎn)得到的,則該預(yù)測(cè)視差矢量表示為DVcr(0)。令當(dāng)前塊c的預(yù)測(cè)視差矢量 如果|DVcl(0)-DVcr(0)|<1,則令當(dāng)前塊c的最佳視差矢量DVc等于DVc(0),并結(jié)束當(dāng)前塊c的視差估計(jì),轉(zhuǎn)而繼續(xù)進(jìn)行下一塊的視差估計(jì)。反之,若條件不滿足,則以DVc(0)為初始預(yù)測(cè)視差矢量在預(yù)測(cè)參考視點(diǎn)圖像中進(jìn)行小范圍的搜索,以尋找當(dāng)前塊c在參考視點(diǎn)圖像中的最佳匹配塊,得到當(dāng)前塊c的最佳視差矢量DVc。
若當(dāng)前塊c與其相鄰塊e的視點(diǎn)間相鄰塊Hadamard相似度系數(shù)Rj≥Rt,則表明當(dāng)前塊c與其視點(diǎn)間相鄰塊e也不盡相同,可能不對(duì)應(yīng)于同一區(qū)域,因此必須進(jìn)行多參考視點(diǎn)的最佳匹配塊搜索,即分別以最左和最右視點(diǎn)為參考視點(diǎn),以DVcl(0)和DVcr(0)為相應(yīng)的預(yù)測(cè)視差矢量,在最左和最右視點(diǎn)圖像中進(jìn)行小范圍的搜索,以尋找當(dāng)前塊c在這2個(gè)參考視點(diǎn)圖像中的最佳匹配塊,然后取相應(yīng)SAD值小的參考視點(diǎn)和視差矢量作為當(dāng)前塊c的預(yù)測(cè)結(jié)果,得到當(dāng)前塊c的最佳視差矢量DVc。
對(duì)于以預(yù)測(cè)視差矢量DVc(0)作為初始值在參考視點(diǎn)圖像中進(jìn)行小范圍最佳匹配塊搜索過(guò)程,本發(fā)明采用了快速搜索算法和SAD閾值作為搜索終止條件以進(jìn)一步提高搜索速度。如圖7所示,假定點(diǎn)(x,y)是由預(yù)測(cè)視差矢量DVc(0)確定的匹配塊位置,稱為預(yù)測(cè)中心點(diǎn),先用預(yù)測(cè)中心點(diǎn)和其左右2個(gè)相鄰點(diǎn)(圖7中均標(biāo)記為“1”的點(diǎn))的SAD確定主搜索方向和次搜索方向。主搜索方向?qū)?yīng)SAD值相對(duì)較小的點(diǎn)的方向,例如圖7中假設(shè)(x,y)右邊相鄰點(diǎn)的SAD值相對(duì)更小,因此將向右搜索作為主搜索方向。對(duì)于主搜索方向先用間隔2個(gè)像素點(diǎn)的大模板找到一個(gè)較好的匹配點(diǎn),即在已搜索的點(diǎn)中其SAD值最小的點(diǎn),例如圖7中的點(diǎn)(x+4,y),然后再在該“較好匹配點(diǎn)”及其左右相鄰點(diǎn)中確定具有最小SAD值的主搜索方向上的最佳匹配點(diǎn);對(duì)于次搜索方向采用折半查找法尋找次搜索方向上的最佳匹配點(diǎn);最后比較兩個(gè)搜索方向上得到的最佳匹配點(diǎn),從中選出SAD值最小的點(diǎn)作為最終的最優(yōu)匹配點(diǎn)。圖7中的數(shù)字表示上述搜索過(guò)程中的搜索序號(hào),主搜索方向上數(shù)字相同的點(diǎn)為需同時(shí)搜索并進(jìn)行SAD值比較的點(diǎn),次搜索方向上的數(shù)字代表了搜索的次序。為了提高搜索的速度,本發(fā)明進(jìn)一步采用了SAD閾值作為搜索終止的條件。由于當(dāng)前塊c與其相鄰塊之間存在著很強(qiáng)的相關(guān)性,因此以相鄰塊的SADneigh乘以一系數(shù)作為SAD閾值,即SAD閾值SADT=(1-R)SADneigh,其中R為當(dāng)前塊和相鄰塊的Hadamard相似度系數(shù)。在上述搜索過(guò)程中,一旦某點(diǎn)的SAD小于SADT,則認(rèn)為該點(diǎn)即為最佳匹配點(diǎn),終止匹配搜索過(guò)程。
本發(fā)明的基于Hadamard相似度與相鄰塊特征的快速多視點(diǎn)視頻圖像視差估計(jì)方法的流程圖如圖8所示。
以下就本發(fā)明方法進(jìn)行多視點(diǎn)視頻圖像視差估計(jì)的精度及速度進(jìn)行說(shuō)明。
對(duì)由平行相機(jī)系統(tǒng)所拍攝的具有10個(gè)視點(diǎn)的“Xmas”、“Cup”、“Note”三組多視點(diǎn)圖像測(cè)試集采用本發(fā)明所述的多視點(diǎn)視頻圖像視差估計(jì)方法進(jìn)行視差估計(jì)補(bǔ)償預(yù)測(cè)及編碼,并與基于全搜索視差估計(jì)的編碼方法和基于DLS(方向—有限搜索方法)快速視差估計(jì)方法的編碼方法進(jìn)行了比較。圖9、圖10、圖11所示即為上述三組多視點(diǎn)圖像測(cè)試集的3個(gè)不同視點(diǎn)圖像,其圖像尺寸均為640×480,YUV(4∶2∶0)格式;“Xmas”和“Note”各視點(diǎn)間距為30mm,“Cup”各視點(diǎn)間距為15mm;“Xmas”視差較小,背景紋理較復(fù)雜,“Cup”和“Note”視差相對(duì)較大,背景紋理較簡(jiǎn)單。
圖12、圖13和圖14為不同碼率下對(duì)“Xmas”、“Cup”、“Note”三組多視點(diǎn)圖像測(cè)試集采用本發(fā)明快速視差估計(jì)方法、全搜索視差估計(jì)方法及現(xiàn)有的DLS快速視差估計(jì)方法進(jìn)行編碼后的解碼重建圖像的平均峰值信噪比PSNR曲線。由圖中可見(jiàn)采用本發(fā)明的快速視差估計(jì)方法同采用全搜索視差估計(jì)方法得到的重建圖像的峰值信噪比曲線非常接近,表明采用本發(fā)明快速視差估計(jì)方法所獲得的編碼質(zhì)量與采用全搜索視差估計(jì)方法所獲得的編碼質(zhì)量基本相同,僅有微小下降。而采用本發(fā)明的快速視差估計(jì)方法同采用DLS快速視差估計(jì)方法得到的重建圖像的峰值信噪比曲線幾乎重疊,略優(yōu)于DLS快速視差估計(jì)方法的結(jié)果。
采用本發(fā)明快速視差估計(jì)方法與采用全搜索視差估計(jì)方法和DLS快速視差估計(jì)方法對(duì)三組多視點(diǎn)圖像測(cè)試集進(jìn)行編碼后碼流的比特?cái)?shù)、解碼信號(hào)的峰值信噪比以及整個(gè)編碼過(guò)程的時(shí)耗比如表1所示,其中,比特?cái)?shù)反映了壓縮性能,PSNR反映了解碼信號(hào)質(zhì)量,時(shí)耗比反映了編碼過(guò)程的計(jì)算復(fù)雜度。由表1可見(jiàn),與采用全搜索的視差估計(jì)方法相比,采用本發(fā)明的快速視差估計(jì)方法的整個(gè)編碼過(guò)程的時(shí)耗僅相當(dāng)于前者的1.53%~2.22%左右,而PSNR的下降不超過(guò)0.08dB,碼流的比特?cái)?shù)增加不超過(guò)2.43%。而本發(fā)明與另一種快速視差估計(jì)方法DLS相比,其搜索速度的提高依然十分顯著。與DLS快速視差估計(jì)方法相比,采用本發(fā)明的快速視差估計(jì)方法時(shí)整個(gè)編碼過(guò)程的時(shí)耗也僅相當(dāng)于DLS的11.62%~14.05%左右,而碼流的比特?cái)?shù)還略有節(jié)省,且PSNR基本相當(dāng)。表2所示為僅考慮視差估計(jì)過(guò)程的計(jì)算復(fù)雜度(即只考慮平均每塊的搜索點(diǎn)數(shù))時(shí)本發(fā)明快速視差估計(jì)方法與全搜索視差估計(jì)方法及DLS快速視差估計(jì)方法的性能比較。顯然,本發(fā)明方法明顯降低了多視點(diǎn)視差估計(jì)的計(jì)算量,從而降低了整個(gè)多視點(diǎn)編碼系統(tǒng)的計(jì)算復(fù)雜度。
表1本發(fā)明方法和全搜索視差估計(jì)方法及DLS快速視差估計(jì)方法的編碼性能比較
表2本發(fā)明方法和全搜索方法及DLS快速視差估計(jì)方法的視差估計(jì)過(guò)程復(fù)雜度比較
權(quán)利要求
1.一種多視點(diǎn)視頻圖像視差估計(jì)的方法,其特征在于首先令具有n個(gè)相機(jī)的平行相機(jī)系統(tǒng)拍攝的多視點(diǎn)圖像從左至右表示為視點(diǎn)圖像k,1≤k≤n,將k=1的最左視點(diǎn)圖像和k=n的最右視點(diǎn)圖像作為參考視點(diǎn)圖像,其余2≤k≤n-1的中間視點(diǎn)圖像作為目標(biāo)視點(diǎn)圖像,并令各視點(diǎn)圖像編碼順序?yàn)橄染幋a參考視點(diǎn)圖像,然后按從左到右或從右到左的次序依次編碼各目標(biāo)視點(diǎn)圖像;正在編碼處理的目標(biāo)視點(diǎn)圖像稱為當(dāng)前目標(biāo)視點(diǎn)圖像k,當(dāng)前目標(biāo)視點(diǎn)圖像以塊為單位進(jìn)行視差估計(jì)與編碼,其中正在編碼處理的塊稱為當(dāng)前塊c;當(dāng)前塊c在當(dāng)前目標(biāo)視點(diǎn)圖像內(nèi)的相鄰塊中已完成編碼處理的上塊a、右上塊b及左塊d通稱為視點(diǎn)內(nèi)相鄰塊,而當(dāng)前塊c在當(dāng)前目標(biāo)視點(diǎn)圖像的前一相鄰視點(diǎn)圖像中的對(duì)應(yīng)塊稱為視點(diǎn)間相鄰塊e,然后進(jìn)行以下具體步驟的操作(1)以最左視點(diǎn)為參考視點(diǎn),對(duì)最右視點(diǎn)圖像進(jìn)行視差估計(jì),獲得最右視點(diǎn)圖像相對(duì)于最左視點(diǎn)圖像的視差矢量{DVL→R};以最右視點(diǎn)為參考視點(diǎn),對(duì)最左視點(diǎn)圖像進(jìn)行視差估計(jì),獲得最左視點(diǎn)圖像相對(duì)于最右視點(diǎn)圖像的視差矢量{DVR→L};(2)分別計(jì)算當(dāng)前目標(biāo)視點(diǎn)圖像k中的當(dāng)前塊c及其3個(gè)視點(diǎn)內(nèi)相鄰塊a、b、d在8×8的Hadamard矩陣中位于(0,0)、(0,2)、(2,0)三個(gè)特定位置的Hadamard系數(shù);這里,8×8的Hadamard變換表示為G=HFH*,其中,F(xiàn)為輸入的8×8圖像塊信號(hào),G為Hadamard系數(shù)矩陣,是變換輸出信號(hào),H為Hadamard變換矩陣,H*為H的共軛矩陣,H=18111111111-11-11-11-111-1-111-1-11-1-111-1-111111-1-1-1-11-11-1-11-1111-1-1-1-1111-1-11-111-1;]]>(3)分別計(jì)算當(dāng)前塊c和視點(diǎn)內(nèi)相鄰塊a、b、d的Hadamard相似度系數(shù)Rna、Rnb、Rnd,令Rn=min(Rna,Rnb,Rnd),min( )為取最小值運(yùn)算,將Rn與視點(diǎn)內(nèi)相似度系數(shù)閾值RT進(jìn)行比較,若Rn<RT,則轉(zhuǎn)到步驟(4),否則轉(zhuǎn)到步驟(5);(4)以具有最小Hadamard相似度系數(shù)的視點(diǎn)內(nèi)相鄰塊的參考視點(diǎn)和視差矢量作為當(dāng)前塊c的預(yù)測(cè)參考視點(diǎn)和預(yù)測(cè)視差矢量DVc(0),用該預(yù)測(cè)視差矢量確定當(dāng)前塊c在預(yù)測(cè)參考視點(diǎn)圖像中的預(yù)測(cè)塊,計(jì)算當(dāng)前塊c與其預(yù)測(cè)塊之間的絕對(duì)差和SADc(0),令SADa、SADb、SADd分別為當(dāng)前目標(biāo)視點(diǎn)圖像內(nèi)已完成編碼處理的相鄰塊a、b、d與其各自的預(yù)測(cè)信號(hào)Pa、Pb、Pd之間的絕對(duì)差和,若SADc(0)≤median(SADa,SADb,SADd),median( )為取中值運(yùn)算,則該預(yù)測(cè)視差矢量DVc(0)即作為當(dāng)前塊c的最佳視差矢量DVc,轉(zhuǎn)到步驟(9),否則轉(zhuǎn)到步驟(7);(5)根據(jù)當(dāng)前塊c所在目標(biāo)視點(diǎn)k、當(dāng)前塊c的視點(diǎn)間相鄰塊e所在視點(diǎn)、最左和最右視點(diǎn)之間的距離,分別利用最左、最右視點(diǎn)圖像之間的視差矢量{DVL→R}和{DVR→L},通過(guò)視差矢量插值得到當(dāng)前塊c相對(duì)于最左和最右視點(diǎn)中對(duì)應(yīng)塊的位移作為其預(yù)測(cè)視差矢量DVcl(0)和DVcr(0),計(jì)算當(dāng)前塊c在8×8矩陣中位于(0,4)、(4,0)和(4,4)三個(gè)特定位置的Hadamard系數(shù)以及視點(diǎn)間相鄰塊e位于(0,0)、(0,2)、(2,0)、(0,4)、(4,0)和(4,4)六個(gè)特定位置的Hadamard系數(shù),在此基礎(chǔ)上計(jì)算當(dāng)前塊c和其視點(diǎn)間相鄰塊e的Hadamard相似度系數(shù)Rj,若Rj小于視點(diǎn)間相似度系數(shù)閾值Rt則轉(zhuǎn)到步驟(6),否則轉(zhuǎn)到步驟(8);(6)若最左視點(diǎn)較最右視點(diǎn)距離當(dāng)前目標(biāo)視點(diǎn)k更近,則選擇最左視點(diǎn)為當(dāng)前塊c的預(yù)測(cè)參考視點(diǎn),DVcl(0)為預(yù)測(cè)視差矢量,即DVc(0)=DVcl(0);反之選擇最右視點(diǎn)為預(yù)測(cè)參考視點(diǎn),DVcr(0)為預(yù)測(cè)視差矢量,即DVc(0)=DVcr(0),若|DVcl(0)-DVcr(0)|<1,則本步驟所述的預(yù)測(cè)視差矢量DVc(0)即作為當(dāng)前塊c的最佳視差矢量DVc,轉(zhuǎn)到步驟(9),否則轉(zhuǎn)到步驟(7);(7)對(duì)于當(dāng)前塊c,以預(yù)測(cè)參考視點(diǎn)為參考視點(diǎn),預(yù)測(cè)視差矢量DVc(0)為初值進(jìn)行單參考視點(diǎn)最佳匹配塊搜索以找到最佳視差矢量DVc,轉(zhuǎn)到步驟(9);(8)根據(jù)預(yù)測(cè)視差矢量DVcl(0)和DVcr(0)分別在最左和最右2個(gè)參考視點(diǎn)中進(jìn)行最佳塊匹配搜索,比較在最左參考視點(diǎn)中獲得的最佳塊和在最右參考視點(diǎn)中獲得的最佳塊的絕對(duì)差和SAD,取最小者作為最佳視差矢量DVc和最佳參考視點(diǎn),轉(zhuǎn)到步驟(9);(9)結(jié)束當(dāng)前塊c的視差估計(jì)過(guò)程,并繼續(xù)進(jìn)行下一塊的視差估計(jì)過(guò)程,直至完成所有目標(biāo)視點(diǎn)中的所有塊的視差估計(jì)過(guò)程,這里當(dāng)前塊的下一塊是指當(dāng)前塊的右塊,若當(dāng)前塊為所在行的最右塊,則其下一塊為下一行的最左塊。
2.如權(quán)利要求1所述的一種多視點(diǎn)視頻圖像視差估計(jì)的方法,其特征在于所述的視點(diǎn)內(nèi)相鄰塊的Hadamard相似度系數(shù)為Rn=(C0,0+C0,2+C2,0)/S0,0,其中,Ci,j=|G1(i,j)-G2(i,j)|為2個(gè)圖像塊位置為(i,j)的Hadamard系數(shù)差的絕對(duì)值,Si,j=|G1(i,j)+G2(i,j)|為2個(gè)圖像塊位置為(i,j)的Hadamard系數(shù)和的絕對(duì)值。
3.如權(quán)利要求1所述的一種多視點(diǎn)視頻圖像視差估計(jì)的方法,其特征在于所述的視點(diǎn)間相鄰塊的Hadamard相似度系數(shù)為Rj=(C0,0+C0,2+C0,4+C2,0+C4,0+C4,4)/(S0,0+S4,4),其中,Ci,j=|G1(i,j)-G2(i,j)|為2個(gè)圖像塊位置為(i,j)的Hadamard系數(shù)差的絕對(duì)值,Si,j=|G1(i,j)+G2(i,j)|為2個(gè)圖像塊位置為(i,j)的Hadamard系數(shù)和的絕對(duì)值。
4.如權(quán)利要求1所述的一種多視點(diǎn)視頻圖像視差估計(jì)的方法,其特征在于對(duì)于16×16的宏塊,采用其4個(gè)8×8子塊相應(yīng)位置的Hadamard系數(shù)的平均值計(jì)算相似度系數(shù)。
全文摘要
本發(fā)明公開(kāi)了一種多視點(diǎn)視頻圖像視差估計(jì)的方法,通過(guò)Hadamard相似度系數(shù)判斷當(dāng)前塊與其已編碼的相鄰塊的相似性,以利用相鄰塊視差矢量和參考視點(diǎn)預(yù)測(cè)當(dāng)前塊的視差矢量和參考視點(diǎn),并通過(guò)最佳視差矢量判定準(zhǔn)則和快速搜索終止準(zhǔn)則,使得目標(biāo)視點(diǎn)圖像中多數(shù)塊的視差估計(jì)過(guò)程提前終止,從而降低視差估計(jì)計(jì)算復(fù)雜度,提高編碼速度,與全搜索視差估計(jì)方法相比,采用本發(fā)明方法時(shí)整個(gè)編碼過(guò)程的時(shí)耗僅相當(dāng)于前者的1.53%~2.22%,PSNR下降不超過(guò)0.08dB,碼流比特?cái)?shù)增加不超過(guò)2.43%;與DLS快速視差估計(jì)方法相比,本發(fā)明編碼過(guò)程的時(shí)耗也僅相當(dāng)于DLS的11.62%~14.05%,而碼流比特?cái)?shù)略有節(jié)省,且PSNR基本相當(dāng)。
文檔編號(hào)H04N7/50GK1767655SQ20051006114
公開(kāi)日2006年5月3日 申請(qǐng)日期2005年10月18日 優(yōu)先權(quán)日2005年10月18日
發(fā)明者蔣剛毅, 郁梅, 董海濤 申請(qǐng)人:寧波大學(xué)