APP下载

基于机器视觉的智能小车导航系统研究

2019-09-10王力超罗建刘丙友张峥峥李兴赵子祥范保程

关键词:智能小车导航机器视觉

王力超 罗建 刘丙友 张峥峥 李兴 赵子祥 范保程

摘 要:针对智能小车在跑道行驶过程中方向控制与速度控制不理想问题,对跑道进行图像处理,简化并提取跑道边界线,拟合出跑道方程,采用模糊PID算法对小车方向及速度进行控制.该方案能够快速有效分析小车路径,计算小车的方向和速度.

关键词:机器视觉;智能小车;导航

[中图分类号]TP242.6 [文献标志码]A

Research on Intelligent Vehicle Navigation System based on Machine Vision

WANG Lichao,LUO Jian, LIU Bingyou,ZHANG Zhengzheng,LI Xing,ZHAO Zixiang,FAN Baocheng

(Anhui Polytechnic University College of Electrical Engineering,Wuhu 241000,China)

Abstract:Aiming at the unsatisfactory problem of direction control and speed control of intelligent car in the course of running on the runway, image processing is carried out on the runway to simplify and extract the boundary line of the runway, and the runway equation is fitted. FuzzyPID algorithm is used to control the direction and speed of the car. This scheme can quickly and effectively analyze the car path and calculate the direction and speed of the car.

Key words:machine vision; intelligent car; navigation

智能小車作为智能车辆的微缩模型,是一个集行为控制与执行、动态路径规划与决策以及环境感知的智能系统.它能检验智能车辆的控制算法,模拟小车在道路上行驶时遇到的问题并予以解决.模拟真车行驶状态,对于未来智能车辆的研究有很大的帮助.智能小车红外线导航电路设计简单,处理速度快,易于控制,但其获得的道路信息较少,检测的前方距离有限,易受环境干扰,精度比较低.电磁导航结构简单,实现容易,误差不随时间积累,但灵敏度不高,精度不高,易受环境影响.机器视觉导航视野广,可以获取大量的道路信息,掌握完整全面的道路信息;前瞻性好,能更早地预知道路的变化并迅速做出反应;鲁棒性高,不易受环境的干扰,具有更快的图像处理速度和更好的控制实时性,具有广阔的应用前景和应用的可行性,是现阶段智能车辆最常用的导航方式.[1]

机器视觉导航利用图像传感器采集路径信息,将获得的路径图像信息传输到处理器中进行处理,控制智能车进行路径识别,然后对信息图像进行二值化、去噪等处理,达到简化视觉导航电路、提高智能小车的实时性、简化算法的目的.本文主要研究智能车在结构化跑道中道路的检测识别算法,提出一种基于区域生长的导航算法.

1 图像处理

第一步,对摄像头采集回来的图像信息进行预处理,从而得到低噪声的跑道信息;第二步,通过本文提出的图像提取算法将跑道边界线提取出来,判断跑道的走向趋势;第三步,拟合跑道边界线方程.

1.1 图像滤波处理

目前常用到的平滑化处理的方法有方框滤波—BoxBlur、均值滤波—Blur、高斯滤波—GaussianBlur、中值滤波—medianBlur、双边滤波—bilateralFilter.

方框滤波是将图像封装在boxblur中,使用方框滤波器模糊一张图片,从src输入,从dst输出.BoxFilter()函数方框滤波核表示为:

其中,

a1ksize.width*ksize.height 当mormalize=ture时,1当mormalize=false时.

均值滤波利用Blur对输入的图像src进行均值滤波处理后用dst输出.是非常常见的一种滤波操作,其缺点是不能很好地保护图像细节,容易破坏图像的细节部分,图像清晰度不理想,去噪效果不能满足要求.

高斯滤波对抑制服从正态分布的噪声有较好的处理效果,因此常用于图像的减噪过程.

中值滤波是非线性滤波技术,该方法在去除噪声的同时能保留图形的边缘细节,是一种处理平滑噪声效果较好的方法.

双边滤波是非线性的滤波方法,对低频信息有较好的滤波效果.

其中定义域核为

值域核为

(6)式和(7)式相乘后,产生依赖于数据的双边滤波权重函数

利用以上五种滤波方法,对跑道图像进行跑道滤波处理.

五种滤波方法比较结果表明,中值滤波最适合本研究,它的处理图像能够使图像的细节清晰地展现出来,且对滤除脉冲干扰及图像扫描噪声非常有效,还能够使跑道边界线清楚地展现出来,为接下来的研究提供了方便.

1.2 图像二值化处理

研究选取摄像头灰度变化为0255,含有256个灰度级,为了提高系统的处理速度,对原始图像进行二值化处理.[2]采用阈值对图像进行二值化处理[3],固定阈值二值化处理算法为:

g(x,y)=255 f(x,y)≥T 0 f(x,y)

(9)式中,g(x,y)是二值化处理后像素点的灰度值,T是所选的固定阈值,f(x,y)是原始图像像素点的灰度值.自适应阈值、int类型的thresholdType、阈值类型,取值必须为THRESH_BINARY,THRESH_BINARY_TNV之一.当“阈值类型”thresholdType取值为THRESH_BINARY时,自适应阈值处理算法为:

dst(x,y)=max Value ifsrc(x,y)>T(x,y) 0 otherwise.(10)

当“阈值类型”thresoldType取值为THRESH_BINARY_TNV时,自适应阈值的处理算法为:

dst(x,y)= 0 ifsrc(x,y)>T(x,y)maxValue otherwise.(11)

(11)式中,T(x,y)为单独像素的阈值.

二值化处理结果见图1图2.从图中可以看出,原始图像灰度值主要分布在50及200周围,灰度值在50左右的是区域跑道的边界黑线,灰度值在200左右的是跑道的白色部分,故选择150作为固定阈值,可以最大程度降低干扰.

