的序列參數集NAL單元、含有針對輔助編碼圖像的數據的序列參數集擴展NAL單元以及針對MVC和SVC VCL NAL單元的子集序列參數集。在草案HEVC標準中,序列參數集RBSP包含:能夠被一個或多個圖像參數集RBSP或含有緩沖時間段SEI消息的一個或多個SEI NAL單元參考的參數。圖像參數集含有此類參數,該參數在若干編碼圖像中有可能未變。圖像參數集RBSP可以包含可以被一個或多個編碼圖像的編碼片NAL單元參考的參數。
[0143]在草案HEVC中,還有第三類型的參數集,這里被稱為自適應參數集(APS),其包含在若干編碼片中有可能未變的參數,但是可以例如針對每個圖像或每個新圖像而改變。在草案HEVC中,APS語法結構包含:與量化度量(QM)、自適應樣本偏移(SAO)、自適應環路過濾(ALF)以及去塊過濾有關的參數或語法元素。在草案HEVC中,APS是NAL單元以及不使用來自任何其他NAL單元的參考或預測被編碼。標識符(被稱為aps_id語法元素)被包含在APS NAL單元中,以及被包含在片頭部中以及在該片頭部中使用以參考特定APS。在另一個草案HEVC標準中,APS語法結構僅含有ALF參數。在草案HEVC標準中,自適應參數集 RBSP 包含:當 sample_adaptive_offset_enabled_flag 或 adaptive_loop_filter_enabled_flag中的至少一個等于I時,能夠被一個或多個編碼圖像的編碼片NAL單元參考的參數。
[0144]草案HEVC標準還包含第四類型的參數集,被稱為視頻參數集(VPS),其例如在文檔 JCTVC-H0388(http://phenix.1nt_evry.fr/jct/doc_end_user/documents/8_San %20Jose/wgll/JCTVC-H0388-v4.zip)中被建議。視頻參數集RBSP可以包含:能夠被一個或多個序列參數集RBSP參考的參數。
[0145]可以如下來描述視頻參數集(VPS)、序列參數集(SPS)和圖像參數集(PPS)之間的關系和層級。在參數集層級中以及在伸縮性和/或3DV的上下文中,VPS位于在SPS之上的一個級別。VPS可以包含:在整個編碼視頻序列中,針對跨越所有(可伸縮或視圖)層的所有片而言是共同的參數。SPS包含:在整個編碼視頻序列中在特定(可伸縮或視圖)層中的所有片而言是共同的并且可以由多個(可伸縮或視圖)層來共享的參數。PPS包含:在特定層表示(在一個訪問單元中的一個可伸縮或視圖層的表示)中針對所有片是共同的并且可能由多個層表示中的所有片共享的參數。
[0146]VPS可以提供關于比特流中的層的依賴性關系的信息,以及在整個編碼視頻序列中對于跨越所有(可伸縮或視圖)層而言可以應用的許多其它信息。在HEVC的可伸縮擴展中,VPS可以例如包含:從NAL單元頭部導出的LayerId值至一個或多個可伸縮維度值的映射,例如對應于類似于SVC和MVC定義的針對層的dependency_id,quality_id, view_id和depth_flag。VPS可以包含針對一個或更多層的檔次和級別信息,以及針對層表示的一個或多個時間子層(由在某些temporal_id值處或在其下的VCL NAL單元組成)的檔次和/或級別。
[0147]H.264/AVC和HEVC語法允許許多參數集實例,以及使用唯一的標識符來標識每個實例。為了限制針對參數集所需的存儲器使用,已經限制了針對參數集標識符的值范圍。在H.264/AVC和草案HEVC標準中,每個片頭部包含圖像參數集的標識符,對于含有該片的圖像的解碼而言該圖像參數集是活動的,以及每個圖像參數集含有活動的序列參數集的標識符。在HEVC標準中,片頭部另外含有APS標識符。因此,圖像和序列參數集的傳輸不是必須與片的傳輸精確地同步。相反,在活動的序列和圖像參數集被參考之前在任何時刻接收它們是足夠的,與用于片數據的協議相比,這允許使用更可靠的傳輸機制在“帶外”傳輸參數集。例如,參數集能夠被包含作為在針對實時傳輸協議(RTP)會話的會話描述中的參數。如果在帶內傳送參數集,則能夠使它們重復以改進誤差魯棒性。
[0148]可以由來自片或來自另一個活動參數集或在一些情況下來自另一個語法結構(諸如緩沖時間段SEI消息)的參考來激活參數集。
[0149]SEI NAL單元可以含有一個或多個SEI消息,這些SEI參數對于輸出圖像的解碼而言不是必須的,但是可以有助于有關過程,諸如圖像輸出定時、渲染、誤差檢測、誤差消除以及資源預留。在H.264/AVC和HEVC中指定了若干SEI消息,以及用戶數據SEI消息使得組織和公司能夠指定針對他們自己使用的SEI消息。H.264/AVC和HEVC含有針對指定的SEI消息的語法和語義但是沒有定義針對在接收器中用于處理該消息的過程。因此,當編碼器創建SEI消息時,要求編碼器遵從H.264/AVC標準或HEVC標準,不要求分別遵照H.264/AVC標準或HEVC標準的解碼器處理針對輸出順序一致性的SEI消息。在H.264/AVC和HEVC中包含SEI消息的語法和語義的其中一個原因是允許不同的系統規范來同一地解釋補充信息以及從而可以互操作。旨在的是,系統規范能夠要求在編碼端中和在解碼端中都使用特定的SEI消息,以及另外能夠指定在接收器中用于處理特定SEI消息的過程。
[0150]編碼圖像是圖像的編碼表不。在H.264/AVC中的編碼圖像包括對于圖像進彳丁解碼而目所需要的VCL NAL單兀。在H.264/AVC中,編碼圖像可以是基本編碼圖像或冗余編碼圖像。在有效的比特流的解碼過程中使用基本編碼圖像,而冗余的編碼圖像是冗余表示,該冗余表示僅應當在基本編碼圖像不能成功地被解碼時被解碼。在草案HEVC中,還沒有指定冗余編碼圖像。
[0151]在H.264/AVC和HEVC中,訪問單元包括基本編碼圖像和與它相關聯的那些NAL單元。在H.264/AVC中,在訪問單元內的NAL單元的出現順序被約束如下。非必需的訪問單元定界符NAL單元可以指示訪問單元的開始。它由零或更多SEI NAL單元跟隨。接下來出現基本編碼圖像的編碼片。在H.264/AVC中,基本編碼圖像的編碼片可以由針對零個或更多冗余編碼圖像的編碼片跟隨。冗余編碼圖像是圖像或圖像的一部分的編碼表示。如果例如由于傳輸中的丟失或物理存儲介質中的破壞,基本編碼圖像沒有被解碼器接收,則冗余編碼圖像可以被解碼。
[0152]在H.264/AVC中,訪問單元還可以包含:輔助編碼圖像,其是補充基本編碼圖像的圖像,以及可以在例如顯示過程中被使用。輔助編碼圖像可以例如用作指定在解碼圖像中的樣本的透明水平的阿爾法通道或平面。阿爾法通道或平面可以在分層合成或渲染系統中使用,其中由在彼此上至少部分透明的覆蓋圖像來形成輸出圖像。輔助編碼圖像具有與黑白冗余編碼圖像相同的語法和語義限制。在H.264/AVC中,輔助編碼圖像含有與基本編碼圖像相同數量的宏塊。
[0153]編碼的視頻序列被定義為是在從IDR訪問單元(包含)到下一個IDR訪問單元(不包含)或到比特流的結束(無論哪個最早出現)的解碼序列中的連續訪問單元的序列。
[0154]圖像組(GOP)和它的特征可以被定義如下。GOP能夠被解碼,而不管任何先前的圖像是否被解碼。開放GOP是這樣的圖像組,其中當解碼從該開放GOP的初始幀內圖像開始時,在輸出順序中的初始幀內圖像之前的圖像可能不能被正確地解碼。也就是說,開放GOP的圖像(在幀間預測中)可以參考屬于先前GOP的圖像。H.264/AVC解碼器能夠從H.264/AVC比特流中的恢復點SEI消息來識別起始開放GOP的幀內圖像。HEVC解碼器能夠識別起始開放GOP的幀內圖像,因為特定的NAL單元類型、CRA NAL單元類型用于它的編碼片。封閉GOP是這樣的圖像組,其中當解碼從封閉GOP的初始幀內圖像開始時,所有的圖像能夠被正確地解碼。也就是說,在封閉GOP中沒有圖像參考先前GOP中的任何圖像。在H.264/AVC和HEVC中,封閉GOP從IDR訪問單元開始。因此,與開放GOP結構相比,封閉GOP結構具有更多的容錯潛力,然而,代價是壓縮效率中的可能降低。開放GOP編碼結構在壓縮中潛在地更加高效,由于在參考圖像的選擇中的更大靈活性。
[0155]H.264/AVC和HEVC的比特流語法指示特定圖像是否是針對任何其他圖像的幀間預測的參考圖像。在H.264/AVC和HEVC中,任何編碼類型(I,P,B)的圖像能夠是參考圖像或非參考圖像。NAL單元頭部指示NAL單元的類型以及被含有在NAL單元中的編碼片是否是參考圖像或非參考圖像的一部分。
[0156]H.264/AVC指定針對解碼參考圖像標記的過程,以便控制解碼器中的存儲器消耗。在序列參數集中確定用于幀間預測的參考圖像的最大號碼,還被稱為M。當對參考圖像進行解碼時,它被標記為“用于參考”。如果參考圖像的解碼導致超過M個圖像被標記為“用于參考”,則至少一個圖像被標記為“不用于參考”。存在用于解碼參考圖像標記的兩種類型的操作:自適應存儲器控制和滑動窗口。以圖像為基礎來選擇針對解碼參考圖像標記的操作模式。自適應存儲器控制使得能夠明確地通過信號傳送哪些圖像被標記為“不用于參考”,以及還可以將長期索引指配給短期參考圖像。自適應存儲器控制可以要求在比特流中存在存儲器管理控制操作(MMCO)參數。可以將MMCO參數包含在解碼參考圖像標記語法結構中。如果滑動窗口操作模式處于使用中,以及有M個圖像被標記為“用于參考”,則在被標記為“用于參考”的那些短期參考圖像之中是第一解碼圖像的短期參考圖像被標記為“不用于參考”。也就是說,滑動窗口操作模式導致在短期參考圖像中的先進先出緩沖操作。
[0157]在H.264/AVC中的其中一種存儲器管理控制操作使得所有參考圖像(除了當前的圖像之外)被標記為“不用于參考”。瞬時解碼刷新(IDR)圖像含有僅幀內編碼片以及導致參考圖像的類似“重置”。
[0158]在草案HEVC標準中,出于類似的目的,不使用參考圖像標記語法結構和有關的解碼過程,而是替代地使用參考圖像集(RPS)語法結構和解碼過程。針對圖像有效或活動的參考圖像集包含用作針對該圖像的參考的所有參考圖像,以及保持被標記為針對解碼順序中的任何隨后圖像的“用于參考”的所有參考圖像。存在參考圖像集的六個子集,它們被稱為即 RefPicSetStCurrO, RefPicSetStCurrK RefPicSetStFollO、RefPicSetStFolll、RefPicSetLtCurr和RefPicSetLtFoll。這六個子集的注釋如下。“Curr”指的是被包含在當前圖像的參考圖像列表中的參考圖像,以及因此可以用作針對當前圖像的幀間預測參考。“Foil”指的是沒有被包含在當前圖像的參考圖像列表中的參考圖像,但是可以在解碼順序中在隨后的圖像中用作參考圖像。“St”指的是短期參考圖像,一般可以通過它們的POC值的最低有效位的某一數字來標識短期參考圖像。“Lt”指的是長期參考圖像,長期參考圖像被特定的標識以及一般具有比能夠由提及的最低有效位的某一數字所表示的POC值的差異更大的相對于當前圖像的POC值的差異。“O”指的是具有比當前圖像的POC值更小的POC值的哪些參考圖像。“I”指的是具有比當前圖像的POC值更大的POC值的哪些參考圖像。RefPicSetStCurrO、RefPicSetStCurrl、RefPicSetStFollO 和 RefPicSetStFolll 統稱為參考圖像集的短期子集。RefPicSetLtCurr和RefPicSetLtFoll統稱為參考圖像集的長期子集。
[0159]在草案HEVC標準中,參考圖像集可以在序列參數集中被指定以及通過至參考圖像集的索引在片頭部中投入使用。參考圖像集還可以在片頭部中被指定。參考圖像集的長期子集一般僅在片頭部中被指定,而相同參考圖像集的短期子集可以在圖像參數集或片頭部中被指定。參考圖像集可以被獨立地編碼或可以從另一個參考圖像集(被稱為RPS間預測)來預測。當參考圖像集被獨立地編碼時,語法結構包含:在三種類型的參考圖像上迭代的至多三個環路;具有比當前圖像低的POC值的短期參考圖像,具有比當前圖像高的POC值的短期參考圖像,以及長期參考圖像。每個環路條目指定將被標記為“用于參考”的圖像。一般地,該圖像被指定為具有不同的POC值。RPS間預測利用的事實是,當前圖像的參考圖像集能夠從先前解碼的圖像的參考圖像集來預測。這是因為當前圖像的所有參考圖像是先前圖像的參考圖像或是先前解碼的圖像本身。僅需要指示這些圖像中的哪些圖像應當是參考圖像以及用于當前圖像的預測。在兩種類型的參考圖像集編碼中,針對每個參考圖像另外地發送標志(used_by_curr_pic_X_flag),該標志指示該參考圖像是由當前圖像用于參考(被包含在*Curr列表中)還是不由當前圖像用于參考(被包含在*Foll列表中)。被包含在由當前片使用的參考圖像集的圖像被標記為“用于參考”,以及沒有在由當前片使用的參考圖像集中的圖像被標記為“不用于參考”。如果當前圖像是IDR圖像,則 RefPicSetStCurrO, RefPicSetStCurrK RefPicSetStFollO、RefPicSetStFolll、RefPicSetLtCurr 和 RefPicSetLtFoll 全被設置為空。
[0160]解碼圖像緩沖器(DPB)可以在編碼器中和/或在解碼器中使用。有兩個原因來緩沖解碼的圖像,用于在幀間預測中的參考以及用于將解碼圖像重新排序到輸出順序中。因為H.264/AVC和HEVC提供針對參考圖像標記和輸出重新排序兩者的更大的靈活性,因此針對參考圖像緩沖和輸出圖像緩沖的各自的緩沖器可能浪費存儲器資源。因此,DPB可以包含:針對參考圖像和輸出重新排序的統一的解碼圖像緩沖過程。當解碼圖像不再用作參考以及對于輸出而言不需要時,可以從DPB移除解碼圖像。
[0161]在H.264/AVC和HEVC的許多編碼模式中,使用至參考圖像列表的索引來指示針對幀間預測的參考圖像。可以使用可變長度編碼來編碼該索引,可變長度編碼通常導致較小索引以具有針對對應的語法元素的較短的值。在H.264/AVC和HEVC中,針對每個雙向預測(B)片生成兩個參考圖像列表(參考圖像列表O和參考圖像列表I),以及針對每個幀間編碼(P)片形成一個參考圖像列表(參考圖像列表O)。另外,針對在草案HEVC標準中的B片,在已經構建了最終的參考圖像列表(列表O和列表I)之后可以構建組合列表(列表C)。該組合列表能夠用于B片內的單向預測(還被稱為單一方向預測)。
[0162]典型地,在兩個步驟中構建參考圖像列表,諸如參考圖像列表O和參考圖像列表:首先,生成初始參考圖像列表。可以例如以frame_num、P0C、temporal_id或關于預測層級(諸如GOP結構)的信息或它們的任何組合為基礎,來生成該初始參考圖像列表。第二,可以通過圖像列表重新排序(RPLR)命令(還被稱為參考圖像列表修改語法結構,其可以被含有在片頭部中)來重新排序初始參考圖像列表。RPLR命令指示被排序到各自參考圖像列表的開始的圖像。這個第二步驟還可以被稱為參考圖像列表修改過程,以及RPLR命令可以被包含在參考圖像列表修改語法結構中。如果使用參考圖像集,則參考圖像列表O可以被初始化以首先含有 RefPicSetStCurrO,由 RefPicSetStCurrl 跟隨,由 RefPicSetLtCurr 跟隨。參考圖像列表I可以被初始化以首先含有RefPicSetStCurrl,由RefPicSetStCurrO跟隨。可以通過參考圖像列表修改語法結構來修改初始參考圖像列表,其中可以通過至該列表的條目索引來標識在初始參考圖像列表中的圖像。
[0163]被稱為隔離區域的編碼技術基于圖像中預測和幀間預測的聯合約束。在圖像中的隔離區域能夠含有任何宏塊(或諸如此類)位置,以及圖像能夠含有不重疊的零個或更多隔離區域。殘余區域(如果有的話)是沒有被圖像的任何隔離區域覆蓋的圖像區域。當編碼隔離區域時,跨域隔離區域的邊界禁用至少一些類型的圖像中預測。可以從相同圖像的隔離區域來預測殘余區域。
[0164]能夠在不存在相同編碼圖像的任何其它隔離或殘余區域的情況下,對編碼的隔離區域進行解碼。可能需要的是,對在殘余區域之前的圖像的所有隔離區域進行解碼。在一些實現方式中,隔離區域或殘余區域含有至少一個片。
[0165]圖像,從彼此來預測它們的隔離區域,可以被分組到隔離區域圖像組。能夠從在相同隔離區域圖像組內的其它圖像中的對應的隔離區域來幀間預測隔離區域,而可能不允許從其它隔離區域或隔離區域圖像組之外的幀間預測。可以從任何隔離區域來幀間預測殘余區域。在隔離區域圖像組中,耦合的隔離區域的形狀、位置和大小可以從圖像到圖像而進化。
[0166]在H.264/AVC編解碼器中的隔離區域的編碼可以基于片組。可以在圖像參數集中指定宏塊位置到片組的映射。H.264/AVC語法包含:編碼某些片組模式的語法,其能夠被分類成兩種類型,靜態和進化。靜態片組可以保持不變,只要圖像參數集是有效的,而進化片組能夠根據圖像參數集中的對應參數和在片頭部中的片組變化周期參數逐圖像地變化。靜態片組模式包含:交織、棋盤格式、面向矩形和自由格式。進化片組模式包含:水平消除(horizontal wipe),垂直消除(vertical wipe),盒狀放大(box_in)和盒狀縮小(box-out)。面向矩形的模式和進化模式尤其適合于隔離區域的編碼以及下面對其進行更詳細地描述。
[0167]對于面向矩形的片組模式,在圖像區域內指定期望數量的矩形。前景片組包含在對應的矩形內的宏塊位置,但是排除由較早指定的片組已經分配的宏塊位置。殘余片組含有沒有由該前景片組覆蓋的宏塊。
[0168]通過指示宏塊位置的掃描順序和在每個圖像的宏塊數量中的片組大小的變化速率來指定進化片組。每個編碼圖像與片組變化周期參數(在片頭部中被傳遞)相關聯。變化周期乘以變化速率指示在第一片組中的宏塊數量。第二片組含有剩余的宏塊位置。
[0169]在H.264/AVC中,跨越片組邊界禁用圖像中預測,因為片組邊界位于片邊界。因此,每個片組是隔離區域或殘余區域。
[0170]在圖像內,每個片組具有標識號。編碼器能夠以以下方式來限制運動向量:運動向量僅參考屬于具有與被編碼的片組相同標識號的片組的解碼宏塊。編碼器應當考慮的事實是,在分數像素插值中需要源樣本的范圍以及所有源樣本應當在特定片組內。
[0171]H.264/AVC編解碼器包含去塊環路過濾器。環路過濾器被應用于每個4x4塊邊界,但是編碼器能夠在片邊界處關閉環路過濾。如果在片邊界處關閉環路過濾,則當執行漸進隨機訪問時在解碼器處能夠獲得完美的重建圖像。否則,即使在恢復點之后,重建圖像可能在內容中是不完美的。
[0172]H.264/AVC標準的恢復點SEI消息和運動約束片組集合SEI消息能夠用于指示的是,使用限制的運動向量將一些片組編碼成隔離區域。解碼器可以使用該信息例如以獲得更快隨機訪問或通過忽略殘余區域來節省處理時間。
[0173]例如在文檔JCTVC_10356〈http://phenix.1nt-evry.f ir/jct/doc_end_user/documents/9_Geneva/wgll/JCTVC-10356-vl.zip〉中已經針對 HEVC 提出了子圖像構思,其類似于h.264/AVC的矩形隔離區域或矩形運動約束片組集合。下面描述在JCTVC-10356中提出的子圖像構思,然而應當理解的是,可以以與以下描述的方式類似但不相同的其他方式來定義子圖像。在子圖像構思中,圖像被分割到預定義的矩形區域中。每個子圖像將作為獨立的圖像被處理,除了構成圖像的所有子圖像共享相同的全局信息(諸如SPS、PPS和參考圖像集)之外。子圖像在幾何上類似于圖塊。它們的屬性如下:它們是在序列級別處指定的LCU對齊的矩形區域。可以在圖像的子圖像光柵掃描中來掃描