10-HEVC的高層語法結構

一、概述
參考文獻“Overview of HEVC High-Level Syntax and Reference Picture Management”簡述了HEVC的高層語法結構,並着重於提供新功能,提高抗誤碼魯棒性的新語法元素。

H.264等前代標準考慮的是連續的視頻的視頻碼流,儘管有條帶等概念,但是這些標準在條帶上層(如幀一級)上未能考慮抗誤碼性。H.264可以流的形式傳輸,但是從開始便被設計成以分包的形式發送。H.264 NAL提供了獨立分包,使得視頻層數據在不同網絡環境下保持一致。數據頭參數由參數集NAL單元標記,並且編碼視頻NAL單元會參考其數據。

HEVC繼承了H.264的一些概念,如NAL單元、參數集合、POC和SEI等概念。在捨棄了H.264一些設計的同時,加入了一些新的模型,如VPS, CRA, BLA,TSA, Tiles, WPP,依賴性條帶、RPS等概念。

二、NAL單元頭
編碼後的視頻碼流分割爲NAL單元在有損網絡環境中進行傳輸,每個單元的長度應小於指定最大長度MTU。每一個NAL單元由NAL頭和NAL有效載荷組成。不同的NAL單元分爲VCL NAL和非VCL NAL單元,前者攜帶編碼過的圖像數據,後者包含多幀共享的元數據。NAL的頭採用固定的結構。

H.264的NAL頭爲1個字節長度,在其可分級和多視點擴展(SVC和MVC)中擴展爲3個字節長度。在HEVC中,NAL頭數據指定爲2個字節長度,並支持可分級和3D等等多種擴展。HEVC的NAL頭包含一個必須爲0的forbidden−zero位,6位的NALType位,6個保留位爲0, 還有3bit的temporal−id−plus1(用於支持時間可分級)。

三、參數集合
HEVC的參數集合是H.264對應概念的修改和升級,主要針對三個方面:編碼工具的升級、H.264的應用經驗和新引入的VPS概念。

由於序列和圖像的頭數據包含解碼的關鍵信息,因此至關重要。參數集合的概念引入主要是基於避免“把所有雞蛋放進一個籃子裏”的考慮。參數集可以在比特流中傳輸也可以使用其他方式傳輸,其中攜帶有可供slice頭所參考的識別信息(該過程稱作“激活”)。

引入VPS主要用來傳輸應用於視頻分級的信息,並用於處理在H.264中由於參數重傳引起的延遲等問題,併爲設計簡潔可擴展的多層視頻編碼器提供方便。據此,視頻的參數信息分別在VPS和SPS中保存有副本,這樣解碼器在沒有VPS NAL單元的情況下也可以解碼出視頻信號。SPS包含所有slice解碼所需要的參數信息,其中的內容大致可分爲:(1)自引值(ID)、(2)解碼操作相關信息(檔、級、尺寸等)、(3)該檔次中編碼工具的啓動標識及其附屬參數集、(4)結構可變與變換系數編碼控制信息、(5)時域分級控制和(6)視覺可用性信息。圖像參數集PPS包含的每一幀圖像的參數,每張圖像的PPS可能不同,包含的數據有(1)自引值、(2)初始QP等初始圖像控制信息、(3)tile化信息。Slice頭信息包含每個條帶所不通過的信息,其尺寸可能大於PPS,尤其是在包含tile和wavefront信息時。在參數集的激活過程中,Slice頭包含PPS的參考,PPS包含SPS的參考,SPS則包含VPS的參考。

每一種類型的參數集合都包含擴展機制以適應HEVC標準的擴展,而且不會依賴於解析VPS和SPS中攜帶的檔次/級別信息。

四、圖像類型
總體來講,HEVC中圖像可分爲4中類型:隨機接入點圖像,Leading圖像,子層接入圖像和其他。前兩種圖像之前已經詳細討論過,此處討論第三種。此類圖像是指在解碼順序上,某一子層中與該子層其他圖像沒有依賴性的圖像。

所謂“時域降檔,temporal down-switching”的概念,是由於指低子層的圖像與更高子層的圖像沒有依賴關係,因此將比特流中屬於高子層圖像信息的NAL單元全部捨棄後,依然不影響低子層視頻信號的解碼。其相反過程也就是“時域升檔,temporal up-switching”。

在HEVC中,設置SPS參數sps−temporal−id−nesting−flag爲1,即意味着參數TemporalId大於0的圖像屬於子層接入圖像。其中包含兩種類型,即TSA和STSA。TSA定義爲“轉向”節點,即若圖像按TSA進行編碼,則可以進行子層轉換至該幀所在的子層。該類型對該TSA幀以及同子層以及更高子層內按解碼順序在該幀之後的圖像添加了限制,即這些圖像的幀間預測信息不能源自該TSA之前的圖像。STSA的定義域TSA類似,區別僅僅在於不限制對更高子層圖像的參考,這樣可以向STSA幀所在的高子層進行“升檔”操作。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章