1. 程式人生 > >JVET H.266編碼技術&JEM編碼平臺關鍵技術整理分析

JVET H.266編碼技術&JEM編碼平臺關鍵技術整理分析

    也是很久沒有寫部落格了,也不能說因為時間太忙,可能就是有些顧不太過來更新,同時自己專案和學習的進展也比較有限吧。

    這篇部落格是上一週,給導師做的《JVET H.266編碼技術調研》。其實基本沒有太多自己的東西,絕大部分來源於網路大神們部落格的分析見解,和大量來自於JVET官方文件的翻譯。

    不過,由於在找資料的時候,發現跟蹤H.266指定標準的人不少,但相關的技術文章卻不太多,也大多有些曲高和寡的意思。像我這種不是專業研究,只是瞭解的人來說,還是多少一些不方便。這裡便把這篇技術文章傳上來,方便大家瞭解JVET的H.266及JEM的技術構成。

 以下絕大部分技術內容來源於JVET-G1001-v1

Algorithm Description ofJoint Exploration Test Model 7 (JEM 7)的翻譯和校對。該文件可在官方站點:https://jvet.hhi.fraunhofer.de/ 的document site中,會議文獻下載得到。

此處僅放出本文件的前兩章內容,詳細內容請跟隨下載:https://download.csdn.net/download/fan2273/10281796

(主要想賺點積分,方便看其他大神的工程和程式碼……需要文件沒有積分的可以私信我~)

JVET H.266編碼技術

目錄

1.         介紹:... 2

2.         主要調整與更改介紹:... 2

2.1.        塊結構... 2

2.2.        幀內預測模式... 3

2.3.        幀間預測模式... 3

2.4.        變換... 3

2.5.        環路濾波器... 3

2.6.        CABAC調整... 3

3.         特徵詳細... 4

3.1.        四叉樹加二叉樹結構的大塊CTUs. 4

3.2.        幀內預測的調整... 5

3.2.1.  採用67個幀內預測模式的幀內模式編碼... 5

3.2.2.  四插頭內插濾波器... 8

3.2.3.  邊界預測濾波器... 8

3.2.4.  交叉分量線性模型預測... 8

3.2.5.  平面模式的位置相關幀內預測組合... 11

3.3.        幀間預測調整... 12

3.3.1.  基於子CU的運動向量預測... 12

3.3.2.  自適應運動向量差分解析... 14

3.3.3.  更高的運動向量儲存精度... 15

3.3.4.  重疊的塊運動補償... 15

3.3.5.  區域性光照補償... 16

3.3.6.  仿射運動補償預測... 17

3.3.7.  模式匹配的運動向量推導... 19

3.3.8.  雙向光流... 20

3.3.9.  解碼器端運動向量細化... 24

3.4.        變換調整... 25

3.4.1.  採用高頻歸零的大塊變換... 25

3.4.2.  自適應多核變換... 25

3.4.3.  依賴於模式的不可分離次級變換... 28

3.4.4.  訊號相關變換... 29

3.5.        環路濾波... 30

3.5.1.  雙邊過濾器... 30

3.5.2.  自適應環路濾波器... 32

3.5.3.  內容自適應裁剪... 32

3.6.        CABAC調整... 32

3.6.1.  變換系數的上下文建模... 33

3.6.2.  多假設概率估計... 33

3.6.3.  上下文模型的初始化... 34

4.         參考文獻... 34

1.         介紹:

H.266是下一代視訊編碼標準,制定方為由MPEG和ITU聯合成立的JVET(jointvideo explore team)。JVET,全稱聯合視訊探索小組,是未來視訊壓縮、編解碼技術的研究小組。JVET負責研發、維護JEM(H.266)測試平臺與360Lib(全景投影)測試平臺。

H.266的探索是從2016年2月24日,在JVET第一次會議(Geneva)上提上日程。至今,已召開了9次會議(最近一次會議為2018年1月20日於Gwangju召開)。H.266的提出,與H.265的針對應用場景不同。H.266指定是針對4K及以上的高清/超高清視訊,位深主要是10bit,且需要適應HDR(高動態範圍)及WCG(廣色域)。

H.266及其測試模型JEM的演算法及技術,主要建立在H.265/HEVC測試模型基礎上。HEVC的基本編碼和解碼流程圖在JEM中保持不變;改進了其中的包括塊結構、幀內和幀間預測、殘差變化、環路濾波器和熵編碼等重要模組,並增加了額外的編碼工具。

其中,H.266的編碼框架在預測、變換、量化、反量化、反變換、濾波、熵編碼模組,在原有的演算法上做出了調整及改進,但基本相似。最大的變化為,H.266中,編碼器的最大塊尺寸由H.265的64變為128,且僅有10bit深度配置(輸入為8bit深度將自動轉換為10bit深度編碼處理)。H.266的編碼框架不再使用H.265的四叉樹劃分方式,而變為了四叉樹加二叉樹(QTBT)劃分,不再有PU、CU、TU的單元區別。編碼配置檔案與H.265相似,編碼GOPSize由原來的8增大為16,支援浮點QP。

本文以H.266測試模型JEM 7(purpose on 7th Meeting: Torino, IT, 13–21 July 2017)為參考分析,參考會議文獻JVET-G1001-v1《AlgorithmDescription of Joint Exploration Test Model 7 (JEM 7)》。該文獻描述H.266測試模型JEM 7已使用演算法及工具的特徵及關鍵技術。截止時間2018年1月第9次會議,JEM模型未再做調整更改。

2.         主要調整與更改介紹:

2.1    塊結構

1.     具有較大(128)的CTUs的四叉樹加二叉樹(QTBT)劃分模式塊結構  [5]

2.2    幀內預測模式

1.     65個幀內預測方向  [4][6][7][8]

2.     用於幀內預測的4-tap插值濾波器     [4][6]

3.     邊界濾波器除水平和垂直還應用於其他方向  [4][6]

4.     交叉分量線性模型(CCLM)預測    [3][4]

5.     位置相關幀內預測組合(PDPC)     [9]

2.3    幀間預測模式

1.     子PU水平運動向量預測       [3][4][10]

2.     區域性自適應運動向量解析度(LAMVR)        [3][4]

3.     1/16畫素運動向量儲存精度

4.     重疊塊運動補償(OBMC)        [3][4]

5.     區域性光照補償(LIC)    [4][11]

6.     仿射運動預測    [12]

7.     模式匹配運動向量推導  [4][6][5]

8.     雙向光流(BIO)    [7][8]

9.     解碼器側運動向量細化(DMVR)   [14]

2.4    變換

1.       採用高頻歸零的大塊變換

2.       自適應多核變換      [3][4]

3.       模式相關的不可分離二次變換   [4][13]

4.       訊號相關變換(SDT)        [15]

2.5    環路濾波器

1.       雙邊濾波器       [16]

2.       自適應環路濾波器         [3][4]

3.       內容自適應裁剪      [17]

2.6    CABAC調整

1.       根據變換系數等級的上下文模式選擇     [4][6]

2.       多假設概率估計      [4][6]

3.       上下文模型的初始化     [4][6]