H.264中运动估计的并行计算实现

H.264中运动估计的并行计算实现

论文摘要

随着信息技术的快速发展,人们对信息的需求也随之增长,而视频信息因其直观的特点而被广泛采用,目前已经有多种针对视频压缩的国际标准,其中最新的视频标准是H.264/AVC视频压缩标准,该标准因其具有较高的压缩率而得到广泛的应用。然而,H.264/AVC视频标准的编码复杂度也是目前最高的,其编码结构除了继承传统的编码模块,还增加了很多新的模块,从而大幅度增加了运算量。因此,H.264/AVC研究的重点是如何加速编码的速度。以往的视频标准在运动估计时只采用1-2种大小的宏块,而H.264/AVC采用多种尺寸的宏块,从而使运动估计在其编码中所占运算量的比例进一步增加。因此,需要采用有效的结构或方法实现运动估计算法,从而加快编码速率。随着GPU(Graphic Processing Unit,图形处理器)的快速发展,越来越多的可并行处理的密集型运算被移植到GPU上。本文利用该平台,实现运动估计的并行处理,其创新点包括以下几个方面:(1)给出运动估计全搜索的并行实现算法。根据GPU多线程构架的特点,将每个宏块的运动估计运算放在256个线程中运行,可得到1024个8×8宏块的SAD值,并将这些SAD值组合成16×16等宏块的SAD值,最后进行并行搜索,得到最小SAD值。实验结果表明基于GPU的并行运动估计能较有效地提高编码速度。(2)给出了整数DCT(离散余弦变换)变换的并行实现算法。该算法仍利用GPU的多线程特点,对残差矩阵进行两次并行矩阵乘,而并行矩阵乘的关键是利用4×4个线程计算所对应的变换系数,其中只采用加法、减法和移位操作。实验表明该并行整数DCT变换算法相比基于CPU的整数DCT变换算法较有优势。为了进一步验证基于GPU进行并行编码的性能,本文搭建了基于X264开源编码器的实验平台,首先在X264编码器中配置可以编译CUDA代码的运行环境,然后将修改X264中的串行数据处理模式改为适合GPU处理的并行处理模式,再利用本文提出的运动估计并行算法改写X264中的相关代码,最后利用生成的执行文件对视频序列进行试验。试验结果表明利用GPU进行并行编码的运算速度是CPU上的1.5倍,且图像质量有所提高。综上所述:通过对H.264/AVC视频标准和GPU并行处理的深入分析,为提高编码的速度,提出了基于CUDA平台的并行运动估计算法和并行整数DCT变换算法,解决了H.264/AVC视频标准在编码高分辨率图像时的部分耗时问题。实验表明本文提出的并行运动估计算法和并行整数变换算法达到预期设计要求,所构建的H.264系统在一定程度上可实现视频的实时编码。

