论文部分内容阅读
随着人们对标清视频、高清视频的需求越来越高,H.264/AVC视频编码标准已经不能很好的满足网络以及人们的需求,ITU与MPEGE国际化组织成立了JCT-VC(Joint Collaborative Team on Video Coding)小组,专门研究制订新一代的视频编码HEVC(High Efficiency Video Coding)也称为H.265,其目标是比H.264/AVC High Profile视频编码标准节省50%左右的码率。JCT-VC于2010年召开了第一次会议,目前大部分工作都已经完成,并计划于2013年发布最终的标准。HEVC的编码性能比H.264/AVC的性能有了很大的提高.性能的提升是以增加复杂度为代价换来的。由于高度的复杂度,其实时编码性能的应用受到了限制,有必要对其进行进一步的优化,提高其编码速度,本文着眼于GPU(Graphic Processing Unit)方向对其研究加速,对HEVC标准的应用推广有重要意义。本论文研究和实现了HEVC视频编码器的CUDA(Compute Unified Device Architecture)优化,在充分研究了CUDA结构的特性,把运算量大、耗时的部分比如自适应插值滤波器(AIF, adaptive interpolation filter),以及EPZS(Enhanced Predictive Zonal Search)快速运动估计部分放到了CUDA里面实现。EPZS算法实现过程中,我们用PU(Prediction Unit)小块的SAD(Sum of Absolute Difference)值合成PU大块的SAD值。此外,HEVC运动估计中编码单元LCU(Largest Coding Unit)最大可以到64×64,最小块为4×8和8×4的大小,最大块与最小块的差距非常大,当视频序列运动比较剧烈的时候误差较大,为此,通过研究调整起始搜索点,让所有的分块起始搜索点尽量接近真实搜索点。实验结果表明:通过修改HEVC框架并利用CUDA加速AIF可以明显的减少编码时间,整体编码时间加速比可达1.25左右(即编码时间减少25%左右);在EPZS运动估计加速比方面,运动较小的序列编码时间加速比在7倍左右,运动中等以及偏大的序列编码时间加速比在17倍左右。AIF模块与EPZS两个模块整合后整体编码时间平均加速比达1.5以上(即编码时间缩短一半)。