基于KNN算法的铝合金阳极化层打磨质量检测系统研究
2018-06-28,,,,
,, ,,
(1.哈尔滨工业大学机器人系统与技术国家重点实验室,黑龙江 哈尔滨 150080;2.广州瑞松智能科技股份有限公司,广东 广州 510760)
0 引言
铝合金由于其低密度、高强度的特点,现被广泛应用于航空航天行业中。在铝合金焊接工艺中,需要首先进行铝合金阳极化层表面的打磨作业[1-3]。由于航空航天行业对工件焊接质量要求较高,所以对阳极化层去除作业的质量要求也较高。因此,在作业完成后对工件进行打磨质量检测具有重大的意义。
由于铝合金的反光度较高,而且打磨作业后工件表面会有较多划痕,所以工件表面呈现高反光亮度、有密集复杂阴影的特点,因此对这样的图片进行信息提取较为困难。针对这类问题,杨萍采用小波变换方法对图像进行处理,并进行了实验验证,证明通过图像消噪可以取得较好的效果[4]。刘东升利用双目摄像机和卡尔曼滤波器实现了对图像中目标的定位[5]。王峰利用圆滑处理算法实现了在图片中提取钢轨轮廓[6]。但由于这些方法只对图片进行了滤波等处理,所以要求图片有较高的对比度,进而要求摄像机、光源等有较高的性能,实际应用性不强。
1 检测系统结构
1.1 机械系统结构
检测系统的机械系统由传送装置、机器人和视觉检测系统构成,如图 1所示。传送装置通常由传送带和相应的传感器构成[7]。机器人为SCARA平面型机器人,其速度快、成本低且工件只需要在平面方向进行检测,适用于检测应用。视觉检测系统由摄像头及光源构成并固联于机器人末端,随机器人移动拍摄整个工件待检测部分。
1.2 控制系统结构
控制系统主要包括SCARA机器人控制部分和机器视觉获取及计算部分,如图 2所示。具体硬件部分由嵌入式系统实现,SCARA机器人控制器与嵌入式系统采用PROFINET通信,并与外部生产线总控相连。SCARA机器人系统由示教器和控制器构成,分别实现示教再现指令与轨迹规划功能。当检测系统工作时,机器人到达拍摄位置时与嵌入式系统通信,嵌入式系统发送拍摄指令,摄像头进行图像信息采集。图像采集后,系统对图像进行计算,输出最终检测结果至主控。
图2 控制系统
1.3 系统输入输出
系统输入为打磨完毕的铝合金工件,系统输出为检测结果,即工件打磨宽度值和工件打磨质量,两者作为判断是否打磨合格的依据输入到主控。最终依照结果,如果打磨合格,工件进入到下一工序的加工,如果不合格,重新进行打磨工作或废弃。
1.4 机器人系统
用于检测作业的机器人为平面型SCARA机器人,其特点为工作速度快且工作时机器人基本在平面内移动。SCARA机器人包含大小臂的转动自由度、1个竖直方向的移动自由度和末端的旋转自由度[8]。其运动学模型可由机器人标准D-H模型表达,运动学简图如图 3所示。
图3 SCARA机器人运动学简图
SCARA机器人的D-H参数表如表1所示。
可由图3参数推导机器人正运动学与逆运动学。
表1 SCARA机器人D-H参数表
(1)
(2)
2 检测方法
2.1 SCARA运动方向确定
由于在检测工作时,摄像头固定在SCARA机器人上,并且工件的尺寸远大于摄像头的视场,所以若想对整个工件进行完整检测,需要让机器人沿工件磨削特征方向移动。对于每个不同工件形式分别采用人工示教的方法,确定各个示教点,示教点间采用直线插补的方式同时保持竖直方向固定,如图 4所示。最终确保在每个示教点拍摄的图片覆盖整个工件打磨区域。
图4 示教位置确定方式
2.2 摄像头参数标定
在检测工作进行前,需要对摄像头的参数进行标定。摄像头参数标定分为内参数标定和外参数标定,内参数包括摄像头焦距、畸变参数等,由于摄像头内参数可由专用软件实现,故在此主要对摄像头外参数进行标定。
由于最终图像处理分类结果的距离单位为像素单位,所以需要完成像素单位对实际单位的转化,即外参数标定。由于SCARA机器人的特点,摄像头始终处于与传送装置平行的方向,而工件在安装时保持打磨部分与传送装置平行。采用陶瓷标定片进行摄像头参数标定,采用标定片标定方式可靠、精度高。标定结果为在标定片所在高度处,像素单位对实际单位的转化关系,所以标定次数需要根据工件在高度方向的变化决定。根据各个示教点处工件的高度变化来确定是否进行多次标定,若高度变化量大于1 cm,则多进行一次标定,并记录下该示教点在序列中的位置。
2.3 基于KNN算法的铝合金阳极化层打磨检测算法
KNN(k-NearestNeighbor)算法又称K邻近算法,属于一种有监督的机器学习分类方法。这种算法需要提供一些实例,但无需训练即可使用。由于KNN算法具有思维清晰、计算方便等优点,近年来在图像识别领域得到了较好的应用[9-13]。该算法的工作原理大致为:先将已知标签的数据表示成向量的形式,并将这些向量以分类的向量集的形式来存储,构成实例集。再当一个待分类新的数据到来时,计算新数据所对应的向量与存储的向量集中各个向量之间的距离。并且对这些距离进行排序,以升序的形式表示。然后从中选出距离待分类数据最近的k个已知数据,通过分析这k个已知数据的标签出现的概率得到最终的分类结果。k的选取由用户在计算之前设定,一般为1个不大于20的整数。
例如,在图 5中,已知数据共有2种标签,分别以三角形和圆形表示。当出现1个菱形新数据时,计算该数据与图中每个已知数据间距离。当k取3时,选出距离新数据最近的3个已知数据,分别是2个三角形数据和1个圆形数据,其中三角形数据居多。因此认为新菱形数据距离三角形数据的距离更近,最终得出新数据属于标签1的结论。
图5 KNN算法示意
一般地,2个列向量x,y间距离的表示有欧式距离和马氏距离等,具体的计算公式如下:
(3)
(4)
Σ为向量x,y的协方差矩阵。由此可看出,当Σ为单位阵时,马氏距离也将退化为欧式距离。
通常,马氏距离的计算与尺度无关,且与向量中各元素的量纲无关。但由于马氏距离计算中需要计算协方差矩阵,这大大降低了计算的稳定性。
一般地,彩色数字图片在计算机中都以RGB格式进行存储。图片中每个像素点都对应着1个三维向量,分别表示红、绿、蓝3个颜色通道的值,值域均为0~255,共有256级。因此计算机读取的图片可以认为是1个三维矩阵。
(5)
在算法实现的过程中,需要用户首先提供一些已经分类完的实例。在本文中,通过人为提前选取加工后图片标准样本和未加工图片标准样本来实现。在系统工作时,先将摄像机采集的图片进行一定的预处理,然后计算图中各像素RGB值与各标准样本的RGB值之间的距离并排序,取k为3,得出该像素的分类结果,并由此得出整个图片的二值化分类结果。
3 实验测试
3.1 实验平台
实验平台包括SCARA机器人系统、图像采集系统和测试工件。工件测试实验在自然光条件下进行,其他体现工件颜色分布的光源亦可。具体实验平台如图 6所示。
图6 实验平台
3.2 工件测试结果
实验中工件被打磨部分为呈直线状,且高度均匀,所以经一次标定后,机器人持摄像头在工件上方移动,进行拍摄后可根据标定结果直接解算出检测结果。
在所有测试开始前,需要进行训练部分的选择,此后的计算以此为样本。如图 7中框图内部分所示,分别为未加工部分和加工完成部分。
图7 训练样本提取
当工件合格时,如图 8和图 9所示,下方完全打磨。检测结果中,下方完全被分类为打磨完毕部分,通过图像距离和标定结果可计算宽度为30 mm。
图8 合格工件实际图像
图9 合格工件图像处理结果
当工件不合格时,如图 10和图 11所示,即下方呈现未打磨的部分,对该图像进行检测。检测结果中,可检测处下方存在未打磨成功部分。
图10 不合格工件实际图像
图11 不合格工件图像处理结果
3.3 测试算法与其他图像处理方法比较
进行图像区域部分提取的传统方法主要有阈值筛选法和轮廓提取法。阈值提取法主要分为固定阈值法和动态阈值提取法。轮廓提取法中,采用常用的Canny算子法进行提取。分别采用以上算法对合格工件部分进行图像处理,结果如图12所示。
图12 其他图像处理方法对比
图12a所示为动态阈值提取法结果,可发现受反光影响特别明显;图12b和图12c为分别设置阈值范围为[190,255]及[200,255]时,提取结果,可发现无法按具体阈值提取出合适的部分;图12d为采用Canny算子进行边缘提取结果,可发现提取结果为铝表面划痕等变化明显的细节,很难提取打磨边缘自然过渡的区域。所以,基于KNN 的测试算法在处理铝合金表面区域提取时,比传统方法有更高的可靠性与准确性。
4 结束语
提出一种铝合金阳极化层打磨质量检测系统。系统由SCARA机器人、图像采集系统和传送装置组成。测试算法以打磨后的部分呈现明显的亮白色特性,而未打磨部分呈现不反光黄色区域为特征,采用基于KNN的图像颜色分类方法对机器人提取到的图片进行分类,分类结果为打磨后的亮白色部分。根据分类后图像的结果以及摄像头的标定结果,获取最终测试结果,包括工件打磨的宽度值和工件打磨的质量。最后,搭建工件检测系统,完成检测实验。实验结果表明,本系统可以实现铝合金阳极化层打磨质量检测并给出准确结果,同时相对于传统算法,具有更高的准确性和可靠性。
参考文献:
[1] Warner T.Recently-developed aluminium solutions for aerospace applications[J].Materials Science Forum,2006,519/520/521:1271-1278.
[2] 张新明,刘胜胆.航空铝合金及其材料加工[J].中国材料进展,2013,32(1):39-55.
[3] 白嘉远.铝合金材料的应用及其加工成形技术[J].世界有色金属,2017(14):272-273.
[4] 杨萍,赵丹,李鹤岐,等.专用焊接打磨机器人视觉系统的研究[J].兰州理工大学学报,2004,30(3):41-44.
[5] 刘东升.基于双目视觉的机器人在线检测技术的研究[D].青岛:青岛科技大学,2013.
[6] 王峰.机器视觉钢轨轮廓打磨诊断系统关键技术研究[D].武汉:武汉理工大学,2014.
[7] 黄晔.基于工业机器人的X射线CT检测系统研究[D].北京:北京理工大学,2015.
[8] 卢军,郑国穗,马金锋,等.SCARA机器人结构优化设计与运动分析[J].陕西科技大学学报(自然科学版),2014,32(1):137-141.
[9] Liu H,Zhang S.Noisy data elimination using mutual k-nearest neighbor for classification mining[J].Journal of Systems and Software,2012,85(5):1067-1074.
[10] Cheng H,Yu R,Liu Z,et al.Kernelized pyramid nearest-neighbor search for object categorization [J].Machine Vision and Applications,2014,25(4):931-941.
[11] Xu F, Yang Z, Jiang G. An analyzing and experimental method based on the resultant motion signals for SCARA manipulator joints [J].High Technology Letters,2017,23(3):279-285.
[12] Gu J,Pan Y,Wang H.Research on the improvement of image edge detection algorithm based on artificial neural network[J].Optik - International Journal for Light and Electron Optics,2015,126(21):2974-2978.
[13] Crosier M, Griffin L D.Using basic image features for texture classification[J].International Journal of Computer Vision,2010,88(3):447-460.