基于NiosII的 低码率实时H.264视频编码器

[10-10 20:36:41]   来源:http://www.88dzw.com  电子制作   阅读:8691

文章摘要: 根据上面对视频采集部分硬件结构的分析,设计了图3所示的视频采集模块结构框图。可以看出,图像采集模块主要包含图像提取、色度取样率变换、Y/Cb/Cr图像分量分离以及图像缓存SRAM读写控制等单元。www.88dzw.com2.2 H.264编码器核心模块 综合现有的硬件资源、实时性与实现难度等因素,设计中仅采用了帧内预测方式,编码器包括帧内预测模块、变换量化模块和CAVLC熵编码模块。处理时以宏块(16×16)为单位,亮度和色度块分别进行帧内预测、变换量化和反变换反量化,然后进行CAVLC熵编码,图像的亮色比为Y:U:V=4:2:O。 H.264编码器设计前期先用VC++在P

基于NiosII的 低码率实时H.264视频编码器,标签:电子小制作,http://www.88dzw.com
    根据上面对视频采集部分硬件结构的分析,设计了图3所示的视频采集模块结构框图。可以看出,图像采集模块主要包含图像提取、色度取样率变换、Y/Cb/Cr图像分量分离以及图像缓存SRAM读写控制等单元。

www.88dzw.com

2.2 H.264编码器核心模块
   
综合现有的硬件资源、实时性与实现难度等因素,设计中仅采用了帧内预测方式,编码器包括帧内预测模块、变换量化模块和CAVLC熵编码模块。处理时以宏块(16×16)为单位,亮度和色度块分别进行帧内预测、变换量化和反变换反量化,然后进行CAVLC熵编码,图像的亮色比为Y:U:V=4:2:O。
    H.264编码器设计前期先用VC++在PC机上实现,后期移植到FPGA上用自定义硬件模块实现,二者所需时间如表1所列。可以看出,用硬件实现H.264压缩编码一帧图像只需约16 ms,较PC机实现有很大提高,而且硬件模块占用的资源不到50%,性价比较高。

    由于自定义帧内预测硬件模块较软件实现对系统性能提高较大,这里重点分析帧内预测模块硬件结构设计。
    根据H.264帧内预测算法,帧内预测模块是在非率失真优化模式下设计的。它通过接口模块从SDRAM中读入一个MB(16×16)的亮度和色度图像数据,在亮度和色度预测模块中对当前MB进行预测和预测模式选择,输出预测残差及最佳预测模式;同时将预测结果与经过反DCT变换和反量化之后的残差值相加,经重构模块补偿重构后写回SDRAM。主要结构如图7所示,整个模块分为4个子模块:接口模块、亮度预测、色度预测和图像重构模块。

    接口模块中设计了4个RAM,用于存放读入的原始图像和用于预测的参考图像数据:RAM0存放亮度预测像素,深度32,地址0~15存放上侧预测参考像素,地址16~31存放左侧预测参考像素;RAMl存放当前宏块亮度原始值,深度为256;RAM2存放色度预测参考像素,深度32,地址0~7存放上侧Cb预测参考像素,地址8~15存放左侧Cb预测参考像素,地址16~23存放上侧cr预测参考像素,地址24~31存放左侧Cr预测参考像素;RAM3存放当前宏块色度原始值,深度为128。
    亮度预测模块的内部结构如图8所示。

    ①模式选择模块根据当前宏块的预测参考像素可用信息(avail)指定当前宏块按一定顺序做预测,如avail=“11”表示上侧和左侧预测参考像素均可用,则对当前宏块顺序做DC、HOR、VERT、PLANE四种方式预测。在残差处理模块中,采用了2个RAM顺序保存各种预测模式的预测残差,所以在模式选择模块里会比较当前预测模式的代价函数和前一种预测模式代价函数的大小。如果当前预测模式的代价函数较小,则说明当前预测模式较优,在做下一种模式预测时将预测残差指定保存在上次较差预测模式的残差RAM中。当前宏块的可用预测模式都预测结束后,模式选择模块根据每一种模式预测代价函数决定出最优预测模式,并指出该预测模式对应残差处理模块中存放的RAM,将相应的残差输入到整数变换模块。

上一页  [1] [2] [3]  下一页


Tag:电子制作电子小制作维修教程知识 - 电子制作