一种基于多区域联合车道线检测方法与流程

文档序号:13719853阅读:221来源:国知局
技术领域本发明涉及一种车道线检测方法,具体说是一种基于多区域联合车道线检测方法。

背景技术:
汽车自动驾驶技术包括视频摄像头、雷达传感器以及激光测距器来了解周围的交通状况,并通过一个详尽的地图(通过有人驾驶汽车采集的地图)对前方的道路进行导航。这一切都通过谷歌的数据中心来实现,谷歌的数据中心能处理汽车收集的有关周围地形的大量信息。就这点而言,自动驾驶汽车相当于谷歌数据中心的遥控汽车或者智能汽车。汽车自动驾驶技术物联网技术应用之一。目前,现有的自动驾驶中通常采用霍夫变换识别车道线,实现自动驾驶的实时路况检测。但是,霍夫变换在对车道线检测时,构造的投票表过于巨大,每次计算最大值耗时严重,并且对于多条车道线的检测往往需要大量增加最大响应条数,这给实际应用带来的诸多不便。本发明针对自动驾驶中的图像识别领域中的车道线检测技术,提出一种新的车道线检测方法。

技术实现要素:
为解决上述技术问题,本发明提出一种基于多区域联合车道线检测方法。本发明采用的技术方案如下:一种基于多区域联合车道线检测方法,包括以下步骤:对摄像头采集的图像中车道线进行标定,实现目标区域的透视变换;对透视变换后的区域进行二值化,并进行边缘提取;对边缘提取后的图像进行附加缓冲区分割,得到多幅边缘图像;从多幅边缘图像中获取车道线信息。所述对摄像头采集的图像中车道线进行标定包括以下步骤:在摄像头采集的图像中将两条相邻车道线内侧四点作为标定的4个点;以左上点为原点,水平向右为X正方向、竖直向下为Y正方向建立直角坐标系;根据标定的4个点在直角坐标系的坐标得到透视系数;将所有区域的所有点分别按照各自区域的透视系数进行透视变换。所述透视系数通过下式得到x1′y1′...xn′yn′=x1y11000-x1′x1-x1′y1000x1y11-y1′x1-y1′y1...xnyn1000-xn′xn-xn′yn000xnyn1-yn′xn-yn′ynm1m2m3m4m5m6m7m8]]>其中,m1~m8为透视系数;xi、yi为4个点在直角坐标系的坐标,xi’、yi’为透视后的4个点在直角坐标系的坐标;i=1...n,n=4。所述将所有区域的所有点分别按照各自区域的透视系数进行透视变换通过以下公式实现:uvw=m1m2m3m4m5m6m7m81x′y′1]]>其中,u、w、v为透视变换后任意点在直角坐标系的坐标,x’、y’为摄像头采集到的图像的灰度图上的任意点在直角坐标系的坐标;透视系数矩阵包括m1~m8和1。所述对透视变换后的区域进行二值化,并进行边缘提取包括以下步骤:设定两个滤波器的尺寸;分别将两个滤波器对透视变换后的区域进行滤波得到两幅图像;将两幅图像做差,得到目标特征的二值化图像;将二值化图像从最左侧开始,将第i列像素值减去第i+1列像素值,得到的差作为第i+1列像素值;此时获得目标左边缘图像;将二值化图像从最右侧开始,将第i列像素值减去第i-1列像素值,得到的差作为第i-1列像素值;此时获得目标右边缘图像;i=1...w;在目标左边缘图像中从左上角开始查询目标左边缘;在目标右边缘图像中从左上角开始查询目标右边缘;当目标左边缘和目标右边缘均查询到时,则将目标左边缘位置与目标右边缘位置取平均值,作为提取的目标中心线。所述对边缘提取后的图像进行附加缓冲区分割,得到多幅边缘图像包括以下步骤:将边缘提取后的图像垂直分为k个区域,k=(设定车道线条数/2)+1;将每个区域的分割边缘延伸c个像素作为缓冲区,c=边缘提取后的图像宽度×阈值;得到多幅边缘图像。所述从多幅边缘图像中获取车道线信息包括以下步骤:将每个图像进行霍夫变换,得到霍夫半径和霍夫角;对霍夫半径进行投票,取投票数最多的前若干组霍夫半径和霍夫角,即为车道线信息。所述从多幅边缘图像中获取车道线信息后,将多幅边缘图像的车道线信息整合,得到多条车道线,并映射回原图像。本发明具有以下有益效果及优点:1.本发明通过透视变换改变检测的方向,可以增加车道线的特征,对于后续的检测与识别提供更好的特征,最终提高车道线识别的准确率。2.本发明采用多区域的联合检测的策略,对于Hough变换过程中的投票过程的求最大值耗时问题,提出一种多区域的联合检测和重叠检测方法。附图说明图1是本发明的方法流程图;图2是本发明的方法原始图像;图3是本发明的方法透视图像;图4是本发明的方法二值化图像;图5是本发明的方法边缘检测图像;图6是本发明的方法Hough变换结果图像(以图中左部分为例);图7是本发明的方法最终结果图像。具体实施方式下面结合实施例对本发明做进一步的详细说明。本发明首先对于车辆前方图像如图2所示,进行透视变换,如图3所示;对于透视变换的图像进行二值化处理,如图4所示;对于二值化结果进行边缘检测,如图5所示;对于边缘检测的结果图进行Hough变换检测直线,如图6所示;对于获得的直线映射回原始图像作为显示,如图7所示。如图1所示,本发明包括以下步骤:1.以视频的一幅图像作为样本进行标定处理,人工选定4个任意矩形的4个角点作为4个特征点(本发明中选择两条相邻的虚车道线的内侧4个点作为特征点),对于图像上映射的4个点的坐标选择以图像左上点为原点,向右为X正方向,向下为Y正方向,中的图像区域中间偏下的位置。2.根据下列方程求解透视系数:x1′y1′...xn′yn′=x1y11000-x1′x1-x1′y1000x1y11-y1′x1-y1′y1...xnyn1000-xn′xn-xn′yn000xnyn1-yn′xn-yn′ynm1m2m3m4m5m6m7m8]]>其中,m1,…,m8为透视系数(向量),xi,yi为原始坐标,xi’,yi’为透视之后的坐标,i=1,…,4。n=4。3.将整个区域按照该透视进行变换,即uvw=m1m2m3m4m5m6m7m81x′y′1]]>其中,u,v,w为透视后坐标,x’、y’为原始坐标。M矩阵为透视系数矩阵,其元素为m1,…,m8,1。最终得到的透视图的结果如图3所示。4.对透视变换后的各区域进行二值化,采用双尺度滤波,并进行边缘提取包括以下步骤:设定第一滤波器3*3和第二滤波器的尺寸101*101;分别将第一滤波器和第二滤波器对透视变换后的区域进行滤波得到两幅图像;将两幅图像的像素值做差,得到目标特征的二值化图像;在目标左边缘图像中从左上角开始遍历整幅图像;当遍历检测到当前的像素值为0,下一个像素值为1时,记录当前像素的列标签,继续遍历,当检测到当前元素值为1,下一个元素值为0时,再次记录当前元素的列信息,将该列标签与之前的列标签计算平均值,将平均值所在的列,该行的元素值赋为1,其他所有的值为0,这样得到了边缘图像。图像中的边缘信息则代表了车道线信息。5.对于边缘结果图按照车道线检测的需求,本发明的需求为检测当前和左右相邻的共4条车道线,将图像分为3各区域,左、中、右三个部分(如图6),在每个部分的边缘多延伸20各像素(边缘提取后的图像宽度×阈值,阈值为0.05)作为缓冲区,这样可以有效的解决便道时,图像分割对车道线识别造成的相应值过小的问题。6.根据得到的边缘信息利用霍夫变换检测车道线通过得到的边缘图,将图像中边缘点进行Hough变换,对于所有的边缘点的坐标x,y带入如下公式计算r:r=x×sinθ+y×cosθ其中,θ设定范围为0到π之间,每隔0.03取一个值进行计算,将所有半径r进行投票统计,票数最高的前20条所对应的r和θ就是检测的车道线。7.根据透视的车道线间隔参数进行车道线过滤选定Yp等于图像中间位置,大小为图像高度的一半,带入Hough变换公式计算Xp:xp=r-yp×cosθsinθ]]>其中,Xp表示纵坐标为Yp时各车道线的横坐标,Yp为图像高度的一半,r为霍夫半径,θ为霍夫角;将多个Xp排序,从最小值开始,当某相邻两个Xp之间的间隔小于3/4车道线宽度时,删除这两个Xp中的较大值,剩余的为检测出的车道线。8.联合多区域车道线信息将得到的3区域的车道线信息进行整合,即多个车道线的信息(霍夫角和霍夫半径)构成霍夫角矩阵和霍夫半径矩阵,并映射回原始图像作为最终的结果。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1