CN116071315A - 一种基于机器视觉的产品可视缺陷检测方法及*** - Google Patents
一种基于机器视觉的产品可视缺陷检测方法及*** Download PDFInfo
- Publication number
- CN116071315A CN116071315A CN202211738497.8A CN202211738497A CN116071315A CN 116071315 A CN116071315 A CN 116071315A CN 202211738497 A CN202211738497 A CN 202211738497A CN 116071315 A CN116071315 A CN 116071315A
- Authority
- CN
- China
- Prior art keywords
- product
- defect detection
- defect
- network model
- loss function
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
- G06T7/0006—Industrial image inspection using a design-rule based approach
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Quality & Reliability (AREA)
- Databases & Information Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及图像处理技术领域,具体涉及一种基于机器视觉的产品可视缺陷检测方法及***,方法包括:获取产品表面图像;将产品表面图像输入至特征提取网络模型获得产品特征;输入产品特征至缺陷检测网络模型进行缺陷检测并输出缺陷检测结果;其中,缺陷检测网络模型通过如下步骤获得:记录产品表面图像上的缺陷信息,根据缺陷信息构建产品缺陷检测数据集,产品缺陷检测数据集包括训练集和验证集;利用产品缺陷检测数据集训练和验证深度学习模型,得到缺陷检测网络模型。本发明的有益技术效果包括:能够提高对复杂产品表面的检测效率,提升检测精度。
Description
技术领域
本发明涉及图像处理技术领域,具体涉及一种基于机器视觉的产品可视缺陷检测方法及***。
背景技术
工业产品表面的可视缺陷会对产品的美观度、舒适度和使用性能等带来不良影响,所以生产企业会对产品表面的可视缺陷进行检测以便及时发现并加以控制。
目前产品可视缺陷的检测方法分为三种:第一种是人工检测法,这种方法不仅成本高,而且在对微小缺陷进行判别时,难以达到所需要的精度和速度,而且人工检测法还存在劳动强度大、检测标准一致性差等缺点;第二种是机械装置接触检测法,这种方法虽然在质量上能满足生产的需要,但存在机械装置检测设备价格高、灵活性差、速度慢等缺点;第三种是机器视觉检测法,即利用图像处理和分析技术对产品可能存在的缺陷进行自动检测,这种方法采用非接触的工作方式,安装灵活,而且测量精度和速度都比较高,是实现设备自动化、智能化和精密控制的有效手段,具有安全可靠、光谱响应范围宽、可在恶劣环境下长时间工作和生产效率高等突出优点。同一台机器视觉检测设备可以实现对不同产品的多参数检测,为企业节约大笔设备开支。但是基于机器视觉的表面缺陷检测仍存在以下两方面的技术问题:
1)受环境、光照、生产工艺和噪声等多重因素影响,检测***的信噪比一般较低,微弱信号难以检出或不能与噪声有效区分。
2)机器视觉表面缺陷检测,特别是在线检测,其特点是数据量庞大、冗余信息多、特征空间维度高,同时考虑到真正的机器视觉面对的对象和问题的多样性,从海量数据中提取有限缺陷信息的算法能力不足,实时性不高。
因此,目前对于产品可视缺陷检查仍主要依赖人工检测法,但是高重复性和长时间负荷会造成人工检测效率下降,从而容易导致产品可视缺陷被忽略,继而对后期测试计划造成潜在、甚至严重的缺陷溯源干扰,影响测试进度和项目进展。
为此,有必要研究能够提高对复杂表面的缺陷检测效率和检测精度的基于机器视觉的缺陷检测方法。
如中国专利CN113421263A,公开日2021年9月21日,零件缺陷检测方法、设备、介质及计算机程序产品。该方法包括:获取待检测零件对应的待检测图像,基于全尺度灰度先验深度分割模型,对所述待检测图像进行缺陷预测,获得图像缺陷检测结果,其中,所述全尺度灰度先验深度分割模型为基于预先收集的训练缺陷图像集对预设数量的深度神经网络模块级联组成的待训练缺陷检测模型进行迭代训练优化得到的。该发明解决了零件缺陷检测准确度低的技术问题。
如中国专利CN114881998A,公开日2022年8月9日,一种基于深度学习的弓箭表面缺陷检测方法及***。该方法包括获取产品包括的各个缺陷类型的样本图片生成训练样本集,所述缺陷类型至少包括划伤、蹭伤、磨伤、磕碰、凹坑、白点、水印。该方法缺陷目标检测使用基于图像的深度学习算法对客户的产品进行缺陷检测,建立一个关于铝板每个缺陷的样本分布数据集,通过神经网络算法研究这些样本集在二维图像上的特征分布,可以建立起一个数学模型,模型的输入为一张客户现场采集的产品图像,通过模型计算可以输出该图像中可能是缺陷的点的坐标,通过对结果的筛选就可以判断出这个产品是否有缺陷。该发明解决了人工检测法判断缺陷的检测标准不一致的问题。但上述技术方案均没有解决机器视觉检测法复杂表面缺陷检测的深度学习算法计算量大、检测效率较低、检测精度不高的技术问题。
发明内容
本发明所要解决的技术问题:目前对于产品可视缺陷检测存在检测效率低、检测精度不高的技术问题,提出了一种基于机器视觉的产品可视缺陷检测方法及***,能够提高对复杂产品表面的检测效率,提升检测精度。
解决上述技术问题,本发明采用如下技术方案:一种基于机器视觉的产品可视缺陷检测方法,包括以下步骤:
获取产品表面图像;
将所述产品表面图像输入至特征提取网络模型获得产品特征;
输入所述产品特征至缺陷检测网络模型进行缺陷检测并输出缺陷检测结果;
其中,所述缺陷检测网络模型通过如下步骤获得:记录产品表面图像上的缺陷信息,根据所述缺陷信息构建产品缺陷检测数据集,所述产品缺陷检测数据集包括训练集和验证集;利用所述产品缺陷检测数据集训练和验证深度学习模型,得到所述缺陷检测网络模型。
作为优选,将产品表面图像输入至特征提取网络模型获得产品特征具体包括:
将所述产品表面图像输入至所述特征提取网络模型获取特征图,所述特征图为至少一个产品特征的集合,所述特征提取网络模型包括残差网络模型和瓶颈层。
作为优选,将所述产品表面图像输入至所述表面特征提取网络模型获取特征图具体包括:
在特征提取网络模型中建立Focus模块,将所述产品表面图像输入Focus模块,进行切片操作;
将切片操作后得到的图片在特征提取网络模型中经过卷积操作,得到二倍下采样特征图。
作为优选,根据所述缺陷信息构建产品缺陷检测数据集的步骤包括:
针对所述产品表面图像是否含有缺陷进行标记;
将所标记的含有缺陷目标的图片分类,记录所有缺陷目标的真实边框位置、类别信息;
针对不同类别的缺陷,构建不同的产品缺陷检测数据集,最后按照一定比例将所述产品缺陷检测数据集划分为训练集和验证集。
作为优选,利用所述产品缺陷检测数据集训练和验证深度学习模型的步骤包括:
(1)构建算法网络模型,包括:构建主干特征提取网络,并将该主干网络预先在公开的ImageNet图像数据集上进行分类任务预训练,保存预训练网络模型和模型权重文件;
(2)构建跨阶段部分网络;
(3)构建特征聚合网络,在特征聚合网络的每一个卷积层后,添加交叉小批量归一化,激活函数Mish,组成卷积模块;
(4)使用所述产品缺陷检测数据集的训练集对所构建的算法网络模型进行训练。
作为优选,所述跨阶段部分网络包括:将所述主干特征提取网络得到的特征图拆成两个部分,分别记为主干部分和分支部分,主干部分经过若干个卷积层后送入SPP模块,将所得到的特征图层进行拼接操作,再经过若干个卷积层后,主干部分卷积操作的结果与分支部分进行连接。
作为优选,在使用所述产品缺陷检测数据集的训练集对所构建的算法网络模型进行训练的步骤中,加入损失函数,所述损失函数包括回归损失函数、类别损失函数、置信度损失函数;其中,对缺陷位置回归损失函数使用GIOU损失,对缺陷类别损失函数和置信度损失函数使用二值交叉熵损失函数;计算出总的损失值后进行误差反向传播,使用交叉小批量归一化和激活函数Mish,并保存所有训练中验证集中平均精度均值最高的模型,得到训练好的改进的目标检测算法网络模型。
作为优选,所述总的损失值的计算方法为:
L=γ1Lcls+γ2Lobj+γ3Lbox
其中,Lcls表示类别损失函数,γ1表示类别损失函数的权重值,Lobj表示置信度损失函数,γ2表示置信度损失函数的权重值,Lbox表示回归损失函数,γ3表示回归损失函数的权重值;
计算类别损失函数式中:Oij表示类别的真实值,即当样本i内不包含第j类目标时Oij值为0,当样本i内包含第j类目标时Oij值为1,Npos表示所有正样本的总数,pos表示目标物体的位置,cla表示目标物体的类别,Sigmoid(Cij)表示类别的预测值,即为模型中第j类目标在预测样本i中出现的概率;
计算置信度损失函数式中:Oi表示置信度的真实值,即当样本i属于正样本时Oi值为1,当样本i属于负样本时Oi值为0,N表示所有样本的总数,Sigmoid(Ci)表示置信度的预测值,即为模型中正样本在预测样本i中出现的概率;
计算真实框和预测框之间重叠部分的面积Sd:
寻找真实框和与预测框的最小外接矩形,并计算两矩形框最小外接矩形的面积Sc为:
计算预测框和真实框的交并比IOU为:
计算得到回归损失函数为:
式中:Sc表示真实框和预测框最小外接矩形的面积,U表示真实框和预测框并集的面积。
作为优选,在使用所述产品缺陷检测数据集的训练集对所构建的算法网络模型进行训练的步骤中,使用改进的目标检测算法网络模型及参数对验证集进行预测得到预测结果,对预测结果用GIOU-NMS模块进行后处理得到输出,基于所述输出计算训练好的改进的目标检测算法网络模型的检测精度和平均精度均值,记录检测结果;
一种基于机器视觉的产品可视缺陷检测***,用于执行如前述的基于机器视觉的产品可视缺陷检测方法,包括:
图像获取模块,用于获取产品表面图像,并将产品表面图像输入至特征提取网络模型获得产品特征;
缺陷分析模块,输入所述产品特征至缺陷检测网络模型进行缺陷检测,确定缺陷类别以及相应的缺陷数量;
数据送显模块,输出显示所述缺陷产品的缺陷类别以及相应的缺陷数量。
本发明的有益技术效果包括:采用一种基于机器视觉的产品可视缺陷检测方法及***,通过改进目标检测算法,构建产品缺陷检测数据集,实现产品可视缺陷的快速准确检测,以克服人工检测可视缺陷效率低的技术问题;通过在特征提取网络模型中建立Focus模块,使得产品表面图像原始样本没有特征丢失,更有助于进行下一步的卷积操作;通过构建跨阶段部分网络,实现了参数计算量的减少,提高了缺陷检测效率;通过对缺陷位置回归损失使用GIOU损失,克服了现有网络回归损失函数只关注重叠部分而无法回归预测框与真实框不相交的情况,提升了缺陷检测精度。
本发明的其他特点和优点将会在下面的具体实施方式、附图中详细的揭露。
附图说明
下面结合附图对本发明做进一步的说明:
图1为本发明实施例基于机器视觉的产品可视缺陷检测方法流程图;
图2为本发明实施例构建产品缺陷检测数据集的流程图;
图3为本发明实施例利用产品缺陷检测数据集训练和验证深度学习模型的流程图;
图4为本发明实施例基于机器视觉的产品可视缺陷检测方法的检测***示意图。
其中:1、图像获取模块,2、缺陷分析模块,3、数据送显模块。
具体实施方式
下面结合本发明实施例的附图对本发明实施例的技术方案进行解释和说明,但下述实施例仅为本发明的优选实施例,并非全部。基于实施方式中的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得其他实施例,都属于本发明的保护范围。
在下文描述中,出现诸如术语“内”、“外”、“上”、“下”、“左”、“右”等指示方位或者位置关系仅是为了方便描述实施例和简化描述,而不是指示或暗示所指的装置或者元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
在详细说明本实施例技术方案之前,首先对本实施例应用的背景情况进行介绍。
产品的缺陷问题一直存在于工业生产中,工业产品表面的可视缺陷会对产品的美观度、舒适度和使用性能等带来不良影响,而且由于产品缺陷而导致的安全问题也愈发增多,因此企业对于产品可视缺陷的识别与检测更加重视。传统的产品可视缺陷检测方法是依赖专业的技术人员手动操作进行的,这种方法不仅检测效率低,而且依赖技术人员的的主观判断,检测的标准一致性以及准确度难以得到保证。后来,随着计算机图像处理和分析技术的迅猛兴起,这种技术按被扩展应用到产品可视缺陷检测领域,使得产品可视缺陷检测方法越来越成熟与完善,其中,机器视觉检测法在产品可视缺陷检测技术中扮演着重要的角色。
机器视觉检测法通过适当的光源和图像传感器(CCD摄像机)获取产品表面图像,利用相应的图像处理算法提取图像的特征信息,然后根据特征信息进行表面缺陷的定位、识别、分级等判别和统计、存储、查询等操作。该方法很大程度上克服了人工检测方法的抽检率低、准确性不高、实时性差、效率低、劳动强度大等弊端,在现代工业中得到越来越广泛的研究和应用。机器视觉检测法主要有两种适用场景:(1)在产品测试阶段,进行产品的静态测试,快速识别产品表面缺陷,节省人力;(2)在产品生产阶段,进行产品的质量检测,能够快速完成产品的静态检测,对于大批量、自动化生产线具有智能质检功能。
但是基于机器视觉的表面缺陷检测仍存在以下两方面的技术问题:
(1)受环境、光照、生产工艺和噪声等多重因素影响,检测***的信噪比一般较低,微弱信号难以检出或不能与噪声有效区分。因此,如何构建稳定、可靠、鲁棒性强的机器视觉缺陷检测***,以适应光照变化、噪声以及其他外界不良环境的干扰,是要解决的问题之一。
(2)机器视觉表面缺陷检测,特别是在线检测,其特点是数据量庞大、冗余信息多、特征空间维度高,同时考虑到真正的机器视觉面对的对象和问题的多样性,从海量数据中提取有限缺陷信息的算法能力不足,实时性不高。因此,需要研究更具鲁棒性的图像处理和分析算法,提高图像处理的有效性以及执行效率,降低算法的复杂度,提高识别的准确性。
为此,本申请实施例提供了一种基于机器视觉的产品可视缺陷检测方法,请参照附图1,包括以下步骤:
步骤A01)获取产品表面图像。
其中,产品表面图像的获取主要是选择合适的光源、专业的相机与镜头来实现对产品表面的图片采集,原理主要是利用图像传感器(如CCD摄像机)将镜头汇聚的灯光转化成电信号,继而转化成数字信号,并传递到下一步骤进行特征提取。获取产品表面图像的操作可以参考相关技术,本申请实施例对此不进行详细阐述。
步骤A02)将产品表面图像输入至特征提取网络模型获得产品特征。
进一步的,将产品表面图像输入至特征提取网络模型获得产品特征具体包括:将产品表面图像输入至特征提取网络模型获取特征图,特征图为至少一个产品特征的集合。可选地,特征提取网络模型包括残差网络模型和瓶颈层。
进一步的,将产品表面图像输入至表面特征提取网络模型获取特征图具体包括:在特征提取网络模型中建立Focus模块,将产品表面图像输入Focus模块,进行切片操作;将切片操作后得到的图片在特征提取网络模型中经过卷积操作,得到二倍下采样特征图。
其中,下采样在神经网络中主要是起到减少参数量、实现降维的作用,同时还能增加局部感受野。但是下采样的过程不可避免的伴随着特征丢失,尤其是在分割任务要经历下采样编码和上采样解码的过程。Focus是目标检测网络中一种特殊的下采样方式,采用切片操作把高分辨率的图片/特征图拆分成多个低分辨率的图片/特征图。具体操作是将一张图片通过间隔采样拆分成4份,这样就拿到了四张图片,四张图片互补,长的差不多,但是没有特征丢失,此时图片的W、H信息就集中到了通道空间,输入通道扩充了4倍,即在通道维度上进行拼接生成的图片相对于原先的RGB三通道模式变成了12个通道,最后通过卷积的方式提取不同特征,最终得到了没有特征丢失情况下的二倍下采样特征图。示例地,在yolov5s网络中,原始的640×640×3的图像输入Focus模块,采用切片操作,先变成320×320×12的特征图,再经过一次卷积操作,最终变成320×320×32的特征图,提高了每个点的感受野,并减少了原始信息的丢失,更有助于进行下一步的卷积操作。
步骤A03)输入产品特征至缺陷检测网络模型进行缺陷检测并输出缺陷检测结果。
本实施例通过改进目标检测算法,构建产品缺陷检测数据集,实现产品可视缺陷的快速准确检测,以克服人工检测可视缺陷效率低的技术问题。
其中,缺陷检测网络模型通过如下步骤获得:
记录产品表面图像上的缺陷信息,根据缺陷信息构建产品缺陷检测数据集,产品缺陷检测数据集包括训练集和验证集;
利用产品缺陷检测数据集训练和验证深度学习模型,得到缺陷检测网络模型。
也就是说,在本实施例的缺陷检测网络模型得到实际应用之前,可以通过机器学习的方式训练和提高缺陷检测网络模型的检测精度和速度。
进一步的,本实施例利用多份具有各种表面缺陷的产品表面图像,构成用于训练缺陷检测网络模型的训练集。请参阅附图2,根据缺陷信息构建产品缺陷检测数据集的步骤包括:
步骤B01)基于形态学处理和背景差分,截取待检测的产品表面区域;通过该步骤能够避免背景中的其他图像对算法产生不必要的影响。
步骤B02)针对产品表面图像是否含有缺陷进行标记;
步骤B03)将所标记的含有缺陷目标的图片分类,记录所有缺陷目标的真实边框位置、类别信息;
步骤B04)针对不同类别的缺陷,构建不同的产品缺陷检测数据集,最后按照一定比例将产品缺陷检测数据集划分为训练集和验证集。
训练集用于训练缺陷检测网络模型,验证集用于验证模型检测精度和速度。通过基于形态学的处理和背景差分,提取出待检测的产品表面区域,然后标记出含有缺陷的图片并分类,同时记录所有缺陷目标的位置、类别信息,就能够构建出不同类型缺陷的产品缺陷检测数据集。
可选地,可以采用平移、翻转、旋转、缩放和改变背景色温等方式来扩充数据集,使得缺陷检测网络模型的识别能力具有更强的鲁棒性。
可选地,请参阅附图3,利用产品缺陷检测数据集训练和验证深度学习模型的步骤包括:
步骤C01)构建算法网络模型,包括:构建主干特征提取网络,并将该主干网络预先在公开的ImageNet图像数据集上进行分类任务预训练,保存预训练网络模型和模型权重文件。
在机器视觉领域,卷积神经网络(ConvNets,CNN)已经成为最主流的方法。CNN史上的一个里程碑事件是ResNet模型的出现,ResNet可以训练出更深的CNN模型,从而实现更高的准确度。ResNet模型也属于残差网络,它的核心是通过建立前面层与后面层之间的“短路连接”(shortcuts,skipconnection),这有助于训练过程中梯度的反向传播,从而能训练出更深的CNN网络。不过ResNet模型纯是为了节省计算时间进而缩小整个模型训练所需的时间而设计的,对最终的模型精度并无影响。
EfficientNet是在ResNet的基础上提出的一种新的模型缩放方法,它使用一个简单而高效的复合系数来从网络深度(depth)、网络宽度(width)和输入图像分辨率(resolution)三个维度放大网络,不会像传统的ResNet那样任意缩放网络的维度,基于神经结构搜索技术EfficientNet可以获得最优的一组参数(复合系数)。EfficientNet不仅比ResNet快很多,而且精度也更高。
其中,卷积神经网络EfficientNetV2采用了训练感知神经网络结构搜索(NAS)与缩放技术对训练速度与参数量进行联合优化,NAS的搜索空间采用了新的op(比如Fused-MBConv)进行扩充。相比其他SOTA(stateoftheart,目前技术水平)方案,EfficientNetV2收敛速度更快,模型更小(6.8x)。在训练过程中一般通过逐步提升图像大小实现加速,但通常会造成精确度下降。为补偿该性能损失,提出了一种改进版的渐进学习方式,它自适应的根据图像大小调整正则化因子,比如dropout、数据增广和mixup。受益于渐进学习方式,EfficientNetV2在CIFAR/Cars/Flowers数据集上显著优于其他模型。通过在ImageNet数据集上进行的预训练,EfficientNetV2在ImageNet图像数据集上达到了87.3%的top1精度,以2.0%精度优于ViT,且训练速度更快(5x-11x)。
优选地,本实施例将轻量级EfficientNetv2作为主干特征提取网络。目标检测算法一般可分为单阶段和双阶段目标检测算法,单阶段算法因为卷积特征提取和属性分类全部集中在一个阶段完成,而双阶段分开完成,因此造成检测和训练速度的差距。目前代表的单阶段算法为YOLO系列和SSD系列,其中YOLO系列算法更新速度较快,目前检测速度可达10ms内(5s模型),检测精度较高,适用于缺陷检测和定位。值得说明的是,本申请实施例中,相比于YOLOv5网络的原始主干特征提取网络EfficientNetv1而言,EfficientNetv2在前1至3个stage采用Fused-MBConv(网络浅层)模块,将MBConv模块中的depthwiseconv3×3和扩展conv1×1替换为单个常规conv3×3。而且,EfficientNetv1部分stage采用了5x5卷积核,而EfficientNetv2只采用了3x3卷积核,但EfficientNetv2包含更多layers来弥补感受野;EfficientNetv2中也没有EfficientNetv1中的最后的stride-1的stage。这些区别让本实施例的主干特征提取网络参数量更少,显存消耗也更少,有效缩短了训练时间。
其中,在实际中通常会将多个结构相同的卷积层称为一个stage。Stride是步距,注意每个Stage中会重复堆叠Operator模块多次,除了第一个Opertator模块的步距以外,其他的步距默认都是1。Layers表示该Stage重复堆叠Operator的次数。
步骤C02)构建跨阶段部分网络。
进一步的,构建跨阶段部分网络,则可以包括将主干特征提取网络得到的特征图拆成两个部分,分别记为主干部分和分支部分,主干部分经过若干个卷积层后送入SPP模块,将所得到的特征图层进行拼接操作,再经过若干个卷积层后,主干部分卷积操作的结果与分支部分进行连接。
本申请的实施方式中,通过构建跨阶段部分网络,减少了计算量,在跨阶段部分网络中融合残差网络或瓶颈层就能有效提高跨阶段部分网络的计算速度,提高了检测效率,在减少参数计算量的同时也在一定程度上提高了检测精度。
步骤C03)构建特征聚合网络,在特征聚合网络的每一个卷积层后,添加交叉小批量归一化,激活函数Mish,组成卷积模块。
依据以上结构,本实施例给出了一种特征聚合网络的结构,示例如下:
第77层为一个卷积层和上采样层,卷积核大小为1×1,步长为1;
第78-82层是将62层得到的特征图层经过卷积核大小为1×1,步长为1的卷积操作后,与第77层得到的特征图层进行串联后,再经过5个卷积层,卷积核大小依次为1*1、3*3、1*1、3*3和1*1,步长均为1;
第83层为一个卷积层和上采样层,卷积核大小为1×1,步长为1;
第84-88层是将45层得到的特征图层经过卷积核大小为1×1,步长为1的卷积操作后,与第83层得到的特征图层进行串联后,再经过5个卷积层,卷积核大小依次为1*1、3*3、1*1、3*3和1*1,步长均为1。
第1个分类和边框预测结果(YOLOHead1)是第115层输出;第2个分类和边框预测结果(YOLOHead2)是第87层输出;第3个分类和边框预测结果(YOLOHead3)是第88层输出。
在上述实施方式中,第1个分类和边框预测结果包括尺寸为3*3、步长为1的2维卷积,以及尺寸为1*1、步长为1的2维卷积,输出特征图尺寸为52*52*18,其中52*52是特征图平面尺寸,18是特征图通道数。第2个分类和边框预测结果包括尺寸为3*3、步长为1的2维卷积,以及尺寸为1*1、步长为1的2维卷积,输出特征图尺寸为26*26*18,其中26*26是特征图平面尺寸,18是特征图通道数。第3个分类和边框预测结果包括尺寸为3*3、步长为1的2维卷积,以及尺寸为1*1、步长为1的2维卷积,输出特征图尺寸为13*13*18,其中13*13是特征图平面尺寸,18是特征图通道数。其中三个分类和边框预测结果都具有18个通道,以第3个分类和边框预测结果(YOLOHead3)中1*1*18为例,第1-6为第一个预测框的参数,7-12为第二个预测框的参数,13-18为第三个预测框的参数。第一个预测框的参数中,第1个参数是预测框的置信度;第2个参数是框内是窑炉缺陷的概率;第3-6个参数是预测框的4个位置调整参数,第二和第三个预测框的参数与第一个预测框的参数顺序一致。
可以理解地,在上述实施方式的示例中,为了表述清楚,对各个网络的层、块、核大小、步长等等都作出了具体的示例。但这些数值均为示例性的说明,在实际使用中,本领域普通技术人员可以根据实际需要修改层数、块数、核大小、步长等等。
步骤C04)使用产品缺陷检测数据集的训练集对所构建的算法网络模型进行训练。
进一步的,在使用产品缺陷检测数据集的训练集对所构建的算法网络模型进行训练的步骤中,加入损失函数。损失函数(lossfunction)或代价函数(costfunction)是将随机事件或其有关随机变量的取值映射为非负实数以表示该随机事件的“风险”或“损失”的函数。在本实施例中,损失函数可以包括回归损失函数、类别损失函数和置信度损失函数;其中,对缺陷位置回归损失函数使用GIOU损失,对缺陷类别损失函数和置信度损失函数使用二值交叉熵损失函数;计算出总的损失值后进行误差反向传播,使用交叉小批量归一化和激活函数Mish,避免出现网络退化现象并加速网络训练,并保存所有训练中验证集中平均精度均值最高的模型,得到训练好的改进的目标检测算法网络模型。
其中,可以在每迭代10次时保存一次模型、模型参数及训练结果,最终保存所有训练中验证集中平均精度均值最高的模型、模型参数及训练结果。
进一步的,总的损失值的计算方法为:
L=γ1Lcls+γ2Lobj+γ3Lbox
其中,Lcls表示类别损失函数,γ1表示类别损失函数的权重值,Lobj表示置信度损失函数,γ2表示置信度损失函数的权重值,Lbox表示回归损失函数,γ3表示回归损失函数的权重值;
计算类别损失函数式中:Oij表示类别的真实值,即当样本i内不包含第j类目标时Oij值为0,当样本i内包含第j类目标时Oij值为1,Npos表示所有正样本的总数,pos表示目标物体的位置,cla表示目标物体的类别,Sigmoid(Cij)表示类别的预测值,即为模型中第j类目标在预测样本i中出现的概率;
计算置信度损失函数式中:Oi表示置信度的真实值,即当样本i属于正样本时Oi值为1,当样本i属于负样本时Oi值为0,N表示所有样本的总数,Sigmoid(Ci)表示置信度的预测值,即为模型中正样本在预测样本i中出现的概率;
计算真实框和预测框之间重叠部分的面积Sd:
寻找真实框和与预测框的最小外接矩形,并计算两矩形框最小外接矩形的面积Sc为:
计算预测框和真实框的交并比IOU为:
计算得到回归损失函数为:
式中:Sc表示真实框和预测框最小外接矩形的面积,U表示真实框和预测框并集的面积。
本实施例通过对缺陷位置回归损失使用GIOU损失,克服了现有网络回归损失函数只关注重叠部分而无法回归预测框与真实框不相交的情况,提升了缺陷检测精度。
进一步的,在使用产品缺陷检测数据集的训练集对所构建的算法网络模型进行训练的步骤中,使用改进的目标检测算法网络模型及参数对验证集进行预测得到预测结果,对预测结果用GIOU-NMS(非极大值抑制)模块进行后处理得到输出,基于输出计算训练好的改进的目标检测算法网络模型的检测精度和平均精度均值,记录检测结果;
一种基于机器视觉的产品可视缺陷检测***,用于执行如前述的基于机器视觉的产品可视缺陷检测方法,请参阅附图4,包括:
图像获取模块1,用于获取产品表面图像,并将产品表面图像输入至特征提取网络模型获得产品特征;
缺陷分析模块2,输入产品特征至缺陷检测网络模型进行缺陷检测,确定缺陷类别以及相应的缺陷数量;
数据送显模块3,输出显示缺陷产品的缺陷类别以及相应的缺陷数量。
优选地,本实施例将拍摄的产品表面图像分发到检测***中的多个运算服务器中,各个服务器中部署的模型会对输入的产品表面图像自动识别出图像上的各类缺陷并生成产品所有的缺陷类别以及相应的缺陷数量,这样做可以在极短时间(数秒内)完成产品的可视缺陷检测工作。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,熟悉该本领域的技术人员应该明白本发明包括但不限于附图和上面具体实施方式中描述的内容。任何不偏离本发明的功能和结构原理的修改都将包括在权利要求书的范围中。
Claims (10)
1.一种基于机器视觉的产品可视缺陷检测方法,其特征在于,包括以下步骤:
获取产品表面图像;
将所述产品表面图像输入至特征提取网络模型获得产品特征;
输入所述产品特征至缺陷检测网络模型进行缺陷检测并输出缺陷检测结果;
其中,所述缺陷检测网络模型通过如下步骤获得:记录产品表面图像上的缺陷信息,根据所述缺陷信息构建产品缺陷检测数据集,所述产品缺陷检测数据集包括训练集和验证集;利用所述产品缺陷检测数据集训练和验证深度学习模型,得到所述缺陷检测网络模型。
2.如权利要求1所述的一种基于机器视觉的产品可视缺陷检测方法,其特征在于,将产品表面图像输入至特征提取网络模型获得产品特征具体包括:
将所述产品表面图像输入至所述特征提取网络模型获取特征图,所述特征图为至少一个产品特征的集合,所述特征提取网络模型包括残差网络模型和瓶颈层。
3.如权利要求2所述的一种基于机器视觉的产品可视缺陷检测方法,其特征在于,将所述产品表面图像输入至所述表面特征提取网络模型获取特征图具体包括:
在特征提取网络模型中建立Focus模块,将所述产品表面图像输入Focus模块,进行切片操作;
将切片操作后得到的图片在特征提取网络模型中经过卷积操作,得到二倍下采样特征图。
4.如权利要求1所述的一种基于机器视觉的产品可视缺陷检测方法,其特征在于,
根据所述缺陷信息构建产品缺陷检测数据集的步骤包括:
针对所述产品表面图像是否含有缺陷进行标记;
将所标记的含有缺陷目标的图片分类,记录所有缺陷目标的真实边框位置、类别信息;
针对不同类别的缺陷,构建不同的产品缺陷检测数据集,最后按照一定比例将所述产品缺陷检测数据集划分为训练集和验证集。
5.如权利要求3所述的一种基于机器视觉的产品可视缺陷检测方法,其特征在于,
利用所述产品缺陷检测数据集训练和验证深度学习模型的步骤包括:
(1)构建算法网络模型,包括:构建主干特征提取网络,并将该主干网络预先在公开的ImageNet图像数据集上进行分类任务预训练,保存预训练网络模型和模型权重文件;
(2)构建跨阶段部分网络;
(3)构建特征聚合网络,在特征聚合网络的每一个卷积层后,添加交叉小批量归一化,激活函数Mish,组成卷积模块;
(4)使用所述产品缺陷检测数据集的训练集对所构建的算法网络模型进行训练。
6.如权利要求5所述的一种基于机器视觉的产品可视缺陷检测方法,其特征在于,
所述跨阶段部分网络包括:将所述主干特征提取网络得到的特征图拆成两个部分,分别记为主干部分和分支部分,主干部分经过若干个卷积层后送入SPP模块,将所得到的特征图层进行拼接操作,再经过若干个卷积层后,主干部分卷积操作的结果与分支部分进行连接。
7.如权利要求5所述的一种基于机器视觉的产品可视缺陷检测方法,其特征在于,
在使用所述产品缺陷检测数据集的训练集对所构建的算法网络模型进行训练的步骤中,加入损失函数,所述损失函数包括回归损失函数、类别损失函数、置信度损失函数;其中,对缺陷位置回归损失函数使用GIOU损失,对缺陷类别损失函数和置信度损失函数使用二值交叉熵损失函数;计算出总的损失值后进行误差反向传播,使用交叉小批量归一化和激活函数Mish,并保存所有训练中验证集中平均精度均值最高的模型,得到训练好的改进的目标检测算法网络模型。
8.如权利要求7所述的一种基于机器视觉的产品可视缺陷检测方法,其特征在于,
所述总的损失值的计算方法为:
L=γ1Lcls+γ2Lobj+γ3Lbox
其中,Lcls表示类别损失函数,γ1表示类别损失函数的权重值,Lobj表示置信度损失函数,γ2表示置信度损失函数的权重值,Lbox表示回归损失函数,γ3表示回归损失函数的权重值;
计算类别损失函数式中:Oij表示类别的真实值,即当样本i内不包含第j类目标时Oij值为0,当样本i内包含第j类目标时Oij值为1,Npos表示所有正样本的总数,pos表示目标物体的位置,cla表示目标物体的类别,Sigmoid(Cij)表示类别的预测值,即为模型中第j类目标在预测样本i中出现的概率;
计算置信度损失函数式中:Oi表示置信度的真实值,即当样本i属于正样本时Oi值为1,当样本i属于负样本时Oi值为0,N表示所有样本的总数,Sigmoid(Ci)表示置信度的预测值,即为模型中正样本在预测样本i中出现的概率;
计算真实框和预测框之间重叠部分的面积Sd:
寻找真实框和与预测框的最小外接矩形,并计算两矩形框最小外接矩形的面积Sc为:
计算预测框和真实框的交并比IOU为:
计算得到回归损失函数为:
式中:Sc表示真实框和预测框最小外接矩形的面积,U表示真实框和预测框并集的面积。
10.一种基于机器视觉的产品可视缺陷检测***,用于执行如权利要求1至9任一项所述的基于机器视觉的产品可视缺陷检测方法,其特征在于,包括:
图像获取模块,用于获取产品表面图像,并将产品表面图像输入至特征提取网络模型获得产品特征;
缺陷分析模块,输入所述产品特征至缺陷检测网络模型进行缺陷检测,确定缺陷类别以及相应的缺陷数量;
数据送显模块,输出显示所述缺陷产品的缺陷类别以及相应的缺陷数量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211738497.8A CN116071315A (zh) | 2022-12-31 | 2022-12-31 | 一种基于机器视觉的产品可视缺陷检测方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211738497.8A CN116071315A (zh) | 2022-12-31 | 2022-12-31 | 一种基于机器视觉的产品可视缺陷检测方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116071315A true CN116071315A (zh) | 2023-05-05 |
Family
ID=86183175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211738497.8A Pending CN116071315A (zh) | 2022-12-31 | 2022-12-31 | 一种基于机器视觉的产品可视缺陷检测方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116071315A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117078689A (zh) * | 2023-10-17 | 2023-11-17 | 沈阳宏远电磁线股份有限公司 | 一种基于机器视觉的线缆缺陷识别方法及*** |
CN117095187A (zh) * | 2023-10-16 | 2023-11-21 | 四川大学 | 元学习视觉语言理解与定位方法 |
CN117974634A (zh) * | 2024-03-28 | 2024-05-03 | 南京邮电大学 | 一种基于证据深度学习的无锚框表面缺陷可信检测方法 |
-
2022
- 2022-12-31 CN CN202211738497.8A patent/CN116071315A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117095187A (zh) * | 2023-10-16 | 2023-11-21 | 四川大学 | 元学习视觉语言理解与定位方法 |
CN117095187B (zh) * | 2023-10-16 | 2023-12-19 | 四川大学 | 元学习视觉语言理解与定位方法 |
CN117078689A (zh) * | 2023-10-17 | 2023-11-17 | 沈阳宏远电磁线股份有限公司 | 一种基于机器视觉的线缆缺陷识别方法及*** |
CN117078689B (zh) * | 2023-10-17 | 2024-01-30 | 沈阳宏远电磁线股份有限公司 | 一种基于机器视觉的线缆缺陷识别方法及*** |
CN117974634A (zh) * | 2024-03-28 | 2024-05-03 | 南京邮电大学 | 一种基于证据深度学习的无锚框表面缺陷可信检测方法 |
CN117974634B (zh) * | 2024-03-28 | 2024-06-04 | 南京邮电大学 | 一种基于证据深度学习的无锚框表面缺陷可信检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109584248B (zh) | 基于特征融合和稠密连接网络的红外面目标实例分割方法 | |
CN111553929B (zh) | 基于融合网络的手机屏幕缺陷分割方法、装置及设备 | |
KR102166458B1 (ko) | 인공신경망 기반의 영상 분할을 이용한 불량 검출 방법 및 불량 검출 장치 | |
CN108074231B (zh) | 一种基于卷积神经网络的磁片表面缺陷检测方法 | |
CN111080693A (zh) | 一种基于YOLOv3的机器人自主分类抓取方法 | |
CN116071315A (zh) | 一种基于机器视觉的产品可视缺陷检测方法及*** | |
CN110020658B (zh) | 一种基于多任务深度学习的显著目标检测方法 | |
WO2024002187A1 (zh) | 缺陷检测方法、缺陷检测设备及存储介质 | |
CN115830004A (zh) | 表面缺陷检测方法、装置、计算机设备和存储介质 | |
CN115775236A (zh) | 基于多尺度特征融合的表面微小缺陷视觉检测方法及*** | |
WO2020259416A1 (zh) | 图像采集控制方法、装置、电子设备及存储介质 | |
CN113780423A (zh) | 一种基于多尺度融合的单阶段目标检测神经网络及工业品表面缺陷检测模型 | |
CN112686896B (zh) | 基于分割网络的频域空间结合的玻璃缺陷检测方法 | |
CN106682604B (zh) | 一种基于深度学习的模糊图像检测方法 | |
CN111881914A (zh) | 一种基于自学习阈值的车牌字符分割方法及*** | |
CN116740572A (zh) | 一种基于改进yolox的海上船舰目标检测方法和*** | |
CN116152685A (zh) | 一种基于无人机视野下行人检测方法及*** | |
CN116228637A (zh) | 基于多任务多尺寸网络的电子元器件缺陷识别方法及装置 | |
CN116188361A (zh) | 一种基于深度学习的铝型材表面缺陷分类方法及装置 | |
Nguyen et al. | Detection of weak micro-scratches on aspherical lenses using a Gabor neural network and transfer learning | |
CN113642473A (zh) | 一种基于计算机视觉的矿下煤机状态识别方法 | |
CN114219758A (zh) | 缺陷检测方法、***、电子设备和计算机可读存储介质 | |
CN114596244A (zh) | 基于视觉处理和多特征融合的红外图像识别方法及*** | |
CN113034432A (zh) | 一种产品缺陷检测方法、***、装置及存储介质 | |
Sarı et al. | Deep learning application in detecting glass defects with color space conversion and adaptive histogram equalization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |