国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種面向屏幕視頻的快速幀內(nèi)編碼算法

2021-03-17 00:45江尚軍毛翔田
關(guān)鍵詞:灰度共生編碼

江尚軍,毛翔田,陸 宇

(杭州電子科技大學通信工程學院,浙江 杭州 310018)

0 引 言

屏幕內(nèi)容編碼(Screen Content Coding, SCC)[1]標準新增的幀內(nèi)塊復(fù)制模式(Intra Block Copy, IBC)[2]和調(diào)色板模式(Palette, PLT)[3]導致編碼單元(Coding Unit, CU)和預(yù)測單元 (Prediction Unit, PU)的編碼復(fù)雜度提高了5倍以上[4]。許多學者應(yīng)用屏幕內(nèi)容多銳利邊緣、多重復(fù)圖樣、多平坦區(qū)域等特性,設(shè)計了快速優(yōu)化算法。文獻[5-6]提出了copy-left,copy-above和copy-inter調(diào)色板復(fù)制模式以提高編碼效率,但這種局部預(yù)測方法具有一定的局限性。文獻[7]根據(jù)預(yù)測單元和解碼單元之間的相關(guān)性決策編碼模式來壓縮編碼時間。文獻[8]將CU分成自然內(nèi)容CU和屏幕內(nèi)容CU,對兩種類型的CU提出不同的快速算法,但分類過程大大增加了計算成本。文獻[9]通過由底向上逐像素判定CU平滑性來決策CU的提前終止或早期分割,達到了較好的效果,因此,可以通過當前編碼塊平滑屬性,提前預(yù)測當前編碼單元劃分深度的等級。文獻[10-11]分別從不同的角度對PU預(yù)測模式進行選擇,但忽略了在特定深度區(qū)間上的CU的劃分與終止??紤]到以上方案在編碼過程的局限性,本文針對屏幕內(nèi)容視頻圖像平滑性和相關(guān)性特征對編碼深度和預(yù)測模式的影響,提出一種面向屏幕視頻的快速幀內(nèi)編碼算法,包括編碼單元快速劃分算法(Fast Partition for Coding Unit, FPCU)和預(yù)測模式快速選擇算法( Fast Selection for Prediction Mode, FSPM),簡稱為SCC組合快速算法。

1 SCC組合快速算法

1.1 編碼單元快速劃分算法

SCC編碼標準的CU四叉樹劃分是將圖像劃分為許多尺寸為64×64編碼樹單元(Coding Tree Unit,CTU),每個CTU劃分為4個方形CU,進一步遞歸劃分每個CU,直到達到最小的CU尺寸8×8。一個尺寸為64×64的CTU被認為是最大的CU,深度定義為0,尺寸為32×32、16×16、8×8的CU的深度等級分別定義為1,2,3。為了減少CU深度等級的瀏覽,本文提出編碼單元快速劃分算法,主要包括基于灰度共生矩陣的快速CU劃分、基于空域相關(guān)性的深度范圍預(yù)測和基于編碼比特的提前終止模塊。

1.1.1 基于灰度共生矩陣的快速CU劃分

圖像的紋理是由空間上重復(fù)出現(xiàn)的灰度像素形成的,因而像素的灰度值之間存在空間上的相關(guān)性,為了描述這種像素的空間相關(guān)特征,Haralick等[12]在20世紀70年代初提出了灰度共生矩陣(Gray Level Co-occurrence Matrix, GLCM) 的概念,灰度共生矩陣的計算公式如下:

(1)

式中,(i,j)表示灰度共生矩陣中元素的位置,(a,b)分別表示圖像像素對在水平和豎直方向上的偏移量,(x,y)表示原圖像中像素點的位置,I(x,y)表示對應(yīng)位置像素點的灰度值。灰度共生矩陣很好地反應(yīng)了圖像的紋理復(fù)雜度情況。圖像越光滑,像素紋理變化越少,灰度共生矩陣非零取值元素接近主對角線的個數(shù)越多;反之,圖像越粗糙,紋理變化越多,灰度共生矩陣的非零取值元素遠離主對角線位置的個數(shù)越多。

