CN111586369B - 聚集检测方法、装置、电子设备及可读存储介质 - Google Patents
聚集检测方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN111586369B CN111586369B CN202010506528.1A CN202010506528A CN111586369B CN 111586369 B CN111586369 B CN 111586369B CN 202010506528 A CN202010506528 A CN 202010506528A CN 111586369 B CN111586369 B CN 111586369B
- Authority
- CN
- China
- Prior art keywords
- objects
- head
- video frame
- current
- aggregation
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
- H04N7/181—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/52—Surveillance or monitoring of activities, e.g. for recognising suspicious objects
- G06V20/53—Recognition of crowd images, e.g. recognition of crowd congestion
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Closed-Circuit Television Systems (AREA)
- Image Analysis (AREA)
Abstract
本申请提供一种聚集检测方法、装置、电子设备及可读存储介质,该方法包括:获取多个对象的头部在监控视频的当前视频帧中的当前位置;根据多个对象的头部在监控视频的当前视频帧中的当前位置,确定是否出现对象聚集。使用该方法,即使在人群拥挤的场景下,仍然获得较高聚集检测的准确率。
Description
技术领域
本申请涉及计算机视觉技术领域,尤其涉及一种聚集检测方法、装置、电子设备及可读存储介质。
背景技术
公共场所经常会出现人群聚集的现象,特别是在节假日期间这种现象更为明显。人群聚集导致人群安全的管理难度增加,易诱发安全事故。例如,当出现人群聚集时,易发生碰撞、跌倒,甚至引发踩踏事件。因此,实时检测公共场所是否出现人群聚集有利于人群安全的管理。
现有技术中,服务器可以识别监控视频中的用户,且在监控视频中标注用户的人体检测框,人体检测框中的像素块均为该用户在视频中的像素块。服务器通过判断监控区域中用户的人体检测框之间的位置关系,判断是否出现人群聚集。
但是,使用现有技术的方法,可能导致对人群聚集检测的准确率低。
发明内容
本申请提供一种聚集检测方法、装置、电子设备及可读存储介质,用于解决现有技术中人群聚集检测的准确率低的问题。
第一方面,本申请提供一种聚集检测方法,包括:
获取多个对象的头部在监控视频的当前视频帧中的当前位置;根据多个对象的头部在监控视频的当前视频帧中的当前位置,确定是否出现对象聚集。
在一种可选的实现方式中,所述获取多个对象的头部在监控视频的当前视频帧中的当前位置,包括:
获取第一对象的头部在所述监控视频的初始视频帧中的初始位置,所述第一对象为所述多个对象中的任一对象,所述初始视频帧为所述当前视频帧之前的任意一个视频帧;根据所述初始位置,确定所述监控视频中所述第一对象的头部的初始检测框;基于所述第一对象的头部的初始检测框,在所述监控视频中跟踪所述第一对象的头部,获取所述第一对象的头部在监控视频的当前视频帧中的当前位置。
在一种可选的实现方式中,所述获取第一对象的头部在所述监控视频的初始视频帧中的初始位置,包括:
确定所述第一对象的头部在所述初始视频帧中所占的像素坐标;根据所述所占的像素坐标,确定所述初始位置。
在一种可选的实现方式中,所述根据所述所占的像素坐标,确定所述初始位置,包括:
将所述所占的像素坐标的中心位置作为所述初始位置。
在一种可选的实现方式中,所述根据所述初始位置,确定所述监控视频中所述第一对象的头部的初始检测框,包括:
根据所述初始位置的纵坐标和拍摄所述监控视频的拍摄装置的透视图,获取所述初始位置对应的像素值,所述透视图用于表征纵坐标与像素值的对应关系,像素值表征世界坐标中单位距离对应的像素距离;根据所述初始位置对应的像素值和所述初始位置,确定所述监控视频中第一对象的头部的初始检测框。
在一种可选的实现方式中,所述根据多个对象的头部在监控视频的当前视频帧中的当前位置,确定是否出现对象聚集,包括:
根据所述多个对象的头部在监控视频的当前视频帧中的当前位置,确定所述当前视频帧中所述多个对象的头部两两之间的距离;根据所述多个对象的头部两两之间的距离,确定是否出现对象聚集。
在一种可选的实现方式中,所述根据所述多个对象的头部在监控视频的当前视频帧中的当前位置,确定所述当前视频帧中所述多个对象的头部两两之间的距离,包括:
确定所述当前视频帧中第一对象的头部的当前位置和第二对象的头部的当前位置之间的中心位置,所述第二对象为所述多个对象中除所述第一对象外的任一对象;根据所述中心位置的纵坐标以及拍摄所述监控视频的拍摄装置的透视图,确定所述第一对象和所述第二对象的中心位置像素值;确定所述当前视频帧中第一对象的头部的当前位置和第二对象的头部的当前位置之间的距离;根据所述当前视频帧中所述第一对象的头部的当前位置和第二对象的头部的当前位置之间的距离,以及所述中心位置像素值,确定所述第一对象的头部和所述第二对象的头部之间的距离。
在一种可选的实现方式中,所述根据所述多个对象的头部两两之间的距离,确定是否出现对象聚集,包括:
根据所述多个对象的头部两两之间的距离建立无向图,所述无向图以对象的头部作为顶点,头部之间的距离小于第一预设阈值的两个顶点之间存在一条边;若所述无向图中存在顶点数大于第二预设阈值的连通区域,则确定出现对象聚集,并将所述连通区域作为一个聚集区域。
在一种可选的实现方式中,所述确定出现对象聚集之后,还包括:
根据聚集区域中各对象的头部在当前视频帧中的当前位置以及在初始视频帧中的初始位置,确定聚集区域中对象聚集的方向。
在一种可选的实现方式中,所述根据聚集区域中各对象的头部在当前视频帧中的当前位置以及在初始视频帧中的初始位置,确定聚集区域中对象聚集的方向,包括:
根据聚集区域中各对象的头部在当前视频帧中的当前位置以及在初始视频帧中的初始位置,分别确定聚集区域中每个对象的头部的移动方向;根据聚集区域中非同向对象的数量,确定聚集区域中对象聚集的方向,其中,所述非同向对象为所述聚集区域中,与除所述非同向对象之外的对象中大于第三预设阈值的对象的头部移动方向不同的对象。
在一种可选的实现方式中,所述根据聚集区域中非同向对象的数量,确定对象聚集的方向,包括:
若所述聚集区域中非同向对象的数量与所述聚集区域的总对象数量的比值大于第四预设阈值,则确定对象聚集的方向为同心聚集。
在一种可选的实现方式中,所述根据聚集区域中非同向对象的数量,确定对象聚集的方向,包括:
若所述聚集区域中非同向对象的数量与所述聚集区域的总对象数量的比值小于或等于第四预设阈值,则确定对象聚集的方向为同向聚集。
在一种可选的实现方式中,在确定未出现对象聚集之后,还包括:
根据分散区域中各对象的头部在当前视频帧中的当前位置以及在最末聚集视频帧中的初始位置,分别确定分散区域中每个对象的头部的移动方向,所述最末聚集视频帧中包括至少一个分散区域;根据分散区域中非同向对象的数量,确定对象分散的方向,其中,所述非同向对象为所述分散区域中,与除所述非同向对象之外的对象中大于第三预设阈值的对象的头部移动方向不同的对象。
在一种可选的实现方式中,所述根据分散区域中非同向对象的数量,确定对象分散的方向,包括:
若非同向对象的数量与所述分散区域的总对象数量的比值小于或等于第四预设阈值,则确定对象分散的方向为同向分散。
在一种可选的实现方式中,所述确定出现对象聚集之后,还包括:
获取聚集区域中各对象的头部在所述当前视频帧中的当前检测框;向终端设备发送所述各对象的头部在当前视频帧中的当前检测框对应的像素坐标,以使所述终端设备在当前视频帧中显示所述当前检测框。
第二方面,本申请实施例提供一种聚集检测装置,包括:
获取模块,用于获取多个对象的头部在监控视频的当前视频帧中的当前位置;处理模块,用于根据多个对象的头部在监控视频的当前视频帧中的当前位置,确定是否出现对象聚集。
在一种可选的实现方式中,所述获取模块具体用于:
获取第一对象的头部在所述监控视频的初始视频帧中的初始位置,所述第一对象为所述多个对象中的任一对象,所述初始视频帧为所述当前视频帧之前的任意一个视频帧;以及,根据所述初始位置,确定所述监控视频中所述第一对象的头部的初始检测框;以及,基于所述第一对象的头部的初始检测框,在所述监控视频中跟踪所述第一对象的头部,获取所述第一对象的头部在监控视频的当前视频帧中的当前位置。
在一种可选的实现方式中,所述获取模块具体用于:
确定所述第一对象的头部在所述初始视频帧中所占的像素坐标;以及,根据所述所占的像素坐标,确定所述初始位置。
在一种可选的实现方式中,所述获取模块具体用于:
将所述所占的像素坐标的中心位置作为所述初始位置。
在一种可选的实现方式中,所述获取模块具体用于:
根据所述初始位置的纵坐标和拍摄所述监控视频的拍摄装置的透视图,获取所述初始位置对应的像素值,所述透视图用于表征纵坐标与像素值的对应关系,像素值表征世界坐标中单位距离对应的像素距离;以及,
根据所述初始位置对应的像素值和所述初始位置,确定所述监控视频中第一对象的头部的初始检测框。
在一种可选的实现方式中,所述处理模块具体用于:
根据所述多个对象的头部在监控视频的当前视频帧中的当前位置,确定所述当前视频帧中所述多个对象的头部两两之间的距离;以及,
根据所述多个对象的头部两两之间的距离,确定是否出现对象聚集。
在一种可选的实现方式中,所述处理模块具体用于:
确定所述当前视频帧中第一对象的头部的当前位置和第二对象的头部的当前位置之间的中心位置,所述第二对象为所述多个对象中除所述第一对象外的任一对象;以及,根据所述中心位置的纵坐标以及拍摄所述监控视频的拍摄装置的透视图,确定所述第一对象和所述第二对象的中心位置像素值;以及,确定所述当前视频帧中第一对象的头部的当前位置和第二对象的头部的当前位置之间的距离;以及,根据所述当前视频帧中所述第一对象的头部的当前位置和第二对象的头部的当前位置之间的距离,以及所述中心位置像素值,确定所述第一对象的头部和所述第二对象的头部之间的距离。
在一种可选的实现方式中,所述处理模块具体用于:
根据所述多个对象的头部两两之间的距离建立无向图,所述无向图以对象的头部作为顶点,头部之间的距离小于第一预设阈值的两个顶点之间存在一条边;以及,若所述无向图中存在顶点数大于第二预设阈值的连通区域,则确定出现对象聚集,并将所述连通区域作为一个聚集区域。
在一种可选的实现方式中,所述处理模块还用于:
根据聚集区域中各对象的头部在当前视频帧中的当前位置以及在初始视频帧中的初始位置,确定聚集区域中对象聚集的方向。
在一种可选的实现方式中,所述处理模块具体用于:
根据聚集区域中各对象的头部在当前视频帧中的当前位置以及在初始视频帧中的初始位置,分别确定聚集区域中每个对象的头部的移动方向;以及,根据聚集区域中非同向对象的数量,确定聚集区域中对象聚集的方向,其中,所述非同向对象为所述聚集区域中,与除所述非同向对象之外的对象中大于第三预设阈值的对象的头部移动方向不同的对象。
在一种可选的实现方式中,所述处理模块具体用于:
若所述聚集区域中非同向对象的数量与所述聚集区域的总对象数量的比值大于第四预设阈值,则确定对象聚集的方向为同心聚集。
在一种可选的实现方式中,所述处理模块具体用于:
若所述聚集区域中非同向对象的数量与所述聚集区域的总对象数量的比值小于或等于第四预设阈值,则确定对象聚集的方向为同向聚集。
在一种可选的实现方式中,所述处理模块还用于:
根据分散区域中各对象的头部在当前视频帧中的当前位置以及在最末聚集视频帧中的初始位置,分别确定分散区域中每个对象的头部的移动方向,所述最末聚集视频帧中包括至少一个分散区域;以及,根据分散区域中非同向对象的数量,确定对象分散的方向,其中,所述非同向对象为所述分散区域中,与除所述非同向对象之外的对象中大于第三预设阈值的对象的头部移动方向不同的对象。
在一种可选的实现方式中,所述处理模块具体用于:
若非同向对象的数量与所述分散区域的总对象数量的比值小于或等于第四预设阈值,则确定对象分散的方向为同向分散。
在一种可选的实现方式中,所述处理模块还用于:
获取聚集区域中各对象的头部在所述当前视频帧中的当前检测框;向终端设备发送所述各对象的头部在当前视频帧中的当前检测框对应的像素坐标,以使所述终端设备在当前视频帧中显示所述当前检测框。
第三方面,本申请提供一种电子设备,包括:
存储器,用于存储程序指令;处理器,用于调用并执行所述存储器中的程序指令,执行上述第一方面所述的方法步骤。
第四方面,本申请提供一种可读存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序用于执行上述第一方面所述的方法。
本申请所提供的聚集检测方法、装置、电子设备及可读存储介质,在获取到多个对象在监控视频的当前视频帧中的当前位置后,基于该多个对象在监控视频的当前视频帧中的当前位置,可以确定是否出现对象聚集,由于相比于身体,对象的头部不容易被遮挡,因此,即使在人群拥挤的场景,人的身体被遮挡,使用本实施例确定是否出现对象聚集时仍然获得较高的准确率,因此,本实施例能够极大提升聚集检测,例如人群聚集检测的准确率。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1(a)为监控视频一视频帧中的人群示意图一;
图1(b)为监控视频一视频帧中的人群示意图二;
图2为本申请提供的聚集检测方法适用的场景示意图;
图3为本申请实施例提供的聚集检测方法的流程示意图;
图4为本申请实施例提供的聚集检测方法的流程示意图;
图5为本申请提供的聚集检测方法的获取拍摄装置的透视图的流程示意图;
图6为本申请提供的构建拍摄装置的透视图的示意图;
图7为本申请中的拍摄装置的透视图的示意图;
图8为本申请提供的聚集检测方法的确定初始检测框的流程示意图;
图9为本申请提供的初始检测框的示意图;
图10为本申请实施例提供的聚集检测方法的流程示意图;
图11为本申请提供的聚集检测方法适用的场景示意图二;
图12为本申请提供的终端设备的界面示意图;
图13为本申请实施例提供的一种聚集检测装置的模块结构图;
图14为本申请提供的电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了便于人群安全的管理,在很多公共场所安装有摄像头,摄像头用于拍摄公共场所内的监控视频。管理人员可以通过观看监控视频确定公共场所是否存在安全隐患,如通过监控视频确定一监控区域内人群聚集时,可以及时组织疏散,以防止发生安全事故。因此,实时检测监控区域内是否出现人群聚集,能够有助于人群安全的管理。
现有技术中,主要基于标注监控视频中用户的人体检测框的方式判断是否出现人群聚集。以下结合图1(a)和图1(b)对现有技术中的人群聚集检测方法进行说明。图1(a)为监控视频一视频帧中的人群示意图一,图1(b)为监控视频一视频帧中的人群示意图二。现有技术中,服务器可以识别监控视频中的多个用户,且在监控视频中标注每个用户的人体检测框,进而服务器判断监控区域中用户的人体检测框之间的位置关系,当多个用户的人体检测框之间的位置关系满足一定的条件,例如人体检测框之间的距离小于一定的阈值时,可以确定出现了人群聚集。如图1(a)所示,该视频帧中包括3个用户,服务器可以在监控视频中标注该3个用户的人体检测框,如图1(a)中的虚线框所示,服务器根据监控视频中人体检测框的位置关系,确定是否发生人群聚集。
上述图1(a)中因为用户的数量少,用户之间没有遮挡,因此,服务器能够标注监控视频中每个用户的人体检测框,进而基于人体检测框判断是否出现人群聚集。但在人群拥挤的场景中,如图1(b)所示,用户的遮挡现象严重,服务器能够在监控视频中标注不被遮挡的用户的人体检测框,如图1(b)中的虚线框所示,但在监控视频中不能标注被遮挡的用户的人体检测框。在这种情况下,服务器判断是否出现聚集所使用的人体检测框并不能代表实际的人群,因此,使用这些人体检测框所得出的是否出现人群聚集的结果可能并不准确。因此,使用现有技术的方法可能导致对人群聚集检测的准确率低。
考虑到现有技术中基于人体检测框检测是否出现人群聚集所导致的人群聚集检测的准确率低的问题,本申请实施例基于用户身体中不容易被遮挡的头部的信息来检测是否出现人群聚集,从而使得对人群聚集检测的准确率得到极大提升。
图2为本申请提供的聚集检测方法适用的场景示意图。如图2所示,该场景中包括:至少一个拍摄装置和聚集检测装置。其中,拍摄装置可以为摄像头、摄影机等能够拍摄监控视频的电子设备,聚集检测装置可以为服务器、服务器中的芯片或处理器,或者与播放监控视频的终端设备连接的电子设备等。示例性的,在商场中,聚集检测装置可以为商场设置的服务器,或者与监控显示屏连接的其他电子设备等。图2中以一个拍摄装置为例进行说明。
下面结合具体的实施例对本申请提供的聚集检测方法进行说明,下面这几个实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图3为本申请实施例提供的聚集检测方法的流程示意图,该方法的执行主体可以为上述的聚集检测装置,该聚集检测装置可由任意的软件和/或硬件实现。如图3所示,上述方法可以包括:
S301、获取多个对象的头部在监控视频的当前视频帧中的当前位置。
本申请实施例中,对象可以是指人,相应的,聚集检测是指检测是否出现人群聚集。或者,对象还可以其他的主体,例如动物等。为便于描述,本申请以下实施例以对象为人为例进行说明。
可选的,上述多个对象可以指出现在当前视频帧中的对象。聚集检测装置可以获取拍摄装置拍摄的监控视频,进而在监控视频中识别对象的头部,从而得到每个对象在当前视频帧中的当前位置。
可选的,可以采用识别模型来识别对象的头部,识别模型用于表征对象的头部与像素块的特征的对应关系,即可以将监控视频输入至识别模型中,以得到监控视频中对象的头部。其中,识别模型可以识别对象的头部的方式具体可以为根据监控视频中像素块的特征,将与对象的头部的特征相似度大于阈值的像素块确定为对象的头部对应的像素块,进而在监控视频中识别对象的头部。或者,还可以预先存储有大量的对象的头部的图像,获取监控视频中的像素块的特征与对象的头部的图像的特征的相似度,进而将相似度大于阈值的像素块确定为对象的头部对应的像素块,进而在监控视频中识别对象的头部。应注意,本实施例中对如何在监控视频中识别对象的头部的方式不做限制。
应理解,鉴于监控视频是由多个连续的视频帧构成的,因此本实施例中在监控视频中识别对象的头部可以为:在包括当前视频帧以及当前视频帧之前视频帧中的识别对象的头部。
在识别到对象的头部的基础上,可以得到对象的头部在当前视频帧中的当前位置。
S302、根据多个对象的头部在监控视频的当前视频帧中的当前位置,确定是否出现对象聚集。
在得到多个对象的头部在当前视频帧中的当前位置之后,可以基于多个对象的头部之间的位置关系,确定是否出现聚集。示例性的,当多个对象中有超过一定比例的对象的位置比较靠近,则可以确定出现了人群聚集。
本实施例中,在获取到多个对象在监控视频的当前视频帧中的当前位置后,基于该多个对象在监控视频的当前视频帧中的当前位置,可以确定是否出现对象聚集,由于相比于身体,对象的头部不容易被遮挡,因此,即使在人群拥挤的场景,人的身体被遮挡,使用本实施例确定是否出现对象聚集时仍然获得较高的准确率,因此,本实施例能够极大提升聚集检测,例如人群聚集检测的准确率。
具体实施过程中,监控视频包括多个视频帧,当一个对象进入拍摄装置的拍摄范围后,随着对象的移动,对象在监控视频中不同视频帧中的位置会不断发生变化,因此,可以通过对对象的头部进行跟踪来持续获得同一个对象在监控视频的连续视频帧中的位置。相应的,上述步骤S401中获取对象在当前视频帧中的位置可以包括如下两种方式。
第一种方式中,如果当前视频帧为开始对一个对象进行跟踪的起始帧,则可以通过前述的方式识别对象的头部,以得到对象的头部在该起始帧中所占的像素坐标,进而根据该像素坐标,确定对象的头部的当前位置。例如,可以将所占的像素坐标的中心位置、左上角位置或右下角位置等作为当前位置。
第二种方式中,如果当前视频帧不为上述的起始帧,则说明对象已经开始跟踪,则可以通过跟踪得到对象的头部在当前视频帧中的当前位置。
图4为本申请实施例提供的聚集检测方法的流程示意图,如图4所示,通过跟踪得到对象的头部在当前视频帧中的当前位置的过程包括:
S401、获取第一对象的头部在监控视频的初始视频帧中的初始位置。
其中,上述第一对象为上述多个对象中的任一对象,上述初始视频帧为上述当前视频帧之前的任意一个视频帧。
具体的,上述初始视频帧是指开始对上述第一对象进行跟踪的起始帧。
可选的,与上述第一种可选方式相同,可以通过前述的方式识别第一对象的头部,以得到第一对象的头部在该初始视频帧中所占的像素坐标,进而根据该像素坐标,确定对象的头部的初始位置。
作为一种可选方式,可以将第一对象的头部在该初始视频帧中所占的像素坐标的中心位置、左上角位置或者右下角位置等作为初始位置。
S402、根据上述初始位置,确定监控视频中上述第一对象的头部的初始检测框。
其中,初始检测框中可以包括第一对象的头部对应的像素块或第一述对象的头部的部分像素块。也就是说,本实施例中的初始检测框的面积可以与对象的头部在视频帧中的面积呈预设比例。
以上述初始位置为第一对象的头部在初始视频帧中所占的像素坐标的中心为例,可以以该起始位置为中心,选择固定尺寸的框,流入固定数量的像素作为上述初始检测框。或者,可以基于拍摄装置的透视图以及起始位置得到上述初始检测框。这种方式的具体执行过程将在下述实施例中进行详细说明。
S403、基于上述第一对象的头部的初始检测框,在监控视频中跟踪上述第一对象的头部,获取上述当前视频帧中上述第一对象的当前位置。
示例性的,可以使用卡尔曼滤波跟踪方法等跟踪上述初始检测框,从而得到初始检测框所代表的第一对象的头部在当前视频帧中的当前位置。
本实施例中,根据第一对象的初始位置确定第一对象的头部的初始检测框,进而,通过对初始检测框的跟踪得到第一对象的头部在当前视频帧中的当前位置,这种方式保证了不同视频帧中的对象的头部为同一对象的头部,进一步提高了聚集检测的准确率。
以下说明上述步骤S402中基于起始位置和拍摄装置的透视图确定初始检测框的过程。
首先对拍摄装置的透视图进行说明。
在拍摄装置安装好后,可以根据拍摄装置拍摄的图像,获取拍摄装置的透视图。应理解,拍摄装置的透视图与拍摄装置的安装高度和安装角度有关,因此在拍摄装置的安装高度和安装角度固定的场景下,拍摄装置的透视图不变。若拍摄装置的安装位置或安装角度发生变化,则需要重新获取拍摄装置的透视图,本实施例中不做详细描述,具体参照图5的相关描述。
图5为本申请提供的聚集检测方法的获取拍摄装置的透视图的流程示意图。如图5所示,获取拍摄装置的透视图的过程可以包括:
S501,获取拍摄装置拍摄的测试图像,测试图像中包括多个测试对象。
测试图像可以为拍摄装置拍摄的测试监控视频中的任一帧视频帧。其中,测试监控视频为拍摄装置在安装好后、且投入使用前拍摄的监控视频,该测试图像中包括多个测试对象。应理解,为了便于与上述实施例中监控视频中的对象进行区分,此处用测试对象进行区分。示例性的,如测试图像中包括如上述图1(a)中的3个对象。
S502,根据测试图像,构建透视图。
可选的,可以根据测试图像,构建拍摄装置的透视图。
应理解,透视图用于拍摄装置拍摄的图像中的纵坐标与像素值的对应关系,其中,像素值表征世界坐标中单位距离对应的像素距离。
图6为本申请提供的构建拍摄装置的透视图的示意图。拍摄装置,如图6中的相机,可以拍摄包括对象的测试图像,对象在世界坐标系中的高度H为1.7m,而在测试图像中对象可能对应3个像素块。而这3个像素块的高度即为世界坐标系下1.7m对应的像素距离h,假设在测试图像中对象的头的纵坐标为y1,对象的脚的纵坐标为y2,则该像素距离h为(y2-y1)。
对应的,本实施例中可以获取测试图像中的纵坐标处世界坐标系下单位距离对应的像素距离。应理解,纵坐标可以为对象的预设部位的纵坐标,如对象的脚、头、眼睛等部位对应的纵坐标,其中,本实施例中对象的预设部位可以为对象的脚。
如图1(a)所示,对象距离拍摄装置的距离不同,则测试图像中对象对应的像素距离也不同,因此,测试图像中不同的纵坐标对应的像素距离不同。
本实施例中,可以在测试图像中,标注测试对象的人体检测框,如图1(a)中的虚线框所示,且选取不同纵坐标处的人体检测框,并获取每个纵坐标处的人体检测框的像素距离,像素距离为人体检测框的长度(即人体检测框的长边的像素长度)。示例性的,本实施例中选择图1(a)中3个不同纵坐标(对象的脚的纵坐标)处的对象的人体检测框,且获取3个人体检测框的长度(即人体检测框的长边的像素距离)。
本实施例中,可以根据世界坐标系中的预设距离和每个纵坐标处的人体检测框的像素距离,获取透视图。示例性的,以每个对象的在世界坐标系中的身高为1.7m计算,该1.7m即为世界坐标系中的预设距离,且根据该3个人体检测框的像素距离,可以获取每个纵坐标处世界坐标系中单位距离对应的像素距离。
假设在测试图像中,尺度是线性变化的,本实施例中可以根据不同纵坐标处世界坐标系中单位距离对应的像素距离,使用一次函数或者二次函数来拟合,进而得到测试图像中每个纵坐标处世界坐标系中单位距离对应的像素距离,即得到该拍摄装置的透视图,即perspective map。图7为本申请中的拍摄装置的透视图的示意图。图7中的A所示为测试图像,该测试图像中包括多个测试对象,本实施例中根据该测试图像可以获取如图7中B所示的透视图。应理解,透视图中以灰度表征世界坐标系中单位距离对应的像素距离,相同纵坐标处的灰度相同,不同纵坐标处的灰度不同。
在上述对于透视图的描述的基础上,以下对上述步骤S402中基于起始位置和拍摄装置的透视图确定初始检测框的过程进行说明。
图8为本申请提供的聚集检测方法的确定初始检测框的流程示意图,如图8所示,该过程包括:
S801、根据上述初始位置的纵坐标和拍摄上述监控视频的拍摄装置的透视图,获取上述初始位置对应的像素值。
其中,上述透视图用于表征纵坐标与像素值的对应关系,像素值表征世界坐标中单位距离对应的像素距离。
基于上述对拍摄装置的透视图的说明,本实施例中可以根据初始位置的纵坐标和拍摄装置的透视图,获取初始位置对应的像素值,其中,像素值即为初始位置的纵坐标处的世界坐标中单位距离对应的像素距离,如vi。
S802、根据上述初始位置对应的像素值和上述初始位置,确定上述监控视频中第一对象的头部的初始检测框。
可选的,可以根据初始位置对应的像素值vi和初始位置(xi,yi),获取监控视频中第一对象的头部的初始检测框。应理解,初始检测框中的像素块均为对象头部对应的像素块。
本实施例中可以根据世界坐标系下对象的头部的预设尺寸和初始位置对应的像素值,获取距离初始位置的像素距离。假设世界坐标系下对象的头部的预设尺寸为0.4m,则距离初始位置的像素距离为0.4vi。进一步的,本实施例中可以根据初始位置和距离初始位置的像素距离,获取对象的头部的初始检测框。
图9为本申请提供的初始检测框的示意图。如图9所示,如阴影部分为对象的头部,对象的头部的初始位置为D位置(xi,yi),距离初始位置的像素距离为0.4vi,应注意,该初始位置为对象的头所占的像素块的中心位置。相对应的,可以得到监控视频中对象的头部的初始检测框左上角的像素坐标可以为(xi-0.2vi,yi-0.2vi),右下角的像素坐标可以为(xi+0.2vi,yi+0.2vi),同理的,右上角的像素坐标可以为(xi+0.2vi,yi-0.2vi),左下角的像素坐标可以为(xi-0.2vi,yi+0.2vi),进而得到监控视频中对象的头部的初始检测框,如图9中的虚线框所示。
因为监控视频中不同纵坐标处对应的像素值不同,本实施例中根据初始位置的纵坐标,能够确定与初始位置对应的像素值,进而更为准确的确定初始检测框。如果采用固定尺寸的检测框的方式标注对象的头部,则对于同一对象而言,对象的纵坐标不同,对象在监控视频中占用的像素块的多少也不同,而采用固定尺寸的检测框标注对象的头部,一方面不能准确确定对象的头部的位置,另一方面采用检测框追踪对象的准确性也较低。而本实施例中,对于同一对象而言,对象处于不同的纵坐标处时,可以获取不同尺寸的检测框,能够更为准确的确定对象的头部的位置,还能够提高对象的追踪准确性。
以下说明上述步骤S402中根据多个对象的头部在监控视频的当前视频帧中的当前位置,确定是否出现对象聚集的可选处理过程。
图10为本申请实施例提供的聚集检测方法的流程示意图,如图10所示,上述步骤S402的一种可选方式包括:
S1001、根据上述多个对象的头部在监控视频的当前视频帧中的当前位置,确定上述当前视频帧中上述多个对象的头部两两之间的距离。
S1002、根据上述多个对象的头部两两之间的距离,确定是否出现对象聚集。
在上述步骤S1001中,针对视频帧中的多个对象,需要分别计算两两对象的头部之间的距离。以下以第一对象和第二对象为例说明,第一对象和第二对象为视频帧中的任意两个对象。第二对象为多个对象中除第一对象之外的任一对象。
可选的,可以基于第一对象和第二对象的头部的中心位置以及透视图,得到第一对象和第二对象的头部之间的距离。
具体的,首先,确定当前视频帧中第一对象的头部的当前位置和第二对象的头部的当前位置之间的中心位置;进而,根据中心位置的纵坐标以及拍摄监控视频的拍摄装置的透视图,确定第一对象和第二对象的中心位置像素值;进而,确定当前视频帧中第一对象的头部的当前位置和第二对象的头部的当前位置之间的距离;根据当前视频帧中第一对象的头部的当前位置和第二对象的头部的当前位置之间的距离,以及上述中心位置像素值,确定第一对象的头部和第二对象的头部之间的距离。
假设第一对象的头部和第二对象的头部在当前视频帧中的位置分别为(xi,yi)和(xj,yj),则第一对象的头部和第二对象的头部之间的距离为相应的,第一对象的头部和第二对象的头部的中心位置为[midx,midy]=[(xi+xj)/2,(yi+yj)/2]。根据拍摄装置的透视图,即perspective map(pmap),可以得到中心位置像素值为p_value=pmap[midy]。进而,将第一对象的头部和第二对象的头部之间的距离Lij转化为第一对象的头部和第二对象的头部的真实距离Lreal=Lij/p_value。
在上述过程中,结合透视图得到第一对象和第二对象的头部之间的真实距离,能够提升距离的准确度。
在上述步骤SS1002中,针对两两对象头部之间的距离,判断距离是否小于第一预设阈值,若是,则在两个对象之间建立一条边否则不建立边,遍历当前视频帧中所有的对象,根据上面的距离关系建立一个无向图。即根据对象的头部两两之间的距离建立无向图,该无向图以对象的头部为顶点,头部之间的距离小于预设阈值的两个顶点之间存在一条边。如果无向图中存在顶点数大于第二预设阈值的连通区域,则确定出现对象聚集,并将该连通区域作为一个聚集区域。
示例性的,可以通过深度优先搜索(DFS)和宽度优先搜索(BFS)算法,从构建的无向图中找到互相连接的节点区域,如果这个节点区域中的节点数大于人数第二预设阈值(例如5),则说明该节点区域中对象发生了聚集,该节点区域可以作为以连通区域。应理解,当前视频帧中可能存在一个或多个连通区域。
在确定出现对象聚集之后,可以通过如下的方式确定对象聚集的方向。
可选的,根据聚集区域中各对象的头部在当前视频帧中的当前位置以及在初始视频帧中的初始位置,确定聚集区域中对象聚集的方向。
在确定当前视频帧中对象是否出现聚集时,可能确定出多个聚集区域,针对每个聚集区域,均可以使用本实施例确定聚集区域中对象聚集的方向。
具体的,首先根据聚集区域中各对象的头部在当前视频帧中的当前位置以及在初始视频帧中的初始位置,分别确定聚集区域中每个对象的头部的移动方向。进而,根据聚集区域中非同向对象的数量,确定对象聚集的方向,其中,该非同向对象为聚集区域中,与除非同向对象之外的对象中大于第三预设阈值的对象的头部移动方向不同的对象。
若聚集区域中非同向对象的数量与聚集区域的总对象数量的比值大于第四预设阈值,则确定对象聚集的方向为同心聚集。若聚集区域中非同向对象的数量与聚集区域的总对象数量的比值小于或等于第四预设阈值,则确定对象聚集的方向为同向聚集。
示例性的,假设某个对象的ID为i,初始视频帧对应的拍摄时间为0,当前视频帧对应的拍摄时间为t,表示ID为i的对象的头部在初始视频帧中的初始位置,表示ID为i的对象的头部在当前视频帧中的当前位置。则可以使用计算得出ID为i的对象的移动方向。对聚集区域中每个对象的行走方向vi分别计算与其他对象行走方向vj的角度,如果角度大于某个阈值,例如60度,则认为对象i与对象j行走方向不同,如果聚集区域中有超过N/4数量(第三预设阈值)的对象与对象i行走方向不同,则认为对象i是一个非同向对象。如果有超过N/2数量(第四预设阈值)的对象按照不同行走方向与其他对象聚集,则认为该聚集区域中对象聚集的方向是同心聚集,否则是同向聚集。其中,N可以指聚集区域中的聚集的对象数量。
上述实施例中,对象的头部在当前视频帧中的当前位置可以通过前述实施例的对初始检测框的头部跟踪的方式得到,进而基于当前位置和初始位置确定聚集方式,从而使得当前位置判断准确,进而保证聚集方式判断正确。
具体实施过程中,上述的确定是否出现对象聚集的过程可以按照预设的周期进行,当某个周期中判断对象不再出现聚集时,则可以判断开始出现对象分散。以下对人群分散的过程进行说明。
在某个周期中,根据前述的实施例如果判断未出现对象聚集,则说明对象开始分散,可以通过如下过程确定人群分散的方向。
首先,根据分散区域中各对象的头部在当前视频帧中的当前位置以及在最末聚集视频帧中的初始位置,分别确定分散区域中每个对象的头部的移动方向,最末聚集视频帧中包括至少一个分散区域,进而,根据分散区域中非同向对象的数量,确定对象分散的方向,其中,该非同向对象为上述分散区域中,与除非同向对象之外的对象中大于第三预设阈值的对象的头部移动方向不同的对象。
其中,上述最末聚集视频帧可以是指当前周期的上一周期中所使用的视频帧,在最末聚集视频帧中,对象在聚集区域中仍然出现聚集。最末聚集视频中的分散区域即为最末聚集视频帧中对象未分散时的聚集区域。
针对分散区域中的每个对象,可以使用与上述判断聚集方向同样的方式,判断非同向对象的数量。如果非同向对象的数量与分散区域的总对象数量的比值大于第四预设阈值,则确定对象分散的方向为同心分散,如果非同向对象的数量与分散区域的总对象数量的比值小于或等于第四预设阈值,则确定对象分散的方向为同向分散。
当分散的方向为同向分散时,可以进一步统计分散区域中所有对象的移动方向,将所有对象的移动方向的向量相加得到方向向量结果vall,定义从左到右方向为vl=>r=[1,0],从右到左方向为vr=>l=[-1,0],从远到近方向为vf=>n=[0,1],从近到远方向为vn=>f=[0,-1]。将vall与该4个方向向量分别计算夹角,取夹角最小的方向为同向分散的方向。
作为一种可选的实施方式,在确定对象聚集后,还可以获取聚集区域中各对象的头部在当前视频帧中的当前检测框。获取方式与前述获取初始检测框的方式相同,不再赘述。进而,向终端设备发各对象的头部在当前视频帧中的当前检测框对应的像素坐标,以使终端设备在当前视频帧中显示当前检测框。
在该种场景下,图11为本申请提供的聚集检测方法适用的场景示意图二。如图11所示,相较于上述图3,该场景中还可以包括终端设备,终端设备用于播放监控视频。本实施例中的终端设备可以包括但不限于为移动终端设备或固定终端设备。移动终端设备包括但不限于个人数字助理(Personal Digital Assistant,简称:PDA)、平板电脑、便携设备(例如,便携式计算机、袖珍式计算机或手持式计算机)等。固定终端包括但不限于台式计算机、监控显示屏等等。
示例性的,图12为本申请提供的终端设备的界面示意图。如图12所示,终端设备的界面上显示有当前视频帧,且在当前视频帧中显示聚集区域对象头部的当前检测框。
图13为本申请实施例提供的一种聚集检测装置的模块结构图,如图13所示,该装置1300包括:
获取模块1301,用于获取多个对象的头部在监控视频的当前视频帧中的当前位置。
处理模块1302,用于根据多个对象的头部在监控视频的当前视频帧中的当前位置,确定是否出现对象聚集。
作为一种可选的实施方式,获取模块1301具体用于:
获取第一对象的头部在所述监控视频的初始视频帧中的初始位置,所述第一对象为所述多个对象中的任一对象,所述初始视频帧为所述当前视频帧之前的任意一个视频帧;以及,根据所述初始位置,确定所述监控视频中所述第一对象的头部的初始检测框;以及,基于所述第一对象的头部的初始检测框,在所述监控视频中跟踪所述第一对象的头部,获取所述第一对象的头部在监控视频的当前视频帧中的当前位置。
作为一种可选的实施方式,获取模块1301具体用于:
确定所述第一对象的头部在所述初始视频帧中所占的像素坐标;以及,根据所述所占的像素坐标,确定所述初始位置。
作为一种可选的实施方式,获取模块1301具体用于:
将所述所占的像素坐标的中心位置作为所述初始位置。
作为一种可选的实施方式,获取模块1301具体用于:
根据所述初始位置的纵坐标和拍摄所述监控视频的拍摄装置的透视图,获取所述初始位置对应的像素值,所述透视图用于表征纵坐标与像素值的对应关系,像素值表征世界坐标中单位距离对应的像素距离;以及,
根据所述初始位置对应的像素值和所述初始位置,确定所述监控视频中第一对象的头部的初始检测框。
作为一种可选的实施方式,处理模块1302具体用于:
根据所述多个对象的头部在监控视频的当前视频帧中的当前位置,确定所述当前视频帧中所述多个对象的头部两两之间的距离;以及,
根据所述多个对象的头部两两之间的距离,确定是否出现对象聚集。
作为一种可选的实施方式,处理模块1302具体用于:
确定所述当前视频帧中第一对象的头部的当前位置和第二对象的头部的当前位置之间的中心位置,所述第二对象为所述多个对象中除所述第一对象外的任一对象;以及,根据所述中心位置的纵坐标以及拍摄所述监控视频的拍摄装置的透视图,确定所述第一对象和所述第二对象的中心位置像素值;以及,确定所述当前视频帧中第一对象的头部的当前位置和第二对象的头部的当前位置之间的距离;以及,根据所述当前视频帧中所述第一对象的头部的当前位置和第二对象的头部的当前位置之间的距离,以及所述中心位置像素值,确定所述第一对象的头部和所述第二对象的头部之间的距离。
作为一种可选的实施方式,处理模块1302具体用于:
根据所述多个对象的头部两两之间的距离建立无向图,所述无向图以对象的头部作为顶点,头部之间的距离小于第一预设阈值的两个顶点之间存在一条边;以及,若所述无向图中存在顶点数大于第二预设阈值的连通区域,则确定出现对象聚集,并将所述连通区域作为一个聚集区域。
作为一种可选的实施方式,处理模块1302还用于:
根据聚集区域中各对象的头部在当前视频帧中的当前位置以及在初始视频帧中的初始位置,确定聚集区域中对象聚集的方向。
作为一种可选的实施方式,处理模块1302具体用于:
根据聚集区域中各对象的头部在当前视频帧中的当前位置以及在初始视频帧中的初始位置,分别确定聚集区域中每个对象的头部的移动方向;以及,根据聚集区域中非同向对象的数量,确定聚集区域中对象聚集的方向,其中,所述非同向对象为所述聚集区域中,与除所述非同向对象之外的对象中大于第三预设阈值的对象的头部移动方向不同的对象。
作为一种可选的实施方式,处理模块1302具体用于:
若所述聚集区域中非同向对象的数量与所述聚集区域的总对象数量的比值大于第四预设阈值,则确定对象聚集的方向为同心聚集。
作为一种可选的实施方式,处理模块1302具体用于:
若所述聚集区域中非同向对象的数量与所述聚集区域的总对象数量的比值小于或等于第四预设阈值,则确定对象聚集的方向为同向聚集。
作为一种可选的实施方式,处理模块1302还用于:
根据分散区域中各对象的头部在当前视频帧中的当前位置以及在最末聚集视频帧中的初始位置,分别确定分散区域中每个对象的头部的移动方向,所述最末聚集视频帧中包括至少一个分散区域;以及,根据分散区域中非同向对象的数量,确定对象分散的方向,其中,所述非同向对象为所述分散区域中,与除所述非同向对象之外的对象中大于第三预设阈值的对象的头部移动方向不同的对象。
作为一种可选的实施方式,处理模块1302具体用于:
若非同向对象的数量与所述分散区域的总对象数量的比值小于或等于第四预设阈值,则确定对象分散的方向为同向分散。
作为一种可选的实施方式,处理模块1302还用于:
获取聚集区域中各对象的头部在所述当前视频帧中的当前检测框;向终端设备发送所述各对象的头部在当前视频帧中的当前检测框对应的像素坐标,以使所述终端设备在当前视频帧中显示所述当前检测框。
本申请实施例提供的聚集检测装置,可以执行上述方法实施例中的方法步骤,其实现原理和技术效果类似,在此不再赘述。
需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,确定模块可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上确定模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(application specific integrated circuit,ASIC),或,一个或多个微处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(centralprocessing unit,CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘solid state disk(SSD))等。
图14为本申请提供的电子设备的结构示意图。该电子设备例如可以是上述实施例中的聚集检测装置。如图14所示,该电子设备1400包括:存储器1401和至少一个处理器1402。
存储器1401,用于存储程序指令。
处理器1402,用于在程序指令被执行时实现本实施例中的聚集检测方法,具体实现原理可参见上述实施例,本实施例此处不再赘述。
该电子设备1400还可以包括及输入/输出接口1403。
输入/输出接口1403可以包括独立的输出接口和输入接口,也可以为集成输入和输出的集成接口。其中,输出接口用于输出数据,输入接口用于获取输入的数据,上述输出的数据为上述方法实施例中输出的统称,输入的数据为上述方法实施例中输入的统称。
可选的,本申请实施例还提供一种存储介质,所述存储介质中存储有指令,当其在计算机上运行时,使得计算机执行如上述图4至图12所示实施例的方法。
可选的,本申请实施例还提供一种运行指令的芯片,所述芯片用于执行上述图4至图12所示实施例的方法。
本申请实施例还提供一种程序产品,所述程序产品包括计算机程序,所述计算机程序存储在存储介质中,至少一个处理器可以从所述存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序时可实现上述图4至图12所示实施例的方法。
在本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系;在公式中,字符“/”,表示前后关联对象是一种“相除”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中,a,b,c可以是单个,也可以是多个。
可以理解的是,在本申请实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请实施例的范围。
可以理解的是,在本申请的实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (16)
1.一种聚集检测方法,其特征在于,包括:
获取多个对象的头部在监控视频的当前视频帧中的当前位置;
根据多个对象的头部在监控视频的当前视频帧中的当前位置,确定是否出现对象聚集;
所述获取多个对象的头部在监控视频的当前视频帧中的当前位置,包括:
获取第一对象的头部在所述监控视频的初始视频帧中的初始位置,所述第一对象为所述多个对象中的任一对象,所述初始视频帧为所述当前视频帧之前的任意一个视频帧;
根据所述初始位置的纵坐标和拍摄所述监控视频的拍摄装置的透视图,获取所述初始位置对应的像素值,所述透视图用于表征纵坐标与像素值的对应关系,像素值表征世界坐标中单位距离对应的像素距离;
根据所述初始位置对应的像素值和所述初始位置,确定所述监控视频中第一对象的头部的初始检测框;
基于所述第一对象的头部的初始检测框,在所述监控视频中跟踪所述第一对象的头部,获取所述第一对象的头部在监控视频的当前视频帧中的当前位置。
2.根据权利要求1所述的方法,其特征在于,所述获取第一对象的头部在所述监控视频的初始视频帧中的初始位置,包括:
确定所述第一对象的头部在所述初始视频帧中所占的像素坐标;
根据所述所占的像素坐标,确定所述初始位置。
3.根据权利要求2所述的方法,其特征在于,所述根据所述所占的像素坐标,确定所述初始位置,包括:
将所述所占的像素坐标的中心位置作为所述初始位置。
4.根据权利要求1所述的方法,其特征在于,所述根据多个对象的头部在监控视频的当前视频帧中的当前位置,确定是否出现对象聚集,包括:
根据所述多个对象的头部在监控视频的当前视频帧中的当前位置,确定所述当前视频帧中所述多个对象的头部两两之间的距离;
根据所述多个对象的头部两两之间的距离,确定是否出现对象聚集。
5.根据权利要求4所述的方法,其特征在于,所述根据所述多个对象的头部在监控视频的当前视频帧中的当前位置,确定所述当前视频帧中所述多个对象的头部两两之间的距离,包括:
确定所述当前视频帧中第一对象的头部的当前位置和第二对象的头部的当前位置之间的中心位置,所述第二对象为所述多个对象中除所述第一对象外的任一对象;
根据所述中心位置的纵坐标以及拍摄所述监控视频的拍摄装置的透视图,确定所述第一对象和所述第二对象的中心位置像素值;
确定所述当前视频帧中第一对象的头部的当前位置和第二对象的头部的当前位置之间的距离;
根据所述当前视频帧中所述第一对象的头部的当前位置和第二对象的头部的当前位置之间的距离,以及所述中心位置像素值,确定所述第一对象的头部和所述第二对象的头部之间的距离。
6.根据权利要求4所述的方法,其特征在于,所述根据所述多个对象的头部两两之间的距离,确定是否出现对象聚集,包括:
根据所述多个对象的头部两两之间的距离建立无向图,所述无向图以对象的头部作为顶点,头部之间的距离小于第一预设阈值的两个顶点之间存在一条边;
若所述无向图中存在顶点数大于第二预设阈值的连通区域,则确定出现对象聚集,并将所述连通区域作为一个聚集区域。
7.根据权利要求1-6任一项所述的方法,其特征在于,在确定出现对象聚集之后,还包括:
根据聚集区域中各对象的头部在当前视频帧中的当前位置以及在初始视频帧中的初始位置,确定聚集区域中对象聚集的方向。
8.根据权利要求7所述的方法,其特征在于,所述根据聚集区域中各对象的头部在当前视频帧中的当前位置以及在初始视频帧中的初始位置,确定聚集区域中对象聚集的方向,包括:
根据所述聚集区域中各对象的头部在当前视频帧中的当前位置以及在初始视频帧中的初始位置,分别确定聚集区域中每个对象的头部的移动方向;
根据聚集区域中非同向对象的数量,确定聚集区域中对象聚集的方向,其中,所述非同向对象为所述聚集区域中,与除所述非同向对象之外的对象中大于第三预设阈值的对象的头部移动方向不同的对象。
9.根据权利要求8所述的方法,其特征在于,所述根据聚集区域中非同向对象的数量,确定对象聚集的方向,包括:
若所述聚集区域中非同向对象的数量与所述聚集区域的总对象数量的比值大于第四预设阈值,则确定对象聚集的方向为同心聚集。
10.根据权利要求8所述的方法,其特征在于,所述根据聚集区域中非同向对象的数量,确定对象聚集的方向,包括:
若所述聚集区域中非同向对象的数量与所述聚集区域的总对象数量的比值小于或等于第四预设阈值,则确定对象聚集的方向为同向聚集。
11.根据权利要求1-6任一项所述的方法,其特征在于,在确定未出现对象聚集之后,还包括:
根据分散区域中各对象的头部在当前视频帧中的当前位置以及在最末聚集视频帧中的初始位置,分别确定分散区域中每个对象的头部的移动方向,所述最末聚集视频帧中包括至少一个分散区域;
根据分散区域中非同向对象的数量,确定对象分散的方向,其中,所述非同向对象为所述分散区域中,与除所述非同向对象之外的对象中大于第三预设阈值的对象的头部移动方向不同的对象。
12.根据权利要求11所述的方法,其特征在于,所述根据分散区域中非同向对象的数量,确定对象分散的方向,包括:
若非同向对象的数量与所述分散区域的总对象数量的比值小于或等于第四预设阈值,则确定对象分散的方向为同向分散。
13.根据权利要求1-6任一项所述的方法,其特征在于,在确定出现对象聚集之后,还包括:
获取聚集区域中各对象的头部在所述当前视频帧中的当前检测框;
向终端设备发送所述各对象的头部在当前视频帧中的当前检测框对应的像素坐标,以使所述终端设备在当前视频帧中显示所述当前检测框。
14.一种聚集检测装置,其特征在于,包括:
获取模块,用于获取多个对象的头部在监控视频的当前视频帧中的当前位置;
处理模块,用于根据多个对象的头部在监控视频的当前视频帧中的当前位置,确定是否出现对象聚集;
所述获取模块具体用于:
获取第一对象的头部在所述监控视频的初始视频帧中的初始位置,所述第一对象为所述多个对象中的任一对象,所述初始视频帧为所述当前视频帧之前的任意一个视频帧;
根据所述初始位置的纵坐标和拍摄所述监控视频的拍摄装置的透视图,获取所述初始位置对应的像素值,所述透视图用于表征纵坐标与像素值的对应关系,像素值表征世界坐标中单位距离对应的像素距离;
根据所述初始位置对应的像素值和所述初始位置,确定所述监控视频中第一对象的头部的初始检测框;
基于所述第一对象的头部的初始检测框,在所述监控视频中跟踪所述第一对象的头部,获取所述第一对象的头部在监控视频的当前视频帧中的当前位置。
15.一种电子设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,执行权利要求1-13任一项所述的方法步骤。
16.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序,所述计算机程序用于执行权利要求1-13任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010506528.1A CN111586369B (zh) | 2020-06-05 | 2020-06-05 | 聚集检测方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010506528.1A CN111586369B (zh) | 2020-06-05 | 2020-06-05 | 聚集检测方法、装置、电子设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111586369A CN111586369A (zh) | 2020-08-25 |
CN111586369B true CN111586369B (zh) | 2022-04-01 |
Family
ID=72119958
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010506528.1A Active CN111586369B (zh) | 2020-06-05 | 2020-06-05 | 聚集检测方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111586369B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113449180B (zh) * | 2021-05-07 | 2022-10-28 | 浙江大华技术股份有限公司 | 同行关系分析方法、装置及计算机可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105447458A (zh) * | 2015-11-17 | 2016-03-30 | 深圳市商汤科技有限公司 | 一种大规模人群视频分析系统和方法 |
CN109815872A (zh) * | 2019-01-16 | 2019-05-28 | 汉勤汇科技(武汉)有限公司 | 作弊区域检测方法、装置、设备及存储介质 |
CN110288656A (zh) * | 2019-07-01 | 2019-09-27 | 太原科技大学 | 一种基于单目摄像头的目标定位方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101325690A (zh) * | 2007-06-12 | 2008-12-17 | 上海正电科技发展有限公司 | 监控视频流中人流分析与人群聚集过程的检测方法及系统 |
JP2013205412A (ja) * | 2012-03-27 | 2013-10-07 | System Consultants Kk | 空間監視装置における物体の大きさ検知方法 |
CN105654021B (zh) * | 2014-11-12 | 2019-02-01 | 株式会社理光 | 检测人群对目标位置关注度的方法及设备 |
CN104680140B (zh) * | 2015-02-13 | 2017-10-31 | 电子科技大学 | 基于图像的人群聚集状态检测方法 |
CN109446989A (zh) * | 2018-10-29 | 2019-03-08 | 上海七牛信息技术有限公司 | 人群聚集检测方法、装置及存储介质 |
-
2020
- 2020-06-05 CN CN202010506528.1A patent/CN111586369B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105447458A (zh) * | 2015-11-17 | 2016-03-30 | 深圳市商汤科技有限公司 | 一种大规模人群视频分析系统和方法 |
CN109815872A (zh) * | 2019-01-16 | 2019-05-28 | 汉勤汇科技(武汉)有限公司 | 作弊区域检测方法、装置、设备及存储介质 |
CN110288656A (zh) * | 2019-07-01 | 2019-09-27 | 太原科技大学 | 一种基于单目摄像头的目标定位方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111586369A (zh) | 2020-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8619135B2 (en) | Detection of abnormal behaviour in video objects | |
US10810438B2 (en) | Setting apparatus, output method, and non-transitory computer-readable storage medium | |
KR101687530B1 (ko) | 촬상 시스템에 있어서의 제어방법, 제어장치 및 컴퓨터 판독 가능한 기억매체 | |
US20110222727A1 (en) | Object Localization Using Tracked Object Trajectories | |
WO2014081687A1 (en) | Method and system for counting people using depth sensor | |
JP6620443B2 (ja) | 監視プログラム、監視装置、及び監視方法 | |
US11281898B2 (en) | Arm action identification method and apparatus and image processing device | |
CN111586369B (zh) | 聚集检测方法、装置、电子设备及可读存储介质 | |
JP6798609B2 (ja) | 映像解析装置、映像解析方法およびプログラム | |
US9317770B2 (en) | Method, apparatus and terminal for detecting image stability | |
WO2024022301A1 (zh) | 视角路径获取方法、装置、电子设备及介质 | |
US10916016B2 (en) | Image processing apparatus and method and monitoring system | |
CN111402391A (zh) | 用户面部图像展示方法、展示装置及对应的存储介质 | |
Bai et al. | Image quality assessment in first-person videos | |
CN111259702A (zh) | 一种用户兴趣的估计方法及装置 | |
TWI735367B (zh) | 測速方法、電子設備及儲存介質 | |
JP7323235B2 (ja) | 画像追跡装置、画像追跡方法、及びプログラム | |
CN111582243B (zh) | 逆流检测方法、装置、电子设备和存储介质 | |
CN107154052A (zh) | 对象状态估计的方法及装置 | |
CN111582242B (zh) | 滞留检测方法、装置、电子设备和存储介质 | |
CN112232113A (zh) | 人员识别方法、人员识别装置、存储介质与电子设备 | |
CN112614151B (zh) | 运动事件检测方法、电子设备及计算机可读存储介质 | |
CN113516690A (zh) | 图像检测方法、装置、设备和存储介质 | |
CN114648799A (zh) | 一种人脸分类方法、装置及电子设备 | |
CN114067363A (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 |