基于视频分析的车道边距检测方法及装置与流程

文档序号:18729225发布日期:2019-09-21 00:15阅读:267来源:国知局
基于视频分析的车道边距检测方法及装置与流程

本发明涉及车辆智能辅助驾驶技术领域,具体地涉及一种基于视频分析的车道边距检测方法及装置。



背景技术:

在我国经济和科学技术迅速发展的时期,汽车和交通得到了飞速的发展。在汽车带给我们便利的同时,行车安全成了我们需要面临的问题。虽然在机动车上一般都配备有安全带、吸能车体、安全气囊等设备只能减轻事故的损害程度,不能从根本上主动避免交通事故的发生。因此,从主动安全的角度出发,解决交通安全问题更为重要,视频监控已经普遍应用于各个公共场所,为进一步减轻管理人员的工作量,可以利用计算机视觉技术,自动对监控目标进行分析,则管理人员可对分析结果进行快速决策。

随着交通条件的改善,结构化道路成为车辆行驶的主要环境。同时,计算机视觉、车辆智能辅助驾驶技术也在快速发展,结构化道路环境下的辅助驾驶得到广泛应用。车道检测作为智能辅助驾驶的关键和基础技术,受到研究人员的高度重视。基于视觉的方法是研究人员关注的主要领域,因为视觉数据能够直观反映车辆驾驶状态,从实际应用的角度讲,摄像机具有经济、稳定的优势。当前,基于视觉的车道检测方法主要分为两大类:基于特征的方法和基于模型的方法。基于特征的方法是在灰度图像或彩色图像中通过提取道路的边缘、颜色、纹理、梯度等特征检测车道线。基于模型的方法是根据不同的道路采用不同的参数模型实现车道检测,常用的参数模型有直线、双曲线、样条曲线模型等。但是目前很少有人研究检测车道边距,因此现有的检测车道边距的方法大都检测效率低并且准确率不高。



技术实现要素:

为了解决上述存在的技术问题,本发明提供了一种基于视频分析的车道边距检测方法及装置,可以大大提高检测效率和检测精度。

本发明的技术方案是:

一种基于视频分析的车道边距检测方法,包括以下步骤:

S01:在图像中选取车道检测区域,对车道线进行识别,获得车道线坐标,对选取的车道检测区域进行透视变换,得到变换后的车道检测区域;

S02:检测图像中的车辆,提取每个车辆的特征和外接矩形,并对车辆进行追踪;

S03:若车辆追踪成功,将外接矩形的左下角点或者右下角点作为基准点,得到左下角点或者右下角点分别到左侧车道线和右侧车道线的垂足,分别计算基准点和垂足的透视变换后的坐标;

S04:计算左车道边距和右车道边距,左车道边距为进一步得到右车道边距;其中,d为车道宽度,xk为透视变换后的基准点的横坐标,lline_xk为透视变换后的左车道线的垂足的横坐标,rline_xk为透视变换后的右车道线的垂足的横坐标。

优选的技术方案中,所述步骤S01中选取车道检测区域为四边形{src_vertexi(xi,yi)|i=1,2,3,4},然后对src_vertexi按顺时针排序,获得透视变换后的区域顶点{dst_vertexi(ui,vi)|i=1,2,3,4}。

优选的技术方案中,所述步骤S02中,以车辆首次检测结果为跟踪起点进行追踪,之后的检测结果用于追踪,若追踪的特征差值小于设定的阈值,则追踪成功,反之追踪失败;若追踪失败次数大于设定的阈值时,不进行跟踪。

优选的技术方案中,所述步骤S03中,左侧车道线为ax+by+c=0;基准点为(m,n),则左侧车道线的垂足的横坐标为(b*b*m-a*b*n-a*c)/(a*a+b*b),纵坐标为(a*a*n-a*b*m-b*c)/(a*a+b*b),同理得到右侧车道线的垂足坐标。

优选的技术方案中,所述步骤S04还包括,对车道边距的变化率进行判断,当车道边距变化率大于阈值时,判断车辆处于变道过程或是调头转弯过程;当在一段时间内统计出多辆车辆的车道边距变化率大于阈值时,判断该路段可能发生事故或是道路发生破损。

本发明还公开了一种基于视频分析的车道边距检测装置,包括:

处理变换模块,在图像中选取车道检测区域,对车道线进行识别,获得车道线坐标,对选取的车道检测区域进行透视变换,得到变换后的车道检测区域;

车辆检测追踪模块,检测图像中的车辆,提取每个车辆的特征和外接矩形,并对车辆进行追踪;

车道边距计算模块,若车辆追踪成功,将外接矩形的左下角点或者右下角点作为基准点,得到左下角点或者右下角点分别到左侧车道线和右侧车道线的垂足,分别计算基准点和垂足的透视变换后的坐标;

计算左车道边距和右车道边距,左车道边距为进一步得到右车道边距;其中,d为车道宽度,xk为透视变换后的基准点的横坐标,lline_xk为透视变换后的左车道线的垂足的横坐标,rline_xk为透视变换后的右车道线的垂足的横坐标。

优选的技术方案中,所述处理变换模块中选取车道检测区域为四边形{src_vertexi(xi,yi)|i=1,2,3,4},然后对src_vertexi按顺时针排序,获得透视变换后的区域顶点{dst_vertexi(ui,vi)|i=1,2,3,4}。

优选的技术方案中,所述车辆检测追踪模块,以车辆首次检测结果为跟踪起点进行追踪,之后的检测结果用于追踪,若追踪的特征差值小于设定的阈值,则追踪成功,反之追踪失败;若追踪失败次数大于设定的阈值时,不进行跟踪。

