基于机器视觉的螺母缺陷检测方法及装置与流程

文档序号:14724850发布日期:2018-06-19 04:50阅读:501来源:国知局

本发明涉及零件缺陷检测领域,具体涉及一种基于机器视觉的螺母缺陷检测方法及装置。



背景技术:

螺母是一种将机械设备紧密连接起来的基础零件,目前已被广泛用于汽车制造、建筑、机械、轨道交通、公用设施、铸造业等多个领域。由于材质、规格、技术要求等的不同,市面上螺母产品的种类繁多。受生产流程复杂多变,设备运行维护状况不一,以及人工设置操作不当的影响,自动化流水线生产的螺母存在一定比例的残次品。典型缺陷有:

1)螺母内径过大或者过小,导致螺母与螺栓或螺杆无法拧在一起或是拧在一起后咬合力达不到相应标准。由于缺陷难以通过简单返工解决,这类螺母一般被当作废品处理;

2)工艺缺失,典型例子有未开内螺纹、未开上槽等,这类缺陷主要是由于生产加工时漏掉了特定加工步骤导致。缺陷明确后,可通过补充执行所漏过的加工步骤让螺母成为合格品解决,因此这类螺母通常被当作次品处理;

3)上槽开反,螺母在生产流水线上未正确放置,例如底部朝上,导致后续加工时理应在螺母某一面实施的开槽工艺被错误实施在其它面,整个螺母也因此成为废品。

虽然螺母生产企业通过工艺和流程优化、精细化管理等手段,已经将上述残次品螺母的比例控制在一个较低的值,但从保障产品质量的角度来看,螺母质量检测仍然是必不可少的环节。螺母质量检测旨在通过质检步骤发现并剔除存在缺陷螺母,使其不流入终端市场。传统的螺母质检主要由人工完成,工人通过专业量尺测量内径、肉眼观察等方式,确定螺母是否存在缺陷。然而,螺母生产具有单品价值低,数量基数大的特点,通过人工实现全面的螺母质检是不现实的。目前螺母生产企业通常采用的都是人工抽检的质检形式,这种形式可以发现大批量连续的螺母质量问题,对于偶发性的质量问题则起不到明显作用,而后者在实践生产中并不少见。螺母行业急需可以对螺母进行全面准确质量检测的方法及分拣装置。



技术实现要素:

为了解决现有技术中的上述问题,本发明提出了一种基于机器视觉的螺母缺陷检测方法及装置,极大地提高了检测螺母缺陷的效率,同时保证了检测准确度。

本发明的一方面,提出一种基于机器视觉的螺母缺陷检测方法,包括以下步骤:

分别获取待检测螺母的俯视图像、侧视图像和斜视图像;

对所述俯视图像进行二值化处理;提取二值化后的所述俯视图像的特征参数,并将提取到的所述俯视图像的特征参数与预设的俯视图像特征参数进行比较,判断待检测螺母是否存在缺陷;

对所述侧视图像进行二值化处理;提取二值化后的所述侧视图像的特征参数,并将提取到的所述侧视图像的特征参数与预设的侧视图像特征参数进行比较,判断待检测螺母是否存在缺陷;

对所述斜视图像进行二值化处理;提取二值化后的所述斜视图像的特征参数,并将提取到的所述斜视图像的特征参数与预设的斜视图像特征参数进行比较,判断待检测螺母是否存在缺陷;

所述俯视图像、所述侧视图像和所述斜视图像,为当螺母水平放置时,分别从螺母的正上方、侧面和斜上方所拍摄的图像。

优选地,“对所述俯视图像进行二值化处理”,包括:

将所述俯视图像转化为灰度图像,通过高斯滤波消除灰度化后的噪点;

通过自适应二值化操作将降噪后的所述俯视图像转化为二值图像;

对二值图像进行闭运算,排除图像中的噪声。

优选地,“对所述侧视图像进行二值化处理”,包括:

对所述侧视图像进行灰度化和直方图均衡化,增强所述侧视图像的对比度;通过高斯滤波消除灰度化后的噪点;

通过OTSU自适应阈值法(OTSU算法是由日本学者OTSU于1979年提出的一种对图像进行二值化的高效算法)对图像进行二值化,前景为图像中的低灰度值区域;

对二值图像进行闭运算,排除图像中的噪声。

优选地,“对所述斜视图像进行二值化处理”,包括:

对所述斜视图像进行灰度化和直方图均衡化,增强所述斜视图像的对比度;通过高斯滤波消除灰度化后的噪点;

通过OTSU自适应阈值法对图像进行二值化,前景为图像中的高灰度值区域;

对二值图像进行闭运算,排除图像中的噪声。

优选地,所述预设的俯视图像特征参数,包括:预设的螺母内圆最大半径值和预设的螺母内圆最小半径值;

