一种基于FPGA的实时视频叠加处理系统的制作方法

文档序号:17586588发布日期:2019-05-03 21:22阅读:415来源:国知局
一种基于FPGA的实时视频叠加处理系统的制作方法

本发明涉及现代电子技术领域,具体涉及一种基于fpga的实时视频叠加处理系统。



背景技术:

随着车载、机载hud技术以及vr/ar技术的发展,数字视频的实时显示需求也在不断提高,但是目前在很多的应用场合,都仍存在视频处理延时大带来的一系列问题。例如飞机利用hud辅助夜航,通过hud观察外视景,如果延时过大,造成飞行员不能及时响应外部环境变化,会增大安全风险;又如汽车hud辅助驾驶或倒车影像应用,若视频处理延时过大,会对驾驶员的判断造成影响,使驾驶员无法即使响应外部的最新路况,严重的甚至会造成交通事故;还如vr游戏,若视频处理延时过大,会造成游戏体验差,眩晕等现象。

传统的视频叠加处理采用cpu或gpu等通用处理器实现,存在以下问题:

1)视频信号采集采用多帧缓存,带来2到3帧的采集延时;

2)视频输出采用双缓存,带来1帧的输出延时;

3)视频叠加处理是以整帧为单位进行计算,整帧计算完成后才输出,带来1帧的处理延时。

因此,传统的处理方法需要约4到5帧的延时才能完成整个视频叠加处理过程。此外,通用处理器进行视频处理往往还需要增加专用sdram、flash等器件,硬件开销较大。

fpga是一种可以进行编程控制的异构处理器芯片,通过不同的编码能够实现不同的电路,能够根据实际需求对电路进行优化,具有较高的并行性和实时性。通过fpga对视频进行处理,是近些年来视频处理的一个热门方向。其主要特点有:

1)并行性强,可以实现视频采集、视频叠加的流水线处理;

2)实时性强,通过专门设计的帧缓存,将异步视频进行同步化;

3)配置灵活,内部资源丰富,无须在外部增加过多电路,缩减成本。

用fpga来进行视频叠加处理,能够减小视频叠加延时,满足不同领域的视频处理实时性需求。



技术实现要素:

为解决现有的视频处理方法延时过大、硬件开销大的问题,本发明提出一种基于fpga的实时视频叠加处理系统。

本发明的技术方案为:

所述一种基于fpga的实时视频叠加处理系统,其特征在于:包括帧缓存模块、读写控制器模块和叠加计算模块;

外背景视频信号输入帧缓存模块,帧缓存模块对输入的外背景视频信号进行缓存处理,并在读写控制器模块控制下,将缓存的视频数据输出给叠加计算模块,实现不同源输入的异步视频同步化,为后续叠加计算进行预处理;

所述叠加计算模块在在读写控制器模块控制下,从帧缓存模块中读取外背景视频数据,且叠加计算模块还接收外部gpu芯片提供的字符视频信号,叠加计算模块根据以下公式对两路不同视频的同一坐标像素进行叠加计算:p=(x+y)-x*y/255,其中x为字符视频像素点灰度值,y为外背景视频像素点灰度值,p为叠加后画面像素点灰度值;

所述读写控制器模块接收外背景视频信号以及字符视频信号中的时钟信号、视频有效信号,行同步信号和场同步信号;根据外背景视频信号中的时序信号产生写入像素坐标,并将写入像素坐标输出给帧缓存模块;根据字符视频信号中的时序信号产生读取像素坐标,并将读取像素坐标输出给叠加计算模块;所述时序信号指时钟信号,视频有效信号,行同步信号和场同步信号。

有益效果

本发明提出的一种基于fpga的实时视频叠加处理系统,由于只采用了fpga作为视频同步、视频叠加的主要处理平台,所需硬件资源利用fpga的内部资源即可满足要求,减小了硬件bom种类和开销;利用fpga的并行性和配置灵活性,自行设计了视频同步模块和叠加计算模块,利用很小的缓存即可实现视频叠加功能,大大减小了视频处理延时,提高了实时性。

本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明的信号处理流程示意图;

图2为本发明的帧缓存模块组成图;

图3为本发明的读写控制器模块组成图;

图4为本发明的叠加计算模块组成图。

具体实施方式

下面详细描述本发明的实施例,所述实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

本实施例中的一种基于fpga的实时视频叠加处理系统如图1所示,包括帧缓存模块、读写控制器模块和叠加计算模块。

所述帧缓存模块的主要作用是对外背景视频(该背景视频通常为摄像机或红外设备拍摄的视频)输入进行缓存处理。外背景视频信号输入帧缓存模块,帧缓存模块对输入的外背景视频信号进行缓存处理,并在读写控制器模块控制下,将缓存的视频数据输出给叠加计算模块,实现不同源输入的异步视频同步化,为后续叠加计算进行预处理。

所述叠加计算模块的主要作用是对两路不同视频的同一坐标像素按照算法进行叠加处理。叠加处理使用fpga内部的dsp资源例化得到的乘加器,不增加外部开销。

