温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
基于
机器
视觉
链轮
内径
测量
系统
葛敏杰
58|电子制作 2023 年 1 月软件开发0 前言随着现代化生产的高速发展,中国精密测试仪器行业实力已不容小觑,已经初步建立了产品类别较为完整、具备相当制造规模与研发能力的工业系统1。而链轮作为机械设备的重要组成部分,是一种工业必需品,广泛应用于化工、纺织等行业的机械传动装置。链轮的精度是影响一些工业产品好坏的决定性因素。所以,提高链轮内径的检测精度对先进测量仪器发展进程有着十分重要的意义。传统的链轮内径测量采用游标卡尺测量法、内径千分尺测量法等,其中游标卡尺、内径千分尺以其轻便性,成本低等优势广泛地在授课教学以及工业检测中使用。但由于属于接触式测量,测量过程中容易对物体表面产生一定损伤,还存在着测量误差大、测量器械使用门槛较高等缺陷。并且人工检测存在效率低、可靠性差、易因工人疲劳而产生误检等弊端,难以满足现在制造业强调的实时、快速、在线和非接触检测的特殊要求2。而随着图像处理水平的提高,机器视觉逐渐成为热门的研究内容,是取代传统测量手段的理想方式之一。同时对于传统的链轮内径图像处理算法,因为有着较多的图像噪声等的干扰因素,其检测精度已经无法满足当下工业生产要求,因此对链轮内径的视觉检测的研究有着重要意义。本文针对传统检测效率低以及传统算法对链轮边缘动态噪声处理能力弱等不足,设计了一种基于机器视觉的链轮内径检测系统。通过相机将拍摄到的链轮图像转化为数字信号,再通过图像处理算法,过滤掉大部分噪声,增强链轮内径图像轮廓边缘信息对比度,增加对链轮内径的测量精度。与传统人工内径测量技术和传统的链轮内径图像增强检测算法技术相比,该方法具有更高的精度与效率。1 算法介绍 1.1 双边滤波现实中存在各种干扰,例如电源接入的电磁干扰、环境亮度不够均匀等。这些干扰会使图像采集产生不同形式的噪声,例如,拍摄环境亮度较暗或相机长期工作温度较高时,容易产生高斯噪声;又例如,相机传输信道,解码处理等过程容易产生椒盐噪声。对于本文所涉及的系统而言,电源接入的电磁干扰是最大的影响,因此在图像采集过程中,链轮边缘处像素值不明确,存在明显的动态噪声,使得后续的图像处理以及内径计算精度受到不少影响。因此对噪声的过滤是图像预处理过程中非常重要的一环。而传统的滤波算法效果一般,往往噪点对输出图像有较大影响,无法较好地保护图像细节。例如,均值滤波使用模板内所有像素的平均值代替模板中心像素灰度值3。显而易见,若图像存在噪声,模板内噪点数值会进入均值计算,输出像素值会受到干扰;又例如,中值滤波计算模板内所有像素中的中值,并用所计算出来的中值代替模板中心像素的灰度值4,该方法能够简单有效地过滤脉冲噪声,但对于该系统拍摄的图像,会导致图像不连续,不能有效地保留链轮边缘细节。本系统采用滤波能力相对较好的双边滤波。双边滤波算法(Bilateral Filters)于 1998 年由 C.Tomasi 和 R.Manduchi提出5。双边滤波同时考虑了像素的欧式距离和像素范围域的辐射差异7,即空域信息和灰度相似性,离模板中心的较远的像素点赋予较小的权值,弱化噪声影响。与过去用的传统算法如维纳滤波和高斯滤波对比,边缘处理较好,不会过于模糊,对高频细节的保护效果较好。双边滤波保护了图像整体像素的细节,同时起到了对图像的降噪平滑、保持边缘的效果。公式(1)和(2)给出了双边滤波的操作。qI为输入图像,bfpI为滤波后的图像:1(|)(|)srbfppqqbfq spIGpqGIIIW=(1)(|)(|)ssbfppqq sWGpqGII=(2)参数s定义了用于过滤像素的空间邻域的大小,r控制了相邻像素由于亮度差异而下降的程度,bfpI对权重的总和进行标准化。基于机器视觉的链轮内径测量系统葛敏杰,严时进,戴家兴,董晨浩,张瞳(绍兴文理学院 机械与电气工程学院,浙江绍兴,312000)基金项目:2021年浙江省大学生科技创新项目。摘要:近年来,中国的制造业水平提升明显,这与工业产品日益严苛的制造精度要求有关。而链轮作为重要的机械零件,其设计与制造精度会直接影响到工业产品的质量。传统的链轮检测以人工检测为主,检测精度较低,检测工具使用门槛较高。因此本文提出了一种基于机器视觉的链轮内径测量系统。该系统硬件上采用自动调节,有利于提高工作效率,减小工作量与人力成本。软件上通过双边滤波过滤噪点,小波变换提高图像对比度,以此增强链轮内径的边缘信息识别度,该系统测量结果相比于传统方法精度更高。关键词:链轮测量;机器视觉;小波变换DOI:10.16589/11-3571/tn.2023.01.015wwwele169com|59软件开发 1.2 小波变换双边滤波算法较好地滤除了图像噪声,但滤波会使得图像趋于平滑,对比度降低。而对链轮而言,图像信息主题主要为边缘信息,滤波后会使其不明确区域增加,因此需要进行对比度增强的处理。本系统采用增强效果较好的小波变换算法。小波变换(wavelet transform,WT)由 J.Morlet 首先提出。小波变换是进行信号时频分析和处理的理想工具。其在高频像素处对时间进行细化,低频处对频率进行拆分,进而可聚焦到图像模板内任意像素集合内的任意信号细节使得处理过后的临域内的像素值波动较小,趋于完整6。在增强过程中,其利用小波函数系表示或逼近原始信号,分离出高频成分与低频成分7。再通过对高频成分设定阈值函数过滤噪声,通过乘以不同增强系数的方法在不同的尺度上对不同频率范围内图像的细节分量进行增强。这样就能够在突出图像细节特征的同时,有效抑制图像噪声的影响,使图像轮廓更加突出8。小波函数系用小波函数(x)和尺度函数(x)来表示,定义为9:()()()()()000,jjkjj kkjjkf xckxdkx=+(3)式中,0j为任意一个起始的尺度,0()jck为尺度系数,()jdk为小波系数。2 基于机器视觉的链轮内径测量系统设计 2.1 硬件设计在实际测量环境中,环境亮度、链轮的位置对于图像采集有一定影响。环境亮度过低时,采集到的图像噪声较多,会增加后续的处理难度。因此硬件上添加了可调光源,由于较小的亮度影响可以软件处理,所以亮度要求不高。在系统使用前,使用 MVS 观察相机采集图像,手动调节可调光源至观察到明显链轮轮廓。而链轮位置的不同会导致拍摄图像的畸变,对系统检测精度影响较大,因此需要在硬件上添加自动调节系统,以增加测量精度,减少人工摆正的环节,减小一定的时间成本。所以该系统需要完成链轮位置控制与内径测量两功能。硬件整体设计框图如图 1 所示。其中,作为位置控制的反馈环节与内径测量的输入装置,相机的选择是整个系统的关键。相机使用 MV-CE200-10UM,该 相 机 为 2000 万 像 素 1 CMOS USB3.0 工 业面 阵 相 机,其 像 元 尺 寸 为 2.4m2.4m,分 辨 率 为54723648,信噪比为 41.5dB。该工业相机具有较高的传输能力、图像稳定能力和抗干扰能力等,图像获取和传输损失较少,以此保证内径测量精度。USB3 Vision PC HC-05 步进电机 STM32 相机 可调光源 UART 链轮位置 图 1 硬件设计框图相机捕获图像信息后,将数据传入上位机,若已完成链轮位置控制,上位机进行后续的图像处理。若未完成,则通过 HC-05 蓝牙模块与单片机进行通讯,传输链轮位置偏差数据。该蓝牙模块是基于 Bluetooth Specification V2.0 带EDR 蓝牙协议的数传模块。可以实现 10m 距离通信。以此完成非接触式测量的目标。蓝牙传输过程中,需要单片机获取数据并在此之后,控制步进电机对链轮位置进行改变。考虑单片机的使用效率以及经济性,本系统的单片机选择 STM32F103C8T6。它是基于 ARM Cortex-M 内核的 32 位的微控制器,工作频率为72MHz,能有效满足本系统要求。2.2 软件设计该设计由两部分完成,一是链轮位置控制,二是链轮内径测量。2.2.1 链轮位置控制LabVIEW 具有图形化、多线程、程序编写门槛低、设计效果美观等特点。因此使用 LabVIEW 进行上位机设计。图 2 LabVIEW 前面板图 2 为 LabVIEW 前面板,选择串口、波特率、停止位和数据位等信息后,点击“启动”,系统开始工作,进行链轮位置调节。当链轮位于相机正下方,进行内径测量,于“显示窗口”中显示当前时间、链轮序号和链轮内径数值,同时记录于后台表格。该程序在执行一次后自动停止,等待下一链轮的放置以及启动命令。点击“关闭串口”可断开与下位60|电子制作 2023 年 1 月软件开发机的连接。点击“清除窗口”可对“显示窗口”的数据进行清除。具体控制流程如图 3 所示。是否位于中心点 LabVIEW STM32 步进电机 相机 内径测量 是 否 图 3 链轮位置控制流程图第一步,LabVIEW 配置蓝牙通讯参数,通过通用异步收发传输器(UART)与单片机建立联系;第二步,界面点击启动按键,通过 USB3 Vision 协议与相机通讯,获取相机数据,并实时地记录并覆盖于本地;第三步,由于该相机为黑白相机,像素值差异较大。可以通过遍历法寻找圆心,即对图片先进行行搜索,寻找每一行中像素数值变化最明显的两个点,以像素为单位记录两点距离。再对距离数组进行搜索,寻找最大值,记录最大值所在行值。再对列进行上述操作,寻找最大值所在列值,以此确定链轮圆心。该数据与图像中心点进行比对,估计横纵位置差距。若圆心与图像中心点重合,则跳过后续步骤,进行直径测量程序;第四步,LabVIEW 通过蓝牙与 STM32 进行通讯,于后台实时发送链轮与图像中心点的横纵差距;第五步,STM32 控制由两个步进电机组成的十字滑台模组缓慢移动,改变链轮位置。通过不断循环步骤二至五,最终达到链轮中心位于相机正下方。图 4 LabVIEW 前面板运行图图 4 为 LabVIEW 前面板运行图,此时蓝牙通讯串口选择COM3接口,波特率设置为9600,停止位为1,数据位为8,无校验位。按下“启动”按键后,对同一链轮进行测试,结果显示于“显示窗口”。2.2.2 链轮内径测量测量算法由图像获取、图像去噪、图像增强和直径测量四部分组成。图像获取 双边滤波 邻域的邻近性 分离成分 小波变换 直径测量 像素灰度的邻近性 增强分量 图 5 测量程序流程框图图像获取:LabVIEW 通过 USB3 Vision 协议,与相机进行通讯获取图像数据。图像去噪:本系统使用双边滤波,即使用特定模板对图像进行卷积。根据公式(1),该模板中,临近权值接近 1,对卷积结果起较大作用;边缘权值接近 0,对结果起较小作用。因此对原始图像低频区域进行卷积,可以起到高斯模糊的作用,对原始图像高频区域进行卷积,可以减小边缘像素值对结果的影响,从而可保护图像的细节信息。所以相比与其他算法,使用双边滤波不仅有效抑制噪声,同时有效保留图像大部分细节,保证链轮边缘不确定区域不会拉伸。图像增强:本系统进行 Harr 小波变换。对 M*N 大小的图像,首先进行行分解,在第一行上取每一对的平均值,放前 N/2 处,再将每一对的第一个像素值与该平均值做差,放后 N/2 处。依次对原始图像的每一行进行上述操作;再进行列分解,在第一列上取每一对的平均值,放在前M/2处,再将每一对的第一个像素值与该平均值做差,放后 M/2 处。依次对原始图像的每一列进行上述操作。以此完成了 Harr小波的一次分解。可以按照实际需要,图像进行多次分解。分解后的图像可以得到低频与不同高频分量,对其乘以不同增强系数。处理后再进行小波重构得到增强后的图像。测量直径:采用遍历法,对链轮位置控制中获取的最大值所对应的行值和列值进行平均,计算得直径像素点数,乘以映射系数,求得实际直径。其中映射系数跟相机高度有关,在硬件系统搭建后,对已知标称 n 的链轮的直径进行像素点计数,计数值为 m。则映射系数为 n/m。2.3 实验结果与分析本文对直径标称 2.5cm 链轮进行实验。游标卡尺 10 次测量平均结果为 24.980mm。使用传统的多尺度细节