龙空技术网

齿轮视觉测量系统该如何设计?其标准又该如何测定?

娱情娱理 125

前言:

而今各位老铁们对“grabcut算法matlab”大概比较关心,你们都需要剖析一些“grabcut算法matlab”的相关知识。那么小编同时在网络上搜集了一些对于“grabcut算法matlab””的相关资讯,希望朋友们能喜欢,我们快快来了解一下吧!

文|小姜胡侃

编辑|小姜胡侃

引言

本文设计和开发了整个齿轮参数测量系统,同时对参数检测系统进行了标定,设计某个系统或者结构通常需遵守高效率、经济性的原则。

主要任务分为以下几个部分:构建整个视觉测量平台,对相关基础部件进行挑选和分析,为齿轮参数检测系统选择标定方法,设计开发齿轮检测软件系统。

系统的硬件结构

本文中采用标准的视觉平台作为检测齿轮的测量平台,系统的硬件由工控机、显示器、摄像头、光学镜头、光源等构成,系统总体结构如下图所示

齿轮检测平台结构见下图,左边的工控机和显示器起到计算机的功能,用于处理相机拍摄后的图片以及负责之后图像处理工作。

右边的则是支架和载物台,载物台光滑平整用于放置检测齿轮和光源,相机以及镜头安装固定在支架,支架可以实现左右移动和上下调整,方便齿轮的拍摄及焦距的调节,使拍摄的图像清晰完美。

此外的部件还有光源控制器,它的作用是控制光源的模式以及亮度,以此来获得完美的图像。

模块包括:工业相机、光学镜头和光源,其功能是采集被测物体的图像。在合适的光源条件里,被测物体经CMOS相机拍摄后得到相应的图像,最后把图像存储在目标计算机中。

一、工业相机

它是采集图像的重要部件之一,目前主要的成像器件包括CMOS和CCD,其功能是把光信号转化成电信号,再经过信号传输和存储来获取图像的各种信息。

CMOS的输出为数字信号,CCD的输出为模拟信号,挑选合适的图像传感器必须按照详细的应用要求以及需要的工作参数来决定。

在机器视觉检测系统中,CMOS摄像机相比于CCD的成本和功耗要更低,因此在摄像头领域有着更加广泛的应用。

本文采用SMD公司的BPOE500C型千兆网口CMOS相机,它采用的是千兆网口的输出接口,和以太网卡搭配使用来完成图像传输,把采集到的齿轮图像经过处理后保存到目标计算机中,此相机的主要参数如下表所示

二、镜头选择

镜头在机器视觉系统里是非常重要的部件,它往往和相机一起组合使用,对整个成像过程以及图像的质量有着很大的影响。

工业里挑选光学透镜需要综合考虑以下因素:相机的支座接口形式、传感器尺寸(镜头的尺寸必须大于相机的尺寸)以及待测物体的尺寸。

镜头的相关参数以及各种类型可在文献中找到,下图展示了为系统选择的CMOS摄像机和镜头。

若想挑选与相机合适的镜头,则要考虑它的畸形变化和视野范围。本文根据之前CMOS相机种类选择与之匹配的C2514-5M型定焦镜头,下表为该镜头的基础技术参数介绍。

三、系统光源和照明模式

使用机器视觉来进行非接触测量时,挑选合适的光源和照明模式对整个系统来说尤为重要。

它们作用不单单是为了照亮目标对象,把光源和照明方式进行合适的搭配,能把目标对象的表面特征完美地表现出来。

1.光源的选择

挑选光源时需要考虑的技术指标有发光效率、光源亮度、光照均匀性、光谱特征和对比度等。本文综合以上因素以及整个齿轮测量系统的需要,挑选了型号TR30035的LED光源,见下图。

2.照明方式的选择

机器视觉系统中有着三种常用的光源,分别是背光源、前光源、环形光源。前光源的照明方式是把光源放置在目标对象的前方,见下图。

这种方法优点是能够使目标对象表面特征更加明显突出,并且方便组装。背光源的照明方式是光源放置在目标对象的背面,见下图,背光照射的优点在于它能够让目标对象的轮廓信息充分显示出来。

由于本测量系统主要目的是为了测量齿轮的各种相关参数,因此对齿轮表面图像轮廓的清晰程度有着很高的要求,再考虑到容易组装的原因,故本文采用的照明方式为前光照明,同时和光源控制器一起使用组成整个照明系统。

3.千兆以太网卡

千兆网口的工业相机不需要配置图像采集卡,但为了方便把采集的图像进行存储以及处理,所以本文选择千兆网卡。

图像采用千兆以太网进行传输有利于之后的进一步处理分析,千兆以太网拥有以下众多的优点:抗干扰能力强、传输带宽高、传输距离长、综合性价比高等。

整个系统的测量过程如下:先连接好CMOS相机和匹配的镜头,把它们都固定在支架上,之后连接好工控机和显示器。

