0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于H.264实现最优重叠块匹配加权窗的系数设计

电子设计 来源:清华大学学报(自然科学版 作者:汪志兵;王文生 2021-03-28 12:43 次阅读

作者:汪志兵;王文生;路羊;崔慧娟;唐昆

进一步提高视频压缩效率,将重叠块运动预测补偿与H.264视频编码框架中的可变大小块运动预测相结合,根据不同块的编码模式,自适应调整重叠块运动补偿的加权系数。实验结果表明,所提出的基于编码模式的自适应重叠块运动补偿对于较复杂的序列,在较高目标码率下,最大编码增益可达0.21 dB,显著提高了H.264的编码效率。

随着网络和多媒体技术的发展,越来越多的数字视频业务不断涌现。H.264标准正是为适应各种业务增长对于运动图像压缩率的更高要求而制定的。在H.264中,引入了可变大小的块运动预测、多帧预测、1/4像素插值等技术,以进一步提高运动预测的精度,提高了视频压缩效率。

高压缩效率下,基于块运动预测和补偿(block motion compensation,BMC)的视频压缩算法会产生块效应,严重影响了重建视频的主观质量。在H.264中,在运动预测/补偿环路中引入去除块效应滤波器以降低块效应的影响。另一方面,文证明了重叠块运动补偿(overlapped blockmotion compensation,OBMC)也是降低块效应、提高预测精度的一种有效手段,并研究了最优重叠块匹配加权窗的系数设计方法。但以上算法尚未在重叠块运动补偿中有效利用H.264现有编码框架中的多种预测模式,在H.264框架中引入重叠块运动补偿,可以进一步提高其编码效率。

本文提出了一种基于编码模式的自适应重叠块运动补偿算法。该算法根据周围已编码块的编码模式,自适应选择加权系数提高当前编码块的运动预测精度。实验结果表明,本算法在高码率时,最大编码增益可达0.21 dB,提高了H.264的编码效率。

1 基于编码模式的自适应重叠块运动补偿

文提出重叠块运动补偿提高了预测精度和编码效率,并均衡了失真分布。在OBMC中,对于当前编码块,可以拥有多个备选运动矢量,包括其自身的运动矢量和周围已编码块的运动矢量。通过引入一组加权系数,对每个候选的运动预测块加权得到最终的运动预测。

考虑到H.264中最基本的编码单位是44,为了描述方便,本算法中的OBMC选择的块大小为44。在实际实现中,为了提高运算速度,可以针对不同的编码模式采取相应的OBMC块大小。对于当前帧内每个块,如图1所示,其备选运动矢量集由其自身的运动矢量和周围块的运动矢量组成。令Bc表示当前编码块,Bi(i=1,2,3,4)表示其相邻块,相应的运动矢量为vc、vi。

如图2所示,假设p表示当前编码块内像素的坐标,表示该像素采用OBMC得到的运动预测值,则有

其中,fn-1(p)表示参考帧中位置p处的像素值,而ωc(p)、ωi(p),1≤i≤4分别表示OBMC的加权系数,且应满足以下约束

在对Bc块进行编码时,B2和B4块的运动矢量有可能还未进行编码(当B2、B4块与Bc块不在同一个宏块中时)。此时为了保证编、解码的同步,约定B2和B4的运动矢量设为vc。

j基于H.264实现最优重叠块匹配加权窗的系数设计

由于块Bi内不同位置p的加权系数是不均匀的,它们的取值构成加权矩阵Wi。Wi的设置在很大程度上影响了OBMC的编码效率。文给出了若干Wi的选取方法,然而,它针对的是运动预测块的划分为固定的情况。

由于H.264中采取了可变大小块运动预测,从定性上来看,划分较小的运动预测块所对应的运动矢量一般来说更加精确,也更能够反映相邻块的运动趋势。基于该假设,属于较小划分的块所对应的运动矢量,在OBMC中应被赋予更大的权重,以进一步提高OBMC的运动预测精度,提高编码效率。

根据这一推论,本算法采用了一种基于编码模式的自适应OBMC算法。对于当前编码块Bc的每个邻近块Bi,定义一个加权矩阵集合si,根据Bc和Bi的编码模式,选取合适的加权矩阵Wi∈Si。也就是说,加权矩阵的选取策略取决于2个块各自对应的编码模式。例如,假设相邻块Bl对应的运动预测块大小为88,当Bc的预测块大小为1616,相应于v1的加权系数矩阵为W161,当Bc的预测块大小为44时,相应于v1的加权系数矩阵为W41。加权矩阵的选择策略应该保证对于加权矩阵中每个位置(m,n)的系数,都有。在实际实现中,可以采用查找表来存储选择策略。同时,加权矩阵集合和相应的选择策略可以通过对若干测试序列进行训练而获得。

在采用OBMC后,相应运动搜索的度量准则应进行相应的修正。在本文中,为了降低实现复杂度,对运动矢量的搜索不采取迭代的方法。此时,在进行运动搜索时,当前块选取的运动矢量不仅决定了其自身的运动预测值,也会影响到其右边及下边块的运动预测值(左边及上边块的运动矢量已经确定,不再进行考虑)。为了反映这种影响,将运动搜索的准则重新定义为

其中:第1项是当前块的预测误差的绝对误差和;第2、3项反映了对右边和下边块的预测误差影响;第4项中bv为对运动矢量的编码所需的速率。

2 实验结果

本实验采用H.264参考代码JMl0.1作为仿真平台,给出了各种CIF(common intermedia format)和QCIF(quarter common intermedia format)测试序列的测试结果。在本实验中,编码器设置为:率失真打开,参考帧数为1,可选的编码模式为7,采取内容自适应变长熵编码编码,运动搜索范围为1616,每个帧组包括1个I帧和49个P帧,所有帧均采用相同的量化参数

表1给出了各测试序列的QP设置分别为20、24、28、32时,峰值信噪比(peek signal noise ratio,PSNR)和码率的对比。按照文提出的PSNR和码率的插值算法,表2给出了对于不同测试序列本算法和标准的H.264压缩效率的对比。从这些结果可以看出:采用OBMC的编码增益随着编码速率的增加而提高。在高码率时,最高编码效率可提高0.21 dB。当编码序列的运动比较复杂时,如Coastguard和Tempete序列,编码增益也比较明显。这种现象也符合上述对OBMC优越性的分析。

表3给出了对Foreman序列进行QP=24编码时,P帧各部分信息所占用比特数的对比。可以看到,采用OBMC算法明显降低了编码运动矢量信息和亮度残差信息的速率。为了简洁起见,没有对色度信号的运动补偿采用重叠块模式,因此,表示色度残差信号所需的码率与原算法相当。

3 结 论

为了将OBMC与标准中的可变块大小运动补偿结合起来,提出了根据相邻块编码模式选择OBMC加权矩阵的算法。仿真试验表明,OBMC的采用可带来平均0.1 dB以上的编码增益。对于高复杂度序列在高速率下的编码,最高增益可达0.2 dB.

下一步将对加权系数矩阵的自适应进行研究,以进一步提高编码效率。另外,并不是每个宏块采用OBMC都可以带来编码增益。可以研究在宏块级别引入一个标志,指示该宏块是否采取OBMC。这种灵活性将进一步提高编码效率。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 滤波器
    +关注

    关注

    158

    文章

    7329

    浏览量

    174769
  • 视频
    +关注

    关注

    6

    文章

    1890

    浏览量

    71882
收藏 人收藏

    评论

    相关推荐

    视频压缩标准MPEG-4和H.264的基础知识

    H.264可对帧内宏亮度数据的16个4?4的DCT系数进行第二次4?4的变换,对色度数据的4个4?4
    发表于 05-28 16:28

    h.264协议中文版下载

    h.264协议中文版下载   访问单元:AC变换系数:自适应二进制算术解码过程:自适应二进制算术编码过程...中英文版,直接翻译的。。还能让你学习学习英语。。。不错哦。。。。下了记得顶一顶了
    发表于 05-30 17:48

    H.264标准详细介绍

    时,为了不产生因小尺寸变换带来的间灰度差异,H.264可对帧内宏亮度数据的16个4?4的DCT系数进行第二次4?4
    发表于 06-04 14:29

    H.264/AVC in Wireless Environments

    H.264/AVC in Wireless EnvironmentsAbstract-- Video transmission in wireless environments is a
    发表于 06-25 10:13

    H.264/AVC Over IP

    H.264/AVC Over IPAbstract—H.264 is the ITU-T’s new, nonbackward compatiblevideo compression
    发表于 06-25 10:13

    H.264码流结构pdf

    H.264码流结构pdfH.263的码流结构H.263定义的码流结构是分级结构,共四层。自上而下分别为:图像层(picture layer)、组层(GOB layer)、宏
    发表于 06-25 10:26

    新一代视频编码标准H.264在高速DSP平台上的实现与优化

    码率。共有13种预测模式(4×4大小9种预测模式,16×16大小4种预测模式),这在以往标准中是没有的。其次采用新的运动估计方法。H.264有7种
    发表于 06-25 10:35

    在FPGA上实现H 264 AVC视频编码标准

    质量常常大受影响。而在 FPGA 结构中,硬件资源则可得到完全分配(三步和完全搜索运动估计对比)。使用 FPGA 实现功能模块图 1 为定义了主功能和数据流的整个 H.264/AVC 宏
    发表于 06-25 11:33

    基于Blackfin533的H.264编码

    视频质量下,能节省大约50%的码流,图像质量更好,适应性更广,能较好地满足实时(视频会议)及非实时(存储、广播等)等各种应用。在DSP上实现H.264的实时编码具有较大的工程意义及经济价值。 1
    发表于 07-13 17:12

    H[1].264 Verilog H.264 的Verilog实现的opencore

    H[1].264 Verilog H.264 的Verilog实现的opencore
    发表于 08-12 12:07

    H.265与H.264对比分析

    H.264也被广泛用于网络流媒体数据、各种高清晰度电视广播以及卫星电视广播等领域。H.264相较于以前的编码标准有着一些新特性,如多参考帧的运动补偿、变尺寸运动补偿、帧内预测编码等,通过利用这些新特性
    发表于 12-11 15:45

    请问如何实现H.264去方块滤波的优化设计?

    如何在实时视频解码中优化去方块滤波算法?如何实现H.264去方块滤波的优化设计?
    发表于 04-20 06:24

    请问怎样实现H.264的量化?

    量化的功能有哪些?量化的算法是什么?怎样用Verilog语言实现H.264的量化?如何运用Modelsim对H.264进行仿真?
    发表于 04-28 06:12

    H.264/AVC是什么? H.264/AVC有哪些核心技术?

    H.264/AVC是什么?H.264/AVC有哪些核心技术?
    发表于 06-02 07:15

    如何去实现并优化一种H.264视频编码器?

    什么是H.264视频编码技术?如何去实现并优化一种H.264视频编码器?
    发表于 06-03 07:00