首页> 中国专利> 一种基于视觉的道路信息检测及前方车辆识别方法

一种基于视觉的道路信息检测及前方车辆识别方法

摘要

本发明属于智能汽车道路检测领域,涉及一种基于视觉的道路信息检测及前方车辆识别方法。所述方法包括:图像预处理;车道线特征参数提取;感兴趣区域分割;车辆轮廓识别。本发明通过提取感兴趣区域,过滤背景区域,缩小处理范围,简化了计算的复杂度;采用逐行检索的方法经过固定的计算次数获取每帧图像的处理结果,区别于Hough变换对每一个亮点点都要进行线性拟合的特征,在算法实时性上有突出的优势;对Robinson方向模板算子进行实时性改进,设置中间变量减少了每个像素点的计算次数。利用目标区域内的信息熵、车尾对称性特征对感兴趣区域筛选和判别,降低了算法的漏检率和误检率。

著录项

  • 公开/公告号CN104392212A

    专利类型发明专利

  • 公开/公告日2015-03-04

    原文格式PDF

  • 申请/专利权人 北京工业大学;

    申请/专利号CN201410647880.1

  • 发明设计人 段建民;刘冠宇;

    申请日2014-11-14

  • 分类号G06K9/00(20060101);G06T7/00(20060101);G08G1/017(20060101);

  • 代理机构11203 北京思海天达知识产权代理有限公司;

  • 代理人沈波

  • 地址 100124 北京市朝阳区平乐园100号

  • 入库时间 2023-12-17 04:23:20

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-09-01

    授权

    授权

  • 2015-04-01

    实质审查的生效 IPC(主分类):G06K9/00 申请日:20141114

    实质审查的生效

  • 2015-03-04

    公开

    公开

说明书

技术领域

本发明属于智能汽车道路检测领域,具体涉及一种基于视觉的道路信息检测及前方车辆 识别方法。

背景技术:

智能车辆是一个集环境感知、规划决策、多等级辅助驾驶等功能于一体的综合系统,它 集中运用了计算机、现代传感、信息融合、通讯、人工智能及自动控制等技术,是典型的高 新技术综合体。目前对智能车辆的研究主要致力于提高汽车的安全性、舒适性,以及提供优 良的人车交互界面。近年来,智能车辆己经成为世界车辆工程领域研究的热点和汽车工业增 长的新动力,很多发达国家都已将其纳入各自重点发展的智能交通系统当中。道路信息检测 技术一直是智能车驾驶系统的核心环节,是智能交通系统的重要技术。而车道线及前方车辆 的检测与识别是实现这一技术的首要问题。

在此领域内人们提出了许多技术,VisLab研制的无人驾驶车辆ARGO系统使用视觉作 为主要的传感器,通过建立车辆的二自由度动力学模型和预瞄跟随模型,引入反馈监督信号。 因为在图像重建道路环境之后,需要通过复杂的拟合过程才能得到合适的方向盘输出,所以 方法的计算复杂度很高,硬件资源的消耗很大。Tzomakas和Seelen实现了一种获取路面灰度 阈值的方法,但无法解决路面灰度变化的问题。Marola的研究属于基于知识的方法,此方法 的不足之处在于复杂环境下的误检率会明显增加。Wang等人提出基于B样条的车道线检测 方法。得益于样条函数对轮廓表达的任意性,该方法能准确识别直道和弯道,并对路面阴影 具有一定的鲁棒性。B样条的外形定位控制点位于曲线外部,因此收敛需要多次迭代来完成, 增加了系统复杂度。在国内,陈智提出一种基于小波变换的车辆识别方法,但却无法满足系 统匹配的广泛适应性。现今主流算法是通过Hough变换识别图像中最符合车道特征的直线, 从而进行标定。此算法的优点是实时性高,不足之处在于处理结果以直线段为主,难以在车 辆进行转弯的过程中提供有效的参数,且计算量大,实时性难以保证。

发明内容

