基于FPGA局部动态重构的模块化视频处理方法与流程

文档序号:14953250发布日期:2018-07-17 23:01阅读:252来源:国知局

本发明属于嵌入式计算机视频处理技术领域,特别是涉及一种基于fpga局部动态重构技术的视频处理方法。



背景技术:

对于嵌入式应用,人们总希望能以尽量小的体积和尽量少的能耗来完成尽量多和尽量复杂的功能。目前,嵌入式视频处理已经广泛应用于各个行业,单纯的视频传输和显示已经无法满足复杂应用的需求。通常,针对原始视频需要做降噪、图像缩放、画质增强、目标识别、目标跟踪等处理。然而,受限于产品体积和功耗,嵌入式视频处理设备往往只能选择性的实现较为单一的处理方法。

fpga局部动态重构是近些年来的新兴技术方案,应用此项技术可以动态修改逻辑模块而不妨碍其他功能逻辑运行。将此项技术应用于视频处理,可以在有限规模的fpga中实现更多的视频处理方法,同时降低功耗,提升方案灵活性。



技术实现要素:

本发明目的是克服上述已有技术的不足,提出一个基于fpga局部动态重构的模块化视频处理方法。

本发明的技术方案是维护管理两个功能模块库。一个用于维护管理视频预处理和显示分析功能,另一个用于维护管理视频处理算法。产品功能需求确定后根据原始视频格式、视频处理方法、显示输出格式来从功能模块库中选取相应的视频预处理模块、显示分析模块和视频处理算法。在具体设计实现时将fpga划分为动态区和静态区,在静态区做视频预处理、显示控制、指标计算和动态配置控制,在动态区做视频处理。静态区的视频预处理包括视频信号滤波、格式转换、色彩空间转换、显示输出和指标计算,动态区的视频处理需要将视频处理算法综合实现为fpga局部配置文件,配置控制逻辑根据视频处理方法选择某个局部配置文件加载,从而动态转换视频处理方法。

技术方案:

基于fpga局部动态重构的模块化视频处理方法,实现具体步骤如下:

1第一步,功能模块库的建立和维护。将常用的视频预处理转换、显示控制、指标计算、动态配置控制、视频处理算法以rtl代码文件或网表文件存储。在产品设计开发之前,功能模块库就应该初步建立好,随着新视频处理算法和转换处理方法的开发或修改,库也应该随之更新。

第二步,fpga逻辑设计。根据产品功能需求,从功能模块库中选择相应的功能模块。将fpga划分成静态区和动态区。将视频预处理、显示控制、指标计算和动态配置控制逻辑在静态区做综合实现。将选定的视频处理算法在动态区实现。

第三步,配置文件加载。将fpga静态区综合实现的全局配置文件盒动态区综合实现的三个局部动态配置文件合并写入fpga的配置flash中。

第四步,视频处理过程。原始视频进入fpga后,首先进行视频信号滤波,该处理通过对视频信号中vs、hs、de等同步信号滤波,滤除毛刺,形成稳定标准的vesa时序视频信号输出后级处理。之后根据原始视频格式和视频处理算法对视频格式的要求做视频格式和色彩空间转换。格式匹配的视频输入至视频处理模块,视频处理模块会对视频做满足功能需求的变换。根据应用场景变化,可以控制静态区的局部动态配置控制模块来将动态区重新加载,以实现视频处理算法的切换。

第五步,处理视频显示分析。经过处理的视频信号根据显示需求做变换处理后显示输出。同时,指标计算模块可以实时计算出视频处理过程耗时和处理后视频信噪比等指标参数。

本发明可同时实现三种不同视频处理算法或三种算法组合,每种视频处理方法被综合实现为一个单独的动态配置文件。

所述视频预处理转换包括视频信号滤波、隔行视频插值、逐行视频抽取、444格式下采样、422格式插值、420格式插值、rgb色彩空间转yuv色彩空间、yuv色彩空间转rgb色彩空间等。

显示控制包括标准vesa时序生成、视频数据读取填充。

指标计算包括信噪比计算、处理时延计算等。

视频处理算法包括降噪、图像缩放、画质增强、目标识别、目标跟踪等

附图说明

图1是本发明处理流程图

图2是本发明fpga功能结构图

具体实施方式

下面结合附图对本发明做进一步的描述:

以某视频叠加去雾系统为例,该系统需要完成将1080isdi原始视频做字符图形叠加和两种不同的去雾视频处理,输出1080pdvi视频显示。受限于方案采用的fpga规模,字符图形叠加和两种视频去雾处理算法无法同时综合实现,三种视频处理方法在不同应用场景下只选择其中一种。采用本方法的具体步骤如下。

第一步,根据系统需求,原始视频格式与视频处理格式不匹配,需要经过隔行视频插值、422插值,色彩空间需要从yuv转换为rgb。视频处理后的格式与显示输出格式需求匹配,不需要做转换。该应用仅需要显示输出,无需指标计算。从功能模块库中选择视频信号滤波模块、隔行视频插值模块、422格式插值模块、yuv色彩空间转rgb色彩空间模块、标准vesa时序生成模块、视频数据读取填充模块和动态重构控制模块。将这些模块根据系统需求设置好对应的参数。

第二步,fpga划分静态区和动态区。将设置好参数的视频预处理、显示分析和动态重构配置相关模块在静态区综合实现为全局配置文件,将字符图形叠加和两种不同的去雾算法在动态区分别综合实现为三个局部动态配置文件。

第三步,将全局配置文件和三个局部配置文件合并写入配置flash。

第四步,1080isdi原始视频进入fpga后,首先经过视频信号滤波,滤除毛刺,形成稳定标准的vesa时序视频信号输出后级处理。滤波后的视频通过422格式插值为444格式视频,然后经过色彩空间转换由yuv色彩空间转换为rgb色彩空间。转换后符合视频处理算法需求的rgb444格式视频送入动态区做视频处理。动态区可以根据应用场景需要从配置flash中动态加载局部配置文件,实现在字符图形叠加和两种视频去雾处理方法中切换。

第五步,生成1080pvesa时序,填充处理后视频数据,显示输出。



技术特征:

技术总结
本发明属于嵌入式计算机视频处理技术领域,特别是涉及一种基于FPGA局部动态重构的模块化视频处理方法。通过建立维护常用视频格式转换和常用视频处理算法库、动态重配置FPGA动态区来实现多种视频处理算法的在线切换。解决了嵌入式应用中小规模FPGA无法同时实现多种复杂视频处理算法的问题。

技术研发人员:贾超群;詹思维;樊超;杨立成;杨敬宝;王闯
受保护的技术使用者:中国航空工业集团公司西安航空计算技术研究所
技术研发日:2017.12.07
技术公布日:2018.07.17
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1