CN110132288A - 一种等宽路面的微型车视觉导航方法 - Google Patents
一种等宽路面的微型车视觉导航方法 Download PDFInfo
- Publication number
- CN110132288A CN110132288A CN201910379340.2A CN201910379340A CN110132288A CN 110132288 A CN110132288 A CN 110132288A CN 201910379340 A CN201910379340 A CN 201910379340A CN 110132288 A CN110132288 A CN 110132288A
- Authority
- CN
- China
- Prior art keywords
- point
- road surface
- row
- pixel
- minicar
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/28—Quantising the image, e.g. histogram thresholding for discrimination between background and foreground patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/588—Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明公开了一种等宽路面的微型车视觉导航方法,包括:S1:采集微型车即将行驶的路面的二值化图像,其中,像素点值0是对应黑、表示该点位于路面外,像素点值255对应白、表示该点为路面上的点;S2:对二值化图像进行解析和预处理,寻找路面两侧的边缘线,判断道路类型,结合道路类型和获取的边缘线计算得到路面中心线;S3:对路面中心线进行加权处理,得到当前采集的二值化图像的偏差。本发明能够实时有效地获取路面信息,为微型车转向控制提供依据。
Description
技术领域
本发明涉及逻辑图像处理技术领域,具体而言涉及一种等宽路面的微型车视觉导航方法。
背景技术
无人驾驶技术一般是半自动控制,因为路面信息复杂以及突发情况较多,所以会加入人为干预。特别是近年来随着人工智能的发展,无人驾驶技术引入了深度学习算法,以适应多种突发紧急情况。无人驾驶技术研究的关键问题之一就是通过多种传感器对复杂路面进行勘探,以获取庞大的信息用来决策。
在对复杂路面进行勘探时,需要从两个方面进行研究。一方面,路面信息复杂,常见的路面元素有直道,多种类型的弯道、坡道、交叉十字路口等,路面上也会出现路面维修而设置障碍,因此需要对路面元素的特征进行大量的有效研究。为了能够获得较好的路径和应对一些特殊路面元素,需要多种传感器的协同工作,为无人车的转向提供大量的数据。例如在坡道上就需要检测车身处的角度信息,在转弯的时候需要检测车轮所获得的摩擦力所提供的向心力大小,根据这些传感器提供的数据以及视觉传感器捕获的信息,在行驶过程中可以帮助车辆很好的决策。但是,传感器数量的增加、传感器安装的难度以及传感器之间数据的融合,对处理器的处理效率以及算法设计要求很高。
为了更好地研究无人驾驶技术,我们将路面元素以及传感器的数量进行了简化。庞大的数据量需要强大的硬件资源以及复杂的软件设计来解决,在研究初期,为了了解无人驾驶技术,我们需要规避庞大的数据处理。
发明内容
本发明目的在于提供一种等宽路面的微型车视觉导航方法,在合适的光源条件和一定干扰环境下,针对不同类型的等宽路面,使用具有硬件二值化的视觉传感器采集二值化图像,对采集的二值化图像进行解析处理,实时有效地获取路面信息,为微型车转向控制提供依据。
为达成上述目的,结合图1,本发明提出一种等宽路面的微型车视觉导航方法,述方法包括:
S1:采集微型车即将行驶的路面的二值化图像,其中,像素点值0是对应黑、表示该点位于路面外,像素点值255对应白、表示该点为路面上的点;
S2:对二值化图像进行解析和预处理,寻找路面两侧的边缘线,判断道路类型,结合道路类型和获取的边缘线计算得到路面中心线;
S3:对路面中心线进行加权处理,得到当前采集的二值化图像的偏差。
进一步的实施例中,所述对二值化图像进行解析和预处理,寻找路面两侧的边缘线包括:
S21:寻找左右边沿连续的根基像素点:
选定靠近车头的前M行图像的像素点作为基本判断依据,如果发生错误,则向上滑动一行,重新生成连续的M行;
S22:向上爬取边沿点;
在前一行已有的根基像素点的基础上,以前一行已找到的边缘点为基准,在设定搜索范围内搜索新的边缘点,如果找到新的边缘点,则认为该新的边缘点是可信任的边缘点;如果找不到新的边缘点,就以当前边缘点的前M行点作为依据,向上预测一个点作为新的边缘点;
所述M为大于零的正整数。
进一步的实施例中,步骤S21中,采用二分法寻找左右边沿连续的根基像素点;
搜索的方法包括:
在同一行像素点的搜索中,设置两个记录,分别定义成左记录和右记录,如果当前中心点为白色,则更新右记录来保存当前像素点的位置,如果是黑色,则更新左记录来保存当前像素点的位置;当左右记录的差等于1的时候,表示已经找到了路面边沿。
进一步的实施例中,步骤S22中,向上爬去边沿点时,距离车头越远的边缘点所对应的设定搜索范围越大。
进一步的实施例中,所述道路类型包括直道、十字路口、小弯道、急弯道、坡道中的几种或者全部。
进一步的实施例中,所述对二值化图像进行解析和预处理包括拐点判别和修补像素点。
进一步的实施例中,所述对二值化图像进行拐点判别的方法包括:
以搜索中左右边沿连续的根基像素点作为判断依据,根据间隔1行的边沿点之间的位置差和/或拐点折线的斜率来判别拐点。
进一步的实施例中,所述对二值化图像进行修补像素点的方法包括:
对丢失像素点前N行的像素点采用最小二乘法进行拟合:
选用ycol=kxrow+b作为函数模型,xrow代表边沿像素点的行向位置值,ycol代表边沿像素点的列向位置值,k代表斜率,b代表截距,将连续N行的像素点作为函数模型输入信息,求出斜率k以及截距b;
根据已知函数模型对丢失处像素点的列向位置值进行预测;
所述N与丢失像素点与微型车的距离相对应,距离越远,N的取值越小。
进一步的实施例中,所述方法包括:
如果道路类型为二值化图像中只存在单边线的急弯,从参考直道中计算得到直道中心线与已知边沿的直线距离值,根据单边沿起始行的点以及截止行的点,使用近似函数模型ydis=kxrow+b作为补偿,ydis为急弯的若干行的距离值与行向位置对应的直道距离值的差的平均值,xrow为截止行向位置,k为斜率,b为截距;
根据固定补偿值和测量出的直道上的一半路面距离值,得到路面连续的中心线。
进一步的实施例中,所述方法包括:
沿图像行向由近至远依次设有x段加权值,x段的加权值是递增的;
将图像行向分为两个范围,如果截止行在距离微型车较近的范围内,将起始行到截至行的中心点分为y段,不同段选取对应的加权值进行计算,计算得到偏差;如果截至行在距离微型车较远的范围内,则每m个点增加一段,不足m个点的自成一段,计算得到偏差;
所述x大于y,x、y均为大于0的正整数。
以上本发明的技术方案,与现有相比,其显著的有益效果在于,在合适的光源条件和一定干扰环境下,针对不同类型的等宽路面,使用具有硬件二值化的视觉传感器采集二值化图像,对采集的二值化图像进行解析处理,实时有效地获取路面信息,为微型车转向控制提供依据。
应当理解,前述构思以及在下面更加详细地描述的额外构思的所有组合只要在这样的构思不相互矛盾的情况下都可以被视为本公开的发明主题的一部分。另外,所要求保护的主题的所有组合都被视为本公开的发明主题的一部分。
结合附图从下面的描述中可以更加全面地理解本发明教导的前述和其他方面、实施例和特征。本发明的其他附加方面例如示例性实施方式的特征和/或有益效果将在下面的描述中显见,或通过根据本发明教导的具体实施方式的实践中得知。
附图说明
附图不意在按比例绘制。在附图中,在各个图中示出的每个相同或近似相同的组成部分可以用相同的标号表示。为了清晰起见,在每个图中,并非每个组成部分均被标记。现在,将通过例子并参考附图来描述本发明的各个方面的实施例,其中:
图1是本发明的等宽路面的微型车视觉导航方法的流程图。
图2是本发明的直道中心线处理方法。
图3是本发明的十字路口中心线处理方法。
图4是本发明的小弯中心线处理方法。
图5是本发明的急弯中心线处理方法。
图6是本发明的坡道中心线处理方法。
图7是本发明的障碍物道路中心线处理方法。
图8是本发明的视觉处理***的搭载测试平台。
图9是本发明的视觉处理***的测试场地。
具体实施方式
为了更了解本发明的技术内容,特举具体实施例并配合所附图式说明如下。
以微型车作为测试平台,微型车的结构特征为:后轮靠直流电机驱动,前轮靠舵机驱动,摄像头安装的位置在微型车中间靠前一点。本专利提出的视觉导航***是给舵机转向控制服务的,采集数据的传感器是架高的数字摄像头,如图8所示的测试平台,摄像头架高的高度在30cm左右。如图9所示的测试场地,首先将车身在直道上摆正,即前轮左右轮分别与左右边沿的距离相等,并且后轮左右轮分别与左右边沿的距离相等,这就表示车身在直道上是摆正的。车身摆正后,调整摄像头左右的角度位置,同时观察图像,是否左右对称。随后调整上下角度位置,在车头前2.2m前瞻处放一个对称的障碍物,观察图像上障碍物的中心位置是否在图像行向上5/6处清晰可见。调整好摄像头的高度,摄像头左右的位置以及摄像头的上下位置之后,再通过旋钮调节摄像头的焦距。调节焦距的具体方法是:在白色板上贴上等间距的黑色条纹(可使用25mm宽度的黑色胶带代替),形成一块一块的方格子,将车身摆正用安装好的摄像头对着贴好黑色条纹的白色板,调节焦距,直到贴有黑色条纹的白色板图像清晰可见。
实际上在完成硬件的安装之前,需要根据时序图写摄像头的驱动,驱动程序可以获取摄像头拍摄的图像数据。为了方便观察图像的形状,通过电脑上位机作为辅助观察。由于选用的数字摄像头自带硬件二值化,所以大大增加了处理的效率以及得到了路面边沿光滑的图像,这给***运行带来了很多便利。
完成以上操作后,便可以使用本发明提出的方法,实时处理采集到的每一幅图像,最终得到转向偏差。
结合图1,本发明提出一种等宽路面的微型车视觉导航方法,所述方法包括:
S1:采集微型车即将行驶的路面的二值化图像,其中,像素点值0是对应黑、表示该点位于路面外,像素点值255对应白、表示该点为路面上的点。
S2:对二值化图像进行解析和预处理,寻找路面两侧的边缘线,判断道路类型,结合道路类型和获取的边缘线计算得到路面中心线。
S3:对路面中心线进行加权处理,得到当前采集的二值化图像的偏差。
结合图2,微型车在路面正常行驶时,需要检测当前路面的信息,并从中提取关键信息作为反馈量,供车轮灵活的转向。为了方便测试,我们选用了带有硬件二值化的数字摄像头作为视觉传感器,得到的图像像素点值只有0和255,分别对应黑和白。在经过二值化的图像中,近处的图像真实可靠,远处的图像失真严重,受环境干扰较大。实时拍摄的图像分辨率为60*80,60代表的是60行,80代表的是80列。为了避免远处图像的干扰,我们选用了从距离车头2.2m的有效前瞻,大大减轻了图像上真实路面信息受到的外界环境干扰,在测试种选用的行数为[1,52]。路面检测的思路可以概括为:-寻找路面两侧的边缘线,根据边缘线得到一条平滑的路面中心线,将中心线进行特殊加权处理,得到当前采集图像的偏差,供微型车转向控制。
进一步的实施例中,所述对二值化图像进行解析和预处理,寻找路面两侧的边缘线包括:
S21:寻找左右边沿连续的根基像素点:
选定靠近车头的前M行图像的像素点作为基本判断依据,如果发生错误,则向上滑动一行,重新生成连续的M行。
S22:向上爬取边沿点:
在前一行已有的根基像素点的基础上,以前一行已找到的边缘点为基准,在设定搜索范围内搜索新的边缘点,如果找到新的边缘点,则认为该新的边缘点是可信任的边缘点;如果找不到新的边缘点,就以当前边缘点的前M行点作为依据,向上预测一个点作为新的边缘点。
所述M为大于零的正整数。
寻找左右边沿分为两个步骤,一是寻找左右边沿连续的根基像素点,二是在此基础上,向上爬取边沿点。
左右边缘的基本思路为:选定靠近车头的前5行图像的像素点作为基本判断依据,如果发生错误,则向上滑动一行,重新生成连续的5行。得到连续的5行可以相信的根基像素点(需要说明的是左边沿与右边沿的根基像素点可能不是在同一起始行)之后,开始向上爬点,有效的去除环境干扰。
爬点的基本思路为:在前一行已有的根基像素点的基础上(相连两行点的位置相差不大),在前一行已找到边缘点的附近搜索,如果找到新的边缘点,则认为该点是可信任的边缘点;如果找不到这样的点,就以当前点的前5行点作为依据,向上预测一个点。
每行边缘点找到以后,便计算中心点的位置,在计算中心点的时候,会发生以下几种情况:
1)左右边缘点都存在,则中心点为左右边缘点位置和的一半。
2)左边缘存在,右边缘不存在,或左边缘不存在,右边缘存在,则如果当前点前几行存在一段可靠的中心线,就可以以中心线作为依据,向上预测一个中心点,如果当前点前几行不存在一段可靠的中心线,则需要继续搜索,搜索到图像相关特征信息后,再修补之前的相关点。
3)如果左边缘和右边缘都不存在,一般是发生在左右基础边沿行都未找到,中心点也就没有意义了。在该状态下,处理方法为保持前一次的转向偏差。
进一步的实施例中,步骤S21中,采用二分法寻找左右边沿连续的根基像素点。
在确定连续的5行根基像素点时,采用二分法进行搜索。本申请中,nmax代表搜索的最大次数,nmin代表搜索的最小次数,nreal代表在一幅图片中真实搜索一边的次数,nall代表在一幅图片中真实搜索双边的次数,wimg代表图片列的大小,在分辨率60*80的图片中,wimg=80,有如下式子成立:
首先求出最大和最小的搜索次数:
nmin=1
真实搜索的次数是在最小和最大之间:
nmin≤nreal≤nmax
由于是双边搜索,所以一幅图像最终搜索次数为:
nall=2nreal。
以搜索左边沿为例,搜索的基本思路为:在同一行像素点的搜索中,设置两个记录,分别为左记录和右记录,如果当前中心点为白色,则更新右记录来保存当前像素点的位置,如果是黑色,则更新左记录来保存当前像素点的位置。当左右记录的差等于1的时候,即表示已经找到了路面边沿,即在二值化图像中出现了像素点值的跳变。
在搜索左右连续根基像素点的过程中,可能会出现两种情况,第一种情况是连续5个点不存在梯度(像素点的列向位置没有变化),第二种情况是出现连续5行仅一个点与其他点存在梯度,而且梯度相差1,其他点不存在梯度。遇到这两种情况,则舍弃这样的连续根基像素点,向上滑动一行,重新形成连续的5行,再次作判断。结合图3,如果在十字路口,则会形成很明显的拐点,由于连续根基像素点的信息真实可靠,所以判断失真的条件也较为严格。以搜索左边界为例,在连续的5行根基像素点中,存在两种情况,第一种情况是连续两个点的位置差大于6,第二种情况是第1行与第5行的点的位置差大于8,根据不同的图像分辨率可以适当的调整位置差限定值,如果遇到这两种情况,则表示是十字路口并发生很严重的失真,需要舍弃此连续的根基像素点。
进一步的实施例中,步骤S22中,向上爬去边沿点时,距离车头越远的边缘点所对应的设定搜索范围越大。
爬点的基本思路为:在前一行已找到像素点的位置附近找,即根据前一行像素点的位置来决定当前像素点的搜索区间,搜索区间要根据图像在不同划分区内搜索。在分辨率为60*80的图像中,行向上我们将图像的行划分为三个大区间,分别为[0,16],[17,36],[37,59]。在弯道处,离车头越远的地方图像边沿斜率大,但是环境的影响也越大,所以行向搜索的范围要适中。Xfront代表前一行像素点的位置,在[0,16]行向搜索区间内,点的列向搜索区间为[Xfront-5,Xfront+5],在[17,36]行向搜索区间为[Xfront-8,Xfront+8],在[37,59]的行向搜索区间为[Xfront-10,Xfront+10]。在爬点的过程中,也是可以简化搜索的,不需要进行左右搜索。以搜索左边沿列区间[0,16]为例,如果当前点是白色的,即表示是路面的点,搜索的行向区间为[Xfront-5,Xfront],如果当前点是黑色的,即表示是路面外的点,搜索的行向区间为[Xfront,Xfront+5]。
进一步的实施例中,所述对二值化图像进行解析和预处理包括拐点判别和修补像素点。
进一步的实施例中,所述对二值化图像进行拐点判别的方法包括:
以搜索中左右边沿连续的根基像素点作为判断依据,根据间隔1行的边沿点之间的位置差和/或拐点折线的斜率来判别拐点。
在十字路口会发生失真,这时候需要对拐点进行判别,但是普通的拐点特征与弯道很相似,所以需要进行特殊处理。在拐点判别的时候,以搜索中连续的5行作为判断依据。拐点处理有两种处理方法,以Xfirst,Xsecond,Xthird,Xfourth,Xfifth从下往上数行分别代表连续5行中每一行已找到边沿点的位置,Xdiff_first,Xdiff_second,Xdiff_third,Xdiff_fourth分别代表连续两行边沿点之间的位置差,拐点的基本条件在两种情况下都要满足,有如下关系式成立:
Xdiff_first=Xfifth-Xfourth
Xdiff_second=Xfourth-Xthird
Xdiff_third=Xthird-Xsecond
Xdiff_fourth=Xsecond-Xfirst
左边沿需要满足的4个基本条件为:
Xdiff_first≤0,Xdiff_second≤0
Xdiff_third≥0,Xdiff_fourth≥0
右边沿需要满足的4个基本条件为:
Xdiff_first≥0,Xdiff_second≥0
Xdiff_third≤0,Xdiff_fourth≤0
第一种是将图像行向上划分为三个区间,分别为[0,10),[10,40),[40,59],区间的分配根据不同图像分辨率适当调整。Xdiff_top,Xdiff_bottom分别代表间隔1行的边沿点之间的位置差。有如下关系成立:
Xdiff_top=Xthird-Xfifth
Xdiff_bottom=Xthird-Xfirst
在行向区间[0,10)内,左边沿拐点判定条件需要满足:
Xdiff_top≥1,Xdiff_bottom≥1
右边沿拐点判定条件需要满足:
Xdiff_top≤-1,Xdiffbottom≤-1
在行向区间[10,40)内,左边沿拐点判定条件需要满足:
Xdiff_top≥2,Xdiff_bottom≥1
右边沿拐点判定条件需要满足:
Xdiff_top≤-2,Xdiffbottom≤-1
在行向区间[40,59]内,左边沿拐点判定条件需要满足:
Xdiff_top≥3,Xdiff_bottom≥2
右边沿拐点判定条件需要满足:
Xdiff_top≤-3,Xdiffbottom≤-2
第二种情况是根据斜率来判别,Xpro代表拐点折线的弯曲程度,有如下式子成立:
将行向区间划分为两个区间,分别为[0,35],[36,59]。在行向区间[0,35],左边沿拐点判定条件需要满足:
Xpro≥3
右边沿拐点判定条件需要满足:
Xpro≤-3
在行向区间[36,59],左边沿拐点判定条件需要满足:
Xpro≥5
右边沿拐点判定条件需要满足:
Xpro≤-5
以上为十字路口失真拐点判别情况。
进一步的实施例中,所述对二值化图像进行修补像素点的方法包括:
对丢失像素点前N行的像素点采用最小二乘法进行拟合:
选用ycol=kxrow+b作为函数模型,xrow代表边沿像素点的行向位置值,ycol代表边沿像素点的列向位置值,k代表斜率,b代表截距,将连续N行的像素点作为函数模型输入信息,求出斜率k以及截距b。
根据已知函数模型对丢失处像素点的列向位置值进行预测。
所述N与丢失像素点与微型车的距离相对应,距离越远,N的取值越小。
下面讨论像素点丢失,有时还会存在拐点情况,这时需要修正补点。补点的基本思路为:由于拐点的信息都是由于图像畸变产生的错误信息,所以需要进行修补,在修补的过程中,需要对前几行的像素点先进行拟合,再进行修补。本发明中,使用了最小二乘法进行拟合,选用的函数模型为ycol=kxrow+b,xrow代表边沿像素点的行向位置值,ycol代表边沿像素点的列向位置值,根据连续5行的像素点作为函数模型输入信息,需要求出斜率k以及截距b,根据这个函数模型可以对下一个像素点的列向位置值进行预测。拐点修正补点是最为关键的,由于图像存在梯形失真,越远的事物,像素点压缩的就很厉害。本发明中具体的方法是,则需要对行向进行划分,划分为三个区间,在真实路面上三个区间的距离长度几乎一样,三个区间分别为[0,40),[40,45),[45,59]。在这三个区间内,像素点的失真程度不一样,为了预测效果,直线拟合的策略也不一样,有如下策略参考:
(a)在行向区间[0,40)内,需要退5行对连续的5行进行线性拟合。
(b)在行向区间[40,45)内,需要退3行对连续的3行进行线性拟合。
(c)在行向区间[45,59]内,需要退2行对连续的2行进行线性拟合。
拟合的目的是在爬点的过程中,以上是在存在拐点的拟合,需要修补的点是3个像素点,3个像素点为当前像素点以及前2行边沿像素点。这种情况一般发生在十字路口找不到边沿,根据前面实时拟合的直线,就可以向上预测一个点作为边界。如果不存在拐点,由于摄像头性能的一些问题,丢失一个像素点,就可以直接预测一个点。
进一步的实施例中,所述道路类型包括直道、十字路口、小弯道、急弯道、坡道中的几种或者全部。除了前述基本处理流程,对于其他的路面情况还需要进行特殊处理,下面结合特殊路面的种类对此进行一一介绍。
结合图4,在处理小弯的过程中,会出现2种情况需要特殊处理,在向上搜索的过程中,需要返回对之前的中心点的位置进行修改。
结合图4(a),对于正常小弯,越靠近车头的信息越准确,但是对车的速度限制越强,离车头越远的图像信息环境干扰大,而且有严重的梯形失真,越不容易处理,但是用上去车的速度却可以提高很多。
结合图4(b),对于特殊小弯1,其特征为右边沿连续的根基像素点可搜索得到,然后出现双边丢失的情况,然后左边沿连续的根基像素点找到。解决方法为搜索到左边沿连续的根基像素点之后,向下补左边沿,然后拟合右边沿向上补缺失的点,最后求出左右边沿像素点位置的中间值,即为中心线的位置。
结合图4(c),对于特殊小弯2,左边沿连续的根基像素点找到后,需要对连续的根基像素点进行拟合,补出左边沿的边界,然后跟据左右边沿像素点位置计算出中心点的位置,保证了中心线的连续性。
结合图5,急弯的特征是只存在单边线的位置,没有双边沿的位置信息无法知道中心线的位置。解决方法为:选一段直道作为参考,将微型车放置在直路面中央,得到左右对称的直道图像,算出直道中心线与边沿的距离值,60行即对应60个距离值。根据单边沿起始行的点以及截止行的点(截止行指到此行结束,再向上的像素点由于不好处理而舍弃,记录的是次行结束的行向值),根据实际急弯的某几行距离值与行向位置对应的直道距离值的差ydis的平均值以及截止行向位置xrow,使用近似函数模型ydis=kxrow+b作为补偿,求出斜率k和截距b。根据每一幅图的固定补偿值和测量出的直道上的一半路面距离值,得到路面连续的中心线。本申请中经过测试得出的近似函数为:
ydis=8.7*xrow+3.5
结合图6,对于坡道,在很高速度下微型车会不稳定,特别是上坡,速度过快容易与路面分离,由于重力作用和车的惯性作用,车回到路面时易于损坏,所以上坡过程中车是需要减速的,对根据坡道特征需要进行判别处理。在得到左右边界后,对当前路面特征进行判别。对路面图像进行采样,分别取第10,20,30,40,50行,根据这几行边沿数据的特点从而得到判定条件。
本发明中,使用了4种特征作为判断依据:
以xleft_loc_10,xleft_loc_20,xleft_loc_30,xleft_loc_40,xleft_loc_50分别代表左边沿像素点第10,20,30,40,50行的列向位置值,以xright_loc_10,xright_loc_20,xright_loc_30,xright_loc_40,xright_loc_50分别代表右边沿像素点第10,20,30,40,50行的列向位置值,以d10,d20,d30,d40,d50分别代表第10,20,30,40,50行路面宽度值,有如下式子成立:
d10=xright_loc_10-xleft_loc_10
d20=xright_loc_20-xleft_loc_20
d30=xright_loc_30-xleft_loc_30
d40=xright_loc_40-xleft_loc_40
d50=xright_loc_50-xleft_loc_50
以xpro1,xpro2,xpro3,xpro4分别代表路面宽度变化率,有如下式子成立:
xpro1=d10-d20
xpro2=d20-d30
xpro3=d30-d40
xpro4=d40-d50
以spro代表路面宽度变化率之和,有如下式子成立:
spro=xpro1+xpro2+xpro3+xpro4
以kleft,kright分别代表左右像素点边沿的斜率,有如下式子成立:
kleft=xleft_loc_50-xleft_loc_10
kright=xright_loc_10-xright_loc_50
根据以上4种类型的判断值,满足一定条件即可以判别上坡时候坡道的特征,在本次测试中,4种类型的判别条件(都要满足)如下:
d10≥65,d50≥30
3≤xpro1,xpro2,xpro3,xpro4≤10
20≤spro≤40
20≤(kright+kright)≤40
结合图7,在本次测试中,使用的是锲型障碍物作障碍模拟,其具有阻碍微型车正常行驶的能力。中心线的提取实际上是为了给微型车规划一条比较完美的路径,存在障碍物时,截止行实际上到障碍物最顶端就可以了。该根据障碍物的重心位置与路面中心点的距离以及一定的宽度值的特征,需要重新调整搜索到的中心线,规划出一条完美路径提供微型车前进。
进一步的实施例中,所述方法包括:
沿图像行向由近至远依次设有x段加权值,x段的加权值是递增的。
将图像行向分为两个范围,如果截止行在距离微型车较近的范围内,将起始行到截至行的中心点分为y段,不同段选取对应的加权值进行计算,计算得到偏差;如果截至行在距离微型车较远的范围内,则每m个点增加一段,不足m个点的自成一段,计算得到偏差。
所述x大于y,x、y均为大于0的正整数。
例如,在提取出连续的中心线后,需要得到中心线加权后的偏差,供微型车灵活的转向。在求取转向偏差的时候,采用变限加权平均的基本思想。据速度合理选定加权值,给微型车转向提供依据。其基本思想为:将图像行向分为两大段,分别为[0,40],[41,59],总共设有8段加权值,8段的加权值是递增的。权值越靠后的对车的转向影响越大,但是受到环境的干扰也越大,所以需要合理选择权值,以适应不同环境以及不同车速。如果截止行在第一个范围内,则将起始行到截至行的中心点分为5段,不同段选取合适的加权值进行计算,得到偏差。如果截至行超过40行,则每5个点增加一段,不足5个点的自成1段,然后计算得到偏差。
在本公开中参照附图来描述本发明的各方面,附图中示出了许多说明的实施例。本公开的实施例不必定义在包括本发明的所有方面。应当理解,上面介绍的多种构思和实施例,以及下面更加详细地描述的那些构思和实施方式可以以很多方式中任意一种来实施,这是因为本发明所公开的构思和实施例并不限于任何实施方式。另外,本发明公开的一些方面可以单独使用,或者与本发明公开的其他方面的任何适当组合来使用。
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。
Claims (10)
1.一种等宽路面的微型车视觉导航方法,其特征在于,所述方法包括:
S1:采集微型车即将行驶的路面的二值化图像,其中,像素点值0是对应黑、表示该点位于路面外,像素点值255对应白、表示该点为路面上的点;
S2:对二值化图像进行解析和预处理,寻找路面两侧的边缘线,判断道路类型,结合道路类型和获取的边缘线计算得到路面中心线;
S3:对路面中心线进行加权处理,得到当前采集的二值化图像的偏差。
2.根据权利要求1所述的等宽路面的微型车视觉导航方法,其特征在于,所述对二值化图像进行解析和预处理,寻找路面两侧的边缘线包括:
S21:寻找左右边沿连续的根基像素点:
选定靠近车头的前M行图像的像素点作为基本判断依据,如果发生错误,则向上滑动一行,重新生成连续的M行;
S22:向上爬取边沿点;
在前一行已有的根基像素点的基础上,以前一行已找到的边缘点为基准,在设定搜索范围内搜索新的边缘点,如果找到新的边缘点,则认为该新的边缘点是可信任的边缘点;如果找不到新的边缘点,就以当前边缘点的前M行点作为依据,向上预测一个点作为新的边缘点;
所述M为大于零的正整数。
3.根据权利要求2所述的等宽路面的微型车视觉导航方法,其特征在于,步骤S21中,采用二分法以搜索左右边沿连续的根基像素点;
搜索的方法包括:
在同一行像素点的搜索中,设置两个记录,分别定义成左记录和右记录,如果当前中心点为白色,则更新右记录来保存当前像素点的位置,如果是黑色,则更新左记录来保存当前像素点的位置;当左右记录的差等于1的时候,表示已经找到了路面边沿。
4.根据权利要求2所述的等宽路面的微型车视觉导航方法,其特征在于,步骤S22中,向上爬去边沿点时,距离车头越远的边缘点所对应的设定搜索范围越大。
5.根据权利要求1所述的等宽路面的微型车视觉导航方法,其特征在于,所述道路类型包括直道、十字路口、小弯道、急弯道、坡道中的几种或者全部。
6.根据权利要求1所述的等宽路面的微型车视觉导航方法,其特征在于,所述对二值化图像进行解析和预处理包括拐点判别和修补像素点。
7.根据权利要求6所述的等宽路面的微型车视觉导航方法,其特征在于,所述对二值化图像进行拐点判别的方法包括:
以搜索中左右边沿连续的根基像素点作为判断依据,根据间隔1行的边沿点之间的位置差和/或拐点折线的斜率来判别拐点。
8.根据权利要求6所述的等宽路面的微型车视觉导航方法,其特征在于,所述对二值化图像进行修补像素点的方法包括:
对丢失像素点前N行的像素点采用最小二乘法进行拟合:
选用ycol=kxrow+b作为函数模型,xrow代表边沿像素点的行向位置值,ycol代表边沿像素点的列向位置值,k代表斜率,b代表截距,将连续N行的像素点作为函数模型输入信息,求出斜率k以及截距b;
根据已知函数模型对丢失处像素点的列向位置值进行预测;
所述N与丢失像素点与微型车的距离相对应,距离越远,N的取值越小。
9.根据权利要求1所述的等宽路面的微型车视觉导航方法,其特征在于,所述方法包括:
如果道路类型为二值化图像中只存在单边线的急弯,从参考直道中计算得到直道中心线与已知边沿的直线距离值,根据单边沿起始行的点以及截止行的点,使用近似函数模型ydis=kxrow+b作为补偿,ydis为急弯的若干行的距离值与行向位置对应的直道距离值的差的平均值,xrow为截止行向位置,k为斜率,b为截距;
根据固定补偿值和测量出的直道上的一半路面距离值,得到路面连续的中心线。
10.根据权利要求1所述的等宽路面的微型车视觉导航方法,其特征在于,所述方法包括:
沿图像行向由近至远依次设有x段加权值,x段的加权值是递增的;
将图像行向分为两个范围,如果截止行在距离微型车较近的范围内,将起始行到截至行的中心点分为y段,不同段选取对应的加权值进行计算,计算得到偏差;如果截至行在距离微型车较远的范围内,则每m个点增加一段,不足m个点的自成一段,计算得到偏差;
所述x大于y,x、y均为大于0的正整数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910379340.2A CN110132288B (zh) | 2019-05-08 | 2019-05-08 | 一种等宽路面的微型车视觉导航方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910379340.2A CN110132288B (zh) | 2019-05-08 | 2019-05-08 | 一种等宽路面的微型车视觉导航方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110132288A true CN110132288A (zh) | 2019-08-16 |
CN110132288B CN110132288B (zh) | 2022-11-22 |
Family
ID=67576804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910379340.2A Active CN110132288B (zh) | 2019-05-08 | 2019-05-08 | 一种等宽路面的微型车视觉导航方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110132288B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111731324A (zh) * | 2020-05-29 | 2020-10-02 | 徐帅 | 一种基于视觉引导agv智能车的控制方法及*** |
CN118010060A (zh) * | 2024-04-10 | 2024-05-10 | 菏泽学院 | 基于图像处理的独轮车道路搜寻规划方法及*** |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006178694A (ja) * | 2004-12-22 | 2006-07-06 | Hitachi Software Eng Co Ltd | 道路標識画像構成線分候補の検出方法及び道路標識画像構成線分候補を検出可能なプログラム |
CN101187981A (zh) * | 2007-12-11 | 2008-05-28 | 中国科学院长春光学精密机械与物理研究所 | 对航拍图像中机场跑道的实时检测方法 |
JP2012190258A (ja) * | 2011-03-10 | 2012-10-04 | Denso Corp | エッジ点抽出装置、車線検出装置、およびプログラム |
CN103295420A (zh) * | 2013-01-30 | 2013-09-11 | 吉林大学 | 一种车道线识别的方法 |
CN104392212A (zh) * | 2014-11-14 | 2015-03-04 | 北京工业大学 | 一种基于视觉的道路信息检测及前方车辆识别方法 |
CN104700071A (zh) * | 2015-01-16 | 2015-06-10 | 北京工业大学 | 一种全景图道路轮廓的提取方法 |
CN107958222A (zh) * | 2017-12-12 | 2018-04-24 | 海信集团有限公司 | 一种路面检测方法、装置及终端 |
EP3336754A2 (en) * | 2016-11-25 | 2018-06-20 | Ricoh Company Ltd. | Information processing apparatus, photographing apparatus, moving object control system, moving object, information processing method, and program |
CN108490931A (zh) * | 2018-03-07 | 2018-09-04 | 曲阜师范大学 | 基于改进Sobel算子的智能车行驶控制***及方法 |
-
2019
- 2019-05-08 CN CN201910379340.2A patent/CN110132288B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006178694A (ja) * | 2004-12-22 | 2006-07-06 | Hitachi Software Eng Co Ltd | 道路標識画像構成線分候補の検出方法及び道路標識画像構成線分候補を検出可能なプログラム |
CN101187981A (zh) * | 2007-12-11 | 2008-05-28 | 中国科学院长春光学精密机械与物理研究所 | 对航拍图像中机场跑道的实时检测方法 |
JP2012190258A (ja) * | 2011-03-10 | 2012-10-04 | Denso Corp | エッジ点抽出装置、車線検出装置、およびプログラム |
CN103295420A (zh) * | 2013-01-30 | 2013-09-11 | 吉林大学 | 一种车道线识别的方法 |
CN104392212A (zh) * | 2014-11-14 | 2015-03-04 | 北京工业大学 | 一种基于视觉的道路信息检测及前方车辆识别方法 |
CN104700071A (zh) * | 2015-01-16 | 2015-06-10 | 北京工业大学 | 一种全景图道路轮廓的提取方法 |
EP3336754A2 (en) * | 2016-11-25 | 2018-06-20 | Ricoh Company Ltd. | Information processing apparatus, photographing apparatus, moving object control system, moving object, information processing method, and program |
CN107958222A (zh) * | 2017-12-12 | 2018-04-24 | 海信集团有限公司 | 一种路面检测方法、装置及终端 |
CN108490931A (zh) * | 2018-03-07 | 2018-09-04 | 曲阜师范大学 | 基于改进Sobel算子的智能车行驶控制***及方法 |
Non-Patent Citations (1)
Title |
---|
毛鹏,等: "基于图像采集的轨迹识别与跟踪***设计", 《信息技术》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111731324A (zh) * | 2020-05-29 | 2020-10-02 | 徐帅 | 一种基于视觉引导agv智能车的控制方法及*** |
CN118010060A (zh) * | 2024-04-10 | 2024-05-10 | 菏泽学院 | 基于图像处理的独轮车道路搜寻规划方法及*** |
CN118010060B (zh) * | 2024-04-10 | 2024-05-31 | 菏泽学院 | 基于图像处理的独轮车道路搜寻规划方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN110132288B (zh) | 2022-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103886308B (zh) | 一种使用聚合通道特征和软级联分类器的行人检测方法 | |
CN105005778B (zh) | 一种基于视觉背景提取的高速公路车辆检测方法 | |
CN103797529B (zh) | 三维物体检测装置 | |
CN104246821B (zh) | 三维物体检测装置和三维物体检测方法 | |
CN102708356B (zh) | 一种基于复杂背景下的车牌自动定位和识别方法 | |
CN103324930B (zh) | 一种基于灰度直方图二值化的车牌字符分割方法 | |
CN110175576A (zh) | 一种结合激光点云数据的行驶车辆视觉检测方法 | |
CN106780612A (zh) | 一种图像中的物体检测方法及装置 | |
CN103426179B (zh) | 一种基于均值偏移多特征融合的目标跟踪方法及装置 | |
CN104766071B (zh) | 一种应用于无人驾驶汽车的交通灯快速检测算法 | |
CN106127137A (zh) | 一种基于3d轨迹分析的目标检测识别算法 | |
CN105404857A (zh) | 一种基于红外的夜间智能车前方行人检测方法 | |
CN104318258A (zh) | 一种基于时域模糊和卡尔曼滤波器的车道线检测方法 | |
CN109190483B (zh) | 一种基于视觉的车道线检测方法 | |
CN104156731A (zh) | 基于人工神经网络的车牌识别***与方法 | |
CN105608429B (zh) | 基于差分激励的鲁棒车道线检测方法 | |
CN104200199B (zh) | 基于tof相机的不良驾驶行为检测方法 | |
CN105718872A (zh) | 两侧车道快速定位及检测车辆偏转角度的辅助方法及*** | |
CN103996198A (zh) | 复杂自然环境下感兴趣区域的检测方法 | |
CN103164711A (zh) | 基于像素和支持向量机的区域人流密度估计的方法 | |
CN107133568B (zh) | 一种基于车载前视相机的限速提示及超速告警方法 | |
CN110379168A (zh) | 一种基于Mask R-CNN的交通车辆信息获取方法 | |
CN110132288A (zh) | 一种等宽路面的微型车视觉导航方法 | |
CN107563330A (zh) | 一种监控视频中的水平倾斜车牌矫正方法 | |
CN110147748A (zh) | 一种基于道路边缘检测的移动机器人障碍物识别方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |