一种基于机器视觉的车路协同系统和方法与流程

文档序号:15048413发布日期:2018-07-27 23:22阅读:1069来源:国知局

本发明涉及车联网技术领域以及计算机技术领域,特别是涉及了一种基于机器视觉的车路协同系统和方法。



背景技术:

随着城市汽车保有量的迅速增长,城市交通问题变得越来越严重。为了缓解交通压力及提高交通安全水平,越来越多的研究机构开始研究车路协同系统。车路协同系统通过无线通信、传感器检测及其他方式来感知交通态势,从而使交通基础设施与车辆之间能够更加智能的合作,达到优化系统资源配置、提高交通安全水平、缓解交通压力的目的。

交通态势的感知是车路协同系统中的一个十分重要的环节。随着计算机图像处理技术的快速发展,越来越多的研究者使用图像识别技术来感知交通态势。这种方法有成本低、数据正确率、实时性高,对交通流干扰小等优点。基于机器视觉的交通态势感知方法虽已有所应用,但多是用于停车场收费、车辆计数等领域,并没有实现人、车、路之间的信息交互,未应用于整个车路协同系统。



技术实现要素:

本发明提供了一种基于机器视觉的车路协同系统和方法,该车路协同系统能够通过图像识别来感知交通态势,并通过通信设施实现人、车、路之间交通态势信息的交互,从而达到提高交通效率及交通安全水平的目的。

本发明提供的基于机器视觉的车路协同系统主要包括四个子系统:图像采集子系统、车载子系统、智能信号灯子系统和边缘服务器子系统。所述的图像采集子系统、车载子系统和智能信号灯子系统分别提供数据给边缘服务器子系统,所述的边缘服务器子系统对接收到的数据进行处理后,发送bsm(基本安全消息,basicsafetymessage)及rsm(路侧单元消息,roadsidemessage)数据包给车载子系统,发送spat(信号灯消息,signalphaseandtimingmessage)数据包给智能信号灯子系统。

基于所述的车路协同系统,本发明提供一种车路协同方法,所述方法的具体步骤如下:

(1)信息获取;

信息获取主要分为两个大类:

一、信号灯信息;所述的智能信号灯子系统包括信号灯信息融合模块、信号控制器和信号灯通信模块,所述的信号灯信息融合模块会将信号灯信息打包成spat类型的数据包。

二、图像信息。所述的图像信息包括停车场图像、道路渠化图像、斑马线行人图像和交叉口车辆图像,所述的图像采集子系统包括路侧信息融合模块和路侧通信模块,所述的路侧信息融合模块会将所述的图像信息整合成视频流数据包。

(2)图像采集子系统发送图像信息给边缘服务器,车载子系统发送车辆信息给边缘服务器,智能信号灯子系统发送信号灯信息给边缘服务器;

按照中国汽车工程协会2017年9月18日发布的《车用通信系统应用层及应用数据交互标准》,本发明对图像采集子系统、车载子系统和智能信号灯子系统传输信息至边缘服务器的过程中的数据标准化为以下三种数据包类型。一、图像采集子系统将图像数据整合成视频流类型数据包,并通过单播模式发送给边缘服务器,该数据包包括各摄像头的ip地址、端口号、视频流数据。二、车载子系统将车辆数据打包成bsm类型数据包,并通过单播模式发送给边缘服务器,该数据包包括车辆电子id、车辆位置信息、车辆航向、车辆速度、车辆加速度。三、智能信号灯子系统将信号灯信息整合成spat数据包,并通过单播模式发送给边缘服务器,该数据包包括时间戳、路口id、信号id、信号状态。

(3)边缘服务器进行信息处理;

所述的边缘服务器包括边缘服务器通信模块和边缘服务器信息处理模块两部分,所述的通信模块用于与其他三个子系统的通信;所述的边缘服务器信息处理模块包括以下3个部分:基于改进的自适应阈值canny边缘检测算法识别道路渠化图像中的道路渠化信息。基于hog+svm机器学习算法识别斑马线行人图像中的行人信息。基于haar+adaboost机器学习算法识别交叉口车辆图像中的车辆信息,同时也可用此方法判断停车场图像提供的停车位中有无车辆进而获得空停车位信息。

(4)边缘服务器传输信息至车载子系统和智能信号灯子系统;