把它们和相机镜头相接,在载物台上放好标准量块,调整好镜头位置和角度,同时把光源放置在量块前端,接通光源控制器,设置好光源的参数以达到最好的亮度。

然后进行测量系统的标定,标定方法的选择与过程见下文,系统标定完之后,把量块换成待检测齿轮,调整齿轮位置确保在镜头视野范围内,保持整个系统不变。

之后在相同的视觉测量模型下对齿轮参数进行测量,拍摄好齿轮图像后利用之前所介绍的图像处理技术和参数测量方法求出目标参数,最后把处理的图像以及数据保存下来。

测量系统的标定

由于齿轮的实际尺寸与图像的尺寸并不一样,为了获得齿轮参数的正确尺寸,则需要对整个测量系统进行标定。工业相机标定方法有两种:传统标定法和自标定法。

自标定法无需参照对象,它的原理是以周围环境的图像和图像之间的相互关系来进行标定,该方法虽然有很高的灵活性和可变性,但是整个标定的流程比较繁琐,不适用于各种实时检测的项目。

传统的标定方法则是在系统相机模型下对已知尺寸的标定块进行采集与处理、计算和分析等操作,之后求出像素等效值也就是整个测量系统的增益系数。

并且实现从像素到物理之间坐标系的转换,该方法往往被用在对精度要求高且相机参数不经常变化的应用场合。

本文中测量齿轮的各种参数时,对测量结果的精度有较高的要求,而且相机和齿轮的相对位置在测量过程中是保持相对固定的,因此本文综合以上条件选择了传统标定法。

标定时把已知尺寸的标准量块作为参考对象,对采集到的量块图像进行滤波去噪以及边缘检测处理,之后对其进行Hough变换操作求出量块两边直线之间的距离从而得到像素值,再通过下图公式得到测量系统的增益系数。

系统软件的设计

软件是整个齿轮参数测量系统里的核心部分,所有的图像处理工作都需要它来完成。

它应具备合理、高效、简洁的特点,才能保证整个检测过程快速且稳定

总的来说,软件测量的过程是采集图像进行保存,再使用一系列的图像处理技术以及各种算法,对采集的齿轮图像进行相应的处理从而获得测量结果,或按照需求把采集的图像传输到后面的部分。

本文的软件系统主要基于OpenCV2.4.4图像处理软件和Visualstudio2010两部分。

使用OpenCV图像处理的有关算法能够让齿轮测量系统的开发更加简单、高效,下面将对图像处理算法库OpenCV进行详细的说明。

一、软件开发工具介绍

OpenCV在图像处理领域里是一种非常优秀且受欢迎的开源图像算法库,它主要由五个模块组成:CxCore、CvAux、HighGUI、Cv、Ml,由Intel在1999年建立。

它能够在Windows、Linux以及MacOS操作系统上使用,拥有免费(开放源代码)、跨平台、扩展性好、使用方便、速度快等众多的优点。

OpenCV能够调用到各种编程软件中,比如:Python、Ruby、JAVA、MATLAB以及少部分C++类和C语言等函数,因此实现了机器视觉和计算机视觉领域内的很多常用算法。下面将对OpenCV库的五个模块进行简单说明:

1.CxCore

它是OpenCV的线性代数库,主要包括一部分算法函数和基本结构,功能是对各种类型的数据进行基本运算。

2.CvAux

它是OpenCV的辅助类函数库,同时也是附加库函数,它的主要内容包括PCA、三维跟踪、ViewMorphing、HMM等实验性的函数。

3.HighGUI

它是OpenCV的GUI函数库,主要负责与用户交互。

4.Cv

它是OpenCV的核心函数库,同时也是最重要的函数库,大部分的图像处理与机器视觉任务都由它来完成,它的内容主要包括模式识别、图像处理、物体检测及工业相机标定等函数。

5.Ml

它是OpenCV的机器学习函数库,属于机器学习模块,分类器是它的主要内容。

二、软件总体结构

本文中齿轮参数检测系统使用面向对象的程序设计,综合OpenCV图像处理算法库,利用VS2010来对齿轮检测系统进行可视化编程。

为了让整个软件系统的结构完整且直观,还要方便维护以及扩展,因此本文对整个系统使用模块化设计。

软件系统主要包括以下四个模块部分:图像处理、图像采集、齿轮参数测量和系统标定。

其中图像处理和参数测量是整个齿轮参数测量软件系统的重点内容。齿轮检测系统的模块设计见下图。

1.软件各模块设计

(1)图像采集模块

此模块的工作内容主要是设置相机参数以及采集视频。设置相机参数要综合考虑它的帧频率和曝光量,之后采集和捕获视频图像需要调用VFW库中的AVICap函数,为后面的图像处理模块和系统标定以及测量参数打好基础,整个详细流程如下图所示。

(2)图像处理模块

