一种视频算法开发平台及其开发方法

文档序号:7696394阅读:152来源:国知局
专利名称:一种视频算法开发平台及其开发方法
技术领域
本发明涉及视频图像处理领域,尤其涉及一种视频算法开发平台及其开发 方法。
背景技术
在视频图像处理系统中,需要通过视频算法来支持各种视频标准,并负责 把视频信号从一种标准转换到另一种标准。视频算法的不同,可以导致不同的
视频图像处理效率、视频图像处理质量和系统CPU (Central Processing Unit, 中央处理器)资源占有率。因此,在开发过程中需要对视频算法进行调试和仿 真实现。
现有技术中通常是写一个应用程序直接把视频算法嵌入后进行调试。但是 该现有技术的缺陷在于,其无法实现动态调试,从而无法通过设定不同的视频 播放帧率以检验不同情况下视频算法对CPU等资源的占用率。综上可知,现有视频算法开发技术在实际使用上,显然存在不便与缺陷, 所以有必要加以改进。

发明内容
针对上述的缺陷,本发明目的在于提供一种视频算法开发平台及其开发方 法,其可以实现视频算法的动态调试,从而可以通过设定不同的视频播放帧率 以检验不同情况下视频算法对CPU等资源的占用率,并且可以实时观测到视
频算法的最终效果。
为了实现上述目的,本发明提供一种视频算法开发平台,其特点在于,包
括视频源模块,用于从数据源中读取数据,并根据所述数据产生视频流数据; 视频处理模块,包括有一个或多个公用图像处理接口,用于通过所述公用图像 处理接口对所述视频流数据进行编/解码和压縮/解压縮处理;视频显示模块, 用于显示所述经过编/解码和压縮/解压縮处理后的视频流数据。优选地,所述的视频算法开发平台进一步包括图像算法数据库,用于动 态存储和提供图像算法;所述视频处理模块通过所述公用图像处理接口加载所 述图像算法,并根据所述图像算法对所述视频流数据进行解码和解压縮处理。
优选地,所述图像算法根据所述公用图像处理接口进行开发并存储在所述 图像算法数据库中。
优选地,所述视频源模块进一步包括数据源读取子模块,用于从数据源 中读取数据;参数设置子模块,用于设置若干视频参数,所述视频参数包括 视频流输出格式,视频流播放帧率和视频流尺寸大小;视频生成子模块,用于 根据所述数据和设置的视频参数产生视频流数据;视频协商子模块,用于与所 述视频处理模块进行协商以建立视频链路供所述视频处理模块接收所述视频 生成子模块产生的视频流数据。
优选地,所述视频显示模块进一步用于统计并显示与所述视频流数据相关 的信息,所述信息包括包括视频流播放帧率和系统资源使用率。
为了实现上述目的,本发明还提供了一种使用上述的视频算法开发平台的 视频算法开发方法,其特点在于,所述方法包括
A、 从数据源中读取数据,并根据所述数据产生视频流数据;
B、 通过一个或多个公用图像处理接口对所述视频流数据进行解码和解压 縮处理;
C、 显示所述经过编/解码和压縮/解压縮处理后的视频流数据。 优选地,所述步骤A中进一步包括
Al、从数据源中读取数据;
A2、设置若干视频参数,所述视频参数包括视频流输出格式,视频流 播放帧率和视频流尺寸大小;
A3、根据所述数据和设置的视频参数产生视频流数据; A4、对所述视频流数据进行协商以建立视频链路。 优选地,所述步骤A1之前进一步包括
A0、根据公用图像处理接口进行开发图像算法并存储在图像算法数据库
中;
所述步骤B中通过所述公用图像处理接口加载所述存储在图像算法数据 库中的图像算法,并根据所述图像算法对所述视频流数据进行解码和解压縮处
理。
优选地,所述步骤C中进一步包括统计并显示与所述视频流数据相关 的信息,所述信息包括包括帧率和系统资源使用率。
本发明视频源模块从数据源中读取数据,并根据所述数据产生视频流数 据;然后由包括有一个或多个公用图像处理接口的视频处理模块通过所述公用 图像处理接口对所述视频流数据进行编/解码和压縮/解压縮处理,再由视频显 示模块显示所述经过编/解码和压縮/解压縮处理后的视频流数据。借此,本发 明可以实现视频算法的动态调试,从而可以通过设定不同的视频播放帧率以检 验不同情况下视频算法对CPU等资源的占用率,并且可以实时观测到视频算 法的最终效果,进而可以更好对视频算法进行优化。


