《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 業(yè)界動態(tài) > AVS解碼器中幀內預測模塊的設計與實現

AVS解碼器中幀內預測模塊的設計與實現

2009-05-27
作者:袁 鯤,張衛(wèi)寧,李曉燕,趙建全

  摘 要: 闡述了AVS視頻解碼器的總體框架,詳細分析了幀內預測的原理與算法,提出了一種可行的幀內預測解碼器的硬件設計, 給出了每一模塊的功能和結構的詳細介紹,并建立了一種高效的存儲機制。通過FPGA平臺的驗證,表明本設計完全滿足AVS標清視頻的實時解碼要求。
  關鍵詞: 音視頻編碼標準;解碼器;幀內預測; 現場可編程門陣列

?

  隨著信息技術和計算機互聯網的飛速發(fā)展,多媒體信息已成為人類獲取信息的重要載體。經數字化處理后的多媒體信息具有易加密、抗干擾、可再生等優(yōu)點,但其數據量大的特點也對信息存儲設備及通信網絡均提出了很高要求。因此,尋找更有效的編解碼技術已成為目前電子領域的主要研究問題之一。
  AVS(Audio Video Coding Standard)標準是由中國數字音視頻編解碼技術標準工作組(簡稱AVS工作組)提出、具有自主知識產權的數字音視頻編解碼技術標準。AVS標準包括系統、視頻、音頻、移動視頻等9個部分,其中《第2部分 視頻》[1](簡稱AVS視頻)于2006年3月實施, 主要面向高清晰度和高質量數字電視廣播、數字存儲媒體和其他相關應用。它具有四個主要特點[2]:(1)先進性,以H.264標準為起點,選用的技術具有國際前沿水平;(2)性能高,編碼效率比MPEG-2高2倍以上,與H.264的編碼效率相當;(3)復雜度低,算法復雜度明顯低于H.264;(4)專利授權模式簡單,費用明顯低于同類標準。
  本文就AVS解碼器的幀內預測模塊的設計與實現進行討論,介紹了AVS解碼器總體設計的架構和各功能模塊。在介紹了幀內預測原理的基礎上,詳細描述了一種適于AVS幀內預測解碼的硬件實現方法,提出了可行的流水線并行操作與存儲機制。最后給出了實驗數據與仿真波形。
1 解碼器總體設計結構
  解碼器的結構[3]由系統控制模塊(System controller)和各功能模塊(Data processing)兩大部分組成,如圖1所示。

  功能模塊之間的數據以8×8塊為單位流水處理,輸入的碼流經過變長解碼模塊VLD(Variable Length Decoder)解析后,一部分反饋給系統控制模塊,該模塊可以接收標志信號、轉換相應控制狀態(tài)、發(fā)出使能信號、并統一時序等,控制各功能模塊之間的數據傳遞與通信;一部分經過反掃描模塊IZZ(Inverse ZigZag)、反量化模塊IQ(Inverse Quantizer)和反變換模塊IT(Inverse Transformer)恢復原始殘差數據;一部分經過幀間預測(interframe prediction)或者幀內預測IPRED(Intraframe PREDiction)模塊恢復預測值,并與殘差值疊加,由環(huán)路濾波模塊LF(Loop Filter)處理, 重建的數據回寫入WB(Write Back)SDRAM,為顯示(Display)輸出使用和后續(xù)的預測提供參考。
2 幀內預測模塊的原理與設計
  幀內預測技術是一項提高I幀壓縮性能的關鍵技術。幀內預測的壓縮原理是利用圖像內部特別是圖像平滑部分相鄰像素間的相關性來降低編碼碼率,也就是通過減少空間冗余來實現壓縮的目的。
2.1 幀內預測原理
  幀內預測是利用當前塊左邊和上邊可用的相鄰塊的邊緣像素進行預測,得到當前塊的預測值,再將預測值與實際的像素值相減得到預測殘差。編碼時只對量值較小的預測殘差進行熵編碼,以減少碼流的大小,這樣就可以達到既精確又高效的壓縮目的。
  解碼時用已解碼的相鄰塊邊緣像素值和當前塊的預測模式求得當前塊的預測值,再與IT、IQ處理后恢復的殘差值疊加,即可重構原始圖像像素值。這里用作參考的像素值是沒有經過環(huán)路濾波的數據,環(huán)路濾波過程要在一幀的數據預測完成時才進行。