考慮到灰度共生矩陣的特點和屏幕內(nèi)容視頻具有大量平坦區(qū)域的特征,基于灰度共生矩陣的快速CU劃分模塊先計算編碼單元90°和0°方向的灰度共生矩陣,Vnum和Hnum分別表示90°方向和0°方向的灰度共生矩陣非對角線元素的個數(shù),然后依據(jù)Vnum和Hnum來決定當前編碼塊是提前終止還是早期劃分。依據(jù)式(1),將0°方向和90°方向的灰度共生矩陣對應(yīng)的水平和豎直偏移量值分別設(shè)置為(1,0)和(0,1)。90°方向和0°方向的灰度共生矩陣非對角線元素個數(shù)Vnum和Hnum的計算公式分別為:

(2)

(3)

式中,M(0,1)表示豎直方向偏移量取1的90°方向灰度共生矩陣,M(1,0)表示水平方向偏移量取1的0°方向灰度共生矩陣。

編碼深度分別為0,1,2時,設(shè)置當前編碼深度Vnum和Hnum的取值區(qū)間,對CU提前終止標志位Fet或早期分割標志位Fes做出判定,判定過程如圖1所示。經(jīng)判定后,若Fet為1,CU劃分提前終止;若Fes為1,執(zhí)行早期分割。

圖1 基于灰度共生矩陣的CU判斷流程

1.1.2 基于空域相關(guān)性的深度范圍預(yù)測

圖2 空間相鄰CU位置示意圖

CU劃分時,完全按照四叉樹劃分方式從深度0遍歷到深度3進行CU劃分,效率較低,所以,基于空域相關(guān)性的深度范圍預(yù)測模塊根據(jù)視頻序列的相關(guān)性,參考相鄰已編碼CU的深度值自適應(yīng)地確定當前CU深度等級范圍,選取的相鄰位置有左、左上、上、右上,參考位置如圖2所示。

基于空域相關(guān)性的深度范圍預(yù)測模塊的參考深度定義為Dref,計算公式為:

Dref=0.4×DL+0.4×DA+0.1×DAL+0.1×DAR

(4)

式中,DL表示左方鄰CU深度,DA表示上方鄰CU深度,DAL表示左上方鄰CU深度,DAR表示右上方鄰CU深度。根據(jù)Dref的值將CU分為5個類別,每一類別的CU深度范圍均在[Dmin,Dmax]之間,Dmin和Dmax分別代表CU可劃分的最小深度和最大深度。具體深度范圍決策如下:

(1)Dref∈[0.0,0.6)時,當前編碼單元深度范圍決策為[0,1];

(2)Dref∈[0.6,1.2)時,當前編碼單元深度范圍決策為[0,2];

(3)Dref∈[1.2,1.8)時,當前編碼單元深度范圍決策為[1,2];

(4)Dref∈[1.8,2.4)時,當前編碼單元深度范圍決策為[1,3];

(5)Dref∈[2.4,3.0)時,當前編碼單元深度范圍決策為[2,3]。

1.1.3 基于編碼比特的提前終止

在基于空間相關(guān)性的深度范圍預(yù)測算法的基礎(chǔ)上,本文提出了基于編碼比特的提前終止方案,用于減少CU劃分過程中的編碼復(fù)雜度。在當前深度下CU遍歷所有預(yù)測模式后,如果CU的總編碼比特數(shù)Btotal足夠小,表明殘差很低,當前深度是最佳深度。經(jīng)統(tǒng)計,當前CU的Btotal小于等于閾值Tk時,當前深度是最佳深度,CU劃分過程提前終止。

Btotal≤Tk

(5)

式中,Tk表示決策CU提前終止的閾值,k表示當前CU的深度。為了分析位于最佳深度CU的Btotal分布,使用4個測試序列(“sc_desktop”,“sc_programming”,“sc_robot”和“Basketball_Screen”)分析Btotal的閾值。經(jīng)統(tǒng)計,在深度k為0,1,2時,閾值Tk的取值分別為35,50,27。

不同測試序列不同深度CU的Btotal在滿足式(5)時的分布情況如表1所示。表1中,PY表示當前深度是最佳深度的概率,PN表示當前深度不是最佳深度的概率。從表1中可以看出,深度為0,1和2,且Btotal滿足式(5)時,當前深度是最佳編碼深度的概率分別為92.1%,94.1%和97.3%,說明基于Btotal的提前終止過程是有效的。

表1 不同深度下當前CU的Btotal分布 單位:%

