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

?

AVS解碼器環(huán)路濾波的優(yōu)化及實現(xiàn)

2013-08-13 05:06魏曉君
電視技術 2013年5期
關鍵詞:宏塊色度環(huán)路

魏曉君,張 剛

(太原理工大學通信與嵌入式系統(tǒng)實驗室,山西 太原 030024)

AVS是我國第一個自主音視頻編解碼標準,與該領域其他國際標準如MPEG-4、H.264相比,AVS解決了專利問題,其編碼效率與H.264相當,且本身具有高效率低復雜度等諸多優(yōu)點,使得AVS具有廣闊的應用前景。

基于DSP平臺實現(xiàn)的視頻編解碼器開發(fā)周期比較短,同時具有很大的靈活性,能很好地滿足目前市場實際應用和具體特性需求。TMS320DM6446是TI公司專門為多媒體領域應用而開發(fā)的高性能定點DSP[1],其內核具有2個數(shù)據(jù)通道、8個獨立的功能單元,采用超長指令集結構(VLIW),每個時鐘周期最高可并行處理8條32位指令。本文通過分析AVS環(huán)路濾波算法的特點,首先對算法的實現(xiàn)進行了結構上的調整,又對其部分代碼采用手工匯編進行優(yōu)化,在保證解碼質量的前提下,顯著地提高了解碼速度。

1 AVS解碼器介紹

AVS與H.264/AVC等其他國際主流壓縮視頻標準類似,采用基于塊的混合編碼框架,解碼器主要包括解析和解碼兩部分,其中解析部分包括熵解碼、整數(shù)反DCT變換等模塊,解碼部分主要包括幀間預測、幀內預測和環(huán)路濾波模塊,如圖1所示。

圖1 AVS解碼器模塊框圖

編解碼器反變換量化后圖像會出現(xiàn)方塊效應[2],且塊效應可能會出現(xiàn)在每個宏塊的邊界上,為了有效去除這些方塊效應,達到較高質量的圖像效果,要在重建幀之前,對碼流采用自適應環(huán)路濾波,控制解碼誤差的累加和擴散,因此處理好環(huán)路濾波對AVS解碼器的性能至關重要[3]。

2 環(huán)路濾波原理

AVS解碼器中的環(huán)路濾波以88宏塊為單位進行[4],除圖像邊界和條帶邊界不需要濾波,所有宏塊都應以8×8宏塊為單位按照光柵掃描順序依次處理,先從左到右對垂直邊界濾波,再從上到下對水平邊界濾波的順序對邊界做環(huán)路濾波。每個宏塊對亮度和色度分別進行環(huán)路濾波[5],如圖2 所示(4∶2∶0 格式)。每個8 ×8亮度塊之間都存在一個邊界強度,用Bs表示,對應位置塊的亮度邊界強度Bs和色度塊的邊界強度Bs相同,如圖2所示(4∶2∶0格式)。且邊界濾波分為垂直和水平邊界的亮度和色度濾波,由Bs值決定邊界濾波的強度,Bs可取值0,1,2,根據(jù)局部樣本值的特性,對應的邊界濾波情況分別為不濾波、標準濾波、強濾波。

圖2 宏塊中需要濾波的邊界示意圖(4∶2∶0格式)①

AVS環(huán)路濾波以8×8塊為單位進行,圖3表示邊界兩側的p塊和q塊在水平或垂直方向的6個樣本點。利用邊界附近的6個像素點對邊界進行修正,亮度最多需要修正4個樣本值,即p0,p1,q0,q1。色度最多需要修正2個樣本值,即 p0,q0。

圖3 8×8塊水平或垂直邊界樣本①

在對邊界塊進行濾波處理時,如果在DCT邊界上,正好是圖像的邊界,若不加以判斷,就會誤認為是方塊效應,這樣一來會產生新的誤差,導致圖像的質量下降,所以要先對邊界判斷。若是真實邊界,則不進行濾波處理;若是偽邊界,根據(jù)濾波強度來選擇不同的濾波方式和濾波系數(shù)進行濾波處理。因此環(huán)路濾波主要分為三部分:邊界閾值推導過程、邊界濾波強度推導過程、邊界濾波過程。