本模块的工作内容主要是使用图像处理技术对采集的齿轮图像进行相应的处理,以此来获得齿轮的参数以及各种特征信息。其中涉及到的图像处理技术分为以下几种:图像填充、中值滤波、掩模处理、腐蚀、hough变换、连通域分析、边缘和角点检测等。

整个处理的过程为:先对齿轮进行图像采集,然后利用中值滤波去除图像中混杂的噪声,再采用Hough变换圆检测算法求得齿轮中心的像素坐标,最后采用相关技术提取齿轮轮廓边缘从而测量齿数,这些相关技术包括腐蚀、图像填充、连通区域分析和掩模处理等

(3)系统校准模块

此模块负责整个齿轮参数测量系统的标定,标定方法在上文已详细介绍,本文选择传统标定方法,此部分主要是对已知参数的标准量块进行一系列图像处理。

然后通过计算得到整个测量系统的增益系数β为之后齿轮的各项参数测量打好基础。系统标定整个流程如上图所示。

标定过程所涉及到的算法分为四个函数,cvGrabFrame函数负责图像采集得到量块的图像,图像滤波则使用cvSmooth函数去除图像噪声,之后的边缘检测部分采用cvCanny函数获得量块的轮廓。

再采用cvHoughLine函数得到量块两直线间的距离,最后通过计算获得增益系数β,整个系统标定过程的算法函数图见下图。

(4)参数测量模块

本模块的工作内容是对处理后的齿轮图像提取参数有关的特征信息,需要测量的参数有齿轮的几何参数和单项误差,由于这两种参数的不同因此相应的算法也会有所不同。齿根圆半径、齿顶圆半径、模数的测量过程设计如下图所示。

首先用cvGrabFrame函数拍摄得到齿轮的图像,后用cvSmooth函数对齿轮图像进行中值滤波。

为了获得齿轮的轮廓则使用cvCanny函数,然后用函数cvHoughCircles进行霍夫变换圆检测定位齿轮的中心。

最后通过圆心则可计算出齿顶圆半径与齿根圆半径,根据这两个半径的值便可以求出齿轮的模数。测量的算法函数如下图所示。

它所用到的测量算法与齿顶圆半径的测量算法相差无几,cvAnd(mask)函数是用于齿轮图像掩模处理。

cvFindContours函数和cvDrawContours函数负责齿轮图像填充以及轮廓的提取,包括之后的连通区域计算,整个齿数测量过程的算法函数和齿数的测量流程图如下图所示。

它的测量算法和之前参数的区别在于,先用测得的模数和齿数求出分度圆的半径,在完成齿轮中心定位后使用cvCircle函数以此半径作分度圆。

之后使用cornerHarris函数对齿轮图像进行角点检测,再依次检测齿轮的各种单项误差的,齿轮单项误差的测量算法函数和齿轮的单项误差测量如下图所见。

在整个测量齿轮的过程中,先用CMOS摄像头采集齿轮图像,然后利用图像处理技术对该图像进行处理,再使用对应的测量程序测得齿轮参数在图像坐标系里的测量值。

最后经过系统标定后便可求得齿轮的实际参数值,齿轮检测软件系统的整体流程见下图。

齿轮参数检测系统的软件总体界面如下图所示测量齿轮参数时先拍摄标定量块点击系统标定求出增益系数,再把量块换成齿轮点击图像采集拍摄齿轮图像。

获取齿轮图像之后点击参数测量便可得到齿轮参数的测量值,该齿轮参数测量系统达到了齿轮快速检测的要求,同时也很好地实现了齿轮参数的实时检测。

笔者观点

本文设计和开发的齿轮参数测量系统基于标准的视觉平台和先进的图像处理技术,实现了齿轮参数的高效、准确测量。

系统的硬件结构合理,选择的CMOS相机和镜头具有较低的成本和功耗,适用于机器视觉检测系统。通过传统标定法对系统进行标定,确保了测量结果的精度和可靠性。

系统软件采用开源图像处理算法库OpenCV,结合自主设计的算法,实现了图像处理和参数测量的功能。整个系统操作简单、稳定,能够满足齿轮快速检测的需求

该系统在齿轮制造和质量控制领域具有广泛的应用前景,为齿轮相关行业提供了一种高效、经济的参数测量解决方案。

参考文献

[1]张海鹏,陈洪武,田铖,李洪亮.基于MATLAB图像处理的齿轮零件测量技术[J].信息技术,2015。

[2]赵建.齿轮测量中心关键技术的研发与应用[J].世界制造技术与装备市场,2018。

[3]石照耀,张白,林家春,魏华亮,陈显民.特大型齿轮激光跟踪在位测量原理及关键技术[J].光学精密工程,2013。

[4]邰承岳,袁鹏哲,钟晨,刘璞,张烈山.基于机器视觉的圆柱直齿轮齿距偏差检测技术研究[J].计算机测量与控制,2021。

[5]杨云涛,关贞珍.基于机器视觉检测技术的齿轮几何参数自动测量系统[J].计量与测试技术,2020。

标签: #grabcut算法matlab