优选的技术方案中,所述车道边距计算模块中,左侧车道线为ax+by+c=0;基准点为(m,n),则左侧车道线的垂足的横坐标为(b*b*m-a*b*n-a*c)/(a*a+b*b),纵坐标为(a*a*n-a*b*m-b*c)/(a*a+b*b),同理得到右侧车道线的垂足坐标。

优选的技术方案中,还包括车道边距变换判断模块,对车道边距的变化率进行判断,当车道边距变化率大于阈值时,判断车辆处于变道过程或是调头转弯过程;当在一段时间内统计出多辆车辆的车道边距变化率大于阈值时,判断该路段可能发生事故或是道路发生破损。

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

该方法可以大大提高检测效率和检测精度,首先使用改进型的目标检测跟踪算法提取更精确的检测目标,又能降低内存50%。在计算车道边距中,使用车辆的外接矩形的左下角或右下角作为检测基准点,使得结果更加准确。上传至服务器的数据可以连贯的反映车辆的行驶方向,可以车道边距的变化率进行判断得出更多有用的信息,具有广泛的应用前景。

附图说明

下面结合附图及实施例对本发明作进一步描述:

图1为本发明基于视频分析的车道边距检测方法的流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。

实施例:

下面结合附图,对本发明的较佳实施例作进一步说明。

如图1所示,本发明基于视频分析的车道边距检测方法,包括以下步骤:

步骤1:开始读取视频的一帧图片,在图片中选取车道检测区域{src_vertexi(xi,yi)|i=1,2,3,4},和两边的车道线{leftLine(xi,yi)|i=1,2}、{rightLine(xi,yi)|i=1,2},检测区域为四边形,用四边形的四个顶点表示,车道线用两个点表示,其中车道线的识别和提取可以采用现有技术,如申请号为201510121902的车道识别装置。然后对src_vertexi按顺时针排序,获得透视变换后的区域顶点{dst_vertexi(ui,vi)|i=1,2,3,4},区域顶点可以根据透视变换矩阵得到。

令wi=1,c22=1,联立不等式数组获取透视变换矩阵C。透视变换矩阵可以根据场景中平面的透视模拟得到。

其中,c00、c01、c10、c11表示缩放、旋转和裁剪操作,c20、c21表示平移操作,c02、c12为产生透视变换。

从监控摄像头中获取视频,从视频中获得图像,对获取的图像进行预处理,例如用高斯滤波对图像降噪处理,滤波函数为:

其中,x的平方和y的平方分别表示的是邻域内其他像素与邻域内中心像素的距离,σ代表的是标准差。

步骤2:车辆的检测和追踪区域。读取第iFrameNum帧图片,检测出每个车辆区域,车辆的检测可以使用运动目标检测方法进行检测或者车辆检测中采用二分类SVM模型,判断图像中是否有车辆。

提取每个车辆的质心点、面积,外接矩形等特征,车辆的质心点可以通过openCV里的函数pointPolygonTest检测车辆质心点起始位置在哪条车道的区域内,外接矩形可以通过库OPENCV的API函数直接求得。首次检测结果作为检测目标{trackj|j=1,2,…,M},之后的检测结果{blobi|i=1,2,…,N}则用于追踪。当blobi质心点centeri、面积areai与trackj的质心点centerj(x,y)、面积areaj(x,y)的差值都满足不超过阈值Tcenter和阈值Tarea,则认为追踪成功。在追踪过程中,trackj的追踪失败次数inactivej初始化为0,若追踪成功,更新trackj的质心点、面积等特征,否则inactivej自增1;如果trackj的追踪失败次数inactivej超过最大追踪失败次数阈值T1,则认为该车辆已驶出摄像头拍摄范围,可以删除不用再追踪。

步骤3:计算trackj的左车道间距。将trackj的外接矩形的左下角点作为基准点leftPointj(xl,yl),左侧车道线leftLine(xi,yi)的对应位置为右侧车道线{rightLine(xi,yi)的对应位置为其中的对应位置可以为垂足,左侧车道线ax+by+c=0;基准点为(m,n),则垂足的横坐标为(b*b*m-a*b*n-a*c)/(a*a+b*b),纵坐标为(a*a*n-a*b*m-b*c)/(a*a+b*b)。

经过公式(1)旋转后得到leftPoint′j(xk,yk)、leftLineP′j(lline_xk,yk)、rightPoint′j(rline_xk,yk)。则根据公式(2)得出左车道边距dis,同理可以得出右车道边距。

其中d为车道宽度,一般高速干线的车道宽度为3.75米。

以右下角点为基准点的计算如下:右下角点为rightPointj(xp,yp),左车道线的垂足为右车道线的垂足为经过透视变换后得到leftPoint′j(xq,yq)、leftLineP′j(lline_xq,yq)、rightPoint′j(rline_xq,yq),根据下面公式得出左车道边距dis:

同理可计算出右车道边距。

步骤4:iFrameNum自增1,重复步骤2和步骤3直至视频结束。车道间距的数据保存在本地,以供其他分析。

还可以对车道边距的变化率进行判断,当车道边距变化较大,车辆可能处于变道过程或是调头转弯过程,而这两个过程中车辆发生碰撞几率最大。当在一段时间内统计出多车辆发生车道边距较大变化,则该路段可能发生事故或是道路发生破损,在视频监控可以发挥重要作用。本发明也可用于码头、航道等场景。

应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。

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