针对现有技术中存在的鲁棒性或实时性无法满足预警机制要求的问题,本发明提出一种 基于视觉的道路信息检测及前方车辆识别方法,该方法首先对图像进行自适应二值化分割; 然后对图像中的感兴趣区域ROI(Region Of Interes)进行提取;采用逐行检索的方法进行车 道线内侧特征点的筛选,从而得到实际车道的左右标志线参数以进行道路模型重建。通过腐 蚀、膨胀法滤除干扰点;进行阴影线的合并及ROI区域的提取;利用目标区域内的信息熵、 车尾对称性特征对ROI区域进行筛选和判别,降低了算法的漏检和误检率;使用改进的 Robinson方向检测算子提取车辆边界,取得了较好的效果。

为实现上述目的本发明采用的技术方案为:

一种基于视觉的道路信息检测及前方车辆识别方法,实现所述方法的系统包括:摄像头, 安装视频采集卡的测控计算机,路由器搭建的局域网,规划决策上位机,智能车BJUT-SHEV 实验平台。摄像头安装在智能车BJUT-SHEV实验平台的顶棚前方正中位置,实时采集道路 图像;摄像头与测控计算机通过USB连接视频采集卡,实现视频数据采集的功能;测控计算 机处理得到的控制参数由路由器搭建的局域网传递给规划决策上位机(测控计算机);规划 决策上位机解析上述信息后对BJUT-SHEV实验平台进行控制。其特征在于,所述方法在测 控计算机内执行以下步骤:

步骤1,图像预处理。

包括:对彩色图像进行灰度化,采用单次最大类间方差OTSU法进行二值化分割,Sobel 算子边缘检测,图像细化处理,确定道路区域。

步骤2,车道线检测及偏离预警。

采取逐行检索的方法获取车道边界点,利用最小二乘法对边界点进行拟合,获取描述车 道的二次曲线。判断车辆前方道路转弯的方向,对车辆是否偏离车道线进行预警。

步骤3,ROI区域提取。

采用道路区域灰度与双OTSU相结合的方法分割车辆底部阴影,对分割图像进行腐蚀膨 胀处理,填充缺口区域,基于车底阴影获取车辆ROI区域。

步骤4,车辆轮廓识别。

对区域进行以信息熵及对称性为主要参考依据的多特征筛选。使用改进的Robinson算子 对经过筛选后保留下来的部分进行处理,求取灰度变化梯度值,并用Hough变换法识别车辆 外轮廓线。

与现有技术相比,本发明具有以下优点:

(1)本发明通过对图像进行自适应二值化分割,达到了自适应匹配图像的效果。

(2)本发明通过采取以下措施提高了系统的实时性:对图像中的感兴趣区域进行提取, 过滤背景区域,缩小后续算法的处理范围,简化了计算的复杂度;采用逐行检索的方法经过 固定的计算次数便可获取每帧图像的处理结果,区别于Hough变换对每一个亮点点都要进行 线性拟合的特征,在算法实时性上有突出的优势;本发明对Robinson方向模板算子进行了实 时性改进,设置中间变量从而减少了对每个像素点的计算次数。

(3)与现有技术中常用的Hough变换不同,本发明采用逐行检索的方法进行车道线内 侧特征点的筛选,可以使检测结果更贴合实际道路中的车道线,不存在线路特征的局限性, 从而在车辆过弯途中为系统提供更多的有效信息。

(4)针对Tzomakas和Seelen提出的方法中无法解决路面灰度变化的问题,本发明在自 适应二值化分割的基础上,进行第二次OTSU阈值分割,准确地提取出了车底阴影。通过腐 蚀、膨胀法滤除干扰点,简化并提高了阴影线合并及ROI区域提取的效率。

(5)针对Marola基于知识的方法导致处于复杂环境下的误检率会明显增加的问题,本 发明利用目标区域内的信息熵、车尾对称性特征对ROI区域进行筛选和判别,降低了算法的 漏检和误检率,提高了在复杂环境下系统的可行性。

附图说明

图1为本发明实施例硬件系统组成框图;

图2为本发明所述方法主流程图;

图3为车道线图像预处理流程图;

图4为车辆偏离预警原理示意图;

图5为偏离车道线模型图:(a)为向左偏离,(b)为向右偏离;

图6为车道线提取及预警方法流程图;

图7为阴影线长度与图像坐标的位置关系;

图8为ROI提取流程图;

图9为车辆轮廓识别流程图。

具体实施方式

