劉如意
(北京工業(yè)大學計算機學院,北京 100124)
多視點視頻是由處于空間不同位置的相機陣列拍攝同一場景時得到的一組視頻序列信號,能提供拍攝場景不同角度的視頻信息,利用其中的一個或多個視點信息可以合成任意視點的信息,達到自由視點顯示的目的[1]。視點之間相機位置不同,但存在很強的相關性,即各視點間存在冗余。因此相比于傳統(tǒng)的視頻編解碼,多視點視頻編碼增加了視點間預測的方式。JMVC采取視差估計的方法,到相鄰視圖中尋找相似塊作為預測值。該方法能夠很好地利用視點間信息的冗余,達到了很好的預測效果。但這種方法并沒有考慮多視點視頻視點間由于相機位置導致的遮擋和形變[2],所以對有遮擋和形變的區(qū)域預測效果不是很好。
為了進一步提高視點間預測的效率,本文提出基于虛擬視圖和低秩矩陣恢復的視點間預測方法。該方法充分利用了新一代多視點視頻格式中的深度圖,根據(jù)相機內部參數(shù)、相機位置參數(shù),利用相鄰視圖可以合成當前視圖的虛擬視圖,這就相當于考慮了由于相機位置導致的形變。當有兩個或多個虛擬視圖的時候,不同虛擬視圖被遮擋的部分不同,就能相互補充,這樣就可以解決相機位置導致的遮擋問題,所以能夠更好地利用視點間的相關性、降低視點間的冗余。并且利用低秩矩陣恢復的方法來對得到的若干個相似塊進行恢復處理,以降低噪聲信號,得到更好的預測結果。
JMVC是多視點視頻編解碼MVC的參考軟件,由聯(lián)合視頻小組JVT(Joint Video Team)負責實現(xiàn)和改進更新[3]。
多視點視頻依然具有傳統(tǒng)視頻的特性,所以仍然能夠進行傳統(tǒng)的幀內、幀間預測。但由于多視點視頻視點間的冗余,JMVC中使用了分等級的B幀預測結構,如圖1所示。
圖1 分等級的B幀預測結構
分等級的B幀預測結構將所有視圖分成兩類,其中 V0、V2、V4、V6稱為主視圖,V1、V3、V5、V7稱為輔視圖。主視圖只進行運動估計,而當主視圖編碼完成后,輔視圖除了可以進行運動估計外,還可以利用主視圖做視差估計,即進行視點間的預測。
JMVC提供了7種大小的塊:16×16、16×8、8×16、8×8、8×4、4×8和4×4,供運動估計和視差估計使用[3]。對于輔視圖,編碼過程中嘗試所有大小的塊的幀內、幀間、視點間預測方法,然后根據(jù)率失真優(yōu)化模型RDO(Rate-Distortion Optimization)來選擇最優(yōu)的編碼模式。這種方法充分利用了同一視圖的空間、時間以及不同視圖間的信息冗余,所以能夠取得很好的壓縮效果。
當用攝像機拍攝現(xiàn)實世界中的場景時,得到的圖像上的任意點都可以對應到現(xiàn)實場景的一個點,深度圖是攝像機到現(xiàn)實場景中點的距離的量化表示。所以根據(jù)圖像上的點的顏色和深度、攝像機的內部參數(shù)、攝像機在現(xiàn)實場景中的位置信息,可以把圖像上每一個點重新映射到現(xiàn)實世界中去[4]。
用上述過程的逆過程,可以將現(xiàn)實世界中的點根據(jù)機內部參數(shù)和位置重新映射到一幅圖像上來。由上面兩點,可以將一個相機拍攝的圖像,經過圖像到現(xiàn)實世界,再由現(xiàn)實世界到圖像的映射,映射成另一個位置的相機拍攝的圖像,即得到虛擬視圖。
相機拍攝的圖像上每個點的坐標信息用攝像機坐標系表示。攝像機坐標系以攝像機的光心為原點,Xc軸和Yc軸與圖像 x、y方向平行,Zc軸為攝像機的光軸,與圖像平面垂直[5]。
由于攝像機可以安放在環(huán)境中的任何位置,在環(huán)境中選定一個基準坐標系來描述相機的位置,并用它描述環(huán)境中任何物體的位置,該坐標系稱為世界坐標系[5]。
攝像機坐標系與世界坐標系之間的關系可用旋轉矩陣R與平移向量t來描述[6]。因此空間中某一點P在世界坐標系與攝像機坐標系下的坐標如果分別為(Xw,Yw,Zw)和(Xc,Yc,Zc),則存在如下關系:
其中,R為3×3正交單位矩陣,t為三維平移向量。
世界坐標中任何點P在圖像上的投影p為光心與P點的連線OP與圖像平面的交點,稱為中心攝影[7]。則以毫米為單位的圖像坐標(x,y)與攝像機坐標間的關系可為:
其中f表示攝像機的焦距。
而圖像上的坐標一般用像素為單位,這就需要一個物理尺寸坐標到像素坐標的轉換:
其中,dx、dy為每個像素在 x、y軸上的物理尺寸,O1(u0,v0)為攝像機光軸與圖像平面的交點[8]
于是,現(xiàn)實場景中任一點P在圖像上以像素為單位的坐標p(u,v)可表示為:
同理,也可以得到以像素為單位的圖像坐標到世界坐標的變換。
所以知道另一個相機相對于世界坐標系的旋轉矩陣R和平移矩陣t,就能將一個相機拍攝的圖像變換到另一個位置的相機拍攝的圖像。當然,由于一個位置能看到的場景,由于前景的遮擋,在另一個位置可能看不到,所以會形成一些空洞。但當有兩個和兩個以上的虛擬視圖時,由于相機位置不同,被遮擋的部分也不會相同,相互補充,可以有效地消除空洞。
如圖2所示,可以利用相鄰視圖生成當前編碼視圖的虛擬視圖。當要編碼一個塊時,到兩邊的虛擬視圖中找到對應的塊,利用兩個虛擬視圖的塊數(shù)據(jù)合成一個塊,作為參考塊;然后到相鄰視圖中尋找若干個與參考塊最匹配的塊;最后將參考塊和符合閾值的若干相似塊按列放到一個矩陣中,使用矩陣恢復進行處理,以降低噪聲,得到更好的預測結果。
圖2 利用虛擬視圖進行預測
低秩矩陣恢復最早由John Wright等人提出,又稱為Robust PCA(Principal Component Analysis)或者稀疏與低秩矩陣分解[12]??梢詮腜CA的角度看這個問題,傳統(tǒng)的PCA可以理解為高維數(shù)據(jù)在低維線性子空間上的投影,它可以寫成[12]:
其中,D的每一列均為給定的數(shù)據(jù),‖·‖F(xiàn)是矩陣的Frobenius范數(shù),即所有元素的平方和再開根號。
通過此約束優(yōu)化問題可以找到D在一個最近的r維線性子空間上的投影[13]。當E為輕微的高斯隨機噪聲時,PCA可以通過一次SVD(Singular Value Decomposition)準確地找到最優(yōu)的A。但當A被嚴重破壞,即E很大時,A的估計往往不準確,并且PCA還有一個問題是需要預知子空間維數(shù)r。于是提出了Robust PCA來解決A中數(shù)據(jù)被破壞的情況[14]。
當矩陣的某些元素被嚴重破壞后,低秩矩陣恢復能夠自動識別出被破壞的元素,恢復出原矩陣[11]。當然這需要假定原矩陣有非常好的結構,即低秩的,另外假定只有很少一部分元素被嚴重破壞,即噪聲是稀疏的,但大小可以任意[15]。于是矩陣恢復可以用如下最優(yōu)化問題描述:
其中,目標函數(shù)為矩陣A的秩以及噪聲矩陣E的零范數(shù),即E的非零元素的個數(shù);λ表明噪聲所占的權重。
利用矩陣的核范數(shù)近似秩,矩陣的1范數(shù)近似零范數(shù),可將上面的最優(yōu)化問題轉化為如下的問題:
這是一個凸優(yōu)化問題,可以有效地求解。
矩陣恢復在圖像處理中應用廣泛,如John Wright等人展示了如何在背景建模、人臉識別等問題中,利用矩陣恢復。Yigang Peng等人將矩陣恢復技術應用于圖片對齊中[16]。
本文中,將矩陣恢復應用于對前面得到的相似塊進行去噪處理。
圖3 利用低秩矩陣進行去噪處理
找到的用于預測的相似塊的值都很相近,當把每個塊的數(shù)據(jù)看作一列,放到一個矩陣中去時,它們滿足低秩的要求;同時每個相似塊中難免存在一些噪聲數(shù)據(jù)(如圖3所示),這些噪聲數(shù)據(jù)會對最終的預測結果造成不好的影響。首先,用一個閾值來篩選得到相似塊,對于滿足條件的塊,用低秩矩陣恢復的方法,對這若干個相似塊對參考塊進行恢復,以降低參考塊中的噪聲信號,得到更精確的預測值。
為了驗證上述方案的有效性,本文在JMVC框架上進行了驗證。首先,替換掉JMVC中一種不常用的模式,來實現(xiàn)該方法;然后對常見的多視點視頻序列進行試驗,并與JMVC原始的算法進行比較。視頻編碼中一般用比特率Bitrate衡量壓縮大小,用峰值信噪比PSNR(Peak Signal to Noise Ratio)衡量壓縮質量。本文綜合采用Bitrate和PSNR來進行結果的比較,即比較相同PSNR下的碼率。
表1~表3 為 champagne_tower、baloon、kendo三個測試序列的實驗結果,其中Bitrate1和PSNR1為JMVC原始結果,Bitrate2和PSNR2為本文提出的方法的結果。
表1 champagne_tower序列結果
表2 baloon序列結果
表3 kendo序列結果
如表1~表3所示,綜合考慮4個QP,上述3個常用視頻序列在相同的PSNR下,本文提出的方法比JMVC原始方法節(jié)省碼率分別為 1.484538%、2.191085%、1.005343%。
綜上所述,本文的方法在視點間預測的效率上比JMVC原始方法大約節(jié)省1% ~2%的碼率。
針對多視點視頻編碼中的視點間預測問題,本文提出一種基于虛擬視圖合成和低秩矩陣恢復的預測方法。該方法利用新的多視點視圖中的深度圖,結合相機的內外參數(shù),并使用計算幾何的一些方法,充分利用多視點視頻的可用信息,有效地提高了編碼壓縮的效率,達到了較好的實驗效果。實驗結果表明,該方法有效地提高了bit-rate,比JMVC原始結果大約節(jié)省1%~2%的碼率。
[1]JVT-X064,MVC:Experiments on Coding of Multi-view Video Plus Depth[S].
[2]Masayuki Tanimoto,Memno Wildeboer.Framework for FTV coding[C]//Proceedings of the 27th Conference on Picture Coding Symposium.2008:429-432.
[3]Chen Y,Wang Ye-Kui,Ugur K,et al.The emerging MVC standard for 3D video services[J].EURASIP Journal on Advances in Signal Processing,2009,13(1):128-132.
[4]Muller K,Dix K,Kauff P.Reliability-based generation and view synthesis in layered depth video[C]//IEEE 10th Workshop on Multimedia Signal Processing.2008:34-39.
[5]Fehn C.Depth-image-based rendering(DIBR),compression and transmission for a new approach on 3D-TV[C]//Proceedings of the SPIE.2004,5291:93-104.
[6]Kazuo Sugimoto,Mitsuru Kobayashi,Yoshinori Suzuki,et al.Inter frame coding with template matching spatio-temporal prediction[C]//IEEE International Conference on Image Processing.2004:465-468.
[7]Kobayashi M,Suzuki Y,Boon C S,et al.Reduction of information with motion prediction using template matching[C]//Proc.20th Picture Coding Symposium of Japan.2005:17-18.
[8]Zhu C,Lin X,Chau L P.Hexagon-based search pattern for fast block motion estimation[J].IEEE Transactions on Circuits and Systems for Video Technology,2002,12(5):349-355.
[9]Tsung P-K,Yang H-J,Lin P-C,et al.Hybrid color compensation for virtual view synthesis in multiview video applications[C]//Proceedings of 2010 IEEE International Symposium on Circuits and Systems.2010:121-124.
[10]Fan Y C,Wu S F,Lin B L.Three-dimensional depth map motion estimation and compensation for 3D video compression[J].IEEE Transactions on Magnetics,2011,47(3):691-695.
[11]Scharstein D,Szeliski R.A taxonomy and evaluation of dense two-frame stereo correspondence algorithm[J].Intl.Journal of Computer Vision,2002,47(1):7-42.
[12]Suzuki Y,Boon C S,Kato S.Block-based reduced resolution inter frame coding with template matching prediction[C]//IEEE International Conference on Image Processing.2006:1701-1704.
[13]Singer A,Cucuringu M.Uniqueness of low-rank matrix completion by rigidity Theory[J].SIAM Journal on Matrix Analysis and Applications,2010,31(4):1621-1641.
[14]Peng Y,Ganesh A,Wright J,et al.RASL:Robust alignment by sparse and low-rank decomposition for linearly correlated images[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition.2010:763-770.
[15]Zhou B B,Brent R P.A parallel ring ordering algorithm for efficient one-sided Jacobi SVD computations[J].Journal of Parallel and Distributed Computing,1997,42(1):1-10.
[16]Abernethy J,Bach F,Evgeniou T,et al.Low-rank matrix factorization with attributes[J].Computing Research Repository,2006.