一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

对多摄像头的视频流进行多场景分析的方法和系统与流程

2022-03-09 00:57:56 来源:中国专利 TAG:


1.本说明书一个或多个实施例涉及视频分析技术领域,尤其涉及一种对多摄像头的视频流进行多场景分析的方法和系统。


背景技术:

2.在安防领域,需要对多个摄像头拍摄的视频进行多个场景分析,例如,分析是否有行人闯红灯、是否有人跌倒、电动车的驾驶员是否佩戴安全帽、车辆是否闯红灯等,进而根据分析结果采取相应的措施。


技术实现要素:

3.本说明书一个或多个实施例描述了一种对多摄像头的视频流进行多场景分析的方法和系统。
4.第一方面提供了一种对多摄像头的视频流进行多场景分析的方法,包括:
5.获取多个摄像头各自拍摄的视频流,并针对每一个摄像头的视频流配置至少一个对应的分析场景,每一个分析场景对应一个检测模型;
6.采用每一个分析场景所对应的检测模型,对该分析场景对应的每一个摄像头拍摄的视频流进行检测处理,得到该检测模型针对该摄像头的视频流的检测结果;
7.对该检测模型针对该摄像头的视频流的检测结果进行对应分析场景下的预警分析。
8.第二方面提供了一种对多摄像头的视频流进行多场景分析的系统,包括:
9.网络服务器,用于获取多个摄像头各自拍摄的视频流,并针对每一个摄像头的视频流配置至少一个对应的分析场景,每一个分析场景对应一个检测模型;
10.模型服务器,用于采用每一个分析场景所对应的检测模型,对该分析场景对应的每一个摄像头拍摄的视频流进行检测处理,得到该检测模型针对该摄像头的视频流的检测结果;
11.所述网络服务器还用于对该检测模型针对该摄像头的视频流的检测结果进行对应分析场景下的预警分析。
12.本说明书实施例提供的对多摄像头的视频流进行多场景分析的方法和系统,首先获取多个摄像头各自拍摄的视频流,并针对每一个摄像头的视频流配置至少一个对应的分析场景,然后采用每一个分析场景所对应的检测模型,对该分析场景对应的每一个摄像头拍摄的视频流进行检测处理,得到该检测模型针对该摄像头的视频流的检测结果,最后对该检测模型针对该摄像头的视频流的检测结果进行对应分析场景下的预警分析,至此实现对多个摄像头的视频流在多个分析场景下的预警分析,不仅可以提高预警分析的效率,而且整个预警分析过程有条不紊,具有部署简单、内存占用小、分析效率高、成本低等优点,对安防方面的改造具有重要意义。
附图说明
13.为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
14.图1是本说明书一个实施例中对多摄像头的视频流进行多场景分析的方法的流程示意图;
15.图2是本说明书一个实施例中的多摄像头的视频流进行多场景分析的系统的框架图;
16.图3是本说明书一个实施例中视频存储队列、检测模型和检测结果存储队列之间的对应关系图。
具体实施方式
17.下面结合附图,对本说明书提供的方案进行描述。
18.第一方面,本发明提供一种对多摄像头的视频流进行多场景分析的方法,参见图1和2,该方法包括如下步骤:
19.s102、获取多个摄像头各自拍摄的视频流,并针对每一个摄像头的视频流配置至少一个对应的分析场景,每一个分析场景对应一个检测模型;
20.在实际场景中,为实现本发明提供的方法可以搭建图2示出的系统架构,在该系统架构中,涉及到应用程序端application、网络服务器web server、模型服务器model server、存储装置,存储装置能够实现队列存储功能,将本方法中涉及到的多种数据存储到队列mq中。
21.本步骤s102可以由网络服务器实现。即网络服务器接入多个摄像头采集的视频流,然后对每一个摄像头配置至少一个分析场景。
22.在具体实施时,在所述获取多个摄像头各自拍摄的视频流之后,所述方法还可以包括:设置第一数量的视频存储队列;所述第一数量为对所述多个摄像头拍摄的视频流进行检测所需的检测模型的总数,所述视频存储队列和所述检测模型一一对应;将每一个摄像头拍摄的视频流存储至对应的分析场景所对应的检测模型对应的视频存储队列中。
23.也就是说,根据所用到的检测模型的总个数设置视频存储队列的个数,例如,针对接入的所有摄像头的数据进行场景分析,一共需要用到4个检测模型,则设置4个视频存储队列。每一个视频存储队列用来存储对应的检测模型对应的分析场景下的所有摄像头拍摄的视频流。
24.可理解的是,设置的视频存储队列位于上述存储装置中,网络服务器在为每一个摄像头配置分析场景后,可以将摄像头采集的数据流发送至视频存储队列中进行存储。
25.举例1:参见图3,网络服务器一共接入两个摄像头camera1和camera2的视频流,camera1需要监测行人闯入和行人跌倒两个场景,则为camera1配置行人闯入场景和行人跌倒场景。camera2需要监测行人跌倒一个场景,则为camera2配置行人跌倒场景。其中,行人闯入场景需要用到行人检测模型,行人跌倒场景需要用到姿态估计模型,而这两个模型均存储在模型服务器model server中。由于涉及到两个检测模型,因此设置两个视频存储队
列q1和q2,视频存储队列q1对应行人检测模型,q2对应姿态估计模型,因此采用视频存储队列q1存储camera1的视频流,采用视频存储队列q2存储camera1和camera2的视频流。
26.s104、采用每一个分析场景所对应的检测模型,对该分析场景对应的每一个摄像头拍摄的视频流进行检测处理,得到该检测模型针对该摄像头的视频流的检测结果;
27.可理解的是,该步骤由模型服务器实现,模型服务器可以加载多个检测模型,每一个检测模型都有自己的检测算法或者称之为推理算法,能够对视频流进行检测分析,得到对应的检测结果。
28.在本发明中,模型服务器会根据需要加载所需要的检测模型,然后通过检测模型对对应分析场景下的每一个摄像头的视频流进行检测处理,得到该检测模型针对该摄像头的视频流的检测结果。可见,一个视频流的检测结果对应一个摄像头和一个检测模型。
29.在具体实施时,s104中采用每一个分析场景所对应的检测模型,对该分析场景对应的每一个摄像头拍摄的视频流进行检测处理,可以包括:采用每一个检测模型对对应的视频存储队列中存储的每一个摄像头拍摄的视频流进行检测处理。
30.具体的,模型服务器会从存储装置中对应的视频存储队列中获取视频流中的视频帧,逐帧获取,然后采用该视频存储队列对应的检测模型进行逐帧检测分析。这样有利于检测模型正确获取到对应的视频流,避免出现检测模型获取到非对应的视频流的问题发生。
31.针对上述举例1,采用行人闯入场景对应的行人检测模型对行人闯入场景对应的camera1的视频流进行检测处理,具体为针对这一视频流中每一个视频帧进行是否有行人的检测,得到每一个视频帧中是否有行人甚至行人位置的检测结果。采用行人跌倒场景对应的姿态估计模型对行人跌倒场景对应的camera1的视频流进行检测处理,具体为针对这一视频流中每一个视频帧进行行人姿态的检测处理,得到每一个视频帧中的行人姿态的检测结果。采用行人跌倒场景对应的姿态估计模型对行人跌倒场景对应的camera2的视频流进行检测处理,具体为针对这一视频流中每一个视频帧进行行人姿态的检测处理,得到每一个视频帧中的行人姿态的检测结果。
32.进一步的,参见图3,在设置了两个视频存储队列q1和q2的基础上,行人检测模型直接对视频存储队列q1中的视频流进行检测处理,而视频存储队列q1中存储的是camera1的视频流,则检测结果为camera1和行人检测模型对应的检测结果,可以将该检测结果存储至一个检测结果存储队列c1m1中。姿态估计模型直接对视频存储队列q2中camera1的视频流进行检测处理,得到的检测结果为camera1和行姿态估计模型对应的检测结果,可以将该检测结果存储至一个检测结果存储队列c1m2中。姿态估计模型还会直接对视频存储队列q2中camera2的视频流进行检测处理,得到的检测结果为camera2和姿态估计模型对应的检测结果,可以将该检测结果存储至一个检测结果存储队列c2m2中。这里设置了三个检测结果存储队列,便于存储检测结果,避免检测结果和其它的数据混合从而难以区分。
33.也就是说,本发明提供的方法还可以包括:设置第二数量的检测结果存储队列;一个检测结果存储队列用于存储一个检测模型针对一个摄像头的视频流的检测结果。例如,上述举例中,设置了三个检测结果存储队列c1m1、c2m2和c1m2。可见,第二数量由所需检测模型的数量和摄像头的数量决定。
34.可理解的是,该步骤可以由存储装置实现,存储装置设置了第二数量的检测结果存储队列,便于将不同的数据存储在不同的队列中。在此基础上,下文中的s106具体可以包
括:从每一个检测结果存储队列中获取检测结果,并对获取的检测结果进行对应分析场景下的预警分析。实际上s106由网络服务器实现,因此网络服务器会从存储装置的检测结果存储队列中获取检测结果进行预警分析,因此在s104中设置检测结果存储队列也便于网络服务器在s106中获取到对应的检测结果。
35.s106、对该检测模型针对该摄像头的视频流的检测结果进行对应分析场景下的预警分析。
36.可理解的是,所谓的预警分析是指网络服务器分析检测结果是否满足预警的条件。例如,针对行人闯入场景,如果在多个连续的视频帧中的某个特定区域内均出现了某个行人,才认为这个行人存在闯入特定区域的行为。而检测结果只是检测出各个视频帧中是否有行人以及行人的所在位置之类的信息,并未给出某个行人是否存在闯入行为的逻辑判断结果,而预警分析就是根据检测结果给出视频流中是否存在分析场景对应的预警信息的逻辑判断结果。
37.同样的,姿态估计模型给出的检测结果为视频帧中的行为存在何种姿态的结果,例如,手脚的位置、头部的位置、头部和脚部的高度差等。至于这种姿态是否构成跌倒姿态,姿态估计模型的检测结果中是没有给出的,因此网络服务器可以设置阈值参数,在头部和脚步的高度值小于阈值时认为发生了跌倒,而非弯腰行为。可见网络服务器的预警分析是指根据检测结果进一步进行逻辑分析和判断。
38.在具体实施时,本发明提供的方法还可以包括:设置第三数量的预警存储队列,一个预警存储队列用于存储一个摄像头拍摄的视频流对应的预警分析结果;在接收到应用程序端对一个摄像头对应的预警分析结果的获取请求时,从该摄像头对应的预警存储队列中获取预警分析结果,并将获取到的预警分析结果发送至所述应用程序端。
39.可理解的是,设置预警存储队列的步骤可以由存储装置实现,在存储装置中设置第三数量的预警存储队列,预警存储队列的数量和摄像头的数量相同,预警存储队列和摄像头是一一对应的,一个预警存储队列可以存储一个摄像头的视频流在各种分析场景下的预警分析结果。
40.相对于应用程序端来说,网络服务器、存储装置和模型服务器为后端设备,当用户在应用程序端上提出查看针对某个摄像头的预警分析结果的请求(即上述获取请求)时,后端设备中的存储装置会从该摄像头对应的预警存储队列中获取预警分析结果展示在应用程序端的界面上,以供用户了解某个摄像头观察到的情况。
41.当然除了用户主动获取预警分析结果之外,本发明提供的方法还可以包括:将对该检测模型针对该摄像头的视频流的检测结果在对应分析场景下的预警分析结果发送至应用程序端进行展示。
42.可理解的是,该步骤也可以由存储装置实现,也就是说,当网络服务器在进行预警分析完成,并将预警分析结果发送至预警存储队列中后,存储装置就会将预警存储队列中的预警分析结果发送至应用程序端,当用户登录应用程序端后就会看到相应的预警分析结果。
43.在具体实施时,本发明提供的方法还可以包括:在接收到应用程序端对一个摄像头的视频流的预览请求时,将该摄像头拍摄的视频流发送至所述应用程序端的播放窗口进行播放。
44.可理解的是,该步骤可以由网络服务器实现,也可以由存储装置实现,网络服务器或存储装置在接收到预览请求时,就会将摄像头中的视频流发送至应用程序端进行播放,以便用户观看和分析。
45.总上,上文中实际到主要硬件汇总如下:
46.(1)网络服务器:接入多个摄像头拍摄的视频流;对每一个摄像头的视频流配置对应的分析场景;将各个摄像头的视频流存放至存储装置中的对应队列中;对检测结果进行预警分析,将预警分析结果存放至存储装置中的对应队列中;当然网络服务器也可以将预警分析结果发送至应用程序端。
47.(2)存储装置:可以存储原始的视频流;存储预警分析结果;存储检测结果等。
48.(3)模型服务器:从存储装置中获取视频流进行检测处理,并将检测结果存放到存储装置的对应队列中。
49.可理解的是,本发明针对多摄像头的视频流实现多个场景下的分析,实现了多摄像头、多分析场景和一个框架的方法,即在一个框架内实现对多个摄像头和多个分析场景的分析,对每路摄像头的各个分析场景进行监测分析,得到预警信息。
50.本发明提供的对多摄像头的视频流进行多场景分析的方法,首先获取多个摄像头各自拍摄的视频流,并针对每一个摄像头的视频流配置至少一个对应的分析场景,然后采用每一个分析场景所对应的检测模型,对该分析场景对应的每一个摄像头拍摄的视频流进行检测处理,得到该检测模型针对该摄像头的视频流的检测结果,最后对该检测模型针对该摄像头的视频流的检测结果进行对应分析场景下的预警分析,至此实现对多个摄像头的视频流在多个分析场景下的预警分析,不仅可以提高预警分析的效率,而且整个预警分析过程有条不紊,具有部署简单、内存占用小、分析效率高、成本低等优点,对安防方面的改造具有重要意义。
51.第二方面,本发明提供一种对多摄像头的视频流进行多场景分析的系统,该系统包括:
52.网络服务器,用于获取多个摄像头各自拍摄的视频流,并针对每一个摄像头的视频流配置至少一个对应的分析场景,每一个分析场景对应一个检测模型;
53.模型服务器,用于采用每一个分析场景所对应的检测模型,对该分析场景对应的每一个摄像头拍摄的视频流进行检测处理,得到该检测模型针对该摄像头的视频流的检测结果;
54.所述网络服务器还用于对该检测模型针对该摄像头的视频流的检测结果进行对应分析场景下的预警分析。
55.在一些实施例中,所述网络服务器还用于:将对该检测模型针对该摄像头的视频流的检测结果在对应分析场景下的预警分析结果发送至应用程序端进行展示。
56.在一些实施例中,本系统还可以包括:
57.存储装置,用于在所述网络服务器获取多个摄像头各自拍摄的视频流之后,设置第一数量的视频存储队列;所述第一数量为对所述多个摄像头拍摄的视频流进行检测所需的检测模型的总数,所述视频存储队列和所述检测模型一一对应;将每一个摄像头拍摄的视频流存储至对应的分析场景所对应的检测模型对应的视频存储队列中;
58.对应的,所述模型服务器具体用于:采用每一个检测模型对对应的视频存储队列
中存储的每一个摄像头拍摄的视频流进行检测处理。
59.在一些实施例中,所述存储装置还用于:设置第二数量的检测结果存储队列;一个检测结果存储队列用于存储一个检测模型针对一个摄像头的视频流的检测结果;
60.对应的,所述网络服务器中对该检测模型针对该摄像头的视频流的检测结果进行对应分析场景下的预警分析,包括:从每一个检测结果存储队列中获取检测结果,并对获取的检测结果进行对应分析场景下的预警分析。
61.可理解的是,本发明实施例提供的系统,有关内容的解释、举例、有益效果等部分可以参考上述方法中的相应部分,此处不再赘述。
62.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
63.本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、挂件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
64.以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献