1.3 图像去噪处理

对原始图像进行二值化处理后,在图像中会出现一些干扰点,为了后期处理方便,需要消除这些干扰点.选用膨胀腐蚀算法[4]对二值化后的图像进行去噪处理,数学表达式为:

dst(x,y)=min src(x+x',y+y')(x',y'):element(x',y')≠0.(12)

dst(x,y)=max src(x+x',y+y')(x',y'):element(x',y')≠0.(13)

利用矩阵1 1 1和111对二值化后的图像进行去噪处理,效果见图3图4所示.去噪处理消除了图像的干扰点,为后面的图像分割处理提供了方便.

1.4 分割算法

采用基于边缘检测的分割算法对二值化及去噪处理后的图像分割处理.对图像进行边缘检测是基于边缘检测分割算法的关键,本文采用sobel作为边缘检测的算子[6],处理后的效果见图5.通过分割算法的处理,将跑道边界线清晰地提取出来,从而准确地判断出跑道的走向趋势.

2 跑道边界线的提取

跑道边界线的提取是智能车视频导航的关键.跑道区域和背景区域有明显的分界线,将跑道从图像中分割出来,利用黑线进行道路提取,可以降低算法的复杂程度.为使小车能够一直在跑道上行驶,设跑道宽度为d,小车到左右两边线的距离为d1和d2,小车摄像头高度为h.

0<|d1-d2|

建立小车位置空间直角坐标系(图6),跑道边界线位于空间直角坐标系xoy面中.作跑道边界线某点切线,斜率为k,取跑道该点两侧距离相近的两点a点与b点,a点坐标为(x1,y1,0),b点坐标(x2,y2,k0).用a点与b点近似表示k.

k≈y2-y1x2-x1.(15)

由于左右两条边界线走线一致,故只需要分析其中一条线的斜率即可.小车在行驶过程中不断选取边界上的点,即可还原整个跑道.这里使用最小二乘法进行跑道边界线的拟合,通过计算

∑ni=1(kxi+b-yi)2,

拟合直线为:

y=kx+b.(16)

如果跑道是弯道,需要對跑道进一步曲线拟合,并求出方程.

3 控制算法

控制算法采用模糊PID算法.模糊PID控制器是在PID控制器的基础上,通过对PID控制器的三个参数进行调整,以获得更高控制效果的一种控制手段.

智能小车在跑道上行驶时,舵机的方向改变角度必须保证小车稳定在跑道上行驶而不会冲出跑道,且使因转向而产生的震荡不会对小车的行驶状况产生较大影响.[7]由于PID参数积分I只是用于消除静态误差,本文转向控制去掉积分环节.[8]结构如图7所示.E,EC分别为路径的偏差及偏差变化率,u为路径输出控制量.P,D为参数.每一组P,D参数对应着u的值,保证智能小车在跑道上稳定的行驶.

采用模糊控制算法对小车速度进行控制.图8为小车速度模糊控制器结构图.小车行驶过程中,系统检测出小车速度及与期望值之间的偏差,传送信号给电机执行.系统实时监测小车速度并不断修正,以达到小车在跑道上稳定快速行驶的效果.

4 结束语

研究了一种基于视觉导航的智能小车导航系统,前瞻性好,能够更早地预知道路的变化,并迅速做出反应;鲁棒性高,受环境的干扰程度小.导航系统将获得的信息传输到处理器中进行处理,得到有用信息后,控制智能车进行路径识别,对图像进行二值化处理,拟合出跑道曲线方程.采取模糊—PID控制器控制方法对小车的方向及速度进行控制,使小车能够稳定快速的在跑道上行驶.该方法达到了简化视觉导航电路和简化算法的目的,提高了智能小车的实时性和鲁棒性.

参考文献

[1] 周龙旗, 刘建平. 智能车视觉导航系统[J]. 计算技术与自动化, 1989, 13(2):1218.

[2] Dickmanns E D, Behringer R,Dickmanns D,et al. The seeing passenger car 'VaMoRsP'[C].Intelligent Vehicles '94 Symposium,Proceedings of the.IEEE Xplore,1994:6873.

[3] 陈丽敏. 一种自动提取阈值的方法[J]. 牡丹江师范学院学报:自然科学版,2005(2):67.

[4] Luong Q T, Weber J, Koller D, et al. An integrated stereobased approach to automatic vehicle guidance[C].International Conference on Computer Vision, 1995. Proceedings. IEEE, 1995:5257.

[5] Bertozzi M, Broggi A. GOLD: a parallel realtime stereo vision system for generic obstacle and lane detection.[J]. IEEE Transactions on Image Processing A Publication of the IEEE Signal Processing Society, 1998, 7(1):62.

[6] 鲍义东,熊馨.基于Canny算子的棉花异性纤维检测算法的研究[J].牡丹江师范学院学报:自然科学版,2009(1):1112.

[7] 张家骅,徐连强,吴迎春.智能小车模糊PID控制调速系统设计[J].信息技术,2012(10):181183.

[8] 叶金鑫.基于模糊PID的智能小车控制算法研究[J].实验科学与技术,2016,14(1):4647.

编辑:琳莉

猜你喜欢

智能小车导航机器视觉
基于快速检索功能于GPS地图导航的运用
为现代农业“导航”
基于STC89C51智能小车的移动家居平台的设计
基于激光导航路径识别的电力巡检智能机器人设计
基于HC—SR04超声波传感器的智能避障小车设计
智能安全防盗探测小车
大场景三维激光扫描仪在研究生实践教学培养中的应用
基于机器视觉的工件锯片缺陷检测系统设计
基于机器视觉技术的动态“白带”常规检测系统的开发
机器视觉技术在烟支钢印检测中的应用