本发明涉及机器视觉和机器学习领域,具体涉及基于机器视觉喝机器学习的双工位载带检测系统。
背景技术:
载带是指一种应用于电子等包装领域的带状产品,它具有特定的厚度,在其长度方向上等距的分布着用于承放电子元器件等的孔穴(口袋)和用于进行索引定位的定位孔。由于载带制造要经过冲压、打孔和切割等工艺,中间过程会造成载带质量问题。因此,载带在出厂前必须对载带尺寸和载带表面进行检测。基于机器视觉和图像处理技术的在线检测方法由于其非接触性、快速性、自动化程度高等特点已经被运用到载带检测领域,但是市面上普遍为单工位系统检测效率较低,而且系统没有识别功能,当发现缺陷时亮起警报装置提醒工人确认载带是否存在问题。但是人工操作可能会带来二次缺陷,并且人为主观因素影响大。
技术实现要素:
本发明为提高载带检测系统效率和精度并解决人工操作带来的问题,提出了一种基于机器视觉和机器学习的双工位载带检测系统。本发明通过设计系统结构、系统硬件和算法软件达到了上述目的。具体设计步骤如下:
1、该检测系统包括光源、相机、控制系统、机械结构和软件算法五部分,其特征是硬件包括相机1、相机2、上光源1、上光源2、轨道1、轨道2、传感器1、传感器2、电机1、电机2、下光源1、下光源2、底座平台、报警灯、光源控制器、空气开关、工控机、显示器、继电器和主控板。
2、该系统分为两个检测工位。工位1:轨道1左边四分之一处安装传感器1右边末端安装电机1,在轨道1中间切割一部分,切割长度是2-7个载带空穴宽度,切割宽度是载带空穴长度2-3倍,轨道1切割位置正下方底座平台也切割一个孔,平台孔大小应大于轨道1的孔,下光源1位于该底座平台孔正下方,相机1和上光源1通过支架固定在轨道1孔正上方,垂直方向从上至下顺序为相机1、上光源1、轨道1孔、底座平台孔和下光源1;
工位2:轨道2左边四分之一处安装传感器2右边末端安装电机2,在轨道2中间切割一部分,切割长度是2-7个载带空穴宽度,切割宽度是载带空穴长度2-3倍,轨道2切割位置正下方底座平台也切割一个孔,底座平台孔大小应大于轨道2的孔,下光源2位于该底座平台孔正下方,相机2和上光源2通过支架固定在轨道2孔正上方,垂直方向从上至下顺序为相机2、上光源2、轨道2孔、底座平台孔和下光源2。
3、该系统的控制部分:主控板1是整个控制系统的核心,包括接收传感器信号控制相机拍照、光源频闪,接收指令数据控制停机、转发报警灯控制信号,主控板2是从机板,主要是接收报警灯信号控制报警灯闪烁。
工位1上传感器1收到一个中断信号后将反馈给主控板1,主控板1按照对应的信号触发相机1和上光源1,这时候工控机端的检测软件会收到一张图像并进行算法处理,如果检测到有缺陷需要停机,工控机端的检测软件将通过串口发送停机信号到主控板1,主控板1控制继电器停机断开工位1的电机1电源,同时主控板1收到的报警信号将通过485通讯方式转发到主控板2上,通过主控板2控制报警灯闪烁。
工位2上传感器2收到一个中断信号后将反馈给主控板1,主控板1按照对应的信号触发相机2和上光源2,这时候工控机端的检测软件会收到一张图像并进行算法处理,如果检测到有缺陷需要停机,工控机端的检测软件将通过串口发送停机信号到主控板1,主控板1控制继电器停机断开工位2的电机2电源,同时主控板1收到的报警信号将通过485通讯方式转发到主控板2上,通过主控板2控制报警灯闪烁。
4、该系统的供电部分:整个柜子外接220V交流电供电,经过内部的空气开关给开关电源供电,产生24V直流电供给主控板1、主控板2和光源控制器使用,空气开关主要作用是保护内部器件,当盒子内部出现电流过大时,空气开关会自动跳闸断电,光源控制器主要控制四个光源,两个背光源(常亮)、两个红光同轴光源(频闪),上光源为大功率同轴红光,同轴光源运用特殊抑制反光的半透镜消除图像中的重影,对载带实现均匀无反光的照射,下光源为白色面光源,背光源调节至合适的亮度使得除载带外其他区域在图像上灰度值都为255,相机和镜头装配调节后视场、景深和清晰度满足各种规格型号的载带检测要求。
5、该系统的触发装置由反射式光电传感器和放大器组成,根据不同规格的载带在放大器上设定相应的数值,使得每移动一个载带孔穴距离则传感器发送一个信号到主控板1上。
6、该系统的载带检测分为载带的尺寸检测和载带的缺陷检测,检测方式是把标准合格载带样本图像作为训练集,从这些标准合格载带样本图像中获取检测区域图像的特征量信息(如孔大小,载带宽度,各小矩形检测区域内灰度值和梯度值等)作为在线检测时的比较标准,如果被测图像上某个特征量不在允许误差范围内则认为该位置区域存在问题,当被校验的载带与模板设定的值不相同时则停机报警,并利用支持向量机方法识别出被校验图像存在何种缺陷。
7、图像预处理包括中值滤波和最大类间方差法二值化,通过计算载带图像上中孔、边孔和载带上下边缘三者之间相对位置来检测载带尺寸是否符合标准,其中运用了轮廓提取和最小二乘圆拟合算法;载带表面缺陷通过计算载带图像灰度值和梯度值来确定,首先将载带图像划分成一个个小矩形区域,然后对各个小矩形区域分别独立地检测灰度值和梯度值,假设某个小矩形区域内灰度值变化区间为[gm,gn],小矩形内任意一个像素点灰度值为ga,则判断像素点Pg灰度值好坏公式为:
坏像素点个数为允许小矩形内坏像素点个数为N1,则当时说明出现缺陷;载带表面梯度值计算则是采用3×3领域内计算梯度幅值,分别计算X方向的偏导数Px(x,y)、Y方向偏导数Py(x,y)、45°方向偏导数P45(x,y)和135°方向偏导数,则水平方向和垂直方向的差分分别为:
fx(x,y)=Px(x,y)+[P45(x,y)+P135(x,y)]/2 (2)
fy(x,y)=Py(x,y)+[P45(x,y)-P135(x,y)]/2 (3)
则梯度幅值为:
小矩形区域内梯度幅值设定为M,小矩形内任意一个像素点梯度值为Ma,允许小矩形内个数为N2,则判断像素点Pm梯度值好坏公式为:
当则当时说明出现缺陷。
8、支持向量机方法步骤包括:缺陷的特征提取、支持向量机分类器的训练和支持向量机分类器的识别。
本发明的一种基于机器视觉和机器学习的双工位载带检测系统有益效果:
(1)可实现对目前市面上大部分规格的载带尺寸和缺陷检测,整个系统自动化程度高,双工位设计提高检测效率,并且检测精度高。
(2)该系统利用机器学习的方法对缺陷进行了识别,减少了人工操作带来的影响。
附图说明
图1是本发明的检测台子机构图
图2是本发明的供电原理图
图3是本发明的控制部分原理图
图4是本发明的算法流程图
图5是本发明的设置检测参数划分小矩形区域图
图6是本发明检测到载带缺陷显示结果图
图1中,1、相机1,2、上光源1,3、传感器1,4、下光源1,5、传感器2,6、相机2,7、上光源2,8、电机1,9、电机2,10、下光源2,11、轨道1,12、轨道2,13、底座平台
具体实施方式
如图1所示搭建系统检测台子,考虑到载带材质易反光等特点,选择型号为VLT3-GL50-R的同轴光源,同轴光源运用特殊抑制反光的半透镜消除图像中的重影,对载带实现均匀无反光的照射。为减小背景环境对检测的影响,选择型号为TBL-75-75的LED面光源作为背光源,背光源调节至合适的亮度使得除载带待检测区域外其他区域在图像上灰度值都为255。
CCD相机种类繁多,主要参数有分辨率、帧率、外触发设置等。本检测系统要求适用于宽度为8mm-16mm,不同规格的载带检测,检测精度要求0.05mm×0.05mm。本实施例选取的大华相机型号为A5201MG50的数字相机就能满足本系统检测要求。
本实施例选择的传感器是反射式光电传感器,型号为FU-38V,然后接上一个放大器,型号为FS-V11。将光电传感器安装在适当位置,并设定放大器上数值,每经过一个载带孔穴时传感器发送一个信号到主控板。
按如图2所示搭建好系统供电部分,按如图3所示搭建好系统控制部分。
载带的检测包括载带尺寸检测和载带缺陷检测。因为载带表面不是均匀平面,所以需要用小矩形将载带表面划分成不同的区域。为了尺寸检测和缺陷检测的准确性,本文把标准合格载带样本图像作为训练集。从这些标准合格载带样本图像中获取检测区域图像的特征量信息(如孔大小,载带宽度,各检测区域内灰度值和梯度值等)作为在线检测时的比较标准。如果被测图像上某个特征量不在允许误差范围内则认为该位置区域存在问题。载带缺陷一般有穿孔、污渍、折痕、杂质、划痕和变形等。
如图4所示为本发明算法流程图。数字图像的噪声主要来源于图像的获取和传输过程。本系统整个图像采集过程中,相机、镜头和光源等基本能够保持稳定的工作状态,因此图像的噪声主要来源于脉冲噪声。本实施例选择中值滤波的图像去噪方法。中值滤波是一种非线性信号处理方法,采用一个有奇数点的滑动窗口,将窗口中心点的值用窗口内各个点的中值代替。
在尺寸检测过程中为突出载带区域,便于检测和识别,需要对载带图像进行二值化处理。这里采用最大类间方差法来自动产生阈值。该方法具有简单、处理速度快的优点,其基本思想是:假设图像像素数为N,灰度变化范围为[0,L],对应灰度级i的像素数为Ni几率为:
以阈值T为基准,把图像的像素按灰度值划分为两类C0和C1,其中C0的灰度值低于T,即在[0,T]之间的像素组成,C1的灰度值高于T,即在[T+1,L]之间的像素组成。考虑到像素灰度的分布几率,整幅图像的均值为:
则C0和C1的均值分别为:
其中:
由上述数学式可得:类间方差的定义为:
最佳阈值Th为:
首先对采集图像进行图像预处理,滤除噪声干扰。尺寸检测通过二值化图像找到载带的上下边界,然后通过最小二乘法检测圆,确定边孔和中孔位置,最后通过检测孔的大小、孔之间和孔与边界之间的距离的变化量与所设阈值的比较来判断载带尺寸是否符合标准,对于不符合尺寸标准的载带直接做停机报警处理。
本实施例利用轮廓提取和最小二乘圆拟合算法准确地找到载带上圆孔位置。轮廓是一系列相连的点,轮廓提取基于二值图像然后提取边缘点连接的层次结构。组织层次使得位于数结构更高的轮廓更有可能是物体的轮廓,然而低位的轮廓更有可能是噪声边缘或者是“洞口”的轮廓甚至是噪声块。
当通过上述方式得到的边缘点后,采用最小二乘法拟合得到的圆方程,即可求出精确的圆心和半径等参数。设半径为r,圆心坐标为(x0,y0),则圆方程为:
(x-x0)2+(y-y0)2=r2 (7)
由式(7)定义误差方程为:
根据最小二乘法拟合原理有:
将式(8)带入式(9),并且设Z=x02+y02-r2,可得:
由式(10)可得到圆心坐标(x0,y0)以及圆半径r0。
缺陷检测不需要进行图像二值化,首先将载带图像划分成一个个小矩形区域,然后对各个小矩形区域分别独立的检测灰度值和梯度值,如果被检测区域内的这些值超出允许范围,则认为该区域存在缺陷做停机报警处理。如图5所示本实施例用小矩形将待检测区域划分成多个小区域,可以提高计算速度,同时也可以减小误检和漏检。
当光源相机等参数确定后,则获取的载带图像每个区域上的灰度值将会在某一区间内变化。假设某个小矩形区域内灰度值变化区间为[gm,gn],小矩形内任意一个像素点灰度值为ga,则判断像素点Pg灰度值好坏公式为:
坏像素点个数为允许小矩形内坏像素点个数为N1,则当时说明出现缺陷。
载带表面梯度值计算则是采用3×3领域内计算梯度幅值,首先计算4个方向的偏导数:
X方向的偏导数
Px(x,y)=G(x,y+1)-G(x,y-1) (12)
Y方向偏导数
Py(x,y)=G(x+1,y)-G(x-1,y) (13)
45°方向偏导数
P45(x,y)=G(x-1,y+1)-G(x+1,y-1) (14)
135°方向偏导数
P135(x,y)=G(x+1,y+1)-G(x-1,y-1) (15)
则水平方向的差分为
fx(x,y)=Px(x,y)+[P45(x,y)+P135(x,y)]/2 (16)
垂直方向的差分为
fy(x,y)=Px(x,y)+[P45(x,y)-P135(x,y)]/2 (17)
求得梯度幅值为
小矩形区域内梯度幅值设定为M,小矩形内任意一个像素点梯度值为Ma,允许小矩形内个数为N2,则判断像素点Pm梯度值好坏公式为:
当则当时说明出现缺陷。
最后提取缺陷图像上的缺陷的灰度值和梯度值特征,之后通过Bagging(Bootstrap Aggregating)算法实现对训练样本的扰动,从而产生具有差异性的基分类器,再进行基分类器的集成学习,训练好的支持向量机分类器就可以用于识别在线检测时获取的缺陷图像。
打开检测台子电源,启动检测软件,轨道放上待检测载带,导入该规格载带设置的参数,点击启动电机则开始检测载带,如果载带某区域存在缺陷则软件自动控制电机停止转动发出警报,如图6所示显示缺陷区域并提示该区域存在何种缺陷。