图1是本发明提供的视频算法开发平台结构模块示意图2是本发明提供的参数设置子模块示意图3是本发明提供的视频算法开发方法流程图4是本发明优选实施例提供的视频算法开发方法流程图。
具体实施例方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实 施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅 仅用以解释本发明,并不用于限定本发明。
本发明的基本思想是视频源模块从数据源中读取数据,并根据所述数据 产生视频流数据;然后由包括有一个或多个公用图像处理接口的视频处理模块 通过所述公用图像处理接口对所述视频流数据进行编/解码和压縮/解压缩处 理,再由视频显示模块显示所述经过编/解码和压縮/解压縮处理后的视频流数 据。借此,实现视频算法的动态调试。
参见图l,本发明提供的视频算法开发平台10包括视频源模块ll、视 频处理模块12、视频显示模块13和图像算法数据库14,其中,
视频源模块11,用于从数据源中读取数据,并根据所述数据产生视频流 数据。具体而言,该视频源模块U的主要作用是模拟视频采集设备产生视频
数据。数据可以根据录制的视频播放文件,也可以制定特定格式的静态图片, 在该模块11内会将指定的静态图片或视频播放文件按照视频参数产生视频流 数据。视频源模块ll包括有数据源读取子模块lll、参数设置子模块112、 视频生成子模块113和视频协商子模块114,其中
数据源读取子模块lll,用于从数据源中读取数据。
参数设置子模块112,用于设置若干视频参数,所述视频参数包括视频 流输出格式,视频流播放帧率和视频流尺寸大小。该参数设置子模块112通过 如图2所示的GUI (Graphical User Interface,图形界面)显示视频参数,然后 用户通过操作参数设置子模块112设置视频参数值。
视频生成子模块U3,与数据源读取子模块111和参数设置子模块112相 连,用于根据数据源读取子模块111生成的所述数据和参数设置子模块112 设置的视频参数产生视频流数据。
视频协商子模块114,用于与所述视频处理模块12进行协商以建立视频 链路供所述视频处理模块12接收所述视频生成子模块113产生的视频流数据。
协商指的是上一个模块的输出端声明新数据格式,下一个模块的输入端在 检查输入数据格式时接受该格式即可。由此,通过视频协商子模块114在视频 源模块11和视频处理模块12之间建立了如Direct X等视频链路。
视频处理模块12,包括有一个或多个公用图像处理接口,用于通过所述 公用图像处理接口对所述视频流数据进行解码和解压縮处理。
该视频处理模块12与视频协商子模块114进行协商后,接收视频生成子 模块113产生的视频流数据,然后通过公用图像处理接口对视频流数据进行解 码和解压縮处理。
公用图像处理接口是指一组通用的图像编码/解码的调用方法,视频处理 模块12通过调用这些公用的接口可以处理不同的数据格式。
在做图像处理开发时,可以根据公用图像处理接口开发相应的图像算法并 存储在图像算法数据库14库中以在链入工程后,即可使用,极大的方便了图 像处理开发。根据公用图像处理接口开发的图像算法库也可方便的直接加入其 他工程中使用,减少再次开发的环节。
图像算法数据库14,用于动态存储和提供图像算法。所述视频处理模块 13通过所述公用图像处理接口加载所述图像算法数据库14存储的图像算法,并根据所述图像算法对所述视频流数据进行编/解码和压縮/解压縮处理。
视频显示模块13,用于显示所述经过编/解码和压縮/解压縮处理后的视频
流数据。该视频显示模块13还进一步用于统计并显示与所述视频流数据相关
的信息,所述信息包括包括视频流播放帧率和系统资源使用率。由此,可以 方便直观的看到图像算法的性能、效果,并根据性能、效果优化图像算法或调 整视频参数。
图3是本发明提供的视频算法开发方法流程图,结合图1所示的视频算法 开发平台10进行描述,该方法包括
步骤S301,视频源模块U从数据源中读取数据,并根据所述数据产生视
频流数据。
步骤S302,视频处理模块12通过一个或多个公用图像处理接口对所述视 频流数据进行编/解码和压縮/解压缩处理。
步骤S303,视频显示模块13显示所述经过编/解码和压缩/解压缩处理后 的视频流数据。
为了更好的描述本发明,本发明优选实施例提供了一种视频算法开发方法 如图4所示,结合图1所示的视频算法开发平台10进行描述,该方法具体包 括
步骤S400,根据公用图像处理接口进行开发图像算法并存储在图像算法 数据库14中。
步骤S401,视频源模块11的数据源读取子模块111从数据源中读取数据。
步骤S402,参数设置子模块112设置若干视频参数,所述视频参数包括 视频流输出格式,视频流播放帧率和视频流尺寸大小。
步骤S403,视频生成子模块113根据所述数据源读取子模块111获取的 数据和参数设置子模块112设置的视频参数产生视频流数据。
步骤S404,视频协商子模块114对所述视频流数据进行协商以建立视频 链路。
步骤S405,视频处理模块12与视频协商子模块114协商后,接收视频生 成子模块113产生的视频流数据,并通过所述公用图像处理接口加载存储在图 像算法数据库中14的图像算法,和根据所述图像算法对所述视频流数据进行 编/解码和压縮/解压縮处理。
步骤S406,视频显示模块13显示所述经过编/解码和压縮/解压縮处理后
的视频流数据和统计并显示与所述视频流数据相关的信息,所述信息包括包
括帧率和系统资源使用率
综上可知,本发明视频源模块从数据源中读取数据,并根据所述数据产生
视频流数据;然后由包括有多个公用图像处理接口的视频处理模块通过所述公 用图像处理接口对所述视频流数据进行解码和解压縮处理,再由视频显示模块 显示所述经过解码和解压縮处理后的视频流数据。借此,本发明可以实现视频 算法的动态调试,从而可以通过设定不同的视频播放帧率以检验不同情况下视 频算法对CPU等资源的占用率,并且可以实时观测到视频算法的最终效果, 进而可以更好对视频算法进行优化。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情 况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但 这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
权利要求
1、一种视频算法开发平台,其特征在于,包括视频源模块,用于从数据源中读取数据,并根据所述数据产生视频流数据;视频处理模块,包括有一个或多个公用图像处理接口,用于通过所述公用图像处理接口对所述视频流数据进行编/解码和压缩/解压缩处理;视频显示模块,用于显示所述经过编/解码和压缩/解压缩处理后的视频流数据。
2、 根据权利要求l所述的视频算法开发平台,其特征在于,进一步包括 图像算法数据库,用于动态存储和提供图像算法;所述视频处理模块通过所述公用图像处理接口加载所述图像算法,并根据 所述图像算法对所述视频流数据进行解码和解压縮处理。
3、 根据权利要求2所述的视频算法开发平台,其特征在于,所述图像算 法根据所述公用图像处理接口进行开发并存储在所述图像算法数据库中。
4、 根据权利要求2所述的视频算法开发平台,其特征在于,所述视频源 模块进一歩包括数据源读取子模块,用于从数据源中读取数据;参数设置子模块,用于设置若干视频参数,所述视频参数包括视频流输出格式,视频流播放帧率和视频流尺寸大小;视频生成子模块,用于根据所述数据和设置的视频参数产生视频流数据; 视频协商子模块,用于与所述视频处理模块进行协商以建立视频链路供所述视频处理模块接收所述视频生成子模块产生的视频流数据。
5、 根据权利要求2所述的视频算法开发平台,其特征在于,所述视频显 示模块进一步用于统计并显示与所述视频流数据相关的信息,所述信息包括 包括视频流播放帧率和系统资源使用率。
6、 一种使用如权利要求1~5任意一项所述的视频算法开发平台的视频算 法开发方法,其特征在于,所述方法包括A、 从数据源中读取数据,并根据所述数据产生视频流数据;B、 通过一个或多个公用图像处理接口对所述视频流数据进行解码和解压 縮处理;C、显示所述经过编/解码和压縮/解压縮处理后的视频流数据。
7、 根据权利要求6所述的方法,其特征在于,所述步骤A中进一歩包括:Al、从数据源中读取数据;A2、设置若干视频参数,所述视频参数包括视频流输出格式,视频流 播放帧率和视频流尺寸大小;A3、根据所述数据和设置的视频参数产生视频流数据;A4、对所述视频流数据进行协商以建立视频链路。
8、 根据权利要求7所述的方法,其特征在于,所述步骤A1之前进一步包括A0、根据公用图像处理接口进行开发图像算法并存储在图像算法数据库中;所述步骤B中通过所述公用图像处理接口加载所述存储在图像算法数据库中的图像算法,并根据所述图像算法对所述视频流数据进行解码和解压缩处理。
9、 根据权利要求6所述的方法,其特征在于,所述步骤C中进一步包括统计并显示与所述视频流数据相关的信息,所述信息包括包括帧率和系统资源使用率。
全文摘要
本发明公开了一种视频算法开发平台及其开发方法,该平台包括视频源模块,用于从数据源中读取数据,并根据所述数据产生视频流数据;视频处理模块,包括有一个或多个公用图像处理接口,用于通过所述公用图像处理接口对所述视频流数据进行编/解码和压缩/解压缩处理;视频显示模块,用于显示所述经过编/解码和压缩/解压缩处理后的视频流数据。本发明的开发平台及开发方法可以实现视频算法的动态调试,从而可以通过设定不同的视频播放帧率以检验不同情况下视频算法对CPU等资源的占用率,并且可以实时观测到视频算法的最终效果。
文档编号H04N7/26GK101345875SQ200810119589
公开日2009年1月14日 申请日期2008年9月3日 优先权日2008年9月3日
发明者巍 唐 申请人:北京中星微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1