1.2 預(yù)測模式快速選擇算法

在測試模型SCC中,每個PU要依次遍歷傳統(tǒng)幀內(nèi)預(yù)測模式(Conventional Intra Prediction,CIP)、幀內(nèi)塊復(fù)制模式及調(diào)色板模式。其中,傳統(tǒng)幀內(nèi)預(yù)測模式要遍歷35種角度預(yù)測模式,幀內(nèi)塊復(fù)制模式要計算候選塊與當前塊之間的均方誤差和,耗費大量時間。為了減少PU預(yù)測時間,本文提出一種預(yù)測模式快速選擇算法。先交換PLT預(yù)測模式和IBC模式的編碼順序,然后根據(jù)已知的左側(cè)PU預(yù)測模式Mlef和上方PU預(yù)測模式Mabv,來判斷當前PU要跳過的預(yù)測模式。深度為0時,若滿足模式條件(a){Mlef,Mabv}∈CIP,跳過IBC預(yù)測模式。深度為1或2時,若滿足模式條件(a){Mlef,Mabv}∈CIP,跳過IBC預(yù)測模式;若滿足模式條件(b){Mlef,Mabv}∈IBC,則跳過CIP預(yù)測模式。

1.3 本文算法流程

SCC組合快速算法包含編碼單元快速劃分算法和預(yù)測模式快速選擇算法,兩種算法結(jié)合后的總流程如圖3所示,主要過程描述如下。

(1)輸入一個CU;

(2)獲取相鄰CU深度,根據(jù)式(4)計算Dref,確定Dmin和Dmax;

(3)通過式(1—3)計算深度為0,1,2時的Vnum和Hnum,判斷Fet及Fes的值,過程如圖1所示;

(4)若當前CU深度小于Dmin或者Fes的值為1,提前劃分CU,深度加1,轉(zhuǎn)到步驟1,否則執(zhí)行下一步;

(5)獲取左鄰PU和上鄰PU編碼模式Mlef和Mabv,根據(jù)預(yù)測模式快速選擇算法確定要跳過的預(yù)測模式;

(6)獲取Btotal,若Btotal滿足式(5)或者Fet為1時,轉(zhuǎn)至步驟8,否則執(zhí)行下一步;

(7)若當前深度小于Dmax,深度加1,轉(zhuǎn)到步驟1,否則執(zhí)行下一步;

(8)結(jié)束CU劃分。

圖3 SCC組合快速算法流程

2 實驗結(jié)果與分析

為驗證本文算法的有效性,在SCC軟件平臺SCM6.0上,分別對視頻編碼聯(lián)合協(xié)作團隊推薦的3種類型11個視頻序列進行編碼性能評估測試,視頻類型及相關(guān)參數(shù)如表2所示。視頻序列的3種類型分別是運動的圖形和文本(Text and Graphics with Motion, TGM)、混合內(nèi)容(Mixed, M)、動畫(Animation, A)。所有序列編碼幀數(shù)都為100,且編碼配置為All Intra,編碼量化參數(shù)(Quantification Parameter,QP)取22,27,32,37。

本文通過BDBR(Bj?ntegaard Delta Bit Rate)和ΔT來評價所提出方案的編碼復(fù)雜度降低性能。BDBR表示算法對編碼視頻碼率的影響,用于衡量編碼性能;ΔT表示算法的時間增量,用于衡量編碼復(fù)雜度,ΔT的絕對值越大越好,計算公式如下:

(6)

式中,toriginal和tproposed分別代表在全幀內(nèi)配置下采用原始編碼器和本文算法的平均編碼時間。

編碼單元快速劃分算法FPCU和預(yù)測模式快速選擇算法FSPM的性能如表2所示,可以看出,編碼單元快速劃分算法和預(yù)測模式快速選擇算法的時間復(fù)雜度降低分別為24.08%和11.14%,說明算法可以有效減少深度遍歷過程和模式編碼過程,縮短率失真代價值的計算時間。復(fù)雜度降低最多的是序列“sc_SlideShow”,因為該序列紋理簡單,平滑性和相關(guān)性都比較高;編碼比特損失最小的是序列“sc_robot”,因為該序列最接近相機采集視頻的動畫視頻,所包含的屏幕視頻特征較少,本算法對其影響較少。

