CN116704394A - 视频流中的异常行为检测 - Google Patents
视频流中的异常行为检测 Download PDFInfo
- Publication number
- CN116704394A CN116704394A CN202310138161.6A CN202310138161A CN116704394A CN 116704394 A CN116704394 A CN 116704394A CN 202310138161 A CN202310138161 A CN 202310138161A CN 116704394 A CN116704394 A CN 116704394A
- Authority
- CN
- China
- Prior art keywords
- video stream
- detected
- video
- average
- persons
- 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.)
- Pending
Links
- 206010000117 Abnormal behaviour Diseases 0.000 title claims abstract description 75
- 238000001514 detection method Methods 0.000 title description 6
- 208000012661 Dyskinesia Diseases 0.000 claims abstract description 35
- 238000000034 method Methods 0.000 claims description 62
- 230000007613 environmental effect Effects 0.000 claims description 15
- 238000012545 processing Methods 0.000 description 34
- 230000035945 sensitivity Effects 0.000 description 16
- 238000004891 communication Methods 0.000 description 9
- 230000001105 regulatory effect Effects 0.000 description 8
- 230000002547 anomalous effect Effects 0.000 description 7
- 230000006399 behavior Effects 0.000 description 7
- 230000001276 controlling effect Effects 0.000 description 7
- 230000001815 facial effect Effects 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 5
- 230000001419 dependent effect Effects 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 241001465754 Metazoa Species 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/41—Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/44—Event detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- 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
-
- G—PHYSICS
- G08—SIGNALLING
- G08B—SIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
- G08B13/00—Burglar, theft or intruder alarms
- G08B13/18—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength
- G08B13/189—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems
- G08B13/194—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems
- G08B13/196—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems using television cameras
- G08B13/19602—Image analysis to detect motion of the intruder, e.g. by frame subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Image Analysis (AREA)
- Closed-Circuit Television Systems (AREA)
Abstract
可以通过分析视频流以检测一个或多个人并且确定所检测到的人中的每个人的大小的量度来确定该视频流内的一个或多个人的异常行为。确定所检测到的人中的每个人的移动速度,并且相对于该人的所确定的大小的量度对该移动速度进行归一化。确定所检测到的人中的所有人的移动速度的平均值。将所检测到的人中的所有人的移动速度的平均值与环境速度进行比较。当该移动速度的平均值超过环境速度至少一个阈值时,确定存在异常行为。当确定存在异常行为时,输出异常移动警报。
Description
技术领域
本公开整体涉及视频处理,并且更具体地涉及检测视频流中的异常行为。
背景技术
摄像机提供显示各种不同区域的视频流。虽然一些视频流由保安人员或其他专业人员监控,但许多其他视频流不由保安人员或其他专业人员监控,特别是非实时监控。在一些情况下,保安人员所使用的安全控制台具有有限的显示空间,使得无法同时显示所有可用的视频流。在其他情况下,一些视频流仅在随后需要返回并查看在特定日期和/或在特定时间段期间特定区域的视频片段的情况下被存档。
应当理解,早期检测可能的问题是有利的。例如,能够检测特定范围或区域内的人的异常行为可能有利于快速发现可能的问题并且引发警报等以使保安人员注意到可能的问题。可能问题的类型以及在给定空间中构成异常行为的因素可能根据空间类型和其他情况而显著不同。因此,仍然需要自动检测由视频流所捕获的空间内的可能异常行为的方法。
发明内容
本公开整体涉及视频处理,并且更具体地涉及自动检测视频流中的异常行为。一个示例可存在于一种使用具有一个或多个处理器的计算设备来检测在摄像机的视频流中所捕获的一个或多个人的异常行为的方法。该例示性方法包括接收视频流并分析该视频流以检测该视频流中的一个或多个人。确定所检测到的一个或多个人中的每个人的视频流中的大小的量度。确定所检测到的一个或多个人中的每个人的移动速度,相对于该视频流中该人的所确定的大小的量度对该移动速度进行归一化。确定所检测到的一个或多个人中的所有人的移动速度的平均值。将所检测到的一个或多个人中的所有人的移动速度的平均值与环境速度进行比较。当所检测到的一个或多个人中的所有人的移动速度的平均值超过环境速度至少一个阈值时,则确定存在异常行为。当确定存在异常行为时,输出异常移动警报。
另一个示例可存在于一种使用具有一个或多个处理器的计算设备来检测在摄像机的视频流中所捕获的一个或多个对象的异常行为的方法。该例示性方法包括接收视频流并分析该视频流以检测该视频流中的一个或多个对象。在该视频流的多个视频帧中的每个视频帧中确定所检测到的一个或多个对象中的每个对象的移动速度。针对该视频流的多个视频帧中的每个视频帧确定所检测到的一个或多个对象中的所有对象的移动速度的平均值,从而得出多个帧平均移动速度。根据多个帧平均移动速度中的两个或更多个帧平均移动速度确定多帧移动平均速度。至少部分地基于该多个帧平均移动速度中的至少一些帧平均移动速度来确定表示典型的帧平均移动速度的环境速度。将该多帧移动平均速度与该环境速度进行比较。当该多帧移动平均速度超过该环境速度至少一个阈值时,确定存在异常行为。当确定存在异常行为时,输出异常移动警报。
另一个示例可存在于存储指令的非暂态计算机可读介质中。当该指令由一个或多个处理器执行时,使该一个或多个处理器接收视频流并分析该视频流以检测该视频流中的一个或多个对象。使该一个或多个处理器确定所检测到的一个或多个对象中的每个对象的移动速度,至少部分地基于所检测到的一个或多个对象中的所有对象在学习时间段内的移动速度来学习环境速度。例如,学习可连续进行,诸如最后N个帧,或者在可由用户选择的特定时间段期间的最后N个帧。还使该一个或多个处理器确定所检测到的一个或多个对象中的所有对象在预定时间段内的移动速度的平均值。使该一个或多个处理器将所检测到的一个或多个对象中的所有对象在该预定时间段内的移动速度的平均值与所学习的环境速度进行比较;当所检测到的一个或多个对象中的所有对象在该预定时间段内的移动速度的平均值超过所学习的环境速度至少一个阈值时,确定存在异常行为;并且当确定存在异常行为时,输出异常移动警报。
提供前面的发明内容是为了便于理解本公开的一些特征,而并非意图作为完整的描述。通过将整个说明书、权利要求书、附图和说明书摘要作为一个整体,能够获得对本公开的全面理解。
附图说明
结合附图考虑以下对本公开的各种示例性实施方案的描述,可以更全面地理解本公开,其中:
图1是例示性视频监控系统的示意性框图;
图2是示出例示性方法的流程图;
图3是示出例示性方法的流程图;
图4是示出例示性方法的流程图;
图5A和图5B共同为示出例示性方法的流程图;
图6是示出例示性方法的流程图;
图7A和图7B共同为示出例示性方法的流程图;
图8是示出计算设备的一个或多个处理器在执行指令时可能进行的一系列例示性步骤的流程图;
图9是示出计算设备的一个或多个处理器在执行指令时可能进行的一系列例示性步骤的流程图;
图10是示出例示性方法的流程图;
图11是示出例示性方法的流程图;
图12是示出例示性方法的流程图;
图13A至图13B示出了用于识别视频流中的异常行为的用户可调阈值的示例;并且
图14是设置图13A至图13B的用户可调阈值的灵敏度参数的图形示例。
虽然本公开服从于各种修改和另选形式,但是其细节已经在附图中以示例的方式示出并将被详细描述。然而,应当理解,其意图不是将本公开的方面限制到所描述的特定例示性实施方案。相反,其意图是覆盖落入本公开的实质和范围内的所有修改、等同物和替代方案。
具体实施方式
下面的描述应该参照附图来阅读,其中相同的附图标号指示相同的元件。附图不一定按比例绘制,并且不旨在限制本公开的范围。在一些图中,为了清楚起见,可能已省略对于理解所示部件之间的关系而言认为不必要的元件。
本文假设所有数字均由术语“约”修饰,除非内容另有明确说明。用端点对数值范围的表述包括包含在该范围内的所有数字(例如,1至5包括1、1.5、2、2.75、3、3.80、4和5)。
本文使用的术语“平均值”表示表达一组数据中的中心值或典型值的数字或表达式,特别是众数、中值或(最常见的)平均值,其通过将该组数据中的值之和除以它们的数量来计算。
如在本说明书和所附权利要求中所使用的,单数形式“一”、“一个”和“该”包括复数指代物,除非内容另有明确说明。如在本说明书和所附权利要求中所使用的,术语“或”通常以其包括“和/或”的意义使用,除非内容另有明确说明。
应当注意,在说明书中对“实施方案”、“一些实施方案”、“其他实施方案”等的引用指示所描述的实施方案可包括特定特征、结构或特性,但是每个实施方案可不必包括特定的特征、结构或特性。而且,这些短语不一定是指同一实施方案。另外,当结合实施方案描述特定特征、结构或特性时,可以设想到,无论是否明确描述,该特征、结构或特性可以应用于其他实施方案,除非另外明确相反陈述。
图1是可安装在位置12处的例示性视频监控系统10的示意性框图。例如,位置12可表示建筑物或建筑物的一部分。位置12可表示零售店或零售店的一部分。位置12可表示例如街角或汽车站。位置12可表示火车站或地铁站,因此可以处于地平面,可以低于地平面或可以高于地平面。位置12可表示智慧城市,在该智慧城市周围具有许多位置。例示性视频监控系统10包括多个摄像机14,分别被标记为14a、14b和14c。虽然示出了三个摄像机14,但应当理解,这仅仅是例示性的,因为视频监控系统10可以包括任何数量的摄像机14,并且在一些情况下可以包括几十个摄像机14、几百个摄像机14或者甚至几千个摄像机14。在一些情况下,每个摄像机14包括一个或多个处理器16,分别被标记为16a、16b和16c。因此,每个摄像机14可以被视为包括可以在摄像机14自身内执行至少一些视频处理的计算设备,但这并非是必需的。
在所示的示例中,每个摄像机14能够操作地与网关18耦接。网关18可以被视为安装在位置12处或附近的边缘设备,使得摄像机14中的每个摄像机能够与网关18通信。例如,网关18与摄像机14中的每个摄像机之间的通信可以包括摄像机14中的一个或多个摄像机向网关18发送视频流以用于视频处理,或者使得网关18可将视频流发送至远程设备(诸如基于云的服务器22)。通信还可以包括从网关18传递到摄像机14中的一个或多个摄像机的指令,包括由网关18确定的指令以及在别处(例如,基于云的服务器22)确定并被传送到网关18的指令。
在所示出的示例中,网关18包括一个或多个处理器20,并且因此可以被视为包括(或者是)可在网关18内执行至少一些视频处理的计算设备。网关18可以向摄像机14中的一个或多个摄像机提供指令,特别是当摄像机14中的一个或多个摄像机是平移倾斜缩放(PTZ)摄像机的情况下,其可以通过改变特定摄像机14的平移、倾斜或缩放水平中的一者或多者来调整其视场(FOV)。如果网关18在分析由摄像机14中的一个摄像机所提供的视频时检测到接近FOV边缘的可能活动,则网关18或与网关18通信的远程设备可以指示该特定摄像机14平移、倾斜或缩放,以便改变其FOV以更好地捕获可能的活动。摄像机14中的至少一些摄像机可以具有与网关18的有线连接。摄像机14中的至少一些摄像机可以具有与网关18的无线连接。
在一些情况下,网关18针对摄像机14中的每个摄像机提供一种与远程设备通信的方式。在一些情况下,网关18允许摄像机14中的每个摄像机与基于云的服务器22通信。例如,网关18与基于云的服务器22之间的通信可以包括向基于云的服务器22发送视频流以供分析。另选地或除此之外,网关18与基于云的服务器22之间的通信可包括例如向基于云的服务器22发送由摄像机14和/或网关18从视频流中提取的元数据以供分析。网关18与基于云的服务器22之间的通信可以包括被发送回网关18的指令。这可以包括指示网关18和/或摄像机14中的一个或多个摄像机采取特定动作的指令。这可以包括由网关18接收并且随后从网关18传送到摄像机14中的一个或多个摄像机的指令。
虽然图1示出了与基于云的服务器22通信的单个网关18,但应当理解,在一些情况下,可以存在与基于云的服务器22通信的任何数量的不同网关18。例如,如果存在包括与基于云的服务器22通信的视频监控系统的十几座建筑物,则该十几座建筑物中的每座建筑物可以包括其自身的网关18。在一些情况下,大型建筑物可以被划分为多个区,并且每个区可以具有其自身的网关18。例如,对于室外摄像机,可能存在连接到特定块上的摄像机中的所有摄像机的唯一网关18。在一些情况下,每个摄像机可以具有其自身的网关。
在所示出的示例中,基于云的服务器22包括一个或多个处理器24,并且因此基于云的服务器22可被视为计算设备。在一些情况下,基于云的服务器22执行对由摄像机14提供的视频流执行的至少一些视频分析。视频分析可包括多种不同处理和技术中的任一种,并且在一些情况下可包括寻找在视频流内检测到的人或其他对象(例如,车辆、动物等)的可能异常行为。在一些情况下,网关18执行对由摄像机14提供的视频流执行的至少一些视频分析。在一些情况下,至少一些视频分析可以由摄像机14自身来执行。
图2是示出使用具有一个或多个处理器的计算设备来检测在摄像机(诸如摄像机14)的视频流中所捕获的一个或多个人(或其他对象)的异常行为的例示性方法30的流程图。例示性方法30可以经由摄像机14中的每个摄像机内的一个或多个处理器16中的任何一个处理器、经由网关18内的一个或多个处理器20和/或经由基于云的服务器22内的一个或多个处理器24来进行。在一些情况下,例示性方法30可以分布在摄像机14、网关18和基于云的服务器22中的两者或更多者之间。在一些情况下,强度较低的视频处理需要较低计算能力,其可以在摄像机14中的一个或多个摄像机内执行。在一些情况下,例如,两个或更多个摄像机14可以协同工作以处理由摄像机14中的一个摄像机所提供的视频流。在一些情况下,强度较高的视频处理需要附加的计算能力,其可以在网关18内或基于云的服务器22内执行。网关18和/或基于云的服务器22可被配置为通过控制由哪些处理器执行何种视频处理来优化效率。在一些情况下,可从视频流提取元数据并将其传递到其他设备以供进一步处理和/或分析。
例示性方法30包括接收视频流,如框32处所示。接收视频流可以简单地包括特定摄像机14的一个或多个处理器16接收由该摄像机14提供的视频流,或者接收可能由另一摄像机14提供的视频流(在两个摄像机14是负载共享的情况下)。接收视频流可以包括网关18接收由摄像机捕获的视频流,或者可能包括基于云的服务器22接收视频流。
分析视频流以检测该视频流中的一个或多个人,如框34处所示。在一些情况下,摄像机具有视场,并且分析视频流以检测该视频流中的一个或多个人可以包括识别视频流的FOV中的感兴趣区域,其中感兴趣区域对应于小于摄像机的整个视场(FOV),并且检测该视频流的感兴趣区域中的一个或多个人,而不检测不在该视频流的感兴趣区域中的人。确定所检测到的一个或多个人中的每个人的视频流中的大小的量度,如框36处所示。在一些情况下,视频流包括多个视频帧,其中每个视频帧包括多个像素,并且确定所检测到的一个或多个人中的每个人的视频流中的大小的量度包括确定与对应的人相对应的像素数量。在一些情况下,针对视频流中的人中的每个人确定边界框,并且所检测到的一个或多个人中的每个人的视频流中的大小的量度包括确定与对应的人的边界框相对应的像素数量。这些只是示例。
确定所检测到的一个或多个人中的每个人的移动速度,其中所检测到的一个或多个人中的每个人的移动速度相对于视频流中该人的所确定的大小的量度进行归一化,如框38处所示。每个人的大小的量度通常可以表示该人在空间中距摄像机的距离。对于相同的检测到的移动速度(例如,每视频帧移动的像素),远离摄像机(并且因此在视频流的FOV中具有较小尺寸)的人在空间中的移动速率将比靠近摄像机(并且因此在视频流的FOV中具有较大尺寸)的人更快。
在一些情况下,视频流包括多个视频帧并且每个视频帧包括多个像素,并且确定视频流中所检测到的一个或多个人中的每个人的移动速度可以包括确定对应的人从视频流的第一视频帧到第二视频帧的移动距离(例如,移动的像素)的量度,其中捕获第一视频帧与捕获第二视频帧之间的时间是已知的(例如,已知的每秒帧数)。
在一些情况下,移动距离的量度可以表示为对应的人从第一视频帧到第二视频帧已经移动的像素数量。确定视频流中所检测到的一个或多个人中的每个人的大小的量度可以包括确定与对应的人相对应的像素数量,并且其中所检测到的一个或多个人中的每个人的所确定的移动速度相对于对应于该人的像素数量进行归一化。
确定所检测到的一个或多个人中的所有人的移动速度的平均值,如框40处所示。将所检测到的一个或多个人中的所有人的移动速度的平均值与环境速度进行比较,如框42处所示。例如,可以至少部分地基于在学习时间段内在视频流的多个视频帧上所检测到的一个或多个人中的所有人的移动速度的平均值来随时间推移学习环境速度。
当所检测到的一个或多个人中的所有人的移动速度的平均值超过环境速度至少一个阈值时,确定存在异常行为,如框44处所示。在一些情况下,该阈值是时间和/或位置相关的,并且可以随时间变化。当确定存在异常行为时,输出异常移动警报,如框46处所示。异常移动警报可以包括对负责监控视频流的人的视觉或听觉警报。异常移动警报可以包括将可能的异常行为的实时视频片段叠加在人的屏幕上,使得他们立即意识到该异常行为。异常移动警报可以包括通知管理机构,并且可能将该管理机构调度到所检测到的异常行为的位置。
在一些情况下,输出异常移动警报可能引起下述情况中的一者或多者:调整摄像机的FOV;对视频控制台进行优先级排序以显示示出异常行为的视频流;向云服务器发送包括异常行为的视频流的至少一部分以供进一步视频处理(例如,面部识别、增强运动分析、图像增强等)和/或存档;以及向云服务器发送与异常行为相关联的元数据。
图3是示出使用具有一个或多个处理器的计算设备来检测在摄像机(诸如摄像机14)的视频流中所捕获的一个或多个人的异常行为的例示性方法50的流程图。方法50可以经由摄像机14中的每个摄像机内的一个或多个处理器16中的任何一个处理器、经由网关18内的一个或多个处理器20和/或经由基于云的服务器22内的一个或多个处理器24来进行。在一些情况下,方法50可以分布在摄像机14、网关18和基于云的服务器22中的两者或更多者之间。在一些情况下,强度较低的视频处理需要较低计算能力,其可以在摄像机14中的一个或多个摄像机内执行。在一些情况下,例如,两个或更多个摄像机14可以协同工作以处理由摄像机14中的一个摄像机所提供的视频流。在一些情况下,强度较高的视频处理需要附加的计算能力,其可以在网关18内或基于云的服务器22内执行。网关18和/或基于云的服务器22可被配置为通过控制由哪些处理器执行何种视频处理来优化效率。
例示性方法50包括接收视频流,如框52处所示。接收视频流可以简单地包括特定摄像机14的一个或多个处理器16接收由该摄像机14提供的视频流,或者接收可能由另一摄像机14提供的视频流(在两个摄像机14是负载共享的情况下)。接收视频流可以包括网关18接收视频流,或者可能包括基于云的服务器22接收视频流。
分析视频流以检测该视频流中的一个或多个人,如框54处所示。在一些情况下,摄像机具有视场,并且分析视频流以检测该视频流中的一个或多个人可以包括识别视频流中的感兴趣区域,其中感兴趣区域对应于小于摄像机的整个视场,并且检测该视频流的感兴趣区域中的一个或多个人,而不检测不在该视频流的感兴趣区域中的人。
可以针对视频流中所检测到的一个或多个人中的每个人确定边界框,其中该边界框限定对应的人的至少一部分,如框56处所示。所检测到的一个或多个人中的每个人的视频流中的大小的量度可以基于它们的对应边界框的大小,如框58处所示。边界框尺寸可以基于任何任意的度量单位,并且在一些情况下可以包括多个像素。
确定所检测到的一个或多个人中的每个人的移动速度,其中所检测到的一个或多个人中的每个人的移动速度相对于视频流中该人的所确定的大小的量度进行归一化,如框60处所示。在一些情况下,视频流包括多个视频帧并且每个视频帧包括多个像素,并且确定视频流中所检测到的一个或多个人中的每个人的移动速度可以包括确定对应的人从视频流的第一视频帧到第二视频帧的移动距离(例如,移动的像素)的量度,其中捕获第一视频帧与捕获第二视频帧之间的时间是已知的(例如,已知的每秒帧数)。
在一些情况下,移动距离的量度可以表示为对应的人从第一视频帧到第二视频帧已经移动的像素数量。确定视频流中所检测到的一个或多个人中的每个人的大小的量度可以包括确定与对应的人相对应的像素数量,并且其中所检测到的一个或多个人中的每个人的所确定的移动速度相对于对应于该人的像素数量进行归一化。
确定所检测到的一个或多个人中的所有人的移动速度的平均值,如框62处所示。将所检测到的一个或多个人中的所有人的移动速度的平均值与环境速度进行比较,如框64处所示。例如,可以至少部分地基于在学习时间段内在视频流的多个视频帧上确定的所检测到的一个或多个人中的所有人的移动速度的平均值来随时间推移学习环境速度。
当所检测到的一个或多个人中的所有人的移动速度的平均值超过环境速度至少一个阈值时,确定存在异常行为,如框66处所示。在一些情况下,该阈值是时间和/或位置相关的,并且可以随时间变化。当确定存在异常行为时,输出异常移动警报,如框68处所示。异常移动警报可以包括对负责监控视频流的人的视觉或听觉警报。异常移动警报可以包括将可能的异常行为的实时视频片段叠加在人的屏幕上,使得他们立即意识到该异常行为。异常移动警报可以包括通知管理机构,并且可能将该管理机构调度到所检测到的异常行为的位置。
在一些情况下,输出异常移动警报可能引起下述情况中的一者或多者:调整摄像机的FOV;对视频控制台进行优先级排序以显示示出异常行为的视频流;向云服务器发送包括异常行为的视频流的至少一部分以供进一步视频处理(例如,面部识别、增强运动分析、图像增强等)和/或存档;以及向云服务器发送与异常行为相关联的元数据。
图4是示出使用具有一个或多个处理器的计算设备来检测在摄像机(诸如摄像机14)的视频流中所捕获的一个或多个人的异常行为的例示性方法70的流程图。例示性方法70可以经由摄像机14中的每个摄像机内的一个或多个处理器16中的任何一个处理器、经由网关18内的一个或多个处理器20和/或经由基于云的服务器22内的一个或多个处理器24来进行。在一些情况下,方法70可以分布在摄像机14、网关18和基于云的服务器22中的两者或更多者之间。在一些情况下,强度较低的视频处理需要较低计算能力,其可以在摄像机14中的一个或多个摄像机内执行。在一些情况下,例如,两个或更多个摄像机14可以协同工作以处理由摄像机14中的一个摄像机所提供的视频流。在一些情况下,强度较高的视频处理需要附加的计算能力,其可以在网关18内或基于云的服务器22内执行。网关18和/或基于云的服务器22可被配置为通过控制由哪些处理器执行何种视频处理来优化效率。
例示性方法70包括接收视频流,如框72处所示。接收视频流可以简单地包括特定摄像机14的一个或多个处理器16接收由该摄像机14提供的视频流,或者接收可能由另一摄像机14提供的视频流(在两个摄像机14是负载共享的情况下)。接收视频流可以包括网关18接收视频流,或者可能包括基于云的服务器22接收视频流。
分析视频流以检测该视频流中的一个或多个人,如框74处所示。在一些情况下,摄像机具有视场(FOV),并且分析视频流以检测该视频流中的一个或多个人可以包括识别视频流中的感兴趣区域,其中感兴趣区域对应于小于摄像机的整个视场(FOV),并且检测该视频流的感兴趣区域中的一个或多个人,而不检测不在该视频流的感兴趣区域中的人。确定所检测到的一个或多个人中的每个人的视频流中的大小的量度,如框76处所示。在一些情况下,视频流包括多个视频帧,其中每个视频帧包括多个像素,并且确定所检测到的一个或多个人中的每个人的视频流中的大小的量度包括确定与对应的人相对应的像素数量。
确定所检测到的一个或多个人中的每个人的移动速度,其中所检测到的一个或多个人中的每个人的移动速度相对于视频流中该人的所确定的大小的量度进行归一化,如框78处所示。在一些情况下,视频流包括多个视频帧并且每个视频帧包括多个像素,并且确定视频流中所检测到的一个或多个人中的每个人的移动速度可以包括确定对应的人从视频流的第一视频帧到第二视频帧的移动距离(例如,移动的像素)的量度,其中捕获第一视频帧与捕获第二视频帧之间的时间是已知的(例如,已知的每秒帧数)。
在一些情况下,移动距离的量度可以表示为对应的人从第一视频帧到第二视频帧已经移动的像素数量。确定视频流中所检测到的一个或多个人中的每个人的大小的量度可以包括确定与对应的人相对应的像素数量,并且其中所检测到的一个或多个人中的每个人的所确定的移动速度相对于对应于该人的像素数量进行归一化。
针对视频流的多个视频帧中的每个视频帧确定所检测到的一个或多个人中的所有人的移动速度的平均值,从而得出多个帧平均移动速度,如框80处所示。确定多个帧平均移动速度的多帧移动平均值,如框82处所示。将多帧移动平均值与环境速度进行比较,如框84处所示。例如,可以至少部分地基于在学习时间段内在视频流的多个视频帧上确定的所检测到的一个或多个人中的所有人的移动速度的平均值来随时间推移学习环境速度。
当所检测到的一个或多个人中的所有人的移动速度的平均值超过环境速度至少一个阈值时,确定存在异常行为,如框86处所示。在一些情况下,该阈值是时间和/或位置相关的,并且可以随时间变化。当确定存在异常行为时,输出异常移动警报,如框88处所示。异常移动警报可以包括对负责监控视频流的人的视觉或听觉警报。异常移动警报可以包括将可能的异常行为的实时视频片段叠加在人的屏幕上,使得他们立即意识到该异常行为。异常移动警报可以包括通知管理机构,并且可能将该管理机构调度到所检测到的异常行为的位置。
在一些情况下,输出异常移动警报可能引起下述情况中的一者或多者:调整摄像机的FOV;对视频控制台进行优先级排序以显示示出异常行为的视频流;向云服务器发送包括异常行为的视频流的至少一部分以供进一步视频处理(例如,面部识别、增强运动分析、图像增强等)和/或存档;以及向云服务器发送与异常行为相关联的元数据。
图5A和图5B共同为示出使用具有一个或多个处理器的计算设备来检测在摄像机(诸如摄像机14)的视频流中所捕获的一个或多个人的异常行为的例示性方法90的流程图。例示性方法90可以经由摄像机14中的每个摄像机内的一个或多个处理器16中的任何一个处理器、经由网关18内的一个或多个处理器20和/或经由基于云的服务器22内的一个或多个处理器24来进行。在一些情况下,方法90可以分布在摄像机14、网关18和基于云的服务器22中的两者或更多者之间。在一些情况下,强度较低的视频处理需要较低计算能力,其可以在摄像机14中的一个或多个摄像机内执行。在一些情况下,例如,两个或更多个摄像机14可以协同工作以处理由摄像机14中的一个摄像机所提供的视频流。在一些情况下,强度较高的视频处理需要附加的计算能力,其可以在网关18内或基于云的服务器22内执行。网关18和/或基于云的服务器22可被配置为通过控制由哪些处理器执行何种视频处理来优化效率。
从图5A开始,例示性方法90包括接收视频流,如框92处所示。接收视频流可以简单地包括特定摄像机14的一个或多个处理器16接收由该摄像机14提供的视频流,或者接收可能由另一摄像机14提供的视频流(在两个摄像机14是负载共享的情况下)。接收视频流可以包括网关18接收视频流,或者可能包括基于云的服务器22接收视频流。
分析视频流以检测该视频流中的一个或多个人,如框94处所示。在一些情况下,摄像机具有视场(FOV),并且分析视频流以检测该视频流中的一个或多个人可以包括识别视频流中的感兴趣区域,其中感兴趣区域对应于小于摄像机的整个视场(FOV),并且检测该视频流的感兴趣区域中的一个或多个人,而不检测不在该视频流的感兴趣区域中的人。确定所检测到的一个或多个人中的每个人的视频流中的大小的量度,如框96处所示。在一些情况下,视频流包括多个视频帧,其中每个视频帧包括多个像素,并且确定所检测到的一个或多个人中的每个人的视频流中的大小的量度包括确定与对应的人相对应的像素数量。
确定所检测到的一个或多个人中的每个人的移动速度,其中所检测到的一个或多个人中的每个人的移动速度相对于视频流中该人的所确定的大小的量度进行归一化,如框98处所示。在一些情况下,视频流包括多个视频帧并且每个视频帧包括多个像素,并且确定视频流中所检测到的一个或多个人中的每个人的移动速度可以包括确定对应的人从视频流的第一视频帧到第二视频帧的移动距离(例如,移动的像素)的量度,其中捕获第一视频帧与捕获第二视频帧之间的时间是已知的(例如,已知的每秒帧数)。
在一些情况下,移动距离的量度可以表示为对应的人从第一视频帧到第二视频帧已经移动的像素数量。确定视频流中所检测到的一个或多个人中的每个人的大小的量度可以包括确定与对应的人相对应的像素数量,并且其中所检测到的一个或多个人中的每个人的所确定的移动速度相对于对应于该人的像素数量进行归一化。
针对视频流的多个视频帧中的每个视频帧确定所检测到的一个或多个人中的所有人的移动速度的平均值,从而得出多个帧平均移动速度,如框100处所示。根据多个帧平均移动速度确定典型的帧平均移动速度,如框102处所示。
在例示性示例中,并且继续进行图5B,将多个帧平均移动速度分箱到多个箱中,如框104处所示。选择多个箱中具有最多帧平均移动速度的箱,如框106处所示。基于所选择的箱的多个帧平均移动速度中的一个或多个帧平均移动速度来确定环境速度,如框108处所示。在一些情况下,基于所选择的箱的多个帧平均移动速度的平均值来确定环境速度。在一些情况下,可以基于多个帧平均移动速度中的帧平均移动速度的数量来设置箱的数量。即,多个帧平均移动速度中的帧平均移动速度越多,可以使用的箱就越多。在一些情况下,可以根据斯透奇斯规则(Sturges Rule)来设置箱的数量。
将所检测到的人中的所有人的移动速度的平均值与环境速度进行比较,如框110处所示。尽管不是必需的,但可以至少部分地基于在学习时间段内在视频流的多个视频帧上确定的所检测到的一个或多个人中的所有人的移动速度的平均值来随时间推移学习环境速度。
当所检测到的一个或多个人中的所有人的移动速度的平均值超过环境速度至少一个阈值时,确定存在异常行为,如框112处所示。在一些情况下,该阈值是时间和/或位置相关的,并且可以随时间变化。在一些情况下,阈值至少部分地基于灵敏度因子和粒度因子,该灵敏度因子和粒度因子共同定义用于确定何时输出异常移动警报的触发点,其中灵敏度因子和粒度因子是用户可编程的(参见图13A至图13B和图14)。
当确定存在异常行为时,输出异常移动警报,如框114处所示。异常移动警报可以包括对负责监控视频流的人的视觉或听觉警报。异常移动警报可以包括将可能的异常行为的实时视频片段叠加在人的屏幕上,使得他们立即意识到该异常行为。异常移动警报可以包括通知管理机构,并且可能将该管理机构调度到所检测到的异常行为的位置。
在一些情况下,输出异常移动警报可能引起下述情况中的一者或多者:调整摄像机的FOV;对视频控制台进行优先级排序以显示示出异常行为的视频流;向云服务器发送包括异常行为的视频流的至少一部分以供进一步视频处理(例如,面部识别、增强运动分析、图像增强等)和/或存档;以及向云服务器发送与异常行为相关联的元数据。
图6是示出使用具有一个或多个处理器的计算设备来检测在摄像机(诸如摄像机14)的视频流中所捕获的一个或多个对象的异常行为的例示性方法120的流程图。例示性方法120可以经由摄像机14中的每个摄像机内的一个或多个处理器16中的任何一个处理器、经由网关18内的一个或多个处理器20和/或经由基于云的服务器22内的一个或多个处理器24来进行。在一些情况下,例示性方法120可以分布在摄像机14、网关18和基于云的服务器22中的两者或更多者之间。在一些情况下,强度较低的视频处理需要较低计算能力,其可以在摄像机14中的一个或多个摄像机内执行。在一些情况下,例如,两个或更多个摄像机14可以协同工作以处理由摄像机14中的一个摄像机所提供的视频流。在一些情况下,强度较高的视频处理需要附加的计算能力,其可以在网关18内或基于云的服务器22内执行。网关18和/或基于云的服务器22可被配置为通过控制由哪些处理器执行何种视频处理来优化效率。
例示性方法120包括接收视频流,如框122处所示。接收视频流可以简单地包括特定摄像机14的一个或多个处理器16接收由该摄像机14提供的视频流,或者接收可能由另一摄像机14提供的视频流(在两个摄像机14是负载共享的情况下)。接收视频流可以包括网关18接收视频流,或者可能包括基于云的服务器22接收视频流。
分析视频流以检测该视频流中的一个或多个对象,如框124处所示。该一个或多个对象可以包括人、车辆、动物和/或任何其他对象。在视频流的多个视频帧中的每个视频帧中确定所检测到的一个或多个对象中的每个对象的移动速度,如框126处所示。针对视频流的多个视频帧中的每个视频帧确定所检测到的一个或多个对象中的所有对象的移动速度的平均值,从而得出多个帧平均移动速度,如框128处所示。根据多个帧平均移动速度中的两个或更多个帧平均移动速度确定多帧移动平均速度,如框130处所示。至少部分地基于多个帧平均移动速度中的至少一些帧平均移动速度来确定表示典型的帧平均移动速度的环境速度,如框132处所示。将多帧移动平均速度与环境速度进行比较,如框134处所示。
当多帧移动平均速度超过环境速度至少一个阈值时,确定存在异常行为,如框136处所示。当确定存在异常行为时,输出异常移动警报,如框138处所示。在一些情况下,输出异常移动警报可能引起下述情况中的一者或多者:调整摄像机的FOV;对视频控制台进行优先级排序以显示示出异常行为的视频流;向云服务器发送包括异常行为的视频流的至少一部分以供进一步视频处理(例如,面部识别、增强运动分析、图像增强等)和/或存档;以及向云服务器发送与异常行为相关联的元数据。
图7A和图7B共同为示出使用具有一个或多个处理器的计算设备来检测在摄像机(诸如摄像机14)的视频流中所捕获的一个或多个对象的异常行为的例示性方法140的流程图。例示性方法140可以经由摄像机14中的每个摄像机内的一个或多个处理器16中的任何一个处理器、经由网关18内的一个或多个处理器20和/或经由基于云的服务器22内的一个或多个处理器24来进行。在一些情况下,例示性方法140可以分布在摄像机14、网关18和基于云的服务器22中的两者或更多者之间。在一些情况下,强度较低的视频处理需要较低计算能力,其可以在摄像机14中的一个或多个摄像机内执行。在一些情况下,例如,两个或更多个摄像机14可以协同工作以处理由摄像机14中的一个摄像机所提供的视频流。在一些情况下,强度较高的视频处理需要附加的计算能力,其可以在网关18内或基于云的服务器22内执行。网关18和/或基于云的服务器22可被配置为通过控制由哪些处理器执行何种视频处理来优化效率。
从图7A开始,例示性方法140包括接收视频流,如框142处所示。接收视频流可以简单地包括特定摄像机14的一个或多个处理器16接收由该摄像机14提供的视频流,或者接收可能由另一摄像机14提供的视频流(在两个摄像机14是负载共享的情况下)。接收视频流可以包括网关18接收视频流,或者可能包括基于云的服务器22接收视频流。
分析视频流以检测该视频流中的一个或多个对象,如框144处所示。在视频流的多个视频帧中的每个视频帧中确定所检测到的一个或多个对象中的每个对象的移动速度,如框146处所示。针对视频流的多个视频帧中的每个视频帧确定所检测到的一个或多个对象中的所有对象的移动速度的平均值,从而得出多个帧平均移动速度,如框148处所示。根据多个帧平均移动速度中的两个或更多个帧平均移动速度确定多帧移动平均速度,如框150处所示。
将该多个帧平均移动速度分箱到多个箱中,其中该多个箱中的箱的数量基于用于确定环境速度的帧平均移动速度的数量,如框152处所示。继续进行图7B,选择多个箱中具有最多帧平均移动速度的箱,如框154处所示。基于所选择的箱中的帧平均移动速度中的一个或多个帧平均移动速度(例如,平均值)来确定环境速度,如框156处所示。将多帧移动平均速度与环境速度进行比较,如框158处所示。
当多帧移动平均速度超过环境速度至少一个阈值时,确定存在异常行为,如框160处所示。当确定存在异常行为时,输出异常移动警报,如框162处所示。在一些情况下,输出异常移动警报可能引起下述情况中的一者或多者:调整摄像机的FOV;对视频控制台进行优先级排序以显示示出异常行为的视频流;向云服务器发送包括异常行为的视频流的至少一部分以供进一步视频处理(例如,面部识别、增强运动分析、图像增强等)和/或存档;以及向云服务器发送与异常行为相关联的元数据。
图8是示出在执行可执行指令时可由一个或多个处理器(诸如但不限于摄像机14的一个或多个处理器16、网关18的一个或多个处理器20和/或基于云的服务器22的一个或多个处理器24)执行的一系列步骤170的流程图。可以使一个或多个处理器接收视频流,如框172处所示。接收视频流可以简单地包括特定摄像机14的一个或多个处理器16接收由该摄像机14提供的视频流,或者接收可能由另一摄像机14提供的视频流(在两个摄像机14是负载共享的情况下)。接收视频流可以包括网关18接收视频流,或者可能包括基于云的服务器22接收视频流。
使一个或多个处理器分析视频流以检测该视频流中的一个或多个对象,如框174处所示。使一个或多个处理器确定所检测到的一个或多个对象中的每个对象的移动速度,如框176处所示。使一个或多个处理器至少部分地基于所检测到的一个或多个对象中的所有对象在学习时间段内的移动速度来学习环境速度,如框178处所示。使一个或多个处理器确定所检测到的一个或多个对象中的所有对象在预定时间段内的移动速度的平均值,如框180处所示。使一个或多个处理器将所检测到的一个或多个对象中的所有对象在预定时间段内的移动速度的平均值与所学习的环境速度进行比较,如框182处所示。当所检测到的一个或多个对象中的所有对象在预定时间段内的移动速度的平均值超过所学习的环境速度至少一个阈值时,使一个或多个处理器确定存在异常行为,如框184处所示。当确定存在异常行为时,输出异常移动警报,如框186处所示。
图9是示出在执行可执行指令时可由一个或多个处理器(诸如但不限于摄像机14的一个或多个处理器16、网关18的一个或多个处理器20和/或基于云的服务器22的一个或多个处理器24)执行的一系列步骤190的流程图。可以使一个或多个处理器接收视频流,如框192处所示。接收视频流可以简单地包括特定摄像机14的一个或多个处理器16接收由该摄像机14提供的视频流,或者接收可能由另一摄像机14提供的视频流(在两个摄像机14是负载共享的情况下)。接收视频流可以包括网关18接收视频流,或者可能包括基于云的服务器22接收视频流。
使一个或多个处理器分析视频流以检测该视频流中的一个或多个对象,如框194处所示。使一个或多个处理器确定所检测到的一个或多个对象中的每个对象的移动速度,如框196处所示。
使一个或多个处理器至少部分地基于所检测到的一个或多个对象中的所有对象在学习时间段内的移动速度来学习环境速度,如框198处所示。使一个或多个处理器针对在预定时间段期间捕获的视频流的多个视频帧中的每个视频帧确定所检测到的一个或多个对象中的所有对象的移动速度的平均值,从而得出多个帧平均移动速度,如框200处所示。使一个或多个处理器确定多个帧平均移动速度的多帧移动平均速度,如框202处所示。使一个或多个处理器将多帧移动平均速度与所学习的环境速度进行比较,如框204处所示。
当所检测到的一个或多个对象中的所有对象在预定时间段内的移动速度的平均值超过所学习的环境速度至少一个阈值时,使一个或多个处理器确定存在异常行为,如框206处所示。当确定存在异常行为时,输出异常移动警报,如框208处所示。
图10是示出用于检测视频流内的异常行为的例示性方法220的流程图。应当理解,方法220可以经由摄像机14中的每个摄像机内的一个或多个处理器16、经由网关18内的一个或多个处理器20和/或经由基于云的服务器22内的一个或多个处理器24来进行。在一些情况下,方法220可以分布在摄像机14、网关18和基于云的服务器22中的两者或更多者之间。在一些情况下,强度较低的视频处理需要较低计算能力,其可以在摄像机14中的一个或多个摄像机内执行。在一些情况下,例如,两个或更多个摄像机14可以协同工作以处理由摄像机14中的一个摄像机所提供的视频流。在一些情况下,强度较高的视频处理需要附加的计算能力,其可以在网关18内或基于云的服务器22内执行。网关18和/或基于云的服务器22可被配置为通过控制由哪些处理器执行何种视频处理来优化效率。
在框222处,输入并接收视频图像。接收视频流可以简单地包括特定摄像机14的一个或多个处理器16接收由该摄像机14提供的视频流,或者接收可能由另一摄像机14提供的视频流(在两个摄像机14是负载共享的情况下)。接收视频流可以包括网关18接收视频流,或者可能包括基于云的服务器22接收视频流。
在框224处,进行人员检测和跟踪。这可以包括用于检测视频流内的人以及用于逐帧跟踪所检测到的人的各种已知算法中的任一种算法。在框226处,进行移动分析。这可以包括例如通过将人的移动相对于帧速率逐帧进行比较来确定人的移动速度。如果人以每秒三十帧的帧速率从一帧到下一帧移动了一英寸,则意味着此人在1/30秒内移动了一英寸。这转化为每分钟150英尺或每小时1.7英里(mph)的移动速度。
框228对应于异常移动检测框,其从框226处的移动分析以及从框230处的自学习中接收信息。自学习框230学习正常移动的情形,并且因此可以提供对框228处的异常移动检测算法的洞察。应当理解,正常移动的情形可以随位置不同、日期不同、时间不同而变化。周二下午5点时火车站通常出现的情形和预期情形与周二晚上11点时火车站通常出现的情形存在显著差异。周一早晨7点时汽车站处通常出现的情形和预期情形与周六早晨7点时同一汽车站处通常出现的情形存在显著差异。这些只是示例。
在决策框232处,确定是否检测到异常行为。这可以通过识别所检测到的人的移动不同于预期情形来实现。看到一个人奔跑着赶火车可为预期的;看到一群人都逃离同一列火车不是预期的,并且可以被解释为异常的。在一些情况下,当人们的移动速度比预期快、比预期慢、突然改变方向或速度、突然举起手、奔逃或进行某些其他异常行为时,可怀疑存在异常行为。如果怀疑或检测到异常行为,则可以引发警报,如框234处所示。
图11是示出确定所检测到的人在视频流内的移动速度的例示性方法240的流程图。如框242所示,第一步骤是确定人从一帧行进到下一帧或者两帧或更多帧之外的后续帧的距离。距离D可在透视图中并且根据框244处给出的公式来确定。其中,(X1,Y1)指的是人在第一帧中的相对位置(例如,像素位置),并且(X2,Y2)指的是人在下一帧中的相对位置(例如,像素位置)。在该公式中,“w”和“h”指的是视频帧内的人的表观宽度和表观高度,或者指的是限定人的边界框的表观宽度和表观高度。宽度和高度能够以任何合适的尺寸测量。在一些情况下,宽度和高度能够以像素测量。
该公式给出了欧几里得距离,并且通过人(或边界框)的相对大小来归一化。应当理解,对于给定大小的人,如果更靠近相机,则将显得更大,并且如果更远离相机,则将显得更小。对于以相同速度移动的两个人,前景中的人从第一帧到第二帧可移动十个像素,而背景中的人从第一帧到第二帧可仅移动五个像素。然而,前景中的人(或其边界框)的宽度“w”和高度“h”将大于背景中的人的宽度和高度。因此,可以相对于人的大小(“w”和“h”)对人的速度进行归一化,以得到表示人在空间中的物理速度的量度。在框246处,确定表示人的速度的度量。
图12是示出检测异常行为的例示性方法250的流程图。在框252处,确定变量AvePS。AvePS是每个人在特定帧中的个人速度的平均速度。在框254处,计算表示五帧移动平均值的变量5FMA。框256表示自动箱选择,其依赖于斯透奇斯规则来确定应当使用多少箱。
在框258处,计算环境速度。框258可被视为自学习块,该自学习块随时间推移学习对于特定位置的正常情形。例如,特定位置的正常情形可随日期不同或甚至时间不同而变化。框258包括框258a,其中AvePS值被存储并且与先前AvePS值一起被绘制为直方图(分箱)。在框258b处,通过找到落入最高的箱(即,在该特定箱中具有最多速度的箱)的所有AvePS值的平均值来计算AS(环境速度)。
在框260处,在五帧移动平均值5FMA与环境速度AS之间进行比较,该比较结果由灵敏度变量S和触发阈值变量T来调节。如果(5FMA-AS)/AS的比率大于T乘以S,则在框262处生成异常移动警报。在一些情况下,阈值变量T和灵敏度变量S中的一者或两者是用户可选择的。
图13A和图13B提供了灵敏度变量S和触发阈值变量T的示例。图13A是示出沿X轴经过的帧的数量和沿Y轴的(5FMA-AS)/AS的示例值的曲线图,该曲线图绘制为图形线270。又如,图形线272示出使用不同帧移动平均值(例如,10FMA)生成的值。图13B示出具有最大高度MH 276的图形条274。最大高度MH 276表示根据灵敏度变量S缩放的(5FMA-AS)/AS值的范围。当前值条RH 278表示(5FMA-AS)/AS相对于由最大高度MH 276表示的(5FMA-AS)/AS值的范围的当前值。在一些情况下,为了提供数值示例,灵敏度变量可以在1到10之间变化,并且可以是用户可配置的。假设用户输入灵敏度变量S=2。这意味着图形条274的最大高度MH(高度276)被设置为等于值2。如果假设(5FMA-AS)/AS的当前值为0.8,则当前值条RH 278将被设置为等于最大高度MH 276的0.8/2=0.4=40%,如图所示。如果用户将灵敏度变量更改为S=4,并且(5FMA-AS)/AS的当前值保持0.8不变,则当前值条RH 278将被设置为等于最大高度MH 276的0.8/4=0.2=20%,并且当前值条RH 278将被示出为最大高度MH 276的40%。
触发阈值变量T可以设置在0%和100%之间。触发阈值变量T可以表示在触发警报之前当前值条RH 278相对于最大高度MH 276必须达到的百分比。继续上述示例,如果触发阈值变量T被设置为80%,并且灵敏度变量S被设置为等于2,则(5FMA-AS)/AS的当前值将需要达到值1.6才能触发警报。S和T的组合向用户提供了识别视频流中的异常行为的灵活性。
在一些情况下,并且为了帮助用户选择灵敏度变量S的值,可向用户显示与图13A中所示的曲线图类似的曲线图280,如图14中所见。选择条282可以与曲线图280的Y轴一起显示,以便选择灵敏度变量S的值。例示性选择条282包括可由用户上下滑动的选择点284,该选择点设置灵敏度变量S。水平线286与选择点284的当前位置相关,并且允许用户将选择点284的位置相对于(5FMA-AS)/AS的历史(和当前)值进行比较,以帮助用户选择灵敏度变量S的期望值。在示出的示例中,用户已为灵敏度变量S选择了值3.1。
本领域技术人员将认识到,本公开可以以不同于本文描述和设想的特定实施方案的各种形式来表现。因此,在不脱离如所附权利要求中所述的本公开的范围和实质的情况下,可以在形式和细节上作出改变。
Claims (10)
1.一种使用具有一个或多个处理器的计算设备来检测在摄像机的视频流中所捕获的一个或多个人的异常行为的方法,所述方法包括:
接收所述视频流;
分析所述视频流以检测所述视频流中的一个或多个人;
确定所检测到的一个或多个人中的每个人的所述视频流中的大小的量度;
确定所检测到的一个或多个人中的每个人的移动速度,其中所检测到的一个或多个人中的每个人的所述移动速度相对于所述视频流中所述人的所确定的大小的量度进行归一化;
确定所检测到的一个或多个人中的所有人的所述移动速度的平均值;
将所检测到的一个或多个人中的所有人的所述移动速度的所述平均值与环境速度进行比较;
当所检测到的一个或多个人中的所有人的所述移动速度的所述平均值超过所述环境速度至少一个阈值时,确定存在异常行为;以及
当确定存在异常行为时,输出异常移动警报。
2.根据权利要求1所述的方法,其中所述视频流包括多个视频帧,其中每个视频帧包括多个像素,其中确定所检测到的一个或多个人中的每个人的所述视频流中的大小的所述量度包括确定与对应的人相对应的像素数量。
3.根据权利要求1所述的方法,还包括:
针对所述视频流中所检测到的一个或多个人中的每个人确定边界框,所述边界框限定所述对应的人的至少一部分;以及
基于对应边界框的大小确定所检测到的一个或多个人中的每个人的所述视频流中的大小的所述量度。
4.根据权利要求1所述的方法,其中所述视频流包括多个视频帧并且每个视频帧包括多个像素,并且其中确定所述视频流中所检测到的一个或多个人中的每个人的所述移动速度包括确定所述对应的人从所述视频流的第一视频帧到第二视频帧的移动距离的量度,其中捕获所述第一视频帧与捕获所述第二视频帧之间的时间是已知的。
5.根据权利要求4所述的方法,其中确定所述视频流中所检测到的一个或多个人中的每个人的大小的所述量度包括确定与所述对应的人相对应的像素数量,并且其中所检测到的一个或多个人中的每个人的所确定的移动速度相对于与所述人相对应的所述像素数量进行归一化。
6.根据权利要求1所述的方法,还包括:
确定所检测到的一个或多个人中的所有人的所述移动速度的所述平均值包括:
针对所述视频流的多个视频帧中的每个视频帧确定所检测到的一个或多个人中的所有人的所述移动速度的所述平均值,从而得出多个帧平均移动速度;
确定所述多个帧平均移动速度的多帧移动平均值;以及
将所检测到的一个或多个人中的所有人的所述移动速度的所述平均值与所述环境速度进行比较包括将所述多帧移动平均值与所述环境速度进行比较。
7.根据权利要求1所述的方法,其中至少部分地基于在所述视频流的多个视频帧上确定的所检测到的一个或多个人中的所有人的所述移动速度的所述平均值来随时间推移学习所述环境速度。
8.根据权利要求1所述的方法,还包括:
针对所述视频流的多个视频帧中的每个视频帧确定所检测到的一个或多个人中的所有人的所述移动速度的所述平均值,从而得出多个帧平均移动速度;
根据所述多个帧平均移动速度确定典型的帧平均移动速度;以及
至少部分地基于所述典型的帧平均移动速度来设置所述环境速度。
9.根据权利要求8所述的方法,还包括:
将所述多个帧平均移动速度分箱到多个箱中;
选择所述多个箱中具有最多帧平均移动速度的箱;以及
基于所选择的箱的所述多个帧平均移动速度中的一个或多个帧平均移动速度确定所述环境速度。
10.根据权利要求1所述的方法,其中所述摄像机具有视场,并且分析所述视频流以检测所述视频流中的一个或多个人包括:
识别所述视频流中的感兴趣区域,其中所述感兴趣区域对应于小于所述摄像机的整个视场;以及
检测所述视频流的所述感兴趣区域中的一个或多个人,而不检测不在所述视频流的所述感兴趣区域中的人。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/683,910 US20230282030A1 (en) | 2022-03-01 | 2022-03-01 | Erratic behavior detection in a video stream |
US17/683,910 | 2022-03-01 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116704394A true CN116704394A (zh) | 2023-09-05 |
Family
ID=85224997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310138161.6A Pending CN116704394A (zh) | 2022-03-01 | 2023-02-20 | 视频流中的异常行为检测 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230282030A1 (zh) |
EP (1) | EP4239595A1 (zh) |
CN (1) | CN116704394A (zh) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102156880B (zh) * | 2011-04-11 | 2013-01-09 | 上海交通大学 | 基于改进的社会力模型的异常集群行为检测方法 |
US11527146B2 (en) * | 2019-11-22 | 2022-12-13 | Verizon Patent And Licensing Inc. | Detecting threat events |
-
2022
- 2022-03-01 US US17/683,910 patent/US20230282030A1/en active Pending
-
2023
- 2023-02-10 EP EP23156137.4A patent/EP4239595A1/en active Pending
- 2023-02-20 CN CN202310138161.6A patent/CN116704394A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4239595A1 (en) | 2023-09-06 |
US20230282030A1 (en) | 2023-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11302117B2 (en) | Anomaly detection method, system and computer readable medium | |
JP7163945B2 (ja) | 移動状況推定装置、移動状況推定方法およびプログラム記録媒体 | |
US9594963B2 (en) | Determination of object presence and motion state | |
US9858486B2 (en) | Device and method for detecting circumventing behavior and device and method for processing cause of circumvention | |
JP4705090B2 (ja) | 煙感知装置及びその方法 | |
CN107679471B (zh) | 基于视频监控平台的室内人员空岗检测方法 | |
JP4663756B2 (ja) | 異常行動検知装置 | |
KR102195706B1 (ko) | 침입 탐지방법 및 그 장치 | |
US8538063B2 (en) | System and method for ensuring the performance of a video-based fire detection system | |
JP4694589B2 (ja) | 自動監視システム | |
CN102348128A (zh) | 具有摄像机异常检测装置的监视用摄像机系统 | |
US20190180447A1 (en) | Image processing device | |
JP7125843B2 (ja) | 障害検知システム | |
US20210075844A1 (en) | Information processing device, information processing method, and storage medium | |
JP4610005B2 (ja) | 画像処理による侵入物体検出装置および方法およびプログラム | |
KR101357721B1 (ko) | 영상 데이터를 이용하여 독거 노인에 대한 비정상 상황 발생을 감지하는 장치 및 방법 | |
CN116704394A (zh) | 视频流中的异常行为检测 | |
US11704889B2 (en) | Systems and methods for detecting patterns within video content | |
KR102445971B1 (ko) | 레이더와 카메라를 이용한 영상 감시 방법 및 시스템 | |
KR101155273B1 (ko) | 적응적 배경 기반의 터널 감시장치 및 방법 | |
JP2023168733A (ja) | 侵入者検知システム及びプログラム | |
CN117079174A (zh) | 用于改进视频分析结果的方法和系统 | |
JP2012128508A (ja) | 侵入監視装置及び侵入監視方法 | |
JP2002150290A (ja) | 侵入者検出装置 |
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 |