边缘服务器传输信息至终端主要包含以下两个部分:一、边缘服务器将处理过的图像信息、行人信息和停车位信息进行融合,整合成rsm数据包,该数据包包括时间戳、路口id、该路口id对应斑马线行人状态、该路口id对应交叉口车辆状态。将信号灯信息整合成spat数据包,该数据包包括时间戳、路口id、信号id、信号状态。并通过广播的方式将rsm及spat数据包传给车载子系统中的车载通信模块。二、当出现交通紧急情况,如救护车等特殊车辆通过路段时,边缘服务器通过单播模式发送特定的spat类型数据包给智能信号灯子系统控制信号灯状态,同时通过广播rsm数据包提示其余车辆让行,从而实现特殊车辆优先通行的功能。

(5)车载信息校准模块对接收的信息进行校准。

由于边缘服务器是通过广播的模式对信号覆盖范围内的车载子系统进行传递消息,所以并不是车载子系统终端接到的每个信息都是对自身有用的,本发明在车载子系统中设置了车载信息展示模块,所述的车载信息展示模块上部署信息校准程序,结合车辆位置和航向确定自身需要的信息对应的路口id,对车载子系统接收到的信息进行筛选,从而辅助判断驾驶信息的准确性。

与现有技术相比,本发明的优点在于:

(1)本发明在车路协同的环境下,综合考虑了交通要素中的人、车、路、环境,并通过标准化的数据包进行信息传输,实现了四者之间的实时信息交互,从而使车辆驾驶员能够综合各种信息做出正确的决策,提高交通运行效率及交通安全水平。

(2)本发明基于图像处理技术,利用改进的边缘检测算法及机器学习算法来处理摄像头拍摄的交叉口及道路图像。本发明改进了传统的canny边缘检测算法,将自适应寻找阈值函数加入到算法中,从而大大提高了检测算法的自适应性及检测精度。本发明充分利用了机器学习算法的优势,将通过大量数据训练形成的分类器用于系统的信息处理模块,使得行人、车辆识别程序耗时短、准确率高,从而提高了整个系统中信息的实时性和准确性。

(3)本发明使用路侧边缘服务器代替以往的城市交通中央服务器,把以往中央服务器的大量数据处理工作分摊给多个路侧边缘服务器,不仅降低了数据传输的成本,也提高了车路协同系统内信息传递的效率及稳定性。

附图说明

图1是本发明提供的基于机器视觉的车路协同系统架构图。

图2是本发明中道路渠化信息识别流程图。

图3是本发明中行人信息识别流程图。

图4是本发明中车辆信息识别流程图。

具体实施方式

下面将结合附图和实例对本发明作进一步的详细说明。

如图1所示,本发明首先提供的一种基于机器视觉的车路协同系统,所示的车路协同系统包含四个子系统:图像采集子系统、智能信号灯子系统、车载子系统和边缘服务器。

图像采集子系统会采集停车场图像、道路渠化图像、斑马线行人图像和交叉口车辆图像,并将以上图像信息数据通过路侧信息融合模块整合成视频流类型的数据包,通过路侧通信模块以单播模式(单播视频流类型数据包)发送给边缘服务器。

智能信号灯子系统采集信号灯显示器提供的信号灯信息,将信号灯信息在信号灯信息融合模块整合成spat数据包,通过信号灯通信模块以单播模式(单播spat类型数据包)发送给边缘服务器。同时通过信号灯通信模块接收边缘服务器发来的按照需要调整信号灯状态的信息(单播spat类型消息),通过信号控制器调整信号灯信息,进而在信号灯显示器上显示更新的信号灯信息。

车载子系统采集自身车辆状态信息(如航向、速度、加速度)及车载摄像头数据,并将以上数据通过车载信息融合模块整合成bsm数据包,通过车载通信模块以单播模式(单播bsm类型数据包)发送给边缘服务器。同时车载通信模块接收边缘服务器广播的rsm类型的数据包,通过车载信息校准模块校准后发送给车载信息展示模块,并用车载显示屏展示给驾驶员。

边缘服务器通过边缘服务器通信模块接收其他三个子系统发来的数据包,并采用边缘服务器信息处理模块对接收到的数据进行处理,从而对系统内的交通态势进行感知,并将数据整合成rsm数据包及spat数据包通过边缘服务器通信模块以广播模式发送给本车路协同系统信号覆盖范围内的车载子系统。另外,当特殊车辆有优先通行需求时,边缘服务器可以通过给智能信号灯子系统发送spat数据包进而控制信号灯显示器的信息状态,同时通过广播rsm数据包提示其余车辆让行。