2.2 AVS幀內預測算法
  AVS解碼器的幀內預測都是以8×8塊為單位,分為亮度(luma)和色度(chroma)預測兩種,如圖2所示。其中,色度預測包括17個參考像素點,有4種預測模式;亮度預測包括33個參考像素點,有5種預測模式。

  亮度和色度的某些預測模式相同,綜合起來包括以下6種[1](其中,r[i]和c[i](i=0~16)分別為上邊和左邊參考像素點(r、c可表示亮度或色度),預測完成后得到一個8×8的預測樣本矩陣predMatrix):
  (1)Vertical模式
  若r[i](i=1~8)可用,則利用上邊沿像素垂直預測:
  predMatrix[x,y]=r[x+1](x,y=0~7)
  (2)Horizontal模式
  若r[i](i=1~8)可用,則利用左邊沿像素水平預測:
  predMatrix[x,y]=c[x+1](x,y=0~7)
  (3)DC預測模式
  (a)若r[i]、c[i](i=0~9)都可用,則利用當前像素值對應上邊、左邊參考像素的低通濾波值預測:
  predMatrix[x,y]=((r[x]+2×r[x+1]+r[x+2]+2)>>2+(c[y]+2×c[y+1]+c[y+2]+2)>>2)>>1(x,y=0~7);否則
  (b)若r[i](i=0~9)可用,則利用當前像素值對應上邊參考像素的低通濾波值預測:
  predMatrix[x,y]=(r[x]+2×r[x+1]+r[x+2]+2)>>2
  (x,y=0~7);否則
  (c)若c[i](i=0~9)可用,則利用當前像素值對應左邊參考像素的低通濾波值預測:
  predMatrix[x,y]=(c[y]+2×c[y+1]+c[y+2]+2)>>2
  (x,y=0~7);否則
  (d)predMatrix[x,y]=128(x,y=0~7)。
  (4)Down_left預測模式
  若r[i]、c[i](i=1~16)均可用,則利用當前像素所在的對應連線兩端的參考像素的低通濾波值預測為:
?  predMatrix[x,y]=(r[x,y+1]+2×r[x,y+2]+r[x,y+3]+2)>>2+(c[x,y+1]+2×c[x,y+2]+c[x,y+3]+2)>>2)>>1(x,y=0~7)
  (5)Down_right預測模式
  若r[i]、c[i](i=0~16)均可用,則利用當前像素所在的對應連線頂端的參考像素的低通濾波值預測:
  如果x=y,predMatrix[x,y]=(c[1]+2×r[0]+r[1]+2)>>2
  (x,y=0~7);
  如果x>y,predMatrix[x,y]=(r[x-y+1]+2×r[x-y]+r[x-y-1]+2)>>2(x,y=0~7);
  如果y>x,predMatrix[x,y]=(c[y-x+1]+2×c[y-x]+c[y-x-1]+2)>>2(x,y=0~7)。
  (6)Plane預測模式
  若r[i]、c[i](i=1~8)均可用,
?  predMatrix[x,y]=Clip1((ia+(x-3)×ib+(y-3)×ic+16)>>5)(x,y=0~7)。
  
???
2.3 幀內預測的硬件設計
  文中所設計的幀內預測總體結構如圖3所示。包括三部分:TopIICT模塊、TopIntrapred模塊和Topcombination模塊。TopIICT模塊完成經過反整數余弦變換IICT(Inverse Integer Cosine Transformer)求得殘差數據;TopIntrapred模塊完成由預測模式和相鄰參考值求得預測值;Topcombination模塊完成對上述兩組數據的重建,恢復原始數據并存儲。因為對于4:2:0采樣格式的視頻序列,一個宏塊的亮度包含四個8×8塊,而兩個色度均只包含一個8×8塊的特點,這就決定了一個宏塊的亮度和兩種色度預測是可以并行執(zhí)行的,所以如圖3的總體結構對亮度和色度均適用。其中加入FIFO的設計是為了緩沖兩路數據,并統一時序,使系統能夠并行操作。

?