下面结合附图和实施例对本发明做进一步说明。

实施例采用的硬件系统组成框图如图1所示,包括:

摄像头:摄像头采用风后镜王系列的一款,用USB线与测控计算机相连。摄像头安装在 智能车BJUT-SHEV实验平台顶棚前方正中位置,随着智能车的前进,便可采集到前方道路 的实时信息。

安装视频采集卡的测控计算机:视频采集卡采用思特佳图ST-769采集卡,其将测控计算 机接收到的模拟道路信息转换为数字图像信息。另外,测控计算机上安装VS2010及 OPENCV2.4.5并配置软件运行环境,以及实现本发明所述方法的软件程序。

路由器搭建的局域网:路由器采用Netgear公司生产的WNR2000。路由器搭建的局域网 将测控计算机打包的数据信息通过此局域网,上传到规划决策上位机供其使用。

规划决策上位机:用于解析前述数据信息并得到控制命令,从而对BJUT-SHEV实验平 台进行控制,实施车辆转向、抬起油门或踩下刹车等动作。

一种基于视觉的道路信息检测及前方车辆识别方法流程图如图2所示,由安装在测控计 算机内的软件程序实现,包括以下步骤:

步骤1,图像预处理,具体流程如图3所示。

步骤1.1,彩色图像灰度化。

设原始彩色图像中像素点颜色为RGB(R,G,B),处理后的像素点灰度值为Gray,彩色 图像灰度化可表示如下:

Gray=R×0.299+G×0.587+B×0.144

步骤1.2,单次OTSU法二值化图像。

OTSU法在模式识别的过程中用途比较广泛,能够自适应地选取阈值,区分背景及目标 区域。首先计算灰度图像的特征参数:

μ=ω0μ01μ1

σ2(K)=ω00-μ)211-μ)2

其中,ω0、ω1分别为背景及目标区域像素点灰度值出现的概率,μ0、μ1分别为背景及 目标区域像素点的平均灰度值,μ为整体图像灰度的统计均值,σ2(K)为背景区域与目标区 域组间方差,K=1,2,3,...,求使方差取得最大值时的K,得到最优阈值K。

步骤1.3,采用Sobel算子进行边缘检测。

图像边缘通常呈现灰度级的跃变,这种跃变能够用图像的微分来描述。所以基于微分算 子类的图像边缘检测方法是比较常用的一种。该类方法中的大部分算法使用的是滤波器模板, 即令所处理的像素与模板的中心重合,模板系数与相对应像素值加权后,其结果作为该像素 点的梯度值。在整幅数字图像矩阵中移动滤波器模板,就可得到一幅梯度图。此方法的结果 反映了数字图像中像素灰度变化的梯度,根据梯度图中梯度的变化情况检测出图像的边缘。 本发明采用Sobel算子进行检测,其原理模板如表1所示。

表1Sobel算子原理模板

设图像经过二值化后,像素点坐标为(i,j),对整幅图像进行模板运算,沿x,y方向的梯 度值Gx(i,j)和Gy(i,j),当满足下式时认为该点为边缘点:

|Gx|+|Gy|>nThreshold

其中,nThreshold为阈值,本实施例取nThreshold=138。

步骤1.4,图像细化处理。

Sobel边缘检测得出的边缘较粗,影响下一步的处理。下面对边缘检测后的图像进行细化。 思路是,粗边缘意味着边缘像素有一定的宽度,只保留这个宽度中间的像素,而将周围的像 素“腐蚀”掉,就能减小边缘像素的宽度,细化边缘。

对检测出的每一个白色像素点进行判断,如果在其八邻域中只有小于k个的白色像素(k 在检测中取的是7),则说明,该点是一个较亮的点,属于上述的边缘宽度中的边缘像素, 所以,将这样的像素置为0,即可完成对图像的细化处理。

步骤1.5,确定道路区域。

确定道路区域上界:从图像每一列的第一个像素开始向下检索,找到该列的第一个黑色 像素点,标记它的行数yr,在yr的最大值上增加m个像素点得到的行数为处理区域的上界。 m的值由实验确定。本实施例m=15。

