一種分區域的3d視頻編碼方法
【技術領域】
[0001] 本發明屬于3D視頻編碼技術領域,具體設及一種分區域的3D視頻編碼方法。
【背景技術】
[0002] 在3D視頻中,對原始視點的編碼是一項很重要的技術。3D視頻,即=維視頻,其格 式主要分為多視點和多視點加深度兩種常見格式。多視點加深度格式由于能利用紋理信息 個深度信息合成任意位置虛擬視點,因此是目前最廣泛使用的3D視頻格式。
[0003] 目前最新的=維視頻編碼標準是3D-HEVC,即=維的高效視頻編碼技術,利用了視 點間相關性、視點內的相關性,和紋理和深度之間的相關性W壓縮視頻序列。但是3D-肥VC 只是從原始視點的角度考慮如何盡可能的壓縮視頻數據,沒有考慮對虛擬視點質量的影 響。因為在某些使用場景,虛擬視點可能比原始視點更為重要。在有限的傳輸帶寬下,犧牲 原始視點的質量W滿足虛擬視點的高質量也是可行的。
[0004] 化eonLee,化-Sung化等人提出了一種利用視點合成預測的視頻編碼的框架, 運個框架同時壓縮視頻圖像和深度圖像,并根據視點位置設計了四中類型的視點合成預測 方法,但是運種方法非常復雜,運算量大,因為在編碼段和解碼端都要合成一個新的虛擬視 點。
[0005] 目前大多數采用DIBR值epth-image-basedRendering,即基于深度圖像的繪制) 技術來合成虛擬視點。DIBR的核屯、是利用深度信息和攝像機參數把像素從已知的原始視點 映射到未知的合成視點。DIBR-般包括S個步驟:(1)3D映射;(2)空桐填補;(3)視點融 合。
【發明內容】
[0006] 本發明的目的是提供一種分區域的3D視頻編碼方法,在相同BCS觀測率條件下能 夠有效地提高合成的虛擬視點的質量。
[0007] 本發明是運樣實現的,其特征是包括下列步驟:如附圖2所示:
[000引第一步:計算闊值:3D視頻兩個相鄰視點的紋理圖和深度圖,即攝像機獲取的兩 個視點分別記為第一視點1和第二視點3,假設用第一視點1和第二視點3來合成中間的虛 擬視點2。我們通過計算一個闊值來確定第一視點1和第二視點3中區域的邊界,闊值由公 式(1)可求,
[000引
W
[0010] 其中,Z。。。,和Zhf是自然場景與攝像機之間的距離范圍,也可稱為深度范圍,L是 第一視點1和第二視點3之間的距離,即基線長度,fy是攝像機焦距。
[0011] 第二步:從第一視點1和第二視點3中任選取一個視點為主視點,根據主視點深度 圖分別對第一視點1和第二視點3進行分區域。
[0012] 首先從第一視點1和第二視點3中任選取一個視點為主視點,計算主視點深度圖 中每兩個相鄰像素之間的深度值之差AZ,然后利用公式(2)、(3)進行感興趣邊界檢測,d(x,y)代表(x,y)處的深度值,Bl(x,y)代表深度圖左邊界,
[0013] g粒的么^ 紙^ ;如-嶺堿;3 ^ 巧 ' to,城我好F秘!及孩 ?
[0014] 同理,Br(X,y)代表右邊界, 「。…Cl?>f'、!'13? ::::巧》,V) ....d(xI- 1,V) <AZ,勺、
[001 引 孩叫義'< V)二:I。f, 、 、?' (3) - ' %化(茲孩鮮'脈W好
[001引 (1)如果Bl(X,y) = 1,則認為(X,y)和(X-1,y)之間有一個左邊界,(X,y)屬于 前景,(X-1,y)屬于背景;
[0017] 似如果化(X,y) = 1,認為(X+1,y)和(X,y)之間有一個右邊界,(X,y)屬于前 景,(X+1,y)屬于背景;
[001引 做如果Bl(x,y)或者化(x,y)等于0,則相鄰像素之間沒有邊界。
[0019] 第=步:根據虛擬視點2合成規則對第一視點1和第二視點3執行區域分割,并判 定是否為重要區域。
[0020] 我們對不同區域采用不同的處理方法W節省碼率,考慮背景平面Q與成像平面P 平行的情況,由于本方法對區域要求可W不用很精確,因此只考慮背景Q作為平面的情況。 本發明只考慮ID模型,即第一視點1和第二視點3的照相機平行放置,成像平面P僅有水 平視差沒有垂直視差。根據深度圖所描述的實際場景信息對成像平面P進行區域劃分,第 一視點1和第二視點3代表原始視點,虛擬視點2代表需要使用第一視點1和第二視點3 來合成的視點,區域麗和AJ分別表示前景和背景。第一視點1和第二視點3之間的基線 長度為以fx是攝像機的焦距長度。
[0021] 假設第一視點1被選為主視點。根據3D映射過程按照虛擬視點2所需的區域"從 左到右"順序進行,可分為四個步驟:
[0022] 1)計算區域AB在第一視點1中的長度Cab。
[002引 由于區域AB超出了虛擬視點2的視覺范圍,為非重要區域,所W將其在第一視點 1中的對應區域進行低BCS觀測率采樣。設Cab代表區域AB在第一視點1中的長度,CU代 表A點對應的視差值,Z。。。,和Z hf分別代表場景最近值和最遠值,
[0024]
(4)
[002引。計算左邊界區域DE在第一視點1中的長度Cw。
[0026] 由于區域DE被前景MN所遮擋,導致虛擬視點2對此區域不可見,因此為非重要區 域,對此區域采用低BCS觀測率采樣,
[0027]
巧)
[002引其中,dM、屯的表示意義同上述cU。第一視點1中除W上兩個區域外的所有區域均 為重要區域,在編碼時對其采用高BCS觀測率采樣。
[0029] 扣計算區域FG在第二視點3中的長度
[0030] 因為虛擬視點2需要的FG區域在第一視點1中被遮擋,因此我們需要從第二視 點3中尋找對應的區域,因此此區域為重要區域,需要采用高BCS觀測率,區域FG可由公式 化)求得:
[0031]
(巧
[00礎其中,(In、dp的求取方法同上述(1a。
[0033] 4)計算第二視點3中區域IJ的長度C。。
[0034] 最后,對于虛擬視點2需要的區域IJ,由于在第一視點1中不可得,因此我們需要 從第二視點3的相應區域來得到,因此此區域為重要區域,需要采用高BCS觀測率。區域長 度Cu可化圍過公式(7)計算,
[00對
斌:
[003引其中,di的求取方法同上述cU。第二視點3中除區域FG、區域IJ外的所有區域均 為非重要區域,在編碼時采用低BCS觀測率采樣。
[0037] 如果第二視點3被選為主視點,區域劃分方法和求取方法相同,只是改變了重要 性規則。
[003引第四步:對不同的區域進行觀測率分配。
[0039] 在上一步中對第一視點1和第二視點3進行了區域劃分,在運一步則根據區域重 要性進行不同的CS觀測率分配:對重要區域分配了較高的CS觀測率,對非重要區域去則分 配較低觀測率。
[0040] 根據壓縮感知(C巧理論,對于一個稀疏信號X,通過使用一個采樣矩陣O可得一 個觀測值向量,運個矩陣通常是標準正交的,即二I。觀測值y可由公式(8)得到:
[0041] Y=巫X 做
[0042] 在CS重建的過程中,假設存在一個稀疏變換參數陣使得X' = Wx,最理想的恢復 是找到和y具有最小零范數的X',
[0043] :r' ::::argmjByr1i;〇>'s,Ly::::爾?/ ''V' 棋) 義
[0044] 其中W 1代表逆變換。
[0045] 當CS應用到二維圖像領域的時候,CS面臨很多問題,例如較大的觀測矩陣和復雜 耗時的重建過程等。由于W上問題,分塊壓縮感知度C巧被提出。一幅圖像被分為幾個不 重疊的塊,每個塊都由一個相同的觀測矩陣〇8進行觀測,等同于原始圖像被一個對角陣? 進行觀測,
[0046] # - (10) . 奪資-
[0047] 由于Oe的大小遠小于巫,儲存觀測矩陣所用的空間大大減小,重建過程的速度也 大大提高。
[0048] 由于選擇第一視點1為主視點,所W第一視點1中大部分區域都是重要區域,而第 二視點3中只有W上求取得區域為重要區域,其余均為非重要區域。
[0049] 對重要區域應用觀測率為Rl,對非重要區域觀測率則為R2,如公式(11)所示,
[0050] 、 解,黨要K域 Sidnale- 4 丄 1) (巧2,;皆麗要遂域
[0051] 分配不同觀測率后,對比方法中視點的觀測率可W由W上觀測率求得,即等效觀 測率。
[0052] swi》'r沒如?巧《禪.資i ………一………*玄r好巧k)巧沒好始。沒t好 (12 ) 去肛0枯rsm' 、
[0053] 其中col和row分別代表當前帖的寬度和高度,region_size代表當前帖中每個 區域的大小,subrate代表對應的觀測率。
[0054] 本發明的優點及積極效果是:
[0055] 1)本方法基于分區域映射思想,充分利用了原始視點中不同區域對虛擬視點的重 要性做3D視頻編碼,減少了不必要區域的編碼;
[0056] 2)在原始視點相同的觀測率下,合成的虛擬視點質量有較大的提高。
【附圖說明】
[0057] 圖1是本發明的基本流程框圖;
[005引圖2是本發明中的區域劃分示意圖;
[005引 圖3是本發明kendo序列的峰值信噪比(PSNR)對比圖;
[0060] 圖4是本發明bookarrival序列的峰值信噪比(PSNR)對比圖;
[006。圖5是本發明的實驗結果視覺效果對比圖,圖中(A)為kendo序列,做為bookarrival序列,上圖為原始圖像,中圖為未分區域合成的虛擬視點圖像,下圖為分區域 合成的虛擬視點圖像;
【具體實施方式】
[0062] 對本發明提出的分區域3D視頻編碼方案,我們做了初步的測試實驗。采用標準 測試序列作為輸入,即kendo序列和bookarrival序列,取了前10帖做測試,序列分辨率 1024*768。使用dell工作站做仿真,工作站參數為Jntel(R),Xeon(R)如ad-CoreCPU, 2. 8GHz,4.00GB-DDR3內存。軟件平臺為MATLAB2010b,用MATLAB編程實現了本方案。
[0063] 本實例是運樣實現的,其過程包括下列步驟:如附圖2所示:
[0064] 第一步:計算闊值:3D視頻兩個相鄰視點的紋理圖和深度圖,即攝像機獲取的兩 個視點分別記為第一視點1和第二視點3,假設用第一視點1和第二視點3來合成中間的虛 擬視點2。我們通過計算一個闊值來確定第一視點1和第二視點3中區域的邊界,由公式 (1)計算得到:Kendo闊值 AZmax=21!Bookarrival闊值 AZmax=26。
[0065] 第二步:從第一視點1或者第二視點3中任選取一個視點為主視點,本發明選取第 一視點1做為主視點,根據主視點深度圖分別對第一視點1和第二視點3進行分區域。
[0066] 首先選取