彭建華,王國中,范 濤,趙海武,騰國偉,李國平
(上海大學通信與信息工程學院,上海200072)
基于深度圖像的繪制(Depth Image Based Rendering,DIBR)技術[1-2]是三維立體視頻(Three - Dimensional Video,3DV)系統中應用最廣泛的技術。與需要傳輸左右兩個視點的3DV系統相比,DIBR技術利用彩色圖像、相應的深度圖像以及相機的參數來繪制目標視點,這樣就減少一路彩色視頻的傳輸,有效地提高了傳輸效率,并且在數字電視廣播系統中,深度加彩色的視頻格式傳輸的電視信號有利于2D/3D之間的選擇,在客戶端如果需要2D視頻就直接解碼彩色視頻,如果需要3D模式就利用DIBR技術繪制虛擬視點。
DIBR技術的理論基礎是3D Image Warping[3]方程,但是使用該方法會產生可見性問題和空洞問題。對于可見性問題,Leonard McMillan在1995年提出了一種遮擋兼容算法[4]很好地解決了該問題。對于空洞問題最常用的就是鄰域填充和均值濾波,由于鄰域填充和均值濾波在插值時沒有很好地保護邊緣信息,因此在紋理密集區域有明顯的錯誤,主觀質量非常差。為此Chen等人提出了一種改進的基于深度圖邊緣濾波和插值的DIBR算法[5],基于邊緣的插值方法檢測4個方向的差異的最小值,然后用最小差分的兩對像素的均值填充空洞,顯然這種方法對于較大空洞區域不能獲得很好的效果。Kwan-Jung等人提出了一種基于深度信息修復的空洞填充方法[6],該方法通過深度圖中的深度值來區分紋理圖像中的前景和背景,在進行空洞填充時僅利用背景值對空洞進行填充,但是該方法對于前景產生的空洞會出現很大的錯誤。
為了保證不同大小的空洞區域都能獲得很好的空洞填充效果,本文提出了一種基于塊的分級空洞填充技術,對因三維旋轉而產生的空洞圖像,首先將空洞區域分成兩個等級,其中含有較少的空洞像素點的區域(小空洞區域)設為等級一,含有較多的空洞像素點的區域(大空洞區域)設為等級二。為了保證空洞填充的速度,對于等級一的空洞區域直接分塊,利用塊的均值來填充空洞;而等級二區域的點,由于空洞區域較大,空洞像素點過多,不能滿足塊的均值填充需要較多的已知像素的條件,所以對于等級二空洞區域的點使用塊匹配技術按塊進行填充。
基于圖像的繪制(Image-based Rendering,IBR)技術[7]旨在利用已有的圖像信息來繪制現實世界的場景。其中基于深度圖的繪制(Depth Image Based Rendering,DIBR)系統是一種在3DV系統中應用最為廣泛的技術,其客戶端最重要的技術就是基于深度圖像的繪制(DIBR)。DIBR技術是利用參考圖像、深度圖像以及相關相機參數來合成一個虛擬視點,它首先將參考圖像中像素的相機坐標映射到點的世界坐標,再將世界坐標映射到目標圖像的相機坐標中,完成3D旋轉。其中兩次映射公式分別如式(1)、式(2)所示

式中:A是攝像機的內參矩陣;R是攝像機的旋轉矩陣;t是平移矩陣;d表示在三維空間點的深度值;參考視點的坐標(u,v)通過三維旋轉到(U,V)。

式中:坐標(l,m,n)歸一化變成就代表虛擬視點的整數坐標(U,V)。按公式對參考圖像進行3D旋轉,就得到了一幅含有空洞的目標圖像。
對于3D旋轉后帶有空洞的目標圖像,在自由視點視頻(Free Viewpoint Video,FVV)中最常用的方法就是利用不同視點來繪制同一虛擬視點的視點圖像,然后利用圖像融合技術[8-11]融合得到的虛擬視點圖像來填充空洞像素。顯然在單路彩色加深度系統中由于只有1路已知視點圖像,所以不能應用融合技術,針對單路彩色加深度3DV系統,結合圖像修復[12-13]的思想,本文提出了一種基于塊的分級空洞填充技術。本算法針對不同級別空洞采用不同的填充算法,主要包括兩種空洞填充技術:塊的均值填充和塊匹配填充。
塊的均值填充:
首先,以當前空洞像素的位置為中心向周圍擴展一個N×N塊。
然后,利用式(3)以當前N×N塊中非空洞像素的均值來填充。