确定道路区域的左右边界:最佳直线边界应该是包含整个道路区域的左右两条直线,直 线中的一个点,应该在道路线的内边界上。而根据图像特征,图像下端两边的道路线,必定 分别在图像正中心的两边。所以,从图像的正中心向左,从最下端一列向上逐行进行搜寻, 将找到的第一个白色点作为道路内边界上的第一个点,然后将直线斜率k作为参数,构建直 线方程。左边界斜率k的取值范围为[0.2,6],以0.1的增量增加,根据直线方程计算该直线 上的白色点的个数,将取得最大白色点数的k值作为此边界拟合直线的斜率。直线斜率确定 后,在y值上把直线抬高一个增量b得到左边界的拟合直线。取右边界斜率k的取值范围为 [-0.5,-6],以相同的方法确定右边界拟合直线。两条直线中间的区域就是道路区域。实验结 果表明,这个区域非常有效。

步骤2,车道线的检测及预警,具体流程如图6所示。

步骤2.1,确定道路边缘点。

从整幅图像的最后一行向上搜索直到上限边界,其纵向跨度为图像高度height。逐行检 索白色像素的线段,记下第n条线段的长度ln。终止列坐标不超过整幅图像的3/4列的线段 归为左边道路线,起始列坐标不少于整幅图像1/4列的线段归为右边道路线。设定像素距离 阈值d,当在整个图像的下半部分时,d=100;当在图像的上半部分时,d=30。分别在左右道 路线序列中查找线段相邻两行间的的有效行坐标ij和ij-1,若它们之间的差值大于d,说明该 条线段属于噪音,则从该序列中剔除。最后,从左右道路线序列中分别找出其中特征最明显 的一条线段,标记该条线段的有效坐标,左侧序列线段为(il,jl),右侧为(ir,jr)。

步骤2.2,道路线内边界拟合。

采取最小二乘法对车道线进行拟合。设(x1,y1),(x2,y2),……(xn,yn)是直角坐标系下给出的 一组数据,如果有x1<x2<……<xn,则可以把这组数据看作是一个函数的离散点集合。设待 拟合的直线方程为:y=f(x)+ε。

f(x)表示没有噪声时的理想情况下的一个函数,ε是噪声;最小二乘法就是使有噪声产 生的误差平方和Q最小,即:

Q=Σi=1nϵi2=Σi=1n[yi-f(xi)]2

运用最小二乘法进行拟合,其优点是速度非常快,只要遍历一次就可以计算出拟合曲线。

步骤2.3,道路转弯方向判断及偏离预警。

步骤2.3.1,道路转弯方向判断。

记左右边界直线的交点为(x0,y0),左右道路内边界拟合曲线的交点为(x1,y1)。如果有 x0<x10,则说明道路在向右转;如果有x0>x10,则说明道路在向左转;如果 x10≤x0≤x10,则说明道路呈直线。δ0为由实验确定的一个很小的数值。

步骤2.3.2,偏离预警。

车道线拟合的目的在于获取车辆所在的位置。因此,可以建立一个数学模型来描述车辆 的位置信息。如附图4所示,通过车道线拟合算法得到左右车道线的中心标识线,即左右两 条车道线夹角的角平分线。车道中心线可以用一个二元一次方程表示,设:

y=ax+b

由三角形角平分线定理和三角函数关系得:

a=k1k2+1+k12k22+k12+k22-1k1+k2

b=(b1-b2)(1+k12k22+k12+k22-1)+a12b2-a22b1k12-k22

其中,k1、k2分别为左右车道线的斜率。

由上式可得,车辆行驶方向与车道中心线方向的夹角如附图5所示。

采用基于车辆在当前车道中的横向位移d以及偏离角θ的车道偏离预警模型。此模型的 优点在于不依赖车道宽度的变化及车辆的行驶速度,具有较高的实时性和准确性,其模型如 附图5所示,处理流程如附图6所示。根据车辆在当前车道中的横向位置及偏离角,建立左 右车道偏离准则。首先提取车辆视频中的单帧图像信息,参照上述步骤对此图像进行处理并 计算出车道线的特征参数d及θ。当d>d0且θ>θ0时,判断为左侧偏离,发出预警信号;当 d>d0且θ<-θ0时,判断为右侧偏离,发出预警信号;若不满足上述条件则不发出预警信号。 处理完后进入下帧图像。