3 在DSP上的優(yōu)化分析及實現(xiàn)

由AVS視頻標準可知,在整個自適應環(huán)路濾波過程中,需要在每個像素濾波前進行是否濾波判斷,還要以大量條件判斷來選擇像素點的具體濾波過程,所以算法復雜度高,運算量很大,且濾波過程中,其對于數(shù)據(jù)的訪問也比較繁瑣,嚴重影響了代碼的執(zhí)行效率。本文就是在C代碼優(yōu)化的基礎上,在不影響圖像質量的情況下,對濾波過程在這部分代碼用手工匯編實現(xiàn),提高濾波速率,達到實時解碼的要求。

考慮到邊界濾波是對亮度和色度分別作環(huán)路濾波,濾波順序為先垂直后水平,且在DSP上進行垂直濾波和水平濾波時,對邊界樣本值的讀取和經過濾波修正后的樣本值的存儲方式差別較大,為了減少數(shù)據(jù)訪問,本文先對當前宏塊進行垂直邊界濾波,再進行下一宏塊的解碼,在下一宏塊的垂直邊界濾波之前進行當前宏塊水平邊界濾波,即采取垂直邊界和水平邊界的濾波分開進行的方式。整個宏塊在濾波完畢后再將宏塊樣本值輸出到片外存儲器,這樣就節(jié)省了一次對片外整幀數(shù)據(jù)的存儲,大大節(jié)省了環(huán)路濾波所需的時間。利用這種思想本文將DSP上的環(huán)路濾波過程分為4種模式分別進行環(huán)路濾波,即亮度垂直模式、色度垂直模式、亮度水平模式和色度水平模式。濾波流程為:先確定8×8宏塊邊界的Bs值,再判斷是亮度還是色度,最后根據(jù)這些信息選擇具體的濾波模式。寫匯編時,要考慮DSP自身的特點,使其硬件資源得到最大限度的利用,且使代碼的運行速度和尺寸處于最佳折中點。采用并行執(zhí)行的方法來減少循環(huán)內的執(zhí)行周期數(shù),充分利用2個數(shù)據(jù)通道,2個數(shù)據(jù)交叉通路,8個獨立的功能單元,通過調整指令順序填充NOP延遲間隙,提高代碼性能。

本文實現(xiàn)了I幀濾波的匯編優(yōu)化,I幀(Bs=2)濾波流程如圖 4 所示,其中 P0,P1,Q0,Q1分別為樣本值 p0,p1,q0,q1修改后的值,色度不需要對p1,q1進行修改。

圖4 I幀濾波流程圖

這里以I幀色度濾波為例,具體說明手工匯編優(yōu)化的實現(xiàn)過程。

I幀色度水平濾波模式的具體實現(xiàn)如下:

1)讀取數(shù)據(jù),因為待濾波的像素值是8位的重構數(shù)據(jù),采用C64X+特有的雙字指令LDNDW完成參考樣本的讀取,完成以上16個字節(jié)的讀取,即1次完成8個像素點的取值,只需6次便可讀取濾波一次所需要的全部像素點,充分利用A,B兩個數(shù)據(jù)通道和并行執(zhí)行的特點,同時處理8個像素點,0~3像素點主要A通道來完成,4~7像素點主要由B通道來完成。

2)濾波邊界判斷,為了同時實現(xiàn)一行8個像素點的濾波,達到像素級修正的同時,充分體現(xiàn)DSP的并行處理能力,需要對α和β進行打包處理,利于并行處理和軟件流水的實現(xiàn),便于在嵌入式系統(tǒng)進行優(yōu)化。用SUBABS4,CMPLTU4指令實現(xiàn)樣本邊界濾波判斷,且對其值用XPND4指令進行位擴展。

