對視頻進(jìn)行熵編碼的方法和設(shè)備以及對視頻進(jìn)行熵解碼的方法和設(shè)備的制作方法
【專利摘要】提供視頻的熵解碼方法和熵編碼方法。所述熵解碼方法包括:從比特流獲得變換單元有效系數(shù)標(biāo)記,其中,變換單元有效系數(shù)標(biāo)記指示非零變換系數(shù)是否存在于變換單元中;基于變換單元的變換深度來確定用于對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)解碼的上下文模型;基于確定的上下文模型來對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)解碼。
【專利說明】對視頻進(jìn)行熵編碼的方法和設(shè)備以及對視頻進(jìn)行熵解碼的 方法和設(shè)備
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明的一個或更多個實施例涉及視頻編碼和解碼,更具體地講,涉及一種用于 對與變換單元相關(guān)的信息進(jìn)行熵編碼和熵解碼的方法和設(shè)備。
【背景技術(shù)】
[0002] 根據(jù)圖像壓縮方法(諸如MPEG-I、MPEG-2或MPEG-4H. 264/MPEG-4先進(jìn)視頻編碼 (AVC)),圖像被劃分為具有預(yù)定尺寸的塊,然后,通過幀間預(yù)測或幀內(nèi)預(yù)測獲得塊的殘差數(shù) 據(jù)。通過變換、量化、掃描、游程編碼和熵編碼對殘差數(shù)據(jù)進(jìn)行壓縮。在熵編碼中,對句法元 素(諸如變換系數(shù)或預(yù)測模式)進(jìn)行熵編碼以輸出比特流。解碼器從比特流解析并提取句 法元素,并基于提取的句法元素重建圖像。
【發(fā)明內(nèi)容】
[0003] 技術(shù)問題
[0004] 本發(fā)明的一個或更多個實施例包括這樣的熵編碼方法和設(shè)備以及熵解碼方法和 設(shè)備,所述方法和設(shè)備用于基于指示編碼單元和變換單元之間的分層劃分關(guān)系的變換深 度,來選擇上下文模型,該上下文模型用于對與作為用于對編碼單元進(jìn)行變換的數(shù)據(jù)單元 的變換單元有關(guān)的句法元素進(jìn)行熵編碼和熵解碼。
[0005] 解決方案
[0006] 基于變換深度來確定用于對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)解碼的上下文模型, 并且基于確定的上下文模型對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)解碼,其中,變換深度指示 為了確定包括在編碼單元中的變換單元而對編碼單元進(jìn)行劃分的次數(shù)。
[0007] 有益效果
[0008] 根據(jù)本發(fā)明的實施例,通過基于變換深度來選擇上下文模型,用于選擇上下文模 型的條件可被簡化并且用于熵編碼和熵解碼的操作也可被簡化。
【專利附圖】
【附圖說明】
[0009] 圖1是根據(jù)本發(fā)明的實施例的視頻編碼設(shè)備的框圖。
[0010] 圖2是根據(jù)本發(fā)明的實施例的視頻解碼設(shè)備的框圖。
[0011] 圖3是用于描述根據(jù)本發(fā)明的實施例的編碼單元的概念的示圖。
[0012] 圖4是根據(jù)本發(fā)明的實施例的基于具有分層結(jié)構(gòu)的編碼單元的視頻編碼器的框 圖。
[0013] 圖5是根據(jù)本發(fā)明的實施例的基于具有分層結(jié)構(gòu)的編碼單元的視頻解碼器的框 圖。
[0014] 圖6是示出根據(jù)本發(fā)明的實施例的根據(jù)深度的較深層編碼單元和分區(qū)的示圖。
[0015] 圖7是用于描述根據(jù)本發(fā)明的實施例的編碼單元與變換單元之間的關(guān)系的示圖。
[0016] 圖8是用于描述根據(jù)本發(fā)明的實施例的與編碼深度相應(yīng)的編碼單元的編碼信息 的示圖。
[0017] 圖9是根據(jù)本發(fā)明的實施例的根據(jù)深度的較深層編碼單元的示圖。
[0018] 圖10至圖12是用于描述根據(jù)本發(fā)明的實施例的編碼單元、預(yù)測單元和頻率變換 單元之間的關(guān)系的示圖。
[0019] 圖13是用于描述根據(jù)表1的編碼模式信息的編碼單元、預(yù)測單元和變換單元之間 的關(guān)系的不圖。
[0020] 圖14是根據(jù)本發(fā)明的實施例的熵編碼設(shè)備的框圖。
[0021] 圖15是示出根據(jù)本發(fā)明的實施例的對與變換單元相關(guān)的句法元素進(jìn)行熵編碼和 熵解碼的操作的流程圖。
[0022] 圖16是示出根據(jù)本發(fā)明的實施例的編碼單元和包括在編碼單元中的變換單元的 示圖。
[0023] 圖17是示出用于基于變換深度確定圖16的每個變換單元的變換單元有效系數(shù)標(biāo) 記的上下文模型的上下文增加參數(shù)的示圖。
[0024] 圖18是示出根據(jù)本發(fā)明的另一實施例的編碼單元和包括在編碼單元中的變換單 元的示圖。
[0025] 圖19是示出根據(jù)本發(fā)明的實施例的用于確定包括在圖16的編碼單元中的變換單 元的結(jié)構(gòu)的劃分信息標(biāo)記的示圖。
[0026] 圖20示出根據(jù)本發(fā)明的實施例被熵編碼的變換單元。
[0027] 圖21示出與圖20的變換單元相應(yīng)的有效圖。
[0028] 圖 22 不出與圖 20 的 4X4 變換單兀相應(yīng)的 coeff_abs_level_greaterl_flag。
[0029] 圖 23 不出與圖 20 的 4X4 變換單兀相應(yīng)的 coeff_abs_level_greater2_flag。
[0030] 圖24不出與圖20的4X4變換單兀相應(yīng)的coeff_abs_level_remaining。
[0031] 圖25是根據(jù)本發(fā)明的實施例的視頻的熵編碼方法的流程圖。
[0032] 圖26是根據(jù)本發(fā)明的實施例的熵解碼設(shè)備的框圖。
[0033] 圖27是根據(jù)本發(fā)明的實施例的視頻的熵解碼方法的流程圖。
[0034] 最佳實施方式
[0035] 根據(jù)本發(fā)明的一個或更多個實施例,一種視頻的熵解碼方法,所述方法包括:確定 包括在編碼單元中并用于對編碼單元進(jìn)行逆變換的變換單元;從比特流獲得變換單元有效 系數(shù)標(biāo)記,其中,變換單元有效系數(shù)標(biāo)記指示非零變換系數(shù)是否存在于變換單元中;在為了 確定變換單元而對編碼單元進(jìn)行劃分的次數(shù)被稱為變換單元的變換深度的情況下,基于變 換單元的變換深度來確定用于對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)解碼的上下文模型;基于 確定的上下文模型來對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)解碼。
[0036] 根據(jù)本發(fā)明的一個或更多個實施例,一種視頻的熵解碼設(shè)備,所述設(shè)備包括:解析 器,用于從比特流獲得變換單元有效系數(shù)標(biāo)記,其中,變換單元有效系數(shù)標(biāo)記指示非零變換 系數(shù)是否存在于變換單元中,變換單元包括在編碼單元中并用于對編碼單元進(jìn)行逆變換; 上下文建模器,用于在為了確定變換單元而對編碼單元進(jìn)行劃分的次數(shù)被稱為變換單元的 變換深度的情況下,基于變換單元的變換深度來確定用于對變換單元有效系數(shù)標(biāo)記進(jìn)行算 術(shù)解碼的上下文模型;算術(shù)解碼器,用于基于確定的上下文模型來對變換單元有效系數(shù)標(biāo) 記進(jìn)行算術(shù)解碼。
[0037] 根據(jù)本發(fā)明的一個或更多個實施例,一種視頻的熵編碼方法,所述方法包括:獲得 基于變換單元而變換的編碼單元的數(shù)據(jù);在為了確定變換單元而對編碼單元進(jìn)行劃分的次 數(shù)被稱為變換單元的變換深度的情況下,基于變換單元的變換深度來確定用于對變換單元 有效系數(shù)標(biāo)記進(jìn)行算術(shù)編碼的上下文模型,其中,變換單元有效系數(shù)標(biāo)記指示非零變換系 數(shù)是否存在于變換單元中;基于確定的上下文模型來對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)編 碼。
[0038] 根據(jù)本發(fā)明的一個或更多個實施例,一種視頻的熵編碼設(shè)備,所述設(shè)備包括:上下 文建模器,用于獲得基于變換單元而變換的編碼單元的數(shù)據(jù),并且在為了確定變換單元而 對編碼單元進(jìn)行劃分的次數(shù)被稱為變換單元的變換深度的情況下,基于變換單元的變換深 度來確定用于對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)編碼的上下文模型,其中,變換單元有效 系數(shù)標(biāo)記指示非零變換系數(shù)是否存在于變換單元中;算術(shù)編碼器,用于基于確定的上下文 模型來對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)編碼。
【具體實施方式】
[0039] 以下,將參照圖1至圖13描述根據(jù)本發(fā)明的實施例的用于更新在對變換單元的尺 寸信息進(jìn)行熵編碼和熵解碼中使用的參數(shù)的方法和設(shè)備。此外,將參照圖14至圖27詳細(xì) 地描述通過使用參照圖1至圖13描述的對視頻進(jìn)行熵編碼和熵解碼的方法獲得的句法元 素進(jìn)行熵編碼和熵解碼的方法。當(dāng)諸如"…中的至少一個"的表述在一列元素之后時,該表 述修飾整列元素而不是修飾該列中的個別元素。
[0040] 圖1是根據(jù)本發(fā)明的實施例的視頻編碼設(shè)備100的框圖。
[0041] 視頻編碼設(shè)備100包括分層編碼器110和熵編碼器120。
[0042] 分層編碼器110可以以預(yù)定數(shù)據(jù)單元為單位劃分將編碼的當(dāng)前畫面,以對每個數(shù) 據(jù)單元執(zhí)行編碼。詳細(xì)地講,分層編碼器110可基于最大編碼單元劃分當(dāng)前畫面,其中,最 大編碼單元是最大尺寸的編碼單元。根據(jù)本發(fā)明的實施例的最大編碼單元可以是尺寸為 32X 32、64X64、128X 128、256X 256等的數(shù)據(jù)單元,其中,數(shù)據(jù)單元的形狀是具有2的若干 次方且大于8的寬度和長度的方形。
[0043] 根據(jù)本發(fā)明的實施例的編碼單元可由最大尺寸和深度表征。深度表示編碼單元從 最大編碼單元被空間劃分的次數(shù),并且隨著深度加深,根據(jù)深度的較深層編碼單元可從最 大編碼單元被劃分到最小編碼單元。最大編碼單元的深度為最高深度,最小編碼單元的深 度為最低深度。由于隨著最大編碼單元的深度加深,與每個深度相應(yīng)的編碼單元的尺寸減 小,因此與更高深度相應(yīng)的編碼單元可包括多個與更低深度相應(yīng)的編碼單元。
[0044] 如上所述,當(dāng)前畫面的圖像數(shù)據(jù)根據(jù)編碼單元的最大尺寸被劃分為最大編碼單 元,并且每個最大編碼單元可包括根據(jù)深度被劃分的較深層編碼單元。由于根據(jù)深度對根 據(jù)本發(fā)明的實施例的最大編碼單元進(jìn)行劃分,因此可根據(jù)深度對在最大編碼單元中包括的 空間域的圖像數(shù)據(jù)進(jìn)行分層地分類。
[0045] 可預(yù)先確定編碼單元的最大深度和最大尺寸,所述最大深度和最大尺寸限制對最 大編碼單元的高度和寬度進(jìn)行分層劃分的總次數(shù)。
[0046] 分層編碼器110對通過根據(jù)深度對最大編碼單元的區(qū)域進(jìn)行劃分而獲得的至少 一個劃分區(qū)域進(jìn)行編碼,并且根據(jù)所述至少一個劃分區(qū)域來確定用于輸出最終編碼的圖像 數(shù)據(jù)的深度。換句話說,分層編碼器Iio通過根據(jù)當(dāng)前畫面的最大編碼單元以根據(jù)深度的 較深層編碼單元對圖像數(shù)據(jù)進(jìn)行編碼,并選擇具有最小編碼誤差的深度,來確定編碼深度。 確定的編碼深度和根據(jù)最大編碼單元的被編碼的圖像數(shù)據(jù)被輸出到熵編碼器120。
[0047] 基于與等于或小于最大深度的至少一個深度相應(yīng)的較深層編碼單元,對最大編碼 單元中的圖像數(shù)據(jù)進(jìn)行編碼,并且基于每個較深層編碼單元來比較對圖像數(shù)據(jù)進(jìn)行編碼的 結(jié)果。在對較深層編碼單元的編碼誤差進(jìn)行比較之后,可選擇具有最小編碼誤差的深度。可 針對每個最大編碼單元選擇至少一個編碼深度。
[0048] 隨著編碼單元根據(jù)深度被分層地劃分并隨著編碼單元的數(shù)量增加,最大編碼單元 的尺寸被劃分。另外,即使在一個最大編碼單元中編碼單元與同一深度相應(yīng),也通過分別測 量每個編碼單元的圖像數(shù)據(jù)的編碼誤差來確定是否將與同一深度相應(yīng)的每個編碼單元劃 分為更低深度。因此,即使圖像數(shù)據(jù)被包括在一個最大編碼單元中,圖像數(shù)據(jù)仍被劃分為根 據(jù)深度的區(qū)域,并且在一個最大編碼單元中編碼誤差根據(jù)區(qū)域而不同,因此在圖像數(shù)據(jù)中 編碼深度可根據(jù)區(qū)域而不同。因此,可在一個最大編碼單元中確定一個或更多個編碼深度, 并且可根據(jù)至少一個編碼深度的編碼單元來對最大編碼單元的圖像數(shù)據(jù)進(jìn)行劃分。
[0049] 因此,分層編碼器110可確定在最大編碼單元中包括的具有樹結(jié)構(gòu)的編碼單元。 根據(jù)本發(fā)明的實施例的"具有樹結(jié)構(gòu)的編碼單元"包括在最大編碼單元中包括的所有較深 層編碼單元中的與確定為編碼深度的深度相應(yīng)的編碼單元??稍谧畲缶幋a單元的同一區(qū)域 中根據(jù)深度來分層地確定具有編碼深度的編碼單元,并可在不同區(qū)域中獨立地確定具有編 碼深度的編碼單元。類似地,當(dāng)前區(qū)域中的編碼深度可獨立于另一區(qū)域中的編碼深度而被 確定。
[0050] 根據(jù)本發(fā)明的實施例的最大深度是與最大編碼單元被劃分為最小編碼單元的次 數(shù)有關(guān)的索引。根據(jù)本發(fā)明的實施例的第一最大深度可表示最大編碼單元被劃分為最小編 碼單元的總次數(shù)。根據(jù)本發(fā)明的實施例的第二最大深度可表示從最大編碼單元到最小編碼 單元的深度等級的總數(shù)。例如,當(dāng)最大編碼單元的深度為〇時,對最大編碼單元劃分一次的 編碼單元的深度可被設(shè)置為1,對最大編碼單元劃分兩次的編碼單元的深度可被設(shè)置為2。 這里,如果最小編碼單元是對最大編碼單元劃分四次的編碼單元,則存在深度〇、1、2、3和4 的5個深度等級,并因此第一最大深度可被設(shè)置為4,第二最大深度可被設(shè)置為5。
[0051] 可根據(jù)最大編碼單元執(zhí)行預(yù)測編碼和變換。還根據(jù)最大編碼單元,基于根據(jù)等于 或小于最大深度的深度的較深層編碼單元來執(zhí)行預(yù)測編碼和變換。
[0052] 由于每當(dāng)根據(jù)深度對最大編碼單元進(jìn)行劃分時,較深層編碼單元的數(shù)量增加,因 此對隨著深度加深而產(chǎn)生的所有較深層編碼單元執(zhí)行包括預(yù)測編碼和變換的編碼。為了便 于描述,在最大編碼單元中,現(xiàn)在將基于當(dāng)前深度的編碼單元來描述預(yù)測編碼和變換。
[0053] 視頻編碼設(shè)備100可不同地選擇用于對圖像數(shù)據(jù)進(jìn)行編碼的數(shù)據(jù)單元的尺寸或 形狀。為了對圖像數(shù)據(jù)進(jìn)行編碼,執(zhí)行諸如預(yù)測編碼、變換和熵編碼的操作,此時,可針對所 有操作使用相同的數(shù)據(jù)單元,或者可針對每個操作使用不同的數(shù)據(jù)單元。
[0054] 例如,視頻編碼設(shè)備100不僅可選擇用于對圖像數(shù)據(jù)進(jìn)行編碼的編碼單元,還可 選擇不同于編碼單元的數(shù)據(jù)單元,以便對編碼單元中的圖像數(shù)據(jù)執(zhí)行預(yù)測編碼。
[0055] 為了對最大編碼單元執(zhí)行預(yù)測編碼,可基于與編碼深度相應(yīng)的編碼單元(即,基 于不再被劃分成與更低深度相應(yīng)的編碼單元的編碼單元)來執(zhí)行預(yù)測編碼。以下,不再被 劃分且成為用于預(yù)測編碼的基本單元的編碼單元將被稱為"預(yù)測單元"。通過劃分預(yù)測單元 而獲得的分區(qū)可包括預(yù)測單元或通過對預(yù)測單元的高度和寬度中的至少一個進(jìn)行劃分而 獲得的數(shù)據(jù)單元。
[0056] 例如,當(dāng)2NX2N(其中,N是正整數(shù))的編碼單元不再被劃分,并且成為2NX2N的 預(yù)測單元時,分區(qū)的尺寸可以是2NX 2N、2NX N、NX 2N或NX N。分區(qū)類型的示例包括通過 對預(yù)測單元的高度或?qū)挾冗M(jìn)行對稱地劃分而獲得的對稱分區(qū)、通過對預(yù)測單元的高度或?qū)?度進(jìn)行非對稱地劃分(諸如,I :n或η: 1)而獲得的分區(qū)、通過對預(yù)測單元進(jìn)行幾何地劃分 而獲得的分區(qū)、以及具有任意形狀的分區(qū)。
[0057] 預(yù)測單元的預(yù)測模式可以是幀內(nèi)模式、幀間模式和跳過模式中的至少一個。例如, 可對2ΝX 2Ν、2ΝX N、NX 2Ν或NX N的分區(qū)執(zhí)行幀內(nèi)模式或幀間模式。另外,可僅對2ΝX 2Ν 的分區(qū)執(zhí)行跳過模式??蓪幋a單元中的一個預(yù)測單元獨立地執(zhí)行編碼,從而選擇具有最 小編碼誤差的預(yù)測模式。
[0058] 視頻編碼設(shè)備100不僅可基于用于對圖像數(shù)據(jù)進(jìn)行編碼的編碼單元還可基于與 編碼單元不同的數(shù)據(jù)單元,來對編碼單元中的圖像數(shù)據(jù)執(zhí)行變換。
[0059] 為了在編碼單元中執(zhí)行變換,可基于具有尺寸等于或小于編碼單元的尺寸的數(shù)據(jù) 單元,來執(zhí)行變換。例如,用于變換的數(shù)據(jù)單元可包括用于幀內(nèi)模式的數(shù)據(jù)單元和用于幀間 模式的數(shù)據(jù)單元。
[0060] 用作變換的基礎(chǔ)的數(shù)據(jù)單元被稱為"變換單元"。與編碼單元類似,編碼單元中的 變換單元可被遞歸地劃分為更小尺寸的區(qū)域,使得變換單元可以以區(qū)域為單位被獨立地確 定。因此,可基于根據(jù)變換深度的具有樹結(jié)構(gòu)的變換單元,對編碼單元中的殘差數(shù)據(jù)進(jìn)行劃 分。
[0061] 還可在變換單元中設(shè)置變換深度,其中,變換深度表示對編碼單元的高度和寬度 進(jìn)行劃分以達(dá)到變換單元的次數(shù)。例如,在2ΝΧ2Ν的當(dāng)前編碼單元中,當(dāng)變換單元的尺寸 是2ΝΧ2Ν時,變換深度可以為0,當(dāng)變換單元的尺寸是NXN時,變換深度可以是1,當(dāng)變換 單元的尺寸是Ν/2 X Ν/2時,變換深度可以是2。也就是說,還可根據(jù)變換深度設(shè)置具有樹結(jié) 構(gòu)的變換單元。
[0062] 根據(jù)與編碼深度相應(yīng)的編碼單元的編碼信息不僅需要關(guān)于編碼深度的信息,還需 要關(guān)于與預(yù)測編碼和變換相關(guān)的信息的信息。因此,分層編碼器110不僅確定具有最小編 碼誤差的編碼深度,還確定預(yù)測單元中的分區(qū)類型、根據(jù)預(yù)測單元的預(yù)測模式和用于變換 的變換單元的尺寸。
[0063] 以下將參照圖3至圖12詳細(xì)描述根據(jù)本發(fā)明的實施例的最大編碼單元中的根據(jù) 樹結(jié)構(gòu)的編碼單元,以及確定分區(qū)的方法。
[0064] 分層編碼器110可通過使用基于拉格朗日乘數(shù)的率失真優(yōu)化,來測量根據(jù)深度的 較深層編碼單元的編碼誤差。
[0065] 熵編碼器120在比特流中輸出最大編碼單元的圖像數(shù)據(jù)和關(guān)于根據(jù)編碼深度的 編碼模式的信息,其中,所述最大編碼單元的圖像數(shù)據(jù)基于由分層編碼器110確定的至少 一個編碼深度被編碼。編碼圖像數(shù)據(jù)可以是圖像的殘差數(shù)據(jù)的編碼結(jié)果。關(guān)于根據(jù)編碼深 度的編碼模式的信息可包括關(guān)于編碼深度的信息、關(guān)于在預(yù)測單元中的分區(qū)類型的信息、 預(yù)測模式信息和變換單元的尺寸信息。具體地講,如以下將描述的,熵編碼器120可通過使 用基于變換單元的變換深度確定的上下文模型來對變換單元有效系數(shù)標(biāo)記(c〇ded_bl〇Ck_ flag) cbf進(jìn)行熵編碼,其中,cbf指示非0變換系數(shù)是否被包括在變換單元中。以下將描述 熵編碼器120中的對與變換單元相關(guān)的句法元素進(jìn)行熵編碼的操作。
[0066] 可通過使用根據(jù)深度的劃分信息來定義關(guān)于編碼深度的信息,其中,根據(jù)深度的 劃分信息指示是否對更低深度而不是當(dāng)前深度的編碼單元執(zhí)行編碼。如果當(dāng)前編碼單元的 當(dāng)前深度是編碼深度,則對當(dāng)前編碼單元中的圖像數(shù)據(jù)進(jìn)行編碼并輸出,因此可定義劃分 信息以不將當(dāng)前編碼單元劃分到更低深度??蛇x地,如果當(dāng)前編碼單元的當(dāng)前深度不是編 碼深度,則對更低深度的編碼單元執(zhí)行編碼,并因此可定義劃分信息以對當(dāng)前編碼單元進(jìn) 行劃分來獲得更低深度的編碼單元。
[0067] 如果當(dāng)前深度不是編碼深度,則對被劃分到更低深度的編碼單元的編碼單元執(zhí)行 編碼。由于更低深度的至少一個編碼單元存在于當(dāng)前深度的一個編碼單元中,因此對更低 深度的每個編碼單元重復(fù)執(zhí)行編碼,并因此可對具有相同深度的編碼單元遞歸地執(zhí)行編 碼。
[0068] 由于針對一個最大編碼單元確定具有樹結(jié)構(gòu)的編碼單元,并且針對編碼深度的編 碼單元確定關(guān)于至少一個編碼模式的信息,所以可針對一個最大編碼單元確定關(guān)于至少一 個編碼模式的信息。另外,由于根據(jù)深度對圖像數(shù)據(jù)進(jìn)行分層劃分,因此最大編碼單元的圖 像數(shù)據(jù)的編碼深度可根據(jù)位置而不同,因此可針對圖像數(shù)據(jù)設(shè)置關(guān)于編碼深度和編碼模式 的信息。
[0069] 因此,熵編碼器120可將關(guān)于相應(yīng)的編碼深度和編碼模式的編碼信息分配給包括 在最大編碼單元中的編碼單元、預(yù)測單元和最小單元中的至少一個。
[0070] 根據(jù)本發(fā)明的實施例的最小單元是通過將構(gòu)成最低深度的最小編碼單元劃分為4 份而獲得的方形數(shù)據(jù)單元??蛇x擇地,最小單元可以是包括在最大編碼單元中所包括的所 有編碼單元、預(yù)測單元、分區(qū)單元和變換單元中的最大方形數(shù)據(jù)單元。
[0071] 例如,通過熵編碼器120輸出的編碼信息可被分類為根據(jù)編碼單元的編碼信息和 根據(jù)預(yù)測單元的編碼信息。根據(jù)編碼單元的編碼信息可包括關(guān)于預(yù)測模式的信息和關(guān)于分 區(qū)尺寸的信息。根據(jù)預(yù)測單元的編碼信息可包括關(guān)于幀間模式的估計方向的信息、關(guān)于幀 間模式的參考圖像索引的信息、關(guān)于運(yùn)動矢量的信息、關(guān)于幀內(nèi)模式的色度分量的信息、以 及關(guān)于幀內(nèi)模式的插值方法的信息。此外,根據(jù)畫面、條帶或GOP定義的關(guān)于編碼單元的最 大尺寸的信息和關(guān)于最大深度的信息可被插入到比特流的頭。
[0072] 在視頻編碼設(shè)備100中,較深層編碼單元可以是通過將更高深度的編碼單元(更 高一層)的高度或?qū)挾葎澐殖蓛煞荻@得的編碼單元。換言之,當(dāng)當(dāng)前深度的編碼單元的 尺寸是2NX 2N時,更低深度的編碼單元的尺寸是NXN。另外,尺寸為2NX 2N的當(dāng)前深度的 編碼單元可包括最多4個更低深度的編碼單元。
[0073] 因此,視頻編碼設(shè)備100可基于考慮當(dāng)前畫面的特征而確定的最大編碼單元的尺 寸和最大深度,通過針對每個最大編碼單元確定具有最優(yōu)形狀和最優(yōu)尺寸的編碼單元來形 成具有樹結(jié)構(gòu)的編碼單元。另外,由于可通過使用各種預(yù)測模式和變換中的任意一個對每 個最大編碼單元執(zhí)行編碼,因此可考慮各種圖像尺寸的編碼單元的特征來確定最優(yōu)編碼模 式。
[0074] 因此,如果以傳統(tǒng)宏塊對具有高分辨率或大數(shù)據(jù)量的圖像進(jìn)行編碼,則每個畫面 的宏塊的數(shù)量極度增加。因此,針對每個宏塊產(chǎn)生的壓縮信息的條數(shù)增加,因此難以發(fā)送壓 縮的信息,并且數(shù)據(jù)壓縮效率降低。然而,通過使用視頻編碼設(shè)備100,由于在考慮圖像的特 征的同時調(diào)整編碼單元,同時,在考慮圖像的尺寸的同時增加編碼單元的最大尺寸,因此可 提高圖像壓縮效率。
[0075] 圖2是根據(jù)本發(fā)明的實施例的視頻解碼設(shè)備200的框圖。
[0076] 視頻解碼設(shè)備200包括解析器、熵解碼器220和分層解碼器230。用于視頻解碼設(shè) 備200的各種操作的各種術(shù)語(諸如編碼單元、深度、預(yù)測單元、變換單元和關(guān)于各種編碼 模式的信息)的定義與參照圖1和視頻編碼設(shè)備100描述的各種術(shù)語的定義相同。
[0077] 解析器210接收編碼視頻的比特流以解析句法元素。熵解碼器220通過對解析的 句法元素執(zhí)行熵解碼來對指示基于具有結(jié)構(gòu)的編碼單元編碼的圖像數(shù)據(jù)的句法元素進(jìn)行 算術(shù)解碼,并將算術(shù)解碼后的句法元素輸出到分層解碼器230。也就是,熵解碼器220對接 收的字符串〇和1的形式的句法元素執(zhí)行熵解碼,從而重建句法元素。
[0078] 另外,熵解碼器220從解析的比特流,根據(jù)每個最大編碼單元,提取關(guān)于具有樹結(jié) 構(gòu)的編碼單元的編碼深度、編碼模式、顏色分量信息、預(yù)測模式信息等的信息。提取的關(guān)于 編碼深度和編碼模式的信息被輸出到分層解碼器230。比特流中的圖像數(shù)據(jù)被劃分為最大 編碼單元,使得分層解碼器230可針對每個最大編碼單元對圖像數(shù)據(jù)進(jìn)行解碼。
[0079] 可針對關(guān)于與編碼深度相應(yīng)的至少一個編碼單元的信息設(shè)置關(guān)于根據(jù)最大編碼 單元的編碼深度和編碼模式的信息,關(guān)于編碼模式的信息可包括關(guān)于與編碼深度相應(yīng)的相 應(yīng)編碼單元的分區(qū)類型的信息、關(guān)于預(yù)測模式的信息和關(guān)于變換單元的尺寸的信息。另外, 根據(jù)深度的劃分信息可被提取為關(guān)于編碼深度的信息。
[0080] 由熵解碼器220提取的關(guān)于根據(jù)每個最大編碼單元的編碼深度和編碼模式的信 息是這樣的關(guān)于編碼深度和編碼模式的信息:該信息被確定為在編碼器(諸如,視頻編碼 設(shè)備100)根據(jù)最大編碼單元對根據(jù)深度的每個較深層編碼單元重復(fù)地執(zhí)行編碼時產(chǎn)生最 小編碼誤差。因此,視頻解碼設(shè)備200可通過根據(jù)產(chǎn)生最小編碼誤差的編碼深度和編碼模 式對圖像數(shù)據(jù)進(jìn)行解碼來重建圖像。
[0081] 由于關(guān)于編碼深度和編碼模式的編碼信息可被分配給相應(yīng)的編碼單元、預(yù)測單元 和最小單元中的預(yù)定數(shù)據(jù)單元,因此熵解碼器220可根據(jù)預(yù)定數(shù)據(jù)單元,提取關(guān)于編碼深 度和編碼模式的信息。當(dāng)關(guān)于相應(yīng)最大編碼單元的編碼深度和編碼模式的信息被分配每個 預(yù)定數(shù)據(jù)單元時,可將被分配了相同的關(guān)于編碼深度和編碼模式的信息的預(yù)定數(shù)據(jù)單元推 斷為是包括在同一最大編碼單元中的數(shù)據(jù)單元。
[0082] 此外,如以下將描述的,熵解碼器220可通過使用基于變換單元的變換深度確定 的上下文模型來對變換單元有效系數(shù)標(biāo)記cbf進(jìn)行熵解碼。以下將描述在熵解碼器220中 對與變換單元相關(guān)的句法元素進(jìn)行熵解碼的操作。
[0083] 分層解碼器230基于關(guān)于根據(jù)最大編碼單元的編碼深度和編碼模式的信息,通過 對每個最大編碼單元中的圖像數(shù)據(jù)進(jìn)行解碼,來重建當(dāng)前畫面。換言之,分層解碼器230可 基于提取出的關(guān)于包括在每個最大編碼單元中的具有樹結(jié)構(gòu)的編碼單元之中的每個編碼 單元的分區(qū)類型、預(yù)測模式和變換單元的信息,對編碼的圖像數(shù)據(jù)進(jìn)行解碼。解碼操作可包 括預(yù)測(包含幀內(nèi)預(yù)測和運(yùn)動補(bǔ)償)和逆變換。
[0084] 分層解碼器230可基于關(guān)于根據(jù)編碼深度的編碼單元的預(yù)測單元的分區(qū)和預(yù)測 模式的信息,根據(jù)每個編碼單元的分區(qū)和預(yù)測模式,執(zhí)行幀內(nèi)預(yù)測或運(yùn)動補(bǔ)償。
[0085] 此外,分層解碼器230可基于關(guān)于根據(jù)編碼深度的編碼單元的變換單元的尺寸的 信息,根據(jù)編碼單元中的每個變換單元執(zhí)行逆變換,以便根據(jù)最大編碼單元執(zhí)行逆變換。
[0086] 分層解碼器230可通過使用根據(jù)深度的劃分信息來確定當(dāng)前最大編碼單元的至 少一個編碼深度。如果劃分信息指示圖像數(shù)據(jù)在當(dāng)前深度中不再被劃分,則當(dāng)前深度是編 碼深度。因此,分層解碼器230可通過使用關(guān)于預(yù)測單元的分區(qū)類型的信息、關(guān)于預(yù)測模式 的信息和關(guān)于變換單元的尺寸的信息,針對當(dāng)前最大編碼單元的圖像數(shù)據(jù),對當(dāng)前深度的 編碼單元進(jìn)行解碼。
[0087] 換言之,可通過觀察分配給編碼單元、預(yù)測單元和最小單元中的預(yù)定數(shù)據(jù)單元的 編碼信息集來收集包含包括相同劃分信息的編碼信息的數(shù)據(jù)單元,并且收集的數(shù)據(jù)單元可 被認(rèn)為是將由分層解碼器230以相同編碼模式進(jìn)行解碼的一個數(shù)據(jù)單元。
[0088] 視頻解碼設(shè)備200可獲得關(guān)于當(dāng)針對每個最大編碼單元遞歸地執(zhí)行編碼時產(chǎn)生 最小編碼誤差的至少一個編碼單元的信息,并且可使用所述信息來對當(dāng)前畫面進(jìn)行解碼。 換言之,被確定為每個最大編碼單元中的最優(yōu)編碼單元的具有樹結(jié)構(gòu)的編碼單元的編碼的 圖像數(shù)據(jù)可被解碼。
[0089] 因此,即使圖像數(shù)據(jù)具有高分辨率和大數(shù)據(jù)量,也可通過使用編碼單元的尺寸和 編碼模式,對圖像數(shù)據(jù)進(jìn)行有效地解碼和重建,其中,通過使用從編碼器接收到的關(guān)于最優(yōu) 編碼模式的信息,根據(jù)圖像數(shù)據(jù)的特征自適應(yīng)地確定所述編碼單元的尺寸和編碼模式。
[0090] 現(xiàn)在將參照圖3至圖13描述根據(jù)本發(fā)明的實施例的確定具有樹結(jié)構(gòu)的編碼單元、 預(yù)測單元和變換單元的方法。
[0091] 圖3是用于描述根據(jù)本發(fā)明的實施例的編碼單元的概念的示圖。
[0092] 編碼單元的尺寸可被表示為寬度X高度,并可以是64X64、32X32、16X16和 8 X 8。64 X 64的編碼單元可被劃分為64 X 64、64 X 32、32 X 64或32 X 32的分區(qū),32 X 32的 編碼單元可被劃分為32X32、32X 16、16X32或16X16的分區(qū),16X 16的編碼單元可被劃 分為16父16、16\8、8\16或8\8的分區(qū),8\8的編碼單元可被劃分為8\8、8\4、4父8或 4X4的分區(qū)。
[0093] 關(guān)于視頻數(shù)據(jù)310,分辨率1920 X 1080、編碼單元的最大尺寸64、最大深度2被設(shè) 置。關(guān)于視頻數(shù)據(jù)320,分辨率1920X 1080、編碼單元的最大尺寸64、最大深度3被設(shè)置。 關(guān)于視頻數(shù)據(jù)330,分辨率352 X 288、編碼單元的最大尺寸16、最大深度1被設(shè)置。圖3中 示出的最大深度表示從最大編碼單元到最小編碼單元的劃分總次數(shù)。
[0094] 如果分辨率高或數(shù)據(jù)量大,則編碼單元的最大尺寸可能較大,從而不僅提高編碼 效率,而且準(zhǔn)確地反映圖像的特征。因此,具有比視頻數(shù)據(jù)330更高分辨率的視頻數(shù)據(jù)310 和320的編碼單元的最大尺寸可以是64。
[0095] 由于視頻數(shù)據(jù)310的最大深度是2,因此由于通過對最大編碼單元劃分兩次,深度 加深至兩層,因此視頻數(shù)據(jù)310的編碼單元315可包括長軸尺寸為64的最大編碼單元和長 軸尺寸為32和16的編碼單元。同時,由于視頻數(shù)據(jù)330的最大深度是1,因此由于通過對 最大編碼單元劃分一次,深度加深至一層,因此視頻數(shù)據(jù)330的編碼單元335可包括長軸尺 寸為16的最大編碼單元和長軸尺寸為8的編碼單元。
[0096] 由于視頻數(shù)據(jù)320的最大深度是3,因此由于通過對最大編碼單元劃分三次,深度 加深至3層,因此視頻數(shù)據(jù)320的編碼單元325可包括長軸尺寸為64的最大編碼單元和長 軸尺寸為32、16和8的編碼單元。隨著深度加深,詳細(xì)信息可被精確地表示。
[0097] 圖4是根據(jù)本發(fā)明的實施例的基于具有分層結(jié)構(gòu)的編碼單元的視頻編碼器400的 框圖。
[0098] 幀內(nèi)預(yù)測器410針對當(dāng)前幀405對幀內(nèi)模式下的編碼單元執(zhí)行幀內(nèi)預(yù)測,運(yùn)動估 計器420和運(yùn)動補(bǔ)償器425通過使用當(dāng)前幀405和參考幀495分別對幀間模式下的編碼單 元執(zhí)行幀間估計和運(yùn)動補(bǔ)償。
[0099] 從幀內(nèi)預(yù)測器410、運(yùn)動估計器420和運(yùn)動補(bǔ)償器425輸出的數(shù)據(jù)通過變換器430 和量化器440被輸出為量化后的變換系數(shù)。量化后的變換系數(shù)通過反量化器460和逆變換 器470被重建為空間域中的數(shù)據(jù),重建的空間域中的數(shù)據(jù)在通過去塊濾波器480和環(huán)路濾 波器490后處理之后被輸出為參考巾貞495。量化后的變換系數(shù)可通過熵編碼器450被輸出 為比特流455。
[0100] 熵編碼單元450對與變換單元相關(guān)的句法元素,諸如變換單元有效系數(shù)標(biāo) 記(cbf)、有效圖、第一臨界值標(biāo)記(coeff_abs_level_greaterl_f lag)、第二臨界值 標(biāo)記(coeff_abs_level_greather2_flag)、變換系數(shù)的大小信息(coeff_abs_level_ remaining)進(jìn)行算術(shù)編碼,其中,cbf指示非0變換系數(shù)是否包括在變換單元中,有效圖指 示非〇變換系數(shù)的位置,第一臨界值標(biāo)記指示變換系數(shù)是否具有大于1的值,第二臨界值標(biāo) 記指示變換系數(shù)是否具有大于2的值,coeff_abs_level_remaining與基于第一臨界值標(biāo) 記和第二臨界值標(biāo)記確定的基本級別(baseLevel)和實際變換系數(shù)(abscoeff)之間的差 相應(yīng)。
[0101] 為了將視頻編碼器400應(yīng)用到視頻編碼設(shè)備100中,視頻編碼器400的所有元件 (即,幀內(nèi)預(yù)測器410、運(yùn)動估計器420、運(yùn)動補(bǔ)償器425、變換器430、量化器440、熵編碼器 450、反量化器460、逆變換器470、去塊濾波器480和環(huán)路濾波器490)在考慮每個最大編碼 單元的最大深度的同時,必須基于具有樹結(jié)構(gòu)的編碼單元中的每個編碼單元執(zhí)行操作。
[0102] 具體地,幀內(nèi)預(yù)測器410、運(yùn)動估計器420和運(yùn)動補(bǔ)償器425在考慮當(dāng)前最大編碼 單元的最大尺寸和最大深度的同時,確定具有樹結(jié)構(gòu)的編碼單元中的每個編碼單元的分區(qū) 和預(yù)測模式,變換器430確定具有樹結(jié)構(gòu)的編碼單元中的每個編碼單元中的變換單元的尺 寸。
[0103] 圖5是根據(jù)本發(fā)明的實施例的基于編碼單元的視頻解碼器500的框圖。
[0104] 解析器510從比特流505解析將被解碼的編碼圖像數(shù)據(jù)和解碼所需的信息。編 碼圖像數(shù)據(jù)通過解碼器520和反量化器530被輸出為反量化的數(shù)據(jù)。熵解碼器520從比 特流獲得與變換單元相關(guān)的元素,即,變換單元有效系數(shù)標(biāo)記(cbf)、有效圖、第一臨界值標(biāo) 記(coefT_abs_level_greaterl_flag)、第二臨界值標(biāo)記(coeff_abs_level_greather2_ flag)、變換系數(shù)的大小信息(coefT_abs_level_remaining),并對獲得的句法元素進(jìn)行算 術(shù)編碼以便重建句法元素,其中,cbf指示非0變換系數(shù)是否包括在變換單元中,有效圖指 示非〇變換系數(shù)的位置,第一臨界值標(biāo)記指示變換系數(shù)是否具有大于1的值,第二臨界值標(biāo) 記指示變換系數(shù)是否具有大于2的值,coeff_abs_level_remaining與基于第一臨界值標(biāo) 記和第二臨界值標(biāo)記確定的基本級別(baseLevel)和實際變換系數(shù)(abscoeff)之間的差 相應(yīng)。
[0105] 逆變換器540將反量化的數(shù)據(jù)重建為空間域中的圖像數(shù)據(jù)。針對空間域中的圖像 數(shù)據(jù),幀內(nèi)預(yù)測器550對幀內(nèi)模式下的編碼單元執(zhí)行幀內(nèi)預(yù)測,運(yùn)動補(bǔ)償器560通過使用參 考幀585對幀間模式下的編碼單元執(zhí)行運(yùn)動補(bǔ)償。
[0106] 已經(jīng)通過幀內(nèi)預(yù)測器550和運(yùn)動補(bǔ)償器560的空間域中的圖像數(shù)據(jù)可在通過去塊 濾波器570和環(huán)路濾波器580后處理之后被輸出為重建幀595。另外,通過去塊濾波器570 和環(huán)路濾波器580后處理的圖像數(shù)據(jù)可被輸出為參考幀585。
[0107] 為了將視頻解碼器500應(yīng)用到視頻解碼設(shè)備200中,視頻解碼器500的所有元件 (即,解析器510、熵解碼器520、反量化器530、逆變換器540、幀內(nèi)預(yù)測器550、運(yùn)動補(bǔ)償器 560、去塊濾波器570和環(huán)路濾波器580)針對每個最大編碼單元,基于具有樹結(jié)構(gòu)的編碼單 元執(zhí)行操作。
[0108] 幀內(nèi)預(yù)測器550和運(yùn)動補(bǔ)償器560確定具有樹結(jié)構(gòu)的每個編碼單元的分區(qū)和預(yù)測 模式,逆變換器540必須確定每個編碼單元的變換單元的尺寸。
[0109] 圖6是示出根據(jù)本發(fā)明的實施例的根據(jù)深度的較深層編碼單元以及分區(qū)的示圖。
[0110] 視頻編碼設(shè)備100和視頻解碼設(shè)備200使用分層編碼單元以考慮圖像的特征???根據(jù)圖像的特征自適應(yīng)地確定編碼單元的最大高度、最大寬度和最大深度,或可由用戶不 同地設(shè)置編碼單元的最大高度、最大寬度和最大深度。可根據(jù)編碼單元的預(yù)定最大尺寸來 確定根據(jù)深度的較深層編碼單元的尺寸。
[0111] 在根據(jù)本發(fā)明的實施例的編碼單元的分層結(jié)構(gòu)600中,編碼單元的最大高度和最 大寬度均是64,最大深度是4。由于沿著分層結(jié)構(gòu)600的垂直軸深度加深,因此較深層編碼 單元的高度和寬度均被劃分。另外,預(yù)測單元和分區(qū)沿著分層結(jié)構(gòu)600的水平軸被示出,其 中,所述預(yù)測單元和分區(qū)是對每個較深層編碼單元進(jìn)行預(yù)測編碼的基礎(chǔ)。
[0112] 換言之,在分層結(jié)構(gòu)600中,編碼單元610是最大編碼單元,其中,深度為0,尺寸 (即,高度乘寬度)為64X64。深度沿著垂直軸加深,存在尺寸為32X32和深度為1的編 碼單元620、尺寸為16X 16和深度為2的編碼單元630、尺寸為8X8和深度為3的編碼單 元640、尺寸為4X4和深度為4的編碼單元650。尺寸為4X4和深度為4的編碼單元650 是最小編碼單元。
[0113] 編碼單元的預(yù)測單元和分區(qū)根據(jù)每個深度沿著水平軸被排列。換言之,如果尺寸 為64 X 64和深度為0的編碼單元610是預(yù)測單元,則可將預(yù)測單元劃分成包括在編碼單元 610中的分區(qū),即,尺寸為64X64的分區(qū)610、尺寸為64X32的分區(qū)612、尺寸為32X64的 分區(qū)614或尺寸為32X32的分區(qū)616。
[0114] 類似地,可將尺寸為32X32和深度為1的編碼單元620的預(yù)測單元劃分成包括在 編碼單元620中的分區(qū),S卩,尺寸為32X32的分區(qū)620、尺寸為32 X 16的分區(qū)622、尺寸為 16X32的分區(qū)624和尺寸為16X16的分區(qū)626。
[0115] 類似地,可將尺寸為16 X 16和深度為2的編碼單元630的預(yù)測單元劃分成包括在 編碼單元630中的分區(qū),S卩,包括在編碼度單元630中的尺寸為16X16的分區(qū)630、尺寸為 16X8的分區(qū)632、尺寸為8X 16的分區(qū)634和尺寸為8X8的分區(qū)636。
[0116] 類似地,可將尺寸為8X8和深度為3的編碼單元640的預(yù)測單元劃分成包括在編 碼單元640中的分區(qū),S卩,包括在編碼單元640中的尺寸為8X8的分區(qū)、尺寸為8X4的分 區(qū)642、尺寸為4X8的分區(qū)644和尺寸為4X4的分區(qū)646。
[0117] 尺寸為4X4和深度為4的編碼單兀650是最小編碼單兀以及最低深度的編碼單 元。編碼單元650的預(yù)測單元僅被分配給尺寸為4X4的分區(qū)。
[0118] 為了確定構(gòu)成最大編碼單元610的編碼單元的至少一個編碼深度,視頻編碼設(shè)備 100的分層編碼器120對包括在最大編碼單元610中的與每個深度相應(yīng)的編碼單元執(zhí)行編 碼。
[0119] 隨著深度加深,包括具有相同范圍和相同尺寸的數(shù)據(jù)的根據(jù)深度的較深層編碼單 元的數(shù)量增加。例如,需要四個與深度2相應(yīng)的編碼單元來覆蓋包括在與深度1相應(yīng)的一 個編碼單元中的數(shù)據(jù)。因此,為了根據(jù)深度比較對相同數(shù)據(jù)進(jìn)行編碼的結(jié)果,與深度1相應(yīng) 的編碼單元和四個與深度2相應(yīng)的編碼單元均被編碼。
[0120] 為了針對深度之中的當(dāng)前深度執(zhí)行編碼,可沿著分層結(jié)構(gòu)600的水平軸,通過對 與當(dāng)前深度相應(yīng)的編碼單元中的每個預(yù)測單元執(zhí)行編碼,來針對當(dāng)前深度選擇最小編碼誤 差。可選地,隨著深度沿著分層結(jié)構(gòu)600的垂直軸加深,可通過針對每個深度執(zhí)行編碼,并 比較根據(jù)深度的最小編碼誤差,來搜索最小編碼誤差。在最大編碼單元610中的具有最小 編碼誤差的深度和分區(qū)可被選為最大編碼單元610的編碼深度和分區(qū)類型。
[0121] 圖7是用于描述根據(jù)本發(fā)明的實施例的在編碼單元710和變換單元720之間的關(guān) 系的不圖。
[0122] 視頻編碼設(shè)備100或視頻解碼設(shè)備200根據(jù)具有等于或小于最大編碼單元的尺寸 的編碼單元,對每個最大編碼單元的圖像進(jìn)行編碼或解碼。可基于不大于相應(yīng)的編碼單元 的數(shù)據(jù)單元,來選擇用于在編碼期間進(jìn)行變換的變換單元的尺寸。
[0123] 例如,在視頻編碼設(shè)備100或視頻解碼設(shè)備200中,如果編碼單元710的尺寸是 64X64,則可通過使用尺寸為32X32的變換單元720來執(zhí)行變換。
[0124] 此外,可通過對小于64X64的尺寸為32X32、16X16、8X8和4X4的每個變換單 元執(zhí)行變換,來對尺寸為64X64的編碼單元710的數(shù)據(jù)進(jìn)行編碼,然后可選擇具有最小編 碼誤差的變換單元。
[0125] 圖8是用于描述根據(jù)本發(fā)明的實施例的與編碼深度相應(yīng)的編碼單元的編碼信息 的示圖。
[0126] 視頻編碼設(shè)備100的輸出單元130可對與編碼深度相應(yīng)的每個編碼單元的關(guān)于分 區(qū)類型的信息800、關(guān)于預(yù)測模式的信息810以及關(guān)于變換單元尺寸的信息820進(jìn)行編碼, 并將信息800、信息810和信息820作為關(guān)于編碼模式的信息來發(fā)送。
[0127] 信息800指示關(guān)于通過劃分當(dāng)前編碼單元的預(yù)測單元而獲得的分區(qū)的形狀的信 息,其中,所述分區(qū)是用于對當(dāng)前編碼單元進(jìn)行預(yù)測編碼的數(shù)據(jù)單元。例如,可將尺寸為 2NX 2N的當(dāng)前編碼單元CU_0劃分成以下分區(qū)中的任意一個:尺寸為2NX 2N的分區(qū)802、尺 寸為2NXN的分區(qū)804、尺寸為NX2N的分區(qū)806以及尺寸為NXN的分區(qū)808。這里,關(guān)于 分區(qū)類型的信息800被設(shè)置來指示以下分區(qū)中的一個:尺寸為2NX2N的分區(qū)802、尺寸為 2NXN的分區(qū)804、尺寸為NX2N的分區(qū)806以及尺寸為NXN的分區(qū)808。
[0128] 信息810指示每個分區(qū)的預(yù)測模式。例如,信息810可指示對由信息800指示的 分區(qū)執(zhí)行的預(yù)測編碼的模式,即,幀內(nèi)模式812、幀間模式814或跳過模式816。
[0129] 信息820指示當(dāng)對當(dāng)前編碼單元執(zhí)行變換時所基于的變換單元。例如,變換單元 可以是第一幀內(nèi)變換單元822、第二幀內(nèi)變換單元824、第一幀間變換單元826或第二幀間 變換單元828。
[0130] 視頻解碼設(shè)備200的圖像數(shù)據(jù)和編碼數(shù)據(jù)提取單元210可根據(jù)每個較深層編碼單 元,提取并使用關(guān)于編碼單元的信息、關(guān)于預(yù)測模式的信息810和關(guān)于變換單元的尺寸的 信息820,以進(jìn)行編碼。
[0131] 圖9是根據(jù)本發(fā)明的實施例的根據(jù)深度的較深層編碼單元的示圖。
[0132] 劃分信息可用來指示深度的改變。劃分信息指示當(dāng)前深度的編碼單元是否被劃分 成更低深度的編碼單元。
[0133] 用于對深度為0和尺寸為2N_0X2N_0的編碼單元900進(jìn)行預(yù)測編碼的預(yù)測單元 910可包括以下分區(qū)類型的分區(qū):尺寸為2N_0X2N_0的分區(qū)類型912、尺寸為2N_0XN_0的 分區(qū)類型914、尺寸為N_0X2N_0的分區(qū)類型916和尺寸為Ν_0ΧΝ_0的分區(qū)類型918。圖 9僅示出了通過對稱地劃分預(yù)測單元910而獲得的分區(qū)類型912至918,但是分區(qū)類型不限 于此,并且預(yù)測單元910的分區(qū)可包括非對稱分區(qū)、具有預(yù)定形狀的分區(qū)和具有幾何形狀 的分區(qū)。
[0134] 根據(jù)每種分區(qū)類型,對尺寸為2N_0X2N_0的一個分區(qū)、尺寸為2N_0XN_0的兩個 分區(qū)、尺寸為N_0X2N_0的兩個分區(qū)和尺寸為Ν_0ΧΝ_0的四個分區(qū)重復(fù)地執(zhí)行預(yù)測編碼。 可對尺寸為2N_0 X 2N_0、N_0 X 2N_0、2N_0 X N_0和N_0 X N_0的分區(qū)執(zhí)行幀內(nèi)模式和幀間模 式下的預(yù)測編碼??蓛H對尺寸為2N_0X2N_0的分區(qū)執(zhí)行跳過模式下的預(yù)測編碼。
[0135] 如果在尺寸為2N_0X2N_0、2N_0XN_0和N_0X2N_0的分區(qū)類型912至916中的 一個分區(qū)類型中編碼誤差最小,則可不將預(yù)測單元910劃分到更低深度。
[0136] 如果在尺寸為Ν_0ΧΝ_0的分區(qū)類型918中編碼誤差最小,則深度從0改變到1以 在操作920中劃分分區(qū)類型918,并對深度為2和尺寸為N_0 X N_0的分區(qū)類型編碼單元重 復(fù)地執(zhí)行編碼來搜索最小編碼誤差。
[0137] 用于對深度為1和尺寸為2N_1X2N_1( = Ν_0ΧΝ_0)的(分區(qū)類型)編碼單元 930進(jìn)行預(yù)測編碼的預(yù)測單元940可包括以下分區(qū)類型的分區(qū):尺寸為2N_1 X 2N_1的分區(qū) 類型942、尺寸為2N_1XN_1的分區(qū)類型944、尺寸為N_1X2N_1的分區(qū)類型946以及尺寸 為N_1XN_1的分區(qū)類型948。
[0138] 如果在尺寸為N_1 XN_1的分區(qū)類型948中編碼誤差最小,則深度從1改變到2以 在操作950中劃分分區(qū)類型948,并對深度為2和尺寸為N_2 X N_2的編碼單元960重復(fù)地 執(zhí)行編碼來搜索最小編碼誤差。
[0139] 當(dāng)最大深度是d時,根據(jù)每個深度的劃分操作可被執(zhí)行直到深度變成d-Ι,并且劃 分信息可被編碼直到深度為〇到d-2中的一個。換句話說,當(dāng)編碼被執(zhí)行直到在與d-2的 深度相應(yīng)的編碼單元在操作970中被劃分之后深度是d-Ι時,用于對深度為d-Ι和尺寸為 2N_(d-l) X2N_(d-l)的編碼單元980進(jìn)行預(yù)測編碼的預(yù)測單元990可包括以下分區(qū)類型的 分區(qū):尺寸為2N_(d-l)X2N_(d-l)的分區(qū)類型992、尺寸為2N_(d-l)XN_(d-l)的分區(qū)類 型994、尺寸為N_(d-l)X2N_(d-l)的分區(qū)類型996和尺寸SN_(d-l)XN_(d-l)的分區(qū)類 型 998。
[0140] 可對分區(qū)類型992至998中的尺寸為2N_(d-l) X2N_(d-l)的一個分區(qū)、尺寸 為2N_(d-l)XN_(d-l)的兩個分區(qū)、尺寸SN_(d-l)X2N_(d-l)的兩個分區(qū)、尺寸為【 (d-1) XN_(d-l)的四個分區(qū)重復(fù)地執(zhí)行預(yù)測編碼,以搜索具有最小編碼誤差的分區(qū)類型。
[0141] 即使當(dāng)尺寸為N_(d_l) XN_(d_l)的分區(qū)類型998具有最小編碼誤差時,由于最大 深度是d,因此深度為d-Ι的編碼單元CU_(d-Ι)也不再被劃分到更低深度,構(gòu)成當(dāng)前最大編 碼單元900的編碼單元的編碼深度被確定為d-Ι,并且當(dāng)前最大編碼單元900的分區(qū)類型可 被確定為N_ (d-1) X N_ (d-Ι)。此外,由于最大深度是d,因此不設(shè)置最小編碼單元952的劃 分信息。
[0142] 數(shù)據(jù)單元999可以是用于當(dāng)前最大編碼單元的"最小單元"。根據(jù)本發(fā)明的實施例 的最小單元可以是通過將最小編碼單元980劃分成4份而獲得的矩形數(shù)據(jù)單元。通過重復(fù) 地執(zhí)行編碼,視頻編碼設(shè)備100可通過比較根據(jù)編碼單元900的深度的編碼誤差來選擇具 有最小編碼誤差的深度以確定編碼深度,并將相應(yīng)分區(qū)類型和預(yù)測模式設(shè)置為編碼深度的 編碼模式。
[0143] 這樣,在所有深度1至d中對根據(jù)深度的最小編碼誤差進(jìn)行比較,并且具有最小編 碼誤差的深度可被確定為編碼深度。編碼深度、預(yù)測單元的分區(qū)類型和預(yù)測模式可作為關(guān) 于編碼模式的信息被編碼并發(fā)送。另外,由于編碼單元從〇的深度被劃分到編碼深度,因此 僅編碼深度的劃分信息被設(shè)置為0,并且除了編碼深度以外的深度的劃分信息被設(shè)置為1。
[0144] 視頻解碼設(shè)備200的熵解碼器220可提取并使用關(guān)于編碼單元900的編碼深度和 預(yù)測單元的信息,來對編碼單元912進(jìn)行解碼。視頻解碼設(shè)備200可通過使用根據(jù)深度的 劃分信息,將劃分信息為〇的深度確定為編碼深度,并且使用關(guān)于相應(yīng)深度的編碼模式的 信息來進(jìn)行解碼。
[0145] 圖10至圖12是用于描述根據(jù)本發(fā)明的實施例的編碼單元1010、預(yù)測單元1060和 變換單元1070之間的關(guān)系的示圖。
[0146] 編碼單元1010是最大編碼單元中的與由視頻編碼設(shè)備100確定的編碼深度相應(yīng) 的具有樹結(jié)構(gòu)的編碼單元。預(yù)測單元1060是每個編碼單元1010中的預(yù)測單元的分區(qū),變 換單元1070是每個編碼單元1010的變換單元。
[0147] 當(dāng)在編碼單元1010中最大編碼單元的深度為0時,編碼單元1012和1054的深度 是 1,編碼單元 1014、1016、1018、1028、1050 和 1052 的深度是 2,編碼單元 1020、1022、1024、 1026、1030、1032和1048的深度是3,編碼單元1040、1042、1044和1046的深度是4。
[0148] 在預(yù)測單元1060中,通過劃分編碼單元來獲得一些編碼單元1014、1016、1022、 1032、1048、1050、1052和1054。換句話說,編碼單元1014、1022、1050和1054中的分區(qū)類型 的尺寸是2NXN,編碼單元1016、1048和1052中的分區(qū)類型的尺寸是NX 2N,編碼單元1032 的分區(qū)類型的尺寸就NXN。編碼單元1010的預(yù)測單元和分區(qū)等于或小于每個編碼單元。
[0149] 在小于編碼單元1052的數(shù)據(jù)單元中的變換單元1070中,對編碼單元1052的圖 像數(shù)據(jù)執(zhí)行變換或逆變換。另外,在尺寸和形狀方面,變換單元1070中的編碼單元1014、 1016、1022、1032、1048、1050、1052和 1054不同于預(yù)測單元 1060 中的編碼單元1014、1016、 1022、1032、1048、1050、1052和1054。換句話說,視頻編碼設(shè)備100和視頻解碼設(shè)備200可 對同一編碼單元中的數(shù)據(jù)單元獨立地執(zhí)行幀內(nèi)預(yù)測、運(yùn)動估計、運(yùn)動補(bǔ)償、變換和逆變換。
[0150] 因此,對最大編碼單元的每個區(qū)域中的具有分層結(jié)構(gòu)的每個編碼單元遞歸地執(zhí)行 編碼來確定最優(yōu)編碼單元,從而可獲得具有遞歸樹結(jié)構(gòu)的編碼單元。編碼信息可包括關(guān)于 編碼單元的劃分信息、關(guān)于分區(qū)類型的信息、關(guān)于預(yù)測模式的信息和關(guān)于變換單元的尺寸 的信息。
[0151] 表1示出可由視頻編碼設(shè)備100和視頻解碼設(shè)備200設(shè)置的編碼信息。
[0152] [表 1]
【權(quán)利要求】
1. 一種視頻的賭解碼方法,所述方法包括: 確定包括在編碼單元中并用于對編碼單元進(jìn)行逆變換的變換單元; 從比特流獲得變換單元有效系數(shù)標(biāo)記,其中,變換單元有效系數(shù)標(biāo)記指示非零變換系 數(shù)是否存在于變換單元中; 在為了確定變換單元而對編碼單元進(jìn)行劃分的次數(shù)被稱為變換單元的變換深度的情 況下,基于變換單元的變換深度來確定用于對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)解碼的上下 文模型; 基于確定的上下文模型來對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)解碼。
2. 如權(quán)利要求1所述的方法,其中,確定變換單元的步驟包括: 從比特流獲得指示編碼單元是否被劃分為變換單元的劃分變換標(biāo)記; 基于劃分變換標(biāo)記來判定是否沿水平方向和垂直方向?qū)⒕幋a單元劃分為四片; 通過根據(jù)所述判定將編碼單元劃分為四片或者不對編碼單元進(jìn)行劃分,確定包括在編 碼單元中的變換單元。
3. 如權(quán)利要求1所述的方法,其中,確定上下文模型的步驟包括: 如果變換單元的尺寸等于編碼單元的尺寸,則確定第一上下文模型; 如果變換單元的尺寸小于編碼單元的尺寸,則確定第二上下文模型, 其中,第一上下文模型和第二上下文模型基于不同的概率分布模型。
4. 如權(quán)利要求1所述的方法,其中,確定上下文模型的步驟包括: 基于變換單元的變換深度來獲得用于確定上下文模型的上下文增加參數(shù); 基于上下文增加參數(shù)來確定指示多個預(yù)設(shè)上下文模型之一的上下文索引。
5. 如權(quán)利要求4所述的方法,其中,如果變換單元的變換深度為0并且變換單元的尺寸 等于編碼單元的尺寸,則上下文增加參數(shù)具有值1, 其中,如果變換單元的變換深度不為0并且變換單元的尺寸小于編碼單元的尺寸,貝U 上下文增加參數(shù)具有值0。
6. 如權(quán)利要求4所述的方法,其中,通過對獲得的上下文增加參數(shù)與預(yù)定上下文索引 偏移求和來確定上下文索引。
7. 如權(quán)利要求1所述的方法,其中,對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)解碼的步驟包 括:基于包括在確定的上下文模型中的關(guān)于最大概率符號和最小概率符號的信息W及最大 概率符號和最小概率符號中的至少一個的概率值,對變換單元有效系數(shù)標(biāo)記執(zhí)行二進(jìn)制算 術(shù)解碼。
8. -種視頻的賭解碼設(shè)備,所述設(shè)備包括: 解析器,用于從比特流獲得變換單元有效系數(shù)標(biāo)記,其中,變換單元有效系數(shù)標(biāo)記指示 非零變換系數(shù)是否存在于變換單元中,變換單元包括在編碼單元中并用于對編碼單元進(jìn)行 逆變換; 上下文建模器,用于在為了確定變換單元而對編碼單元進(jìn)行劃分的次數(shù)被稱為變換單 元的變換深度的情況下,基于變換單元的變換深度來確定用于對變換單元有效系數(shù)標(biāo)記進(jìn) 行算術(shù)解碼的上下文模型; 算術(shù)解碼器,用于基于確定的上下文模型來對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)解碼。
9. 一種視頻的賭編碼方法,所述方法包括: 獲得基于變換單元而變換的編碼單元的數(shù)據(jù); 在為了確定變換單元而對編碼單元進(jìn)行劃分的次數(shù)被稱為變換單元的變換深度的情 況下,基于變換單元的變換深度來確定用于對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)編碼的上下 文模型,其中,變換單元有效系數(shù)標(biāo)記指示非零變換系數(shù)是否存在于變換單元中; 基于確定的上下文模型來對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)編碼。
10. 如權(quán)利要求9所述的方法,其中, 判定編碼單元沿水平方向和垂直方向是否被劃分為四片并因此被劃分為包括在編碼 單元中的變換單元; 基于所述判定來設(shè)置劃分變換標(biāo)記,其中,劃分變換標(biāo)記指示編碼單元是否被劃分為 變換單元; 對設(shè)置的劃分變換標(biāo)記進(jìn)行算術(shù)編碼。
11. 如權(quán)利要求9所述的方法,其中,確定上下文模型的步驟包括: 如果變換單元的尺寸等于編碼單元的尺寸,則確定第一上下文模型; 如果變換單元的尺寸小于編碼單元的尺寸,則確定第二上下文模型, 其中,第一上下文模型和第二上下文模型基于不同的概率分布模型。
12. 如權(quán)利要求9所述的方法,其中,確定上下文模型的步驟包括: 基于變換單元的變換深度來獲得用于確定上下文模型的上下文增加參數(shù); 基于上下文增加參數(shù)來確定指示多個預(yù)設(shè)上下文模型之一的上下文索引。
13. 如權(quán)利要求12所述的方法,其中,如果變換單元的變換深度為0并且變換單元的尺 寸等于編碼單元的尺寸,則上下文增加參數(shù)具有值1, 其中,如果變換單元的變換深度不為0并且變換單元的尺寸小于編碼單元的尺寸,貝U 上下文增加參數(shù)具有值0。
14. 如權(quán)利要求12所述的方法,其中,通過對獲得的上下文增加參數(shù)與預(yù)定上下文索 引偏移求和來確定上下文索引。
15. -種視頻的賭編碼設(shè)備,所述設(shè)備包括: 上下文建模器,用于獲得基于變換單元而變換的編碼單元的數(shù)據(jù),并且在為了確定變 換單元而對編碼單元進(jìn)行劃分的次數(shù)被稱為變換單元的變換深度的情況下,基于變換單元 的變換深度來確定用于對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)編碼的上下文模型,其中,變換 單元有效系數(shù)標(biāo)記指示非零變換系數(shù)是否存在于變換單元中; 算術(shù)編碼器,用于基于確定的上下文模型來對變換單元有效系數(shù)標(biāo)記進(jìn)行算術(shù)編碼。
【文檔編號】H04N19/13GK104471934SQ201380035699
【公開日】2015年3月25日 申請日期:2013年7月2日 優(yōu)先權(quán)日:2012年7月2日
【發(fā)明者】金壹求 申請人:三星電子株式會社