式中:P(x,y)表示在像素點(x,y)處的空洞像素的值;N是擴展的N×N塊的邊長;M是以點(x,y)為中心擴展的N×N塊中的空洞像素點的個數;P(x+i,y+j)為點(x+i,y+j)處的像素值。本算法僅應用于小空洞區域,所以得到的N×N塊中M值較小,這樣就能保證塊中有足夠多的非空洞像素來求均,從而保證填充值的正確性。
塊匹配填充:
第一步,從大空洞區域邊緣的空洞像素開始建立一個塊。
第二步,從當前塊開始進行搜索找到與當前塊最匹配的塊,本文使用絕對值最小匹配準則確定最匹配塊,如式(4)所示

式中:(i,j)表示最佳匹配向量;N是塊的邊長;P(x,y)和P(x+i,y+j)分別表示點(x,y)和點(x+i,y+j)處的像素值;D表示搜索深度。
第三步,利用式(5),用搜索到的最匹配的塊中的像素值來填充當前塊中的空洞。

式中:坐標數組[x,y] ={[0,0],[0,1],[0,2],…,[N-1,N-2],[N-1,N-1]};Pref(x,y)和Ptar(x+i,y+j)分別表示含空洞塊的像素值和搜索到的最佳匹配塊對應位置的像素值;(i,j)表示第二步中得到的最佳匹配向量。
第四步,重復第一步到第三步直到當前空洞區域全部填充好。
該算法的具體實現如圖1所示。
從圖1可知,相對于基于像素的填充,本算法采用的基于塊的填充技術,有效地保證了待填充像素和周圍像素的相關性,使得填充后的圖像更加真實。同時,為了兼顧填充效率和填充后圖像的質量,本算法提出分級空洞技術,按照帶空洞圖像的空洞區域的大小(統計空洞區域中空洞像素點的個數)將空洞區域分成兩個等級,對于較大的空洞區域采用塊匹配技術,從空洞區域周圍搜索與當前含空洞像素塊最匹配的塊來填充塊中空洞像素。由于塊匹配技術很好地保持填充像素和周圍像素的相關性,所以填充后的圖像主客觀質量都有提高;對于較小的空洞區域,利用塊的均值填充和使用塊匹配技術填充的效果相當,所以對于較小的空洞區域直接利用塊的均值填充來保證填充速度。

圖1 基于塊的分級空洞填充技術實現框圖
為了驗證本算法在虛擬視點繪制時空洞填充的有效性,實驗將本文填充算法和經典的鄰域填充、僅僅使用塊均值填充的填充效果進行了主客觀的比較。本次試驗采用的測試序列是JCT-3V的測試序列BookArrival(1 024×768)、pantomime(1 280 ×960)、lovebird1(1 024 ×768)、kendo(1 024 ×768)、balloons(1 024 ×768),采用PSNR和SSIM[14]作為客觀評價標準。圖2~6是本文算法與鄰域和塊均值填充算法的主觀性能的比較。

圖2 基于塊的分級空洞填充技術實現框圖
從圖2~6的實驗結果可以看出,本文算法消除了鄰域和塊均值填充在大空洞區域過分平滑的錯誤,保持了邊緣和紋理的連續性(特別是圖2的地毯、圖3的幕布、圖4的樹部分,充分保留了邊緣和紋理的連續性,獲得了很好的視覺效果)。因此,本文提出的算法很好地改善了填充后圖像的主觀質量。

圖3 序列pantomime不同填充算法主觀質量比較

圖4 序列lovebird1不同填充算法主觀質量比較

圖5 序列kendo不同填充算法主觀質量比較

