›› 2012, Vol. 25 ›› Issue (10): 106-.

• 论文 • 上一篇    下一篇

一种基于异构系统的H.264/AVC运动估计算法

章剑,仰枫帆   

  1. (南京航空航天大学 电子信息工程学院,江苏 南京 210016)
  • 出版日期:2012-10-15 发布日期:2012-11-29
  • 作者简介:章剑(1988—),男,硕士研究生。研究方向:多媒体处理,高性能计算。

A H.264/AVC Motion Estimation Algorithm Based on the Heterogeneous Computing System

 ZHANG Jian, YANG Feng-Fan   

  1. (College of Electronic and Information Engineering,Nanjing University of Aeronautics and Astronautics,Nanjing 210016,China)
  • Online:2012-10-15 Published:2012-11-29

摘要:

运动估计是H.264/AVC视频编码标准中计算量最大、耗时最多的模块。为加速编码过程,基于NVIDIA公司提出的统一计算设备架构(CUDA)组成的异构系统,设计了一种并行运动估计算法。该算法采用顺序运动搜索方式,并且使用合成的方式得到宏块在不同划分模式下的绝对帧差和(SAD)值。将运动估计分为3个步骤:小宏块SAD值计算,合成其他形状块SAD值,归约获取最佳结果。各个步骤串行执行,而每个步骤内并行执行大量的线程。实验结果表明,在GTS450硬件平台上,与传统的基于CPU算法相比获得了平均超过50倍的加速比。

关键词: H.264/AVC, CUDA, 运动估计, 硬件加速, 异构计算

Abstract:

Motion estimation is the most time consuming module with the highest computational complexity in the H.264/AVC system.In order to speed-up the encoding procedure,a parallel algorithm of H.264/AVC motion estimation is proposed in this paper based on a heterogeneous system composed of the computed unified device architecture(CUDA).A sequential search pattern is adopted in the algorithm,and the sum of absolute difference(SAD) information for other partitions is build with the SAD information for the smaller MB partitions.The algorithm is divided into three steps:obtaining SAD information for the smaller MB partitions,building SAD information for other partitions,and reduction to get the best result.The above three steps need to be executed sequentially but there are many threads executed parallel in each step.Experiment result shows that the execution time of the proposed motion estimation algorithm on NVIDIA's GTS450 platform is 50 times faster than that of the traditional algorithm when running on CPU.

Key words: H.264/AVC;CUDA;motion estimation;hardware accelerator;heterogeneous computing

中图分类号: 

  • TP391