步骤3,ROI区域提取,如图8所示。

步骤3.1,自适应二值化。

采用双OTSU法对图像进行分割,首先使用OTSU法计算图像整体的阈值T1;遍历图中 的所有像素点,以阈值T1进行分类,大于T1的归类为背景。过滤掉背景区域,对原图中像素 灰度值小于T1的所有像素点再次使用OTSU法,得到新阈值T2。以T2为分割阈值对图像再次 进行二值化,大于T2的归类为背景,像素值设置为255;小于T2的设置为目标像素,像素值 设置为0。在灰度图像上选取m1个长宽均为n1个像素的路面区域,m1、n1根据视频图像分辨 率确定。本实施例视频图像分辨率为640*480,m1取5,n1取25。统计m1个路面区域的平均 灰度值μi及标准差σi,去除μi大于μ0及σi大于σ0的区域,μ0、σ0由实验确定,本实施例μ0、 σ0分别取180和90,便可排除路面区域窗口划分在斑马线或指示线上面的情况,并设剩下的 路面区域个数为N。经过计算可以求得这N个区域的平均灰度值及平均方差 可得到最优阈值为:

T=μ-4σ

如果因N过小或T<0无法进行局部灰度值运算,通过如下式进行算法的选取,此种方式 可以使系统同时兼顾鲁棒性及实时性。

步骤3.2,腐蚀、膨胀处理:经过对多幅图像的处理,发现一些获取的阴影区域有时会出 现缺口或与周围环境粘连等情况,针对上述情况,可采用膨胀,腐蚀等形态学方法进行处理。 对之前分割后的二值化图像进行腐蚀、膨胀处理,经过处理的图像滤除了原图中的杂质及噪 点,且具有较好的形状特征。

步骤3.3,阴影区域提取及合并。

首先从上至下,从左至右逐行搜索阴影线的起始位置和终止位置,从而确定其长度和位 置。当满足下式时则认为分别找到了阴影线的起点xstart及终点xend

f(x-1,y)-f(x,y)=255f(x,y)-f(x+1,y)=0

f(x,y)-f(x-1,y)=0f(x+1,y)-f(x,y)=255

车辆底部阴影线在图像中的长度应在一定的范围内,根据对摄像机位置及参数的标定可 知,此范围会随着阴影线所在行的不同而变化,根据这一特点,系统为每行选取一个阈值, 若检测到的阴影线长度length=xend-xstart与此阈值相差过多,则滤除掉该阴影线的干扰。对 应的关系式如下:

w=wpH(y-height2)

其中,w为阴影线在图像中的长度标量(像素);wp为车辆实宽(米);H为摄像机光 轴距地面的高度,取值1.6米;y为目标在图像纵轴方向上的所在行数(像素);height为图 像的高度(像素)。当满足下式时,则可认为此阴影线为车辆底部阴影:

0.75*w<length=xstart-xend<1.25*w

步骤3.4,ROI区域提取。

定义矩形度SQ为区域内面积与其外接矩形面积的比值,SQ越大则此区域愈呈矩形状。 令四边形度量QM为阴影区域宽高比的量度,当QM=1时,可以近似认为四边形是等边的。 利用SQ与QM对上述检测出的阴影区域进行筛选,方法如下:

在提取ROI区域的过程中,需要考虑到阴影区域的高度、宽度、位置等的不确定性,因 此首先选取范围较大的ROI区域。初步提取的过程中需把车辆整体包含在区域内,并且考虑 到光照强度及角度的变化会使车底阴影与车体本身呈现不同的比例关系,具体方法为:

Rv_x=Rs_x-δ2Rv_y=Rs_y-Rv_hrightRv_width=Rs_width+δRv_height=λ*Rs_width

其中,(Rv_x,Rv_y)为ROI区域左下角坐标点,(Rs_x,Rs_y)为阴影区域左下角坐标点, Rv_width,Rv_height分别为ROI区域的宽度和高度,Rs_width为阴影区域的宽度,参数 λ=1.2,δ=50。

步骤4,车辆轮廓提取,如图9所示。

步骤4.1,信息熵筛选。

