牛麗君,宋 娜,張 剛,王園園
(太原理工大學(xué)信息工程學(xué)院,山西太原030024)
AVS(Audio Video Standard)為中國自主知識產(chǎn)權(quán)的第二代信源編碼標(biāo)準(zhǔn)。幀間預(yù)測編碼是視頻編碼的核心技術(shù),其性能優(yōu)劣直接影響編碼效率。選擇合適的幀間預(yù)測模式可以改善運(yùn)動補(bǔ)償?shù)木?,更好地?shí)現(xiàn)運(yùn)動隔離,提高圖像質(zhì)量和編碼效率。為了獲得最佳預(yù)測模式,AVS標(biāo)準(zhǔn)對所有候選模式計算代價值,并依據(jù)最小代價值選擇最佳模式。由于運(yùn)動圖像相鄰幀中的景物存在一定相關(guān)性,因此最小代價值下的宏塊模式并不一定是最佳模式。本文結(jié)合參考塊的預(yù)測模式提出了基于宏塊相關(guān)性的幀間預(yù)測模式選擇策略,實(shí)驗(yàn)表明,本文算法能提高PSNR與SSIM。
幀間預(yù)測模式對運(yùn)動矢量選擇及圖像壓縮效果有極大影響,由于活動圖像鄰近幀中的景物存在一定的相關(guān)性,因此當(dāng)前塊模式選擇與鄰近塊模式有著密切聯(lián)系。一般對于運(yùn)動平緩、處于同一運(yùn)動物體的區(qū)域選擇較大尺寸塊,對于運(yùn)動劇烈、細(xì)節(jié)較多的區(qū)域選擇較小尺寸塊。本文結(jié)合實(shí)際需求,若滿足以下條件時當(dāng)前宏塊可能處在運(yùn)動平緩或同一運(yùn)動物體區(qū)域,即具有宏塊相關(guān)性。
條件一:當(dāng)前塊的左邊塊A與上邊塊B的幀間預(yù)測模式一致。
條件二:A的運(yùn)動矢量MVA_X、MVA_Y與B的運(yùn)動矢量MVB_X、MVB_Y方向近似(即在同一象限)。
不同碼流宏塊相關(guān)性的統(tǒng)計結(jié)果如表1所示。
AVS幀間預(yù)測模式采用了16×16、16×8、8×16和8×8四種塊尺寸分割模式。模式選擇時,首先判斷當(dāng)前塊是否滿足skip條件,若滿足則結(jié)束循環(huán)。其次,將16×16和8×8預(yù)測模式作為候選模式對當(dāng)前塊進(jìn)行預(yù)測,并計算其率失真代價值,若16×16塊的代價值小于8×8塊的代價值,則選擇16×16塊做為最佳預(yù)測模式,并退出幀間預(yù)測模式的循環(huán);否則繼續(xù)預(yù)測16×8、8×16兩種模式,選擇代價值最小的模式為最佳預(yù)測模式。流程如圖1所示,其中cost_16×16、cost_8×8分別為模式16×16、8×8的率失真代價值。
表1 宏塊相關(guān)性的概率
圖1 原有AVS幀間模式選擇流程
選擇不同尺寸塊的幀間預(yù)測模式,目的是為了更好地刻畫物體運(yùn)動細(xì)節(jié),提高運(yùn)動搜索的準(zhǔn)確性。若使當(dāng)前塊的預(yù)測模式在率失真代價值差別不太大的前提下選擇與相鄰塊相同的模式,則會使圖像的塊尺寸分布更均勻,更能準(zhǔn)確地表達(dá)物體運(yùn)動狀態(tài)。本文在大量實(shí)驗(yàn)基礎(chǔ)上提出用于權(quán)衡代價值與相鄰塊預(yù)測模式的閾值κ,具體過程如下:
根據(jù)宏塊相關(guān)性調(diào)整代價值Cost=D+λ×R中λ的值從而調(diào)節(jié)Cost的值,即當(dāng)左邊塊A與上邊塊B的預(yù)測模式相同則對當(dāng)前塊代價值中的λ乘以系數(shù)κ(κ=3.5為實(shí)驗(yàn)所得經(jīng)驗(yàn)值),否則代價值不變。經(jīng)過實(shí)驗(yàn)分析發(fā)現(xiàn)視頻信噪比PSNR略有下降,原因在于調(diào)整λ的同時提高了碼率R在Cost中的權(quán)重,間接降低失真度D的權(quán)重,因此所選模式不是最佳模式。
為了不影響D與R在原有Cost中的權(quán)重,將公式調(diào)整為Cost=D+λ×R-κ,κ=(D+λ×R)×x%。該方法雖然保證了D與R在原有Cost中的權(quán)重不變,但是由于κ=(D+λ×R)×x%不是自適應(yīng)的,對不同碼流x的選擇不同,此算法亦不可行。
為使所選閾值適合所有碼流將其改為自適應(yīng)閾值,κ與當(dāng)前塊各模式最小代價值cost_min以及QP有關(guān)。最終選擇
基于宏塊相關(guān)性幀間預(yù)測模式選擇流程見圖2。
圖2 基于宏塊相關(guān)性AVS幀間預(yù)測模式選擇流程
具體流程如下所述:
1)首先,判斷當(dāng)前塊是否符合skip模式的判決條件,若是則結(jié)束預(yù)測;否則轉(zhuǎn)2)。
2)計算16×16、16×8、8×16和8×8各預(yù)測模式代價值,最終得出最小代價值cost_min。
3)判斷代價值最小的預(yù)測模式是否與上邊塊A的預(yù)測模式相同,若相同,當(dāng)前塊最佳預(yù)測模式為代價值最小的模式;否則轉(zhuǎn)4)。
4)判斷代價值最小的預(yù)測模式是否與左邊塊B的預(yù)測模式相同,若相同,當(dāng)前塊最佳預(yù)測模式為代價值最小的模式;否則轉(zhuǎn)5)。
5)判斷與A相同的預(yù)測模式的代價值是否小于閾值κ,若小于,則該模式為當(dāng)前塊最佳預(yù)測模式;否則轉(zhuǎn)6)。
6)判斷與B相同的預(yù)測模式的代價值是否小于閾值κ,若小于,則該模式為當(dāng)前塊最佳預(yù)測模式;否則轉(zhuǎn)7)。
7)仍然選擇代價值最小的預(yù)測模式為最佳預(yù)測模式。
為了驗(yàn)證算法的合理性與可行性,對不同運(yùn)動特點(diǎn)的測試序列進(jìn)行了編碼實(shí)驗(yàn),其中包含QCIF格式(176×144)、CIF格式(352×288)和D1格式(704×576)。算法在QP=36的條件下測試,從圖像的峰值信噪比(PSNR)、碼率、結(jié)構(gòu)相似度(SSIM)、幀率4個方面考察了實(shí)驗(yàn)結(jié)果,并與AVS官方開源代碼進(jìn)行比較,結(jié)果見表2。
表2 實(shí)驗(yàn)結(jié)果對比
表2中PSNR的數(shù)據(jù)是優(yōu)化后與優(yōu)化前的差值;Δ碼率、ΔSSIM、ΔFPS均為變化率=(優(yōu)化后-優(yōu)化前)/優(yōu)化前×100%。“-”表示降低、“+”表示提高。
結(jié)果表明:與原有算法相比,本文算法在PSNR上平均提高了0.29 dB,SSIM平均提高了0.522%,碼率平均降低了0.186%。該算法增加了一定的條件判斷,使幀率有所降低,平均降低了7.68%。
本文提出基于宏塊相關(guān)性的幀間預(yù)測模式選擇算法,其特點(diǎn)是結(jié)合相鄰宏塊的預(yù)測模式選擇當(dāng)前宏塊的預(yù)測模式,可以更好地符合人眼的視覺效應(yīng)。本算法創(chuàng)新點(diǎn)在于判斷宏塊模式時,不只單純地計算代價值而是結(jié)合宏塊間的相關(guān)性,充分利用相鄰宏塊的預(yù)測模式,使當(dāng)前塊的預(yù)測模式判斷更加準(zhǔn)確、合理。
[1]彭琛,耿劍鋒.基于自適應(yīng)門限的快速AVS幀內(nèi)預(yù)測算法[J].計算機(jī)工程與設(shè)計,2009,30(18):4235-4238.
[2]陳云善,高慧斌.結(jié)構(gòu)相似度在AVS幀間模式選擇中的應(yīng)用[J].光電子·激光,2011,22(3):435-439.
[3]俞力克,代鋒,張勇東,等.基于紋理和亮度感知特性的率失真優(yōu)化策略[J].中國圖象圖形學(xué)報,2012,17(1):54-61.
[4] BHAT A,RICHARDSON I,KANNANGAR S.A new perceptual quality metric for compressed video[C]//Proc.ICASSP 2009.[S.l.]:IEEE Press,2009:933-936.
[5] LUO Y,F(xiàn)U Y.Fast H.264 inter-predictionmode decision based onmacroblock inner complexity[C]//Proc.ISKE 2008.[S.l.]:IEEE Press,2008:50-54.
[6]楊齊,李子印.一種改進(jìn)的UMHexagonS運(yùn)動估計算法[J].電視技術(shù),2012,36(5):15-17.