一种可行道路的检测方法与流程

文档序号:12272250阅读:239来源:国知局

本发明涉及一种可行道路的检测方法,特别是涉及一种适用于道路交通检测中,可行道路的检测方法。



背景技术:

近几年来,随着车辆拥有量的增加和道路交通状况的日益复杂,交通安全问题越来越受到国家与人民的重视,由此激发的智能无人驾驶、无人机、智能移动机器人等领域的技术研究愈演愈热,而在这些技术研究中道路检测技术是关键点之一。道路检测技术对各种道路场景进行感知和理解,将检测结果输出给导航系统或路径规划系统,以便指导移动设备下一步应该采取何种动作。因此,道路检测结果的好坏将直接影响移动设备自主导航的准确性。

目前对于道路检测技术的研究主要有道路线检测和道路区域检测,道路线检测一般应用于公路场景下的辅助驾驶系统中,主要是检测公路上白色或黄色的道路标示线,针对性比较强,不能广泛应用;道路区域检测应用范围广,其技术主要分为两大类:基于道路模型的匹配法和基于道路特征的特征法。匹配法根据道路的先验知识建立道路模型,利用模型参数进行道路匹配,该方法可以有效克服路面污染、阴影和光照不均匀等环境因素,但当道路不符合预先假设时,模型就会失效。特征法主要是利用道路与非道路区域在图像特征上的差异进行道路检测,这些特征包括形状、灰度、纹理和对比度等,比较好的方法有基于超像素分割的道路检测,但该方法计算量比较大,在一些嵌入式平台上很难达到实时检测的要求。



技术实现要素:

本发明要解决的技术问题是提供一种基于图像特征的,可行道路的检测方法,该方法不基于任何预先假设,适用性强,运算量低,能够满足实时处理的要求,同时还能精确地检测出可行道路区域。

本发明采用的技术方案如下:一种可行道路的检测方法,具体方法为:包括训练阶段和测试阶段;测试阶段先对整幅图像提取颜色、梯度、方向和边缘等特征信息,然后通过分类器初步进行可行道路检测;利用初步的道路检测结果,建立道路区域和非道路区域的二维颜色直方图,计算各像素点的道路概率,然后利用道路概率更新可行道路的检测结果。该方法不基于任何预先假设,所以可以适应各种场景。此外该方法没有利用图像分割方法,大大减少了计算量,满足了实时处理的要求,同时还能够精确地检测出可行道路区域。

所述方法还包括:在测试阶段,最后通过检测障碍物,再次对道路区域和非道路区域进行更新,生成精确的可行道路检测结果。

具体方法步骤为:

训练阶段:

S11、建立训练样本库:收集大量包含道路的图片,分为训练图片集和测试图片集,并将每一张图片中的道路进行标注;

S12、建立训练分类器:给定一张包含道路的图片图像,利用标注信息,从给定的图像中截取多个包含道路的图片放入正样本库,并截取多个包含非道路的图片放入负样本库,从而建立完成正负样本库;

S13、读取正负样本库中的每一幅图像,通过RGB颜色通道计算出YUV通道信息,然后对Y通道计算梯度幅值GM、梯度方向GO和边缘E;对于Y通道生成Y特征,然后对于U通道、V通道、梯度幅值GM和边缘E,同样进行Y通道的操作,生成与Y特征同样维度的U特征、V特征、GM特征和E特征;对于梯度方向GO,生成6个与Y特征同样维度的GO特征;利用以上生成的同样维度的Y特征、U特征、V特征、GM特征、E特征和GO特征训练能够检测图片中的可行道路区域的Adaboost或SVM分类器;

测试阶段:

S21、利用训练好的分类器初步检测可行道路,具体方法为:将输入图像分割为一定像素小块,各小块之间没有重叠区域;对每一个小块提取S13中所述的同样维度的Y特征、U特征、V特征、GM特征、E特征和GO特征,并将特征输入到训练好的Adaboost或SVM分类器中,判断该小块是否属于道路区域;

S22、利用二维颜色直方图更新检测结果,具体方法为:对S21中检测到的道路区域和非道路区域分布计算Y和U的二维直方图,再计算出每一对Y和U属于道路的概率,利用此概率重新判断图像的每一个像素点是否属于道路区域。

