基于计算机视觉的AGV导航标识带识别与提取方法
2021-11-21叶向斌张桂梅
马 天,肖 卓,叶向斌,张桂梅
(南昌航空大学 航空制造工程学院,南昌 330063)
引 言
自动导引车(Automated Guide Vehicle,AGV)[1]是一种装有光学或电磁引导装置、能够沿导引路径自动行驶的无人运输车,广泛应用于工业、物流等领域。AGV的导航方式不仅决定其组成的物流系统的柔性,而且也影响该系统的可靠性和成本。
目前国内外有许多关于AGV导引和定位系统的研究,现有的AGV识别技术虽然广泛且定位精度高,但算法较为复杂,在一定程度上提升了调试和人工维护的成本。其中使用较多的导航方式有电磁导航、激光引导、惯性导航和视觉导航等[2]。陈显宝等[3]利用计算机图像识别技术,设计了一种基于DM码的AGV二次定位算法,实现精度较高的定位。茅正冲[4]利用最小二乘法提取导航路径,结合二维码标签实现对AGV位置和路线的实时监控。Laurens Jacobs等[5]提出了一种用于AGV轨迹跟踪模型的H∞最优线性反馈控制器。相较其他导航方式,由于视觉导航能更好地应付诸多的环境变化,具有路径设置和避障更灵活,价格低廉等优点,在近年来得到学者们的关注。基于视觉导航的AGV是利用摄像头采集路面标识带的图像信息,经过计算机识别处理得到路径信息,从而控制车辆的运行。对于这类AGV来说,导航标识带中心线提取系统是最关键组成部分。能否准确地从摄像头采集到的图像中识别、提取出导航标识带的中心线直接影响到AGV导航的精度。
针对该问题,学者们提出基于计算机视觉的方法检测道路标线,如田明锐等[6]提出了一种新的基于Canny算子的道路标线检测算法,通过自适应寻找Canny算子的最佳阈值,能较好地实现道路标线的准确检测。但该方法对于室内的复杂工况环境下AGV导航标识带的识别效果不够理想。针对该问题,夏田等人[7]提出了AGV视觉导航标识线边缘的提取的方法,首先采用阈值分割得到二值图像,再用中值滤波对二值图像进行平滑处理,最后应用边缘跟踪算法提取导航标识线的边缘,但是提取到的标识带边缘轮廓可能是左边缘线也可能是右边缘线,根据边缘线进行AGV导航是不稳定的。针对该问题,陈熙鹏等[8]提出了对采集到的图像进行预处理,再基于Canny算子提取标识带的边缘轮廓,并基于形态学提取标识带的中心线。佘宏杰等人[9]提出了基于Hough变换的中心线拟合法,获取到AGV导航的标识带中心线,并用实验表明该方法比最小二乘法具有更好的效果。但是当视觉AGV的运行环境较为复杂时,这些方法的效果均不够理想,且Hough变换的方法适合提取固定宽度的直线。基于此,本文也采用视觉导引AGV技术,提出一种基于几何作图的方法提取AGV导航标识带的中心线,并根据中心线方程解算出偏角和偏距等信息,适合于任意宽度的标识带中心线提取。
1 导航标识带中心线提取系统的组成
导航标识带识别与中心线提取系统主要由图像采集、图像处理、中心线提取、结果输出四部分组成[1-2]。图像采集部分由镜头、图像传感器等硬件组成。图像采集部分的任务是将目标对象的光信号转化为相应的电信号输入计算机;图像处理、中心线提取部分通过计算机上的图像处理软件;处理结果输出至显示器。图像处理和中心线提取是该系统的关键部分。系统组成如图1所示。
图1 导航标识带中心线提取系统的组成
2 图像处理
2.1 图像灰度化
导航标识带通常为一条置于地面上的有色色带,AGV通过安装在车体上的彩色摄像头采集路面图像,然后进行相应的图像处理。彩色图像数据量大,处理时间长,不适用于实时导航这种对响应时间有较高要求的应用场景,因此首先要对彩色图像进行灰度化处理以减小数据量。图像灰度化处理后如图2所示。
图2 图像灰度化处理
2.2 图像滤波
在实际应用场景中,受光照强度、图像传感器性能、信号传输线路干扰等因素的影响,系统采集到的图像都不可避免地含有噪声。图像滤波的作用就是尽可能地消除这些噪声。一个好的图像滤波方法应在消除噪声的同时,保证图像边缘轮廓细节不产生模糊化现象[3]。
中值滤波与算数均值滤波是常用的两种滤波方法。对图像分别应用这两种滤波方法进行去噪处理,结果如图3所示。
图3 图像滤波处理
对滤波结果进行比较可知,中值滤波去噪效果最好,同时较好地保留了图像边缘轮廓细节;算数均值滤波较好地保留了图像边缘轮廓细节,但是去噪效果不如中值滤波。因此我们对灰度化的图像采用中值滤波进行去噪处理。
2.3 图像分割与边缘提取
在实际应用场景中,系统采集到的图像会因为环境光照强度的不均匀而带有局部明暗差异,这会对标识带中心线的提取过程造成干扰。由于所采集的目标对象与背景的对比较明显,图像直方图呈现“双峰”性,可对中值滤波后的图像先进行阈值分割,再提取边缘。阈值分割具有运算效率高、速度快等有点,适用于对响应时间有较高要求的应用场景。阈值分割的原理可简单概括为如下公式:
其中t为分割阈值,1表示目标对象,0表示背景。t值的确定是关键,通常采用动态阈值,即根据图像由算法自动生成对应的t值[6]。阈值分割后的结果如图4所示。
图4 图像阈值分割处理
观察阈值分割结果可知,由于标识带可能存在破损、缺口等情况,造成分割后的图像带有孔洞和破口,这会对标识带的边缘提取造成干扰。因此在提取边缘之前,应对分割结果进行孔洞填充、膨胀、融合缺口、腐蚀处理,并在过程中加入若干次中值滤波处理。经过上述处理后可有效提高阈值分割的图像质量,在此图像基础上可获得较好的边缘提取效果,如图5e所示。
图5 图像阈值分割与边缘提取
3 标识带的中心线提取
3.1 基于Hough变换的中心线提取
Hough变换[9]具有受几何形状间断影响小的优点,常用作直线检测。对边缘提取后的图像应用Hough变换进行标识带边缘提取,结果如图6b所示。只需将其中一条边缘直线向另一条边缘直线方向移动半个标识带宽度,即可得到标识带中心线,如图6c所示。基于Hough变换的中心线提取方法只能应用于固定宽度的标识带,若标识带宽度发生变化,该方法不够理想。
图6 基于Hough变换的中心线提取
3.2 本文提出的中心线提取方法
针对基于Hough变换法只能识别固定宽度标识带这一局限,提出了一种基于几何作图的中心线提取方法。该方法的原理是通过作出标识带上的两个中点来确定中心线的。如图7b所示,应用边缘追踪得到标识带边缘上的四点A1、A2、B1、B2,作出其中点Am、Bm,由Am、Bm确定的直线即为标识带的中心线。应用此方法可实现任意宽度标识带中心线的提取,如图7c所示。
图7 基于几何作图的中心线提取
3.3 实验结果对比
为了验证本文方法的性能,选择实际场景中拍摄的两幅图片(如图8所示)进行实验,其中图8a的标识带有破损,图8b的图像对比度相对较低,标识带的宽度不固定,且有破损。将本文提出的方法与文献[8]和文献[9]的方法进行比较,以人工提取的标识带中心线为Ground truth,计算中心线提取精度,实验结果如表1所示。从表1结果可看出,对于图8a所示的标识带,由于图像相对比较完整,三种方法的中心线提取精度较为接近;而对于图8b所示的标识带,由于图像对比度相对较低,标识带宽度不固定,且破损更为严重,文献[8]的方法提取效果相对更差,文献[9]的方法次之,本文提出的方法效果最好。同时我们对其他的标识带图像也反复进行了多次实验,最后得到本文提出的方法结果均较为理想。
图8 实验对比图像
表1 实验结果对比 (表中数值为导航标识带中心线的检测精度)
4 导航标识带中心线提取系统设计
将上述图像预处理、中心线提取功能进行整合,利用MATLAB[10,11]搭建导航标识带中心线提取系统,如图9所示。其主要功能如下:1) 能输入图像;2) 能对输入的图像进行预处理和边缘提取;3) 能提取标识带中心线;4) 能测算出偏角和偏距,如图9所示。
图9 导航标识带中心线提取系统设计
运用本中心线提取系统对实际应用场景中的标识带进行多次提取实验,如图10所示,系统都能准确识别出标识带的边缘,并对中心线进行提取,解算出偏角和偏距。说明本系统所采用的图像处理方法和提取原理是合理的,能够运用于实际使用中。
图10 导航标识带中心线提取实验
5 结 论
本文以图像为信息源,以MATLAB为编程工具,设计了一种导航标识带识别与中心线提取方法。
首先对摄像头采集到的图像进行灰度化处理以减少数据处理量,然后利用中值滤波对图像进行滤波处理以降低周围干扰因素对图像识别质量的影响,再对图像使用阈值分割进行提取边缘得到导航标识带边界,最终通过几何作图计算中心线轨迹。经过多次测试,该系统达到了预定的功能。研究成果可为准确、稳定地控制AGV提供重要的技术支持。
本系统的设计还存在以下不足:如在图像分割与边缘提取过程中,遇到周围环境较复杂或采集的目标对象与背景灰度很接近时,阈值分割的结果将受到一定影响;当采集到的目标对象偏角过大时,本文提出方法的性能也将受到影响。