“提取二值化后的所述俯视图像的特征参数,并将提取到的所述俯视图像的特征参数与预设的俯视图像特征参数进行比较,判断待检测螺母是否存在缺陷”,包括:

根据二值化后的所述俯视图像,提取该图像中螺母内圆的半径值;

将提取的该图像中所述螺母内圆的半径值,分别与预设的螺母内圆最大半径值和预设的螺母内圆最小半径值进行比较,判断待检测螺母是否存在内径过大或过小的缺陷。

优选地,“根据二值化后的所述俯视图像,提取该图像中螺母内圆的半径值”,包括:

根据二值化后的所述俯视图像,找到预设个数的位于螺母内圆上的点;

基于圆上任意两点的垂直平分线过圆心的性质,求出两条垂直平分线的交点,作为圆心候选点;重复执行,得到预设数量的所述圆心候选点;

丢弃离群的所述圆心候选点,求出剩余的所述圆心候选点的位置平均值,作为检测到的圆心坐标;

根据所述检测到的圆心坐标,以及找到的所述预设个数的位于螺母内圆上的点,分别计算所述检测到的圆心坐标与找到的螺母内圆上各点之间的距离,并求出所述距离的平均值,作为提取到的所述螺母内圆的半径值。

优选地,所述预设的侧视图像特征参数,包括:预设的图像左边缘区域、预设的图像右边缘区域、预设的左右边界距离与图像宽度之比;

“提取二值化后的所述侧视图像的特征参数,并将提取到的所述侧视图像的特征参数与预设的侧视图像特征参数进行比较,判断待检测螺母是否存在缺陷”,包括:

根据二值化后的所述侧视图像,确定螺母在图像中的位置;

判断待检测螺母是否存在与其他螺母搭接的情况;

其中,所述判断待检测螺母是否存在与其他螺母搭接的情况,具体为:

分别提取左、右边界在图像中的位置,并根据预设的图像左边缘区域和预设的图像右边缘区域,分别判断左边界是否位于所述预设的图像左边缘区域,右边界是否位于所述预设的图像右边缘区域;

若左边界位于所述预设的图像左边缘区域或右边界位于所述预设的图像右边缘区域,则计算左右边界之间的距离与图像宽度的比值,并判断所述比值是否大于预设的左右边界距离与图像宽度之比;若是,则认为待检测螺母存在与其他螺母搭接的情况。

优选地,“根据二值化后的所述侧视图像,确定螺母在图像中的位置”,包括:

统计二值化后的所述侧视图像中每一行的前景像素点个数,得到行投影向量;

统计二值化后的所述侧视图像中每一列的前景像素点个数,得到列投影向量;

分别查找所述行投影向量中像素值跃变位置、所述列投影向量中像素值跃变位置,进而确定待检测螺母在图像中的具体位置。

优选地,所述预设的斜视图像特征参数,包括:预设的白色像素占比第三阈值;

“提取二值化后的所述斜视图像的特征参数,并将提取到的所述斜视图像的特征参数与预设的斜视图像特征参数进行比较,判断待检测螺母是否存在缺陷”,包括:

根据二值化后的所述斜视图像,计算内螺纹所在图像区域中白色像素的占比;

若所述内螺纹所在图像区域中白色像素的占比小于所述预设的白色像素占比第三阈值,则认为待检测螺母未开内螺纹。

优选地,“根据二值化后的所述斜视图像,计算所述内螺纹所在图像区域中白色像素的占比”,包括:

根据二值化后的所述斜视图像,确定螺母在图像中的位置;

根据螺母在图像中的位置,以及预设的内螺纹在螺母中的相对位置,截取内螺纹所在图像区域;

对截取的所述内螺纹所在图像区域进行闭运算,消除噪声点;

分别计算所述内螺纹所在图像区域中像素总个数和白色像素的个数,进而计算所述白色像素的个数与所述像素总个数之间的比值,得到所述内螺纹所在图像区域中白色像素的占比。

优选地,“根据二值化后的所述斜视图像,确定螺母在图像中的位置”,包括:统计二值化后的所述斜视图像中每一行的前景像素点个数,得到行投影向量;统计二值化后的所述斜视图像中每一列的前景像素点个数,得到列投影向量;

分别查找所述行投影向量中像素值跃变位置、所述列投影向量中像素值跃变位置,进而确定待检测螺母在图像中的具体位置。

优选地,若合格螺母底端的内径大于顶端的内径,且顶端开有多个上槽,则所述预设的俯视图像特征参数,还包括:预设的半径差阈值,以及预设的半径增量l1、l2,且l2<l1;

在“判断待检测螺母是否存在内径过大或过小的缺陷”之后,还包括:若待检测螺母存在内径过大的缺陷,则进一步判断待检测螺母是否上下倒置;所述上下倒置,为待检测螺母顶端向下底端向上,水平放置;

