您的当前位置:首页正文

基于FPGA的AVS视频解码帧内预测的设计和实现

来源:九壹网
■稳弦糠 i #o匹n i f ring D吲T - 【本文献信息】邹涛,杨秀芝,陈建.基于FPGA的AVs视频解码帧内预测的设计和实现[J】.电视技术,2012,36(20) 基于FPGA的AVS视频解码帧内预测的设计和实现 邹涛,杨秀芝,陈建 (福州大学福建省数字电视工程研究中心,福建福州350002) 【摘 要】根据AVS标准中帧内预测的算法,运用流水线设计方法,并合理安排缓冲存储器空间,利用FPGA实现了帧内预测系 统;然后将该设计的ModelSim仿真结果与参考软件的解码输出进行了比较,结果表明本设计能够较好地完成帧内解码算法,方 便地嵌入到整体AVS解码系统中。 【关键词】AVS;视频解码;帧内预测;现场可编程门阵列 【中图分类号】TN941.1 【文献标识码1 A Design and Implementation of Intra Prediction in AVS Video Decoding Based on FPGA Z0U Tao,YANG Xiuzhi,CHEN Jian (Digital TV Engineering Research Center,Fuzhou University,Fuzhoa 350002,China) 【Abstract】According to the intra prediction algorithm in AVS standard,the intra prediction system with pipeline design method and reasonable arrangements of cache RAM based on FPGA is designed and implemented.Then comparing ModelSim simulation results with the reference software decoder output,it shows that this design is able to complete the flame decoding algorithm,and can easily be embedded into the overall AVS decoding system. 【Key words】AVS;video decoding;intra prediction;FPGA 近年来,数字视频技术的浪潮席卷全球。从 块又划分为几个8x8的子块。AVS采用了基于8x8像素 MPEG一1/2/4,H.261/H.263,到H.264,AVC和AVS,一系列 块的帧内预测。预测时,使用与当前8x8块相邻的已解 视频编码标准应运而生。其中,AVS(Audio Video cod. 码得到的左方块、上方块、左上块、左下块和右上块中的 ing Standard)标准是我国具备自主知识产权的,包括系 相邻像素作为参考像素,计算出当前块的像素值。AVS 统、视频、音频、媒体版权管理在内的一套完整的标准体 亮度和色度帧内预测分别有5种和4种模式。相比于 系。AVS标准的第2部分“视频”已于2006年3月通过信 H.264亮度块9种预测模式和色度块4种预测模式,帧内 息产业部认证,正式成为国家标准(编号为GB/ 预测模式选择的复杂度得到降低,而对性能影响不大 ,。 T20090.2—2006) 】。AVS具有技术方案简洁、实现复杂 AVS标准中规定的帧内预测的过程如下 】: 1)根据当前块相邻的左边块和上边块的帧内预测 度低、编码效率高等特点。基于AVS标准的高清视频解 额专利费,具有明显的成本优势。 H.264和AVS等第二代视频编码标准所采用的新技术, 码器既能拥有优异的性能,同时又能规避国外标准的高 模式,推导出当前块的最可能预测模式。再将该最可能 预测模式与码流传输来的参数做比较,获得当前块的最 2)获取当前块的相邻解码块的参考样本值(图1所 帧内预测技术主要是对I帧图像进行压缩处理,是 佳预测模式。 是区别于之前标准的一个重要特征。AVS采用空域内的 示方格1~16)。若相邻块存在且已经解码,对应的参考 多方向帧内预测技术 ,可以有效地去除I帧图像的空间 样本值标记为“可用”,若相邻块不存在或尚未解码,则对 冗余,提高编码效率。 应的参考样本值标记为“不可用”。 3)当前预测模式的不同,以及可供使用的参考样本 1 AVS标准帧内预测算法 帧内预测可以概括为利用已知的像素值去预测未知 值数量的不同,使得当前块帧内预测值的算法有所不同。 其中,诸多模式的计算公式都包含形如(o+26+c+2)>>2的 3抽头低通滤波运算单元。 的像素值。AVS标准将一帧图像划分成若干个长与宽都 为16个像素的宏块。根据色度格式不同,一个16x16宏 基金项目:福建省教育厅资助省属高校科研专项(JK20O9001):福州大学科技育苗基金资助项目(826848l 投稿网址hnD://v哪w.VideoE.cn I《电视技术》第36卷第20期(总第397期)41 硼D T 2.2预测模式获取 ■鞠敖蠢 iaCt0 ^口in f rin 在5种亮度块帧内预测模式和4种色度块帧内预测 左上块 上方块 右上块 模式中,DC模式、Horizontal模式和Vertical模式是二者共 有的,其运算结构完全一致。因此,可以将预测模式获取 模块中的9种模式简化为6种模式。由于预测模式所需 的pred_mode_flag等参数在码流中是按照块的顺序依次 传输的,因此采用时序电路来设计预测模式获取模块,将 O 1 2 3 4 5 6 7 8 9I10I11I12l13114l15116 1 2 3 当前块 3 左方块 45678 15 16 /. 运行所用时间隐藏在宏块头解码的时钟周期内。这样做 也同时规避了采用组合电路设计所造成的电路关键路径 过长、时钟频率降低的问题。 2.3预测值计算 帧内预测值计算模块是整个帧内预测系统的核心部 左下块 1上19O234 _’ ‘\ 图1 8x8块的帧内预测模式 分。它从缓存RAM中取出参考样本,采用不同的预测算 法计算出当前块内64个像素点的预测值。对于大部分 模式都包含的3抽头滤波运算单元(a+2b+c+2)>>2可以 用简单的加法和移位来构造,如图3所示。 b l 2 帧内预测算法的实现 高性能的视频编解码标准和高清晰度的视频,对视 频处理硬件的实时性提出了更高的要求。而运用高效快 速的FPGA来设计视频解码的核心部分无疑是一个理 想的选择。因此本文基于FPGA来实现帧内预测系统。 2.1系统结构 系统采用以块为单位的流水线结构,整体框图如图2 所示,主要包括预测模式获取模块、预测值计算模块、重 图3 三抽头滤波基本运算单元PE 建模块以及若干缓存RAM。其中,预i贝0模式获取模块通 过码流解析中得到的参数和当前宏块在整帧图像中的位 置,确定帧内预测模式;预测值计算模块又包含块计数控 制、Plane模式计算阵列和基本运算单元阵列这3个部分, 整个模块在块计数的控制之下,根据之前确定的帧内预 以该滤波运算单元作为基本单元(Primary Element, PE),横向和纵向各采用8个PE单元,组成如图4所示的 运算阵列。参考样本依照图中编号,上方的参考样本0— 9作为横向8个PE单元的输入,左边的参考样本0~9作为 纵向8个PE单元的输入。用于寄存参考样本的寄存器 组r0 r9和c0 c9每个周期进行一次移位操作,将后续的 测模式,到参考样本值RAM的指定地址处取出相邻块的 参考样本,放人基本运算单元阵列或Plane模式计算阵列 中,计算出帧内预测值。重建模块负责将IDCT得到的残 差值和帧内预测值相加,从而还原出8x8块的样本值,并 把8x8块的最下一行和最右一行的像素存人参考样本值 RAM中,供后续块解码使用。 参考样本移入寄存器,从而使所有可能参考样本都参与 计算。 团丑五巫巨固丑丑 42《电视技术》第36卷第2o期(总第397期)I投稿网址http://www.VideoE.CFI D lGITA数L字VI视DE频O _ 对于Horizontal模式和Vertical模式,相对简单。只 要直接获取参考样本值,按横向或纵向赋值给当前块的 预测值即可。 , 将其核心部分做拆分为 predMatrix[x,),]=Clip((A+xxib+yxic+ic)>>5, =0,1,…,7 (2) 对于DC模式,当前块位于图像的不同位置,其可获 取的参考样本的数量也不同。若当前块只有上方的参考 式中,A=ia+(一3)×ib+(一4)×ic+16,为一个常数值。 输人参考样本r1~r8和c1~c8,经组合逻辑运算得到 样本rI) r9存在,则将其输入运算阵列得到outrO~outr7即 为预测值;若当前块只有左方的参考样本c0~c9存在,则 将其输人运算阵列得到outc0~outc7即为预测值;若当前 块上方和左方参考样本都存在,则固定r{)~r9不移位, 中间值A,ib,ic。当前块的预测值分为8个周期输出,每 个周期输出一行,每行的预测值以 递增,每列的预测值 以ic递增,如图5所示。输出的值再经过限幅处理后,即 得到预测值。 A=( 口+(一3)xib+(一4)xic+16) c0~c9则每个周期进行一次移位,每个周期都将outc0与 outr0~outr7分别做均值运算,得到outdc0~outdc7即为预 测值。若上方和左方参考样本都不存在,则预测值为常 数128。 对于Down_Left模式,必须满足参考样本rl~r16和 cl—c16都存在。先将rl—rlO和cl—cl0输入运算阵列,输 出outdl0一outdl7,并且每个周期对rl~r16和cl~c16都做 移位操作,每个周期得到的outdl0一outdl7即为预测值。 对于Down—Right模式,必须满足参考样本r0~r8和 cO~c8都存在。先将rO(cO),rl,cl输入PE单元计算出一 个值outm4,同时将rl~r8和c1~c8输入运算阵列,得到结 果outrO—outr6和outc0~outc6。最后,每个周期对 outc0~outc6、outm4和outrO~outr6做如下类型的移位操 作:ourc6-oute 1--- ̄{oute0,outm4,outr0,outrl,outr2,outr3, 图5 Plane模式脉冲阵列 3 性能验证 本设计采用Verilog语言进行编程,使用Mode1. outr4,outr5}-- ̄outr6,得到预测值。 对于Plane模式,其运算最为复杂。本设计采用脉冲 阵列 来实现。Plane模式中预测值可以表示为 Sim6.4a进行功能仿真,测试序列采用1 920x1 080的高 清序列Epson_1080p.yuv,将本文设计的帧内预测总体模 predMatrix[x,Y]=c2 (( +( 一3)×ib+(Y一3)× ic+16)>>5), Y=0,1,…,7 块配合之前的码流解析、反变换等模块,仿真结果如图6 (1) 所示 图6 ModelSim仿真结果(截图) 图6中sum0~sum7即为重建后的8x8块的像素值,将 该重建像素值与图7所示的由参考软件RM52J解码出的 未加环路滤波的图像对比可知,二者完全相同。 4 小结 笔者采用FPGA硬件实现AVS标准所述的帧内预测 算法,整体系统采用流水线设计方法,并合理安排缓存 投稿网址http://www.VideoE.on l《电视技术》第36卷第2o期(总第397期)43 D T RAM的空间,节约了系统资源。该帧内预测模块能很好地衔接入整体的AVS视频解码器的设计中。 011 Image Processing,2008.fS.J.]:IEEE Press,2008:2116—2119. [4】GB/T 20090.2--2006,信息技术先进音视频编码第2部分:视频In— formation technology advanced coding of audio and video—part [ ] 国产AV 获电信运营商支持【EB/OL]-[2012-01-20]・“ttp:肌ww・ 罄 … 一 … ~ 姜伟.2:videAo[VSS].解20码09器.帧内预测和环路滤波器硬件设计与卿 济 。。一  。~”……一…~…… …。 南:山东大 ,2 o .based intra c。ding【vide。coding][C]//Proceedings。f the 2004 IEEE Internati。nal Conference。n Mu1timedia and Expo.fs.1.1:IEEE Press,2004:97—10H0. 作者简介: 邹 涛(1988一)・硕士生,主研AVs视频解码及FPGA应用开发; 杨秀芝(1963一)・女-副教授,主研通信与信息系统; 陈建(1981一),女・讲师,主研信源编解码。 [3] YAN Y,KARCZEWICZ M.Improved H.264 intra c。ding based。n bi-direefional intra predicti0n。directional lransf0r『JJ,and ad印tjve 责任编辑:薛 京 收稿日期:2O12—04一l1 (上接第26页) 基于标准接口服务,相对独立,每层可以 全、事务处理等,便于业务逻辑层的实 信息模型、业务功能及体系架构的设计 被独立地替换和扩展。通过这两种技术 现;Mybatis3.1提供灵活的数据处理功能 和实现,籍此支撑有线网络运营商的三 的使用,便于BOSS系统的自身扩展和其 等,便于实现数据存储层的功能;JBPM 网融合业务(数据、语音、视频等)的运 他外部系统的集成。 4.2 J2EE标准和RCP技术 具有先进的流程管理功能,非常适合复 营。三网融合的发展对繁荣文化产业、 杂业务流程的定义及动态配置等。 提高国家信息化水平、促进工业化与信 息化融合具有重要的战略意义。 J2EE是成熟的工业标准,它为构建 4.4企业级硬件和软件环境 具有可伸缩性、灵活性、易维护性的商业 在第三方硬件方面,采用SUN硬件服 穗 系统提供了良好的保障机制。它支持高 秘 效开发、状态管理和异构环境等,是Web 壤~ 系统实现的常用标准。RCP是富客户端 它能与J2EE无缝整合,具有开发效 蠢 技术,率快、界面简洁美观和跨平台等特点。遵  务器、存储设备和思科的网络设备;在第三 参考文献:1】袁超伟,张金波,姚建波.三网融合的现 方软件方面,采用Solaris lO+Oracle 1lg+ 【Weblogic 10。以上都是企业级的硬件和软 状与发展【J1.北京邮电大学学报,2010, 33(6):1-8. 件,从而确保系统具有高可用性和可靠性。 [2]丁颐,王厚芹.中国三网融合回顾与总结 fJ1.电视技术,2011,35(10):59—62. [31 The telemanagement forum(TMF)[EB/ 循J2EE标准,同时采用RCP技术,使得 5结束语 BOSS系统可以同时支持浏览器和客户端 访问,便于BOSS系统部署和使用。 4.3 TSM编程技术和JBPM5引擎 TSM(Tapestry+Spnng+Mybatis)和 三网融合促进电信网、广播电视网、 合。在此背景下,传统的有线运营商将 面临激烈的市场竞争。为应对快速变化 的市场需求和提高自身的服务质量和水 OL].[2012-05-02].http://www.tmforum. org・ 互联网的技术和业务互相渗透、互相融 【41 REILLY J P,CREANER M J.NGOSS dis- tilled:the essential guide to next genera— tion telecoms management[M].【S.1.]:Cam— bridge University Press,2005. JBPM都是目前主流的Java开发技术。 Tapestry5.2,Spring3.1,Mybatis3.1和JB— [5]ERL T.SOA服务设计原则[M].北京:科 学出版社,2012. 收稿日期:2012—05—18 平,传统的有线网络运营商不得不加强 支撑业务发展的BOSS系统建设。本文 NGOSS的三网融合下有线BOSS系统的 PM5都是目前最新的稳定版本。Tapes. 表示层的编程;Spring3.1提供完善的安 tyr5.2具有丰富的页面标签和模板,便于 基于NGOSS的框架体系,提出基于 责任编辑:薛京 44《电视技术》第36卷第20期【总第397期)l投稿网址http://www.VideoE.cn 

因篇幅问题不能全部显示,请点此查看更多更全内容

Top