论文目录

  • 摘要
  • ABSTRACT
  • 第1章 绪论
  • 1.1 背景与意义
  • 1.2 研究现状
  • 1.2.1 视频标准的发展历史和研究现状
  • 1.2.2 H.264 并行处理的研究现状
  • 1.3 论文的结构
  • 第2章 H.264/AVC 视频编码
  • 2.1 H.264/AVC 视频编码标准概述
  • 2.2 H.264/AVC 的基本框架
  • 2.2.1 H.264/AVC 的档次划分
  • 2.2.2 分层结构
  • 2.2.3 H.264 的帧类型
  • 2.3 H.264/AVC 的关键技术
  • 2.3.1 帧间预测编码
  • 2.3.2 树状结构运动估计
  • 2.3.3 整数DCT 变换
  • 2.4 小结
  • 第3章 运动估计算法
  • 3.1 运功估计基本原理
  • 3.2 运动估计匹配准则
  • 3.3 部分经典的运动估计算法
  • 3.3.1 全搜索法
  • 3.3.2 菱形搜索法
  • 3.4 小结
  • 第4章 基于CUDA 的运功估计并行算法
  • 4.1 并行计算概念
  • 4.2 CUDA(Compute Unified Device Architecture 统一计算设备架构)
  • 4.2.1 CUDA 硬件模型
  • 4.2.2 CUDA 软件编程模型
  • 4.3 在CUDA 中的运动估计算法
  • 4.3.1 算法描述
  • 4.3.2 CUDA 中线程的处理
  • 4.3.3 CUDA 线程块的划分
  • 4.3.4 8×8 子块的SAD 计算
  • 4.3.5 最小SAD 在CUDA 中的并行搜索和存储
  • 4.3.6 DCT 变换在CUDA 中的计算
  • 4.3.7 实验结果
  • 4.4 小结
  • 第5章 基于H.264/AVC 开源库X264 的实验
  • 5.1 开源编码器的介绍
  • 5.1.1 X264 编码器关键技术介绍
  • 5.1.2 X264 编码流程分析
  • 5.1.3 X264 中运动估计运算用到的多媒体处理指令
  • 5.2 X264 中的运动估计在GPU 上并行算法描述
  • 5.2.1 算法的运行结构介绍
  • 5.2.2 算法的详细描述
  • 5.3 实验结果与分析
  • 5.3.1 实验平台介绍
  • 5.3.2 实验结果
  • 5.4 小结
  • 第6章 结束语
  • 6.1 工作总结
  • 6.2 今后工作的研究
  • 参考文献
  • 致谢
  • 附录A 攻读学位期间所发表的学术论文目录
  • 相关论文文献

    • [1].MPEG-2转H.264高效转码器的实现[J]. 电脑知识与技术 2017(06)
    • [2].H.264运动估计算法及其FPGA实现[J]. 自动化应用 2016(01)
    • [3].H.264解码器帧内预测模块的优化[J]. 电视技术 2013(19)
    • [4].H.264在手机视频监控系统中的应用浅析[J]. 电脑知识与技术 2015(22)
    • [5].基于H.264的数据分割技术研究[J]. 漳州职业技术学院学报 2015(04)
    • [6].H.264解码器的帧内预测优化[J]. 电子科技 2016(04)
    • [7].一种高效的H.264反变换反量化结构设计[J]. 计算机系统应用 2013(01)
    • [8].基于FPGA的H.264帧内预测实现和优化[J]. 计算机工程 2012(07)
    • [9].基于龙芯3B的H.264解码器的向量化[J]. 电子技术 2010(10)
    • [10].一种可重构的H.264帧内预测硬件结构[J]. 微计算机信息 2009(03)
    • [11].基于背景检测技术的H.264运动估计优化方案[J]. 电视技术 2009(S2)
    • [12].基于H.264的视频会议芯片选型[J]. 电视技术 2008(03)
    • [13].基于H.264的码率控制的改进方法研究[J]. 浙江工业大学学报 2008(05)
    • [14].H.264帧内预测数据用于图像分析的可行性探索[J]. 武汉工业学院学报 2008(03)
    • [15].一种基于H.264的高清广告插播解决方案[J]. 广播电视信息 2015(06)
    • [16].一种H.264亚像素全搜索的改进算法[J]. 小型微型计算机系统 2013(04)
    • [17].一种改进的基于柯西模型的H.264码率控制方法[J]. 信号处理 2011(11)
    • [18].H.264码率控制跳帧算法研究[J]. 微处理机 2010(03)
    • [19].浅谈H.264视频编解码标准的先进性[J]. 渭南师范学院学报 2010(05)
    • [20].H.264便携式实时编解码器的设计[J]. 微计算机信息 2009(14)
    • [21].低码率下的H.264宏块级码率控制方法[J]. 计算机应用研究 2009(07)
    • [22].一种新的H.264运动估计快速搜索算法[J]. 现代电子技术 2009(19)
    • [23].基于H.264图像编码的语音编码[J]. 无线电工程 2009(10)
    • [24].基于H.264的多参考帧运动估计快速算法[J]. 计算机工程 2008(10)
    • [25].一种新颖的H.264帧内预测快速算法[J]. 北京邮电大学学报 2008(02)
    • [26].H.264帧间预测快速算法[J]. 计算机辅助设计与图形学学报 2008(06)
    • [27].基于H.264的运动估计快速算法研究[J]. 电子世界 2014(08)
    • [28].基于方向测度的H.264帧内预测快速算法[J]. 现代计算机(专业版) 2013(04)
    • [29].一种新型的H.264码率控制初始化方法[J]. 计算机测量与控制 2012(03)
    • [30].基于运动检测与H.264的智能监控系统设计与实现[J]. 南京邮电大学学报(自然科学版) 2012(01)

    标签:;  ;  

    H.264中运动估计的并行计算实现
    下载Doc文档

    猜你喜欢