H.264关键算法及软硬件协同设计研究

Study on Key Algorithms and Software Hardware Co-design of H.264

作者: 专业:电路与系统 导师:王兢 年度:2010 学位:硕士  院校: 大连理工大学

Keywords

H.264, Motion Estimation, CAVLC Entropy Coding, SOPC

        作为新一代视频编码标准的H.264,以优异的压缩性能、高性能的图像质量和良好的网络亲和性受到广泛的关注,在网络视频传输、数字高清视频等方面具有广阔的应用前景。H.264编码算法包含了许多方面的编码技术,也包含了许多复杂的计算,这也使H.264的编码速度及其实际应用受到了限制,同时H.264编码标准处于不断的发展中。因此,对H.264编码算法的研究和改进以及对H.264编码器实现的研究,具有重要的意义。论文首先简单介绍了标准的H.264编码算法及其特点,其中针对帧间预测复杂度高、编码时间长的特点以及针对CAVLC熵编码进行了改进。帧间预测由运动估计和运动补偿两部分组成,运动估计作为其中的关键算法,其性能的好坏直接决定了帧间预测的效率,本文结合视频图像运动的特点,对UMHexagonS运动估计算法提出了一种改进方法。CAVLC熵编码作为编码器的最后一个环节,采用无损的编码方式,对压缩码流起到了关键作用。通过对CAVLC熵编码的研究发现,其存在一定的缺陷,本文结合编码码流的特点以及熵编码的过程,对熵编码算法进行了改进,改进后可以进一步节省编码后的码流,减少传输的带宽。通过不同图像序列的测试表明,论文中的运动估计优化算法在保证图像质量的前提下,提高了运动估计的编码速度,平均可以节省16%的运动估计时间,而最高可以节省24.2%。而针对CAVLC熵编码的优化,也达到了降低编码后的码流的效果。本文还对基于H.264编码器的视频采集系统的实现进行了研究。利用软硬件结合的思想,本文采用FPGA,结合SOPC技术,并利用硬件描述语言(HDL)、NiosⅡ处理器和Altera Avalon总线以及灵活的用户自定义组件,设计了视频采集模块、软硬件接口模块和硬件加速模块,构建了整个H.264视频编码系统。另外,本文详细介绍了采用全流水线技术实现的DCT变换和量化硬件加速模块,以及介绍了硬件实现的CAVLC熵编码加速模块,与纯软件相比,提高了编码速度。整个设计通过Altera DE2平台验证,在应用方面具有良好的发展空间。
    As the newest video coding standard, H.264 receives widespread concern for its excellent compression performance, high image quality and a good network of affinity, so H.264 has a wide application in the network video transmission, digital high-definition video, and so on.H.264 coding algorithm includes many coding techniques and many complex calculations, which limits the coding speed and the application of H.264. And also, H.264 is in constant development.Therefore, the research and improvement of H.264 coding algorithm and the implementation of H.264 encoder have a great significance.This paper introduces the h.264 standard coding algorithms and the parts of inter-frame prediction and CAVLC entropy coding are optimized. Inter-prediction is composed by two parts-Motion estimation and Motion compensation. Motion estimation, as one of the key algorithm, determines the efficiency of inter prediction.In this paper, combining the characteristics of video motion pictures, one optimized method is proposed for motion estimation. CAVLC entropy coding, as the final step of encoder, uses a lossless encoding method and plays a key role in compressing code stream. Through our research, we find some defects of CAVLC. In this paper, combining the characteristics of coded bits and the process of CAVLC entropy coding, the CAVLC entropy coding algorithm is improved to save more encoded bits and to reduce the transmission bandwidth.Experimental results by different video sequence show that the improved methods can save about 16% ME time on average and can achieve 24.2% ME time saving at best. For CAVLC, the optimized methods can also reduce the encoded bit stream.This paper also discusses the realization of video capture system based on H.264 encoder. Based on SOPC technology, this paper use NiosⅡprocessor, Avalon Bus and flexible custom component to design video capture module, software-hardware interface module and hardware accelerating module and finally implement the H.264 video capture system. The pipelined DCT transform and quantization module, and the Hardware CAVLC module, which are used as custom component to accelerate the video capture system, are also introduce in detail.The entire design is vertified on Altera DE2 platform and has a good application prospect.
        

H.264关键算法及软硬件协同设计研究

摘要4-5
Abstract5
1 绪论8-13
    1.1 课题研究背景及意义8-9
    1.2 视频编码的主要标准9-10
    1.3 H.264编码器的研究现状10-11
    1.4 本文研究的主要内容11-13
2 H.264/AVC视频编码技术13-21
    2.1 H.264编码器简介13-16
        2.1.1 H.264编码器的档次和级13-14
        2.1.2 H.264编码器的构成14
        2.1.3 H.264中的句法元素14-16
    2.2 H.264视频编码的主要技术16-20
        2.2.1 帧内预测16-18
        2.2.2 帧间预测18-19
        2.2.3 熵编码技术19
        2.2.4 去方块滤波19-20
    2.3 H.264编码器的性能20
    2.4 本章小结20-21
3 H.264运动估计算法的改进21-28
    3.1 运动估计算法介绍21-22
    3.2 UMHexagonS算法22-24
        3.2.1 UMHexagonS算法简介22-23
        3.2.2 UMHexagonS算法问题分析23-24
    3.3 UMHexagonS算法的改进24-26
        3.3.1 候选运动矢量判定24-25
        3.3.2 改进的搜索模型25-26
    3.4 实验结果和分析26-27
    3.5 本章小结27-28
4 CAVLC算法的改进28-33
    4.1 变长编码简介28
    4.2 CAVLC熵编码过程28-30
    4.3 CAVLC熵编码码流的改进30-32
    4.4 仿真验证32
    4.5 本章小结32-33
5 基于SOPC平台的H.264视频编码系统33-61
    5.1 H.264视频编码系统整体架构33-34
    5.2 图像采集模块的实现34-38
        5.2.1 CMOS图像传感器的配置34-35
        5.2.2 色彩格式转换35-38
    5.3 图像采集软硬件接口的实现38-42
        5.3.1 NiosⅡ通信结构38-39
        5.3.2 Avalon Slave接口规范39-40
        5.3.3 软硬件接口的控制时序40-41
        5.3.4 数据读取的实现及模块设计41-42
    5.4 软件代码的实现42-45
        5.4.1 H.264代码的移植42-44
        5.4.2 H.264代码的优化44-45
    5.5 硬件加速模块的设计及实现45-59
        5.5.1 DCT变换量化硬件加速模块的实现45-53
        5.5.2 CAVLC硬件加速模块53-57
        5.5.3 硬件加速模块的接口设计和验证57-59
    5.6 本章小结59-61
6 H.264视频编码系统构建及验证61-63
结论63-65
参考文献65-68
攻读硕士学位期间发表学术论文情况68-69
致谢69-71
        下载全文需10


本文地址:

上一篇:多通道无线气体传感器检测系统的设计与研究
下一篇:水下爆炸作用下结构响应数值分析

分享到: 分享H.264关键算法及软硬件协同设计研究到腾讯微博           收藏
评论排行
公告