CN105405297B - 一种基于监控视频的交通事故自动检测方法 - Google Patents
一种基于监控视频的交通事故自动检测方法 Download PDFInfo
- Publication number
- CN105405297B CN105405297B CN201510961047.9A CN201510961047A CN105405297B CN 105405297 B CN105405297 B CN 105405297B CN 201510961047 A CN201510961047 A CN 201510961047A CN 105405297 B CN105405297 B CN 105405297B
- Authority
- CN
- China
- Prior art keywords
- mrow
- msub
- msup
- traffic
- mtd
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/01—Detecting movement of traffic to be counted or controlled
- G08G1/017—Detecting movement of traffic to be counted or controlled identifying vehicles
- G08G1/0175—Detecting movement of traffic to be counted or controlled identifying vehicles by photographing vehicles, e.g. when violating traffic rules
-
- 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
- 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/30232—Surveillance
-
- 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/30236—Traffic on road, railway or crossing
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Image Analysis (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明公开了一种基于监控视频的交通事故自动检测方法,包括以下步骤:对监控视频序列的每一帧图像使用金字塔光流法构建光流场;基于光流场,分析视频帧全局的交通流特性,根据由光流场定义的速度流、加速度流,定义描述交通流特性的描述子,其后,根据视频帧序列构建高斯模型,并设定阈值;基于光流场,分析视频帧局部的车辆运动特性,定义局部方向图的概念并计算其能量,其后,根据视频帧序列构建高斯模型,并设定阈值;构造事故检验模型,检验交通事故是否发生。本发明提出的基于监控视频的交通事故检测方法是一种实时并且鲁棒的交通事故智能检测算法,可以迅速检测道路上发生的交通事件,减少由于交通事件所带来的影响,避免二次事件发生。
Description
技术领域
本发明涉及一种交通事故自动检测方法,尤其涉及一种基于监控视频的交通事故自动检测方法。
背景技术
随着经济的发展及汽车拥有量的增加,城市交通拥堵严重,事故频发,环境恶化,为了减少和预防交通事故的发生,对道路交通的实时检测、实时监控越来越受到人们的重视,因此智能交通系统的研究成为了热点。在交通监督和控制系统中,精确的和环境自适应的交通事故检测方法的研究有着非常重要的意义,它可以迅速检测道路上发生的交通事件,减少由于交通事件所带来的人员伤亡、财产损失等影响,避免二次事件的发生,节约能源,减少污染。随着研究的深入,诸多的研究者提出了很多有效的交通事件检测的方法。
基于智能交通系统的研究迅速发展,精确的和环境自适应的交通事故检测方法的研究吸引了广泛的注意力,近几年研究者在该领域的研究中也取得了重大进展,但是这些文献中发表的检测方法要运用到实际中仍然存在很大的困难。交通事故检测方法要运用到实际中,必须要能够处理交通情况从拥堵时段到闲暇时段的转变,以及适应不同的交通条件和光照条件。
目前在交通事故检测方法上的研究表现出两个方向:轨迹分析和运动分析。但是两种方法的主要目的都是构建正常情况下的交通运动模型,而不是直接在视频中捕捉发生的交通事故。轨迹分析方法通过使用目标轨迹建立正常的车辆轨迹模型,从而来检测异常事件,虽然这个方法取得了很大的成就,但是在不好的光照环境和复杂的交通环境等条件下快速地获得精确的车辆轨迹仍然是一个很大的难题。运动分析方法主要是通过分析整个视频帧来提取时间和空间上的特征来描述特定的目标信息。与轨迹分析方法相比,运动分析方法有着更好的能力去适应不同的交通环境,在单个事件的检测上有着很好的表现。
轨迹分析方法中,重在分析十字路口场景中的左转弯等角度碰撞,该方法无法检测更多种类的交通事故,而且一些小目标和相连的目标容易产生错误的轨迹,导致该方法检测效果较差。运动分析方法并不跟踪车辆,由于只有稀疏的监视器,该检测方法只能使用本地的信息,因此这些固定的监视器会错过一些重要的光流并产生一些错误的警报。
基于交通流的交通事件检测方法对公路上车辆的交通流参数进行估计,避免了跟踪车辆轨迹的一些弊端问题,但是在对车辆事故的检测中缺少针对性,不能捕捉事故发生的区域坐标,且容易造成事故误报、漏报等情况。基于方向图的交通事故检测方法利用全局的光流场来构建整帧图像的方向图来检测交通事故,在鲁棒性上有很大的提高,但是该算法在计算耗时上有很大的负担,运行速度较缓慢,无法保证实时性运用。
总的说来,目前针对交通事故自动定位检测仍没有一种针对性强、精确性高、鲁棒性与实时性好的检测方法。
发明内容
本发明的目的就在于为了解决上述问题而提供一种针对性强、精确性高、鲁棒性与实时性好的基于监控视频的交通事故自动检测方法。
本发明通过以下技术方案来实现上述目的:
一种基于监控视频的交通事故自动检测方法,包括以下步骤:
(1)对监控视频序列的每一帧图像使用金字塔Lucas-Kanade光流法构建光流场;
(2)基于光流场,分析视频帧全局的交通流特性,根据由光流场定义的速度流、加速度流,定义描述交通流特性的描述子,其后,根据视频帧序列构建高斯模型,并设定阈值;
(3)基于光流场,分析视频帧局部的车辆运动特性,定义局部方向图的概念并计算其能量,其后,根据视频帧序列构建高斯模型,并设定阈值;
(4)构造事故检验模型,检验交通事故是否发生。
具体地,所述步骤(1)中,每一帧图像选取的角点数目在500到1000之间。
作为优选,所述步骤(2)的具体方法包括以下步骤:
①对监控视频中第k帧的交通速度流Sk的定义如下:
其中,l表示在第k帧视频中光流的模值不为零的个数,|o1|,|o2|,...,|ol|表示第k帧中l个非零的光流的模值,交通速度流Sk代表的是一帧视频中移动像素点的平均移动速度;
②对监控视频中第k帧的交通加速度流Ck的定义如下:
Ck=|Sk-Sk-1|
其中Sk和Sk-1分别代表第k帧和第k-1帧的交通速度流,交通加速度流Ck代表的是当前帧移动像素点的平均移动速度的变化量;
③根据交通速度流与交通加速度流构造描述子:首先定义交通监控视频中第k帧的活跃值Gk的概念,定义公式如下:
Gk=p1Sk+p2Ck+p3SkCk
其中,p1,p2,p3是调节交通速度流和交通加速度流以及它们乘积的权值,活跃值Gk代表的是第k帧视频中交通速度流和加速度流以及它们的乘积的一个加权活跃性;
对于描述子Mk,定义如下:
Mk=|Gk-Gk-1|
第k帧交通视频的描述子Mk表示的是当前帧的活跃值Gk和前一帧活跃值Gk-1的差值的绝对值;
整个交通监控视频的描述子序列为M1,M2,...Mk...,第k帧之前的描述子序列的均值Uk的计算公式如下:
其中Tk是在第k帧之前的描述子序列的总帧数;
根据计算出来的描述子序列均值Uk来计算交通事故检测模型的第一个阈值:
δk=HUk
其中H是一个调节阈值的常数;
所述步骤(3)的具体方法包括以下步骤:
A、构建交通运动方向图:在光流场中,假设从当前帧提取的光流集合O={o1,o2,...,on},其中每条光流oi拥有一个起始坐标点和终止坐标点根据这个起止坐标对,计算出光流的方向θi和光流的模值|oi|,运动方向图与光流图和原始视频具有同样的尺寸,光流oi在运动方向图中对应着一块矩形区域Wi,其具体区域由下式指定:
其中,表示光流oi起始点的坐标,表示光流oi终止点的坐标;
在运动方向图中,区域Wi的面积是由光流的模值|oi|决定的,而光流的方向决定区域Wi中像素点的取值,具体像素点的取值由下式决定:
通过上式,在视频图像上的不同光流的方向被映射为在运动方向图上具有不同像素值的区域,由于光流方向反映了物体运动方向,所以将物体的运动方向分布映射成运动方向图,将当前帧提取的光流集合O={o1,o2,...,on}转化为映射区域集合W={W1,W2,...,Wn};
当两个映射的区域Wi和Wj出现相交的情况即Wi∩Wj≠φ,i≠j,就会发生赋值的冲突,通过将区域Wi和Wj融合形成新的块Bi来解决,新的块Bi的具体定义如下:
其中,n是指在视频图像中提取到的光流总数;
对于在块Bi中像素点的赋值,按照下式进行:
其中,(x,y)表示在块Bi中的像素点坐标;
通过上述的操作,视频图像上的光流集合O={o1,o2,...,on}被转化为运动方向图上的块的集合B={Bi,B2,...,Bm};
B、计算块Bi的能量:在运动方向图中,块Bi的能量由下式计算得到:
其中,D(Bi)的计算公式如下所示:
其中,N表示块Bi中像素值种类数,p(x)表示在块Bi中像素值等于x的像素点所占比率;
V(Bi,Bj)的计算公式如下所示:
V(Bi,Bj)=|D(Bi)-D(Bj)|;
C、计算运动方向图的能量:第k帧视频图像所对应的运动方向图fk的能量,按照下式计算:
其中,M是运动方向图fk中团块总数,λ是一个调节阈值的常数,表示在运动方向图中能量最大的块;
D、构建基于交通方向图序列的交通事故检测模型:首先采用以下公式估计在运动方向图fk之前的能量序列的均值uk和标准差σk:
其中,Tk是在第k帧之前的运动方向图序列的总帧数;
然后根据估计出来的均值uk和标准差σk计算交通事故检测模型的第二个阈值即报警阈值为:
βk=uk+1.96*σk;
E、构建基于双高斯模型的交通事故检测系统:
通过第二个阈值βk来检测当前运动方向图的能量E(fk)是否超过了检测阈值来判定是否在当前帧发生了交通事故,通过第一个阈值δk配合第二个阈值对交通流的速度变化以及混乱异常进行双重检测来检测交通事故是否发生,同时排除由于帧间光流场的多处混乱而造成的交通事故误报,双重判定方法如下:
其中,S表示事故运动方向图集合,R表示正常运动方向图集合,如果S≠φ,则表示发生了交通事故,S集合中运动方向图所对应的视频帧即为发生交通事故的视频帧,这些运动方向图中能量最高的团块所对应的区域即为在视频图像中发生交通事故的区域;
所述步骤(4)的具体方法为:首先计算出当前视频帧中能量最大的块Bi中涵盖的光流的数目opnum,并且设定阈值γ,该阈值根据实验学习获得,由此得到交通事故检验的判定模型:
opnum>γ
若模型数据通过了双高斯检测模型阈值,并且满足上述判定条件,则通过检验模型可知块Bi对应区域确实发生了交通事故,故发出警报,否则该处没有发生交通事故,不发生警报。
优选地,所述步骤③中,将p1设置为0.4,将p2设置为0.1,将p3设置为0.5,将H设为1.5;所述步骤C中,将λ设为2。
本发明的有益效果在于:
本发明利用构建的光流场,针对交通事故所形成的全局交通流异常和光流场局部混乱的特性,提出了双高斯模型:基于描述子序列的交通事故检测模型、基于交通方向图序列的交通事故检测模型,双高斯模型交叉地对帧图像的全局和局部行为特征进行分析,相比单模型冗余的计算,既提高了整体算法的运行速度,也增强了交通事故检测系统的鲁棒性和环境自适应性;通过交通事故的检验模型,很好地排除了当有车辆从视频边缘突然快速开进来或者有车辆在视野中突然大幅度改变速度和方向等特殊情况发生时容易造成的事故误报,而且该检验模块是对之前的光流场的局部信息进一步地分析,对整体算法运行速度的影响微乎其微,但进一步保证了整体算法的实时性和稳健性。
实验表明,本发明提出的基于监控视频的交通事故检测方法是一种实时并且鲁棒的交通事故智能检测算法,可以迅速检测道路上发生的交通事件,减少由于交通事件所带来的人员伤亡、财产损失等影响,避免二次事件的发生,节约能源,减少污染。
附图说明
图1是本发明所述基于监控视频的交通事故自动检测方法的流程图;
图2是不同交通事故场景对应的光流场和局部方向图;
图3是放大后的局部方向图,对应于图2中的一幅图;
图4是普通块的灰度直方图;
图5是能量最大块的灰度直方图;
图6-1是双高斯模型能量波动图之一;
图6-2是双高斯模型能量波动图之二;
图7-1是交通事故自动检测以及定位结果示意图之一;
图7-2是交通事故自动检测以及定位结果示意图之二;
图7-3是交通事故自动检测以及定位结果示意图之三;
图7-4是交通事故自动检测以及定位结果示意图之四;
图7-5是交通事故自动检测以及定位结果示意图之五。
具体实施方式
下面结合附图对本发明作进一步说明:
图1示出了本发明所述基于监控视频的交通事故自动检测方法的基本流程,下面结合该基本流程对本方法进行具体描述。
本发明所述基于监控视频的交通事故自动检测方法,包括以下步骤:
(1)对监控视频序列的每一帧图像使用金字塔Lucas-Kanade光流法构建光流场,如图2所示,每一帧图像选取的角点数目在500到1000之间;为了对本检测方法的实时性、精确性以及环境自适应性进行验证,我们搜集了如图2所示的多个含有交通事故的视频源和多个不含交通事故的视频源进行实验,视频源中包括了不同清晰度的交通监控视频、不同光照条件下的交通监控视频、不同时间段的交通监控视频以及不同交通密度下的交通监控视频。
(2)基于光流场,分析视频帧全局的交通流特性,根据由光流场定义的速度流、加速度流,定义描述交通流特性的描述子,其后,根据视频帧序列构建高斯模型,并设定阈值;本步骤的具体方法包括以下步骤:
①对监控视频中第k帧的交通速度流Sk的定义如下:
其中,l表示在第k帧视频中光流的模值不为零的个数,|o1|,|o2|,...,|ol|表示第k帧中l个非零的光流的模值,交通速度流Sk代表的是一帧视频中移动像素点的平均移动速度;
②对监控视频中第k帧的交通加速度流Ck的定义如下:
Ck=|Sk-Sk-1|
其中Sk和Sk-1分别代表第k帧和第k-1帧的交通速度流,交通加速度流Ck代表的是当前帧移动像素点的平均移动速度的变化量;
③根据交通速度流与交通加速度流构造描述子:首先定义交通监控视频中第k帧的活跃值Gk的概念,定义公式如下:
Gk=p1Sk+p2Ck+p3SkCk
其中,p1,p2,p3是调节交通速度流和交通加速度流以及它们乘积的权值,这里将p1设置为0.4,将p2设置为0.1,将p3设置为0.5,活跃值Gk代表的是第k帧视频中交通速度流和加速度流以及它们的乘积的一个加权活跃性;
对于描述子Mk,定义如下:
Mk=|Gk-Gk-1|
第k帧交通视频的描述子Mk表示的是当前帧的活跃值Gk和前一帧活跃值Gk-1的差值的绝对值;
整个交通监控视频的描述子序列为M1,M2,...Mk...,第k帧之前的描述子序列的均值Uk的计算公式如下:
其中Tk是在第k帧之前的描述子序列的总帧数;
根据计算出来的描述子序列均值Uk来计算交通事故检测模型的第一个阈值:
δk=HUk
其中H是一个调节阈值的常数,这里将H设为1.5;
光流场效果如图2所示,描述子高斯模型如图6-1、图6-2所示。
(3)基于光流场,分析视频帧局部的车辆运动特性,定义局部方向图的概念并计算其能量,其后,根据视频帧序列构建高斯模型,并设定阈值;本步骤的具体方法包括以下步骤:
A、构建交通运动方向图:在光流场中,假设从当前帧提取的光流集合O={o1,o2,...,on},其中每条光流oi拥有一个起始坐标点和终止坐标点根据这个起止坐标对,计算出光流的方向θi和光流的模值|oi|,运动方向图与光流图和原始视频具有同样的尺寸,光流oi在运动方向图中对应着一块矩形区域Wi,其具体区域由下式指定:
其中,表示光流oi起始点的坐标,表示光流oi终止点的坐标;
在运动方向图中,区域Wi的面积是由光流的模值|oi|决定的,而光流的方向决定区域Wi中像素点的取值,具体像素点的取值由下式决定:
通过上式,在视频图像上的不同光流的方向被映射为在运动方向图上具有不同像素值的区域,由于光流方向反映了物体运动方向,所以将物体的运动方向分布映射成运动方向图,将当前帧提取的光流集合O={o1,o2,...,on}转化为映射区域集合W={W1,W2,...,Wn};
当两个映射的区域Wi和Wj出现相交的情况即Wi∩Wj≠φ,i≠j,就会发生赋值的冲突,通过将区域Wi和Wj融合形成新的块Bi来解决,新的块Bi的具体定义如下:
其中,n是指在视频图像中提取到的光流总数;
对于在块Bi中像素点的赋值,按照下式进行:
其中,(x,y)表示在块Bi中的像素点坐标;
通过上述的操作,视频图像上的光流集合O={o1,o2,...,on}被转化为运动方向图上的块的集合B={Bi,B2,...,Bm};
B、计算块Bi的能量:在运动方向图中,块Bi的能量由下式计算得到:
其中,D(Bi)的计算公式如下所示:
其中,N表示块Bi中像素值种类数,p(x)表示在块Bi中像素值等于x的像素点所占比率;
V(Bi,Bj)的计算公式如下所示:
V(Bi,Bj)=|D(Bi)-D(Bj)|;
C、计算运动方向图的能量:第k帧视频图像所对应的运动方向图fk的能量,按照下式计算:
其中,M是运动方向图fk中团块总数,λ是一个调节阈值的常数,这里将λ设为2,表示在运动方向图中能量最大的块;
D、构建基于交通方向图序列的交通事故检测模型:首先采用以下公式估计在运动方向图fk之前的能量序列的均值uk和标准差σk:
其中,Tk是在第k帧之前的运动方向图序列的总帧数;
然后根据估计出来的均值uk和标准差σk计算交通事故检测模型的第二个阈值即报警阈值为:
βk=uk+1.96*σk;
E、构建基于双高斯模型的交通事故检测系统:
通过第二个阈值βk来检测当前运动方向图的能量E(fk)是否超过了检测阈值来判定是否在当前帧发生了交通事故,通过第一个阈值δk配合第二个阈值对交通流的速度变化以及混乱异常进行双重检测来检测交通事故是否发生,同时排除由于帧间光流场的多处混乱而造成的交通事故误报,双重判定方法如下:
其中,S表示事故运动方向图集合,R表示正常运动方向图集合,如果S≠φ,则表示发生了交通事故,S集合中运动方向图所对应的视频帧即为发生交通事故的视频帧,这些运动方向图中能量最高的团块所对应的区域即为在视频图像中发生交通事故的区域;
局部方向图构造如图2所示,局部方向图高斯模型如图6-1、图6-2所示;图3、图4和图5直接显示了局部方向图中普通块以及能量最大块的灰度直方图,在局部方向图中,能量最大块对应了原视频帧中可能存在交通异常的区域,相对于其他区域,灰度直方图也显示了该区域的混乱。
(4)构造事故检验模型,检验交通事故是否发生;本步骤的具体方法为:
首先计算出当前视频帧中能量最大的块Bi中涵盖的光流的数目opnum,并且设定阈值γ,该阈值根据实验学习获得,由此得到交通事故检验的判定模型:
opnum>γ
若模型数据通过了双高斯检测模型阈值,并且满足上述判定条件,则通过检验模型可知块Bi对应区域确实发生了交通事故,故发出警报,否则该处没有发生交通事故,不发生警报;
本步骤对交通事故的发生进行最终的判断,并对交通事故区域进行定位,如图7-1、图7-2、图7-3、图7-4、图7-5所示。
用上述检测方法在对不同交通条件下的视频源进行实验中,算法运行速度与视频本身的播放速度几乎没有差别,完成达到了实时性应用的要求;并且在检测效果上,我们的检测系统没有发生事故误报的情况,获得了93.8%的检测准确率,完全达到了实时性、鲁棒性以及环境自适应性的要求。
上述实施例只是本发明的较佳实施例,并不是对本发明技术方案的限制,只要是不经过创造性劳动即可在上述实施例的基础上实现的技术方案,均应视为落入本发明专利的权利保护范围内。
Claims (4)
1.一种基于监控视频的交通事故自动检测方法,其特征在于:包括以下步骤:
(1)对监控视频序列的每一帧图像使用金字塔Lucas-Kanade光流法构建光流场;
(2)基于光流场,分析视频帧全局的交通流特性,根据由光流场定义的速度流、加速度流,定义描述交通流特性的描述子,其后,根据视频帧序列构建高斯模型,并设定阈值;
(3)基于光流场,分析视频帧局部的车辆运动特性,定义局部方向图的概念并计算其能量,其后,根据视频帧序列构建高斯模型,并设定阈值;
(4)构造事故检验模型,检验交通事故是否发生。
2.根据权利要求1所述的基于监控视频的交通事故自动检测方法,其特征在于:所述步骤(1)中,每一帧图像选取的角点数目在500到1000之间。
3.根据权利要求1所述的基于监控视频的交通事故自动检测方法,其特征在于:所述步骤(2)的具体方法包括以下步骤:
①对监控视频中第k帧的交通速度流Sk的定义如下:
<mrow>
<msub>
<mi>S</mi>
<mi>k</mi>
</msub>
<mo>=</mo>
<mfrac>
<mrow>
<mo>|</mo>
<msub>
<mi>o</mi>
<mn>1</mn>
</msub>
<mo>|</mo>
<mo>+</mo>
<mo>|</mo>
<msub>
<mi>o</mi>
<mn>2</mn>
</msub>
<mo>|</mo>
<mo>+</mo>
<mn>...</mn>
<mo>|</mo>
<msub>
<mi>o</mi>
<mi>l</mi>
</msub>
<mo>|</mo>
</mrow>
<mi>l</mi>
</mfrac>
</mrow>
其中,l表示在第k帧视频中光流的模值不为零的个数,|o1|,|o2|,...,|ol|表示第k帧中l个非零的光流的模值,交通速度流Sk代表的是一帧视频中移动像素点的平均移动速度;
②对监控视频中第k帧的交通加速度流Ck的定义如下:
Ck=|Sk-Sk-1|
其中Sk和Sk-1分别代表第k帧和第k-1帧的交通速度流,交通加速度流Ck代表的是当前帧移动像素点的平均移动速度的变化量;
③根据交通速度流与交通加速度流构造描述子:首先定义交通监控视频中第k帧的活跃值Gk的概念,定义公式如下:
Gk=p1Sk+p2Ck+p3SkCk
其中,p1,p2,p3是调节交通速度流和交通加速度流以及它们乘积的权值,活跃值Gk代表的是第k帧视频中交通速度流和加速度流以及它们的乘积的一个加权活跃性;
对于描述子Mk,定义如下:
Mk=|Gk-Gk-1|
第k帧交通视频的描述子Mk表示的是当前帧的活跃值Gk和前一帧活跃值Gk-1的差值的绝对值;
整个交通监控视频的描述子序列为M1,M2,...Mk...,第k帧之前的描述子序列的均值Uk的计算公式如下:
<mrow>
<msub>
<mi>U</mi>
<mi>k</mi>
</msub>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<msup>
<mi>T</mi>
<mi>k</mi>
</msup>
</mfrac>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<msup>
<mi>T</mi>
<mi>k</mi>
</msup>
</munderover>
<msub>
<mi>M</mi>
<mi>k</mi>
</msub>
</mrow>
其中Tk是在第k帧之前的描述子序列的总帧数;
根据计算出来的描述子序列均值Uk来计算交通事故检测模型的第一个阈值:
δk=HUk
其中H是一个调节阈值的常数;
所述步骤(3)的具体方法包括以下步骤:
A、构建交通运动方向图:在光流场中,假设从当前帧提取的光流集合O={o1,o2,...,on},其中每条光流oi拥有一个起始坐标点和终止坐标点根据这个起止坐标对,计算出光流的方向θi和光流的模值|oi|,运动方向图与光流图和原始视频具有同样的尺寸,光流oi在运动方向图中对应着一块矩形区域Wi,其具体区域由下式指定:
<mrow>
<msub>
<mi>W</mi>
<mi>i</mi>
</msub>
<mo>=</mo>
<mo>{</mo>
<mrow>
<mo>(</mo>
<mi>x</mi>
<mo>,</mo>
<mi>y</mi>
<mo>)</mo>
</mrow>
<mo>|</mo>
<msubsup>
<mi>x</mi>
<mi>i</mi>
<mi>s</mi>
</msubsup>
<mo><</mo>
<mi>x</mi>
<mo><</mo>
<msubsup>
<mi>x</mi>
<mi>i</mi>
<mi>e</mi>
</msubsup>
<mo>,</mo>
<msubsup>
<mi>y</mi>
<mi>i</mi>
<mi>s</mi>
</msubsup>
<mo><</mo>
<mi>y</mi>
<mo><</mo>
<msubsup>
<mi>y</mi>
<mi>i</mi>
<mi>e</mi>
</msubsup>
<mo>}</mo>
</mrow>
其中,表示光流oi起始点的坐标,表示光流oi终止点的坐标;
在运动方向图中,区域Wi的面积是由光流的模值|oi|决定的,而光流的方向决定区域Wi中像素点的取值,具体像素点的取值由下式决定:
<mrow>
<msub>
<mi>I</mi>
<msub>
<mi>W</mi>
<mi>i</mi>
</msub>
</msub>
<mo>=</mo>
<mrow>
<mo>(</mo>
<mi>int</mi>
<mo>)</mo>
</mrow>
<mn>255</mn>
<mo>&CenterDot;</mo>
<msub>
<mi>&theta;</mi>
<mi>i</mi>
</msub>
<mo>/</mo>
<mn>2</mn>
<mi>&pi;</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
通过上式,在视频图像上的不同光流的方向被映射为在运动方向图上具有不同像素值的区域,由于光流方向反映了物体运动方向,所以将物体的运动方向分布映射成运动方向图,将当前帧提取的光流集合O={o1,o2,...,on}转化为映射区域集合W={W1,W2,...,Wn};
当两个映射的区域Wi和Wj出现相交的情况即Wi∩Wj≠φ,i≠j,就会发生赋值的冲突,通过将区域Wi和Wj融合形成新的块Bi来解决,新的块Bi的具体定义如下:
其中,n是指在视频图像中提取到的光流总数;
对于在块Bi中像素点的赋值,按照下式进行:
<mrow>
<msub>
<mi>I</mi>
<msub>
<mi>B</mi>
<mi>i</mi>
</msub>
</msub>
<mo>=</mo>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<msub>
<mi>I</mi>
<msub>
<mi>W</mi>
<mi>i</mi>
</msub>
</msub>
</mtd>
<mtd>
<mrow>
<mo>(</mo>
<mrow>
<mrow>
<mo>(</mo>
<mrow>
<mi>x</mi>
<mo>,</mo>
<mi>y</mi>
</mrow>
<mo>)</mo>
</mrow>
<mo>&Element;</mo>
<msub>
<mi>W</mi>
<mi>i</mi>
</msub>
<mo>&NotElement;</mo>
<msub>
<mi>W</mi>
<mi>i</mi>
</msub>
<mo>&cap;</mo>
<msub>
<mi>W</mi>
<mi>j</mi>
</msub>
</mrow>
<mo>)</mo>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>I</mi>
<msub>
<mi>W</mi>
<mi>j</mi>
</msub>
</msub>
</mtd>
<mtd>
<mrow>
<mo>(</mo>
<mrow>
<mrow>
<mo>(</mo>
<mrow>
<mi>x</mi>
<mo>,</mo>
<mi>y</mi>
</mrow>
<mo>)</mo>
</mrow>
<mo>&Element;</mo>
<msub>
<mi>W</mi>
<mi>j</mi>
</msub>
<mo>&NotElement;</mo>
<msub>
<mi>W</mi>
<mi>i</mi>
</msub>
<mo>&cap;</mo>
<msub>
<mi>W</mi>
<mi>j</mi>
</msub>
</mrow>
<mo>)</mo>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mrow>
<mo>(</mo>
<mrow>
<msub>
<mi>I</mi>
<msub>
<mi>W</mi>
<mi>i</mi>
</msub>
</msub>
<mo>+</mo>
<msub>
<mi>I</mi>
<msub>
<mi>W</mi>
<mi>j</mi>
</msub>
</msub>
</mrow>
<mo>)</mo>
</mrow>
<mo>/</mo>
<mn>2</mn>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>(</mo>
<mrow>
<mrow>
<mo>(</mo>
<mrow>
<mi>x</mi>
<mo>,</mo>
<mi>y</mi>
</mrow>
<mo>)</mo>
</mrow>
<mo>&Element;</mo>
<msub>
<mi>W</mi>
<mi>i</mi>
</msub>
<mo>&cap;</mo>
<msub>
<mi>W</mi>
<mi>j</mi>
</msub>
</mrow>
<mo>)</mo>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
其中,(x,y)表示在块Bi中的像素点坐标;
通过上述的操作,视频图像上的光流集合O={o1,o2,...,on}被转化为运动方向图上的块的集合B={Bi,B2,...,Bm};
B、计算块Bi的能量:在运动方向图中,块Bi的能量由下式计算得到:
<mrow>
<mi>E</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>B</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mi>D</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>B</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>+</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mi>j</mi>
<mo>&NotEqual;</mo>
<mi>i</mi>
</mrow>
<mi>m</mi>
</munderover>
<mi>V</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>B</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<msub>
<mi>B</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
其中,D(Bi)的计算公式如下所示:
<mrow>
<mi>D</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>B</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mo>-</mo>
<mi>N</mi>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>x</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mn>255</mn>
</munderover>
<mi>p</mi>
<mrow>
<mo>(</mo>
<mi>x</mi>
<mo>)</mo>
</mrow>
<mi>log</mi>
<mi> </mi>
<mi>p</mi>
<mrow>
<mo>(</mo>
<mi>x</mi>
<mo>)</mo>
</mrow>
</mrow>
其中,N表示块Bi中像素值种类数,p(x)表示在块Bi中像素值等于x的像素点所占比率;
V(Bi,Bj)的计算公式如下所示:
V(Bi,Bj)=|D(Bi)-D(Bj)|;
C、计算运动方向图的能量:第k帧视频图像所对应的运动方向图fk的能量,按照下式计算:
<mrow>
<mi>E</mi>
<mrow>
<mo>(</mo>
<msup>
<mi>f</mi>
<mi>k</mi>
</msup>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<mi>E</mi>
<mrow>
<mo>(</mo>
<msubsup>
<mi>B</mi>
<mi>j</mi>
<mi>k</mi>
</msubsup>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>E</mi>
<mrow>
<mo>(</mo>
<msubsup>
<mi>B</mi>
<mi>j</mi>
<mi>k</mi>
</msubsup>
<mo>)</mo>
</mrow>
<mo>></mo>
<mfrac>
<mrow>
<mi>&lambda;</mi>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mi>i</mi>
<mo>&NotEqual;</mo>
<mi>j</mi>
</mrow>
<mi>M</mi>
</munderover>
<mrow>
<mi>E</mi>
<mrow>
<mo>(</mo>
<msubsup>
<mi>B</mi>
<mi>i</mi>
<mi>k</mi>
</msubsup>
<mo>)</mo>
</mrow>
</mrow>
</mrow>
<mrow>
<mi>M</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</mfrac>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mfrac>
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>M</mi>
</munderover>
<mrow>
<mi>E</mi>
<mrow>
<mo>(</mo>
<msubsup>
<mi>B</mi>
<mi>i</mi>
<mi>k</mi>
</msubsup>
<mo>)</mo>
</mrow>
</mrow>
</mrow>
<mi>M</mi>
</mfrac>
</mtd>
<mtd>
<mrow>
<mi>o</mi>
<mi>t</mi>
<mi>h</mi>
<mi>e</mi>
<mi>r</mi>
<mi>w</mi>
<mi>i</mi>
<mi>s</mi>
<mi>e</mi>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
其中,M是运动方向图fk中团块总数,λ是一个调节阈值的常数,表示在运动方向图中能量最大的块;
D、构建基于交通方向图序列的交通事故检测模型:首先采用以下公式估计在运动方向图fk之前的能量序列的均值uk和标准差σk:
<mrow>
<msup>
<mi>u</mi>
<mi>k</mi>
</msup>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<msup>
<mi>T</mi>
<mi>k</mi>
</msup>
</mfrac>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<msup>
<mi>T</mi>
<mi>k</mi>
</msup>
</munderover>
<mi>E</mi>
<mrow>
<mo>(</mo>
<msup>
<mi>f</mi>
<mi>k</mi>
</msup>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<msup>
<mrow>
<mo>(</mo>
<msup>
<mi>&sigma;</mi>
<mi>k</mi>
</msup>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<msup>
<mi>T</mi>
<mi>k</mi>
</msup>
</mfrac>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<msup>
<mi>T</mi>
<mi>k</mi>
</msup>
</munderover>
<msup>
<mrow>
<mo>(</mo>
<mi>E</mi>
<mo>(</mo>
<msup>
<mi>f</mi>
<mi>k</mi>
</msup>
<mo>)</mo>
<mo>-</mo>
<msup>
<mi>u</mi>
<mi>k</mi>
</msup>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
</mrow>
其中,Tk是在第k帧之前的运动方向图序列的总帧数;
然后根据估计出来的均值uk和标准差σk计算交通事故检测模型的第二个阈值即报警阈值为:
βk=uk+1.96*σk;
E、构建基于双高斯模型的交通事故检测系统:
通过第二个阈值βk来检测当前运动方向图的能量E(fk)是否超过了检测阈值来判定是否在当前帧发生了交通事故,通过第一个阈值δk配合第二个阈值对交通流的速度变化以及混乱异常进行双重检测来检测交通事故是否发生,同时排除由于帧间光流场的多处混乱而造成的交通事故误报,双重判定方法如下:
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<msup>
<mi>f</mi>
<mi>k</mi>
</msup>
<mo>&Element;</mo>
<mi>S</mi>
</mrow>
</mtd>
<mtd>
<mtable>
<mtr>
<mtd>
<mrow>
<mi>E</mi>
<mrow>
<mo>(</mo>
<msup>
<mi>f</mi>
<mi>k</mi>
</msup>
<mo>)</mo>
</mrow>
<mo>></mo>
<msup>
<mi>&beta;</mi>
<mi>k</mi>
</msup>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>a</mi>
<mi>n</mi>
<mi>d</mi>
</mrow>
</mtd>
<mtd>
<mrow>
<msub>
<mi>M</mi>
<mi>k</mi>
</msub>
<mo>></mo>
<msup>
<mi>HU</mi>
<mi>k</mi>
</msup>
</mrow>
</mtd>
</mtr>
</mtable>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msup>
<mi>f</mi>
<mi>k</mi>
</msup>
<mo>&Element;</mo>
<mi>R</mi>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>o</mi>
<mi>t</mi>
<mi>h</mi>
<mi>e</mi>
<mi>r</mi>
<mi>w</mi>
<mi>i</mi>
<mi>s</mi>
<mi>e</mi>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
3
其中,S表示事故运动方向图集合,R表示正常运动方向图集合,如果S≠φ,则表示发生了交通事故,S集合中运动方向图所对应的视频帧即为发生交通事故的视频帧,这些运动方向图中能量最高的团块所对应的区域即为在视频图像中发生交通事故的区域;
所述步骤(4)的具体方法为:首先计算出当前视频帧中能量最大的块Bi中涵盖的光流的数目opnum,并且设定阈值γ,该阈值根据实验学习获得,由此得到交通事故检验的判定模型:
opnum>γ
若模型数据通过了双高斯检测模型阈值,并且满足上述判定条件,则通过检验模型可知块Bi对应区域确实发生了交通事故,故发出警报,否则该处没有发生交通事故,不发生警报。
4.根据权利要求3所述的基于监控视频的交通事故自动检测方法,其特征在于:所述步骤③中,将p1设置为0.4,将p2设置为0.1,将p3设置为0.5,将H设为1.5;所述步骤C中,将λ设为2。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510961047.9A CN105405297B (zh) | 2015-12-21 | 2015-12-21 | 一种基于监控视频的交通事故自动检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510961047.9A CN105405297B (zh) | 2015-12-21 | 2015-12-21 | 一种基于监控视频的交通事故自动检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105405297A CN105405297A (zh) | 2016-03-16 |
CN105405297B true CN105405297B (zh) | 2017-09-29 |
Family
ID=55470759
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510961047.9A Expired - Fee Related CN105405297B (zh) | 2015-12-21 | 2015-12-21 | 一种基于监控视频的交通事故自动检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105405297B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106781436B (zh) * | 2016-12-19 | 2020-03-06 | 东软集团股份有限公司 | 交通事故处理方法及装置 |
CN107180229A (zh) * | 2017-05-04 | 2017-09-19 | 南京邮电大学 | 一种监控视频中基于运动方向的异常行为检测方法 |
CN110097571B (zh) * | 2019-04-28 | 2023-06-13 | 重庆大学 | 快速高精度的车辆碰撞预测方法 |
CN110210383B (zh) * | 2019-05-31 | 2021-08-17 | 北京工业大学 | 一种融合运动模式和关键视觉信息的篮球视频语义事件识别方法 |
CN113468913B (zh) * | 2020-03-30 | 2022-07-05 | 阿里巴巴集团控股有限公司 | 数据处理、动作识别、模型训练方法、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751678A (zh) * | 2009-12-16 | 2010-06-23 | 北京智安邦科技有限公司 | 一种人群剧烈运动的检测方法及装置 |
CN102156985A (zh) * | 2011-04-11 | 2011-08-17 | 上海交通大学 | 基于虚拟卡口的行人及车辆数目计数方法 |
CN102496000A (zh) * | 2011-11-14 | 2012-06-13 | 电子科技大学 | 一种城市交通事故检测方法 |
CN103902966A (zh) * | 2012-12-28 | 2014-07-02 | 北京大学 | 基于序列时空立方体特征的视频交互事件分析方法及装置 |
CN104978561A (zh) * | 2015-03-25 | 2015-10-14 | 浙江理工大学 | 融合梯度和光流特征的视频动作行为识别方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10018703B2 (en) * | 2012-09-13 | 2018-07-10 | Conduent Business Services, Llc | Method for stop sign law enforcement using motion vectors in video streams |
-
2015
- 2015-12-21 CN CN201510961047.9A patent/CN105405297B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751678A (zh) * | 2009-12-16 | 2010-06-23 | 北京智安邦科技有限公司 | 一种人群剧烈运动的检测方法及装置 |
CN102156985A (zh) * | 2011-04-11 | 2011-08-17 | 上海交通大学 | 基于虚拟卡口的行人及车辆数目计数方法 |
CN102496000A (zh) * | 2011-11-14 | 2012-06-13 | 电子科技大学 | 一种城市交通事故检测方法 |
CN103902966A (zh) * | 2012-12-28 | 2014-07-02 | 北京大学 | 基于序列时空立方体特征的视频交互事件分析方法及装置 |
CN104978561A (zh) * | 2015-03-25 | 2015-10-14 | 浙江理工大学 | 融合梯度和光流特征的视频动作行为识别方法 |
Non-Patent Citations (1)
Title |
---|
视频分析技术在智能交通环境下的应用研究;周景磊;《中国优秀硕士学位论文全文数据库 信息科技辑》;20130115;第2-4章 * |
Also Published As
Publication number | Publication date |
---|---|
CN105405297A (zh) | 2016-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105405297B (zh) | 一种基于监控视频的交通事故自动检测方法 | |
Atev et al. | A vision-based approach to collision prediction at traffic intersections | |
US9058744B2 (en) | Image based detecting system and method for traffic parameters and computer program product thereof | |
US10713500B2 (en) | Identification and classification of traffic conflicts using live video images | |
CN103903008B (zh) | 一种基于图像识别输电线路的雾等级的方法以及系统 | |
CN114333330B (zh) | 一种基于路侧边缘全息感知的交叉口事件检测系统 | |
CN106373430A (zh) | 一种基于计算机视觉的交叉路口通行预警方法 | |
CN105389567A (zh) | 基于稠密光流直方图的群体异常检测方法 | |
CN103456024B (zh) | 一种运动目标越线判断方法 | |
CN105608431A (zh) | 一种基于车辆数目与车流速度的高速公路拥堵检测方法 | |
CN103208190B (zh) | 基于对象检测的交通流量检测方法 | |
CN106778484A (zh) | 交通场景下的运动车辆跟踪方法 | |
CN105956568A (zh) | 一种基于监控目标识别的异常行为检测预警方法 | |
CN102496000A (zh) | 一种城市交通事故检测方法 | |
Dias et al. | Elevated desired speed and change in desired direction: effects on collective pedestrian flow characteristics | |
CN113658427A (zh) | 基于视觉与雷达的路况监控方法及系统、设备 | |
Monteiro et al. | Wrongway drivers detection based on optical flow | |
Hwang et al. | Hierarchical probabilistic network-based system for traffic accident detection at intersections | |
Zheng | Developing a traffic safety diagnostics system for unmanned aerial vehicles usingdeep learning algorithms | |
Wang et al. | Vision-based highway traffic accident detection | |
CN103927523B (zh) | 一种基于纵向灰度特征的雾天等级检测方法 | |
CN104463913A (zh) | 违规停车智能检测装置与方法 | |
CN101877135A (zh) | 一种基于背景重构的运动目标检测方法 | |
Karim et al. | An attention-guided multistream feature fusion network for localization of risky objects in driving videos | |
Ardestani et al. | Signal timing detection based on spatial–temporal map generated from CCTV surveillance video |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170929 Termination date: 20211221 |
|
CF01 | Termination of patent right due to non-payment of annual fee |