视觉引导AGV多分支路径识别研究*
2022-05-10茅正冲赵隆志
茅正冲 赵隆志
(江南大学轻工过程先进控制教育部重点实验室 无锡 214122)
1 引言
AGV是指能够沿着预定规划好的路径完成对物品装卸的装置,在物流系统中已成为必不可少的部分[1~2]。引导方式可分为电磁引导,激光引导,惯性引导和视觉引导[3]。电磁引导的引导路线单一;激光引导成本较高[4];惯性引导精度存在不足[5]。视觉引导首先对图像预处理,后交由处理器控制,其成本低、柔性好、精度高且易于维护的特点满足工业要求[6]。
目前已涌现大量优异的算法,刘海芹[7]等将路径分类6类进行识别,对图片提取用于检测形态的canny算子,将多组样本送入SVM进行学习。当路径上出现障碍物时或缺失会降低识别的精度。武星[8]等则是利用KPCA作为描述特征,采用BP的方式对路径进行识别。此类方法能较好地保存细节,但是由于KPCA其非线性的运算造成计算度十分复杂。
本文利用PCA-LDA对高维空间的二值图像降维并进行线性初分类以提取,再利用ADABOOST分类算法对低维特征信息进行有效识别。该引导算法不仅减少噪声和冗余信息的影响增强了鲁棒性,而且避免细节的遗失,在提高识别精度,并满足实时性。
2 AGV多分支路径识别原理与流程
本文采用有线的方式,预先设定好引导路线,利用小车的摄像头对每一帧的图像进行拍摄,由于拍摄的角度可能存有偏差,需先对图像进行预处理,降低周边环境的影响突出路径的部分;然后采用PCA-LDA的方式对整幅图像进行降维以减少图像中多余的信息对后续分类器的影响,并且还能从中提取到关键信息;再将得出的细节特征送入ADABOOST算法进行学习,增强识别的精度,以便用于后续的定位跟踪功能,其具有的流程如图1所示。
图1 AGV视觉引导流程图
3 路径识别
3.1 图像预处理
本文选择9类进行识别。其中主要是包含直角、曲线两大类。文献[9]可知曲线所消耗的时间会较少,而直角的精度也会相对较高,所以二者都有其各自的优缺点。本文采集到图片格式为Ycb-Cr,所以采用分别处理的方式,首先对图像进行中值滤波,突显出细节区域并降低周边的噪点,对Y通道中的明暗分别对色彩和亮度进行补足。由图2(a)中可知路径为蓝色,故对Cb通道采用Otsu进行分割,最终效果对比图如图2所示。
图2 路径图像预处理
3.2 PCA、LDA与ADABOOST
主 成 分 分 析(Principal Component Analysis,PCA)与线性判别分析(Linear Discriminant Analysis,LDA)都是对特征进行线性的处理方式[10]。两者核心思想是以希望能以较少的信息来完成对原图像的描述,不同的是后者能够保留样本其本身所携带的物理意义[11]。
AdaBoost的核心思想是将多个弱分类器进行组合,基于原boosting的原理改进而来,能依据每一次的训练结果对后续的权值进行自适应调整[12]。主要的迭代过程如下所示。
1)将上述获得PCA-LDA的特征作为输入样本送入Adaboost进行初始化,给与特定权值:
2)以上述的权值分配送入m=1,2,…,M此迭代过程中,获得一个较弱的分类器为
其中em是在弱化的Gm(x)分类下错误集合权值总和,Gm(x)最终在分类器中所占的比重为
依据上次的训练后的结果将用于更新的权值送入分类器中,其表现形式为
3.3 PCA-LDA-ADABOOST训练模型
3.3.1 路径模型
本文所采用的9种路径如图3所示,分别采用50张图作为训练与测试样本。
图3 路径模型
在实际运行过程中,路径可能会受到污渍的污染,小车多次经过后的破损等问题,导致图像的不完整性,这对分类器的要求就更高。因此本文着重于处理不完整的部分。
3.3.2 PCA-LDA特征提取
常见的用于提取的特征有SIFT、SURF以及HOG等。其中SIFT与SURF的计算复杂度较高,实时运行难以满足;HOG对图像的降噪较为弱。而文献[7]中采用canny算子,检测路径的轮廓信息,在标识完整的情况下准确度较高。文献[13]则是将轮廓与投影的特征进行融合以增强对路径的描述能力,使得计算复杂度增加,且单方向投影会降低结构信息。
本文采用PCA-LDA的方式对图像进行特征提取。将采集到的图片进行灰度化后待处理。首先对其进行PCA降维处理,对N个样本的特征xi(i=1,2,…N)进行组合得到X=[x1,x2,…,xN],并以此来构建协方差矩阵,表示为
按特征值的大小评估贡献,选取前m个大特征,各部分的具体数值形式如式(10)[14]:
图4展现了特征的个数与贡献值间的关系,由图分析可得当横坐标达到100能表现出图像完整的信息,但考虑到耗时问题,采用95%准则,提取了前50个特征。但是原图像的细节信息还是过多,导致在类与类之间的差别小。因此还需利用LDA,设Y=[y1,y2,…,ym]为原图像降维后的特征,SB、Sw分别为类间和类内的散度矩阵,LDA变换后的形式Ylda为
图4 主成分个数与贡献度关系
其中,μi、s2i分别为样本均值与方差。最终对其进行归一化得到表1中的结果。
表1 类间相似度
4 实验与分析
为了验证该算法的识别精度和速度,采用i7-75000U的CPU,Matlab2016a为实验平台。将训练好的模型用于测试,最终结果如图5所示。
图5 测试样本分类效果图
图5(a)为只采用PCA降维提取特征进行识别的效果,准确率85.5%,图5(b)为采用PCA-LDA结合提取特征的识别结果,准确率达到100%。此外采用同样的数据对文献[7]和文献[8]所提出的算法进行了对比实验,最终实验结果如表2所示。
表2 不同算法识别效果
由表中可知文献[7]的识别率为95.5%,识别时间为0.027s,文献[7]识别率为98.8%,识别时间为0.036s。分析可只PCA没有考虑到各个不同类间的相关性,所得结果较差;文献[8]具有一定的识别率,但对图像要求较高,当路径受损或光照时,边缘轮廓特征不具备较强的鲁棒性;文献[8]的分类效果较好,识别准确度达到98.8%,使用了KPCA非线性降维效果,结合BP神经网络实现高精确率分类,但识别时间不能满足实时性要求。
5 结语
针对视觉导引AGV对多分支路径识别的准确性和快速性问题,本文提出基于PCA-LDA与Adaboost的方法,具有较强的鲁棒性与实时性。首先利用PCA对二值图像进行降维,再通过LDA进行初分类,接着通过Adaboost进行分类。实验结果表明PCA-LDA提取的特征具有计算量小和鲁棒性强的特点,与传统的PCA降维相比,Adaboost的识别率达到100%,而前者只有85.6%,提升准确率的同时,减少了计算量,缩短了反应时间。