本发明属于交通工程领域,具体涉及一种基于实时车辆轨迹的交叉口交通冲突判别方法。
背景技术:
平面交叉口作为道路系统中的重要组成部分,由于交通量大、冲突点多及视线盲区大,并且是各向交通流的汇集点,因而存在着诸多交通安全风险。目前,交通冲突的采集方法主要是通过人工观察的手段,这种方法实时性差且耗时费力,采集的信息不够准确。随着智能交通技术的发展,利用视频检测技术对交通冲突进行判别计数成为了可能。但现有利用视频技术检测交通冲突系统的研究还存在着诸多问题,如目标检测不准确,跟踪效果不好等。
技术实现要素:
本发明为解决上述问题,提出一种基于实时车辆轨迹的交叉口交通冲突判别方法。
本发明涉及一种基于实时车辆轨迹的交叉口交通冲突判别方法,包括如下步骤:
步骤一、采集实时视频图像数据,对其进行图像灰度化、中值滤波和二值化的预处理;
步骤二、根据混合高斯背景模型建立视频背景模型,并通过形态学滤波提取车辆目标;
步骤三、根据扩展卡尔曼滤波方法的最小外接矩形框的质心坐标,获取车辆的运行轨迹,并跟踪运动目标;
步骤四、采集交叉口交通流轨迹速度参数数据;
步骤五、基于实时的交通流数据,创建车辆的交通冲突判别模型和冲突计数方法。
进一步地,步骤一中,图像灰度化、中值滤波和二值化的具体过程为:
(1)采用移动平均法对视频图像灰度化,将彩色像素转换为灰度像素;
(2)对灰度化的图像进行中值进行滤波去噪处理;二维中值滤波的公式如下:
g(x,y)=med{f(x-k,y-l),(k,l∈w)}
其中,f(x,y),g(x,y)分别为原始图像和处理后图像;
(3)选择一个合适的阈值,利用图像二值化对图像中感兴趣的部分分离,把整个图像分割为两部分,灰度值大于这个基准值的部分灰度赋值为0,灰度值小于这个基准值的部分灰度赋值为255,最佳阈值由otsu法来确定,otsu法公式如下:
类间方差σ2=p1(μ1-μ)2+p2(μ2-μ)2
式中μ1、μ2——两部分各自的灰度均值;
p1、p2——两部分各自的概率;
μ——图像整体灰度均值;
图像阈值化处理的一般变换函数表达式为:
式中e(i,j)——像素的的灰度
t——选定的阈值。
进一步地,步骤二中,根据混合高斯背景模型建立视频背景模型的步骤如下:
(1)初始化k组高斯模型
当前帧中的像素x,分别与k个模型做差分,若第i组差分结果小于阂值,称像素xt,与第i组高斯模型匹配,否则称为不匹配;
(2)更新权重,更新公式为:
ωi,t=(1-a)ωi,t-1+mi,ta
式中a为更新速率,当像素xt与第i组模型匹配时,mi=1,否则mi=0;
(3)更新与像素xt匹配的模型,更新公式为:
μt=(1-ρ)μt-1+ρxt
式中,ρ为更新速率,α为更新速率。均值与标准差的更新速率不是固定值,像素xt与背景模型的匹配度越高,更新速率越快;
(4)在二值图像中标记运动目标;
(5)返回步骤二处理下一帧。
进一步地,步骤二中,通过形态学滤波提取车辆目标,是对二值化及差分处理以后的图像存在的许多孤立的点、孤立的小区域、小间隙和孔洞进行数学形态学滤波处理,先腐蚀消除目标图像中的无用点,再膨胀将与目标接触的所有点合并到该目标,对车辆图像进行检测。
进一步地,步骤三中,首先提取外接矩形跟踪框,找到最小外接矩形的质心坐标,进而计算相关的交通流参数。
进一步地,步骤三中,提取外接矩形跟踪框时,运动区域的最小外接矩形坐标信息被定义为两个坐标点(xmin,ymin),(xmax,ymax),各个值具体求解公式为:
用边界框标识的运动区域外接矩形框的四个坐标为a(xmin,ymin),b(xmax,ymin),c(xmin,ymax),d(xmax,ymax)。
进一步地,所述外接矩形框的跟踪,即只有0和255的二值图像中,0代表背景像素,255代表运动区域像素;当第一次出现大于0.5的像素点时,记录这时的行号记为t1,当最后一次出现大于0.5的像素点时,记录这时的行号为t2;以相同的方式从左到右扫描经过处理的二值图像,对每一列的值为255的像素点进行计数,当第一次出现大于0.5的像素点时,记录这时的列号记为l1,当最后一次出现大于0.5的像素点时,记录这时的列号为l2。在记录了t1、t2、l1、l2这四个值后,行间距tδ为tδ=t1-t2,列间距lδ为:lδ=l1-l2,根据坐标即可画出最小外接矩形框。
进一步地,跟踪质心获取车辆轨迹时,根据外接矩形框的四个坐标a(xmin,ymin),b(xmax,ymin),c(xmin,ymax),d(xmax,ymax)得到最小外接矩阵的高度为:h=xmax-xmin;宽度为:l=ymax-ymin;质心的坐标为(xmin+h/2,ymin+l/2),对提取到的车辆记录其每一帧或其中若干帧图像中的矩形框质心用于数据统计,连续帧的矩形框质心即为车辆的行驶轨迹。
进一步地,步骤四中,通过获取的车辆相关数据进行交通流参数的计算,可得时间间隔t=∑δt,δt为视频的每帧图像时间间隔;车辆流率
进一步地,步骤五中,具体操作步骤如下:
(1)对当前车辆的运动轨迹和前进方向为参考,考虑其它各个方向的交通流与当前车辆冲突的可能性,可以将冲突再细分为七类:直行与对向左转冲突、同向左转冲突、同向右转冲突、同向直行冲突、右转车流与对向左转车流的合流冲突、同向直行车流与右转车流的分流冲突和同向直行车流与左转车流的分流冲突;
(2)对交通冲突进行判别,判断两车的行驶轨迹是否为碰撞轨迹,如果两个运动物体在同一时刻的轨迹有交叉,则认为发生交通冲突,交通冲突判别的具体的步骤为:
步骤a:获取车辆速度参数和轨迹位置参数;
步骤b:计算两辆车的距离,判断是否车辆间的距离相近;
步骤c:计算最小距离,判断是否有潜在碰撞可能;
步骤d:若有潜在碰撞可能,计算临界冲突距离;
步骤e:根据当前的两辆车的距离,判断两辆车处于何种状态;
步骤f:若车辆小于临界冲突距离,则发生交通冲突车辆处于交通冲突状态;
(3)在交通冲突识别后,结合视频图像数据,对车辆在某段时间内发生的交通冲突进行计数,具体过程为:
步骤a:基于获取的车辆轨迹和速度参数,判断车辆是否足够接近;
步骤b:车辆足够接近,判断车辆是否处于平稳运行状态;
步骤c:车辆处于平稳运行状态,根据基于车辆轨迹进行交通冲突的识别方法判断车辆状态;
步骤d:两辆车处于冲突状态,对车辆进行标记;
步骤e:标记处于冲突状态的车辆后,对冲突状态的车辆进行跟踪;
步骤f:判断其是否有运动状态改变的行为;
步骤g:判断其是否重新回归到平稳运行状态,若车辆重新回归到平稳运行状态,则记为一次交通冲突,并对车辆解除冲突状态标记。
本发明提供了基于视频的车辆运行轨迹的交通冲突判别和计数方法,可以实时检测交叉口的交通冲突并计数,更加的高效准确,通过与人工计数法获得的交通冲突数相比较,准确度较高。
附图说明
图1为本发明的技术流程概图;
图2为本发明详细的技术流程图;
图3a为本发明的第99帧原图像;图3b本发明的灰度化处理的图像;图3c为本发明中值滤波后的图像;图3d为本发明二值化处理后的图像;
图4为本发明的运动目标提取例图;
图5为本发明的运动目标跟踪例图;
图6为本发明的摄像扫描线示意图;
图7为本发明跟踪车辆质心坐标获取的实际坐标、速度、方向角及加速度信息;
图7a为本发明中直行与对向左转冲突示意图;图7b为本发明中同向左转冲突示意图;图7c为本发明中同向右转冲突示意图;图7d为本发明中同向直行冲突示意图;图7e为本发明中右转车流与对向左转冲突示意图;图7f为本发明中同向直行与右转冲突示意图;图7g为本发明中同向直行与左转冲突冲突示意图;
图8为本发明中两车辆之间的冲突示意图;
图9为本发明与人工计数法在不同时段下的交通冲突数示意图。
具体实施方式
实施例1
本实施例涉及一种基于实时车辆轨迹的交叉口交通冲突判别方法的具体过程,如图1所示:
步骤一、采集实时视频图像数据,对其进行图像灰度化、中值滤波和二值化的预处理;
步骤二、根据混合高斯背景模型建立视频背景模型,并通过形态学滤波提取车辆目标;
步骤三、根据扩展卡尔曼滤波方法的最小外接矩形框的质心坐标,获取车辆的运行轨迹,并跟踪运动目标;
步骤四、采集交叉口交通流轨迹速度参数数据;
步骤五、基于实时的交通流数据,创建车辆的交通冲突判别模型和冲突计数方法。
实施例2
结合图2说明本实施方式,以哈尔滨市嵩山路与淮河路交叉口为例,该交叉口右转车不受信号限制,因此会出现直行与右转车发生交通冲突。
本实施例中,上述步骤一对图像灰度化、中值滤波和二值化进行预处理的具体过程为:
(1)采用移动平均法对视频图像灰度化,将彩色像素转换为灰度像素公式为
gray=0.299r+0.587g+0.114b
式中r、g、b——原图像的红、绿、蓝分量;
处理前后的的图像见图3a和3b。
(2)对灰度化的图像进行中值滤波去噪处理见图3c,二维中值滤波的公式如下:
g(x,y)=med{f(x-k,y-l),(k,l∈w)}
其中,f(x,y),g(x,y)分别为原始图像和处理后图像。
(3)利用图像二值化对图像中感兴趣的部分分离,选择一个合适的阈值,把整个图像分割为两部分,灰度值大于这个基准值的部分灰度赋值为0(黑色),灰度值小于这个基准值的部分灰度赋值为255(白色),最佳阈值由otsu法(最大类间方差法)来确定,见图3d,otsu法公式如下:
类间方差σ2=p1(μ1-μ)2+p2(μ2-μ)2
式中μ1、μ2——两部分各自的灰度均值;
p1、p2——两部分各自的概率;
μ——图像整体灰度均值。
图像阈值化处理的一般变换函数表达式为:
式中e(i,j)——像素的的灰度
t——选定的阈值
实施例3
结合图2和图4来说明此实施例,本实施例中,上述步骤二根据混合高斯背景模型建立视频背景模型,并通过形态学滤波提取车辆目标的具体过程为:
(1)利用混合高斯分布模型建立视频的背景模型,进行背景差分提取车辆图像,步骤如下:
步骤a、初始化k组高斯模型;
当前帧中的像素x,分别与k个模型做差分,若第i组差分结果小于阂值(一般取2.5σ),称像素xt,与第i组高斯模型匹配,否则称为不匹配;
步骤b、更新权重,更新公式为:
ωi,t=(1-a)ωi,t-1+mi,ta
式中a为更新速率,当像素xt与第i组模型匹配时,mi=1,否则mi=0
步骤c、更新与像素xt匹配的模型,更新公式为:
μt=(1-ρ)μt-1+ρxt
(2)根据形态学滤波处理图像中含有的许多孤立的点、孤立的小区域、小间隙和孔洞;先腐蚀后膨胀,腐蚀是为了消除目标图像中的无用点;膨胀是为了将与目标接触的所有点合并到该目标;x用b来腐蚀记为
x用b来膨胀记为
图中x是被处理的对象,b是结构元素。
实施例4
结合图2和图5来说明此实施例,在上述步骤三中,根据扩展卡尔曼滤波方法的最小外接矩形框的质心坐标来获取车辆的运行轨迹,进行运动目标的跟踪,具体过程为:
(1)将卡尔曼滤波扩展到了非线性的系统,得到ekf算法:关于系统的方程:
状态方程:xk+1=f(xk,uk)+wk
输出方程:yk=h(xk)+vk
在每一个步长里计算下面的导数矩阵和评价状态估计。
执行以下的卡尔曼滤波方程:
kk=pkct(cpkct+r)-1
pk+1=a(i-kkc)pkat+q
(2)外接矩形跟踪框的提取,运动区域的最小外接矩形坐标信息被定义为两个坐标点(xmin,ymin),(xmax,ymax),各个值具体求解公式为:
用边界框标识的运动区域外接矩形框的四个坐标为a(xmin,ymin),b(xmax,ymin),c(xmin,ymax),d(xmax,ymax)。
(3)外接矩形框的跟踪,即只有0和255的二值图像中,0代表背景像素,255代表运动区域像素。当第一次出现大于0.5的像素点时(0.5为本文中所选取的判定值,可选取别的数值)记录这时的行号记为t1,当最后一次出现大于0.5的像素点时,记录这时的行号为t2。以相同的方式从左到右扫描经过处理的二值图像,对每一列的值为255的像素点进行计数,当第一次出现大于0.5的像素点时,记录这时的列号记为l1,当最后一次出现大于0.5的像素点时,记录这时的列号为l2。在记录了t1、t2、l1、l2这四个值后,行间距tδ为tδ=t1-t2,列间距lδ为:lδ=l1-l2,根据坐标即可画出最小外接矩形框。
(4)跟踪质心获取车辆轨迹,根据外接矩形框的四个坐标为a(xmin,ymin),b(xmax,ymin),c(xmin,ymax),d(xmax,ymax)得最小外接矩阵的高度为:h=xmax-xmin;宽度为:l=ymax-ymin;所以质心的坐标为(xmin+h/2,ymin+l/2),对提取到的车辆记录其每一帧或其中若干帧图像中的矩形框质心用于数据统计,连续帧的矩形框质心即为车辆的行驶轨迹。
实施例5
结合图2、图6和表1来说明此实施例,本实施中,上述步骤四根据以上步骤,获取交叉口交通流轨迹速度参数,具体过程为:
(1)通过获取的车辆相关数据进行交通流参数的计算,可得时间间隔t=∑δt,δt为视频的每帧图像时间间隔。
(2)车辆流率
(3)车辆速度
设车辆识别特征点所处的像素位置坐标为(x1,y1),下一帧中在列上所处的位置坐标为(x2,y2),则像素距离
d1=h×tana
d1+d2=h×tan(a+b)
d1+d2+d3=h×tan(a+b+c)
……
最后得到跟踪的car70质心坐标获取的实际坐标、速度、方向角及加速度信息如图7所示。
表1
实施例6
结合图2和图8来说明此实施例,上述步骤五基于实时的交通流数据提出了车辆的交通冲突判别模型和冲突计数方法,具体过程为:
(1)以当前车辆的运动轨迹和前进方向为参考,考虑其它各个方向的交通流与当前车辆冲突的可能性,可以将冲突再细分为七类:直行与对向左转冲突(如图7a所示)、同向左转冲突(如图7b所示)、同向右转冲突(如图7c所示)、同向直行冲突(如图7d所示)、右转车流与对向左转车流的合流冲突(如图7e所示)、同向直行车流与右转车流的分流冲突(如图7f所示)和同向直行车流与左转车流的分流冲突(如图7g所示)。
(2)对交通冲突进行判别,判断两车的行驶轨迹是否为碰撞轨迹,如果两个运动物体在同一时刻的轨迹有交叉,则认为发生交通冲突,具体的步骤为:
1)潜在冲突状态预测
当两辆车以当前状态行驶时,可以通过运动学公式判别其在未来是否会发生碰撞。其中车辆用质点表示,则两辆车不同时间的距离可以表示为:
式中,d(t)表示t时刻两点距离,x(t),y(t)表示t时刻目标在坐标系中的位置。若车辆做匀速运动,则有
xi(t)=xi(0)+vi(0)tcosθi
yi(t)=yi(0)+vi(0)tsinθi
其中,xi(0)、yi(0)表示目标0时刻的位置,xi(t)、yi(t)表示目标t时刻的位置,θi表示目标运动方向与x轴夹角,vi(0)表示目标的速度。
则两目标间的距离表示为:
对时间t求导,令
则当t=tm时,d(t)取得最小值dmin
2)临界冲突距离计算
临界冲突距离就是驾驶员从发现危险开始并采取措施直到车辆停止,车辆间刚好不发生碰撞所得到的距离。计算公式为:
其中,s为临界冲突距离,sstop为制动距离,sfeel为反应距离,v0为初始速度,a为制动减速度,tfeel为反应时间。
3)交通冲突判别
步骤a:获取车辆速度参数和轨迹位置参数;
步骤b:计算两辆车的距离,判断是否车辆间的距离相近;
步骤c:计算最小距离,判断是否有潜在碰撞可能;
步骤d:若有潜在碰撞可能,计算临界冲突距离;
步骤e:根据当前的两辆车的距离,判断两辆车处于何种状态;
步骤f:若车辆小于临界冲突距离,则发生交通冲突车辆处于交通冲突状态。
(3)在交通冲突识别后还要结合视频图像数据对车辆在一段时间内发生的交通冲突进行计数,具体过程为:
步骤a:基于获取的车辆轨迹和速度参数,判断车辆是否足够接近;
步骤b:车辆足够接近,判断车辆是否处于平稳运行状态;
步骤c:车辆处于平稳运行状态,根据基于车辆轨迹进行交通冲突的识别方法判断车辆状态;
步骤d:两辆车处于冲突状态,对车辆进行标记;
步骤e:标记处于冲突状态的车辆后,对冲突状态的车辆进行跟踪;
步骤f:判断其是否有运动状态改变的行为,如减速、加速;
步骤g:判断其是否重新回归到平稳运行状态,若车辆重新回归到平稳运行状态,则记为一次交通冲突,并对车辆解除冲突状态标记。
实施例7
结合图9和表2来说明此实施方式,本实施例中,以哈尔滨市嵩山路与淮河路交叉口为例,验证此方法的合理性,按照上述方法对该交叉口的交通冲突情况进行实时检测,识别交通冲突的个数并且判断交通冲突的类型,根据该交叉口的实际的相位方案,共得到五种交通类型,分别为同向左转冲突、同向右转冲突、同向直行冲突、同向直行与右转冲突和右转与对向左转冲突,并进行交通冲突计数。
以7:30-7:45时段下同向直行与右转的冲突为例,进行交通冲突判别。对选取的发生冲突的两辆车编号a和b,a车从西向南右转,b车从北向南直行。通过获取的两辆车的坐标,方向角以及速度等参数,对同一时刻两辆车相应的参数a车的坐标为(-107,26),方向角为169度,车速5.95m/s,b车的坐标为(-54,89),方向角为91度,车速为7.16m/s。由两辆车的运动状态,存在潜在的碰撞可能。由于右转车的通行权比直行车低,因此右转车会减速避让直行车。只需要计算a车的临界冲突距离即可,司机的反应时间为1s,a车的减速度为1.5m/s2,则临界冲突距离为
9.89s后存在最小距离为4.98m,两辆车位置与预测碰撞点的最小距离小于临界冲突距离,存在交通冲突。通过与实际相对比,右转车与直行车有明显的冲突行为,右转车减速避让直行车通过交叉口。通过对该车的运动轨迹跟踪,冲突结束后,该车恢复至原先的平稳行驶状态,至此交通冲突结束,视为一次交通冲突并计数。为验证本发明的准确性,将人工统计得到的交通冲突数和本发明的统计的交通冲突数相对比,最终验证了该发明的可行性。
表2
本发明的基于实时车辆轨迹的交叉口交通冲突判别方法,提出了一种基于混合高斯背景模型的交通流视频检测方法来对实时的车辆视频数据进行车辆识别,跟踪并提取以扩展卡尔曼滤波方法的最小外接矩形框的质心坐标来获取车辆的运行轨迹,来求取速度等交通流数据,提出了车辆的交通冲突判别模型和冲突计数方法,对交叉口的交通冲突类型进行判别。
首先对交叉口的视频图像进行灰度化处理,将将彩色像素转换为灰度像素,便于提取信息;对灰度化的图像进行中值滤波去噪处理,利用阈值分割法进行图像二值化,将车辆运动部分分离出来。
再利用混合高斯分布模型建立视频的背景模型,进行背景差分提取车辆图像;对二值化及差分处理以后的图像存在的许多孤立的点、孤立的小区域、小间隙和孔洞进行数学形态学滤波处理,先腐蚀消除目标图像中的无用点,再膨胀将与目标接触的所有点合并到该目标,对车辆图像进行检测。然后以扩展卡尔曼滤波方法的最小外接矩形框的质心坐标来获取车辆的运行轨迹的方法,提取外接矩形跟踪框,找到最小外接矩形的质心坐标,进而计算相关的交通流参数。
最后根据计算获得的交通流参数判断两车的行驶轨迹是否为碰撞轨迹,计算临界冲突距离并根据潜在冲突状态预测判断是否会发生冲突,并结合车辆的运行状态对判断交通冲突类型并计数。