一種3d-hevc幀間編碼合并模式快速決策方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及視頻編碼技術(shù)領(lǐng)域,尤其是涉及一種基于高效視頻編碼標(biāo)準(zhǔn)HEVC的 3D視頻編碼標(biāo)準(zhǔn)3D-HEVC中的幀間編碼合并模式快速決策方法。
【背景技術(shù)】
[0002] 高效視頻編碼標(biāo)準(zhǔn)(HEVC)是由國際標(biāo)準(zhǔn)組織/國際電工委員會(ISO/IEC)移動 圖像專家組(MPEG)和國際電信聯(lián)盟遠(yuǎn)程通信標(biāo)準(zhǔn)化組織(ITU-T)視頻編碼專家組(VCEG) 共同建立的聯(lián)合視頻編碼工作組(JCT-VC)制定的新一代視頻編碼標(biāo)準(zhǔn),它在ISO/IEC中的 正式名稱是MPEG-H標(biāo)準(zhǔn)的第二部分,在ITU-T中的正式名稱是H. 265。隨著HEVC的不斷 完善和發(fā)展,MPEG和VCEG于2012年成立了 3D視頻編碼聯(lián)合工作組(JCT-3V),針對HEVC 的3D視頻編碼擴(kuò)展展開研宄,旨在制定基于HEVC的3D視頻編碼標(biāo)準(zhǔn)(3D-HEVC)。目前, 3D-HEVC已經(jīng)經(jīng)過了 10次JCT-3V會議的討論、研宄和改進(jìn),各項技術(shù)日趨成熟。3D-HEVC 包含了HEVC的關(guān)鍵技術(shù),并針對3D視頻的特點,在此基礎(chǔ)上增加了新的編碼工具,提高了 3D視頻的編碼效率。
[0003] 在3D-HEVC中,3D視頻采用多視點紋理視頻加深度的形式表示,其包含的全部紋 理圖和深度圖按照處理單元的順序依次進(jìn)行編碼。每個處理單元由同一時刻、不同視點的 幾組紋理圖和深度圖組成,如圖1所示。在一個處理單元中,首先對獨立視點的紋理圖和深 度圖編碼。該視點采用獨立編碼的方式,通過ffiVC編碼器進(jìn)行編碼,不依賴于其他視點的 信息。然后,對非獨立視點的紋理圖和深度圖編碼。該視點在編碼時參考已編碼的獨立視 點的信息來預(yù)測當(dāng)前視點的信息,減少了視點間冗余,保證了編碼效率。完成上述過程后, 當(dāng)前處理單元編碼完成。對于非獨立視點的紋理圖,其內(nèi)部的每個編碼單元(CU)在編碼時 需要依次進(jìn)行幀間編碼和幀內(nèi)編碼,然后基于率失真模型選擇率失真代價最小的編碼模式 作為當(dāng)前⑶的最佳編碼模式。其中,率失真代價通過J=D+X*R計算得到,D表示原始 圖像塊和重構(gòu)圖像塊的差值平方和,A表示拉格朗日乘子,R表示當(dāng)前編碼模式下所需的 總編碼比特數(shù),包括編碼模式、殘差系數(shù)等信息。對于幀間編碼來說,為了靈活地匹配圖像 內(nèi)容,得到最佳編碼效果,其共包含8種基于CU的預(yù)測單元(PU)劃分模式,劃分大小分別 為:2NX2N,2NXN,NX2N,NXN,2NXnU,2NXnD,nLX2N和nRX2N,如圖2所示。當(dāng)進(jìn)行幀 間編碼時,首先需要在2NX2N劃分模式下檢查合并模式、合并-跳過模式和幀間預(yù)測模式, 然后在剩余的7種基于CU的PU劃分模式(其中NxN模式僅對尺寸為8X8的CU有效)下 依次檢查幀間預(yù)測模式和合并模式,至多需要檢查17種編碼模式。對于幀內(nèi)編碼來說,其 包含2NX2N和NXN兩種基于⑶的PU劃分模式。當(dāng)進(jìn)行幀內(nèi)編碼時,需要在這2種PU劃 分模式下檢查幀內(nèi)預(yù)測模式。此外,如果滿足PCM模式允許的CU尺寸,還需檢查PCM模式。 因此,當(dāng)對非獨立視點的紋理圖進(jìn)行編碼時,每個CU至多需要檢查20種編碼模式才能得到 最佳編碼模式,編碼復(fù)雜度極高。而在非獨立視點的實際編碼過程中,平均每幀紋理圖中有 高達(dá)94. 0%的⑶選擇合并模式作為最佳編碼模式。因此,如何快速地判定合并模式對于降 低非獨立視點紋理圖的編碼復(fù)雜度至關(guān)重要。
[0004]目前,3D-HEVC采用了一種基于視點方向參考塊的合并模式快速判定方法。該方 法利用視點方向參考塊的最佳編碼模式預(yù)測當(dāng)前CU的編碼模式。當(dāng)當(dāng)前CU在視點方向的 對應(yīng)塊及其相鄰塊都選擇合并模式作為最佳編碼模式,且在2NX2N劃分模式下當(dāng)前CU采 用合并-跳過模式編碼得到的率失真代價優(yōu)于采用合并模式編碼得到的率失真代價時,當(dāng) 前CU在所有PU劃分模式下只檢查合并模式,跳過其他編碼模式。該方法能夠在一定程度 上降低B幀的編碼復(fù)雜度,但由于沒有充分利用視點間的冗余信息,只能覆蓋每幀圖像中 的小部分CU,導(dǎo)致大部分選擇合并模式作為最佳編碼模式的CU仍需檢查全部編碼模式后 才能得到最佳編碼模式,編碼效率仍然有待提高。對于P幀,由于其視點方向的參考幀為I 幀,采用幀內(nèi)預(yù)測模式進(jìn)行編碼,因此紋理圖中所有采用合并模式作為最佳編碼模式的CU 都不滿足合并模式快速判定條件,該方法失效,P幀的編碼復(fù)雜度沒有得到改善。
[0005] 本發(fā)明基于3D-HEVC,提出一種基于視點間編碼模式相關(guān)性和⑶劃分層次間編碼 模式相關(guān)性的幀間編碼合并模式快速決策方法,在保證編碼質(zhì)量的前提下提高選擇合并模 式作為最佳編碼模式的CU的預(yù)判率,有效地降低編碼復(fù)雜度。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明所要解決的技術(shù)問題是針對3D視頻非獨立視點紋理圖的圖像幀編碼復(fù)雜 度高的問題,提供一種由視點間編碼模式的相關(guān)性和CU劃分層次間編碼模式的相關(guān)性來 快速判定合并模式的方法,在保證編碼質(zhì)量的情況下有效地降低編碼復(fù)雜度。
[0007] 本發(fā)明解決上述技術(shù)問題采用的技術(shù)方案為:一種3D-HEVC幀間編碼合并模式快 速決策方法,針對3D視頻非獨立視點紋理圖設(shè)計快速算法。本發(fā)明的技術(shù)方案流程如圖3 所示。定義Jskip (CU表示當(dāng)前CU采用合并-跳過模式編碼得到的率失真代價,JmOTge(CU 表示當(dāng)前CU采用合并模式編碼得到的率失真代價。本發(fā)明的方法包含如下步驟:
[0008] 1)從非獨立視點的紋理圖中提取需要編碼的⑶。
[0009] 2)當(dāng)前⑶在2NX2N劃分模式下檢查合并模式和合并-跳過模式。
[0010] 3)判斷當(dāng)前⑶所在幀是P幀還是B幀。
[0011] 4)通過上一步判斷,如果得到的結(jié)果是P幀,判斷當(dāng)前⑶的劃分層次是否為3 ;
[0012] 如果當(dāng)前CU的劃分層次為3,即當(dāng)前CU的大小為8X8時,判斷是否同時滿足條件 a和條件b:
[0013] 條件a.上一劃分層次的⑶采用合并模式作為最佳編碼模式。
[0014]條件b?在2NX2N劃分模式下,Jskip (CUcur)<Jmerge (CUcJ。
[0015]如果條件a和條件b同時成立,則當(dāng)前CU在2NXN,NX2N,NXN,2NXnU,2NXnD, nLX2N和nRX2N劃分模式下只檢查合并模式,跳過其他編碼模式;否則,當(dāng)前CU檢查所有 編碼模式。
[0016] 如果當(dāng)前⑶的劃分層次為0?2,即當(dāng)前⑶的大小為64X64、32X32或16X16 時,檢查所有編碼模式。
[0017] 5)通過步驟3的判斷,如果得到的結(jié)果是B幀,通過由相鄰塊得到的視差矢量 (DoNBDV)確定當(dāng)前CU在視點方向的5個參考塊,包括當(dāng)前CU在視點方向的對應(yīng)塊及其4 個相鄰塊。判斷當(dāng)前CU是否同時滿足條件c和條件d:
[0018] 條件c.視點方向參考幀中的任意一個參考塊采用合并模式作為最佳編碼模式。
[0019] 條件d?在 2NX2N劃分模式下,Jskip (CUcur) <Jmerge (CUcJ。
[0020] 如果條件c和條件d同時成立,則當(dāng)前CU在2NXN,NX2N,NXN,2NXnU,2NXnD, nLX2N和nRX2N劃分模式下只檢查合并模式,跳過其他編碼模式;否則,當(dāng)前CU檢查所有 編碼模式。
[0021] 與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點在于:傳統(tǒng)的合并模式快速判定方法基于視點方 向參考塊的最佳編碼模式判定當(dāng)前CU的編碼模式,只有當(dāng)5個參考塊同時采用合并模式作 為最佳編碼模式時,才能判定當(dāng)前CU的最佳編碼模式為合并模式,沒有充分利用視點間的 冗余信息;對于P幀,不能通過視點方向參考塊判定出最佳編碼模式為合并模式的CU,方法 失效。本發(fā)明充分利用CU編碼模式的視點間相關(guān)性和劃分層次間相關(guān)性來預(yù)判采用合并 模式作為最佳編碼模式的CU。對于B幀,采用當(dāng)前CU在視點方向參考幀中的對應(yīng)塊及其相 鄰塊的最佳編碼模式判定最佳編碼模式為合并模式的CU;對于P幀,采用位于上一劃分層 次的CU的最佳編碼模式判定當(dāng)前劃分層次下最佳編碼模式為合并模式的CU。該方法可以 在保持編碼質(zhì)量的同時,降低非獨立視點紋理圖的編碼復(fù)雜度,提高編碼速度。
[0022] 實驗結(jié)果表明,本發(fā)明的方法與3D-HEVC中采用的合并模式快速判定方法相比, 能夠在碼流只有少許增加,編碼質(zhì)量基本不降低的情況下,節(jié)省平均20. 4%的非獨立視點 紋理圖編碼時間。
【附圖說明】
[0023] 圖1是3D視頻處理單元編碼結(jié)構(gòu)示意圖;
[0024] 圖2是基于⑶的PU劃分模式示意圖;
[0025] 圖3是本發(fā)明方法的流程圖;
[0026] 圖4是⑶劃分分層結(jié)構(gòu)不意圖;
[0027] 圖5是當(dāng)前CU在視點方向參考幀中的參考塊示意圖。
【具體實施方式】
[0028] 以下結(jié)合附圖對本發(fā)明作進(jìn)一步詳細(xì)闡述。
[0029] 本發(fā)明針對3D視頻非獨立視點紋理圖的CU設(shè)計幀間編碼合并模式快速決策方 法。在實際的使用中,編碼器將調(diào)用本發(fā)明中的方法來完成具體的編碼工作。圖3為本發(fā) 明方法的流程圖。定義表示當(dāng)前CU采用合并-跳過模式編碼得到的率失真代 價,表示當(dāng)前CU采用合并模式編碼得到的率失真代價。本發(fā)明的方法步驟如 下:
[0030] 第一步:根據(jù)編碼器的配置文件讀入視頻序列,通過配置文件中的參數(shù)信息配置 編碼器。
[0031] 第二步:從非獨立視點的紋理圖中按順序提取出需要編碼的CU。
[0032] 第三步:當(dāng)前CU在2NX2N劃分模式下檢查合并模式和合并-跳過模式。
[0033] 第四步:判斷當(dāng)前⑶所在幀是P幀還是B幀。
[0034] 第五步:通過上一步判斷,如果得到的結(jié)果是P幀,判斷當(dāng)前CU的劃分層次是否為 3