表2 不同測試序列下FPCU和FSPM算法性能

分別采用本文提出的面向屏幕內(nèi)容視頻的快速幀內(nèi)編碼算法、文獻[9]提出的基于HEVC屏幕內(nèi)容的IBC和CU提前終止的復(fù)雜度降低算法、文獻[13]提出的基于HEVC屏幕內(nèi)容編碼的幀內(nèi)快速算法進行算法性能評估,結(jié)果如表3所示。從表3中可以看出,本文算法在總平均BDBR增加1.64%的情況下,編碼時間平均降低了32.72%。與文獻[9]相比,本文算法總平均時間優(yōu)化比文獻[9]算法低14.12%,總平均比特率BDBR優(yōu)于文獻[9]算法0.12%,且各種視頻類型的編碼結(jié)果都優(yōu)于文獻[9],說明在針對屏幕內(nèi)容視頻編碼過程中,使用灰度共生矩陣來判斷視頻內(nèi)容的平滑性,可以減少CU劃分的判決過程。對比文獻[13],根據(jù)表中TGM,M和A類型視頻序列的平均結(jié)果可知,本算法對TGM和M類型屏幕內(nèi)容視頻都具有較好的編碼效果,文獻[13]算法更有利于A類型視頻,但就總平均結(jié)果而言,本文算法具有更好的時間優(yōu)化性能。

表3 不同算法的性能對比

分別采用參考編碼模型SCM6.0、本文算法和文獻[8]提出的基于HEVC屏幕內(nèi)容分類的快速算法在不同量化參數(shù)(即22,27,32和37)下,對2個不同測試序列“sc_SlideShow”和“MissionControlClip2”進行視頻質(zhì)量評估,得到的率失真曲線如圖4所示。率失真曲線越靠近SCM6.0的率失真曲線說明算法在壓縮效率性能上的損失越小,同時視頻質(zhì)量的損失越小。從圖4可以看出,與文獻[8]的率失真曲線相比較,本文算法更接近SCM6.0的率失真曲線,表明本文算法具有較好的編碼率失真性能,在有效降低編碼器的計算復(fù)雜度的情況下,視頻編碼壓縮效率和視頻質(zhì)量的損失都比較小。

圖4 不同量化參數(shù)下測試序列的率失真曲線

3 結(jié)束語

本文通過對視頻特性的分析,提出一種面向屏幕視頻的快速幀內(nèi)編碼算法。在All Intra編碼配置下,有效降低了屏幕內(nèi)容視頻編碼的復(fù)雜度,并保證了重建視頻的質(zhì)量。屏幕內(nèi)容視頻一共有4種類型,分別為運動的圖形和文本TGM、混合內(nèi)容M、動畫A以及相機采集(Camera-Captured,CC)類型,本文只對相機采集類型之外的3種屏幕內(nèi)容視頻展開研究,如何對包括相機采集類型在內(nèi)的屏幕內(nèi)容視頻進行編碼優(yōu)化是下一步研究的重點。

猜你喜歡
灰度共生編碼
航空濾光片陣列多光譜圖像條帶灰度調(diào)整算法
HEVC對偶編碼單元劃分優(yōu)化算法
采用改進導重法的拓撲結(jié)構(gòu)灰度單元過濾技術(shù)
住院病案首頁ICD編碼質(zhì)量在DRG付費中的應(yīng)用
生活中的編碼
天津港智慧工作平臺灰度發(fā)布系統(tǒng)和流程設(shè)計
Arduino小車巡線程序的灰度閾值優(yōu)化方案
優(yōu)生共生圈培養(yǎng)模式探索
優(yōu)生共生圈培養(yǎng)模式探索
在體驗中走向共生
德兴市| 本溪市| 酉阳| 平谷区| 锦州市| 南康市| 耿马| 拉萨市| 云阳县| 巧家县| 新乡县| 呼玛县| 竹溪县| 鲁甸县| 潼关县| 道孚县| 新龙县| 延安市| 名山县| 商城县| 营口市| 通辽市| 镇巴县| 武陟县| 英超| 麦盖提县| 筠连县| 嵊州市| 松桃| 咸丰县| 阿图什市| 枝江市| 澄城县| 定州市| 老河口市| 南投县| 东明县| 钟祥市| 肥西县| 鄂托克前旗| 汉寿县|