吉聰建,武迎春,王安紅,李東紅,趙賢凌
(太原科技大學(xué)電子信息工程學(xué)院,太原 030024)
隨著數(shù)字多媒體技術(shù)的不斷發(fā)展,人們對(duì)3D視頻交互性及感官體驗(yàn)的需求提升到了一個(gè)全新的層次:未來3D視頻不僅應(yīng)提供更強(qiáng)的3D沉浸感,還應(yīng)提供更高的觀看自由度[1]。在此背景下,自由視點(diǎn)視頻應(yīng)運(yùn)而生,并迅速成為國內(nèi)外研究機(jī)構(gòu)和工業(yè)界的關(guān)注熱點(diǎn)。多視點(diǎn)視頻[2](multi-view video, MVV)是自由視點(diǎn)視頻的一種常用格式,為了保證觀看自由度,該視頻格式往往需要存儲(chǔ)十幾個(gè)甚至幾十個(gè)視點(diǎn)的紋理序列,存儲(chǔ)占用內(nèi)存大且傳輸所需碼率高。多視點(diǎn)視頻加深度[3](multi-view video plus depth, MVD)的視頻格式克服了MVV視頻格式的不足,它可用少數(shù)幾個(gè)視點(diǎn)的2D紋理序列及其對(duì)應(yīng)的深度序列來合成任意虛擬視點(diǎn)的視頻[4],被MPEG組織列為自由視點(diǎn)視頻數(shù)據(jù)格式。該視頻格式在傳輸時(shí),若使用傳統(tǒng)的編碼器[5]對(duì)深度序列進(jìn)行壓縮編碼,高效的壓縮算法會(huì)造成深度圖的陡變邊緣出現(xiàn)震蕩偽影[6]。
為了消除或淡化深度圖的邊緣震蕩偽影[7],重建真實(shí)深度信息,Shujie Liu提出基于深度圖和紋理圖邊緣信息的三邊濾波器[8],但在濾波過程中需要同時(shí)輸入紋理序圖,復(fù)雜度較高。Oh K-J提出一種濾波過程中考慮像素出現(xiàn)頻率、像素之間的歐氏距離的深度邊緣重建濾波器[9],但是濾波過程中需要調(diào)整許多參數(shù),濾波效果不夠明顯。Xuyuan Xu等提出了一種相對(duì)復(fù)雜度低,并且可以自適應(yīng)深度圖的濾波器[10],通過自適應(yīng)的塊重新定位和擴(kuò)張來提高深度圖濾波的準(zhǔn)確性,但是簡(jiǎn)單的替代算法在深度復(fù)雜區(qū)域并不適用。Lijun Zhao提出了基于備選像素[11]的深度圖邊界濾波算法(candidate value-based boundary filtering,CVBF),該算法引入備選像素集,選取最優(yōu)備選像素來替代不可信像素,濾波過程簡(jiǎn)單且有效。CVBF在構(gòu)建備選像素集時(shí),采用不可信像素周邊固定區(qū)域的前背景值作為備選像素,在深度信息復(fù)雜且不可信像素密集出現(xiàn)的情況下,固定區(qū)域的選取會(huì)造成前背景值的計(jì)算錯(cuò)誤,降低CVBF的魯棒性。針對(duì)這一問題,本文提出基于可伸縮區(qū)域的備選像素提取算法,選取可信度高的區(qū)域來還原出深度圖的原始數(shù)據(jù),進(jìn)而提高合成虛擬視點(diǎn)視頻的PSNR(Peak Signal to Noise Ratio).
CVBF算法的濾波原理如圖1所示,由于量化編碼后的深度圖的失真多發(fā)生在圖像的陡變邊緣,所以在進(jìn)行濾波前需檢測(cè)失真像素。該濾波過程可簡(jiǎn)單敘述為:①檢測(cè)失真像素:采用由五個(gè)像素構(gòu)成的十字型模版去遍歷每個(gè)像素,如果當(dāng)前像素與十字型模版上下左右的像素之差的絕對(duì)值均小于等于1,則定義為無失真像素,否則為失真像素,標(biāo)記出所有失真像素。②構(gòu)建備選像素集:將失真像素所在行列中與其距離最近的四個(gè)無失真像素及失真像素周邊9×9區(qū)域的前景值和背景值作為備選像素。③不可信像素替代:備選像素集的所有元素與不可信像素做差,差值最小的用于替代不可信像素。
圖1在構(gòu)建備選像素集時(shí),采用不可信像素(當(dāng)前點(diǎn))周邊固定的9×9區(qū)域的前景值與背景值作為其中兩個(gè)備選像素。在深度信息復(fù)雜且不可信像素密集出現(xiàn)的情況下,不可信像素的四個(gè)臨近無失真像素值與當(dāng)前點(diǎn)的真實(shí)值偏差較大,且固定區(qū)域的前景或背景值也與實(shí)際偏差較遠(yuǎn)。為了提高備選像素與真實(shí)值的接近程度,提出基于可伸縮區(qū)域的備選像素計(jì)算方法,該方法基于備選區(qū)域最小化與區(qū)域可信度高的準(zhǔn)則。
2.1.1 備選區(qū)域最小化
CVBF算法備選區(qū)域前景值與背景值計(jì)算的原則是[11]:先求出所選9×9區(qū)域像素的平均值,將該區(qū)域中像素值小于等于平均值的像素記為前景像素,記前景像素的平均值為前景值,大于均值的像素記為背景像素,背景像素的平均值為背景值。對(duì)于固定的深度序列,備選區(qū)域越大,包含的深度信息越豐富,計(jì)算出的前景值與背景值與當(dāng)前點(diǎn)的真實(shí)值偏差越大。圖2中(a)為序列Book_Arrival視點(diǎn)8.
圖1 CVBF算法原理圖
Fig.1 The schematic diagram of CVBF algorithm
圖2 深度圖分布
Fig.2 The distribution of depth map
表1 深度圖的特征值
Tab.1 The eigenvalues of depth map
備選區(qū)域均值前景值背景值3×31081051085×5101781097×795701099×99158107
的第一幀深度圖,以該圖中任意一點(diǎn)p為中心,其周邊9×9的區(qū)域?qū)?yīng)點(diǎn)的灰度值如圖2(b)所示。p點(diǎn)對(duì)應(yīng)的灰度值為108,以該點(diǎn)為中心點(diǎn)分別計(jì)算3×3、5×5、7×7、9×9區(qū)域的前景值與背景值,計(jì)算結(jié)果如表1所示??梢钥闯鰝溥x區(qū)域越小,計(jì)算出的背景值與中心點(diǎn)的灰度值越接近,滿足備選區(qū)域最小化原則。
2.1.2 備選區(qū)域可信度高
備選區(qū)域的可信度定義為區(qū)域中可信像素與不可信像素的比例。備選區(qū)域中包含不可信像素的比例較高會(huì)造成區(qū)域前背景值的計(jì)算產(chǎn)生錯(cuò)誤。當(dāng)存在不可信像素的情況下,為了提高濾波器的性能,備選區(qū)域應(yīng)在面積最小化的基礎(chǔ)上擴(kuò)張。
采用由五個(gè)像素構(gòu)成的十字型模版檢測(cè)失真像素,濾波仍只對(duì)深度圖的失真像素做處理。在對(duì)失真像素構(gòu)建備選像素集時(shí),以當(dāng)前失真像素的上、下、左、右為搜索范圍,選出失真像素所在行列與其距離最近的四個(gè)無失真像素作為備選像素。記選取的行備選像素為Ri(i=1,2),選取的列備選像素為Ci(i=1,2);記R1與R2間的像素為M,記C1與C2間的像素為N,計(jì)算 M×N確定區(qū)域的前景值與背景值,記為F1、B1.如圖3所示:藍(lán)色像素為當(dāng)前待濾波失真像素,黑色像素為失真像素行列對(duì)應(yīng)的最近的無失真像素,前景值與背景值圖中的灰色區(qū)域計(jì)算得到。對(duì)不同的失真像素,其對(duì)應(yīng)的M與N各不相同,使得計(jì)算前景值與背景值的區(qū)域大小各不相同。前景值與背景值的計(jì)算公式如下:
(1)
(2)
其中,q(x,y)為M×N區(qū)域中的每個(gè)像素,mean為區(qū)域的平均像素值,m為區(qū)域前景像素的個(gè)數(shù),n為背景像素的個(gè)數(shù)。
備選像素集(R1,R2,C1,C2,F1,B1)用G表示,從最備選像素集內(nèi)選出最優(yōu)像素p′(x,y),最優(yōu)備選像素為備選像素集內(nèi)與當(dāng)前不可信像素p(x,y)的絕對(duì)差最小的像素。用最優(yōu)像素p′(x,y)替代不可信像素p(x,y).最優(yōu)備選像素定義如下:
p'(x,y)=argmin|p(x,y)-G|
(3)
圖3 確定備選值區(qū)域示意圖
Fig.3 The schematic diagram of calculating candidate region
為了論證本文濾波算法的有效性,采用HEVC version12.0在QP值分別為31、36、41下對(duì)Dancer序列(視點(diǎn)5)的前100幀進(jìn)行編碼,得到經(jīng)過編碼后的深度序列。使用本文提出的濾波方法對(duì)經(jīng)過編碼后的深度序列進(jìn)行濾波,生成新的深度序列,最后采用3D-HEVC的1D-fast模式合成虛擬視點(diǎn)6.實(shí)驗(yàn)流程圖如圖4所示。分別計(jì)算了不同QP值之下經(jīng)過壓縮編碼序列濾波后合成虛擬視點(diǎn)與未壓縮編碼的序列合成虛擬視點(diǎn)的PSNR,并在相同實(shí)驗(yàn)環(huán)境下與CVBF濾波器的實(shí)驗(yàn)結(jié)果進(jìn)行了對(duì)比,對(duì)比結(jié)果如表2所示,可見本文所提算法可使PSNR平均提高0.08 dB.
表2 序列Dancer的PSNR
Tab.2 The PSNR of sequence Dancer
PSNRQP無濾波CVBF改進(jìn)后CVBF提高3140.9042.5142.530.023638.8640.6940.780.094137.5639.2439.360.12
圖4 實(shí)驗(yàn)流程圖
Fig.4 Flow chart of the experiment
所有算法均是在配置為CPU 型號(hào)為Intel(R) Core(TM) i7-670主頻為3.40 GHz、系統(tǒng)內(nèi)存為16GB RAM的64位操作系統(tǒng)計(jì)算機(jī)上的MATLAB R2014b平臺(tái)中實(shí)現(xiàn)的。從表中可以看出隨著量化參數(shù)(Quantization parameter,QP)值的增加,也就是壓縮比越來越高,序列的PSNR逐漸減小,基于可伸縮區(qū)域的CVBF算法的對(duì)合成視點(diǎn)質(zhì)量提高也不斷增加。使用CVBF濾波算法與改進(jìn)后的算法對(duì)QP值為31的100幀圖像進(jìn)行濾波,平均濾波時(shí)間分別為39.50 s與34.64 s,因?yàn)榭缮炜s區(qū)域的區(qū)域可變性處理像素變少,使得計(jì)算復(fù)雜度變小,所以濾波所用時(shí)間減少。計(jì)算了不同序列經(jīng)過壓縮編碼序列濾波后合成虛擬視點(diǎn)與未壓縮編碼的序列合成虛擬視點(diǎn)的PSNR,并在相同實(shí)驗(yàn)環(huán)境下與CVBF濾波器的實(shí)驗(yàn)結(jié)果進(jìn)行了對(duì)比,對(duì)比結(jié)果如表3、表5所示。
針對(duì)CVBF算法在場(chǎng)景深度復(fù)雜、不可信像素密集,從固定區(qū)域計(jì)算備選像素誤差較高的情況,提出備選像素由可信度高的區(qū)域獲得的可伸縮備選區(qū)域CVBF算法,實(shí)驗(yàn)結(jié)果表明該算法提高了CVBF算法的魯棒性。采用多組對(duì)比實(shí)驗(yàn)對(duì)該方法的有效性進(jìn)行了論證,實(shí)驗(yàn)結(jié)果表明,本文所提方法可有效抑制由于深度圖編碼帶來的邊緣誤差,并且運(yùn)算簡(jiǎn)單復(fù)雜度低,Dancer序列較CVBF算法可使峰值信噪比平均提高0.08 dB.
表3 序列Newspaper的PSNR
Tab.3 The PSNR of sequence Newspaper
PSNRQP無濾波CVBF改進(jìn)后CVBF提高3141.5941.8041.820.023641.3040.5040.540.044138.9239.1339.190.06
表4 序列Lovebird的PSNR
Tab.4 The PSNR of sequence Lovebird
PSNRQP無濾波CVBF改進(jìn)后CVBF提高3143.6743.9844.010.033642.4042.7042.730.034141.7142.0442.100.06
表5 序列Book_Arrival的PSNR
Tab.5 The PSNR of sequence Book_Arrival