CN111932489B - 焊缝缺陷检测方法、系统、存储介质、计算机设备、终端 - Google Patents
焊缝缺陷检测方法、系统、存储介质、计算机设备、终端 Download PDFInfo
- Publication number
- CN111932489B CN111932489B CN202010496968.3A CN202010496968A CN111932489B CN 111932489 B CN111932489 B CN 111932489B CN 202010496968 A CN202010496968 A CN 202010496968A CN 111932489 B CN111932489 B CN 111932489B
- Authority
- CN
- China
- Prior art keywords
- picture
- defect
- training
- defect detection
- weld
- 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.)
- Active
Links
- 230000007547 defect Effects 0.000 title claims abstract description 190
- 238000001514 detection method Methods 0.000 title claims abstract description 66
- 238000003860 storage Methods 0.000 title claims abstract description 8
- 238000012549 training Methods 0.000 claims abstract description 80
- 238000000034 method Methods 0.000 claims abstract description 40
- 238000003708 edge detection Methods 0.000 claims abstract description 21
- 230000009466 transformation Effects 0.000 claims abstract description 20
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 18
- 238000012360 testing method Methods 0.000 claims description 37
- 238000007781 pre-processing Methods 0.000 claims description 17
- 238000006243 chemical reaction Methods 0.000 claims description 13
- 230000008859 change Effects 0.000 claims description 11
- WFKWXMTUELFFGS-UHFFFAOYSA-N tungsten Chemical compound [W] WFKWXMTUELFFGS-UHFFFAOYSA-N 0.000 claims description 10
- 229910052721 tungsten Inorganic materials 0.000 claims description 10
- 239000010937 tungsten Substances 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 claims description 7
- 238000010606 normalization Methods 0.000 claims description 5
- 238000013528 artificial neural network Methods 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 4
- 238000005336 cracking Methods 0.000 claims description 4
- 230000011218 segmentation Effects 0.000 claims description 4
- 238000005520 cutting process Methods 0.000 claims description 3
- 238000000638 solvent extraction Methods 0.000 claims description 3
- 238000009776 industrial production Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 6
- 230000002950 deficient Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 238000003466 welding Methods 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011478 gradient descent method Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000007797 corrosion Effects 0.000 description 1
- 238000005260 corrosion Methods 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000002779 inactivation Effects 0.000 description 1
- 230000005764 inhibitory process Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 239000011148 porous material Substances 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
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/0008—Industrial image inspection checking presence/absence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/90—Dynamic range modification of images or parts thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/136—Segmentation; Edge detection involving thresholding
-
- 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
-
- 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/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- 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/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30152—Solder
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明属于图像检测技术领域,公开了一种焊缝缺陷检测方法、系统、存储介质、计算机设备、终端,对图片进行预处理,减少噪声,提高图片对比度通过分析图片特点,提取预处理后的图片特征,并通过训练SVM分类器得到训练模型来判断缺陷的有无;基于canny算子的边缘检测方法检测出缺陷,并运用自适应阈值的方法对缺陷区域进行分割;对缺陷图片运用Seam‑Carving算法进行非等比例变换,得到规格一致的图片;自定义卷积神经网络,通过输入缺陷图片,训练模型,并最终得到训练好的网络,用于缺陷识别。本发明能够充分利用焊缝图像的缺陷信息,提高了工业生产中焊缝缺陷检测的准确率及效率。
Description
技术领域
本发明属于图像检测技术领域,尤其涉及一种焊缝缺陷检测方法、系统、存储介质、计算机设备、终端。
背景技术
近几年来随着工业技术的发展,产品生产效率越来越高,由于环境和焊接工艺的影响,在工业生产过程中会出现各种各样的缺陷,比如夹钨、裂纹、气孔等,这些缺陷不仅影响产品的美观,更重要的是影响产品的使用寿命,甚至造成极其严重的后果。为确保焊缝质量,对焊缝的质量检测是必不可少的。在实际生产中由于焊接材料的多样性及焊缝缺陷的多样性,主要采用人工检测的方法来判断X射线成像的图像中是否存在缺陷。但人工检存在很大的局限性。不仅在检测速度上比较慢,更是由于人工检测通常是依靠主观意识来对产品进行缺陷有无的判断,导致产品检测结果不稳定,造成产品质量参差不齐。
目前存在一些用于工业焊缝图像的自动识别与分类方法,如专利“一种基于深度学习的焊缝及焊缝缺陷检测方法”中直接定义深度学习网络自动对焊缝和缺陷进行特征提取及参数更新,实现了对多种缺陷的自动检测。该方法采用YOLOV3网络,利用定位框对焊缝缺陷进行框选、标记缺陷类型,作为训练数据集,结合梯度下降法调节权重和偏重值,得到训练好的网络;但由于对图片质量要求较高存在适应性不强的问题。专利“用于工业射线焊缝图像的缺陷检测方法”中,首先对焊缝图像进行预处理,接着取傅里叶变换幅度谱第一象限部分作为图像特征数据,最后将特征数据输入分类器,进行参数的训练并获得最终分类结果。但是通常不同缺陷的图像特征存在差异,不具有普适性。
通过上述分析,现有技术存在的问题及缺陷为:目前用于工业焊缝图像的自动识别与分类方法存在对图片质量要求较高存在适应性不强,不具有普适性。
解决以上问题及缺陷的难度为:
1.本文所要解决的是多背景、多尺寸下的焊缝缺陷图像问题,由于背景复杂,所以选用预处理算法需具有普遍性且效果要有保障,此是本文所要解决的难点之一;
2.对于缺陷区域检测过程中存在的漏检和误检问题,如何对边缘检测算法进行修正以保证准确率,此是本文所要解决的难点之一;
3.对于进行识别训练前的图像尺寸归一化问题,如何保证重要区域不发生较明显特征变化问题,此是本文所要解决的难点之一。
解决以上问题及缺陷的意义为:
1.对于多背景、多尺寸下的焊缝缺陷图像预处理,提供了一种自适应对比度增强的方法,能够有效适应多种背景和尺寸下的图像处理;;
2.对于实际生产中存在的有缺陷图片和无缺陷图片随机出现,以及漏检和误检问题,提出了一种基于边缘检测和分类器相结合的方法,能有效提高检测准确率;
3.对于图像尺寸变换中存在的特征变化问题,提出了一种基于等比例变换和非等比例变换相结合的方法,能有效保证图像中重要特征保持不变。
发明内容
针对现有技术存在的问题,本发明提供了一种焊缝缺陷检测方法、系统、存储介质、计算机设备、终端。
本发明是这样实现的,一种焊缝缺陷检测方法,所述焊缝缺陷检测方法包括:
第一步,对图片进行预处理;
第二步,通过分析图片特点,提取预处理后的图片特征,并通过训练SVM分类器得到训练模型来判断缺陷的有无;
第三步,基于canny算子的边缘检测方法检测出缺陷,并运用自适应阈值的方法对缺陷区域进行分割;
第四步,对缺陷图片运用Seam-Carving算法进行非等比例变换,得到规格一致的图片;
第五步,自定义卷积神经网络,通过输入缺陷图片,训练模型,并最终得到训练好的网络,用于缺陷识别。
进一步,所述第一步还包括:将图片分为无缺陷、夹钨、裂纹、气孔四个文件夹,并分别设置测试数据集和训练数据集;
对训练数据集中的图片进行旋转、镜像、添加噪声、微变形处理,生成多幅类似图像;
把扩展后的训练数据集输入到图像预处理程序中,得到预处理后的训练数据集;
把预处理后的训练数据集进行特征提取,并把数据保存到.csv文件中,每张图片的特征数据为一行,.csv文件第一列为该图片的真实标签,第二至四列该图片的特征数据;
导入基本SVM模型,读取.csv文件,并进行训练,程序会自动划分训练集和测试集,并计算准确率,最终得到.m模型文件,此文件用于对有无缺陷进行划分。
进一步,所述第二步还包括:运行缺陷检测代码,运用边缘检测、自适应阈值算法和连续边缘检测算法可切割出缺陷区域,对缺陷图片进行分类和重命名,分为夹钨、裂纹、气孔三个文件夹,每个文件夹中的图片命名从1开始,同时划分训练数据集和测试数据集。
进一步,所述第三步还包括:运行图片尺寸归一化代码,对上一步骤得到的训练数据集和测试数据集图片进行处理,若图片尺寸任意一边大于60,先进行等比例变换,把图片较长的一遍缩小至50,然后再进行非等比例变换,把图片变为50*50大小;若图片尺寸任意一遍均小于60,则直接进行非等比例变换至50*50大小;命名及图片类型划分规则不变得到图片尺寸均为50*50的新的测试数据集和训练数据集。
进一步,所述第四步还包括:进行网络初始化,把上一步骤得到的训练数据集变成张量输入到已定义好的神经网络中,得到预测结果,网络自动进行迭代更新,直至达到训练次数或达到损失函数精度要求停止,并得到.meta模型文件;
得到的测试数据集变成张量输入到.meta模型文件中,计算分类准确率,如达到要求则选用该模型,否则重新训练模型。
进一步,所述第五步还包括:依次添加图片预处理代码、导入训练好的SVM模型、添加缺陷检测代码、导入卷积神经网络模型使其合并成一个代码,把测试数据集输入到该合成代码中,最终得到切割出来的缺陷图片以及缺陷分类结果。
本发明的另一目的在于提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:
第一步,对图片进行预处理;
第二步,通过分析图片特点,提取预处理后的图片特征,并通过训练SVM分类器得到训练模型来判断缺陷的有无;
第三步,基于canny算子的边缘检测方法检测出缺陷,并运用自适应阈值的方法对缺陷区域进行分割;
第四步,对缺陷图片运用Seam-Carving算法进行非等比例变换,得到规格一致的图片;
第五步,自定义卷积神经网络,通过输入缺陷图片,训练模型,并最终得到训练好的网络,用于缺陷识别。
本发明的另一目的在于提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
第一步,对图片进行预处理;
第二步,通过分析图片特点,提取预处理后的图片特征,并通过训练SVM分类器得到训练模型来判断缺陷的有无;
第三步,基于canny算子的边缘检测方法检测出缺陷,并运用自适应阈值的方法对缺陷区域进行分割;
第四步,对缺陷图片运用Seam-Carving算法进行非等比例变换,得到规格一致的图片;
第五步,自定义卷积神经网络,通过输入缺陷图片,训练模型,并最终得到训练好的网络,用于缺陷识别。
本发明的另一目的在于提供一种实施所述焊缝缺陷检测方法的焊缝缺陷检测系统,所述焊缝缺陷检测系统包括:
图片预处理模块,用于对图片进行预处理;
训练模块判断模块,用于通过分析图片特点,提取预处理后的图片特征,并通过训练SVM分类器得到训练模型来判断缺陷的有无;
缺陷区域分割模块,用于基于canny算子的边缘检测方法检测出缺陷,并运用自适应阈值的方法对缺陷区域进行分割;
缺陷图片变换模块,用于对缺陷图片运用Seam-Carving算法进行非等比例变换,得到规格一致的图片;
缺陷识别模块,用于自定义卷积神经网络,通过输入缺陷图片,训练模型,并最终得到训练好的网络,用于缺陷识别。
本发明的另一目的在于提供一种焊缝缺陷检测终端,所述焊缝缺陷检测终端搭载所述的焊缝缺陷检测系统。
结合上述的所有技术方案,本发明所具备的优点及积极效果为:本发明根据焊缝缺陷检测过程中,因角度问题、图片质量问题、缺陷形状不一等问题,基于多种机器学习算法相结合,进行焊缝内缺陷检测;涉及图像识别领域中基于卷积神经网络CNN(Convolutional Neural Networks)模型的缺陷检测目标检测方法;可用于从焊缝照片中检测出有缺陷的部分。
与现有技术相比,本发明具有以下优势:
(1)本发明由于搭建一个由边缘检测算法与分离器相结合的图像缺陷区域提取算法,克服了现有技术中由于背景环境复杂所造成的伪缺陷区域问题,使得本发明能够对图像焊缝缺陷区域进行实时监测;。
(2)本发明由于使用基于最小能量线删除或增加的非等比例尺寸变换算法,克服了现有技术中进行图像变换时图片重要特征发生巨大变化的问题,实现了图像尺寸归一化的需求;
(3)本发明由于搭建一个3层卷积层、3层全连接层的卷积神经网络模型,并且设计神经元随机失活算法,克服了现有技术中小样本训练的过拟合问题,实现了对于算法分类器精准度的提升。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图做简单的介绍,显而易见地,下面所描述的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的焊缝缺陷检测方法流程图。
图2是本发明实施例提供的焊缝缺陷检测系统的结构示意图;
图中:1、图片预处理模块;2、训练模块判断模块;3、缺陷区域分割模块;4、缺陷图片变换模块;5、缺陷识别模块。
图3是本发明实施例提供的焊缝缺陷检测方法的实现流程图。
图4是本发明实施例提供的焊缝及缺陷示意图。
图5是本发明实施例提供的焊缝缺陷标记示意图。
图6是本发明实施例提供的裂纹尺寸归一化对比图。
图中:(a)原图;(b)比例变换。
图7是本发明实施例提供的气孔尺寸归一化对比图。
图中:(a)原图;(b)尺寸变换。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有技术存在的问题,本发明提供了一种焊缝缺陷检测方法、系统、存储介质、计算机设备、终端,下面结合附图对本发明作详细的描述。
如图1所示,本发明提供的焊缝缺陷检测方法包括以下步骤:
S101:对图片进行预处理,减少噪声,提高图片对比度;
S102:通过分析图片特点,提取预处理后的图片特征,并通过训练SVM分类器得到训练模型来判断缺陷的有无;
S103:基于canny算子的边缘检测方法检测出缺陷,并运用自适应阈值的方法对缺陷区域进行分割;
S104:对缺陷图片运用Seam-Carving算法进行非等比例变换,得到规格一致的图片;
S105:自定义卷积神经网络,通过输入缺陷图片,训练模型,并最终得到训练好的网络,用于缺陷识别。
在本发明中,步骤S101还包括:将图片分为无缺陷、夹钨、裂纹、气孔四个文件夹,并分别设置测试数据集和训练数据集。
对训练数据集中的图片进行旋转、镜像、添加噪声、微变形处理,生成多幅类似图像,增加训练样本的数量。
把扩展后的训练数据集输入到图像预处理程序中,得到预处理后的训练数据集。
把预处理后的训练数据集进行特征提取,并把数据保存到.csv文件中,每张图片的特征数据为一行,.csv文件第一列为该图片的真实标签,第二至四列该图片的特征数据。
导入基本SVM模型,读取.csv文件,并进行训练,程序会自动划分训练集和测试集,并计算准确率,最终得到.m模型文件,此文件用于对有无缺陷进行划分。
在本发明中,步骤S102还包括:运行缺陷检测代码,运用边缘检测、自适应阈值算法和连续边缘检测算法可切割出缺陷区域,对缺陷图片进行分类和重命名,分为夹钨、裂纹、气孔三个文件夹,每个文件夹中的图片命名从1开始,同时划分训练数据集和测试数据集。
在本发明中,步骤S103还包括:运行图片尺寸归一化代码,对上一步骤得到的训练数据集和测试数据集图片进行处理,若图片尺寸任意一边大于60,先进行等比例变换,把图片较长的一遍缩小至50,然后再进行非等比例变换,把图片变为50*50大小;若图片尺寸任意一遍均小于60,则直接进行非等比例变换至50*50大小;命名及图片类型划分规则不变得到图片尺寸均为50*50的新的测试数据集和训练数据集。
在本发明中,步骤S104还包括:进行网络初始化,把上一步骤得到的训练数据集变成张量输入到已定义好的神经网络中,得到预测结果,网络自动进行迭代更新,直至达到训练次数或达到损失函数精度要求停止,并得到.meta模型文件。
得到的测试数据集变成张量输入到.meta模型文件中,计算分类准确率,如达到要求则选用该模型,否则重新训练模型。
在本发明中,步骤S105还包括:依次添加图片预处理代码、导入训练好的SVM模型、添加缺陷检测代码、导入卷积神经网络模型使其合并成一个代码,把测试数据集输入到该合成代码中,最终得到切割出来的缺陷图片以及缺陷分类结果。
如图2所示,本发明提供的焊缝缺陷检测系统包括:
图片预处理模块1,用于对图片进行预处理,减少噪声,提高图片对比度;
训练模块判断模块2,用于通过分析图片特点,提取预处理后的图片特征,并通过训练SVM分类器得到训练模型来判断缺陷的有无;
缺陷区域分割模块3,用于基于canny算子的边缘检测方法检测出缺陷,并运用自适应阈值的方法对缺陷区域进行分割;
缺陷图片变换模块4,用于对缺陷图片运用Seam-Carving算法进行非等比例变换,得到规格一致的图片;
缺陷识别模块5,用于自定义卷积神经网络,通过输入缺陷图片,训练模型,并最终得到训练好的网络,用于缺陷识别。
下面结合附图对本发明的技术方案作进一步的描述。
如图3所示,本发明提供的焊缝缺陷检测方法包括以下步骤:
(1)将图片进行分类并标记,分为有缺陷和无缺陷两类作为训练数据集和测试数据集;
(2)根据分析噪声来源,以及多种滤波算法滤波之后图片的信噪比分析,选用中值滤波算法,为了减少无关重要的缺陷对后续步骤的干扰进行腐蚀操作,去掉较小的缺陷区域,之后采用膨胀操作还原其他缺陷原本状况;
(3)将图片进行灰度化,同时对图片进行线性直方图增强操作,扩大灰度图像素值区域;
(4)对训练数据集中的图片进行特征提取,以数据形式表现出来,同时把每一张图片标签与其特征数据放在同一行,作为训练数据;
(5)导入特征划分基于基尼指数的基本SVM模型,从数据集中分别导入标签和特征,并随机选取百分之三十的数据作为测试集,其余为训练集,把数据送入基本SVM模型中,迭代更新基本SVM模型内的参数,保存参数更新后的SVM模型,同时把测试集输入到训练后的模型得到分类正确率,如满足需要停止训练,否则重新训练模型;
(6)采用canny边缘检测算法找寻一幅图像中灰度强度变化最强的位置,非极大抑制将模糊的边界变得清楚,即保留每个像素点上梯度强度的极大值,而删掉其他的值,通过双阈值的技术强边界和弱边界,和强边界相连接的弱边界认为是边界,其他的弱边界被抑制
(7)运用自适应阈值的方法对二值图边界进行调整,使不连续边界连接起来,形成封闭区域,再采用连续连续边缘检测的方法对其进行只检测外轮廓,获取缺陷区域的最外边缘坐标点;
(8)判断图片大小,若小于需求图片则进行非等比例变换,增加能量值最低的行和列,若大于需求图片则先进行等比例缩小,再根据需要增加能量值最低的行和列;
(9)非等比例变换需要计算每个像素的能量值,寻找最小能量线,增加或删除最小能量线,重复上述程序,直至达到图片尺寸需求;
(10)将图像尺寸归一化后的缺陷图片进行分类、重命名,并分为训练集和测试集;
(11)初始化卷积神经网络的权重w、偏置b、学习率,将训练集图片按照要求转化为输入张量;
(12)卷积网络利用输入张量进行计算,得到输出结果,利用该结果计算预测结果的误差函数loss;
(13)结合梯度下降法调节权重w和偏置b,再次随机调取输入张量在网络中进行计算,求取预测的误差函数loss。如上述所述循环,直至达到最大训练次数或者达到误差函数的精度,输出训练好的网络模型;
(14)利用测试集进行测试,所述测试集为与训练集图片采用相同处理方式后得到的缺陷图片,训练集数量占比为70%,测试集占比为30%;
(15)所述测试集图片输入到训练好的网络模型中,评估输出结果的正确率是否达到预设值,达到则保留该模型,否则修改神经网络及参数,重新训练;
(16)所述卷积神经网络包括3个卷积层和3个全连接层,采用3×3卷积核,每卷积层之间是有激活函数,提高网络模型的非线性表达能力;同时加入池化层,对特征进行降维和抽象。全连接层之间有dropout层,用以防止深度学习训练的过拟合;
(17)把程序串联起来,并输入焊缝图片的测试集,得到测试结果,并与标签相比对,计算检测正确率。
证明1:加入有无缺陷判断的必要性
对比没有加入有无缺陷判断的检测,加入有无缺陷判断这一步骤可以提高准确率。以2000张图片进行加入有无缺陷判断后算法性能测试,其中1000张为随机缺陷图像,1000张为无缺陷图像,其性能如表1所示。
表1性能比较
样本类型 | 准确率 | 平均运行时间 |
加入有无缺陷判断判断 | 98.75% | 0.058s |
不加入有无缺陷判断判断 | 61.20% | 0.047s |
从表1看出,加入有无缺陷判断这一过程,准确率有较大的提高,分析认为是由于虽然无缺陷图像内部没有剧烈的梯度变化,但也存在较明显的梯度变化,再加上算法对变化比较敏感,运用Canny边缘检测时,从无缺陷图像误切割处缺陷区域所致。同时运行时间增加较少,虽然牺牲约20%的运算速度,但相对于准确率提高30%以上,本文认为代价可以接受。运用测试数据来计算分类结果准确率,多次验证,准确率在98%及以上,能够准确的完成正确缺陷区域图像的分类,符合实际需求。
证明2:非等比例尺寸变换的效果
对于图像缩小,在上文分析可知,主要是针对裂纹缺陷,首先对缺陷进行等比例变化在此基础上再对其进行非等比例变换,其效果如图6所示。
对于图像放大,在上文分析可知,主要针对夹钨和气孔,其尺寸通常小于要归一化的尺寸,可直接用非等比例变换对其进行处理,其效果图如图7所示。
从上图可以看出,对于运用非等比例变换实现的缩小和放大,图像中缺陷的基本形状,保持不变,目标保持比较完整,基本特征保持完整,对后续的卷积网络模型分类影响不大。
证明3:整体代码对缺陷检测的性能
为了对整体流程的情况有所掌控,现在整合图像预处理、缺陷检测、缺陷识别这三个过程,对代码进行整体测试。
取2000张图片,夹钨缺陷、裂纹缺陷、气孔缺陷各有500张图片,无缺陷有500张图片。在对样本进行标注时,以“0”标签代表夹钨缺陷,“1”代表裂纹缺陷,“2”代表气孔缺陷。
表2整体代码识别结果
样本类型 | 测试样本准确率 | 平均运行时间 | 标签值 |
夹钨 | 96.60% | 0.23s | 0 |
裂纹 | 96.20% | 0.79s | 1 |
气孔 | 97.40% | 0.16s | 2 |
无缺陷 | 99.40% | 0.09s |
从表2中可以看出,虽然对比缺陷检测单个过程中的准确率,整体流程的准确率有所降低,但本文算法在测试样本的识别精度为95%以上,同时对于代码运行时间,夹钨缺陷和气孔缺陷的检测控制在0.3s以内,裂纹缺陷的检测也平均在0.8s,具有实际使用价值。
应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。
Claims (7)
1.一种焊缝缺陷检测方法,其特征在于,所述焊缝缺陷检测方法包括:
第一步,对图片进行预处理;
第二步,通过分析图片特点,提取预处理后的图片特征,并通过训练SVM分类器得到训练模型来判断缺陷的有无;
第三步,基于canny算子的边缘检测方法检测出缺陷,并运用自适应阈值的方法对缺陷区域进行分割;
第四步,对缺陷图片运用Seam-Carving算法进行非等比例变换,得到规格一致的图片;
第五步,自定义卷积神经网络,通过输入缺陷图片,训练模型,并最终得到训练好的网络,用于缺陷识别;
所述第一步还包括:将图片分为无缺陷、夹钨、裂纹、气孔四个文件夹,并分别设置测试数据集和训练数据集;
对训练数据集中的图片进行旋转、镜像、添加噪声、微变形处理,生成多幅类似图像;
把扩展后的训练数据集输入到图像预处理程序中,得到预处理后的训练数据集;
把预处理后的训练数据集进行特征提取,并把数据保存到.csv文件中,每张图片的特征数据为一行,.csv文件第一列为该图片的真实标签,第二至四列该图片的特征数据;
导入基本SVM模型,读取.csv文件,并进行训练,程序会自动划分训练集和测试集,并计算准确率,最终得到.m模型文件,此文件用于对有无缺陷进行划分;
所述第二步还包括:运行缺陷检测代码,运用边缘检测、自适应阈值算法和连续边缘检测算法可切割出缺陷区域,对缺陷图片进行分类和重命名,分为夹钨、裂纹、气孔三个文件夹,每个文件夹中的图片命名从1开始,同时划分训练数据集和测试数据集;
所述第三步还包括:运行图片尺寸归一化代码,对上一步骤得到的训练数据集和测试数据集图片进行处理,若图片尺寸任意一边大于60,先进行等比例变换,把图片较长的一遍缩小至50,然后再进行非等比例变换,把图片变为50*50大小;若图片尺寸任意一遍均小于60,则直接进行非等比例变换至50*50大小;命名及图片类型划分规则不变得到图片尺寸均为50*50的新的测试数据集和训练数据集。
2.如权利要求1所述的焊缝缺陷检测方法,其特征在于,所述第四步还包括:进行网络初始化,把上一步骤得到的训练数据集变成张量输入到已定义好的神经网络中,得到预测结果,网络自动进行迭代更新,直至达到训练次数或达到损失函数精度要求停止,并得到.meta模型文件;
得到的测试数据集变成张量输入到.meta模型文件中,计算分类准确率,如达到要求则选用该模型,否则重新训练模型。
3.如权利要求1所述的焊缝缺陷检测方法,其特征在于,所述第五步还包括:依次添加图片预处理代码、导入训练好的SVM模型、添加缺陷检测代码、导入卷积神经网络模型使其合并成一个代码,把测试数据集输入到该合成代码中,最终得到切割出来的缺陷图片以及缺陷分类结果。
4.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1~3任意一项所述焊缝缺陷检测方法。
5.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行权利要求1~3任意一项所述焊缝缺陷检测方法。
6.一种实施权利要求1~3任意一项所述焊缝缺陷检测方法的焊缝缺陷检测系统,其特征在于,所述焊缝缺陷检测系统包括:
图片预处理模块,用于对图片进行预处理;
训练模块判断模块,用于通过分析图片特点,提取预处理后的图片特征,并通过训练SVM分类器得到训练模型来判断缺陷的有无;
缺陷区域分割模块,用于基于canny算子的边缘检测方法检测出缺陷,并运用自适应阈值的方法对缺陷区域进行分割;
缺陷图片变换模块,用于对缺陷图片运用Seam-Carving算法进行非等比例变换,得到规格一致的图片;
缺陷识别模块,用于自定义卷积神经网络,通过输入缺陷图片,训练模型,并最终得到训练好的网络,用于缺陷识别。
7.一种焊缝缺陷检测终端,其特征在于,所述焊缝缺陷检测终端搭载权利要求6所述的焊缝缺陷检测系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010496968.3A CN111932489B (zh) | 2020-06-03 | 2020-06-03 | 焊缝缺陷检测方法、系统、存储介质、计算机设备、终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010496968.3A CN111932489B (zh) | 2020-06-03 | 2020-06-03 | 焊缝缺陷检测方法、系统、存储介质、计算机设备、终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111932489A CN111932489A (zh) | 2020-11-13 |
CN111932489B true CN111932489B (zh) | 2024-02-20 |
Family
ID=73316449
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010496968.3A Active CN111932489B (zh) | 2020-06-03 | 2020-06-03 | 焊缝缺陷检测方法、系统、存储介质、计算机设备、终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111932489B (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112365491A (zh) * | 2020-11-27 | 2021-02-12 | 上海市计算技术研究所 | 容器焊缝检测的方法、电子设备及存储介质 |
CN112651341B (zh) * | 2020-12-28 | 2022-06-07 | 长江大学 | 一种焊管焊缝实时检测视频的处理方法 |
CN113034432B (zh) * | 2021-01-08 | 2023-10-27 | 苏州真目人工智能科技有限公司 | 一种产品缺陷检测方法、系统、装置及存储介质 |
CN112907521B (zh) * | 2021-02-05 | 2022-11-04 | 上海展湾信息科技有限公司 | 基于ssd和glcm的焊接气孔目标检测方法 |
CN112819806B (zh) * | 2021-02-23 | 2024-05-28 | 江苏科技大学 | 一种基于深度卷积神经网络模型的船舶焊缝缺陷检测方法 |
CN113222938A (zh) * | 2021-05-14 | 2021-08-06 | 珠海埃克斯智能科技有限公司 | 芯片缺陷检测方法及系统与计算机可读存储介质 |
CN113255778A (zh) * | 2021-05-28 | 2021-08-13 | 广汽本田汽车有限公司 | 基于多模型融合的焊点质量检测方法、装置及存储介质 |
CN113436162B (zh) * | 2021-06-23 | 2022-12-09 | 湖南国天电子科技有限公司 | 一种水下机器人液压油管道表面焊缝缺陷识别方法及装置 |
CN113436168B (zh) * | 2021-06-25 | 2023-07-18 | 重庆邮电大学 | 一种用于工业焊缝x光图中的裂纹缺陷检测方法 |
CN113379728A (zh) * | 2021-07-02 | 2021-09-10 | 上海电气集团股份有限公司 | 铁轨表面的缺陷检测方法、系统、设备及可读存储介质 |
CN113579545A (zh) * | 2021-08-19 | 2021-11-02 | 航天智造(上海)科技有限责任公司 | 一种智能自决策熔池监测系统 |
CN113781415B (zh) * | 2021-08-30 | 2024-06-07 | 广州大学 | 一种x射线图像的缺陷检测方法、装置、设备及介质 |
CN113780900B (zh) * | 2021-11-09 | 2022-04-12 | 深圳市裕展精密科技有限公司 | 基于边缘计算的焊接检测系统及方法 |
CN114140625A (zh) * | 2022-01-30 | 2022-03-04 | 深圳市博铭维技术股份有限公司 | 管道缺陷检测方法、系统、设备与计算机可读存储介质 |
CN114549472A (zh) * | 2022-02-23 | 2022-05-27 | 天津大学 | 一种基于深度学习的焊缝图像缺陷的检测方法 |
CN115239732B (zh) * | 2022-09-23 | 2022-12-09 | 成都数之联科技股份有限公司 | 点灯机显示不均判断方法、装置、设备及存储介质 |
CN115476109A (zh) * | 2022-09-30 | 2022-12-16 | 嵊州市浙江工业大学创新研究院 | 焊接夹具、可视化焊接缺陷检测系统及自动焊接系统 |
CN115359054B (zh) * | 2022-10-19 | 2023-04-18 | 福建亿榕信息技术有限公司 | 一种基于伪缺陷空间生成的电力设备缺陷检测方法 |
CN116030030B (zh) * | 2023-02-13 | 2023-08-29 | 中建科技集团有限公司 | 一种预制构件的焊缝内外缺陷一体化评估方法 |
CN116823756A (zh) * | 2023-06-25 | 2023-09-29 | 江苏永康机械有限公司 | 一种桩腿焊缝缺陷检测方法 |
CN117036348B (zh) * | 2023-10-08 | 2024-01-09 | 中国石油大学(华东) | 基于图像处理和裂纹识别模型的金属疲劳裂纹检测方法 |
CN118297918A (zh) * | 2024-04-16 | 2024-07-05 | 湖州市测绘院 | 地下排水管道缺陷检测方法、装置及计算机设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106228565A (zh) * | 2016-08-02 | 2016-12-14 | 电子科技大学 | 一种基于x射线图像的输油管道焊缝缺陷检测方法 |
WO2019233166A1 (zh) * | 2018-06-04 | 2019-12-12 | 杭州海康威视数字技术股份有限公司 | 一种表面缺陷检测方法、装置及电子设备 |
CN110570410A (zh) * | 2019-09-05 | 2019-12-13 | 河北工业大学 | 一种自动识别检测焊缝缺陷的检测方法 |
CN110675370A (zh) * | 2019-09-04 | 2020-01-10 | 武汉理工大学 | 一种基于深度学习的焊接模拟器虚拟焊缝缺陷检测方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11078631B2 (en) * | 2017-11-30 | 2021-08-03 | Sperry Rail Holdings, Inc. | System and method for inspecting a rail using machine learning |
-
2020
- 2020-06-03 CN CN202010496968.3A patent/CN111932489B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106228565A (zh) * | 2016-08-02 | 2016-12-14 | 电子科技大学 | 一种基于x射线图像的输油管道焊缝缺陷检测方法 |
WO2019233166A1 (zh) * | 2018-06-04 | 2019-12-12 | 杭州海康威视数字技术股份有限公司 | 一种表面缺陷检测方法、装置及电子设备 |
CN110675370A (zh) * | 2019-09-04 | 2020-01-10 | 武汉理工大学 | 一种基于深度学习的焊接模拟器虚拟焊缝缺陷检测方法 |
CN110570410A (zh) * | 2019-09-05 | 2019-12-13 | 河北工业大学 | 一种自动识别检测焊缝缺陷的检测方法 |
Non-Patent Citations (2)
Title |
---|
刘涵 ; 郭润元 ; .基于X射线图像和卷积神经网络的石油钢管焊缝缺陷检测与识别.仪器仪表学报.2018,(第04期),全文. * |
秦颖 ; 李鹏 ; 李居尚 ; .基于深度学习的电路板焊接异常检测算法研究.电子器件.2020,(第02期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111932489A (zh) | 2020-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111932489B (zh) | 焊缝缺陷检测方法、系统、存储介质、计算机设备、终端 | |
EP3379491B1 (en) | Surface defect detection | |
CN113724231B (zh) | 一种基于语义分割和目标检测融合模型的工业缺陷检测方法 | |
CN111080620A (zh) | 一种基于深度学习的道路病害检测方法 | |
CN111292305A (zh) | 一种改进型yolo-v3的金属加工表面缺陷检测方法 | |
TW202239281A (zh) | 電子基板缺陷偵測 | |
CN113643228B (zh) | 一种基于改进的CenterNet网络的核电站设备表面缺陷检测方法 | |
CN112561910A (zh) | 一种基于多尺度特征融合的工业表面缺陷检测方法 | |
US10922807B2 (en) | Wafer manufacturing system, device and method | |
CN117173187B (zh) | 一种阀门故障智能检测系统 | |
CN111814852B (zh) | 图像检测方法、装置、电子设备和计算机可读存储介质 | |
CN111178446A (zh) | 一种基于神经网络的目标分类模型的优化方法、装置 | |
CN115690670A (zh) | 一种晶圆瑕疵智能识别方法和系统 | |
CN116228741A (zh) | 一种pcba元器件缺陷检测方法及装置 | |
CN110866931B (zh) | 图像分割模型训练方法及基于分类的强化图像分割方法 | |
CN115170501A (zh) | 缺陷检测方法、系统、电子设备及存储介质 | |
CN109507193A (zh) | 一种基于局部对比度增强与二值模式的织物瑕疵检测方法 | |
CN116977292A (zh) | 一种太阳能电池片虚焊检测方法 | |
CN117576089B (zh) | 一种活塞环缺陷检测方法及系统 | |
CN111191670B (zh) | 基于神经网络的分类装置及分类方法 | |
Dai et al. | Detection and segmentation of image anomalies based on unsupervised defect reparation | |
CN114299040A (zh) | 瓷砖瑕疵检测方法、装置和电子设备 | |
CN112633327B (zh) | 分阶段金属表面缺陷检测方法、系统、介质、设备及应用 | |
CN114387230A (zh) | 一种基于重验证检测的pcb板缺陷检测方法 | |
CN112967239A (zh) | 一种坡口缺陷检测方法、计算设备及可读存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |