一种人员徘徊预警的检测方法、系统、终端及介质与流程

未命名 10-14 阅读:103 评论:0


1.本发明涉及智能识别技术领域,尤其涉及一种人员徘徊预警的检测方法、系统、终端及介质。


背景技术:

2.本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。
3.随着经济的快速发展,视频监控设备在我们生活中起着举足轻重的作用,为我们的生活带来了便利,也带来了安全,但是随着监控设备越来越多,需要更多的人员时时刻刻监控着,需要更多的人力和物力的投入,也会造成一部分的浪费。
4.对于复杂场景的的预警比如目前的徘徊预警研判,只采用单路视频研判出来的一组数据说服力较弱,存在误报警的情况,无法进行有效的预警研判。


技术实现要素:

5.为了解决上述背景技术中存在的技术问题,本发明提供一种人员徘徊预警的检测方法、系统、终端及介质,其可以通过对视频中目标进行解析归类,对某一类人多次出现在某一类场所提前预警,避免误报警的情况,大大减少潜在风险的发生。
6.为了实现上述目的,本发明采用如下技术方案:
7.本发明的第一个方面提供一种人员徘徊预警的检测方法。
8.一种人员徘徊预警的检测方法,包括:
9.基于获取的视频流数据,提取抓拍人脸特征图;
10.获取存储的布控人脸特征图,对布控人脸特征图和抓拍人脸特征图进行序列化,计算余弦值,在满足设定的余弦值阈值时,获取布控人脸特征图对应的人员信息,并推送至kafka告警topic数据中;
11.依据kafka告警topic数据,对每一条数据按照设定的徘徊预警筛查条件进行筛查,对满足条件的数据获取设备id对应设备组id并采用设备组device_id和人员person_id通过下划线连接作为key,将此条数据hset到redis中;
12.定时扫描redis中所有key,根据匹配规则获取满足条件所有key的集合,通过循环key集合获取每个key中所有抓拍数据,将抓拍数据按照设备id进行分组,当设备抓拍个数大于设置的y次,满足的设备个数加1,当设备个数大于设置的x个时,则满足person_id人员在device_id场所徘徊,进行预警。
13.进一步地,所述基于获取的视频流数据,提取抓拍人脸特征图的过程包括:对获取的视频流数据进行抽帧处理,得到每一帧图像;提取每一帧图像中的布控人脸特征图,并将布控人脸特征图上传到weedfs服务进行存储,将返回的人脸特征图的地址同解析的数据合并清洗后,推送至kafka结构化topic中。
14.进一步地,所述布控人脸特征图的存储过程包括:采集用户上传的人员身份及图
片信息,按照人员标签进行归类,提取图片中的布控人脸特征图,并存储到数据库。
15.进一步地,所述在满足设定的余弦值阈值时,还包括:通过索引下标获取到人员信息合并到结构化数据中。
16.进一步地,所述设定的徘徊预警筛查条件包括:用户配置的设备信息、出现时间段、被监测人员类型和被监测人员出现次数。
17.进一步地,所述key为某个人连续一段时间内,在一个设备组下所有抓拍的数据的结果集的唯一标识符。
18.进一步地,所述计算余弦值的过程包括:采用python语言的numpy对布控人脸特征图和抓拍人脸特征图进行序列化,得到布控向量和抓拍向量;根据布控向量和抓拍向量,计算余弦值。
19.本发明的第二个方面提供一种人员徘徊预警的检测系统。
20.一种人员徘徊预警的检测系统,包括:
21.特征提取模块,其被配置为:基于获取的视频流数据,提取抓拍人脸特征图;
22.计算模块,其被配置为:获取存储的布控人脸特征图,对布控人脸特征图和抓拍人脸特征图进行序列化,计算余弦值,在满足设定的余弦值阈值时,获取布控人脸特征图对应的人员信息,并推送至kafka告警topic数据中;
23.筛查模块,其被配置为:依据kafka告警topic数据,对每一条数据按照设定的徘徊预警筛查条件进行筛查,对满足条件的数据获取设备id对应设备组id并采用设备组device_id和人员person_id通过下划线连接作为key,将此条数据hset到redis中;
24.徘徊预警模块,其被配置为:定时扫描redis中所有key,根据匹配规则获取满足条件所有key的集合,通过循环key集合获取每个key中所有抓拍数据,将抓拍数据按照设备id进行分组,当设备抓拍个数大于设置的y次,满足的设备个数加1,当设备个数大于设置的x个时,则满足person_id人员在device_id场所徘徊,进行预警。
25.本发明的第三个方面提供一种计算机可读存储介质。
26.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一个方面所述的人员徘徊预警的检测方法中的步骤。
27.本发明的第四个方面提供一种计算机设备。
28.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述第一个方面所述的人员徘徊预警的检测方法中的步骤。
29.与现有技术相比,本发明的有益效果是:
30.本发明可以完成多路视频设备抓拍数据组合研判,对于研判条件可以进行动态更新并且设置即生效,高效且实时,对于一些重要场所对有人员多次出现的异常行为进行研判告警,有效预防不可控及危害人民财产安全的事件的发生,保证社会安全。同时本发明可以24小时不间断运行,不需要多人实时监视视频设备画面,节省人力成本。
31.本发明设计的方案中所有图片均会通过请求存入到weedfs文件系统中,占用存储空间较小且方便对图片裁剪相关的处理。
32.本发明中的告警结果会通过websocket的方式进行推送,减少连接资源消耗,高效且实时。
33.本发明中的特征比对及预警结果筛查使用python多进程和多线程进行处理,满足并发安全同时且能完成每秒万次数据量计算。
附图说明
34.构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
35.图1是本发明示出的人员徘徊预警的检测方法的流程图。
具体实施方式
36.下面结合附图与实施例对本发明作进一步说明。
37.应该指出,以下详细说明都是例示性的,旨在对本发明提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常理解的相同含义。
38.需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
39.需要注意的是,附图中的流程图和框图示出了根据本公开的各种实施例的方法和系统的可能实现的体系架构、功能和操作。应当注意,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分可以包括一个或多个用于实现各个实施例中所规定的逻辑功能的可执行指令。也应当注意,在有些作为备选的实现中,方框中所标注的功能也可以按照不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,或者它们有时也可以按照相反的顺序执行,这取决于所涉及的功能。同样应当注意的是,流程图和/或框图中的每个方框、以及流程图和/或框图中的方框的组合,可以使用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以使用专用硬件与计算机指令的组合来实现。
40.实施例一
41.如图1所示,本实施例提供了一种人员徘徊预警的检测方法,本实施例以该方法应用于服务器进行举例说明,可以理解的是,该方法也可以应用于终端,还可以应用于包括终端和服务器和系统,并通过终端和服务器的交互实现。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务器、云通信、中间件服务、域名服务、安全服务cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本技术在此不做限制。本实施例中,该方法包括以下步骤:
42.s1:采集用户上传的人员身份及图片信息,按照人员标签进行归类,对采集的图片信息通过视觉算法进行图片中人脸特征提取,并存储到数据库。
43.s2:获取监控设备视频流数据,对视频流数据抽帧后用s1步骤中同一版本视觉算
法对每一帧照片进行人脸特征提取,并将图片上传到weedfs服务进行存储,将返回的图片地址同解析的数据合并清洗后推送至kafka结构化topic中。
44.s3:首先读取s1步骤中人数据。利用python的numpy包对人员数据列表整体序列化并进行临时保存,然后订阅kafka结构化topic,对结构化数据逐条进行序列化并和人员数据列表进行1:n向量计算,当满足设置的余弦值阈值时,通过索引下标获取到人员信息合并到结构化数据中,推至kafka告警topic中。
45.s4:读取数据库获取用户配置的设备信息、出现时间段、被监测人员类型、出现次数等徘徊预警筛查条件,订阅s3步骤中kafka告警topic数据,对每一条数据按照条件进行筛查,对满足条件的数据用设备唯一id加人员唯一id为redis的key,通过hash数据结构存入redis中。
46.key作为某个人连续一段时间内(默认为1天),在一个设备组下所有抓拍的数据的结果集的唯一标识符,通过hgetall命令取出key中所包含的所有抓拍数据,将取出的数据集按照视频设备进行分组统计进行进一步研判,当满足在设备组中,x个设备中有y次抓拍结果集时,满足徘徊条件,将数据插入到数据库的同时并实时推送websocket中进行预警。
47.其中,徘徊筛选的过程为:
48.部分定义:
49.设备组:多个视频设备组成的集合,比如:xxx办公大楼,xxxktv
50.徘徊预警:
51.在连续的时间段(默认1天)内同一个人在多个视频设备组成设备组情况下,满足x个视频设备中每个视频设备抓拍不少于y次的情况即为徘徊预警。
52.筛选过程:
53.订阅kafka的人告警数据,筛选出满足条件的视频设备抓拍到的人数据,查询设备所对应的设备组信息,包含设备组唯一id及设备组名称;以设备组id加布控人唯一id作为key先将告警结果数据hset到redis中,如果抓拍数据为key集合中的第一条数据,在redis中设置key过期时间为86400秒;然后通过hgetall,命令取出该key下所有的人抓拍数据,首先判断抓拍数据条数相加是否大于等于(x*y)条,如果满足条件则按照设备id将抓拍数据进行分组统计,和设置的徘徊条件(x个设备下每个设备抓拍y次)进行比对。单个设备下有y次以上抓拍即加1,累计达到条件的设备个数大于等于x个以上即满足某个人徘徊的情况。
54.由于单个设备预警容易出现误报警的情况,容易出现很多不真实数据,比如学校大门前站岗的保安一直被抓拍,就会被预警,但是并不能算是徘徊预警,假想如果把学校周边的多个设备合并为一个设备组,如果某人员在学校设备组x个设备中,每个设备都出现y次,那这个人就基本认定一直在学校周边走动出现,更加符合徘徊条件,就可以报警,其极有可能出现危害社会的行为,从而提高报警的准确性。
55.s5:定时扫描s4步骤中redis数据,配合预警条件计算已抓拍次数,满足抓拍次数数据即徘徊预警数据,通过websocket推送至业务系统进行实时告警。
56.本实施例通过python语言的numpy对抓拍目标及布控目标特征值格式化进行向量计算响应的余弦值,对满足阈值的目标推入到kafka。
57.本实施例为满足研判数据实时及高效性,通过websocket方式进行数据推送。
58.本实施例通过python的opencv包读取视频流进行抽帧获取二进制流图片进行视
觉算法提取人脸特征。
59.本实施例对具体方案的一种案例性的说明,如设定某个参数或某个场景,做一次全过程的推演实施。
60.本次推演以一路视频流解析研判徘徊预警进行举例演示。
61.1)获取到视频流地址,对视频流进行抽帧处理,对图片进行算法解析;
62.2)对解析目标进行判断,如果有人脸目标则执行3),否则结束当前图片清洗操作;
63.3)对抽帧的图片进行上传weedfs程序,如果正常返回图片地址则执行4),否则结束当前操作;
64.4)将结构化的数据、视频设备、图片地址合并清洗推送至kafka中;
65.5)查询数据库待比对的人员列表数据,如果有人员数据则执行6),否则结束流程;
66.6)对kafak中数据和比对数据进行向量计算,如果有存在满足条件的抓拍数据推送kafka执行7),否则结束流程;
67.7)订阅上一步kafka的数据,查询配置的徘徊告警条件,告警数据满足徘徊条件则执行8),否则结束流程;
68.8)将告警数据存入redis,并定时扫描redis数据进行筛查,满足抓拍次数则执行9),否则结束流程;
69.9)通过websocket推送告警数据到应用层,流程结束。
70.本实施例在人与抓拍数据进行特征值比对过程中,使用python的pytorch包利用显卡进行向量计算,比对速度可以达到百万级每秒。
71.本实施例使用websocket推送告警数据,可以针对指定用户推送也可以进行广播的方式推送,与客户端进行长连接,有效的减少服务端与客户端之间的开销。
72.实施例二
73.本实施例提供了一种人员徘徊预警的检测系统。
74.一种人员徘徊预警的检测系统,包括:
75.特征提取模块,其被配置为:基于获取的视频流数据,提取抓拍人脸特征图;
76.计算模块,其被配置为:获取存储的布控人脸特征图,对布控人脸特征图和抓拍人脸特征图进行序列化,计算余弦值,在满足设定的余弦值阈值时,获取布控人脸特征图对应的人员信息,并推送至kafka告警topic数据中;
77.筛查模块,其被配置为:依据kafka告警topic数据,对每一条数据按照设定的徘徊预警筛查条件进行筛查,对满足条件的数据获取设备id对应设备组id并采用设备组device_id和人员person_id通过下划线连接作为key,将此条数据hset到redis中;
78.徘徊预警模块,其被配置为:定时扫描redis中所有key,根据匹配规则获取满足条件所有key的集合,通过循环key集合获取每个key中所有抓拍数据,将抓拍数据按照设备id进行分组,当设备抓拍个数大于设置的y次,满足的设备个数加1,当设备个数大于设置的x个时,则满足person_id人员在device_id场所徘徊,进行预警。
79.此处需要说明的是,上述特征提取模块、计算模块、筛查模块和徘徊预警模块与实施例一中的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为系统的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。
80.实施例三
81.本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例一所述的人员徘徊预警的检测方法中的步骤。
82.实施例四
83.本实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述实施例一所述的人员徘徊预警的检测方法中的步骤。
84.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
85.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
86.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
87.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
88.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random accessmemory,ram)等。
89.以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:
1.一种人员徘徊预警的检测方法,其特征在于,包括:基于获取的视频流数据,提取抓拍人脸特征图;获取存储的布控人脸特征图,对布控人脸特征图和抓拍人脸特征图进行序列化,计算余弦值,在满足设定的余弦值阈值时,获取布控人脸特征图对应的人员信息,并推送至kafka告警topic数据中;依据kafka告警topic数据,对每一条数据按照设定的徘徊预警筛查条件进行筛查,对满足条件的数据获取设备id对应设备组id并采用设备组device_id和人员person_id通过下划线连接作为key,将此条数据hset到redis中;定时扫描redis中所有key,根据匹配规则获取满足条件所有key的集合,通过循环key集合获取每个key中所有抓拍数据,将抓拍数据按照设备id进行分组,当设备抓拍个数大于设置的y次,满足的设备个数加1,当设备个数大于设置的x个时,则满足person_id人员在device_id场所徘徊,进行预警。2.根据权利要求1所述的人员徘徊预警的检测方法,其特征在于,所述基于获取的视频流数据,提取抓拍人脸特征图的过程包括:对获取的视频流数据进行抽帧处理,得到每一帧图像;提取每一帧图像中的布控人脸特征图,并将布控人脸特征图上传到weedfs服务进行存储,将返回的人脸特征图的地址同解析的数据合并清洗后,推送至kafka结构化topic中。3.根据权利要求1所述的人员徘徊预警的检测方法,其特征在于,所述布控人脸特征图的存储过程包括:采集用户上传的人员身份及图片信息,按照人员标签进行归类,提取图片中的布控人脸特征图,并存储到数据库。4.根据权利要求1所述的人员徘徊预警的检测方法,其特征在于,所述在满足设定的余弦值阈值时,还包括:通过索引下标获取到人员信息合并到结构化数据中。5.根据权利要求1所述的人员徘徊预警的检测方法,其特征在于,所述设定的徘徊预警筛查条件包括:用户配置的设备信息、出现时间段、被监测人员类型和被监测人员出现次数。6.根据权利要求1所述的人员徘徊预警的检测方法,其特征在于,所述key为某个人连续一段时间内,在一个设备组下所有抓拍的数据的结果集的唯一标识符。7.根据权利要求1所述的人员徘徊预警的检测方法,其特征在于,所述计算余弦值的过程包括:采用python语言的numpy对布控人脸特征图和抓拍人脸特征图进行序列化,得到布控向量和抓拍向量;根据布控向量和抓拍向量,计算余弦值。8.一种人员徘徊预警的检测系统,其特征在于,包括:特征提取模块,其被配置为:基于获取的视频流数据,提取抓拍人脸特征图;计算模块,其被配置为:获取存储的布控人脸特征图,对布控人脸特征图和抓拍人脸特征图进行序列化,计算余弦值,在满足设定的余弦值阈值时,获取布控人脸特征图对应的人员信息,并推送至kafka告警topic数据中;筛查模块,其被配置为:依据kafka告警topic数据,对每一条数据按照设定的徘徊预警筛查条件进行筛查,对满足条件的数据获取设备id对应设备组id并采用设备组device_id和人员person_id通过下划线连接作为key,将此条数据hset到redis中;徘徊预警模块,其被配置为:定时扫描redis中所有key,根据匹配规则获取满足条件所有key的集合,通过循环key集合获取每个key中所有抓拍数据,将抓拍数据按照设备id进行
分组,当设备抓拍个数大于设置的y次,满足的设备个数加1,当设备个数大于设置的x个时,则满足person_id人员在device_id场所徘徊,进行预警。9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一项所述的人员徘徊预警的检测方法中的步骤。10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7中任一项所述的人员徘徊预警的检测方法中的步骤。

技术总结
本发明涉及智能识别技术领域,提供了一种人员徘徊预警的检测方法、系统、终端及介质。该方法包括,基于获取的视频流数据,提取抓拍人脸特征图;获取存储的布控人脸特征图,对布控人脸特征图和抓拍人脸特征图进行序列化,计算余弦值,在满足设定的余弦值阈值时,获取布控人脸特征图对应的人员信息,并推送至Kafka告警Topic数据中;依据Topic数据,对每一条数据按照设定的徘徊预警筛查条件进行筛查,对满足条件的数据采用设备ID和人员ID为Redis的Key,通过Hash数据结构存入Redis数据中;定时扫描Redis数据,结合预警条件,计算已抓拍次数,满足抓拍次数的数据即为徘徊预警数据,进行预警。警。警。


技术研发人员:杨阳 李凡平 王堃
受保护的技术使用者:青岛以萨数据技术有限公司
技术研发日:2023.07.20
技术公布日:2023/10/8
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