戴 萬 長(浙江東方職業技術學院信息傳媒與自動化學院 浙江 溫州 325011)
多視點視頻是用不同位置的多個攝像機對同一場景進行拍攝而獲得的數據,多視點視頻編碼[1]是3DTV(立體電視)[2]、FTV(自由視點電視)[3]、虛擬現實等應用領域的關鍵技術之一。多視點視頻編碼中的視差估計占用了整個編碼過程大量的時間,因此研究一種高效的視差估計方法對提高編碼效率至關重要[4-5]。李躍等[6]分析了相鄰宏塊的運動矢量相關性及最優率失真之間的關系,采用一種提早終止策略,有效地節省了編碼時間,但是該文沒有分析宏塊視差矢量的相關性,算法有待進一步優化。Kim等[7]分析了視差矢量和運動矢量的空間特性關系,通過預測運動矢量來節約編碼時間,但其需要通過增加視點數量來完成矢量預測,影響編碼效率進一步提高。Boonthep等[8]通過調整宏塊類型來自適應確定搜索范圍,從而減少編碼時間,但是該方法的視差匹配算法不夠優越。宋曉煒等[9]分析了視差矢量的特點,通過三步搜索法確定最佳匹配塊,避免極限校正存在的問題,提高了編碼效率,但是該算法率失真性能下降較多。胡波等[10]采用一種均值偏移算法對宏塊進行匹配,取得了較好的視差估計效果。本文在時空域上分析了視差矢量和運動矢量的空間特性,通過建立Kalman濾波器[11]預測運動矢量,在當前幀中用Mean Shift算法[12]實現宏塊的視差匹配,最后通過實驗驗證了該方法的有效性。
多視點視頻編碼結構一般分為以下幾種:GoGOP預測結構[13]、聯播方案(Simulcast)[14]、基于分層 B 幀的預測結構HBP(Hierarchical B Pictures)[15]。研究表明HBP預測結構性能優越,是目前多視點視頻編碼采用的主流結構。如圖1所示為8視點、GOP長度為8的HBP結構。

圖1 HBP結構的多視點視頻編碼
相關研究表明幀間視差矢量相關性最強,如圖2所示。

圖2 運動矢量和視差矢量關系
為在相鄰時刻t、t+T,相鄰視點Si、Si+1的四幀圖像。di,t表示Si視點中的某一宏塊在t時刻的位置,則t、t+T時刻宏塊的視差矢量D(t)、D(t+T)按下式表示:
D(t)=di+1,t-di,tD(t+T)=di+1,t+T-di,t+T
(1)
Si、Si+1視點宏塊的運動矢量M(i)、M(i+1)為:
M(i)=di,t+T-di,tM(i+1)=di+1,t+T-di+1,t
(2)
從上述兩式可以得到:
D(t+T)-D(t)=M(i+1)-M(i)=
di+1,t+T-di,t+T-di+1,t+di,t
(3)
即:
D(t+T)=D(t)+M(i+1)-M(i)
(4)
式(4)表明當前幀的視差矢量和其運動矢量及參考幀的視差矢量、運動矢量相關[16]。在已知參考幀視差矢量和運動矢量基礎上只要獲得當前幀的運動矢量,就可求出當前幀的視差矢量,本文用Kalman濾波器[17]預測宏塊的運動矢量。Kalman濾波器是以均方誤差最優化作為準則的線性濾波器,通過建立時變隨機信號的狀態方程和觀測方程對當前時刻信號進行預測,其狀態方程和觀測方程如下:
X(k)=AX(k-1)+w(k-1)
(5)
Z(k)=BX(k)+v(k)
(6)
式中:A、B表示狀態轉移矩陣和觀測矩陣;w(k-1)、v(k)表示過程噪聲和測量噪聲,這里將其定義為服從獨立分布、零均值的高斯白噪聲。由于時間間隔T較短,宏塊運動可以描述成受一階加速擾動的直線運動,則建立宏塊的狀態方程和預測方程為:
(7)
(8)
式中:[x(k)y(k)]表示宏塊在水平、垂直方向上的位移即運動矢量,[vx(k)vy(k)]表示宏塊在水平、垂直方向上的速度,[xc(k)yc(k)]表示運動矢量觀測值。
對當前幀中的宏塊建立特征模型,用式(9)表示其第u個特征值的概率密度:
(9)

(10)
對于參考幀宏塊和當前幀宏塊采用Bhattacharyya系數進行匹配,Bhattacharyya代表參考幀宏塊特征向量和當前幀宏塊特征向量夾角的余弦值,定義如下:
(11)
(12)

(13)
式中:
(14)
對式(13)求極值運算,即可獲得Mean Shift向量:
(15)
式中核函數:

(16)

本文提出的視差估計算法均在HHI提供的多視點視頻編碼校驗模型JMVM7.0進行測試[18]。硬件平臺配置為:Intel(R) Core 2 Duo,主頻2.39 GHz的CPU,內存為1 GB。測試用的視頻為標準的多視點序列Ballroom、Exit、Race1。采用的編碼結構為HBP,GOP長度取8,Inter模式為16×16,搜索范圍在±64,量化參數分別為22、27、32、37,相關參數設置及實驗環境配置如表1、圖3所示。

表1 測試環境

(a) Ballroom

(b) Exit