即所述叠加计算模块在在读写控制器模块控制下,从帧缓存模块中读取外背景视频数据,且叠加计算模块还接收外部gpu芯片提供的字符视频信号,叠加计算模块根据以下公式对两路不同视频的同一坐标像素进行叠加计算:p=(x+y)-x*y/255,其中x为字符视频像素点灰度值,y为外背景视频像素点灰度值,p为叠加后画面像素点灰度值。

所述读写控制器主要分为写入控制逻辑和读取控制逻辑,其中写入控制逻辑的主要作用是根据外视频输入的时序信号产生写入像素坐标,按照外视频的像素时钟将逐个像素数据写入到帧缓存中;读取控制逻辑的主要作用是根据字符视频输入的时序信号产生读取像素坐标,按照字符视频的像素时钟将帧缓存中已存储的外视频像素数据逐个读取到叠加模块中,进行叠加处理。

所述读写控制器模块接收外背景视频信号以及字符视频信号中的时钟信号、视频有效信号,行同步信号和场同步信号;根据外背景视频信号中的时序信号产生写入像素坐标,并将写入像素坐标输出给帧缓存模块;根据字符视频信号中的时序信号产生读取像素坐标,并将读取像素坐标输出给叠加计算模块;所述时序信号指时钟信号,视频有效信号,行同步信号和场同步信号。

外背景视频和字符视频的时序信号进入读写控制器中,根据两个视频流各自的时序分别产生写入和读取的行列坐标,其中外背景视频数据以外背景视频的像素时钟作为写入时钟,按照写入坐标逐点写入到帧缓存中存储;字符视频数据以自身的像素时钟作为读取时钟,按照读取坐标从帧缓存的相应地址取出外视频数据,然后将同一坐标的外视频和字符视频数据按照字符视频像素时钟的节拍,逐像素送入叠加计算模块中进行算法处理,最后按照字符视频的像素时钟和时序输出叠加后的视频。

具体的帧缓存模块示意图如图2所示。由于外背景视频和字符视频为不同源的异步视频,其叠加处理必须要经过同步化处理,帧缓存的主要作用就是将外背景视频暂存,然后字符视频可以以自身的时序读取到对应坐标像素的外背景视频数据,以供后级处理。帧缓存的主体是利用fpga内部的bram资源例化成的双端口sram,在双口sram的写入端,按照写入控制逻辑计算出的外背景视频像素行列地址,以外背景视频像素时钟作为参考,逐像素把像素数据写入到双口ram的对应地址中;在读取端,按照读取控制逻辑计算出的字符视频像素行列地址,以字符视频像素时钟作为参考,逐像素地从双口ram的对应地址中读出外背景视频数据,也即字符视频每个时钟周期都能从帧缓存中取到相同坐标的外背景视频像素数据,之后送叠加计算模块进行叠加处理。

而读写控制器模块示意图如图3所示。读写控制器模块的主要功能是根据外背景视频和字符视频的行场同步(vs/hs)、有效信号(de)等时序信号分别计算出正在接收的外视频和字符视频像素数据的坐标,具体坐标计算方法如下:

1)行地址计数器以场同步作为起点,每个场同步信号到来时,行计数器清零,每个行同步到来时,行地址计数器值加一;

2)列地址计数器以行同步作为起点,每个行同步信号到来时,行计数器清零,在de信号有效的时间内,每个时钟周期,列地址计数器加一;

按照上述方法计算得到的行列地址,被送到帧缓存中用于读写控制。

本发明的一种基于fpga的实时视频叠加处理方法的叠加计算模块示意图如图4所示。该模块主要功能是将同一坐标的外背景视频和字符像素数据按照一定的算法进行叠加处理,之后以字符视频的时序输出叠加后的视频。其中,视频叠加的算法是利用fpga中的dsp资源例化得到的乘加器来实现。

总结而言,本发明一种基于fpga的实时视频叠加处理系统,主要用于将视频处理模块自身生成的字符画面和外部输入的背景视频画面进行叠加,相应的步骤为:

1)外部输入的dvi格式外视频经过解码器处理后解码为并行rgb信号进入fpga;

2)在fpga中,通过fpga内部bram资源对外视频数据进行帧缓存;

3)bram资源在fpga被例化为双端口sram形式,外视频数据通过一端写入双口sram,字符画面视频按照视频流时序从双口sram另一端读取对应像素的外视频数据,以实现异步视频同步化;

4)利用fpga内部的dsp资源构建叠加计算模块,同步化后的两路视频进入叠加计算模块,按照一定的叠加算法进行处理,并实时输出。

本发明由于采用了帧缓存边存边取的读写控制方式,外背景视频和字符视频不同步所带来的最大延时为1帧(以60hz计算为16.7ms),且所有的帧缓存、读写控制器、叠加计算模块等均通过fpga内部资源实现,节约了bom种类和成本。

上述所描述的实施方式,例如视频信号、刷新率的类型等,均可根据实际产品的情况进行更改,上述描述仅以此举例。以上实施的例子不是对本发明的具体限定,所有与本发明类似的技术方案,都应属于本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1