图像的熵值会在含有车辆的候选区域中明显增大。对于路面区域,由于其灰度值比较单 一,所以包含的像素信息值较低。因此可以通过此性质过滤掉一些熵值较小的区域。设在上 述提取的高度为h的ROI区域内,每行的熵值为H(a),则其均值为:

H(a)=1hΣj=1hH(aj)

实验中选取了80张不同的图像进行处理,最终选取阈值为T=3.1,则当时,可 认为ROI区域包含车辆信息,否则可对此ROI区域进行滤除。

步骤4.2,对称性过滤。

应用数学原理,设R(x)为ROI区域内的一次连续函数,则可以将其拆分为奇函数Ro(x)和 偶函数Re(x),因此一个函数的对称性就可以通过其分离出的奇偶函数所占的比重来确定。对 于上述提取到的ROI区域R来说,令区域大小为w×h,对称轴为则对于图像的第y 行线段,奇函数与偶函数的表达式分别为:

Ro(u,y)=12[R(xs+u,y)-R(xs-u,y)]

Re(u,y)=12[R(xs+u,y)-R(xs-u,y)]

算法需要对偶函数进行修正,使其修正后的均值同奇函数一样,趋近于零,以便用能量 函数对比两者的关系。修正后得:

Re(u,y)=Re(u,y)-1wΣv=0wRe(v,y)

由此可得奇函数与偶函数的能量函数分别为:

E[Ro(u,y)]=Σu=-w/2w/2Ro2(u,y)

E[Re(u,y)]=Σu=-w/2w/2[Re(u,y)-1wΣv=0wRe(v,y)]2

则由此可对第y行像素的对称性进行度量计算:

S[R(u,y)]=E[Re(u,y)]-E[Ro(u,y)]E[Re(u,y)]+E[Ro(u,y)]

则有:

最终选取阈值为0.15,当S>0.15时,则可判定为车辆ROI区域,否则删除该区域。

步骤4.3,采用改进的Robinson检测算子进行边缘检测。

在上述步骤处理完成后,得到了较准确的ROI车辆区域,在此区域内采用Robinson方向 模板算子进行边缘检测求取像素灰度的梯度值。分别用表1中的八个模板对区域内的点进行 检测,其中最大输出值及其方向就作为此点处理后所得的灰度值及其方向,表中M0(↑)、 M2(→)、M4(↓)、M6(←)、分别表示正上、右上、正右、 右下、正下、左下、正左、左上方向模版算子。

表2Robinson检测算子

采用Robinson算子对ROI区域中的像素点进行检测时,任一像素点与M1模板的运算方 法如下:

e0=p0+2×p1+p2-p5-2×p6-p7

其中,e0至e7分别为目标像素点与模板M0(↑)至进行边缘检测运算的结果;p0至p7分别为位于目标像素点左上、正上、右上、正左、正右、左下、正下、右下像素点的灰度值。

对任一像素点,需要完成8次类似于上述的运算,才能获取准确结果。由此可见,对一 个点的检测需要进行16次乘法运算及40次加减运算,这极大的拖慢系统的运行速度。于是 提出改进方法,用如下方法引入变量:

x0=p0-p4x1=p1-p5x2=p2-p6x3=p3-p7,y0=x0+x1y1=x1+x2y2=x2+x3y3=x3-x0

进行运算速度优化处理,可得结果为:

e0=y0+y1e1=y1+y2e2=y2+y3e0=y3-y0,e4=-e0e5=-e1e6=-e2e7=-e3

改进之后,只需进行12次加减运算便可完成对一个像素点的检测。最终分别对横向及纵 向检测信息进行提取。

步骤4.4,采用Hough变换提取车辆边界线。

Hough变换是提取直线的较为普遍且成熟的方法,不足之处在于运算量较大。此处应用 Hough变换是在ROI区域内进行,而不是对整幅图提取,因此较大程度地降低了计算量。本 发明在直线角度上进行限定,从而进一步加快运算速度。提取横向边缘的过程中令角度 -5°<θ<5°,提取纵向边缘的过程中令60°<θ<120°,令纵向左(右)边界线以最左(右) 点为准,斜率值向无穷靠拢,则可获取矩形车辆外边界。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号