2.3.1 TopIICT子模塊結構
  TopIICT模塊是幀內和幀間預測都會使用到的模塊,并且由于其復雜的運算過程使得其耗時較多,其他與之并行的模塊都要等待該模塊,以便統一時序進行下一步處理。該模塊設計的效率偏低,不僅會影響系統效率,還會造成存儲其他等待數據對空間的占用和浪費。因此,本文針對該模塊提出了如圖4所示的一種高效可行的并行流水操作的硬件設計方法。

?


  處理的數據以8×8塊為單位,TopIICT模塊在第一個時鐘以8×16 bit并行接收一組8個像素的數據,送入第一級的行處理子模塊row1,并由EN1sign控制模塊控制行處理子模塊rowN(N=2~8),對接下來7個時鐘依次接收的7組行數據流水處理。同樣,由EN2sign控制模塊控制第二級的列處理子模塊colN(N=1~8),對第一級的數據按列重分組后流水處理,最后由Rdsign控制模塊控制第二級的數據再次按行重分組,從位寬8×9 bit的輸出端口經過八個時鐘串行輸出,完成對一個8×8塊的變換。由于設計中前兩級都采用了流水例化8個子模塊,使得8組數據可以在系統中并行操作,雖然硬件開銷有所增加,但實驗表明,TopIICT模塊的運行速度顯著提高。
2.3.2 TopIntrapred子模塊結構
  前面指出,由于亮度和色度預測模式具有相容性,所以可以將兩種預測設計在一個模塊中,如圖5所示。


  設計中,Blockjudge子模塊的功能是由系統計數的BlockNum變量判斷當前塊在一幀圖像中的位置,從而決定當前塊的相鄰塊邊緣像素的可用性,為下一子模塊提供參考像素。Intrapred子模塊的功能是利用參考像素值及其可用性,結合解析出來的預測模式語法元素,共同求得當前塊的預測值。其中,六種預測模式都已并行掛起,某個塊具體解碼時由當前塊的預測模式所決定。該部分設計同樣是以8×8塊為單位,一個8×8塊的預測結束后,位寬8×8bit的輸出端口由8個時鐘依次輸出得到的8組行數據。
2.3.3 Topcombination子模塊及存儲機制
  該部分主要實現將預測值和殘差值兩組數據的疊加,重建原始數據并存儲于RAM空間。對處理完的數據存儲有兩條途徑:一是將所有數據存儲于外部RAM空間,以備幀間預測時用作參考像素,或是一幀像素存儲完成后進行環(huán)路濾波;二是將當前塊的邊緣像素存儲于片內RAM,以備當前幀其他塊幀內預測時用作參考像素,避免因頻繁從外部RAM讀取數據造成的耗時。以色度Cb的存儲機制為例介紹,如圖6所示。

  對于4:2:0采樣格式的視頻序列,一個宏塊的亮度對應一個8×8塊的色度,所以設計中開辟的片內RAM空間位寬64 bit,深度由一幀圖像以亮度宏塊為單位的長度LengthinMB決定,大小為2×LengthinMB+1。其中,地址addr0始終用來存儲每個色度塊的最右列的八個重建后的像素值。由于重建的過程以行數據為基本單位,所以要等一個塊的最后一行數據重建完才能將每一行的最后一個重建值組成一個新的64 bit數據存入addr0。由于每一個塊的最右列像素僅被其右邊的一個塊用作參考像素,且右邊塊在解碼順序上又是緊接著當前塊,所以每個預測完成塊的最右列都可以覆蓋前一塊的最右列的存儲地址,使該空間重復利用以達到節(jié)省的目的。而一幀圖像每一行最后一個塊的右邊緣不再存入addr0,而是以0x80代替,以便下一行第一個塊使用。
  地址addrN(N=2M-1,M=1~LengthinMB)用來存儲一行LengthinMB個塊的每個塊最下列八個像素,以備下一行對應塊用作參考,且在下一行對應塊最下列重建后被覆蓋。因為當前塊的最下列要等待一行的數據重建后才會被下一行的對應塊用作參考像素。
  而地址addrN(N=2M,M=1~LengthinMB)則是用來存儲一行LengthinMB個塊的每塊右下一個像素,以備下一行對應塊的右邊塊用作左上參考值。由于該像素的特殊性,對于這些數據的存儲也要特殊對待。在當前塊重建完成并存儲該像素點于對應地址之前,先將對應地址的原數據左移8位,以備下一塊用作左上參考值,再將當前塊該像素存入對應地址的低8位。當重建一幀圖像的最后一行的塊時,用0x80代替最下列和右下像素,以便下一幀第一行塊的使用。
  色度Cr的存儲機制與Cb完全相同,且二者是順序執(zhí)行的,而亮度也和色度的存儲機制基本一致,且與色度并行。只是由于亮度預測需要更多的參考點,RAM空間的深度也要相應增加。這一片內RAM存儲機制的建立,大大減少了系統與外部RAM的數據通信,縮短了系統的運行周期,有助于實時性的提高。
