王玉清
(山西工程職業技術學院 計算機工程系,太原 030009)
AVS視頻壓縮標準是國內最新的視頻壓縮標準,特點是低碼率、高清晰度和強抗誤碼性能[1],其編碼只對預測殘差進行。由于殘差在量值上小于實際的像素值,因而熵編碼后占用的碼字也較少,有效地減少了表達一幅圖像所需的比特數,達到了壓縮的目的[2]。
AVS 8×8塊數據經過預測、變換、量化和ZIGZAG掃描后,非零系數主要集中在低頻部分,而高頻系數大部分是零;DC系數及其附近的非零系數值較大,而高頻位置上的非零系數值大部分是+1和-1[3]。提高DC直流系數編碼效率,會大大提高整個編碼器編碼效率[4]。8×8塊預測殘差仍具有很強的空間相關性,其經過整數DCT變換后,直流成分也具有很強的空間相關性。目前,AVS標準并沒有考慮AVS直流系數的相關性,而是直接對AVS直流系數進行編碼。筆者提出利用預測殘差直流系數相關性來改進編碼效率的方法,不直接對當前塊直流系數進行編碼,取其與左邊塊和上邊塊差值及本身絕對值的最小值,對其最小值對應的差值進行編碼。
AVS視頻標準采用8×8整數DCT變換,故其變換后的DC系數值較大[5]。量化與變換歸一化相結合,同時可以通過乘法和移位來實現,對于量化步長的設計,量化參數每增加8,相應的量化步長擴大1倍[6]。具體的量化公式為:

式中:|Zij|為相應的量化值;f為改善圖像視覺效果的偏移量,幀內編碼時1,幀間編碼時2;Mij為Y矩陣中對應元素的縮放系數表;TQP的值是16位的無符號數,在程序中通過查表提前得到。
AVS標準采用ZIG-ZAG掃描,游程和幅值(Run,Level)是把量化后的64個系數按照一定的掃描模式得到的序列對,幅值Level為非零系數的幅度,游程Run為該非零系數前0的個數[7]。AVS采用游程和幅值進行聯合編碼,并為了適應局部的差異性設計了19個VLC碼表[8]。
DCT整數變換本身并不能進行碼率壓縮,因為64個樣值仍然得到64個系數。只是在經過量化和ZIG-ZAG掃描后,非零系數主要集中在低頻部分,而高頻系數大部分是零;DC系數及其附近的非零系數值較大,而高頻位置上的非零系數值大部分是+1和-1。因此,提高DC直流系數編碼效率,會大大提高整個編碼器編碼效率。
8×8塊預測殘差仍具有很強的空間相關性,其經過整數DCT變換后,直流成分也具有很強的空間相關性,可以利用左邊塊和上邊塊的DCT變換域的直流系數來預測當前塊的直流系數。
假定當前塊上邊塊殘差經DCT變換后直流系數為Top0,左邊塊為Left0,當前塊為Cur0。分別計算CT=Abs(Cur0-Top0),CL=Abs(DC-Cur0-DC-Left0)和C0=Abs(Cur0),取CT、CL和C0的最小值。不直接對直流系數Cur0進行編碼,如果CT最小,將對Cur0-Top0值進行編碼;如果CL最小,將對Cur0-Left0值進行編碼;如果C0最小,將對Cur0值進行編碼。
編碼端預測流程如圖1所示,僅增加了CT、CL和C0的計算和取三者最小值計算,編碼復雜度增加很小。此算法并沒有改變編碼流程,也不需要改變AVS標準的語法和語義。

圖1 編碼端預測流程圖
解碼端預測流程如圖2所示,僅增加了CT、CL和C0的計算和取三者最小值計算,解碼復雜度增加很小。此算法并沒有改變解碼流程。
為了驗證本研究基于直流系數相關性AVS預測算法,對典型的試例 Foreman、Akiyo、Children、Bridge-far進行了一系列的測試。圖像為CIF格式(352×288);量化參數 QP分別為20,24,28,32,36,40;編碼100幀,Y∶U∶V為4∶2∶0。測試平臺為主頻1.60GHz的Pentium Dual E2140,內存為1.93 GB的PC機。表1—表4分別為4個測試序列的實驗結果。其中,bitrate為使用本文提出算法與AVS工作組官方軟件不同QP下,碼率下降的百分比。

圖2 解碼端預測流程圖

表1 Foreman序列測試結果

表2 Akiyo序列測試結果

表3 Children序列測試結果

表4 Bridge-far序列測試結果
從表中可以看出,使用筆者提出的算法,對于不同編碼序列,編碼碼率都有下降,平均下降1.09%,最好情況下降2.00%。
根據經過整數DCT變換后預測殘差的直流成分具有很強的空間相關性,利用左邊塊和上邊塊的DCT變換域的直流系數來預測當前塊的直流系數。不直接對直流系數進行編碼,取其與左邊塊和上邊塊差值及本身絕對值的最小值,對其差值進行編碼。筆者提出的算法在不影響編碼質量的前提下,編碼碼率降低1.09%。下一步,可考慮直流系數差值的特性,對熵編碼碼表進行調整,進一步降低編碼碼率。
[1]GB/T 200090.2-2006信息技術 先進音視頻編碼,第2部分:視頻[S].2006.
[2]徐士麟,喻莉,朱光喜.基于概率更新機制的自適應混合熵編碼[J].通信學報,2008,29(5):43-49.
[3]Wang Qiang,Zhao Debin,Gao Wen.Context-Based 2D-VLC Entropy Coder in AVS Video Coding Standard[J].Journal of Computer Science and Technology,2006,21(3):315-322.
[4]喻莉,徐士麟,崔春暉,等.AVS1.0中熵編碼技術的研究[J].電視技術,2005(10):8-10.
[5]劉宇,田曉華.AVS視頻標準中塊變換系數熵編碼器的優化設計[J].微電子學與計算機,2004(10):27-31,35.
[6]高文,王強,馬思偉.AVS數字音視頻編解碼標準[J].中興通訊技術,2006,12(3):6-9.
[7]Zhang Cixun,Lou Jian,Yu Lu,et al.The Technique of Pre-Scaled Integer Transform[C]∥Proc of IEEE International Symposon Circuits and Systems(ISCAS 2005),2005(1):316-319.
[8]文斌,何明華,黃敏琪.一種新的 AVS指數哥倫布碼算法[J].計算機工程.2011,37(15):218-220.