用于三維視頻編碼的容錯亮度補償的方法
【專利說明】用于三維視頻編碼的容錯亮度補償的方法
[0001] 【交叉引用】
[0002] 本發(fā)明主張申請于2013年4月12日,序列號為PCT/CN2013/074136,標題為 "Removal of Parsing Dependency for Illumination Compensation',的 PCT 專利申請的 優(yōu)先權。將此PCT專利申請以參考的方式并入本文中。 【技術領域】
[0003] 本發(fā)明涉及視頻編碼。特別涉及三維/多視圖視頻編碼中的亮度補償。 【【背景技術】】
[0004] 三維(Three-dimensional,以下簡稱為3D)電視技術是近年來的技術發(fā)展趨勢, 其試圖給觀看者帶來轟動的觀看體驗(viewing experience)。多視圖視頻是一種用來捕 獲并呈現3D視頻的技術。多視圖視頻通常是通過由多個相機同時捕獲一個場景來創(chuàng)建,其 中,多個相機被合適地定位以使每個相機從一個視角(viewpoint)來捕獲該場景。具有大 量與視圖相關聯的視頻序列的多視圖視頻表示了巨量的數據(massive amount data)。因 此,多視圖視頻需要大量的存儲空間來存儲和/或需要高的帶寬來傳送。因此,在本領域 中,多視圖視頻編碼技術被開發(fā)出來以減少所需要的存儲空間以及傳送帶寬。一個直接方 法可以簡單地應用于現有的視頻編碼技術,使每個單個視圖視頻序列獨立且忽視不同視圖 中的任何關聯。這樣的直接的技術將導致低下的編碼性能。
[0005] 為了提高多視圖視頻編碼效率,多視圖視頻編碼總是利用視圖間冗余。兩個視圖 之間的視差是由兩個相關相機的位置以及角度而導致。因為所有相機是從不同的視角捕獲 相同的場景,所以多視圖視頻數據包括大量視圖間冗余。利用視圖間冗余,使用視差向量 (disparity vector,DV)的編碼工具已經被開發(fā)以用于3D高效視頻編碼(High Efficiency Video Coding,HEVC)以及 3D 先進視頻編碼(Advanced Video Coding)。例如,DV 被用作先 進運動向量預測(Advanced Motion Vector Prediction, AMVP)以及合并模式中的時間視 圖間運動向量候選(temporal inter-view motion vector candidateJIVChDV也可被用 作AMVP以及合并模式中視差視圖間運動向量候選(disparity inter-view motion vector candidate,DIVC)。此外,DV 被用于視圖間殘差預測(inter-view residual prediction, IVRP)以及視圖合成預測(view synthesis prediction,VSP)。
[0006] 此外,亮度補償(Illumination Compensation,IC)是一種減少由不同相機于 不同位置捕獲的兩個視圖的不同光線區(qū)域而導致的光強度(intensity)差值的技術。于 HTM 中,Liu 等人所寫的論文("3D-CE2. h:Results of Illumination Compensation for Inter-View Prediction",Joint Collaborative Team on 3D Video Coding Extension Development of ITU-T SG 16WP 3and IS0/IEC JTC 1/SC 29/ffG 11,2nd Meeting:Shanghai, CN, 13- 190ct. 2012, Document:JCT3V-B0045)中揭露了一種線性 IC 模型,用來補償不同視圖中的亮度差異。IC模型中的參數被估計以用于每個預測單元 (Prediction Unit,PU),其中,每個PU使用可用的最近重建相鄰像素。因此,不需要將IC 參數傳送到解碼器。是否應用IC是在編碼單元(coding unit,⑶)等級決定,且IC旗標被 編碼以指示于此CU等級下IC是否被啟用。旗標僅存在于使用視圖間預測來編碼的CU。如 果用于CU的IC被啟用,且CU中的PU通過時間預測(即,幀間預測)被編碼,則PU塊被認 為是具有IC禁用。用于視圖間預測的線性IC模型如等式(1)所示:
[0007] p(i, j) = aIC · r(i+dvx, j+dvy)+bIC where (i, j) e PUc (I)
[0008] 其中,PUc是當前PU, (i,j)為PUc中的像素坐標,(dvx,dvy)為PU。的視差向量, P(i,j)PUc的預測,r ( ·,·)來自相鄰視圖的HJ的參考圖片,且a IC以及b κ為線性IC模型 的參數。
[0009] 此外,為了提供切片級(slice-level)的自適應1C,編碼器可以決定是否將IC應 用于當前圖片,并傳送該決定到解碼器。一個1比特的旗標可以被編碼到第一切片的切片 標頭中,以指示是否IC被啟用以用于圖片中的第一切片以及其后續(xù)切片。用于IC決定的 決定過程的示例如下所示。
[0010] 1)形成當前圖片以及視圖間參考原始圖片的像素光強度柱狀圖。
[0011] 2)計算兩個柱狀圖之間的SAD。
[0012] 3)如果SAD超過閾值,IC旗標被設置為1 ;
[0013] 4)否則,IC旗標被設置為0。
[0014] 當前以及視圖間參考圖片的每個顏色的像素光強度分布是由柱狀圖來表示,且兩 個分布的相似性是通過兩個柱狀圖的絕對差和(Sum of Absolute Differences,SAD)來測 量。接著,將SAD與閾值相比較以確定是否對當前圖片啟用1C。閾值可以根據從待編碼圖 片(underlying picture)或測試圖片中收集的圖片特性來確定。當IC被禁用于圖片時, 編碼器不需要確定是否對當前圖片的CU提供1C。在此情況下,不需要向解碼器傳送CU等 級旗標。因此,在編碼器側以及解碼器側,都可以避免不必要的IC決定。
[0015] 雖然IC可以提供顯著的編碼增益,但是根據當前基于HEVC的測試模型 (HEVC-based Test Model,HTM),IC 會導致解析依賴(parsing dependency)問題。根據現 存的HTM,IC旗標(ic_flag)僅被使用于(signalled)圖片間CU(inter CU),其中,視圖間 預測被使用。解析器必須檢查是否視圖間參考數據被使用。如果視圖間參考數據被使用, 解析器將解析用于當前CU的ic_flag。因此,如果參考列表僅包含視圖間參考圖片,則ic_ flag總是需要被解析。另一方面,如果參考列表僅包含跨時間參考圖片,則ic_flag從來不 需要被解析。在這兩種情形下是沒有解析依賴的。
[0016] 當參考列表包括視圖間以及跨時間(即,時間)參考圖片時,可能會出現解析問 題。如果當前CU中的所有PU都是以非合并模式(例如,AMVP模式)被編碼,因為所有 被使用的參考圖片是通過用于非合并模式的參考索引(reference indices)來顯式地表 示,所以不會有解析依賴,其中AMVP模式為先進運動向量預測(Advanced Motion vector Prediction)模式。然而,根據現存的HTM,用于使用合并模式編碼的PU的參考圖片不是 顯式地表示??商娲模瑓⒖妓饕╮eference index)是由所選擇的合并候選中導出。由 于合并候選列表結構中的修剪過程(pruning process),所導出的參考圖片可取決于其相 鄰塊的運動向量(motion vector,MV)。因為相鄰塊的MV來自于對應圖片(collocated picture),所導出的參考圖片可間接地取決于對應圖片。如果對應圖片損壞(例如,由于傳 送錯誤),則ic_flag的解析問題可能會發(fā)生。
[0017] 圖IA以及圖IB為由于間接解析依賴而發(fā)生解析問題的示例的示意圖。在此示例 中,參考圖片Ref 0以及參考圖片Ref 1分別為跨時間(inter-time)以及視圖間參考圖 片。當前CU被編碼為2Nx2N合并模式,且所選擇的合并候選是由合并索引1來指示。在此 示例中,與前三個候選相關聯的參考索引為〇、〇、以及1。由前兩個候選中導出的MV被表 示為MVa以及MVb,如圖IA所示的示例中,MVa以及MVb是相等的,即,MVa = MVb。此外, MVb是由時間運動向量預測(Temporal Motion Vector Prediction,TMVP)從對應圖片中 獲取。在合并候選修剪過程中,因為第二可能候選與第一可能候選相等,第二可能候選將從 候選列表中移除。此過程將導致如圖IB所示的候選列表110。因此,合并索引1指的是具 有視圖間參考的第三原始候選(于第二候選被移除之前)。其結果是,如果對應圖片在解 碼器中被正確地接收,則ic_flag需要被解析以用于此⑶。然而,如果對應圖片被損壞(例 如,由于傳送錯誤),與相鄰塊相關聯的候選MVb可能會被錯誤解碼。這將會導致MVa != MVb,且在此情況下,第二候選將不會從候選列表中移除。這就會導致如圖IB所示的候選列 表120。因此,合并索引1將指向此候選列表中的第二可能候選,第二可能候選是一個跨時 間參考。因此,根據現存的HTM,ic_flag不會被解析以用于此⑶,且會出現解析問題。
[0018] 因此,