于 杨
(杭州电子科技大学,浙江 杭州310018)
螺栓是工业行业中必不可少的将机械设备紧密连接起来的标准件。由于使用量和生产量巨大,传统的人工检测螺纹零件参数方法耗时、耗力,很难做到全部检测。基于计算机视觉的图像检测技术实现是检测领域近年来发展起来的新技术,具有速度快、精度高、非接触、抗干扰能力强等诸多优点。结合螺纹自身特点,采用图像检测技术和计算机控制技术对螺纹零件表面图像进行自动采集和数字图像处理,通过测量螺纹参数来判断目标零件是否符合生产需要,这种检测不仅可以实现在线检测,还可以提高精度,是未来螺纹检测的发展方向。目前图像检测技术已经广泛应用到各个领域,但国内的研究现状相比较国外的技术还不是很成熟。本文的目的是提出一种利用图像检测技术测量外螺纹几何参数的方法,实现非接触型检测外螺纹,并达到精度上的提高。
检测系统中硬件结构包括CCD工业相机、环形LED光源、载物台以及计算机。镜头和光源的选择非常重要,采集到清晰的螺纹图像对后期的图像处理会有很大的帮助。为了可以在较短的时间内拍摄几十甚至几百幅图片,本课题选择了COSM面阵相机和环形光源。
为了能够采集到外螺纹零件更多角度的照片,在机械结构上设计了一种摄像机固定,外螺纹放在转盘中心绕轴向运动,以运动一周过程中摄像机随机拍摄零件4次的方式获取外螺纹图像的采集图像方案,这种采集图像方案能够在一定程度上减小误差,提高精度。如图1所示为实验总体方案俯视图。
图1 总体方案俯视图
通过相机采集螺纹图像,经计算机进行图像预处理,边缘检测提并取螺纹轮廓,然后进行螺纹参数检测和缺陷识别,通过检测得到的螺纹参数与标准螺纹参数分析对比,做出判断的过程就是缺陷识别。系统流程如图2所示[1]。
图2 缺陷识别系统流程
由于采集图像部分曝光不足而采用点运算灰度变换,目的是增强图像灰度对比度,改善图像显示效果,使图像更加清晰,特征显示更明显。算子T以每一个单个像素为作用域,图像的输出只与位置和输入有关,实现像素点到点的式的运算为“点运算”,“点运算”表达式为:
s=T(r) (1)
式中r和s分别为输入、输出像素的灰度级;T为灰度级变换函数的映射关系。灰度变换前后如图3、图4可知。
图3 原始图像
图4 灰度图
对螺纹图像进行平滑处理的目的主要是去除图像噪声。中值滤波是一种能有效抑制噪声的非线性信号处理技术,把数字图像或者数字序列中的一点的值用该店的一个邻域中各点值的中值代替,让周围的像素值接近真实值,从而消除孤立的噪声点。对于一副图像,对目标像素点领域内像素点的灰度值进行排序,将得到的中间值作为目标像素点处理后的灰度值。中值滤波用公式表示如下:
其中,Xn是原始图像二维序列,Yn是处理后图像二维序列。图5为螺纹添加噪声后图像、图6为滤波后图像。
图5 添加噪声后图像
图6 滤波后图像
阈值T可根据灰度图像直方图进行选取,经过滤波后得到螺纹零件图像灰度直方图。通过观察螺纹图像灰度直方图可将直方图中波谷处的灰度值作为阈值进行灰度值分割,灰度直方图中出现了两个波峰,一个波峰对应零件区域,另一个对应背景区域。两个区域边界附近像素点少从而产生了波谷。灰度值分割法的处理函数如下:
其中,f(x,y)是原始图像中的像素值,g(x,y)是处理后的黑白图像的像素值。阈值分割法是一种非线性的运算,如果图像的像素值大于所设置的额阈值,则将这个像素的灰度值设置为255,反之将其灰度值设置为0[2].灰度直方图如图7所示,选取灰度阈值T=160,分割效果如图8所示。
图7 灰度直方图
图8 二直图像
通过与其他边缘检测算子的对比分析,得出Canny算子是最优化的边缘检测算子,该算子采用了高斯函数对图像进行了平滑处理,具有较强的抑制噪声能力,定位准确,具有较高的精度,检测到的螺纹边缘宽度均匀且完整性较好,符合检测需要。如图9所示为Canny边缘检测算子的检测结果。
图9 Canny算子检测结果图
建立直角坐标系,设置波峰和波谷的个数,计算x和y的数据个数点,将x和y等分M段,计算每一段的长度。找出每一段y里的最大值和最小值,得到与波峰波谷分别对应的横坐标x.根据螺纹参数的几何定义求解各项参数,然后采用最小二乘法拟合螺纹轴心线。
(1)螺纹大径r1
对所有的波峰进行直线拟合,得到牙顶拟合直线L1,求取M段L1拟合直线点到螺纹轴线的平均距离,该距离r1为螺纹大径值的一半。
(2)螺纹小径r2
对所有的波谷进行直线拟合,得到牙底拟合直线L2,求取M段L2拟合直线点到螺纹轴线的平均距离,该距离r2为螺纹小径值的一半。如图10所示为波峰、波谷点,图11所示为大径、小径线拟合结果。
图10 绘制波峰、波谷点
图11 大径、小径线拟合结果
(3)螺纹中经r
螺纹中径定义螺纹牙型上沟槽和凸起宽度相等的地方为螺纹中径位置。螺纹中径的测量是螺纹检测中较重要的螺纹参数。基于大径、小径算法找出螺纹边界各个牙顶和牙底坐标,并分别以先后顺序排列方式保存。初始化一条直线L与牙侧相交,按顺序记交点为P1、P2、P3……计算相邻交点间距离并使得距离相等,即为P1P2=P2P3=P3P4……此直线可代表中径线,因此该直线到螺纹轴线的距离r为螺纹中径的一半[3]。中径线提取结果如图12所示。
图12 中径线提取效果
以大径为例,记大径每段拟合直线点到螺纹轴线的距离分别为 D(1)、D(2)、D(3)……求 M 段距离的平均值即为r1.由此可得到螺纹的大径d1,检测结果界面如图13所示。
图13 螺纹参数检测结果界面
实验中被测螺纹型号是公称直径为6 mm的普通螺栓,利用千分尺对螺栓大径进行4次测量取平均值得到的结果为6.075 mm,小径利用摄像机投影放大螺纹零件和标尺测量得数值分别为4.556 mm.将外螺纹零件放入检测图像检测系统中,在检测系统硬件结构和机械安装没有任何变动的状态下,被测零件在转动一周的过程中随机拍摄4次照片进行图像测量处理,如图14为图像检测实验系统整体实物图。测量数据结果见表1所示。表1展示了螺栓4个面的参数的提取结果。
图14 硬件系统整体
表1 螺纹参数提取结果
已知像元的边长、相机的焦距和物距,计算方法如式(6)所示,式中xm为物理单位的测量结果,xc为螺纹参数在相机中成像的结果,xpix为以像素为单位的测量结果。结合已知的相机参数,便可通过式(6)进行单位(如mm)的转换从而得到物理单位的螺纹参数。表2为螺纹物理参数结果,表3为误差计算结果。
表2 螺纹物理参数结果
表3 误差计算结果
从表中的实验结果可得出,通过对实验结果的计算分析,被测外螺纹零件大径的标准差为0.009 3 mm,因此说明机械结构不变,外界环境影响较小的前提下,基于图像检测技术测量螺纹的集合参数具有较高的稳定性;小径的标准差为0.012 9 mm,与大径相差不多,同样误差也比较小。因此说明该图像检测系统所应用的检测算法可以满足工业生产中的外螺纹参数检测要求。
本文首先对获取到的螺纹图像进行预处理,对预处理后的图像运用数学形态学的方法进行边缘检测并提取螺纹轮廓,识别出螺纹参和轴线并计算实验中螺纹大径、中径、小径值,判断是否满足实际需要。在设计好检测系统的前提下,螺纹检测识别过程均以每个5 s以内的速度完成,测量精度精确提高,根据误差值是否在允许范围内可快速判断被测螺纹是否合格。这种识别方法速度快、精度高,高效率地实现了非接触式检测螺纹缺陷。
[1]姜籍翔.基于机器视觉的外螺纹几何参数检测算法研究[D].成都:电子科技大学,2014:37-40.
[2]周金山,娄训志,王 凡,等.基于机器视觉的螺纹缺陷检测方法[J].湖北工业大学学报,2010,25(2):4-6.
[3]段瑞玲,李庆祥,李玉和,图像边缘检测方法研究综述[J].光学技术,2005,5(3):415-419.