当前位置:首页 > 工业控制 > 电子设计自动化

引 言

  H.264标准作为新一代视频编码标准,是面向多比特率的视频编码标准,也称JVT/AVC标准,既可用于高码率的HDTV和数字存储系统,也可用于低码率的实时通信系统。在相同的图像质量情况下,H.264比H.263和MPEG一4可以节省20%~50%的码率。就其基本档次而言,编码器的复杂度是H.263的10倍左右。H.264良好的网络亲和性和优异的压缩性能使其成为视频应用的首选,但其巨大的运算量成为许多应用的瓶颈。笔者基于NiosII设计了一种低码率实时应用的编码系统。该系统充分利用FPGA的并行设计结构,对视频数据采用高压缩比的H.264标准编码,能很好地满足低码率实时编码的要求。

  1 H.264编码系统结构设计

  根据H.264/AVC编码器原理及结构,同时考虑到现有硬件资源的限制以及该设计的应用需求,设计了图1所示的H.264/AVC编码系统结构。


摄像头摄入的视频图像首先经过视频采集模块处理,并将当前帧的图像数据存入SRAM。然后,以宏块MB(macroblock)为单元,从SRAM中读取原始图像,并根据MB所在图像帧内的位置,读取重建帧中的参考像素进行帧内预测,并将预测宏块与当前宏块像素做差即可得到预测残差。接下来,对残差图像进行整数DCT变换或Had—amard变换,并对变换输出进行量化。量化输出的残差图像一方面通过反变换和反量化处理生成重建图像供帧内预测作为参考,另一方面经过重排序、熵编码处理得到最终的图像压缩码流输出。

  根据H.264/AVC标准,将所设计的整个编码系统从结构上划分为图像采集、帧内预测、变换量化、熵编码等几个主要部分。各个模块之间通过流水线的方式进行处理,可以有效地提高硬件的执行效率。

  2 基于Cyclone II FPGA的H.264编码器的实现

  系统采用SOPC的设计方式,主要由视频采集模块、NiosII处理器系统组成。采用Altera公司的DE2开发板为开发平台,将视频采集、NiosII处理器集成到一个SOPC系统中。其中NiosII处理器系统要承担图像采集控制、图像的H.264压缩编码工作。为了保证实时性,在充分分析H.264软件算法运行时间后,采用自定义模块对H.264编码器关键算法进行硬件加速。

  2.1 视频采集模块

  视频采集是视频图像处理、传输的前提,采集到的数字视频图像好坏将直接影响到视频处理的结果。图2给出了图像处理系统的视频采集结构。

 ADI公司的多制式视频解码芯片ADV7181B对采集的视频图像进行模数转换。ADV7181B可以自动检测诸如NTSC、PAL和SEC0M制式的基带视频信号,并将其转换为基于4:2:2取样的16/8位兼容的CCIR601/CCIR656格式的数字视频信号;具有6路模拟视频输入端口,且采用单一的27 MHz晶振时钟输入;用户可以通过两线的I2C接口对ADV7181B的工作模式进行配置。

  系统上电时,首先使用I2C模块对ADV7181B的内部寄存器进行配置。由于摄像头输出的是PAL制式的模拟视频信号,因此需要相应地将ADV7181B配置为PAL制式的模拟视频信号输入,并将其转换为CCIR656格式的数字视频信号。ADV7181B将转换得到的实时数字视频图像的亮度信号、色度信号(TD_DAT)以及行、场同步信号(TD_HS/VS)同时输入到FPGA芯片中,通过图像采集模块提取需要的数字图像信息,并将其转存至AlteraDE2开发板提供的具有512 KB存储容量的SRAM中,用于缓存待处理图像帧。

  下面介绍图像采集模块的设计与实现方法。

  根据上面对视频采集部分硬件结构的分析,设计了图3所示的视频采集模块结构框图。可以看出,图像采集模块主要包含图像提取、色度取样率变换、Y/Cb/Cr图像分量分离以及图像缓存SRAM读写控制等单元。

其中图像提取子模块在H.264/AVC编码模块的视频采集控制信息的控制下,从ADV7181B转换输出的PAL制数字视频图像中提取需要的图像数据。摄像头采集的实际图像大小为768×576像素的隔行扫描视频输入信号,其中基数场和偶数场在时间上先后输入。由于系统处理的图像大小为320×240像素,因此需要对输入的数字视频进行截取,以满足系统的处理要求。

  考虑到在一帧图像中的顶场与底场数据差异不大,因此在对图像进行截取时,仅对底场中间240行的连续320个相邻像素点进行提取,以输出320×240像素的视频图像数据。其具体提取流程如图4所示。

 H.264/AVC支持对色度取样为4:2:O格式的逐行或隔行扫描数字图像进行处理,因此需要对提取的数字图像进行色度取样率变换。通过对相邻奇数行和偶数行的色度图像分量进行简单的平均,可实现由4:4:4向4:2:O的色度取样率变换,如图5所示。

经过取样率变换后的图像数据需要根据Y/Cb/Cr图像类型在SRAM中分片区缓存,以方便后续的H_264的编码处理。图6给出了实际图像的色度分量在取样率变换前后的效果。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在数字信号处理和通信系统中,编码器扮演着至关重要的角色。它负责将原始数据转换为字符序列或二进制码序列,以实现信息的有效传输和处理。而在编码器的众多组成部分中,BAT(电池)信号不仅提供了编码器运行的必要电源,还承载着多种...

关键字: 数字信号 编码器 BAT

BNC接口是一种常见的电子连接器,广泛应用于视频和音频设备之间的信号传输。它具有简单、可靠且易于使用的特点,被广泛用于监控领域、广播电视行业和电子测试设备中。

关键字: sdi接口 bnc 视频

在这篇文章中,小编将对74LS148编码器的相关内容和情况加以介绍以帮助大家增进对它的了解程度,和小编一起来阅读以下内容吧。

关键字: 74LS148 编码器

一直以来,编码器都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来编码器的相关介绍,详细内容请看下文。

关键字: 编码器 工业控制 机器人

编码器,作为一种广泛应用在信息处理、数据通信和自动化控制等领域的关键设备,其基本原理涉及信号转换与数据压缩的过程。编码器的主体功能是将物理量(如角度、位置、速度或线性位移)转换成对应的数字或电信号,以便于后续系统进行精确...

关键字: 编码器 自动化控制

IAR Embedded Workbench for Arm已全面支持小华半导体系列芯片,加速高端工控MCU和车用MCU应用的安全开发

关键字: MCU 编码器 电机驱动

一直以来,编码器都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来编码器的相关介绍,详细内容请看下文。

关键字: 74ls148 编码器

今天,小编将在这篇文章中为大家带来编码器的有关报道,通过阅读这篇文章,大家可以对编码器具备清晰的认识,主要内容如下。

关键字: 74ls148 74hc148 编码器

伺服电机编码器是伺服系统的重要组成部分,它能够将伺服电机的位置、速度和方向等运动参数转换成可被处理的数字信号。编码器的工作原理基于光电转换原理或磁电转换原理,下面将分别介绍这两种工作原理。

关键字: 伺服电机 编码器 数字信号

伺服电机编码器是数控机床、工业机器人等自动化设备中非常重要的组成部分,其性能直接影响设备的运动控制精度和稳定性。然而,由于长时间的使用、维护不当或环境因素的影响,伺服电机编码器可能会出现各种故障,影响设备的正常运行。本文...

关键字: 伺服电机 编码器 自动化设备
关闭
关闭