圖6 序列balloons不同填充算法主觀質量比較
對于本文算法與其他兩種算法的客觀比較結果如表1、表2所示,實驗中分別選取了5個序列(BookArrival,pantomime等)的前10幀進行測試,統計了它們前10幀的平均PSNR和SSIM。

表1 不同填充算法的平均PSNR dB

表2 不同填充算法的平均SSIM dB
從表1、表2的客觀評價試驗結果可以看出,相對于鄰域填充,本文算法在大部分情況下PSNR和SSIM是有所提升的;和僅僅使用基于塊的均值填充相比,PSNR有0.01 dB級別的下降,而SSIM有0.000 1 dB級別的下降,這是因為塊的均值填充將整個空洞區域平滑了,其客觀質量略優于本文算法,但是其主觀質量遠低于本文算法。
綜上主客觀的綜合評價結果,可以發現本文算法在大大改善主觀質量的同時,也兼顧了客觀質量,明顯優于傳統的鄰域填充和僅僅使用塊均值填充。
本文提出了一種應用于單路彩色加深度的3D視頻系統的基于塊的分級空洞填充技術,該技術充分考慮了待填充像素和周圍像素的相關性,可以獲得很好的主觀質量。從實驗結果可以看出使用本文方法可以大大地提升填充后圖像的主觀性能,同時為了改善填充算法的填充速度,本文還采用了分級技術。總之,本文的填充算法充分考慮了填充速度和填充后圖像的主客觀質量,可以很好地應用于單路彩色加深度的3D視頻系統中。
[1] FEHN C.Depth-image-based rendering(DIBR),compression and transmission for a new approach on 3D-TV [C]//Proc.SPIE Conf.Stereoscopic Displays and Virtual Reality Systems XI.[S.l.]:SPIE Press,2004:93-104.
[2]鄭專,安平,張秋聞,等.基于GPU加速的深度圖像繪制[J].電視技術,2012,36(11):11-14.
[3] MCMILLAN L.An image-based approach to three-dimensional computer graphics[D].Chapel Hill,NC,USA:University of North Carolina,1997.
[4] MCMILLAN L.A list-priority rendering algorithm for redisplaying projected surfaces[EB/OL].[2013-02-15].http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.45.1759.
[5] CHENW,CHANG Y,LIN S,etal.Efficient depth image based rendering with edge dependent depth filter and interpolation[C]//Proc.ICME 2005.[S.l.]:IEEE Press,2005:1314-1317.
[6] OH K,SEHOON Y,HO Y.Hole filling method using depth based inpainting for view synthesis in free viewpoint television and 3-D video[C]//Proc.PCS 2009.[S.l.]:PCSPress.2009:1-4.
[7] CHAN S,SHUM H,KING T.Image-based rendering and synthesis[J].Signal Processing Magazine,2007,24(6):22-33.
[8] TIAN D,LAIP,LOPEZ P,et al.View synthesis techniques for 3D video[C]//Proc.SPIE 7443,Applications of Digital Image Processing XXXII.[S.l.]:SPIE Press,2009:1-11.
[9] OH K,SEHOON Y,ANTHONY V,et al.Virtual view synthesis method and self-evaluation metrics for free viewpoint television and 3D video[J].International Journal of Imaging Systems and Technology,2010,20(4):378-390.
[10]鞠芹,安平,張倩,等.高質量的虛擬視點圖像的繪制方法[J].電視技術,2009,33(9):9-11.
[11] FENG Y,LID,LUO K,et al.Asymmetric bidirectional view synthesis for free viewpoint and three-dimensional video[J].IEEE Trans.Consumer Electronics,2009,55(4):2349-2355.
[12] CHEN Y.A lattice-boltzmann method for image inpainting[C]//2010 3rd International Congress on Image and Signal Processing.[S.l.]:IEEE Press,2010:1222-1225.
[13] OLIVEIRA M,BRIAN B,MCKENNA R,et al.Fast digital image inpaintingc[C]//Proc.VIIP 2001.Marbella,Spain:[s.n.],2001:3-5.
[14] WANG Z,BOVIK A.Mean squared error:love it or leave it?-A new look at signal fidelitymeasures[J].IEEE Signal Processing Magazine,2009,26(1):98-117.