新闻中心

EEPW首页>嵌入式系统>设计应用> 在FPGA中实现图像格式转换的参考设计

在FPGA中实现图像格式转换的参考设计

作者: 时间:2011-08-17 来源:网络 收藏

  首先由同步视频输入MegaCore 功能来处理SDI 视频数据。该功能将同步视频格式数据( 例如, BT656 或者DVI) 转换为流控制Avalon 流(Avalon-ST) 视频协议,实现与数据通路后面其他视频处理功能的链接。

  采用高质量视频处理数据通路来处理第一个视频通道。对每一输入视频图像( 这个例子中是NTSC) 场的前三行进行剪辑,输出720x240 图像。剪辑后的视频数据在从YcbCr 颜色空间转换为RGB 之前,经过色度上采样,转换为YCbCr 4:4:4 格式。色度上采样功能使用具有固定Lanczos-2 系数的4 抽头滤波器。颜色空间转换器也采用了取整( 向上半数取整) 算法,输出8 位位宽数据。

  然后,将视频传送至去隔行功能模块。由于运动自适应算法要求输入颜色通道具有相同的采样率,因此,在进行去隔行处理之前,先进行色度上采样。( 今后的去隔行IP 将支持4:2:2 模式的视频处理功能)。去隔行器经过配置后,能够同时接收逐行和隔行视频。当输入视频是隔行格式时,运动自适应算法产生逐行格式的视频流。当输入视频是逐行格式时,去隔行器直接输出数据,不对其进行处理。当进行运动自适应去隔行处理时,数据在外部存储器中进行缓冲,完成基本帧速率转换处理。

  然后,通过参数赋值缩放器功能( 具有12 个横向和12 个纵向抽头) 的多相算法对逐行视频流进行缩放。

  采用Avalon 存储器映射(Avalon-MM) 从机控制接口对缩放器进行配置,支持缩放器输出分辨率运行时规范要求。此外,当缩放比率变化时, Nios? II 处理器上运行的软件计算并重新装入合适的系数,从而提高了图像质量。最后,在将视频流与背景测试码型以及第二个视频流混合之前,帧缓冲功能在外部存储器中缓冲视频数据。两路视频流输入到合成器进行缩放和同步,需要对突发数据流进行平滑处理。

  第二个通道处理质量稍差,这样可以提高视频格式转换的资源利用率。主要有两种方法来处理两路不同格式的视频流:

  ■ 使用简单的最近邻居缩放算法对第二个视频流进行缩放,需要较少的片内存储器和乘法器资源。

  ■ 使用场合并去隔行算法对第二个视频流进行去隔行处理,需要较少的逻辑资源和外部存储器带宽。

  3 定制您的设计

  Altera 视频工作台从根本上支持用户定制设计。工作台支持三级定制,非常灵活,如图4 所示。在领域,这种定制功能是前所未有的,采用进行设计是无法实现的。

在FPGA中实现图像格式转换的参考设计

  图4. Altera 视频工作台支持不同层面的定制功能

  采用Altera 视频工作台开发设计时,可以使用两种创新技术实时进行更新:

  ■ 数据包格式流接口——设计用于在功能模块之间同时传送视频和控制数据包。

  ■ 算法功能模块配置——可以配置为存储器映射组件,通过写入相应的控制寄存器,实时更新功能。

  Avalon-ST 视频协议是Altera 新的低开销流协议,提供面向数据包的方法来发送视频和控制数据。控制数据包用于发送动态参数,该参数描述流视频帧格式。这些参数应用于将要到达的下一视频数据包,或者在编译时设定,用在复位后接收到的第一个视频数据包上。( 表2 列出了控制数据包是怎样提供下一帧信息的)。数据到达时,视频数据流中的嵌入式控制数据包支持采用新数据对视频处理流水线进行重新配置。

  表2. 控制数据包支持对视频流格式的动态更新

在FPGA中实现图像格式转换的参考设计

  除了通过流接口实现运行时更新, Altera 开发的大部分视频功能模块都具有运行时更新功能。这表明,这些模块使用存储器映射从机接口,支持对状态机和片内处理器的更新。每个从机接口支持对一组控制寄存器的访问。例如,可以使用片内处理器,在运行时更新这些控制寄存器。在新一帧的开始,更新后的控制数据被装入到IP 功能模块中。这样,您可以在系统运行时更新图像大小和缩放系数,改变缩放比。图5 显示了Altera 视频工作台多相缩放引擎是怎样实现运行时控制的。

在FPGA中实现图像格式转换的参考设计

在FPGA中实现图像格式转换的参考设计

  图5. 更新缩放功能

  为进一步定制设计,您可以针对MegaCore 功能来修改参数。Altera 开发的所有视频功能都是可以进行参数赋值的。如图6 所示,利用去隔行器功能,您不但可以选择去隔行算法,还可以选择默认场、直通模式、外部存储器缓冲帧数量、输出帧速率和运动控制补偿等算法。

在FPGA中实现图像格式转换的参考设计

  图6. 参数赋值硬件功能模块

  Avalon-ST 和Avalon-MM 接口标准的开放即插即用规范意味着您可以先进行设计,然后,采用定制模块来替换Altera 模块。很多设计人员都有适合自己应用的定制算法。为实现定制算法的简单集成,Altera 提供支持Avalon-ST 接口打包器的HDL 模板。打包器包括以下模块:

  ■ VIP 控制数据包解码器——从数据流中解码VIP 控制数据包,将解码后的数据( 宽度、高度、隔行信息)作为单独的信号发送给算法功能模块。

  ■ VIP 控制数据包编码器——根据接收到的宽度、高度和隔行信息对VIP 控制数据包编码,将其插入到数据流中。

  ■ VIP 流控制打包器——围绕用户算法进行打包处理,实现 Avalon-ST 与简单读写接口的流控制转换。

  ■ 用户算法内核——HDL 模板在用户算法模块中提供了简单的设计实例。您可以采用自己的算法替代这一模块。

  图7 所示为HDL 模板的高级结构视图。

在FPGA中实现图像格式转换的参考设计

  图7. Avalon 流HDL 模板

  Algolith 作为Altera IP 合作伙伴,是视频IP 领域的专业公司,采用了HDL 模板来评估其内核。Algolith 开始时采用Altera 参考设计进行,然后使用自己的专用运动自适应去隔行器替代Altera 去隔行器,并提供给用户,在硬件中进行评估。同样, Algolith 使用Altera 视频设计工作台开发了参考设计,帮助用户评估他们的噪声抑制IP。

  4 结论

  Altera 视频工作台为广播基础实施系统实现图像格式转换提供所有必须的关键功能。采用Altera 视频设计工作台和图像格式转换参考设计,设计人员现在可以使用以前只有广播才能提供的功能,而且还具有灵活性和硬件定制等优势。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