3)濾波具體過程的實現(xiàn),先實現(xiàn)α>>2,再對其進行打包處理,最后用ADD4,SUBABS4,CMPLTU4等指令來實現(xiàn)4個像素點的濾波過程判斷,且對其值進行位擴展,不同條件下得到的P0和Q0的值主要由雙操作指令ADD4和AVGU4實現(xiàn)。

4)利用步驟2)和步驟3)過程中所得的判斷值和AND,NOT,ADD4等指令實現(xiàn)具體像素點的P0和Q0值的修正,0~3像素點P0的實現(xiàn)過程如圖5所示,最后用STDW指令將修正后的像素值存入寄存器中即可。

圖5 0~3像素點P0實現(xiàn)過程的匯編優(yōu)化圖

I幀色度垂直濾波模式,在對數(shù)據(jù)讀取和存儲上與色度水平濾波模式是不同的,且讀出數(shù)據(jù)后,要對數(shù)據(jù)進行轉置,具體實現(xiàn)過程與色度水平濾波模式類似,這里不再詳述。

4 優(yōu)化結果及分析

使用集成開發(fā)環(huán)境CCS3.3對所寫代碼進行驗證,且用其提供的剖析工具profile性能分析工具來估計函數(shù)的性能。圖6顯示了在相同的輸入數(shù)據(jù)和相同的硬件資源配置下,C代碼和手工匯編實現(xiàn)的I幀耗時分析圖。圖中AVS_deblockuvih.asm,AVS_deblockuviv.asm,AVS_deblockyih.asm,AVS_deblockyiv.asm分別為I幀濾波的色度水平模式、色度垂直模式、亮度水平模式和亮度垂直模式的匯編程序,EdgeLoop_I_uv,EdgeLoop_I_y分別為I幀濾波色度、亮度的C程序。

圖6 I幀濾波耗時分析圖(截圖)

觀察圖6可知,在4∶2∶0模式下,用C實現(xiàn)的I幀環(huán)路濾波過程十分耗時,而通過編譯器優(yōu)化和匯編優(yōu)化后的,I幀亮度(16×16塊即4個8×8塊)和色度(8×8塊)濾波周期都明顯大幅度減少,極大地提高了運算速度,縮短了代碼執(zhí)行時間。

5 結論

本文通過分析AVS環(huán)路濾波算法,對算法的實現(xiàn)進行了結構上的調整,又對I幀環(huán)路濾波采用手工匯編,實現(xiàn)了像素級的優(yōu)化,在保證解碼質量的前提下,顯著提高了解碼速度,達到AVS解碼器在TMS320DM6446上實現(xiàn)實時解碼的要求。

[1]李方慧,王飛,何佩琨.TMS320C6000系列DSPs原理與應用[M].2版.北京:電子工業(yè)出版,2003.

[2]畢厚杰.視頻壓縮編碼標準——H.264/AVC[M].北京:人民郵電出版社,2005.

[3]楊懷省.基于DSP平臺的AVS自適應環(huán)路濾波的研究與實現(xiàn)[J].電子器件,2008,22(3):41-44.

[4]AVS工作組.GB/T20090.2—2006,信息技術先進音視頻編碼第二部分:視頻[S].2006.

[5]楊少博,李鳳亭.AVS自適應環(huán)路濾波器硬件設計與實現(xiàn)[J].電視技術,2008,32(6):21-24.

猜你喜歡
宏塊色度環(huán)路
基于運動估計與補償?shù)睦走_拼圖預測分析*
基于改進色度模型的非接觸式心率檢測與估計
幾種環(huán)路穩(wěn)定性仿真方法介紹
景德鎮(zhèn)早期青白瓷的器型與色度
如何提高蘋果的著色度
日糧成分對雞蛋色度及碳穩(wěn)定同位素比值的影響
基于KVM視頻的H.264預測模式選擇算法
單脈沖雷達導引頭角度跟蹤環(huán)路半實物仿真
莫斯科地鐵計劃于2019—2020年推出第三換乘環(huán)路
IP網絡丟包條件下的H.264高清視頻實時解碼問題分析