其中,所述判断待检测螺母是否上下倒置,具体为:

计算提取到的所述螺母内圆的半径值r与所述预设的螺母内圆半径值之间的差值;

若计算得到的差值大于所述预设的半径差阈值,则在二值化后的所述俯视图像上取一个半径值在[r,r+l1]范围内的环形区域,令所述环形区域包括整个螺母的像素点;

对所述环形区域进行连通域分析,若至少存在一个前景连通域,且该前景连通域同时满足下述两个条件:

该前景连通域中的像素点在螺母的四个象限均有出现;

该前景连通域中所有前景像素点与圆心间的距离都大于r+l2;

则认为该待检测螺母上下倒置,否则为内径过大;

所述螺母的四个象限,指从圆心对图像进行水平和垂直切分得到的左上、右上、左下和右下四块图像区域。

优选地,若合格螺母的周向开有外槽,则所述预设的侧视图像特征参数,还包括:预设的第三截图高度、预设截图宽度、预设的白色像素点数量、预设的外槽数量;

在“判断待检测螺母是否存在与其他螺母搭接的情况”之后,还包括:

若待检测螺母不存在与其他螺母搭接的情况,则判断待检测螺母是否存在外槽数量不符合的缺陷;

其中,所述判断待检测螺母是否存在外槽数量不符合的缺陷,具体为:

根据二值化后的所述侧视图像,提取左、右边界及下边界在图像中的位置;

根据提取的左、右边界及下边界在图像中的位置,在二值化前的所述侧视图像上,以下边界为底,以预设的第三截图高度为高,分别从左边界向右截取预设截图宽度的区域、从右边界向左截取预设截图宽度的区域,得到左边界区域的图像和右边界区域的图像;

分别对截取的两幅图像进行二值化和闭操作;

分别计算该两幅图像中,每个白色像素连通区域中白色像素点的数量;分别判断每个白色像素连通区域中白色像素点的数量是否大于预设的白色像素点数量,若是,则认为该白色像素连通区域为一个外槽;

若该两幅图像中,至少有一幅图像上检测到的外槽数量不等于预设的外槽数量时,则认为待检测螺母存在外槽数量不符合的缺陷。

优选地,若合格螺母的顶端开有多个上槽,则所述预设的侧视图像特征参数,还包括:预设的第一截图高度、预设的白色像素占比第一阈值、预设的白色像素占比第二阈值;

在“判断待检测螺母是否存在外槽数量不符合的缺陷”之后,还包括:

若待检测螺母不存在外槽数量不符合的缺陷,则判断待检测螺母是否存在上槽切削过度的缺陷;

其中,

所述判断待检测螺母是否存在上槽切削过度的缺陷,具体为:

根据二值化后的所述侧视图像,提取螺母的左、右边界及上边界在图像中的位置;

以提取的螺母左、右边界为两个侧边,以上边界为顶边,从上往下截取预设的第一截图高度,得到截取的图像区域;

在截取的图像区域中,分别计算每个白色像素连通区域中白色像素点的数量;分别判断每个白色像素连通区域中白色像素点的数量是否大于预设的白色像素点数量,若是,则认为该白色像素连通区域为一个上槽;进而计算出截取的图像区域中上槽的数量N;

在截取的图像区域中,分别计算该区域中所有像素的总个数和白色像素的总个数,进而计算出白色像素的总个数与所有像素的总个数之比,作为该区域中白色像素的占比P;

若计算出的上槽数量N与白色像素的占比P满足下述条件:

则认为待检测螺母存在上槽切削过度的缺陷;

其中,P1、P2分别为所述预设的白色像素占比第一阈值、所述预设的白色像素占比第二阈值,且P1>P2。

优选地,若合格螺母上开有多个上槽,则所述预设的俯视图像特征参数,包括:预设的螺母内圆最大半径值、预设的螺母内圆最小半径值,以及预设的半径增量l3、l4,且l4<l3;所述预设的侧视图像特征参数,包括:预设的第二截图高度,以及预设的白色像素占比第四阈值;

在“对所述侧视图像进行二值化处理;提取二值化后的所述侧视图像的特征参数,并将提取到的所述侧视图像的特征参数与预设的侧视图像特征参数进行比较,判断待检测螺母是否存在缺陷”之后,还包括:

根据二值化后的所述俯视图像,判断待检测螺母是否存在未开上槽或上槽开反的缺陷;

根据二值化后的所述侧视图像,进一步区分待检螺母是存在未开上槽还是上槽开反的缺陷;

其中,“根据二值化后的所述俯视图像,判断待检测螺母是否存在未开上槽或上槽开反的缺陷”,具体为:

根据二值化后的所述俯视图像,提取该图像中螺母内圆的半径值r;

