EDN China > 设计实例 > EDA工具与服务 > IP核 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

(多图) H.264视频编码变换量化核的硬件设计

2012年01月19日 ?? 收藏0
随着数字化视频技术在视频电话、视频会议、DVD以及高清晰度数字电视等方面的应用,视频压缩标准也随之不断发展。ITU-T制定的H.26x系列和ISO/IEC制定的MPEG-x系列,是视频领域中两大独立的主流视频压缩标准。2003年,这些组织又联合推出新的视频压缩标准H.264/MPEG-4-10AVC,简称H.264/AVC。H.264/AVC采用一系列新的压缩方法[1],可获得更好的压缩效果,其压缩率达到以往标准的1.5~2倍[2]。因此,基于这一标准的相关研究和硬件实现具有重要的意义。视频压缩硬件实现的关键是编解码模块,其中尤以编码模块最为核心。本文主要研究编码模块中的4×4整数变换量化核,提出硬件实现的优化方法,并采用VerilogHDL语言进行硬件设计和综合。

1 4×4整数变换量化核的原理

在以前的视频编码标准如MPEG-2和H.263中,对于预测的残差数据都是采用8×8离散余弦变换(DCT)[1]作为变换的基本运算操作;而在H.264/AVC编码标准中,则采用类似DCT变换形式的基于4×4像素块的整数变换。由于变换块的尺寸缩小,运动物体的划分更精确,而且运动物体边缘处的衔接误差大为减小。

对于整数变换方式,4×4像素块的变换公式[3]为:

4×4像素块的变换公式

式中,(CXCT)是二维变换核,Ef是缩放因子矩阵,符号表示CXCT矩阵里的每个元素和Ef矩阵中相同位置的元素相乘,a=1/2,b=。为了更有效地压缩数据,需要利用量化的方法对变换后的数据进行有损压缩。同时,由于整数变换需要利用矩阵行向量的归一化因子进行系数缩放处理,为降低变换的运算量,在H.264/AVC标准中将变换的系数缩放并进行量化运算处理,避免了复杂的实数运算和除法运算,更有利于硬件的实现。

对于量化方式,正向量化运算可由如下公式[3]实现:

正向量化运算

式中,Zij为量化后的系数;Wij为变换矩阵W=CXCT中的元素;MF=·2q,PF称为缩放系数,根据元素在阵列块中的不同位置,其取值如表1所示,Qstep为量化步长,由0至51共52个量化参数QP决定,QP增加1,Qstep增加12.5%;q=15+QP/6,QP/6取整数;对于帧内宏块f取2q/3,帧间宏块f取2q/6。需要指出的是,MF的值可根据PF和QP的取值经简单计算得到,并可形成表格,通过查表方式便可实现硬件运算,并有效地提高了运算速度。

元素在阵列块中的不同位置

4×4整数变换量化核的原理

2 4×4整数变换量化核的优化设计

为进一步提高硬件运算速度,减少硬件开销,设计中采用了如下优化方法:

(1)在求取变换阵W=CXCT时,根据变换的对称性,将X的列变换(矩阵左乘)与行变换(矩阵右乘)分开实现,把二维变换分割为两次一维变换,并采用快速堞形算法[4]来实现。一维变换的快速算法实现如图1所示,其中的列变换可用如下算式表示:

列变换


上一页12下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

整数变换? VerilogHDL? AVC?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