(c) Race1圖3 多視點視頻測試序列
在JMVM7.0平臺上對本文提出的方法、JMVM的全搜索方法(FS)、文獻[8]方法和文獻[9]方法、新圓形快速算法(NewPel)分別進行測試研究。表2、表3、表4是本文方法和各種算法的編碼時間比較。圖4是本文方法和各種算法的率失真性能曲線的比較。通過對比發現,本文方法和全搜索算法相比,PSNR降低較少、碼率提升也較少,因此對率失真性能影響甚微,而編碼效率獲得大幅度提高,編碼時間減少93%以上。與新圓形快速算法相比,無論是編碼效率和率失真性能均獲得提高。本文方法和文獻[8]方法相比,編碼時間減少了16.2%~27.4%,PSNR提高,碼率下降,因此率失真性能獲得提升。這是由于本文采用的Kalman濾波能夠有效地預測視差矢量,減少搜索點數,從而減少編碼時間。本文方法和文獻[9]方法相比,編碼時間下降,PSNR提高0.22(db)~0.32(db),碼率下降0.16%~2.21%,因此率真實性能改善較明顯。文中采用Mean Shift算法是一種均值聚類算法,在宏塊的視差匹配過程中優越性得到了體現。本文方法和文獻[10]方法相比,編碼效率幾乎保持不變,但率失真性能獲得提高,尤其是對于Race1序列改善性能明顯。這是由于Race1序列中目標移動速度較快,本文的Kalman濾波可以有效地估計目標移動位置,從而為下一步的視差匹配提供精確的初始位置。同時Kalman濾波可以減少Mean Shift算法迭代次數,彌補了引入Kalman濾波帶來的計算量。

(a) Ball序列

(b) Exit序列

(c) Race1序列圖4 本文方法和各種算法率失真性能比較

表2 Ballroom序列編碼時間比較 s

表3 Exit序列編碼時間比較 s

表4 Race1序列編碼時間比較 s
多視點視頻編碼計算量極其龐大,因此有必要采用一種高效的多視點視頻編碼方案來提高效率。本文對宏塊的運動模型建立一階線性Kalman濾波器,有效地預測當前幀宏塊的運動矢量,分析了視差矢量和運動矢量的關系,從而獲得當前幀預測視差矢量。通過預測視差矢量的計算獲得宏塊的初始搜索位置,將該值作為均值偏移算法迭代的初值,進而進行下一步的視差匹配。將本文提出的方法在JMVM7.0平臺上測試,并和全搜索算法及其他快速算法做比較。發現本文方法和全搜索算法相比,編碼效率獲得了大幅提高,而率失真性能幾乎維持不變。和其他快速算法相比,無論在率失真性能提升上和編碼效率提高上都具有明顯效果。
[1] Oh K J,Lee J,Park D S.Multi-view video coding based on high efficiency video coding[C]//5th Pacific Rim Symposium on Image and Video Technology.Gwangju:Springer,2011:371- 380.
[2] Muller K, Merkle P, Wiegend T. 3-D video representation using depth maps[J]. Proceedings of the IEEE, 2011, 99(4): 643- 656.
[3] Tanimoto M, Tehrani M P, Fujii T, et al. Free-view point TV[J]. IEEE Signal Processing Magazine, 2011, 28(1): 67- 76.
[4] Deng Zhipin, Jia Kebin, Chan Yuilam. A fast stereoscopic video coding algorithm based on JMVM[J]. Science China Information Sciences, 2011, 54(6): 1218- 1226.
[5] Ryu S C, Seo J D, Lee J Y, et al. Advanced motion vector coding framework for multiview video sequences[J]. Multimedia Tools and Applications, 2013, 67(1): 49- 70.
[6] 李躍, 鄧聯文, 業勛, 等. 多視點視頻編碼的TZSearch算法優化[J]. 中南大學學報(自然科學版), 2014, 45(10): 3450- 3455.
[7] Kim Y, Kim J, Sohn K. Fast disparity and motion estimation for multi-view video coding[J]. IEEE Transactions on Consumer Electronics, 2007, 53(2): 712- 719.
[8] Boonthep N,Chiracharit W,Chamnongthai K.Adaptive search range determination for geometry based disparity and motion estimation of MVC[C]//Signal and Information Processing Association Annual Summit and Conference(APSIPA).Siem Reap: IEEE, 2015: 1- 5.
[9] 宋曉煒, 楊蕾, 劉忠, 等. 基于視差矢量特點的視差估計快速算法[J]. 計算機應用, 2012, 32(7): 1856- 1859.
[10] 胡波, 戴萬長, 肖志堅, 等. 均值偏移的多視點視差估計新方法[J]. 計算機應用, 2013, 33(8): 2297- 2299.
[11] Wang Haoqian, Du Chengli, Wang Xingzheng, et al. Fast Disparity Estimation and Mode Decision for Multi-view Video Coding[C]//International Conference on Medical Biometrics. Shenzhen: IEEE, 2014: 195- 199.
[12] Comaniciu D, Meer P. Mean shift: A robust application toward feature space analysis[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2002, 24(5): 603- 619.
[13] Eisert P, Steinbach E, Girod B. Automatic reconstruction of stationary 3-D objects from multiple uncalibrated camera views[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2002, 10(2): 227- 261.
[14] Fecker U, Kaup A. H.264/AVC-compatible coding of dynamic light fields using transposed picture ordering[C]//13th European Signal Processing Conference. Antalya: IEEE, 2005:1- 4.
[15] Merkle P, Smolic A, Muller K, et al. Efficient prediction structures for multiview video coding[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2007, 17(11): 1461- 1473.
[16] 明艷. 基于3D相鄰區域宏塊相關性的多視點視頻快速編碼算法[J]. 重慶郵電大學學報(自然科學版), 2016, 28 (6): 783- 788.
[17] Fukunage K, Hostetler L D. The estimation of the gradient of a density function with application in pattern recognition [J]. IEEE Transactions of Information Theory, 1975, 21(1): 32- 40.
[18] 李楓, 趙巖, 王世剛, 等. 基于JMVC的立體視頻場景突變檢測算法[J]. 吉林大學學報: 理學版, 2016, 54 (3): 587- 591.