判断提取到的所述螺母内圆的半径值是否大于所述预设的螺母内圆最小半径值,且小于预设的螺母内圆最大半径值;若是,则在二值化后的所述俯视图像上取一个半径值在[r,r+l3]范围内的环形区域,令所述环形区域包括整个螺母的像素点;

对所述环形区域进行连通域分析,若至少存在一个前景连通域,且该前景连通域同时满足下述两个条件:

该前景连通域中的像素点在螺母的四个象限均有出现;

该前景连通域中所有前景像素点与圆心间的距离都大于r+l4;

则认为该待检测螺母存在未开上槽或上槽开反的缺陷;

所述螺母的四个象限,指从圆心对图像进行水平和垂直切分得到的左上、右上、左下和右下四块图像区域;

“根据二值化后的所述侧视图像,进一步区分待检螺母是存在未开上槽还是上槽开反的缺陷”,具体为:

根据二值化后的所述侧视图像,分别提取螺母的左、右边界及下边界在图像中的位置;

在二值化后的所述侧视图像中,以提取的螺母左、右边界为两个侧边,以下边界为底边,从下往上截取预设的第二截图高度,得到截取的图像区域;

计算所截取的图像区域中像素总个数和白色像素个数,进而计算白色像素个数和像素总个数的比值,得到所截取的图像区域中白色像素的占比;

当所得白色像素的占比大于所述预设的白色像素占比第四阈值时,认为待检测螺母上槽开反,否则认为待检测螺母未开上槽。

本发明的另一方面,提出一种基于机器视觉的螺母缺陷检测装置,包括:传送设备、视觉采集单元、图像检测单元、螺母分类单元;

其中,所述传送设备,用于放置并输送待检测螺母;每个待检测螺母独立且水平放置在所述传送设备上;所述视觉采集单元,包括光电开关,以及分别设置于传送设备的正上方、侧面和斜上方三个相机;

所述光电开关,用于在检测到待检测螺母进入目标区域时,触发所述三个相机同时进行拍照;所述三个相机,分别用于拍摄待检测螺母的俯视图像、侧视图像和斜视图像;所述图像检测单元,用于接收所述三个相机所拍摄的俯视图像、侧视图像和斜视图像,并基于上面所述的基于机器视觉的螺母缺陷检测方法,对待检测螺母进行缺陷检测;所述螺母分类单元,用于根据所述图像检测单元的缺陷检测结果,对待检测螺母进行分类。

优选地,所述螺母分类单元将螺母分为:次品、废品、异常品,以及合格品;

所述次品,包括:未开上槽和未开内螺纹的螺母;所述废品,包括:内径过大或过小、上槽开反,以及上槽切削过度的螺母;所述异常品,包括:上下倒置、外槽数量不符,以及存在搭接问题的螺母;所述合格品为检测结果符合要求的螺母。

优选地,所述螺母缺陷检测装置还包括:白光源;所述白光源,用于将待检测螺母照亮。

优选地,所述螺母分类单元包括:PLC(Programmable Logic Controller,可编程逻辑控制器)、电机、三个机械推手、三个螺母容纳装置;

所述PLC,用于接收所述图像检测单元发来的检测结果,并根据所述检测结果控制电机动作;所述电机,根据所述PLC的指令驱动所述三个机械推手;所述三个螺母容纳装置,分别用于容纳废品、次品和异常品;所述三个机械推手,与所述三个螺母容纳装置一一对应,在所述电机的驱动下将废品、次品或异常品推入对应的螺母容纳装置。

本发明的有益效果:

本发明通过从三个不同的角度拍摄待检测螺母的图像,并进行二值化处理,从二值化处理后的图像中提取待检测螺母的特征参数,与预设的特征参数进行比较,从而筛选出各种缺陷的螺母。比起传统的人工检测,本发明可以快速高效地对所有螺母进行逐一检测,而且分类效果良好,可以极大地提高生产效率,同时显著提高出厂螺母的合格率。

附图说明

图1是本发明实施例中螺母的俯视、斜视和侧视图像,以及典型缺陷和异常品的示例图像;

图2是本发明的基于机器视觉的螺母缺陷检测方法实施例的示意图;

图3是本发明的基于机器视觉的螺母缺陷检测装置实施例的构成示意图;

图4是本发明的基于机器视觉的螺母缺陷检测装置实施例中,拍照时相机和待检测螺母的相对位置示意图。

具体实施方式

下面参照附图来描述本发明的优选实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非旨在限制本发明的保护范围。

