CN115861775B - 一种视频分析方法及系统 - Google Patents
一种视频分析方法及系统 Download PDFInfo
- Publication number
- CN115861775B CN115861775B CN202211576682.1A CN202211576682A CN115861775B CN 115861775 B CN115861775 B CN 115861775B CN 202211576682 A CN202211576682 A CN 202211576682A CN 115861775 B CN115861775 B CN 115861775B
- Authority
- CN
- China
- Prior art keywords
- video analysis
- video
- task
- intelligent
- manager
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004458 analytical method Methods 0.000 title claims abstract description 353
- 238000012545 processing Methods 0.000 claims abstract description 154
- 238000004806 packaging method and process Methods 0.000 claims abstract description 34
- 238000000034 method Methods 0.000 claims abstract description 27
- 230000006870 function Effects 0.000 claims description 10
- 238000005538 encapsulation Methods 0.000 claims description 8
- 230000005540 biological transmission Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 abstract description 18
- 238000011161 development Methods 0.000 abstract description 7
- 238000010276 construction Methods 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种视频分析方法及系统,包括:将各个业务逻辑文件封装为对应的处理单元,并将各处理单元对应的代码包和单元配置文件上传至智能视频分析管理器;在管理器中构建业务应用和多个业务任务,并当管理器接收到任务启动信号时,控制与视频分析需求相对应的智能视频分析运行环境中,调用与视频分析需求相对应的业务任务,作为视频分析任务;通过智能视频分析运行环境,调用与视频分析任务相关联的所有处理单元对待处理视频进行分析,以获得视频分析结果。本发明通过创建与视频分析需求相关联的业务应用和视频分析任务,并调用相关联的处理单元对待处理视频进行分析处理,能够在满足不同的应用场景的前提下降低开发难度与管理难度。
Description
技术领域
本发明涉及视频分析领域,尤其涉及一种视频分析方法及系统。
背景技术
随着智能摄像头的广泛应用,视频和图像数据的数量呈指数级的方式进行增长。但是这些数据更多的是用来做事后追责使用,其利用率非常低,无法实时利用,以实现对一些违规事件的预防处理,或者事后主动发现。为了更好地利用视频和图像数据,目前主要采用基于深度学习网络的智能视频分析算法,如人脸抓拍识别、行为分析、动作识别、目标跟踪、跨摄像头识别等,对视频和图像数据进行实时分析。随着视频分析应用的需求逐渐增多,需求日趋多样性,使得视频分析算法开发的需求也日趋丰富。然而,深度学习算法的开发相对门槛较高、开发难度大,导致深度学习算法的开发已经逐渐跟不上应用需求的增长,并且视频分析模型或算法的运行需要有强大的算力支持,对运行视频分析模型或算法的设备性能要求较高,在一定程度上限制了其应用场景。
发明内容
本发明提供了一种视频分析方法及系统,在面对不同应用场景或者多样化的视频分析需求的情况下,降低视频分析应用与任务的开发难度与管理难度,并减少数据运算量,提升视频分析任务的运行效率。
为了解决上述技术问题,本发明实施例提供了一种视频分析方法,包括:
按照预设的封装流程,将各个业务逻辑文件封装为对应的处理单元,并将各所述处理单元对应的代码包和单元配置文件上传至智能视频分析管理器;
在所述智能视频分析管理器中,基于所有所述单元配置文件,构建业务应用和多个业务任务,并当所述智能视频分析管理器接收到任务启动信号时,控制与视频分析需求相对应的智能视频分析运行环境中,调用与所述视频分析需求相对应的所述业务任务,作为视频分析任务;
通过所述智能视频分析运行环境,调用与所述视频分析任务相关联的所有所述处理单元,对所述智能视频分析管理器下发的待处理视频进行分析处理,以获得所述待处理视频对应的视频分析结果。
实施本发明实施例,将第三方提供的业务逻辑文件封装为相对应的处理单元,使得各个处理单元能够各自具备独立功能,实现各个处理单元之间的松散耦合,以便基于标准的算法接口调用与实时的视频分析需求相关联的业务任务与处理单元,即调用相关算法,以减少整体的数据运算量,从而提升业务应用和视频分析任务的运行效率,并扩展其应用场景。此外,智能视频分析管理器和智能视频分析运行环境之间是互相隔离的,实现了业务应用的构建、部署以及运行的相互隔离,以便业务开发人员理解业务应用和视频分析任务的创建运行过程以及相关调用方式,防止开发人员、质检人员和业务开发人员之间存在技术鸿沟,从而降低视频分析应用的开发难度与管理难度。
作为优选方案,所述在所述智能视频分析管理器中,基于所有所述单元配置文件,构建业务应用和多个业务任务,并当所述智能视频分析管理器接收到任务启动信号时,控制与视频分析需求相对应的智能视频分析运行环境中,调用与所述视频分析需求相对应的所述业务任务,作为视频分析任务,具体为:
在所述智能视频分析管理器中,根据所有所述单元配置文件,构建所述业务应用,并基于所述业务应用和多个类型的任务信息,构建多个所述业务任务;其中,所述任务信息与所述业务任务一一对应,所述任务信息包括任务类型和智能视频分析运行环境;
当所述智能视频分析管理器接收到所述任务启动信号时,控制所述智能视频分析管理器根据所述任务启动信号,获取对应的所述视频分析需求,并基于所述视频分析需求,配置得到对应的任务配置信息;其中,所述任务配置信息包括数值类型参数、区域类型参数、时间类型以及字符串类型;
通过所述智能视频分析管理器,将所述业务应用的链路信息下发至与所述视频分析需求相对应的所述智能视频分析运行环境中,并根据所述任务配置信息,生成对应的任务启动指令,然后将所述任务启动指令下发至与所述视频分析需求相对应的所述智能视频分析运行环境,以使所述智能视频分析运行环境根据所述任务启动指令和所述链路信息调用与所述视频分析需求相对应的所述业务任务,作为所述视频分析任务。
实施本发明实施例的优选方案,通过智能视频分析管理器接收到的任务启动信号,分析得到实时的视频分析需求,并在智能视频分析管理器中,创建与视频分析需求相关联的业务应用,并且配置与视频分析需求相关联的任务信息,从而能够基于任务信息的配置,建立智能视频分析管理器与智能视频分析运行环境之间的数据传输通道。接着,智能视频分析管理器能够根据实时的视频分析需求和任务配置信息,向与视频分析需求相对应的智能视频分析运行环境发送业务应用的链路信息、以及任务配置信息对应的任务启动指令,以调用相关联的业务任务,从而对于待分析视频进行有针对性的视频分析任务,而非每一次进行视频分析时都要运行所有的算法模型,从而提升整体的运行效率。
作为优选方案,所述按照预设的封装流程,将各个业务逻辑文件封装为对应的处理单元,并将各所述处理单元对应的代码包和单元配置文件上传至智能视频分析管理器,具体为:
按照预设的封装流程,将各所述业务逻辑文件封装为对应的所述处理单元;
对各所述处理单元进行打包,以获得各所述处理单元对应的所述代码包,并根据各所述处理单元的功能,生成各所述处理单元对应的所述单元配置文件;
将各所述处理单元对应的所述代码包和所述单元配置文件上传至所述智能视频分析管理器;
其中,所述单元配置文件包括所述处理单元的描述信息和运行环境参数。
实施本发明实施例的优选方案,将各个处理单元打包成对应的代码包,并根据各个处理单元的功能,生成各个处理单元对应的单元配置文件,并且单元配置文件包括处理单元的描述信息和运行环境参数,然后将各个处理单元对应的代码包和单元配置文件上传至智能视频分析管理器,使得智能视频分析管理器能够在进行视频分析时,调用单元配置文件中的运行环境参数,确定视频分析需求所对应的智能视频分析运行环境,并在该智能视频分析运行环境中创建视频分析任务,以满足智能视频分析管理器接收到的视频分析需求。
作为优选方案,在所述通过所述智能视频分析运行环境,调用与所述视频分析任务相关联的所有所述处理单元,对所述智能视频分析管理器下发的待处理视频进行分析处理,以获得所述待处理视频对应的视频分析结果之后,还包括:
将所述待处理视频对应的所述视频分析结果传输至所述智能视频分析管理器;其中,所述视频分析结果包括结构化数据和非结构化数据,所述结构化数据包括所述待处理视频对应的事件的事件类型、事件发生时间、以及事件视频信息或事件图片信息;
通过所述智能视频分析管理器,基于所述事件视频信息或事件图片信息,确定所述待处理视频对应的事件的视频或图片的位置信息,并根据所述位置信息,获取所述待处理视频对应的事件的视频或图片。
实施本发明实施例的优选方案,将待处理视频对应的事件的事件类型、事件发生时间、以及事件视频信息或事件图片信息传输至智能视频分析管理器,能够通过智能视频分析管理器,直观地查看待处理视频对应的事件的相关信息,比如待处理视频对应的事件的视频或图片。另一方面,智能视频分析管理器还能够根据相关的需求,将事件的所有相关信息分发给相关的下游系统,便于分散管理。
作为优选方案,所述待处理视频对应的事件的视频或图片的获取,具体为:
利用与所述视频分析任务相关联的所有所述处理单元,对所述智能视频分析管理器下发的所述待处理视频进行分析处理,以使各所述处理单元输出所述待处理视频对应的事件的视频或图片。
实施本发明实施例的优选方案,在视频分析过程中,分别获取各个处理单元输出的待处理视频对应的事件的视频或图片,以便业务开发人员或者研发人员追溯其视频分析过程。
作为优选方案,所述处理单元为视频接入单元、算法处理单元或者业务处理单元;
其中,所述视频接入单元,用于接入所述智能视频分析管理器下发的视频,并对接入的视频进行解码处理,以获得对应的若干个第一视频帧;
所述算法处理单元,用于按照预设的视频帧分析算法,对各所述第一视频帧进行分析处理,以获得对应的第二视频帧;
所述业务处理单元,用于按照预设的业务处理逻辑,对所有所述第二视频帧进行分析处理,生成对应的事件分析结果,并将所述事件分析结果上传至所述智能视频分析管理器。
实施本发明实施例的优选方案,通过多样化的处理单元,分别在视频分析过程中承担独立的功能,在处理复杂的视频分析任务时,能够调用多个处理单元进行分工合作,从而快速地完成视频分析任务。
为了解决相同的技术问题,本发明实施例还提供了一种视频分析系统,包括:
封装模块,用于按照预设的封装流程,将各个业务逻辑文件封装为对应的处理单元,并将各所述处理单元对应的代码包和单元配置文件上传至智能视频分析管理器;
任务调用模块,用于在所述智能视频分析管理器中,基于所有所述单元配置文件,构建业务应用和多个业务任务,并当所述智能视频分析管理器接收到任务启动信号时,控制与视频分析需求相对应的智能视频分析运行环境中,调用与所述视频分析需求相对应的所述业务任务,作为视频分析任务;
视频分析模块,用于通过所述智能视频分析运行环境,调用与所述视频分析任务相关联的所有所述处理单元,对所述智能视频分析管理器下发的待处理视频进行分析处理,以获得所述待处理视频对应的视频分析结果。
作为优选方案,所述任务调用模块,具体包括:
任务创建子模块,用于在所述智能视频分析管理器中,根据所有所述单元配置文件,构建所述业务应用,并基于所述业务应用和多个类型的任务信息,构建多个所述业务任务;其中,所述任务信息与所述业务任务一一对应,所述任务信息包括任务类型和智能视频分析运行环境;
信息配置子模块,用于当所述智能视频分析管理器接收到所述任务启动信号时,控制所述智能视频分析管理器根据所述任务启动信号,获取对应的所述视频分析需求,并基于所述视频分析需求,配置得到对应的任务配置信息;其中,所述任务配置信息包括数值类型参数、区域类型参数、时间类型以及字符串类型;
任务调用子模块,用于通过所述智能视频分析管理器,将所述业务应用的链路信息下发至与所述视频分析需求相对应的所述智能视频分析运行环境中,并根据所述任务配置信息,生成对应的任务启动指令,然后将所述任务启动指令下发至与所述视频分析需求相对应的所述智能视频分析运行环境,以使所述智能视频分析运行环境根据所述任务启动指令和所述链路信息调用与所述视频分析需求相对应的所述业务任务,作为所述视频分析任务。
作为优选方案,所述封装模块,具体包括:
封装子模块,用于按照预设的封装流程,将各所述业务逻辑文件封装为对应的所述处理单元;
分析子模块,用于对各所述处理单元进行打包,以获得各所述处理单元对应的所述代码包,并根据各所述处理单元的功能,生成各所述处理单元对应的所述单元配置文件;其中,所述单元配置文件包括所述处理单元的描述信息和运行环境参数;
传输子模块,用于将各所述处理单元对应的所述代码包和所述单元配置文件上传至所述智能视频分析管理器。
作为优选方案,所述的一种视频分析系统,还包括:
结果解析模块,用于将所述待处理视频对应的所述视频分析结果传输至所述智能视频分析管理器;通过所述智能视频分析管理器,基于所述事件视频信息或事件图片信息,确定所述待处理视频对应的事件的视频或图片的位置信息,并根据所述位置信息,获取所述待处理视频对应的事件的视频或图片;其中,所述视频分析结果包括结构化数据和非结构化数据,所述结构化数据包括所述待处理视频对应的事件的事件类型、事件发生时间、以及事件视频信息或事件图片信息;
所述视频分析模块,还用于利用与所述视频分析任务相关联的所有所述处理单元,对所述智能视频分析管理器下发的所述待处理视频进行分析处理,以使各所述处理单元输出所述待处理视频对应的视频或图片。
附图说明
图1:为本发明实施例一提供的一种视频分析方法的流程示意图;
图2:为本发明实施例一提供的一种视频分析系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一:
请参照图1,为本发明实施例提供的一种视频分析方法,该方法包括步骤S1至步骤S3,各步骤具体如下:
步骤S1,按照预设的封装流程,将各个业务逻辑文件封装为对应的处理单元,并将各处理单元对应的代码包和单元配置文件上传至智能视频分析管理器。
作为优选方案,步骤S1包括步骤S11至步骤S13,各步骤具体如下:
步骤S11,按照预设的封装流程,将各个业务逻辑文件封装为对应的处理单元PU(Process Unit)。
在本实施例中,利用第三方提供的业务逻辑文件,继承BaseCapsule基类,以创建对应的PU文件。然后,通过Batch方法、第三方模型文件路径的设定、以及重构processing方法,实现对业务逻辑文件的封装,以获得对应的处理单元PU。在此情况下,处理单元PU能够基于平台所提供PU-SDK(SDK,SoftwareDevelopment Kit,软件开发工具包)中的BaseCapsule类实施。
作为优选方案,步骤S1或者步骤S11中提及的处理单元为视频接入单元VIU(VideoInterface Unit)、算法处理单元APU(Algorithm Process Unit)或者业务处理单元BPU(Business Process Unit);
其中,视频接入单元VIU,用于接入智能视频分析管理器下发的视频,并对接入的视频进行解码处理,以获得对应的若干个第一视频帧;
算法处理单元APU,用于按照预设的视频帧分析算法,对各第一视频帧进行分析处理,以获得对应的第二视频帧;
业务处理单元BPU,用于按照预设的业务处理逻辑,对所有第二视频帧进行分析处理,生成对应的事件分析结果,并将事件分析结果上传至智能视频分析管理器。
步骤S12,对各处理单元进行打包,以获得各处理单元对应的代码包,并根据各处理单元的功能,生成各处理单元对应的单元配置文件。
在本实施例中,将步骤S11中提及的PU文件打包为PU代码包,即为处理单元对应的代码包。
需要说明的是,单元配置文件,包括处理单元的描述信息和运行环境参数。其中,处理单元的描述信息,包括但不限于处理单元PU的唯一标标示puCode、处理单元PU的类型puType、处理单元PU的版本version、以及处理单元PU的调用信息(比如处理单元PU的输入参数inputs、以及处理单元PU的输出参数outputs);运行环境参数,包括但不限于地址IPAddress、端口Port和登陆信息password。作为一种举例,单元配置文件的部署格式如下:
步骤S13,将各处理单元对应的代码包和单元配置文件打包为PU文件夹,并将PU文件夹上传至智能视频分析管理器ICV-Manager。
需要说明的是,智能视频分析管理器ICV-Manager对单元配置文件进行解析,能够获得处理单元PU的相关信息。其中,处理单元PU的相关信息包括但不限于,处理单元PU的输入信息、输出信息、事件输出结果。
步骤S2,在智能视频分析管理器ICV-Manager中,构建业务应用和多个业务任务,并当智能视频分析管理器ICV-Manager接收到任务启动信号时,控制与视频分析需求相对应的智能视频分析运行环境ICV-Runtime中,调用与视频分析需求相对应的业务任务,作为视频分析任务。
需要说明的是,Runtime类封装了运行时的环境,每个Java应用程序都有一个Runtime类实例,使应用程序能够与其运行的环境相连接。
作为优选方案,步骤S2包括步骤S21至步骤S23,各步骤具体如下:
步骤S21,在智能视频分析管理器ICV-Manager中,根据所有单元配置文件,构建业务应用,并基于业务应用和多个类型的任务信息,构建多个业务任务;其中,任务信息与业务任务一一对应,任务信息包括任务类型和智能视频分析运行环境。
在本实施例中,业务应用的构建流程包括步骤1)至步骤3),具体为:
1)在智能视频分析管理器ICV-Manager中创建新应用,然后在新应用的界面中,根据任务启动信号对应的视频分析需求,选择VIU类型,以将VIU类型相对应的视频接入单元VIU加入到新应用的配置中;其中,对于离线视频解析需求则选择离线视频解码VIU,而对于在线视频解析需求则选择在线实时视频解码VIU;
2)在智能视频分析管理器ICV-Manager中,从PU文件夹中选取任意处理单元PU作为PU_A,其输入输出为(Ainput,Aoutput),并根据输出/输入匹配的原则,选取另一处理单元PU作为候选PU_B,其输入输出为(Binput,Boutput),且Aoutput包含Binput。然后,从处理单元PU的输入信息中选取出适用于候选PU_B的后续单元B’,并将后续单元B’增加到新应用的配置中,以建立处理单元PU之间的关联关系。并且重复步骤2),直至当前各处理单元PU之间的关联关系满足视频分析需求,则执行步骤3);
3)从单元配置文件中读取出应用级参数,并利用这些应用级参数,对新应用进行应用级的参数配置,以获得与视频分析需求相对应的业务应用。需要说明的是,应用级参数将针对所有基于该业务应用创建的任务都有效,除非在任务配置过程中修改参数进行覆盖。
在本实施例中,业务任务的构建流程包括步骤4),具体为:
4)基于与视频分析需求相关的业务应用,并针对与不同的视频分析需求相关的运行环境参数,在智能视频分析管理器ICV-Manager中配置多个相关的任务信息,以创建对应的多个业务任务。其中,任务信息,包括但不限于任务名称、任务类型、执行应用、运行环境和视频路径。
具体地,在任务信息的配置过程中,首先针对离线视频和在线视频进行不同的配置,具体为:针对离线视频,需要配置离线视频所保存的文件路径,而针对在线视频,则按照rtsp协议配置相应的RTSP地址,如rtsp://admin:12345@192.168.1.64:554/ch1/sub/av_stream。需要说明的是,针对在线视频,通过连接测试能够获取视频的首帧,为将来针对任务的配置做好相应准备。
步骤S22,当智能视频分析管理器ICV-Manager接收到任务启动信号时,控制智能视频分析管理器ICV-Manager根据任务启动信号,获取对应的视频分析需求,并基于视频分析需求,进入相关的业务任务,以针对相关的处理单元PU进行任务级的参数设置,配置得到对应的任务配置信息。
其中,任务配置信息包括数值类型参数、区域类型参数、时间类型以及字符串类型。区域类型参数支持对多边形区域的设置,所有多边形顶点按顺时针方向存储,如[(10,100),(20,200),(300,500),.........]。
步骤S23,通过智能视频分析管理器ICV-Manager,将业务应用的链路信息下发至与视频分析需求相对应的智能视频分析运行环境ICV-Runtime中,并根据任务配置信息,生成对应的任务启动指令,然后将任务启动指令下发至与视频分析需求相对应的智能视频分析运行环境ICV-Runtime,以使智能视频分析运行环境ICV-Runtime根据任务启动指令和链路信息调用与视频分析需求相对应的业务任务,作为视频分析任务。
在本实施例中,任务启动指令的格式如下:
{'parentTaskId':'096989c9-29e7-4403-873e-0cd8036262f3',
'screenshot':'0',
'sourcePaths':
['rtsp://admin:..SZsz123@192.168.40.102/Streaming/Channels/1'],
'switchCode':'start',
'taskId':'096989c9-29e7-4403-873e-0cd8036262f3',
'traceFormworkId':'f625d90c-7a45-4498-aa32-ea09fd08beed'}
具体地,智能视频分析运行环境ICV-Runtime根据'parentTaskId'指令,确定PU流程调用,并根据'taskId'指令对业务任务进行调度,以便后续调用相关的处理单元PU执行相关的任务分析。
需要说明的是,智能视频分析运行环境ICV-Runtime根据业务应用的链路信息,不仅能够实现业务任务的调度,还能够实现视频分析过程中视频分析消息的调度与转发。
步骤S3,通过智能视频分析运行环境ICV-Runtime,调用与视频分析任务相关联的所有处理单元PU,对智能视频分析管理器ICV-Manager下发的待处理视频进行分析处理,以获得待处理视频对应的视频分析结果。
具体地,基于视频分析结果,业务研发人员以及其他管理人员能够直观地查看到执行视频分析与消息转发的具体通道和处理单元的描述信息、以及任务ID等相关事件信息。
作为优选方案,在执行步骤S3之后,还包括步骤S4至步骤S5,各步骤具体如下:
步骤S4,将待处理视频对应的视频分析结果传输至智能视频分析管理器ICV-Manager;其中,视频分析结果包括结构化数据和非结构化数据,结构化数据包括待处理视频对应的事件的事件类型、事件发生时间、以及事件视频信息或事件图片信息。
步骤S5,通过智能视频分析管理器ICV-Manager,基于事件视频信息或事件图片信息,确定待处理视频对应的事件的视频或图片的位置信息,并根据位置信息,获取待处理视频对应的事件的视频或图片。
作为优选方案,步骤S5中提及的待处理视频对应的事件的视频或图片的获取流程为步骤S6,该步骤具体如下:
步骤S6,利用与视频分析任务相关联的所有处理单元,对智能视频分析管理器ICV-Manager下发的待处理视频进行分析处理,在此分析过程中获取待处理视频对应的事件的视频或图片,以使各处理单元输出待处理视频对应的事件的视频或图片。
需要说明的是,智能视频分析管理器ICV-Manager可以根据相关的需求将所有的事件信息(包括结构化数据和非结构化数据)分发给相关的下游系统。
请参照图2,为本发明实施例提供的一种视频分析系统的结构示意图,该系统包括封装模块M1、任务调用模块M2和视频分析模块M3,各模块具体如下:
封装模块M1,用于按照预设的封装流程,将各个业务逻辑文件封装为对应的处理单元,并将各处理单元对应的代码包和单元配置文件上传至智能视频分析管理器;
任务调用模块M2,用于在智能视频分析管理器中,基于所有单元配置文件,构建业务应用和多个业务任务,并当智能视频分析管理器接收到任务启动信号时,控制与视频分析需求相对应的智能视频分析运行环境中,调用与视频分析需求相对应的业务任务,作为视频分析任务;
视频分析模块M3,用于通过智能视频分析运行环境,调用与视频分析任务相关联的所有处理单元,对智能视频分析管理器下发的待处理视频进行分析处理,以获得待处理视频对应的视频分析结果。
作为优选方案,任务调用模块M2,具体包括任务创建子模块21、信息配置子模块22和任务调用子模块23,各子模块具体如下:
任务创建子模块21,用于在智能视频分析管理器中,根据所有单元配置文件,构建业务应用,并基于业务应用和多个类型的任务信息,构建多个业务任务;其中,任务信息与业务任务一一对应,任务信息包括任务类型和智能视频分析运行环境;
信息配置子模块22,用于当智能视频分析管理器接收到任务启动信号时,控制智能视频分析管理器根据任务启动信号,获取对应的视频分析需求,并基于视频分析需求,配置得到对应的任务配置信息;其中,任务配置信息包括数值类型参数、区域类型参数、时间类型以及字符串类型;
任务调用子模块23,用于通过智能视频分析管理器,将业务应用的链路信息下发至与视频分析需求相对应的智能视频分析运行环境中,并根据任务配置信息,生成对应的任务启动指令,然后将任务启动指令下发至与视频分析需求相对应的智能视频分析运行环境,以使智能视频分析运行环境根据任务启动指令和链路信息调用与视频分析需求相对应的业务任务,作为视频分析任务。
作为优选方案,封装模块M1,具体包括封装子模块11、分析子模块12和传输子模块13,各子模块具体如下:
封装子模块11,用于按照预设的封装流程,将各个业务逻辑文件封装为对应的处理单元;
分析子模块12,用于对各处理单元进行打包,以获得各处理单元对应的代码包,并根据各处理单元的功能,生成各处理单元对应的单元配置文件;其中,单元配置文件包括处理单元的描述信息和运行环境参数;
传输子模块13,用于将各处理单元对应的代码包和单元配置文件上传至智能视频分析管理器。
作为优选方案,请参照图2,本发明实施例提供的一种视频分析系统,还包括结果解析模块M4,该模块具体如下:
结果解析模块M4,用于将待处理视频对应的视频分析结果传输至智能视频分析管理器;通过智能视频分析管理器,基于事件视频信息或事件图片信息,确定待处理视频对应的事件的视频或图片的位置信息,并根据位置信息,获取待处理视频对应的事件的视频或图片;其中,视频分析结果包括结构化数据和非结构化数据,结构化数据包括待处理视频对应的事件的事件类型、事件发生时间、以及事件视频信息或事件图片信息。
作为优选方案,视频分析模块M3,还用于利用与视频分析任务相关联的所有处理单元,对智能视频分析管理器下发的待处理视频进行分析处理,以使各处理单元输出待处理视频对应的事件的视频或图片。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
相比于现有技术,本发明实施例具有如下有益效果:
本发明提供了一种视频分析方法及系统,按照预设的封装流程,将第三方提供的业务逻辑文件封装为相对应的处理单元,使得各个处理单元能够各自具备独立功能,实现各个处理单元之间的松散耦合,以便基于标准的算法接口调用与实时的视频分析需求相关联的业务任务与处理单元,即调用相关算法,以减少视频分析过程中整体的数据运算量,从而提升业务应用和视频分析任务的运行效率,并扩展其应用场景。此外,根据所有处理单元的单元配置文件,在智能视频分析管理器中构建对应的业务应用和多个业务任务,并当智能视频分析管理器接收到任务启动信号时,调用与视频分析需求相对应的业务任务,作为视频分析任务,以通过智能视频分析管理器和智能视频分析运行环境的互相隔离,实现业务应用的构建、部署以及运行的相互隔离,以便业务开发人员理解业务应用和视频分析任务的创建运行过程以及相关调用方式,防止开发人员、质检人员和业务开发人员之间存在技术鸿沟,从而降低视频分析应用的开发难度与管理难度。
进一步地,在视频分析过程中,分别获取各个处理单元输出的待处理视频对应的事件的视频或图片,能够方便业务开发人员或者研发人员追溯其视频分析过程。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步的详细说明,应当理解,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围。特别指出,对于本领域技术人员来说,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种视频分析方法,其特征在于,包括:
按照预设的封装流程,将各个业务逻辑文件封装为对应的处理单元,并将各所述处理单元对应的代码包和单元配置文件上传至智能视频分析管理器;
在所述智能视频分析管理器中,基于所有所述单元配置文件,构建业务应用和多个业务任务,并当所述智能视频分析管理器接收到任务启动信号时,控制与视频分析需求相对应的智能视频分析运行环境中,调用与所述视频分析需求相对应的所述业务任务,作为视频分析任务;
通过所述智能视频分析运行环境,调用与所述视频分析任务相关联的所有所述处理单元,对所述智能视频分析管理器下发的待处理视频进行分析处理,以获得所述待处理视频对应的视频分析结果。
2.如权利要求1所述的一种视频分析方法,其特征在于,所述在所述智能视频分析管理器中,基于所有所述单元配置文件,构建业务应用和多个业务任务,并当所述智能视频分析管理器接收到任务启动信号时,控制与视频分析需求相对应的智能视频分析运行环境中,调用与所述视频分析需求相对应的所述业务任务,作为视频分析任务,具体为:
在所述智能视频分析管理器中,根据所有所述单元配置文件,构建所述业务应用,并基于所述业务应用和多个类型的任务信息,构建多个所述业务任务;其中,所述任务信息与所述业务任务一一对应,所述任务信息包括任务类型和智能视频分析运行环境;
当所述智能视频分析管理器接收到所述任务启动信号时,控制所述智能视频分析管理器根据所述任务启动信号,获取对应的所述视频分析需求,并基于所述视频分析需求,配置得到对应的任务配置信息;其中,所述任务配置信息包括数值类型参数、区域类型参数、时间类型以及字符串类型;
通过所述智能视频分析管理器,将所述业务应用的链路信息下发至与所述视频分析需求相对应的所述智能视频分析运行环境中,并根据所述任务配置信息,生成对应的任务启动指令,然后将所述任务启动指令下发至与所述视频分析需求相对应的所述智能视频分析运行环境,以使所述智能视频分析运行环境根据所述任务启动指令和所述链路信息调用与所述视频分析需求相对应的所述业务任务,作为所述视频分析任务。
3.如权利要求1所述的一种视频分析方法,其特征在于,所述按照预设的封装流程,将各个业务逻辑文件封装为对应的处理单元,并将各所述处理单元对应的代码包和单元配置文件上传至智能视频分析管理器,具体为:
按照预设的封装流程,将各所述业务逻辑文件封装为对应的所述处理单元;
对各所述处理单元进行打包,以获得各所述处理单元对应的所述代码包,并根据各所述处理单元的功能,生成各所述处理单元对应的所述单元配置文件;
将各所述处理单元对应的所述代码包和所述单元配置文件上传至所述智能视频分析管理器;
其中,所述单元配置文件包括所述处理单元的描述信息和运行环境参数。
4.如权利要求1所述的一种视频分析方法,其特征在于,在所述通过所述智能视频分析运行环境,调用与所述视频分析任务相关联的所有所述处理单元,对所述智能视频分析管理器下发的待处理视频进行分析处理,以获得所述待处理视频对应的视频分析结果之后,还包括:
将所述待处理视频对应的所述视频分析结果传输至所述智能视频分析管理器;其中,所述视频分析结果包括结构化数据和非结构化数据,所述结构化数据包括所述待处理视频对应的事件的事件类型、事件发生时间、以及事件视频信息或事件图片信息;
通过所述智能视频分析管理器,基于所述事件视频信息或事件图片信息,确定所述待处理视频对应的事件的视频或图片的位置信息,并根据所述位置信息,获取所述待处理视频对应的事件的视频或图片。
5.如权利要求4所述的一种视频分析方法,其特征在于,所述待处理视频对应的事件的视频或图片的获取,具体为:
利用与所述视频分析任务相关联的所有所述处理单元,对所述智能视频分析管理器下发的所述待处理视频进行分析处理,以使各所述处理单元输出所述待处理视频对应的事件的视频或图片。
6.如权利要求1所述的一种视频分析方法,其特征在于,所述处理单元为视频接入单元、算法处理单元或者业务处理单元;
其中,所述视频接入单元,用于接入所述智能视频分析管理器下发的视频,并对接入的视频进行解码处理,以获得对应的若干个第一视频帧;
所述算法处理单元,用于按照预设的视频帧分析算法,对各所述第一视频帧进行分析处理,以获得对应的第二视频帧;
所述业务处理单元,用于按照预设的业务处理逻辑,对所有所述第二视频帧进行分析处理,生成对应的事件分析结果,并将所述事件分析结果上传至所述智能视频分析管理器。
7.一种视频分析系统,其特征在于,包括:
封装模块,用于按照预设的封装流程,将各个业务逻辑文件封装为对应的处理单元,并将各所述处理单元对应的代码包和单元配置文件上传至智能视频分析管理器;
任务调用模块,用于在所述智能视频分析管理器中,基于所有所述单元配置文件,构建业务应用和多个业务任务,并当所述智能视频分析管理器接收到任务启动信号时,控制与视频分析需求相对应的智能视频分析运行环境中,调用与所述视频分析需求相对应的所述业务任务,作为视频分析任务;
视频分析模块,用于通过所述智能视频分析运行环境,调用与所述视频分析任务相关联的所有所述处理单元,对所述智能视频分析管理器下发的待处理视频进行分析处理,以获得所述待处理视频对应的视频分析结果。
8.如权利要求7所述的一种视频分析系统,其特征在于,所述任务调用模块,具体包括:
任务创建子模块,用于在所述智能视频分析管理器中,根据所有所述单元配置文件,构建所述业务应用,并基于所述业务应用和多个类型的任务信息,构建多个所述业务任务;其中,所述任务信息与所述业务任务一一对应,所述任务信息包括任务类型和智能视频分析运行环境;
信息配置子模块,用于当所述智能视频分析管理器接收到所述任务启动信号时,控制所述智能视频分析管理器根据所述任务启动信号,获取对应的所述视频分析需求,并基于所述视频分析需求,配置得到对应的任务配置信息;其中,所述任务配置信息包括数值类型参数、区域类型参数、时间类型以及字符串类型;
任务调用子模块,用于通过所述智能视频分析管理器,将所述业务应用的链路信息下发至与所述视频分析需求相对应的所述智能视频分析运行环境中,并根据所述任务配置信息,生成对应的任务启动指令,然后将所述任务启动指令下发至与所述视频分析需求相对应的所述智能视频分析运行环境,以使所述智能视频分析运行环境根据所述任务启动指令和所述链路信息调用与所述视频分析需求相对应的所述业务任务,作为所述视频分析任务。
9.如权利要求7所述的一种视频分析系统,其特征在于,所述封装模块,具体包括:
封装子模块,用于按照预设的封装流程,将各所述业务逻辑文件封装为对应的所述处理单元;
分析子模块,用于对各所述处理单元进行打包,以获得各所述处理单元对应的所述代码包,并根据各所述处理单元的功能,生成各所述处理单元对应的所述单元配置文件;其中,所述单元配置文件包括所述处理单元的描述信息和运行环境参数;
传输子模块,用于将各所述处理单元对应的所述代码包和所述单元配置文件上传至所述智能视频分析管理器。
10.如权利要求7所述的一种视频分析系统,其特征在于,还包括:
结果解析模块,用于将所述待处理视频对应的所述视频分析结果传输至所述智能视频分析管理器;通过所述智能视频分析管理器,基于所述事件视频信息或事件图片信息,确定所述待处理视频对应的事件的视频或图片的位置信息,并根据所述位置信息,获取所述待处理视频对应的事件的视频或图片;其中,所述视频分析结果包括结构化数据和非结构化数据,所述结构化数据包括所述待处理视频对应的事件的事件类型、事件发生时间、以及事件视频信息或事件图片信息;
所述视频分析模块,还用于利用与所述视频分析任务相关联的所有所述处理单元,对所述智能视频分析管理器下发的所述待处理视频进行分析处理,以使各所述处理单元输出所述待处理视频对应的视频或图片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211576682.1A CN115861775B (zh) | 2022-12-08 | 2022-12-08 | 一种视频分析方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211576682.1A CN115861775B (zh) | 2022-12-08 | 2022-12-08 | 一种视频分析方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115861775A CN115861775A (zh) | 2023-03-28 |
CN115861775B true CN115861775B (zh) | 2024-02-23 |
Family
ID=85671403
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211576682.1A Active CN115861775B (zh) | 2022-12-08 | 2022-12-08 | 一种视频分析方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115861775B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016045539A1 (zh) * | 2014-09-23 | 2016-03-31 | 烽火通信科技股份有限公司 | 基于复杂包交换系统的分布式ssm协议处理系统及方法 |
CN113807257A (zh) * | 2021-09-17 | 2021-12-17 | 深圳市商汤科技有限公司 | 算法应用元生成方法、装置、设备及计算机可读存储介质 |
WO2022121196A1 (zh) * | 2020-12-08 | 2022-06-16 | 鹏城实验室 | 一种可伸缩视觉计算系统 |
-
2022
- 2022-12-08 CN CN202211576682.1A patent/CN115861775B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016045539A1 (zh) * | 2014-09-23 | 2016-03-31 | 烽火通信科技股份有限公司 | 基于复杂包交换系统的分布式ssm协议处理系统及方法 |
WO2022121196A1 (zh) * | 2020-12-08 | 2022-06-16 | 鹏城实验室 | 一种可伸缩视觉计算系统 |
CN113807257A (zh) * | 2021-09-17 | 2021-12-17 | 深圳市商汤科技有限公司 | 算法应用元生成方法、装置、设备及计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
智能分析系统在公安视频监控中的应用研究;王昊宇;;中国市政工程;20190425(第02期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115861775A (zh) | 2023-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105975351A (zh) | 一种用户行为消息上报方法和装置 | |
WO2023029961A1 (zh) | 任务执行方法、系统、电子设备及计算机存储介质 | |
CN113556359B (zh) | 一种通讯协议转换方法、设备、系统及网关设备 | |
CN112286698A (zh) | 远程过程调用方法、装置以及远程过程调用执行方法 | |
CN110781180A (zh) | 一种数据筛选方法和数据筛选装置 | |
CN113596104B (zh) | 一种移动机器人和云服务器的数据传输方法及装置 | |
CN112699571B (zh) | 电力设备生产监造方法、装置、计算机设备和存储介质 | |
CN115861775B (zh) | 一种视频分析方法及系统 | |
CN115729683A (zh) | 任务处理方法、装置、系统、计算机设备和存储介质 | |
CN115550354A (zh) | 一种数据处理方法、装置及计算机可读存储介质 | |
CN116456496B (zh) | 资源调度的方法、存储介质及电子设备 | |
CN103955153A (zh) | 一种运动控制系统及方法 | |
WO2024108703A1 (zh) | 一种多目视频监控系统搭建方法及电子设备 | |
CN115150474A (zh) | 信息处理方法、装置、设备和存储介质 | |
CN116094919A (zh) | 通信网络的运行方法、装置、系统以及电子设备 | |
CN115550468A (zh) | 业务请求处理方法、装置、设备及介质 | |
CN112165529A (zh) | 一种低成本跨网络数据交换的方法、装置、设备和介质 | |
CN111897693A (zh) | 一种流式处理方法及装置 | |
WO2020185512A1 (en) | Usecase specification and runtime execution | |
CN114567559A (zh) | 数据分析模型的训练方法、装置及存储介质 | |
CN115953282B (zh) | 一种视频任务的处理方法及装置 | |
EP2819012B1 (en) | Automated compression of data | |
CN114640671B (zh) | 一种服务组件的管理方法、服务器和电子设备 | |
CN115640153B (zh) | 系统架构、消息处理方法、装置、电子设备及存储介质 | |
CN116708552B (zh) | 一种地铁微服务注册方法、装置、设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |