專利名稱:以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法及處理電路的制作方法
技術(shù)領(lǐng)域:
本發(fā)明的實施例有關(guān)于視頻編碼,更具體地,有關(guān)于以樹狀(tree based)運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分(target motion partition)的方法及處理電路。
背景技術(shù):
編碼電路(Coding Unit,CU)定義為具有正方形(square shape)的基本單元。很多處理步驟基于⑶實施,包含幀內(nèi)/幀間預(yù)測(intra/inter prediction)、變換、量化、熵編碼(entropy coding),等等。此處定義兩個專門術(shù)語最大編碼單元(Largest Coding Unit,IXU)和最小編碼單元(Smallest Coding Unit,S⑶)。對于方便的實現(xiàn),每個IXU以及S⑶大小限制為2的冪,以及大于或者等于8。既然⑶限制為正方形,那么在IXU內(nèi)的 ⑶結(jié)構(gòu)可以適應(yīng)圖像以遞歸的(recursive)樹(tree)表達(dá)形式表示。也就是說,一個⑶ 可以由IXU大小以及⑶所屬的IXU內(nèi)部的分層(hierarchical)深度特征化。換言之,一個⑶可以分為多個比較小的⑶。例如,一個16x16的⑶可以分為4個8x8的⑶。IXU以及SCU的大小可以由例如LCU大小值s以及LCU中的最大階深度值h的信息指定。舉例說明,如果 s = 128 以及 h = 5,即有 5 種可能的 CU 大小128x128 (LCU) ,64x64,32x32,16x16 以及8x8 (SCU)。如果s = 16以及h = 2,可能的CU大小就是16x16 (LCU)以及8x8 (SCU)。 因此,如果給出LCU大小值以及最大階深度值,對應(yīng)地可能的CU大小就確定了。一個CU可以具有一個或者多個預(yù)測單元(Prediction Units,PU) 盡管如此,PU 的像素(Pixel)共享相同運(yùn)動信息(例如,預(yù)測方向、參考圖像索引以及運(yùn)動矢量)或者幀內(nèi)預(yù)測模式。在H. 264中,當(dāng)CU = 16xl6PU幀內(nèi)預(yù)測PU可以為16x16或者8x8或者4x4, PU幀間預(yù)測可以為16x16或者16x8或者8x16,以及當(dāng)CU = 8x8,不允許PU幀內(nèi)預(yù)測,PU 幀間預(yù)測可以為8x8或者8x4或者4x8或者4x4。在擴(kuò)展的宏塊(macroblock)方案中,當(dāng) CU = 64x64,不允許PU幀內(nèi)預(yù)測,PU幀間預(yù)測可以為64x64或者64x32或者32x64 ;當(dāng)CU =32x32,不允許PU幀內(nèi)預(yù)測,PU幀間預(yù)測可以為32x32或者32x16或者16x32 ;當(dāng)CU = 16xl6,PU幀內(nèi)預(yù)測可以為16x16或者8x8或者4x4,PU幀間預(yù)測可以為16x16或者16x8或者8x16,以及當(dāng)⑶=8x8,不允許PU幀內(nèi)預(yù)測,PU幀間預(yù)測可以為8x8或者8x4或者4x8 或者4x4。在H. 265/高效視頻編碼(High Efficiency Video Coding, HEVC)考慮中的檢測模型(Test Model under Consideration, TMuC)中,每一個CU有兩個PU幀內(nèi)預(yù)測選項以及九個PU幀間預(yù)測選項。對于樹狀運(yùn)動補(bǔ)償(motion compensation), B片的用于宏塊類型(macroblock type,簡寫做mb_type)的二元化表達(dá)用在內(nèi)容適應(yīng)性二元化算法編碼(Context-Adaptive Binary Arithmetic Coding,CABAC)中。請參閱圖 1,圖 1 為用于 16x16 運(yùn)動部分(motion partition)(例如,CU = 16x16)的 mb_type 的傳統(tǒng)二元化(binarization)表格的示意圖。如圖1所示,索引為22的正方形幀間預(yù)測運(yùn)動部分(motion partition)B_8x8,具有” 111101”指定的碼字(即,位串,bin string),分別由0、1、2以及3索引的其他正方形幀間預(yù)測模式部分 B_Direct_16xl6,B_L0_16xl6, B_Ll_16xl6 以及 B_Bi_16xl6,具有 “0”,“100”,101”以及“110000”指定的碼字。長方形(非正方形)幀間預(yù)測運(yùn)動部分通常具有低出現(xiàn)機(jī)率(occurrence probabilities),這樣的碼字指定可能不會獲得優(yōu)化的率失真 (Rate-Distortion, RD)效能。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供一種以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法以及處理電路。根據(jù)本發(fā)明的一方面,本發(fā)明揭示了一種以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法,該方法包含利用一設(shè)定單元提供第一二元化規(guī)則,該第一二元化規(guī)則定了多個二元化碼字,該多個二元化碼字分別應(yīng)到不同運(yùn)動部分的多個語法元素(syntax element) 上,其中,對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度短;以及根據(jù)該第一二元化規(guī)則,確認(rèn)目標(biāo)二元化碼字以及該目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射。根據(jù)本發(fā)明的另一方面,本發(fā)明揭示了一種以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的處理電路,包含設(shè)定單元,用于提供第一二元化規(guī)則,該第一二元化規(guī)則定了多個二元化碼字,該多個二元化碼字分別應(yīng)到不同運(yùn)動部分的多個語法元素上,其中,對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度短;以及處理單元,根據(jù)該第一二元化規(guī)則,確認(rèn)目標(biāo)二元化碼字以及該目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射。本發(fā)明提供的一種以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法以及處理電路, 可以提高RD效能。
圖1為用于16x16運(yùn)動部分(例如,⑶=16x16)的宏塊類型的傳統(tǒng)二元化表格的示意圖;圖2為根據(jù)本發(fā)明的第一實施例的編碼系統(tǒng)的示意圖;圖3為根據(jù)本發(fā)明的實施例的用于16x16運(yùn)動部分(即,⑶=16x16)的宏塊類型已修訂二元化表格的實施例示意圖;圖4為根據(jù)本發(fā)明的第一實施例的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法的流程圖;圖5為根據(jù)本發(fā)明的第二實施例的編碼系統(tǒng)的示意圖;圖6為根據(jù)本發(fā)明的第二實施例的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法的流程圖;圖7為根據(jù)本發(fā)明的第三實施例的編碼系統(tǒng)的示意圖;圖8為根據(jù)本發(fā)明的第三實施例的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法的流程圖。
具體實施例方式在說明書及權(quán)利要求當(dāng)中使用了某些詞匯來指稱特定組件。所屬領(lǐng)域中一般技術(shù)人員應(yīng)可理解,制造商可能會用不同的名詞來稱呼同一個組件。本說明書及權(quán)利要求并不以名稱的差異來作為區(qū)分組件的方式,而是以組件在功能上的差異來作為區(qū)分的準(zhǔn)則。在通篇說明書及權(quán)利要求當(dāng)中所提及的“包括”和“包含”為一開放式的用語,故應(yīng)解釋成“包含但不限定于”。以外,“耦接”一詞在此為包含任何直接及間接的電氣連接手段。間接的電氣連接手段包括通過其他裝置進(jìn)行連接。請參考圖2,圖2為根據(jù)本發(fā)明的第一實施例的編碼系統(tǒng)的示意圖。編碼系統(tǒng)100 包含編碼器102以及解碼器104。對于編碼器102,包含二元化處理電路112以及其他電路114,其中其他電路114可以包含使得編碼器102正確實施所需功能的任何所需電路組件,以及二元化處理電路112包含設(shè)定單元122以及處理單元124??紤]到解碼器104,解碼器104包含二元化處理電路132以及其他電路134,其中,其他電路134可以包含使得解碼器104正確實施所需功能的任何所需電路組件,以及二元化處理電路132包含設(shè)定單元 142以及處理單元144。設(shè)定單元122/142用于提供二元化規(guī)則BR,二元化規(guī)則BR定義了多個二元化碼字(即,位串),該多個二元化碼字分別映射到用于不同運(yùn)動部分的多個語法元素,其中,對應(yīng)任何一個正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度短。處理單元124/144耦接到設(shè)定單元122/142,實現(xiàn)用于根據(jù)二元化規(guī)則BR確認(rèn)目標(biāo)二元化碼字與目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射。舉例說明,但是不限于此,上述語法元素為宏塊類型(或者所謂的CU模式/PU模式)。因此,編碼器102的二元化處理電路112用于根據(jù)二元化規(guī)則BR輸出碼字 /位而對宏塊類型(即,CU模式或者PU模式)實施二元化運(yùn)作,以及解碼器104的二元化處理電路132用于根據(jù)二元化規(guī)則BR輸出宏塊類型(即,⑶模式/PU模式)而對已接收碼字/位實施解二元化運(yùn)作。一般說來,解碼器104中的處理單元144所參考的二元化規(guī)則BR和編碼器102中的處理單元124所參考的二元化規(guī)則BR相同。更進(jìn)一步說,較大正方形幀間預(yù)測運(yùn)動部分的出現(xiàn)機(jī)率可能比較小正方形幀間預(yù)測運(yùn)動部分的出現(xiàn)機(jī)率更高。具體而言,在第一正方形幀間預(yù)測運(yùn)動部分中的部分大小比第二正方形幀間預(yù)測運(yùn)動部分中的部分大小大,對應(yīng)第一正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度比對應(yīng)第二正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度短。也就是說,與較小正方形幀間預(yù)測運(yùn)動部分相比,較大正方形幀間預(yù)測運(yùn)動部分為了更好的編碼效率可能指定更短的碼字。盡管如此,此處僅用說明本發(fā)明,不限制本發(fā)明的保護(hù)范圍。 換言之,只要正方形幀間預(yù)測運(yùn)動部分(例如,幀間預(yù)測CU/PU)的碼字比長方形幀間預(yù)測運(yùn)動部分(例如,長方形幀間預(yù)測PU)的碼資短,就符合本發(fā)明的精神。上述二元化規(guī)則BR可以使用二元化表格形式表達(dá)。請參考圖3,圖3為根據(jù)本發(fā)明的實施例的用于16x16運(yùn)動部分(S卩,CU = 16x16)的mb_type已修訂(modified) 二元化表格的實施例示意圖。如上所述,對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度短。因此,如圖3所示, 由0索引的正方形幀間預(yù)測運(yùn)動部分B_Direct_16xl6被指定碼字長度等于1的碼字” 0”; 由1索引的正方形幀間預(yù)測運(yùn)動部分B_L0_16xl6被指定為碼字長度為3的碼字” 100”;由 2索引的正方形幀間預(yù)測運(yùn)動部分B_Ll_16xl6被指定碼字長度為3的碼字” 100” ;由3索引的正方形幀間預(yù)測運(yùn)動部分B_Bi_16xl6被指定碼字長度為4的碼字“1100”;由22索引的正方形幀間預(yù)測運(yùn)動部分B_8x8被指定碼字長度為5的碼字“11010”。對于分別索引為4-21的非正方形的幀間預(yù)測運(yùn)動部分,最短碼字長度等于7,其中,該等于7的最短碼字大于正方形幀間預(yù)測的碼字長度中的最大值。如圖3所示,對應(yīng)任何幀內(nèi)預(yù)測運(yùn)動部分的前綴(prefix) 二元化碼字也比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度短。也就是說,由23-38索引的幀內(nèi)預(yù)測運(yùn)動部分被指定碼字長度為5的字前綴字“11011”。盡管如此,僅用以說明本發(fā)明, 不用于限制本發(fā)明。換言之,只要正方形幀間預(yù)測運(yùn)動部分(例如,幀間預(yù)測⑶/PU)的碼字比長方形幀間預(yù)測運(yùn)動部分(例如,長方形幀間預(yù)測PU)的短就附合本發(fā)明的精神。應(yīng)當(dāng)注意到,對于32x32運(yùn)動部分(即,CU = 32x32)的mb_type已修訂二元化表格以及用于64x64運(yùn)動部分(即,⑶=64x64)的mb_type已修訂二元化表格的配置方式, 可以與用于16x16運(yùn)動部分(S卩,⑶=16x16)的mb_type已修訂二元化表格的配置方式相似。簡潔起見,進(jìn)一步描述在此省略。簡短總結(jié),既然具有較高出現(xiàn)機(jī)率的正方形幀間預(yù)測運(yùn)動部分(例如,正方形幀間預(yù)測cu/pu)運(yùn)動部分比長方形(非正方形)幀間預(yù)測運(yùn)動部分被指定更短碼字,所以實驗結(jié)果清晰地表明可以達(dá)到更好的編碼效能。在一個示例實現(xiàn)中,設(shè)定單元122/142提供的二元化規(guī)則BR可以具有固定階 (fixed order)的碼字。盡管如此,在另一個示例實現(xiàn)中,設(shè)定單元122/142提供的二元化規(guī)則BR可以具有適應(yīng)性階的碼字。也就是說,二元化規(guī)則BR可以根據(jù)統(tǒng)計特性適應(yīng)性調(diào)整。舉例說明,在確認(rèn)目標(biāo)二元化碼字和目標(biāo)運(yùn)動部分的目標(biāo)語法元素的映射之后,設(shè)定單元122/142獲得不同運(yùn)動部分的出現(xiàn)機(jī)率的統(tǒng)計特性,以及根據(jù)該統(tǒng)計特性更新該二元化規(guī)則BR。假設(shè)指定給第一運(yùn)動部分的初始碼字的碼字長度比指定給第二運(yùn)動部分的初始碼字的碼字長度更長。當(dāng)?shù)谝贿\(yùn)動部分的出現(xiàn)機(jī)率比第二運(yùn)動部分的出現(xiàn)機(jī)率高時,在幾個⑶處理之后,第一運(yùn)動部分可以指定為更短碼字長度的新碼字,而第二運(yùn)動部分可以指定為更長碼字長度的新碼字。請注意,設(shè)定單元122可以配置為在固定階以及適應(yīng)性階之間切換二元化規(guī)則 BR0在一個示例實現(xiàn)中,當(dāng)設(shè)定單元122控制二元化規(guī)則BR在固定階與適應(yīng)性階之間切換時,標(biāo)志也從編碼器102傳送到解碼器104,以告知解碼器104的設(shè)定單元142。因此,在已收到標(biāo)志告知之下,解碼器102 —側(cè)的設(shè)定單元142可以正確控制二元化規(guī)則BR在固定階以及適應(yīng)性階之間切換,解碼器104的處理單元144實施的解二元化可以正常正確地工作。圖4為根據(jù)本發(fā)明的第一實施例的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法的流程圖。如果結(jié)果大致相同,那么步驟就可以不局限于如圖4所示精確順序執(zhí)行。示例方法可以由圖2中的二元化處理電路112/114實施,而且簡單描述如下。步驟400:開始。步驟402 提供一二元化規(guī)則,該二元化規(guī)則定義了多個二元化碼字(即,位串), 該多個二元化碼字分別映射到用于不同運(yùn)動部分(例如,CU/PU)的多個語法元素(例如, 宏塊類型CU模式或者PU模式),其中,對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度短。步驟404 根據(jù)該二元化規(guī)則,通過確認(rèn)目標(biāo)二元化碼字與目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射而實施二元化/解二元化運(yùn)作。步驟406 二元化規(guī)則中的階是否固定?如果是,那么轉(zhuǎn)到步驟404繼續(xù)處理下一個目標(biāo)運(yùn)動部分;否則,轉(zhuǎn)到步驟408。步驟408 獲得該二元化規(guī)則中的不同運(yùn)動部分的出現(xiàn)機(jī)率的統(tǒng)計特性。步驟410 根據(jù)該統(tǒng)計特性更新該二元化規(guī)則。轉(zhuǎn)到步驟404繼續(xù)處理下一個目標(biāo)運(yùn)動部分。如圖4所示,每次一個PU處理完畢,更新二元化規(guī)則就執(zhí)行一次步驟410。盡管如此,這只是用于說明本發(fā)明,然本發(fā)明不以此為限。可替換地,只有當(dāng)一個CU處理完畢時, 更新二元化規(guī)則才執(zhí)行步驟410。也就是說,假設(shè)目標(biāo)運(yùn)動部分是一個即將被處理的CU中的最后一個PU。在確認(rèn)了目標(biāo)二元化碼字與目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射之后 (步驟404),(其中確認(rèn)該映射是用于實施二元化/解二元化運(yùn)作),設(shè)定單元獲得不同運(yùn)動部分的出現(xiàn)機(jī)率的統(tǒng)計特性,然后根據(jù)該統(tǒng)計特性更新該二元化規(guī)則(步驟408以及步驟410)。這也遵循本發(fā)明的精神,也落入本發(fā)明的保護(hù)范圍。所屬領(lǐng)域技術(shù)人員在閱讀了上述段落之后可以理解圖4的步驟的運(yùn)作,簡潔起見,此處不再贅述。為了獲得優(yōu)化編碼效能以及/或者提高靈活性,二元化處理電路可以配置為選擇性地根據(jù)實際需要而使用傳統(tǒng)的二元化規(guī)則或者前述已修訂二元化規(guī)則。請參考圖5,圖 5為根據(jù)本發(fā)明的第二實施例的編碼系統(tǒng)的示意圖。圖5所示的編碼系統(tǒng)500的硬件配置與圖2所示編碼系統(tǒng)100的硬件配置相似。主要區(qū)別在于包含在編碼器502/解碼器504 的二元化處理電路512/532中包含的設(shè)定單元522/542。在替換設(shè)計中,設(shè)定單元522/542 從第一二元化規(guī)則BR以及第二二元化規(guī)則BR’種選擇目標(biāo)二元化規(guī)則BR_T。第一二元化規(guī)則BR定義多個第一二元化碼字(即,位串),該多個第一二元化碼字分別映射到用于不同第一運(yùn)動部分的多個語法元素(例如,宏塊類型,CU模式或者PU模式),對應(yīng)任何方型幀間預(yù)測運(yùn)動部分的第一二元化碼字的碼字長度比對應(yīng)任何非方型幀間預(yù)測運(yùn)動部分的第一二元化碼字的碼字長度短。第二二元化規(guī)則BR’定義了多個第二二元化碼字(即,位串) 該多個第二二元化碼字分別映射到用于不同第二運(yùn)動部分的多個語法元素(例如,宏塊類型,CU模式或者PU模式),對應(yīng)任何方型幀間預(yù)測運(yùn)動部分的第二二元化碼字的碼字長度比對應(yīng)任何非方型幀間預(yù)測運(yùn)動部分的第二二元化碼字的碼字長度短。舉例說明,第一二元化規(guī)則BR可以具有圖3的示例二元化表格中的碼字階,而第二二元化規(guī)則BR’可以具有圖1的示例二元化表格中的碼字階。也就是說,在此示例中,第二二元化規(guī)則BR’為傳統(tǒng)的二元化規(guī)則,第一二元化規(guī)則BR為本發(fā)明所提出的已修訂的二元化規(guī)則。處理單元124/144用于根據(jù)目標(biāo)二元化規(guī)則BR_T確認(rèn)目標(biāo)二元化碼字以及目標(biāo)運(yùn)動部分的目標(biāo)語法元素(例如,目標(biāo)宏塊類型,CU模式或者PU模式)之間的映射。舉例說明,但是不限于此,設(shè)定單元522/542用于在序列(sequence)層(level)、圖像組(group of pictures, GOP)層、圖像層或者片(slice)層確定目標(biāo)二元化表格。換言之,已修訂二元化規(guī)則BR的使用在序列層、GOP層、圖像層或者片層使能(enable)或者禁止(disable)。 此外,當(dāng)設(shè)定單元522改變目標(biāo)二元化規(guī)則BR_T的選擇時,標(biāo)志(flag)可以從編碼器502 發(fā)送到解碼器504,以告知解碼器504的設(shè)定單元542。因此,因為在已接收器標(biāo)的告知情況下,設(shè)定單元542可以正確改變目標(biāo)二元化規(guī)則BR_T,所以解碼器504的處理單元144實施的解二元化運(yùn)作就可以正常且正確地工作。圖6為根據(jù)本發(fā)明的第二實施例的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法的流程圖。如果結(jié)果大致相同,那么步驟就不必局限于以圖6所示的精確順序執(zhí)行。示例方法可以由圖5的二元化處理電路512/514實施,簡要描述如下。步驟600:開始。步驟602 從第一二元化規(guī)則(例如,本發(fā)明所提出的已修訂二元化規(guī)則)以及第二二元化規(guī)則(例如,傳統(tǒng)的二元化規(guī)則)中選擇目標(biāo)二元化規(guī)則。步驟604 根據(jù)該目標(biāo)二元化規(guī)則,通過確認(rèn)目標(biāo)二元化碼字以及目標(biāo)運(yùn)動部分的目標(biāo)語法元素(例如,目標(biāo)宏塊類型,CU模式或者PU模式)之間的映射而實施二元化/
解二元化運(yùn)作。步驟606:當(dāng)前目標(biāo)二元化規(guī)則是否需要在序列層、GOP層、圖像層或者片層改變? 如果是,那么轉(zhuǎn)到步驟602 ;否則,轉(zhuǎn)到步驟604以繼續(xù)處理下一個目標(biāo)運(yùn)動部分。所屬領(lǐng)域技術(shù)人員在閱讀了上述段落之后可以理解圖6的步驟的運(yùn)作,簡潔起見,此處不再贅述。應(yīng)當(dāng)注意到,當(dāng)設(shè)定單元522將第一二元化規(guī)則BR使能為目標(biāo)二元化規(guī)則BR_T 時,目標(biāo)二元化規(guī)則81 _1~可能具有固定階,或者可能根據(jù)不同運(yùn)動部分的出現(xiàn)機(jī)率的統(tǒng)計特性適應(yīng)性地更新。為了得到優(yōu)化編碼效能以及/或者提高靈活性,二元化處理電路可以配置為在不同的CU層,為不同的目標(biāo)運(yùn)動部分使用不同的已修訂二元化規(guī)則。例如,當(dāng)CU大小為64x64 時,編碼器./解碼器使用的已修訂二元化規(guī)則可以具有用于正方形以及長方形幀間預(yù)測運(yùn)動部分的第一階碼字,以及當(dāng)CU大小為32x32時,編碼器/解碼器使用的已修訂二元化規(guī)則可以為具有正方形以及長方形幀間預(yù)測運(yùn)動部分的第二碼字階。請參考圖7,圖7為根據(jù)本發(fā)明的第三實施例的編碼系統(tǒng)的示意圖。如圖7所示的編碼系統(tǒng)700的硬件配置與圖2的編碼系統(tǒng)100的硬件配置相似。主要差別在于編碼器702/解碼器704中的二元化處理電路712/732中包含的設(shè)定單元722/742。在替換設(shè)計中,設(shè)定單元722/742提供不同的二元化規(guī)則,例如,第一二元化規(guī)則BR_1以及第二二元化規(guī)則BR_2。第一二元化規(guī)則 BR_1定義了多個第一二元化碼字(即,位串),該多個二元化碼字分別映射到用于不同第一運(yùn)動部分的多個語法元素(例如,宏塊類型,CU模式或者PU模式),第二二元化規(guī)則BR_2 定義了多個第二二元化碼字(即,位串),該多個二元化碼字分別映射到用于不同第二運(yùn)動部分的多個語法元素(例如,宏塊類型,CU模式或者PU模式)。處理單元124/144根據(jù)第一二元化規(guī)則BR_1確認(rèn)目標(biāo)二元化碼字以及第一目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射,以及根據(jù)第二二元化規(guī)則BR_2,處理單元124/144通過確認(rèn)目標(biāo)二元化碼字以及第二目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射,從而實施二元化/解二元化運(yùn)作。在此實施例中,第一二元化規(guī)則BR_1以及第二二元化規(guī)則BR_2中的每一個均為根據(jù)本發(fā)明的已修訂二元化規(guī)則。也就是說,對于第一二元化規(guī)則BR_1,對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的第一二元化碼字的長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的第一二元化碼字的長度短;此外,對于第二二元化規(guī)則BR_2,對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的第二二元化碼字的長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的第二二元化碼字的長度短。更進(jìn)一步說,第一二元化規(guī)則BR_以及第二二元化規(guī)則BR_2中的每一個可以具有固定階,或者根據(jù)不同運(yùn)動部分的出現(xiàn)機(jī)率的統(tǒng)計特性而適應(yīng)性更新。在適應(yīng)性階使用的情況下,在目標(biāo)二元化碼字以及第一目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射確認(rèn)之后, 設(shè)定單元722/742獲得第一二元化規(guī)則BR_1中的不同第一運(yùn)動部分的出現(xiàn)機(jī)率的統(tǒng)計特性,以及根據(jù)不同第一運(yùn)動部分的出現(xiàn)機(jī)率的統(tǒng)計特性更新第一二元化規(guī)則BR_1 ;相似地,在目標(biāo)二元化碼字以及第二目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射確認(rèn)之后,設(shè)定單元722/742獲得第二二元化規(guī)則BR_2中的不同第二運(yùn)動部分的出現(xiàn)機(jī)率的統(tǒng)計特性,以及根據(jù)不同第二運(yùn)動部分的出現(xiàn)機(jī)率的統(tǒng)計特性更新第二二元化規(guī)則BR_2。請注意,設(shè)定單元722可以在固定階以及適應(yīng)性階之間切換第一二元化規(guī)則 BR_1/第二二元化規(guī)則BR_2。在此實施例中,當(dāng)設(shè)定單元722控制第一二元化規(guī)則BR_1/ 第二二元化規(guī)則BR_2在固定階以及適應(yīng)性階直接切換時,標(biāo)志也從編碼器702傳送到解碼器704,以告知解碼器704的設(shè)定單元742。因此,因為設(shè)定單元742可在已收到標(biāo)志的告知情況下,正確控制第一二元化規(guī)則BR_1/第二二元化規(guī)則BR_2在固定階以及適應(yīng)性階之間切換,解碼器704中的處理單元144實施的解二元化運(yùn)作就可以正常且正確地工作。圖8為根據(jù)本發(fā)明的第三實施例,以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法的流程圖。如果結(jié)果大致相同,那么如步驟就可以不以圖8所示的精確順序執(zhí)行。示例方法可以由第7圖的二元化處理電路712/714實施,簡潔起見,不再贅述。步驟800:開始。步驟802 提供第一二元化規(guī)則,第一二元化規(guī)則定義了多個第一二元化碼字 (即,位串),該多個第一二元化碼字分別映射到用于不同第一運(yùn)動部分的多個語法元素 (例如,宏塊類型,⑶模式或者PU模式)。在此實施例中,對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的第一二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的第一二元化碼字的碼字長度短。步驟804 根據(jù)第一二元化規(guī)則通過確認(rèn)目標(biāo)二元化碼字與第一二元化運(yùn)動部分的目標(biāo)語法元素之間的映射而實施二元化/解二元化運(yùn)作。步驟806 第一二元化規(guī)則是否為規(guī)定階?如果是,轉(zhuǎn)到步驟812以繼續(xù)處理第二目標(biāo)運(yùn)動部分;否則,轉(zhuǎn)到步驟808。步驟808 獲得第一二元化規(guī)則中的不同第一運(yùn)動部分出現(xiàn)機(jī)率的統(tǒng)計特性。步驟810 根據(jù)步驟808獲得的統(tǒng)計特性更新第一二元化規(guī)則。步驟812 提供第二二元化規(guī)則,第二二元化規(guī)則定義了多個第二二元化碼字 (即,位串),該多個第二二元化碼字分別映射到用于不同第二運(yùn)動部分的多個語法元素 (例如,宏塊類型,⑶模式或者PU模式)。在此實施例中,對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的第二二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的第二二元化碼字的碼字長度短。步驟814 根據(jù)第二二元化規(guī)則通過確認(rèn)目標(biāo)二元化碼字與第二二元化運(yùn)動部分的目標(biāo)語法元素之間的映射而實施二元化/解二元化,其中,第二二元化規(guī)則與第一二元化規(guī)則不同。步驟816 第二二元化規(guī)則的階是否固定?如果是,轉(zhuǎn)到步驟822 ;否則,轉(zhuǎn)到步驟 818。步驟818 獲得第二二元化規(guī)則中的不同第二運(yùn)動部分的出現(xiàn)機(jī)率的統(tǒng)計特性。步驟820 根據(jù)步驟818獲得的統(tǒng)計特性更新第二二元化規(guī)則。
步驟822:結(jié)束。如圖8的流程中,每當(dāng)一個PU處理完畢時,執(zhí)行步驟810以及820,用以更新第一二元化規(guī)則以及第二二元化規(guī)則。盡管如此,此進(jìn)用于說明本發(fā)明??商鎿Q的,步驟810 以及820可以只在一個⑶處理完畢時才執(zhí)行,以更新第一二元化規(guī)則以及第二二元化規(guī)則。也就是說,假設(shè)第一目標(biāo)運(yùn)動部分為一個待處理的⑶中最后一個PU,那么第二目標(biāo)運(yùn)動部分就是另一個待處理的CU中最后一個PU。在目標(biāo)二元化碼字和第一目標(biāo)運(yùn)動部分的語法元素之間的映射被確認(rèn)以用于實施二元化/解二元化運(yùn)作(步驟804)之后,設(shè)定單元 722/742獲得統(tǒng)計特性,然后根據(jù)統(tǒng)計特性更新第一二元化規(guī)則BR_1 (步驟808以及810); 此外,在目標(biāo)二元化碼字與第二運(yùn)動部分的目標(biāo)語法元素之間的映射被確認(rèn)而用于二元化 /解二元化運(yùn)作(步驟814)之后,設(shè)定單元722/742獲得統(tǒng)計特性,以及根據(jù)統(tǒng)計特性更新第二二元化規(guī)則BR_2 (步驟818以及820)。所屬領(lǐng)域技術(shù)人員在閱讀了上述段落之后可以理解圖8的步驟的運(yùn)作,簡潔起見,此處不再贅述。應(yīng)當(dāng)注意到,上述示例方法以及二元化處理電路可以以H. 264、擴(kuò)展MB方案 (extended MB proposal)、H. 265/HEVC TMuC或者其他編碼標(biāo)準(zhǔn)中的樹狀運(yùn)動補(bǔ)償?shù)姆绞蕉褂谩I鲜鍪褂镁淙氡景l(fā)明保護(hù)范圍。任何本領(lǐng)域技術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可做些許的更動與潤飾,因此本發(fā)明的保護(hù)范圍當(dāng)視所附權(quán)利要求所界定者為準(zhǔn)。
權(quán)利要求
1.一種以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法,該方法包含利用設(shè)定單元提供第一二元化規(guī)則,該第一二元化規(guī)則定了多個二元化碼字,該多個二元化碼字分別應(yīng)到不同運(yùn)動部分的多個語法元素上,其中,對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度短;以及根據(jù)該第一二元化規(guī)則,確認(rèn)目標(biāo)二元化碼字以及該目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射。
2.如權(quán)利要求1所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法,其特征在于, 該多個語法元素中的每一個為宏塊類型。
3.如權(quán)利要求1所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法,其特征在于, 第一正方形幀間預(yù)測運(yùn)動部分制部分大小大于第二正方形幀間預(yù)測運(yùn)動部分的部分大小, 以及對應(yīng)該第一正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度比對應(yīng)該第二正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度短。
4.如權(quán)利要求1所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法,其特征在于進(jìn)一步包含在確認(rèn)該目標(biāo)二元化碼字與該目標(biāo)運(yùn)動部分的該目標(biāo)語法元素之間的映射之后,獲得該不同運(yùn)動部分的出現(xiàn)機(jī)率的統(tǒng)計特性,以及根據(jù)該統(tǒng)計特性更新該第一二元化規(guī)則。
5.如權(quán)利要求1所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法,其特征在于, 對應(yīng)任何方型幀內(nèi)預(yù)測運(yùn)動部分的前綴二元化碼字的碼字長度比對應(yīng)非正方形任何幀內(nèi)預(yù)測運(yùn)動部分的前綴二元化碼字的碼字長度短。
6.如權(quán)利要求1所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法,其特征在于進(jìn)一步包含從該第一二元化規(guī)則以及該第二二元化規(guī)則中選擇目標(biāo)二元化規(guī)則,其中,該第二二元化規(guī)則定義了多個第二二元化碼字,該多個第二二元化碼字分別映射到用于不同第二運(yùn)動部分的多個語法元素;以及當(dāng)該目標(biāo)二元化規(guī)則選擇做為該第一二元化規(guī)則時,根據(jù)該第一二元化規(guī)則,確認(rèn)該目標(biāo)二元化碼字與該目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射, 當(dāng)該目標(biāo)二元化規(guī)則選擇做為該第二二元化規(guī)則時,根據(jù)該第二二元化規(guī)則,確認(rèn)該目標(biāo)二元化碼字與該目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射。
7.如權(quán)利要求6所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法,其特征在于, 對應(yīng)正方形幀間預(yù)測運(yùn)動部分的第二二元化碼字的碼字長度比對應(yīng)非正方形幀間預(yù)測運(yùn)動部分的第二二元化碼字的碼字長度長。
8.如權(quán)利要求6所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法,其中,該目標(biāo)二元化規(guī)則在序列層、圖像組層、圖像層或者片層確定。
9.如權(quán)利要求1所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法,其特征在于進(jìn)一步包含處理第二目標(biāo)運(yùn)動部分,處理第二目標(biāo)運(yùn)動部分包含利用該設(shè)定單元提供第二二元化規(guī)則,該第二二元化規(guī)則定了多個二元化碼字,該多個二元化碼字分別應(yīng)到不同運(yùn)動部分的多個語法元素上,其中,對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度短;以及根據(jù)該第二二元化規(guī)則,確認(rèn)目標(biāo)二元化碼字以及該目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射。
10.如權(quán)利要求9所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法,其特征在于, 對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的第一二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的第一二元化碼字的碼字長度短,以及對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的第二二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的第二二元化碼字的碼字長度短。
11.如權(quán)利要求9所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法,其特征在于進(jìn)一步包含在確認(rèn)該目標(biāo)二元化碼字與該第二目標(biāo)運(yùn)動部分的該目標(biāo)語法元素之間的映射之后, 獲得該不同第二運(yùn)動部分的出現(xiàn)機(jī)率的統(tǒng)計特性,以及根據(jù)該統(tǒng)計特性更新該第二二元化規(guī)則。
12.—種以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的處理電路,包含設(shè)定單元,用于提供一第一二元化規(guī)則,該第一二元化規(guī)則定了多個二元化碼字,該多個二元化碼字分別應(yīng)到不同運(yùn)動部分的多個語法元素上,其中,對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度短;以及處理單元,根據(jù)該第一二元化規(guī)則,確認(rèn)目標(biāo)二元化碼字以及該目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射。
13.如權(quán)利要求12所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的處理電路,其特征在于,該多個語法元素中的每一個為宏塊類型。
14.如權(quán)利要求12所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的處理電路,其特征在于,第一正方形幀間預(yù)測運(yùn)動部分制部分大小大于第二正方形幀間預(yù)測運(yùn)動部分的部分大小,以及對應(yīng)該第一正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度比對應(yīng)該第二正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度短。
15.如權(quán)利要求12所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的處理電路,其特征在于在確認(rèn)該目標(biāo)二元化碼字與該目標(biāo)運(yùn)動部分的該目標(biāo)語法元素之間的映射之后,設(shè)定單元獲得該不同運(yùn)動部分的出現(xiàn)機(jī)率的統(tǒng)計特性,以及根據(jù)該統(tǒng)計特性更新該第一二元化規(guī)則。
16.如權(quán)利要求12所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的處理電路,其特征在于,對應(yīng)任何方型幀內(nèi)預(yù)測運(yùn)動部分的前綴二元化碼字的碼字長度比對應(yīng)非正方形任何幀內(nèi)預(yù)測運(yùn)動部分的前綴二元化碼字的碼字長度短。
17.如權(quán)利要求12所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的處理電路,其特征在于進(jìn)一步包含該設(shè)定單元從該第一二元化規(guī)則以及該第二二元化規(guī)則中選擇目標(biāo)二元化規(guī)則,其中,該第二二元化規(guī)則定義了多個第二二元化碼字,該多個第二二元化碼字分別映射到用于不同第二運(yùn)動部分的多個語法元素;以及當(dāng)該目標(biāo)二元化規(guī)則選擇做為該第一二元化規(guī)則時,該處理單元根據(jù)該第一二元化規(guī)則,確認(rèn)該目標(biāo)二元化碼字與該目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射,當(dāng)該目標(biāo)二元化規(guī)則選擇做為該第二二元化規(guī)則時,該處理單元根據(jù)該第二二元化規(guī)則,確認(rèn)該目標(biāo)二元化碼字與該目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射。
18.如權(quán)利要求17所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的處理電路,其特征在于,該設(shè)定單元在序列層、圖像組層、圖像層或者片層確定該目標(biāo)二元化規(guī)則。
19.如權(quán)利要求12所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的處理電路,進(jìn)一步包含給設(shè)定單元提供一第二二元化規(guī)則,該第二二元化規(guī)則定了多個二元化碼字,該多個二元化碼字分別應(yīng)到不同運(yùn)動部分的多個語法元素上,其中,對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度短;以及該處理單元根據(jù)該第二二元化規(guī)則,確認(rèn)目標(biāo)二元化碼字以及該目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射。
20.如權(quán)利要求19所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的處理電路,其特征在于,對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的第一二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的第一二元化碼字的碼字長度短,以及對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的第二二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的第二二元化碼字的碼字長度短。
21.如權(quán)利要求9所述的以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的處理電路,其特征在于在確認(rèn)該目標(biāo)二元化碼字與該第二目標(biāo)運(yùn)動部分的該目標(biāo)語法元素的間的映射之后, 該設(shè)定單元獲得該不同第二運(yùn)動部分的出現(xiàn)機(jī)率的統(tǒng)計特性,以及根據(jù)該統(tǒng)計特性更新該第二二元化規(guī)則。
全文摘要
本發(fā)明提供一種以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法及處理電路,其中該處理電路包含設(shè)定單元,用于提供第一二元化規(guī)則,該第一二元化規(guī)則定了多個二元化碼字,該多個二元化碼字分別應(yīng)到不同運(yùn)動部分的多個語法元素上,其中,對應(yīng)任何正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度比對應(yīng)任何非正方形幀間預(yù)測運(yùn)動部分的二元化碼字的碼字長度短;以及處理單元,根據(jù)該第一二元化規(guī)則確認(rèn)目標(biāo)二元化碼字以及該目標(biāo)運(yùn)動部分的目標(biāo)語法元素之間的映射。本發(fā)明提供的一種以樹狀運(yùn)動補(bǔ)償方式處理目標(biāo)運(yùn)動部分的方法以及處理電路,可以提高RD效能。
文檔編號H04N7/32GK102263945SQ20111009656
公開日2011年11月30日 申請日期2011年4月18日 優(yōu)先權(quán)日2010年5月26日
發(fā)明者安基程, 郭峋, 陳慶曄, 黃毓文 申請人:聯(lián)發(fā)科技(新加坡)私人有限公司