除背景技术中提到的螺母内径过大或者过小、工艺缺失和上槽开反等一般性缺陷外,还存在少量其它型号螺母与待检测型号螺母混杂在一起输送到质检环节的情况。此外,对于基于机器视觉技术构建的螺母自动质检装置而言,也存在螺母错误摆放和螺母搭接的情况,前者指螺母在流水线上以底部朝上的形式进入质检设备,后者是多个螺母叠加在一起未被区分开,这两种情况都是由流水线前述环节的螺母打散整理操作不成功所致。由于这三种情况(混入其他型号、错误摆放和搭接)并不对应质量问题,本发明将这三种情况统称为异常品并不加区分的进行分拣,后续可通过再次打散整理后再输送到质检装置进行检测解决。

图1是本发明实施例中螺母的俯视、斜视和侧视图像,以及典型缺陷和错误品的示例图像;其中,(a)俯视图像;(b)斜视图像;(c)侧视图像;(d)上下倒置后的侧视图像;(e)上下倒置后的俯视图像;(f)未开上槽的俯视图像;(g)未开上槽的侧视图像;(h)上槽开反的侧视图像;(i)未开内螺纹的斜视图像;(j)外槽数量不符的侧视图像;(k)上槽切削过度的侧视图像;(l)发生搭接问题的侧视图像。

值得指出的是,虽然不同规格、面向不同应用场景的螺母也可以有自己各自的缺陷种类和判定标准,但它们在图像采集上遵循的大都是类似于本发明的原则:尽可能完整地采集螺母表面的信息。此外,不同类型螺母在缺陷集上存在部分交集,即使是不同的缺陷,检测算法上也或多或少有一定共性。因此本发明即使对其它螺母而言也有较强借鉴意义。

图2是本发明的基于机器视觉的螺母缺陷检测方法示意图。如图2所示,我们通过分析螺母的俯视图像,来检测内径过大或大小,以及上下倒置的缺陷;通过分析螺母的侧视图像来检测上槽切削过度、外槽数量不符和搭接的问题;通过分析斜视图像来检测未开内螺纹的缺陷;通过分析俯视图像先发现螺母未开上槽或上槽开反,再通过分析侧视图像来具体区分这两种情况。

本实施例的螺母缺陷检测方法包括以下步骤:

步骤S1,分别获取待检测螺母的俯视图像、侧视图像和斜视图像;

步骤S2,对俯视图像进行二值化处理;提取二值化后的俯视图像的特征参数,并将提取到的俯视图像的特征参数与预设的俯视图像特征参数进行比较,判断待检测螺母是否存在缺陷;

步骤S3,对侧视图像进行二值化处理;提取二值化后的侧视图像的特征参数,并将提取到的侧视图像的特征参数与预设的侧视图像特征参数进行比较,判断待检测螺母是否存在缺陷;

步骤S4,对斜视图像进行二值化处理;提取二值化后的斜视图像的特征参数,并将提取到的斜视图像的特征参数与预设的斜视图像特征参数进行比较,判断待检测螺母是否存在缺陷;

本文所说的俯视图像、侧视图像和斜视图像,是指当螺母水平放置时,分别从螺母的正上方、水平侧面和斜上方所拍摄的图像,本实施例中分辨率可分别优选为2048*2048、1280*850和800*850。

本实施例中,预设的俯视图像特征参数,包括:预设的螺母内圆最大半径值和预设的螺母内圆最小半径值。

相应地,步骤S2具体包括:

在步骤S211-S213中,对俯视图像进行二值化处理。

步骤S211,将俯视图像转化为灰度图像,通过高斯滤波消除灰度化后的噪点;

步骤S212,通过自适应二值化操作将降噪后的俯视图像转化为二值图像;生成的二值图像中,前景像素点主要对应图像中的边缘;

步骤S213,对二值图像进行闭运算,排除图像中的小型黑洞等噪声,得到二值化处理后的俯视图像。

在步骤S221-224中,根据二值化后的俯视图像,提取该图像中螺母内圆的半径值。

步骤S221,根据二值化后的俯视图像,找到预设个数的位于螺母内圆上的点;

步骤S222,基于圆上任意两点的垂直平分线过圆心的性质,知道圆上两点坐标可求得该两点垂直平分线的斜率k和y轴截距b,如公式(1)、(2)所示:

k=(y1-y2)÷(x1-x2) (1)

b=(y2×x1-y1×x2)÷(x1-x2) (2)

由斜率k和b可求得两条垂直平分线的交点,作为圆心候选点,如公式(3)、(4)所示:

y=k1×x+b1 (3)

y=k2×x+b2 (4)

根据已经找到的找到预设个数的位于螺母内圆上的点,重复执行公式(1)-(4),得到预设数量的圆心候选点;

步骤S223,丢弃离群的圆心候选点,求出剩余的圆心候选点的位置平均值,作为检测到的圆心坐标;

步骤S224,根据检测到的圆心坐标,以及找到的预设个数的位于螺母内圆上的点,分别计算检测到的圆心坐标与找到的螺母内圆上各点之间的距离,并求出这些距离的平均值,作为提取到的螺母内圆的半径值。

在步骤S230中,将提取的该图像中螺母内圆的半径值,分别与预设的螺母内圆最大半径值和预设的螺母内圆最小半径值进行比较,判断待检测螺母是否存在内径过大或过小的缺陷。

例如,对于标准内径为26.5的螺母,其预设的螺母内圆最大半径值为13.386,预设的螺母内圆最小半径值为13.106;若当前图像中螺母内圆半径值大于预设的螺母内圆最大半径值,则认为存在内径过大的缺陷,若小于预设的螺母内圆最小半径值,则认为存在内径过小的缺陷。

本实施例中,预设的侧视图像特征参数,包括:预设的图像左边缘区域、预设的图像右边缘区域、预设的左右边界距离与图像宽度之比(本实施例中优选为0.75)。

相应地,步骤S3具体包括:

在步骤S311-313中,对侧视图像进行二值化处理。

步骤S311,对侧视图像进行灰度化和直方图均衡化,增强侧视图像的对比度;通过高斯滤波消除灰度化后的噪点;

步骤S312,通过OTSU自适应阈值法对图像进行二值化;由于螺母区域比背景黑,生成二值图像中,前景像素点主要对应图像中的低灰度值区域;

步骤S313,对二值图像进行闭运算,排除图像中的噪声,得到二值化处理后的侧视图像。

在步骤S321-S323中,根据二值化后的侧视图像,确定螺母在图像中的位置。

步骤S321,统计二值化后的侧视图像中每一行的前景像素点个数,得到一个记录每一行前景像素个数值,维度等于图像高度的行投影向量;

步骤S322,统计二值化后的侧视图像中每一列的前景像素点个数,得到一个记录每一列前景像素个数值,维度等于图像宽度的列投影向量;

步骤S323,由于前景主要是螺母区域,通过分别查找行投影向量中像素值跃变位置、列投影向量中像素值跃变位置,进而可确定待检测螺母在图像中的具体位置。

在步骤S331-S332中,判断待检测螺母是否存在与其他螺母搭接的情况。

步骤S331,分别提取左、右边界在图像中的位置,并根据预设的图像左边缘区域和预设的图像右边缘区域,分别判断左边界是否位于所述预设的图像左边缘区域,右边界是否位于所述预设的图像右边缘区域;

步骤S332,若左边界位于所述预设的图像左边缘区域或右边界位于所述预设的图像右边缘区域,则计算左右边界之间的距离与图像宽度的比值,并判断所述比值是否大于预设的左右边界距离与图像宽度之比;若是,则认为待检测螺母存在与其他螺母搭接的情况。

本实施例中,预设的斜视图像特征参数,包括:预设的白色像素占比第三阈值(本实施例中优选为0.1)。

相应地,步骤S4具体包括:

在步骤S411-S413中,对斜视图像进行二值化处理。

步骤S411,对斜视图像进行灰度化和直方图均衡化,增强斜视图像的对比度;通过高斯滤波消除灰度化后的噪点;

步骤S412,通过OTSU自适应阈值法对图像进行二值化;我们想获取的前景是斜视图像中的内螺纹,在生成二值图像中,前景像素点主要对应图像中的高灰度值区域;

步骤S413,对二值图像进行闭运算,排除图像中的噪声,得到二值化处理后的斜视图像。

在步骤S421-S423中,根据二值化后的斜视图像,确定螺母在图像中的位置。具体过程可参看步骤S321-S323中,根据二值化后的侧视图像确定螺母在图像中的位置。

在步骤S431-S433中,根据二值化后的斜视图像,计算内螺纹所在图像区域中白色像素的占比。

步骤S431,根据螺母在图像中的位置,以及预设的内螺纹在螺母中的相对位置,截取内螺纹所在图像区域;

步骤S432,对截取的内螺纹所在图像区域进行闭运算,消除噪声点;

步骤S433,分别计算内螺纹所在图像区域中像素总个数和白色像素的个数,进而计算白色像素的个数与像素总个数之间的比值,得到内螺纹所在图像区域中白色像素的占比。

在步骤S440中,将步骤S433计算出的白色像素占比与预设的白色像素占比第三阈值进行比较,若内螺纹所在图像区域中白色像素的占比小于预设的白色像素占比第三阈值,则认为待检测螺母未开内螺纹。

本实施例中,若合格螺母底端的内径大于顶端的内径,且顶端开有多个上槽,则预设的俯视图像特征参数,还包括:预设的半径差阈值,以及预设的半径增量l1、l2,且l2<l1;

相应地,在步骤S230之后,还包括步骤S240:

在步骤S240中,若待检测螺母存在内径过大的缺陷,则进一步判断待检测螺母是否上下倒置;所述上下倒置,为待检测螺母顶端向下底端向上,水平放置。

其中,所述判断待检测螺母是否上下倒置,具体为:

步骤S241,计算提取到的螺母内圆的半径值r与预设的螺母内圆半径值之间的差值;

步骤S242,若计算得到的差值大于预设的半径差阈值,则在二值化后的俯视图像上取一个半径值在[r,r+l1]范围内的环形区域,令该环形区域包括整个螺母的像素点;

步骤S243,对该环形区域进行连通域分析,可得到一个或多个前景连通域;若至少存在一个前景连通域,且该前景连通域同时满足下述两个条件:(1)该前景连通域中的像素点在螺母的四个象限均有出现;(2)该前景连通域中所有前景像素点与圆心间的距离都大于r+l2;则认为该待检测螺母上下倒置,否则为内径过大。螺母的四个象限,是指从圆心对图像进行水平和垂直切分得到的左上、右上、左下和右下四块图像区域。

本实施例中,若合格螺母的周向开有外槽,则预设的侧视图像特征参数,还包括:预设的第三截图高度(本实施例中为合格螺母高度的9/10)、预设截图宽度(本实施例中为合格螺母宽度的1/10)、预设的白色像素点数量(本实施例中优选为50)、预设的外槽数量(本实施例中为5)。

相应地,在步骤S332之后,还包括步骤S340:

在步骤S340中,若待检测螺母不存在与其他螺母搭接的情况,则判断待检测螺母是否存在外槽数量不符合的缺陷;

其中,判断待检测螺母是否存在外槽数量不符合的缺陷,具体为:

步骤S341,根据二值化后的侧视图像,提取左、右边界及下边界在图像中的位置;

步骤S342,根据提取的左、右边界及下边界在图像中的位置,在二值化前的侧视图像上,以下边界为底,以预设的第三截图高度为高,分别从左边界向右截取预设截图宽度的区域、从右边界向左截取预设截图宽度的区域,得到左边界区域的图像和右边界区域的图像;

步骤S343,分别对截取的两幅图像进行二值化和闭操作;

步骤S344,分别计算该两幅图像中,每个白色像素连通区域中白色像素点的数量;分别判断每个白色像素连通区域中白色像素点的数量是否大于预设的白色像素点数量,若是,则认为该白色像素连通区域为一个外槽;

步骤S345,若该两幅图像中,至少有一幅图像上检测到的外槽数量不等于预设的外槽数量时,则认为待检测螺母存在外槽数量不符合的缺陷。

本实施例中,若合格螺母的顶端开有多个上槽,则预设的侧视图像特征参数,还包括:预设的第一截图高度(本实施例中为合格螺母高度的1/4)、预设的白色像素点数量(本实施例中优选为200)、预设的白色像素占比第一阈值P1(本实施例中为0.3)、预设的白色像素占比第二阈值P2(本实施例中为0.2)。

相应地,在步骤S345之后,还包括步骤S350:

在步骤S350中,若待检测螺母不存在外槽数量不符合的缺陷,则判断待检测螺母是否存在上槽切削过度的缺陷;

其中,步骤S351,判断待检测螺母是否存在上槽切削过度的缺陷,具体为:

步骤S352,根据二值化后的侧视图像,提取螺母的左、右边界及上边界在图像中的位置;

步骤S353,以提取的螺母左、右边界为两个侧边,以上边界为顶边,从上往下截取预设的第一截图高度,得到截取的图像区域;

步骤S354,在截取的图像区域中,分别计算每个白色像素连通区域中白色像素点的数量;分别判断每个白色像素连通区域中白色像素点的数量是否大于预设的白色像素点数量,若是,则认为该白色像素连通区域为一个上槽;进而计算出截取的图像区域中上槽的数量N;

步骤S355,在截取的图像区域中,分别计算该区域中所有像素的总个数和白色像素的总个数,进而计算出白色像素的总个数与所有像素的总个数之比,作为该区域中白色像素的占比P;

步骤S356,若计算出的上槽数量N与白色像素的占比P满足公式(5):

则认为待检测螺母存在上槽切削过度的缺陷;

其中,P1、P2分别为所述预设的白色像素占比第一阈值、所述预设的白色像素占比第二阈值,且P1>P2。

本发明中,还可以结合两个或三个不同方向的图像进行缺陷检测,例如:若合格螺母上开有多个上槽,就需要结合俯视图像和侧视图像来检测未开上槽或上槽开反的缺陷。

本实施例中,若合格螺母上开有多个上槽,则预设的俯视图像特征参数,还包括:预设的螺母内圆最大半径值、预设的螺母内圆最小半径值,以及预设的半径增量l3、l4,且l4<l3;预设的侧视图像特征参数,还包括:预设的第二截图高度(本实施例中为合格螺母高度的1/6),以及预设的白色像素占比第四阈值(本实施例中优选为0.05);

