辨率(例如, 四分之一像素精度或八分之一像素精度)、運動向量所指向的參考圖片及/或運動向量的 參考圖片列表(例如,RefPicListO或RefPicListl)。
[0058] -般來說,TU用于變換及量化過程。具有一或多個PU的給定⑶還可包含一或多 個變換單元(TU)。在預測之后,視頻編碼器20可計算對應于PU的殘差值。殘差值包括像 素差值,所述像素差值可變換成變換系數、經量化且使用TU進行掃描以產生串行化變換系 數以用于熵譯碼。本發(fā)明通常使用術語"視頻塊"來指CU的譯碼節(jié)點。在一些特定情況下, 本發(fā)明還可使用術語"視頻塊"來指樹塊(即,包含譯碼節(jié)點以及PU及TU的LCU或CU)。
[0059] -視頻序列通常包含一系列視頻幀或圖片。圖片群組(GOP) -般包括一系列一或 多個視頻圖片。GOP可在GOP的標頭、圖片中的一或多者的標頭或其它地方中包含語法數 據,所述語法數據描述包含于GOP中的圖片的數目。圖片的每一切片可包含切片語法數據, 所述切片語法數據描述相應切片的編碼模式。視頻編碼器20通常對個別視頻切片內的視 頻塊進行操作以便編碼視頻數據。視頻塊可對應于CU內的譯碼單元。視頻塊可具有固定 或變化的大小,且大小可根據指定的譯碼標準而不同。
[0060] 作為一實例,HM支持按各種PU大小的預測。假定特定⑶的大小為2NX 2N,HM支 持按2NX2N或NXN的PU大小的幀內預測,以及按2NX2N、2NXN、NX2N或NXN的對稱PU 大小的幀間預測。HM還支持用于按2NXnU、2NXnD、nLX2N和nRX2N的PU大小的幀間預 測的不對稱分割。在不對稱分割中,CU的一個方向未被分割,而另一方向被分割為25%和 75 %。⑶的對應于25 %分區(qū)的部分由"η"繼之以"向上"、"向下"、"左邊"或"右邊"的指 示來指示。因此,例如,"2NXnU"指代被水平地分割成在頂部具有2ΝΧ0. 5Ν PU且在底部 具有 2NX I. 5N PU 的 2NX 2N CU。
[0061] 在本發(fā)明中,"NX N"與"N乘N"可以可互換地使用,以在垂直和水平尺寸方面指代 視頻塊的像素尺寸,例如16 X 16像素或16乘16像素。一般來說,16 X 16塊將具有在垂直 方向上的16個像素 (y = 16)和在水平方向上的16個像素 (X = 16)。同樣地,NXN塊一 般具有在垂直方向上的N個像素和在水平方向上的N個像素,其中N表示非負整數值。一 塊中的像素可布置在若干行和若干列中。此外,塊無需一定在水平方向上具有與在垂直方 向上相同數目的像素。舉例來說,塊可包括NXM個像素,其中M不一定等于N。
[0062] 在使用CU的PU進行幀內預測譯碼或幀間預測譯碼(即,幀內預測編碼或幀間預 測編碼)之后,視頻編碼器20可計算用于CU的TU的殘差數據。PU可包括空間域(還被稱 作像素域)中的像素數據,且TU可包括在變換域(例如,在對殘差視頻數據應用變換(例 如離散余弦變換(DCT)、整數變換、小波變換或概念上類似的變換)之后)中的系數。殘差 數據可對應于未經編碼圖片的像素與對應于PU的預測值之間的像素差。視頻編碼器20可 形成包含⑶的殘差數據的TU,且隨后變換TU以產生⑶的變換系數。
[0063] 在進行任何變換以產生變換系數之后,視頻編碼器20可執(zhí)行變換系數的量化。量 化一般指代將變換系數量化以可能地減少用于表示系數的數據量從而提供進一步壓縮的 過程。量化過程可減少與系數中的一些或全部相關聯的位深度。舉例來說,在量化期間,可 將η位值向下舍入到m位值,其中η大于m。
[0064] 在一些實例中,視頻編碼器20可利用預先界定的掃描次序來掃描經量化變換系 數以產生可經熵編碼的串行化向量。在一些實例中,視頻編碼器20可執(zhí)行自適應掃描或 可從多個可能的掃描選擇一掃描。在掃描經量化變換系數以形成一維向量之后,視頻編碼 器20可(例如根據上下文自適應可變長度譯碼(CAVLC)、上下文自適應二進制算術譯碼 (CABAC)、基于語法的上下文自適應二進制算術譯碼(SBAC)、概率區(qū)間分割熵(PIPE)譯碼 或另一熵編碼方法)熵編碼所述一維向量。視頻編碼器20還可對與經編碼視頻數據相關 聯的語法元素進行熵譯碼,以供視頻解碼器30在解碼視頻數據中使用。
[0065] 為了執(zhí)行CABAC,視頻編碼器20可將上下文模型內的上下文指派給待傳輸的符 號。所述上下文可涉及(例如)符號的相鄰值是否為非零。為了執(zhí)行CAVLC,視頻編碼器 20可針對待傳輸的符號選擇可變長度碼??蓪LC中的碼字建構成使得相對較短的代碼對 應于更有可能的符號,而較長的代碼對應于較不可能的符號。以此方式,與(例如)針對待 傳輸的每一符號使用相等長度的碼字相比,使用VLC可實現位節(jié)省。概率確定可基于指派 給符號的上下文。
[0066] 本發(fā)明描述用于多視圖位流、三維(3D)位流、可縮放媒體位流及具有多個層(例 如多個視圖)的其它類型的位流的子位流提取的各種方法。本發(fā)明的技術還可適用于多視 圖位流、三維(3D)位流及具有多個層或視圖的其它類型的位流。
[0067] 在本發(fā)明中,術語多視圖視頻譯碼一般用于指代其中多個不同視圖被譯碼的技 術。例如,存在界定其中在位流中譯碼多個不同視圖的方式的視頻譯碼標準的不同實例。如 上文所描述,此類視頻譯碼標準的實例包含:對H. 264/AVC視頻譯碼標準的多視圖視頻譯 碼(MVC)擴展、MVC加上深度視圖分量(MVC+D)、3D-AVC、多視圖HEVC(MV-HEVC)及3D-HEVC。 本發(fā)明中描述的子位流提取技術可適用于所有這些視頻譯碼標準以及不依賴于視頻譯碼 標準的視頻譯碼技術。此外,本發(fā)明中描述的子位流提取技術還可以適用于可縮放視頻譯 碼(SVC),其中存在可選擇性地用于編碼及解碼圖片的僅一個視圖但多個增強層。但是,同 樣,多個視圖可視為一類型的層,且因此,本發(fā)明的技術可一般適用于任何多層譯碼技術, 其中視圖表示層的一個實例。
[0068] 為避免混淆,本發(fā)明使用所述"多視圖視頻譯碼"一般指代依賴于多個視圖以用于 編碼及解碼的所有各種視頻譯碼技術。在需要時,本發(fā)明對特定視頻譯碼標準作出特定參 考。而且,相對于多視圖視頻譯碼描述所述技術;然而,所述技術不限于此。本發(fā)明中描述 的技術還可適用于可縮放視頻譯碼技術。
[0069] 為輔助理解,以下提供對不同多視圖視頻譯碼標準的簡要描述。此類揭示內容打 算提供本發(fā)明中描述的子位流提取技術的背景,以及輔助對多視圖視頻譯碼技術的一般理 解。以下揭示內容描述多視圖視頻譯碼(MVC),其是對H.264/AVC的擴展。在本發(fā)明使用 首字母縮寫MVC時,本發(fā)明特定地指代Η. 264/AVC的MVC擴展。在寫出"多視圖視頻譯碼" 時,其一般用于指代用于多視圖視頻的各種譯碼技術。
[0070] 圖2是說明根據本發(fā)明中所描述的一或多個實例的實例編碼及解碼次序的符號 圖。舉例來說,圖2中所說明的解碼次序布置被稱為時間優(yōu)先譯碼。在圖2中,SO到S7各 自是指多視圖視頻的不同視圖。TO到T8各自表示一個輸出時間實例。在圖2中,所述視圖 中的每一者包含若干圖片組。舉例來說,視圖SO包含經譯碼圖片組0、8、16、24、32、40、48、 56及64,視圖Sl包含經譯碼圖片組1、9、17、25、33、41、49、57及65等。
[0071] 應理解,圖2中說明的解碼次序可能不表示輸出或顯示次序。例如,比另一經譯碼 圖片晚顯示或輸出的經譯碼圖片可比所述另一圖片早解碼。圖片的圖片次序計數(POC)值 指示圖片的顯示次序或輸出次序。舉例來說,具有較低POC值的圖片比具有較高POC值的 圖片早輸出或顯示。然而,具有較高POC值的圖片可比具有較低POC值的圖片早解碼,盡管 具有較高POC值的圖片比具有較低POC值的圖片晚顯示或輸出。
[0072] 存取單元可包含用于一個輸出時間實例的所有視圖的經譯碼圖片。舉例來說,第 一存取單元包含用于時間實例TO的所有視圖SO到S7 ( 即,經譯碼圖片0到7),第二存取單 元包含用于時間實例Tl的所有視圖SO到S7( 即,經譯碼圖片8到15),以此類推。在這些 實例中,經譯碼圖片0到7處于相同時間實例(即,時間實例T0)處,經譯碼圖片8到15處 于相同時間實例(即,時間實例Tl)處,以此類推。
[0073] 在本發(fā)明中描述的技術中,執(zhí)行子位流提取的裝置可基于其中提取經譯碼圖片的 所選擇方式而從視圖或層提取經譯碼圖片。例如,執(zhí)行子位流提取的裝置可從視圖SO到 S3提取經譯碼圖片且僅輸出那些經譯碼圖片,而非輸出來自所有視圖SO到S7的經譯碼圖 片。此類子位流提取可提高帶寬效率,這是因為目的地裝置14可未經配置以以顯示所有視 圖SO到S7,且僅輸出解碼將顯示的視圖所需的視圖,可減少需要在位流中輸出的數據量。
[0074] 如所使用的,在本發(fā)明中,術語"經譯碼圖片"用于指視圖分量、紋理視圖分量或深 度視圖分量。例如,每一存取單元可包含一或多個視頻譯碼層(VCL)網絡抽象層(NAL)(即, VCL NAL)單元。每一經譯碼圖片可包含存取單元內的視圖或層的一或多個VCL NAL單元。 以此方式,所述技術可從來自位流的視圖或層提取經譯碼圖片以允許解碼目標輸出視圖或 目標輸出層,其中每一經譯碼圖片包括存取單元內的視圖或層的一或多個VCL NAL單元。
[0075] 圖3是說明實例預測模式的概念圖。在圖3的實例中,說明八個視圖(具有視圖 ID "S0"到"S7"),且對于每一視圖說明十二個時間位置("T0"到"T11")。即,圖3中的 每一行對應于一視圖,而每一列指示一時間位置。在圖3的實例中,大寫的"B"及小寫的 "b"用于指示圖片之間的不同層次關系,而非不同譯碼方法。大體來說,大寫的"B"圖片在 預測層次上比小寫的"b"幀相對高。
[0076] 在圖3中展示用于多視圖視頻譯碼的典型的MVC預測(包含每一視圖內的圖片間 預測及視圖間預測兩者)結構,其中由箭頭指示預測,指向對象使用指出對象用于預測參 考。圖3可為MVC時間及視圖間預測結構的實例。
[0077] 在MVC中,由視差運動補