● 摘要
H.264是最新的视频编码标准,与以往的标准相比,它获得了更高的压缩性能,同时具有更好的网络适应性,但这些都是以增加视频编码器运算开销为代价的,对处理器的处理能力提出了更高的要求。因此,如何降低运算复杂度,提高其编码速度是实现实用的视频编码器的关键。通过评估H.264采用的各项编码技术,详细分析这些编码技术对编码压缩性能,以及对运算复杂度的影响,设计出一个实现高效软件视频编码器的总体方案,通过选择适当的编码技术和相应的参数,在保证编码压缩性能的同时,将编码器的运算复杂度控制在一定的范围内,使其能够达到较高的编码速度。H.264帧内预测对各种尺寸块分别采用多种预测模式进行预测,从中选择最优模式,针对由此带来的高运算复杂度,本文提出了一种快速帧内预测模式选择算法,其中包括对H.264算法的两点改进:一是采用一种基于图像熵值,以及采用滑动窗口机制自适应地调整熵值阈值的方法对宏块模式进行选择;二是针对亮度块的多个预测方向,充分利用中间结果,预先排除一些可能性小的方向。该快速算法在保证编码器编码质量同时,能有效地降低帧内预测的运算复杂度。通过分析运动估计中运动矢量搜索陷入局部最优的原因,本文提出了一种分区域的分级搜索策略,有效的降低了搜索陷入局部最优的可能性,在此基础上结合有效的搜索起点预测、提前终止准则等策略,设计了一种新的运动估计快速算法,该算法在几乎不降低编码质量的情况下,能有效的降低编码器的运算复杂度,提高编码速度。视频编码器中存在很多对大量数据执行相同操作的运算,适合采用Intel多媒体指令集进行代码优化,本文通过将编码器中的一些频繁调用模块采用Intel多媒体指令集改写,有效的减少了这些模块的运算量,有利于降低整个编码器的运算复杂度。通过采用上述各种H.264快速算法和优化手段,本文实现了一个高效的H.264软件视频编码器。与x264相比较,在编码质量相当的情况下,运算复杂度有较大幅度降低,编码速度有30%-50%的提升。
相关内容
相关标签