图2是边缘服务器进行道路渠化信息识别的流程图。在本发明中,所述的边缘服务器信息处理模块采用改进的canny边缘检测算法来检测道路渠化信息。canny边缘检测算法是一种多级边缘检测方法,因其高精度和高灵敏度而被广泛使用。但canny边缘检测算法需要手动输入图像分割阈值,降低了整个系统的自动化程度。因此,本发明将最大类间方差(otsu方法)与canny边缘检测算法相结合,可以将otsu方法的自适应阈值作为参数输入到canny边缘检测算法中,从而提高道路的渠化信息识别的效率和准确性。最大类间方差(otsu方法)是一种基于最小二乘算法的自适应阈值分割方法。其基本思想是根据灰度阈值将图像分为两部分,可以使类间方差最大,使类内的方差最小。

所述的道路渠化信息识别的方法步骤如下:

步骤1:获取图像采集子系统提供的道路渠化图像,并转换为矩阵格式,设位置(x,y)的像素值为i(x,y)。所述的图像采集子系统一般通过路侧摄像头采集道路渠化图像。

步骤2:对灰度值进行分级;

假设整幅道路渠化图像的像素数为n,灰度值范围为[0,f-1],灰度i对应的像素数ni。每个灰度级的像素数量占总体像素数量的比例是bi。数学表达式如下:

步骤3:灰度值划分;

假设一个阈值y,它将道路渠化图像划分为区间[0,y]中的灰度类别l0和区间[y+1,f-1]中的灰度值的类别l1。假设整幅道路渠化图像的平均灰度值为pr,l0的平均灰度值为p0,在道路渠化图像中所占比例为z0;l1的平均灰度值为p1,在道路渠化图像中所占比例为z1。那么l0和l1的相关参数如式(2)所示。

式(3)可由上述式(2)推出:

pr=z0p0+z1p1(3)

步骤4:计算类间方差让y在[0,f-1]取值,使得取最大值,如式(4)所示。

步骤5:然后,在道路渠化图像上每一个像素点,使用一阶有限差分式近似式计算x的偏导数tx(x,y)和y的偏导数ty(x,y),如式(5)所示。

步骤6:计算梯度值t(x,y)和方位角θ(x,y),用如公式(6)所示。如果该像素点在梯度方向上大于两个相邻像素点,且两像素点之间的角度差小于45,则该像素点被认为是边缘像素点。

步骤7:使用双阈值法确定车道线。令步骤6的结果t(x,y)为高阈值,t(x,y)/2为低阈值。在图像中,灰度值高于高阈值的像素点一定是边缘像素点,灰度值低于低阈值的像素点一定不是边缘像素点。对于介于两者中间的像素点,剔除周围无边缘像素点的像素点,保留周围有边缘像素点的像素点以形成弱边缘。

步骤8:通过形态学操作中的膨胀处理将分割后不连续的车道线连成一体,形成最终的车道渠化信息。

边缘服务器信息处理模块采用hog(方向梯度直方图)+svm(支持向量机)方法对行人信息进行检测。该方法具有较高的准确性和鲁棒性。图3为hog+svm行人信息识别流程图,识别步骤如下:

步骤1:导入行人图像识别领域现阶段较为流行的行人图像数据库inriapersondataset(包括行人图像和非行人图像),压缩为64×128像素大小的图像,并转换为矩阵格式,像素点(x,y)处的值为w(x,y)。

步骤2:为了减少光照因素的影响,整个图像需要进行归一化,主要包括标准化gamma空间和颜色空间。前者可以有效地降低局部阴影和光线变化的影响,后者将rgb彩色图像转换为灰度图,可以降低颜色变化的影响。

gamma压缩公式:

w(x,y)=w(x,y)gamma(7)

其中gamma取1/2。

rgb图像灰度化:

式中h即为每像素点灰度值,r,g,b为彩色图像中每像素点的像素值。

步骤3:如公式(9)和(10)所示,计算图像在x和y方向上的梯度tx(x,y)和ty(x,y),并计算每个像素位置的梯度方向值t(x,y)和方向角θ(x,y)。这种运算不仅能够捕捉轮廓及纹理信息,而且还可以进一步减弱了光照的影响。然后使用高斯矩阵ga与梯度点乘从而弱化边缘,得到处理后的矩阵d,如式(11)。

d=t(x,y)·ga(11)