相应地,在步骤S356之后,还包括步骤S360:

在步骤360中,先根据二值化后的俯视图像,判断待检测螺母是否存在未开上槽或上槽开反的缺陷;再根据二值化后的侧视图像,进一步区分待检螺母是存在未开上槽还是上槽开反的缺陷。

该步骤具体为:

步骤S361,根据二值化后的俯视图像,提取该图像中螺母内圆的半径值r;

步骤S362,判断提取到的螺母内圆的半径值是否大于预设的螺母内圆最小半径值,且小于预设的螺母内圆最大半径值;若是,则在二值化后的所述俯视图像上取一个半径值在[r,r+l3]范围内的环形区域,令该环形区域包括整个螺母的像素点;

步骤S363,对该环形区域进行连通域分析,可得到一个或多个前景连通域;若至少存在一个前景连通域,且该前景连通域同时满足下述两个条件:(1)该前景连通域中的像素点在螺母的四个象限均有出现;(2)该前景连通域中所有前景像素点与圆心间的距离都大于r+l4,则认为该待检测螺母存在未开上槽或上槽开反的缺陷;螺母的四个象限,是指从圆心对图像进行水平和垂直切分得到的左上、右上、左下和右下四块图像区域;

步骤S364,根据二值化后的侧视图像,分别提取螺母的左、右边界及下边界在图像中的位置;

步骤S365,在二值化后的侧视图像中,以提取的螺母左、右边界为两个侧边,以下边界为底边,从下往上截取预设的第二截图高度,得到截取的图像区域;

步骤S366,计算所截取的图像区域中像素总个数和白色像素个数,进而计算白色像素个数和像素总个数的比值,得到所截取的图像区域中白色像素的占比;

步骤S367,当所得白色像素的占比大于预设的白色像素占比第四阈值时,认为待检测螺母上槽开反,否则认为待检测螺母未开上槽。

图3是本发明的基于机器视觉的螺母缺陷检测装置实施例的构成示意图,图4是本发明的基于机器视觉的螺母缺陷检测装置实施例中,拍照时相机和待检测螺母的相对位置示意图。本实施例的缺陷检测装置将待检测螺母分为:废品、次品、异常品、合格品。其中,废品包括:内径过大或过小、上槽开反、上槽切削过度;次品包括:未开上槽、未开内螺纹;异常品包括:外槽数量不符、上下倒置、搭接。

如图3所示,本实施例的螺母缺陷检测装置10,包括:传送设备110、视觉采集单元120(包括光电开关121,以及分别设置于传送设备110的正上方、侧面和斜上方三个相机122-124)、图像检测单元130、螺母分类单元140(PLC控制器141、电机142、三个机械推手143-145、三个螺母容纳装置146-148)。如图4所示,在拍照时,三个相机122、123和124分别位于待检测螺母20的正上方、侧面和斜上方。

其中,传送设备110用于放置并输送待检测螺母20;每个待检测螺母20独立且水平放置在传送设备120上;光电开关121,用于在检测到待检测螺母20进入目标区域时,触发上述三个相机同时进行拍照;三个相机分别用于拍摄待检测螺母20的俯视图像、侧视图像和斜视图像;图像检测单元130用于接收三个相机所拍摄的俯视图像、侧视图像和斜视图像,并基于上面所述的基于机器视觉的螺母缺陷检测方法,对待检测螺母20进行缺陷检测;螺母分类单元140用于根据图像检测单元130的缺陷检测结果,对待检测螺母进行分类;PLC控制器141,用于接收图像检测单元130发来的检测结果,并根据检测结果控制电机142动作;电机142根据PLC控制器141的指令,每次驱动三个机械推手143-145中的任意一个;三个螺母容纳装置146-148,分别用于容纳废品、次品和异常品;三个机械推手143-145分别与三个螺母容纳装置146-148一一对应,在电机142的驱动下将当前检测结束的废品、次品或异常品推入对应的螺母容纳装置,正常螺母则继续留在传送设备上输送到下一个环节。

本实施例中,螺母分类单元140将螺母分为:次品、废品、异常品,以及合格品;

其中,次品包括:未开上槽和未开内螺纹的螺母;废品包括:内径过大或过小、上槽开反,以及上槽切削过度的螺母;异常品包括:上下倒置、外槽数量不符,以及存在搭接问题的螺母;合格品为检测结果符合要求的螺母(也就是不存在上述问题或缺陷的螺母)。

本实施例的螺母缺陷检测装置10,还包括:白光源150(图3中未画出);白光源150,用于将待检测螺母照亮,以便可以拍摄到清晰地图像。

本领域技术人员应该能够意识到,结合本文中所公开的实施例描述的各示例的方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明电子硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以电子硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1