JVET H.266編碼技術&JEM編碼平臺關鍵技術整理分析
也是很久沒有寫部落格了,也不能說因為時間太忙,可能就是有些顧不太過來更新,同時自己專案和學習的進展也比較有限吧。
這篇部落格是上一週,給導師做的《JVET H.266編碼技術調研》。其實基本沒有太多自己的東西,絕大部分來源於網路大神們部落格的分析見解,和大量來自於JVET官方文件的翻譯。
不過,由於在找資料的時候,發現跟蹤H.266指定標準的人不少,但相關的技術文章卻不太多,也大多有些曲高和寡的意思。像我這種不是專業研究,只是瞭解的人來說,還是多少一些不方便。這裡便把這篇技術文章傳上來,方便大家瞭解JVET的H.266及JEM的技術構成。
以下絕大部分技術內容來源於JVET-G1001-v1
此處僅放出本文件的前兩章內容,詳細內容請跟隨下載: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]