步骤4:把图像分为8×8像素大小的若干个单元(cell),每上下左右4个单元组成一个像素块(block),各单元之间不可重叠,但像素块之间会有重叠。将梯度矢量角度平均划分为9个区间,根据像素的坐标(x,y)和像素的梯度矢量角度θ(x,y),对每个像素块进行三维线性插值并累加以形成4×9=36维矢量直方图统计结果z。该步骤的目的是在保持对图像中的行人物体的姿态和外观敏感性的同时提供局部图像区域的编码。

步骤5:由于局部光线和前景-背景对比度的变化,图像梯度强度的范围非常大。梯度强度归一化可以进一步弱化光线、阴影的影响。归一化之后的块描述符z*就是hog描述符。

式中ε=0.005,z为步骤4中的直方图统计结果。

步骤6:设定一个64×128像素大小的检测窗口,用该检测窗口扫描图像,形成特征向量z*供分类器使用。具体扫描步骤为:一个64×128像素大小的检测窗口内含有8×16=128个单元,从而组成7×15=105个像素块,每个像素块含有一个36维向量,因此该检测窗口最终形成的特征向量z*为105×36=3780维的向量。

步骤7:对训练数据库(包括行人图像和非行人图像)中的每张图片重复步骤2-6,使用线性判别函数对训练数据库进行训练,如式(13)。对于行人图像,g(z*)=1;对于非行人图像,g(z*)=-1。模型训练后得到系数δ和阈值λ,从而生成基于svm+hog的行人/非行人分类器。

g(z*)=δ×z*+λ(13)

步骤8:当路侧摄像头传回斑马线行人图像时,边缘服务器信息处理模块行人检测程序将会重复步骤2-6获得该图像各个窗口的hog特征值q,然后将q代入式(13)得到结果g(q),如式(14)。若g(q)>0则该检测窗口内有行人,否则没有。从而确定图像中是否存在行人以及准确找出行人在图像中的具体位置。

g(q)=δ×q+λ(14)

边缘服务器信息处理模块使用haar+adaboost方法对交叉口图像中车辆进行识别。图4是本发明系统交叉口车辆信息识别流程图。

步骤1:导入theuiucimagedatabaseforcardetection车辆图像数据库(包括车辆图像和非车图像),将图像压缩为64×64像素大小的图片,并将每幅图片转换为矩阵格式,设位置(x,y)的像素值为c(x,y)。

步骤2:haar特征中有多种矩形特征,如边缘特征、中心环绕特征、线特征。车辆识别程序选取大小为64×64的检测窗口对图片进行扫描,提取符合条件的矩形特征λ。

步骤3:在获得矩形特征后,使用积分图方法求特征值。积分图中坐标j(x,y)代表c(x,y)左上角所有像素之和,数学表达式为:

设某一矩形左上角点为a,顺时针依次是b,c,d,则该矩形特征的haar特征值t(λ)为:

t(λ)=j(c)+j(a)-j(b)-j(d)(16)

其中,j(a),j(b),j(c),j(d)分别表示a,b,c,d点对应积分图中的坐标,由式(15)计算得出。

步骤4:将步骤1中导入的图像数据库中的每张图像执行步骤2与步骤3,得到训练数据集tr={(λ1,p1),(λ2,p2),...,(λn,pn)},其中,i=1,2,…,n,n为数据集数量,λi为第i张图像的特征,pi为对应的分类(1为车辆图像,0为非车辆图像),设每个特征λi的初始权值

步骤5:设训练弱分类器的循环次数为r,对r=1,2,...,r,具体循环过程如下:初始化权重,即qzr,i表示第r次循环,第i张图像对应的权重,qr,i表示第r次循环,第i张图像对应的权值。对每一个特征λi训练一个弱分类器rf(λi),如式(17)。式中di=±1,表示不等式方向,δi为阈值。对每一个循环r,可得到n个弱分类器,计算加权分类误差er,i,如式(18)。取n个弱分类器中er,i最小的弱分类器,设为rfr(λ),rfr(λ)的加权分类误差为er。循环的最后一步为更新权重值,如式(19),其中

经过r次循环,共得到r个弱分类器,分别为rf1,rf2,...,rfr。

上式中,t(λi)表示特征λi对应的特征值,由式(16)计算。

步骤6:将r个弱分类器组合成强分类器qf(λ),其中αr=-loger。

步骤7:当路侧摄像头传回交叉口车辆图像时,车辆检测程序将会重复步骤2-3获得haar特征t,代入到式(18)的强分类器中,若qf(t)=1,则检测窗口内有车辆,否则没有。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1