所述方法步骤还包括:S22、检测障碍物的同时再次更新检测结果,具体方法为:在二维颜色直方图更新检测结果的基础上,对每一个非道路区域像素点,计算其在上下左右四个方向上与道路区域像素点的距离,如果四个距离存在且都小于设定阈值T,则认为该非道路区域像素点为道路像素点,否则认为该非道路区域像素点为障碍物像素点。通过此种方式,检测障碍物的同时又进一步更新了可行道路区域的检测结果,使结果更精确。

所述S22还包括:在二维颜色直方图更新检测结果的基础上,对每一个道路区域像素点,计算其在上下左右四个方向上与非道路区域像素点的距离,如果四个距离存在且都小于设定阈值T,则认为该道路区域像素点为非道路像素点,否则认为该道路区域像素点为障碍物像素点。通过此种方式,检测障碍物的同时又进一步更新了可行道路区域的检测结果,使结果更精确。

所述S11中,对每一张图片中的道路进行标注时,沿可行道路区域的边界进行标注。

所述S11中,对训练图片集和测试图片集进行分类时,随机选取一半的样本作为训练图片集,剩余的作为测试图片集。

所述S13中,Y特征、U特征、V特征、GM特征、E特征和GO特征均为64维的特征。

在训练阶段,还包括S14、使用测试数据对分类器进行测试,将测试样本中分错的样本选出来,加入到测试样本中,重新训练分类器,以此提高准确度。

与现有技术相比,本发明的有益效果是:不基于任何预先假设,适用性强,能够适合各种场景;没有利用图像分割方法,大大减少了计算量,能够满足实时处理的要求,同时还能精确地检测出可行道路区域。

附图说明

图1为本发明其中一实施例的原理示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