3 實驗結果
  按此方案設計的幀內預測解碼單元,在Xilinx的ISE環(huán)境下,用Verilog HDL硬件描述語言實現,并采用Xst工具進行綜合, Modelsim工具進行仿真,與C語言實現的AVS解碼器參考代碼 rm52j 的中間結果進行比較,結果表明二者完全一致。該設計完全滿足幀內預測解碼器的要求,仿真結果如圖7所示。

?


  根據AVS幀內預測的特點,提出了一種AVS幀內預測解碼器的硬件結構,充分利用了流水線、并行、資源復用等設計思想,并盡可能少使用存儲器資源,非常適合于ASIC設計。用Xilinx公司的Virtex4系列的XC4VSX35型FPGA,綜合出來的頻率達到133 MHz,完全滿足AVS標準清晰度(720×576,30 f/s)視頻的實時解碼要求。


參考文獻
[1] 數字音視頻編碼技術標準工作組.信息技術 先進音視頻編碼 第2部分:視頻(GB/T 200090.2-2006).中國國家標準化管理委會,2006.
[2] 生濱.AVS視頻編解碼芯片關鍵部件的體系結構研究與設計博士畢業(yè)論文.
[3] 胡倩,張珂,虞露.AVS 視頻解碼器的一種結構設計與硬件實現[J].浙江大學工學報,2006(12).
[4] 高文,黃鐵軍.信源編碼標準AVS及其在數字電視中的應用[J].電視技術,2003(11).
[5] 王爭,劉佩林.AVS幀內預測算法及其解碼器的硬件實現[J].計算機工程與應用,2006(19).

