文獻標識碼: A
文章編號: 0258-7998(2013)08-0050-04
AVS(Audio Video coding Standard)是由中國數(shù)字音視頻編解碼技術標準工作組制定的標準,是國內第一個針對音視頻產業(yè)需求而制定的標準,。AVS-P2標準面向標清,、高清視頻編碼應用,其采用了與H.264類似的技術框架。AVS標準在獲得高編碼效率的同時降低了實現(xiàn)的復雜度[1],。
幀內預測編碼器包含編碼過程和重建過程兩個方向的碼流分支,。編碼過程包括幀內預測模式選擇、整數(shù)DCT變換,、量化,、熵編碼等過程;重建過程則將編碼過程中量化后的殘差系數(shù)進行反量化反變換,,最終得到重建像素[2],。圖1所示為幀內預測編碼器的硬件架構。編碼器在預測一個8×8像素塊時,,需要使用相鄰塊的重建像素作為參考樣本,,編碼器需要等待相鄰子宏塊完成最優(yōu)預測模式選擇、變換量化和反量化反變換后才能對當前子宏塊進行預測,,這種編碼方法需要合理設計編碼流水結構來保證編碼速度,。針對上述問題,本文提出一種幀內預測硬件結構,,使用重建像素作為參考樣本,,具有相同預測值求解算法的預測模式共用一個預測器,在進行編碼時無需等待參考樣本重建過程,,其并行處理電路結構提高了數(shù)據處理速度并且兼顧了編碼圖像的質量,。
1 幀內預測算法分析
AVS幀內預測亮度塊和色度塊均采用8×8塊,亮度塊共有5種預測模式,,色度塊有4種預測模式,,其中色度預測模式有3種與亮度預測模式算法相同。幀內預測模式如表1所示,。
參考文獻[3]提出的幀內預測電路使用原始像素作為預測塊的參考樣本,,在這一預測過程中編碼器無需等待相鄰塊完成重建過程,這種方法雖然提高了編碼的速度,,但也降低了編碼圖像的質量[4],。針對上述問題,本文設計了幀內預測的并行流水線結構,,在對8×8像素子宏塊進行幀內預測時,,像素重建過程與像素預測過程同時進行,幀內預測編碼器無需等待重建過程,,提高了編碼效率,。具體流水線設計如下文所述。
AVS標準中規(guī)定,,對一幀圖像進行編碼時是以宏塊為單位進行編碼,,宏塊內編碼則是以子宏塊編號依次進行,,亮度塊與色度塊分別編碼。在對圖3所示8×8子宏塊F進行幀內預測時,,相鄰的上邊和左邊宏塊已經完成了重建過程,,參考樣本存入寄存器中等待使用。當前預測塊F為0號子宏塊時,,幀內預測使用的參考樣本均來自相鄰宏塊的重建像素且參考樣本A,、B、C,、D,、E均可用;當前預測塊F為1號子宏塊時,,來自相鄰宏塊的參考樣本A,、B、E和來自0號子宏塊的參考樣本C可用,,其他參考樣本均不可用,;當前預測塊F為2號子宏塊時,分別來自0號和1號子宏塊的參考樣本A,、B和來自相鄰宏塊的參考樣本C,、E可用,其他參考樣本均不可用,,對于來自1號子宏塊的參考樣本,,只用到參考樣本塊B中的第一個樣本(即參考樣本r[9]),由于相鄰像素之間相似度很大,,本文使用參考樣本r[8]代替r[9],,這樣只需使用0號子宏塊的重建像素;當前預測塊F為3號子宏塊時,,來自0號,、1號和2號子宏塊的參考樣本E、A,、C和來自相鄰宏塊的參考樣本B可用,,宏塊內的依賴性最強。同樣可以得出,,色度子宏塊編碼時在宏塊中沒有依賴性,。所以在對子宏塊逐塊進行編碼時,可以在亮度子宏塊預測過程之間插入色度子宏塊的預測過程,。幀內預測器流水線設計如圖4所示,。由于1號、2號子宏塊的參考樣本均只來自0號子宏塊的重建像素,,因此可以依次對這兩個子宏塊進行預測,,再對V色度子宏塊進行預測,最后對3號子宏塊進行預測,。在對色度塊進行預測的同時亮度塊進行重建,,在流水編碼時無需等待相鄰子宏塊的重建像素,提高了工作效率,。
3 并行幀內預測電路硬件設計
幀內預測編碼器的另一個設計重點是模式預測電路的硬件設計,。參考文獻[5-6]提出了針對H.264中幀內預測的可重構硬件電路。該電路可根據預測模式的不同對運算模塊和數(shù)據通路進行重構,,從而達到對資源的最優(yōu)化利用,。其缺點是像素塊處理速度慢,不利于實現(xiàn)高清實時編碼,。參考文獻[7-8]針對預測值求解算法相同的模式設計了一個共用的預測器,,從而優(yōu)化硬件資源。本文采用第二種方法,,通過分析各預測模式之間的關系,,設計出一個模式通用的預測器,并采用8路數(shù)據并行處理,,解決了可重構硬件電路處理速度慢的問題,。
分析亮度和色度的預測模式算法,本文將幀內模式預測電路分為兩部分,,亮度塊預測模式通用電路模塊和Plane模式預測電路模塊,。
3.1 亮度預測模式電路設計
本文設計了8像素并行處理結構,即預測電路一個時鐘完成8個像素預測,,完成一個8×8子宏塊所有模式的預測并得到最優(yōu)預測模式最多需要8×5=40個時鐘,。分析模式預測算法,Vertical和Horizontal模式直接輸出參考樣本為預測樣本值,,即預測值為對應行或列的r[i]或c[i]值,,只需要將參考像素RAM中的值直接輸出;DC,、Down_Left和Down_Right模式結構中,,均有兩次(a+2×b+c+2)>>2的運算過程,其中a,、b,、c為求取預測值相對應的參考像素,將其轉化為兩個并行結構的硬件電路,,該電路只包含移位和加法器模塊,,硬件結構簡單。該亮度預測模式硬件電路如圖5所示,。
3.2 Plane預測模式電路設計
Plane預測模式是幀內預測中運算最復雜的模式[9],,圖6所示是本文設計的Plane預測模式硬件電路,。由于參數(shù)ia、ib,、ic,、ih和iv均是由已知的參考樣本經過運算得到的,因此可以在編碼流水中提前在參考像素RAM中取出相應的參考像素并計算出ia,、ib和ic的值供預測Plane模式時使用,。在Plane預測模式中使用到的乘法運算均用移位來代替,節(jié)省了硬件資源,。
為了簡化Plane模式的硬件結構,,假設A=ia+(-3)×ib+(-3)×ic+16,可以分析得出PredMatrix[x,,y]=Clip1((A+x×ib+y×ic)>>5),,其中x×ib和y×ic運算可以轉化ib和ic的移位加和運算。
4 仿真和綜合結果
本文根據高清視頻實時編碼的實際要求,,設計實現(xiàn)了AVS幀內預測編碼器的硬件電路,。該編碼器每個時鐘周期可處理8個像素,采用并行流水線結構對各個模式進行預測,。該設計使用Verilog HDL語言完成硬件的編寫,,選用Altera公司的Cyclone II 系列2C35 FPGA芯片進行了綜合和驗證,部分仿真結果如圖7所示,。其中enable_A~enable_E表示為預測塊所用參考樣本的可用性,,valid_mode表示有效模式輸出,PE0_out_reg~PE7_out_reg表示8個像素預測輸出,。從仿真圖中可以看出,,電路按照本文設計的流水線進行預測,每8個時鐘周期完成一個預測模式的預測,,預測結果正確,。本設計所占用的邏輯資源數(shù)量較少,節(jié)省了硬件資源,;且本設計提出的并行流水線結構能夠提高幀內預測電路的工作速度,,滿足了高清視頻實時編碼的要求,對AVS高清視頻編碼芯片設計具有一定的意義,。
參考文獻
[1] AVS工作組.信息技術先進音視頻編碼:視頻[M].北京:中國標準出版社,,2006.
[2] 陳靖,劉京,,曹喜信.深入理解視頻編解碼技術——基于 H.264標準及參考模型[M].北京:北京航空航天大學出版社,,2012.
[3] Zhu Xiangkui,Yin Haibin,Gao Wen,,et al.An intra prediction pipeline architecture design for AVS encoder[C].Consumer Electronics(ICCE),,2010.
[4] Wang Tu-Chih,Huang Yu-Wen,,F(xiàn)ang Hung-Chi,,et al.Performance analysis of hardware oriented algorithm modifications in H.264[C].Acoustics,,Speech,,and Signal Processing,2003.
[5] Huang Yu-Wen,,Hsieh Bing-Yu,,Chen Tung-Chien,et al. Analysis,,fast algorithm, and VLSI architecture design for H.264/AVC intra frame coder[C].IEEE Transactions on Circuit and Systems for Video Technology,,2005.
[6] 劉凌志,路奇,,戎蒙,,等.一種并行結構的H.264幀內預測器[J].上海交通大學學報,2006,,40(1):54-58.
[7] Huang Yu-Wen,,Hsieh Bing-Yu,Chen Tung-Chien,,et al. Hardware architecture design for H.264/AVC intra frame coder[C].International Symposium on Circuits and System,,2004.
[8] Kao Yu-Chien,Kuo Huang-Chih,,Lin Yin-Tzu,,et al.A high-performance VLSI architecture for intra prediction and mode decision in H.264/AVC video encoding[C].Asia Pacific Conference on Circuits and Systems,2006.
[9] 宋健,,王祖強,,秦盼.H.264視頻解碼器中幀內預測模塊的硬件設計[J].電子技術應用,2011,,37(10):53-59.