本说明书(包括摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或者具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。

具体实施例1

一种可行道路的检测方法,具体方法为:包括训练阶段和测试阶段;测试阶段先对整幅图像提取颜色、梯度、方向和边缘等特征信息,然后通过分类器初步进行可行道路检测;利用初步的道路检测结果,建立道路区域和非道路区域的二维颜色直方图,计算各像素点的道路概率,然后利用道路概率更新可行道路的检测结果。该方法不基于任何预先假设,所以可以适应各种场景。此外该方法没有利用图像分割方法,大大减少了计算量,满足了实时处理的要求,同时还能够精确地检测出可行道路区域。

具体实施例2

在具体实施1的基础上,所述方法还包括:在测试阶段,最后通过检测障碍物,再次对道路区域和非道路区域进行更新,生成精确的可行道路检测结果。

具体实施例3

如图1所示,在具体实施例1或2的基础上,具体方法步骤为:

训练阶段:

S11、建立训练样本库:收集大量包含道路的图片,分为训练图片集和测试图片集,并将每一张图片中的道路进行标注;在本具体实施例中,将图片中的道路标注GroundTruth;

S12、建立训练分类器:给定一张包含道路的图片图像,利用标注信息,从给定的图像中截取多个包含道路的图片放入正样本库,并截取多个包含非道路的图片放入负样本库,从而建立完成正负样本库;在本具体实施例中,从给定的图像中截取的图片为128×128的方形图片,并进行均匀分割;

S13、读取正负样本库中的每一幅图像,通过RGB颜色通道计算出YUV通道信息,然后对Y通道计算梯度幅值GM、梯度方向GO和边缘E;对于Y通道生成Y特征,然后对于U通道、V通道、梯度幅值GM和边缘E,同样进行Y通道的操作,生成与Y特征同样维度的U特征、V特征、GM特征和E特征;对于梯度方向GO,生成6个与Y特征同样维度的GO特征;利用以上生成的同样维度的Y特征、U特征、V特征、GM特征、E特征和GO特征训练能够检测图片中的可行道路区域的Adaboost或SVM分类器;在本具体实施例中,将读取的每一幅图片降采样到32×32;对于Y通道图像,求取4x4块里面所有元素的和作为一维特征:

其中Yij为Y通道图像里第i个4×4块里面的第j个像素点,fYi为第i维特征,其中i=1,2,…,64;j=1,2,…,16;这样Y通道图像可以生成64维Y特征:

FY=[fY1,fY2,…,fY64,] (2)

对于U通道、V通道、梯度幅值GM和边缘E,同样进行Y通道的操作,同样生成特征维度均为64维的U特征、V特征、GM特征和E特征;对于梯度方向GO,在4×4块里面统计6个方向的幅值累加信息作为每个方向的一维特征,比如计算其在θk方向上的一维特征:

其中θk为量化的梯度方向,k=1,2,…,6。GMij和GOij分别代表GM和GO图像里面第i个4×4块里面的第j个像素点对应的值,i=1,2,…,64;j=1,2,…,16。

这样在θk方向上就可以生成64维的特征:

这样梯度方向就可以生成6个64维的GO特征:

FGO=[Fθ1,Fθ2,Fθ3,Fθ4,Fθ5,Fθ6] (5)

将以上特征串起来,最终一幅图像可取出704维特征:

F=[Fy,FU,FV,FGM,FE,FGO] (6)

利用从正负样本库中提取的特征训练Adaboost或SVM分类器,该分类器可以粗略检测图片中的可行道路区域;

测试阶段:

S21、利用训练好的分类器初步检测可行道路,具体方法为:将输入图像分割为一定像素小块,各小块之间没有重叠区域;对每一个小块提取S13中所述的同样维度的Y特征、U特征、V特征、GM特征、E特征和GO特征,并将特征输入到训练好的Adaboost或SVM分类器中,判断该小块是否属于道路区域;在本具体实施例中,将输入图像均匀分割成32×32的小块,各小块之间没有重叠区域,多余的像素不做处理。对每一个32×32的小块提取训练阶段所述的704维特征,并将特征输入到训练好的Adaboost或SVM分类器中,判断该小块是否属于道路区域,这样可以粗略地检测出图像中的可行道路区域;

S22、利用二维颜色直方图更新检测结果,具体方法为:对S21中检测到的道路区域和非道路区域分布计算Y和U的二维直方图

p(Y,U)=nY,U/N (7)

其中nY,U代表道路区域或非道路区域中像素点值为(Y,U)的个数,N代表道路区域或非道路区域中像素点的总数。其中Y=0,1,…,255;U=0,1,…,255。再计算出每一对Y和U属于道路的概率

其中pr(Y,U)代表道路区域中一对Y和U出现的概率,pu(Y,U)代表非道路区域中一对Y和U出现的概率。

利用此概率(Proad(Y,U))重新判断图像的每一个像素点是否属于道路区域,当该像素点对应的概率大于0.5,则认为是道路像素点,否则为非道路像素点。这样就能够得到更加精准的可行道路区域。

在本具体实施例中,根据图片的GroundTruth标注信息,计算各个方块内包含道路区域的百分比。若该比例高于80%则认为该方块属于道路块,裁剪出来放入正样本库;若该比例低于10%则认为该方块属于非道路块,裁剪出来放入负样本库。

具体实施例4

如图1所示,在具体实施例3的基础上,所述方法步骤还包括:S23、检测障碍物的同时再次更新检测结果,具体方法为:在二维颜色直方图更新检测结果的基础上,对每一个非道路区域像素点,计算其在上下左右四个方向上与道路区域像素点的距离,如果四个距离存在且都小于设定阈值T,则认为该非道路区域像素点为道路像素点,否则认为该非道路区域像素点为障碍物像素点。通过此种方式,检测障碍物的同时又进一步更新了可行道路区域的检测结果,使结果更精确。

具体实施例5

在具体实施例4的基础上,所述S23还包括:在二维颜色直方图更新检测结果的基础上,对每一个道路区域像素点,计算其在上下左右四个方向上与非道路区域像素点的距离,如果四个距离存在且都小于设定阈值T,则认为该道路区域像素点为非道路像素点,否则认为该道路区域像素点为障碍物像素点。通过此种方式,检测障碍物的同时又进一步更新了可行道路区域的检测结果,使结果更精确。

具体实施例6

在具体实施例3到5之一的基础上,所述S11中,对每一张图片中的道路进行标注时,沿可行道路区域的边界进行标注。

具体实施例7

在具体实施例3到6之一的基础上,所述S11中,对训练图片集和测试图片集进行分类时,随机选取一半的样本作为训练图片集,剩余的作为测试图片集。

具体实施例8

在具体实施例1到7之一的基础上,在训练阶段,还包括S14、使用测试数据对分类器进行测试,将测试样本中分错的样本选出来,加入到测试样本中,重新训练分类器,以此提高准确度。

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