本站內容除特別聲明的原創(chuàng)文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創(chuàng)文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲永久免费观看| 日韩小视频在线观看专区| 亚洲黄色av一区| 极品少妇一区二区三区精品视频| 国产日韩欧美电影在线观看| 国产乱码精品一区二区三区忘忧草| 欧美日韩你懂的| 欧美日韩国产成人| 欧美三级韩国三级日本三斤| 欧美精品粉嫩高潮一区二区| 美女诱惑一区| 欧美不卡高清| 欧美激情一区二区三区全黄| 亚洲一区二区三区成人在线视频精品| 亚洲欧美成人网| 在线亚洲欧美| 国产精品99久久久久久人 | 亚洲激情第一页| 亚洲国产综合视频在线观看| 性欧美办公室18xxxxhd| 欧美在线二区| 亚洲欧洲日韩综合二区| 亚洲精选91| 一区二区激情小说| 亚洲欧美另类中文字幕| 性欧美18~19sex高清播放| 欧美在线三级| 久久视频国产精品免费视频在线 | 在线精品观看| 亚洲精品日韩久久| 亚洲一区二区欧美| 久久av在线看| 最新精品在线| 在线一区欧美| 性做久久久久久| 久久亚洲综合色一区二区三区| 免播放器亚洲一区| 欧美三级黄美女| 国产亚洲成av人在线观看导航| 一区二区三区自拍| 99re在线精品| 性18欧美另类| 亚洲精品少妇| 香蕉久久精品日日躁夜夜躁| 久久久精品国产免大香伊 | 黄色小说综合网站| 日韩视频免费看| 亚洲欧美日韩视频一区| 亚洲啪啪91| 亚洲永久在线| 久久综合九色综合欧美就去吻 | 久久福利影视| 一本久久a久久免费精品不卡| 午夜精品三级视频福利| 欧美ed2k| 国产精品综合av一区二区国产馆| 有码中文亚洲精品| 在线视频欧美日韩精品| 欧美自拍偷拍午夜视频| 99热精品在线观看| 欧美在线不卡视频| 欧美在线免费观看视频| 欧美激情1区| 国产日韩成人精品| 亚洲另类春色国产| 欧美在线免费视频| 亚洲一区二区黄色| 乱码第一页成人| 国产精品久久中文| 亚洲第一精品福利| 午夜精品理论片| 一片黄亚洲嫩模| 久久综合一区二区| 国产欧美二区| 99国产精品久久久久久久成人热| 久久精品国产清自在天天线| 亚洲欧美美女| 欧美人妖另类| 亚洲承认在线| 欧美在线观看网站| 亚洲欧美另类综合偷拍| 欧美人成在线视频| 在线观看视频免费一区二区三区| 亚洲男人的天堂在线| 正在播放亚洲一区| 免费亚洲视频| 国内精品久久久| 亚洲欧美一区二区在线观看| 亚洲深夜福利| 欧美精品日韩www.p站| 伊人久久亚洲美女图片| 性欧美长视频| 欧美一级黄色录像| 欧美三区不卡| 亚洲精品乱码久久久久久黑人| 亚洲高清视频一区| 久久久xxx| 国产深夜精品福利| 亚洲影院免费| 亚洲欧美国产不卡| 欧美巨乳在线观看| 亚洲国产成人91精品| 亚洲第一主播视频| 久久理论片午夜琪琪电影网| 国产日韩亚洲欧美精品| 亚洲尤物影院| 亚洲欧美日韩国产另类专区| 欧美日韩一区二区在线观看| 亚洲精品一区二| 亚洲精品一区二区三区在线观看| 免费在线观看一区二区| 精品成人国产| 亚洲成色777777在线观看影院| 久久久久国产精品一区| 国产午夜精品视频免费不卡69堂| 亚洲欧美日本日韩| 欧美在线免费观看| 国产日韩欧美精品在线| 亚洲欧美三级伦理| 久久av资源网站| 国产日产精品一区二区三区四区的观看方式 | 模特精品裸拍一区| 在线观看日韩| 亚洲精品激情| 欧美另类综合| 日韩视频在线一区二区三区| 亚洲私人影吧| 国产精品99免费看| 亚洲私人黄色宅男| 欧美在线一区二区三区| 国产亚洲一级高清| 亚洲国产高清一区| 欧美电影在线免费观看网站| 亚洲欧洲免费视频| 99这里有精品| 国产精品福利片| 羞羞色国产精品| 久久一区国产| 91久久久久久国产精品| 在线亚洲一区二区| 国产精品一区二区久久久久| 午夜精品久久久久99热蜜桃导演| 久久久久88色偷偷免费| 亚洲国产高清高潮精品美女| 一区二区不卡在线视频 午夜欧美不卡在| 欧美日韩一区在线观看视频| 亚洲一区视频在线| 久久一区视频| 亚洲精品久久久久| 亚洲女人天堂成人av在线| 国产欧美日韩在线播放| 亚洲国产91色在线| 欧美日本精品一区二区三区| 亚洲一区二区高清视频| 久久久久在线观看| 亚洲精品久久久久中文字幕欢迎你 | 亚洲一区二三| 国产一区清纯| 亚洲美女视频网| 国产精品久久97| 久久狠狠久久综合桃花| 欧美日产一区二区三区在线观看| 亚洲影音先锋| 欧美刺激性大交免费视频| 亚洲一区二区免费看| 美女精品在线观看| 亚洲少妇在线| 免费看成人av| 亚洲视频一区二区免费在线观看| 久久久久久九九九九| 亚洲精品免费在线| 欧美中文在线免费| 亚洲人人精品| 久久精品国产一区二区三区免费看| 亚洲激情视频网站| 性欧美大战久久久久久久免费观看| 1000精品久久久久久久久| 亚洲影院污污.| 亚洲电影中文字幕| 欧美在线精品一区| aa国产精品| 麻豆91精品| 亚洲欧美激情诱惑| 欧美日本精品在线| 久久精品视频va| 国产精品美女久久久免费| 亚洲国产日韩精品| 国产精品三上| 99精品视频网| 在线观看日韩专区| 久久成人免费日本黄色| 一区二区三区.www| 欧美www视频| 欧美伊人久久大香线蕉综合69| 欧美日韩一区二区三区免费| 亚洲国产高清一区二区三区| 国产嫩草一区二区三区在线观看 | 在线亚洲+欧美+日本专区| 精品成人在线视频| 久久国产精品亚洲77777|