CN112016675B - 用于钢板表面缺陷检测的cnn模型训练方法和装置 - Google Patents

用于钢板表面缺陷检测的cnn模型训练方法和装置 Download PDF

Info

Publication number
CN112016675B
CN112016675B CN202010810100.6A CN202010810100A CN112016675B CN 112016675 B CN112016675 B CN 112016675B CN 202010810100 A CN202010810100 A CN 202010810100A CN 112016675 B CN112016675 B CN 112016675B
Authority
CN
China
Prior art keywords
training
neural network
convolutional neural
network model
surface defect
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
Application number
CN202010810100.6A
Other languages
English (en)
Other versions
CN112016675A (zh
Inventor
顾佳晨
高雷
刘路璐
任立辉
蔡红蕾
向江波
樊登旺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Shougang Automation Information Technology Co Ltd
Original Assignee
Beijing Shougang Automation Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Shougang Automation Information Technology Co Ltd filed Critical Beijing Shougang Automation Information Technology Co Ltd
Priority to CN202010810100.6A priority Critical patent/CN112016675B/zh
Publication of CN112016675A publication Critical patent/CN112016675A/zh
Application granted granted Critical
Publication of CN112016675B publication Critical patent/CN112016675B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30136Metal

Abstract

本发明涉及钢板表面缺陷检测技术领域,具体涉及一种用于钢板表面缺陷检测的CNN模型训练方法和装置。该方法包括:构建初始卷积神经网络模型;构建第一训练集;获取目标卷积神经网络模型;构建第一检测集;获取第一检测集的缺陷类别检测结果;构建第二训练集;获取辅助卷积神经网络模型;构建第二检测集;获取第二检测集的第一缺陷类别检测结果;获取第二检测集的第二缺陷类别检测结果;获取缺陷类别检测结果相同的表面缺陷图片;更新第一训练集,并利用更新后的第一训练集重新训练目标卷积神经网络模型,并重新构建第二检测集。本发明保证了训练集更新内容的准确度,整个过程全部实现计算机检测,提高了模型的迭代效率和识别精度。

Description

用于钢板表面缺陷检测的CNN模型训练方法和装置
技术领域
本发明涉及钢板表面缺陷检测技术领域,具体涉及一种用于钢板表面缺陷检测的CNN模型训练方法和装置。
背景技术
钢板在进行加工时,会由于一些原因在表面留下缺陷,常见的钢板表面缺陷有翘皮、辊印、压痕、划伤、夹杂、麻坑、氧化铁皮、裂纹和异物压入等,这些缺陷会影响钢板的性能,甚至出现安全隐患。
随着深度学习技术的成熟,深度学习已被应用于钢板表面缺陷检测中。深度学习可以将简单特征组合为更加复杂的特征,并使用这些特征去进行图片识别,从而提高图像识别的准确率。
但是,现有的用于钢板表面缺陷检测的神经网络模型在进行迭代训练时,迭代次数过多,识别精度不高。
发明内容
本发明的目的是提供一种用于钢板表面缺陷检测的CNN模型训练方法和装置,以提高用于钢板表面缺陷检测的CNN模型训练时的迭代效率和识别精度。
本发明实施例提供了以下方案:
第一方面,本发明实施例提供一种用于钢板表面缺陷检测的CNN模型训练方法,所述方法包括:
步骤101,构建初始卷积神经网络模型;
步骤102,利用经人工标注的表面缺陷图片,构建第一训练集;其中,所述经人工标注的表面缺陷图片包括若干张表面缺陷图片和所述若干张表面缺陷图片的缺陷类别;
步骤103,利用第一训练集训练所述初始卷积神经网络模型,获取目标卷积神经网络模型;
步骤104,利用未经人工标注的表面缺陷图片,构建第一检测集;
步骤105,将所述第一检测集输入所述目标卷积神经网络模型,获取所述第一检测集的缺陷类别检测结果;
步骤106,将所述第一检测集的缺陷类别检测结果加入所述第一训练集,构建第二训练集;
步骤107,利用第二训练集训练所述初始卷积神经网络模型,获取辅助卷积神经网络模型;
步骤108,利用新的未经人工标注的表面缺陷图片,构建第二检测集;
步骤109,将所述第二检测集输入所述目标卷积神经网络模型,获取所述第二检测集的第一缺陷类别检测结果;
步骤110,将所述第二检测集输入所述辅助卷积神经网络模型,获取所述第二检测集的第二缺陷类别检测结果;
步骤111,获取所述第一缺陷类别检测结果和所述第二缺陷类别检测结果中缺陷类别检测结果相同的表面缺陷图片;
步骤112,将所述缺陷类别检测结果相同的表面缺陷图片加入所述第一训练集中,更新所述第一训练集,并利用更新后的所述第一训练集重新训练所述目标卷积神经网络模型,并返回步骤108。
在一种可能的实施例中,所述步骤112之前,所述方法还包括:
将所述第一缺陷类别检测结果对应的表面缺陷图片加入所述第二训练集中,更新所述第二训练集,并利用更新后的所述第二训练集重新训练所述辅助卷积神经网络模型。
在一种可能的实施例中,所述步骤112之前,所述方法还包括:
对所述缺陷类别检测结果相同的表面缺陷图片进行增广处理,获取增广集;
将所述增广集加入所述训练集中,更新所述第一训练集。
在一种可能的实施例中,所述对所述缺陷类别检测结果相同的表面缺陷图片进行增广处理,获取增广集,包括:
选择左右翻转、上下翻转、旋转、剪裁和改变亮度中的一种或多种方式处理所述缺陷类别检测结果相同的表面缺陷图片,获取处理后的图片集;
将所述缺陷类别检测结果相同的表面缺陷图片和所述处理后的图片集合并为增广集。
在一种可能的实施例中,所述步骤108之前,所述方法还包括:
判断所述第一训练集中的表面缺陷图片总数是否大于设定最大数值;
若是,则将所述目标卷积神经网络模型作为训练好的卷积神经网络模型,用于钢板表面缺陷检测。
在一种可能的实施例中,所述步骤108之前,所述方法还包括:
判断所述第一训练集中的表面缺陷图片总数是否位于第一设定区间;
若是,则将所述目标卷积神经网络模型的特征提取网络更新为Resnet34。
在一种可能的实施例中,所述步骤108之前,所述方法还包括:
判断所述第一训练集中的表面缺陷图片总数是否位于第二设定区间;
若是,则将所述目标卷积神经网络模型的特征提取网络更新为Resnet50。
在一种可能的实施例中,所述步骤108之前,所述方法还包括:
判断所述第一训练集中的表面缺陷图片总数是否位于第三设定区间;
若是,则将所述目标卷积神经网络模型的特征提取网络更新为Resnet101。
第二方面,本发明实施例提供一种用于钢板表面缺陷检测的CNN模型训练装置,所述装置包括:
初始模型构建模块,用于构建初始卷积神经网络模型;
第一训练集构建模块,用于利用经人工标注的表面缺陷图片,构建第一训练集;其中,所述经人工标注的表面缺陷图片包括若干张表面缺陷图片和所述若干张表面缺陷图片的缺陷类别;
目标模型获取模块,用于利用第一训练集训练所述初始卷积神经网络模型,获取目标卷积神经网络模型;
第一检测集构建模块,用于利用未经人工标注的表面缺陷图片,构建第一检测集;
第一检测模块,用于将所述第一检测集输入所述目标卷积神经网络模型,获取所述第一检测集的缺陷类别检测结果;
第二训练集构建模块,用于将所述第一检测集的缺陷类别检测结果加入所述第一训练集,构建第二训练集;
辅助模型获取模块,用于利用第二训练集训练所述初始卷积神经网络模型,获取辅助卷积神经网络模型;
第二检测集构建模块,用于利用新的未经人工标注的表面缺陷图片,构建第二检测集;
第二检测模块,用于将所述第二检测集输入所述目标卷积神经网络模型,获取所述第二检测集的第一缺陷类别检测结果;
第三检测模块,用于将所述第二检测集输入所述辅助卷积神经网络模型,获取所述第二检测集的第二缺陷类别检测结果;
第一结果对比模块,用于获取所述第一缺陷类别检测结果和所述第二缺陷类别检测结果中缺陷类别检测结果相同的表面缺陷图片;
迭代训练模块,用于将所述缺陷类别检测结果相同的表面缺陷图片加入所述第一训练集中,更新所述第一训练集,并利用更新后的所述第一训练集重新训练所述目标卷积神经网络模型,并返回第二检测集构建模块重新构建第二检测集。
在一种可能的实施例中,所述装置还包括:
第一更新模块,用于在所述迭代训练模块进行工作之前将所述第一缺陷类别检测结果对应的表面缺陷图片加入所述第二训练集中,更新所述第二训练集,并利用更新后的所述第二训练集重新训练所述辅助卷积神经网络模型。
在一种可能的实施例中,所述装置还包括:
增广模块,用于对所述缺陷类别检测结果相同的表面缺陷图片进行增广处理,获取增广集;
第二更新模块,用于将所述增广集加入所述训练集中,更新所述第一训练集。
在一种可能的实施例中,所述增广模块,包括:
处理后的图片集获取模块,用于选择左右翻转、上下翻转、旋转、剪裁和改变亮度中的一种或多种方式处理所述缺陷类别检测结果相同的表面缺陷图片,获取处理后的图片集;
增广集获取模块,用于将所述缺陷类别检测结果相同的表面缺陷图片和所述处理后的图片集合并为增广集。
在一种可能的实施例中,其特征在于,所述装置还包括:
第一判断模块,用于在第二检测集构建模块工作之前判断所述第一训练集中的表面缺陷图片总数是否大于设定最大数值;
若是,则将所述目标卷积神经网络模型作为训练好的卷积神经网络模型,用于钢板表面缺陷检测。
在一种可能的实施例中,所述装置还包括:
第二判断模块,用于在第二检测集构建模块工作之前判断所述第一训练集中的表面缺陷图片总数是否位于第一设定区间;
第三更新模块,用于在所述第一训练集中的表面缺陷图片总数位于第一设定区间时,将所述目标卷积神经网络模型的特征提取网络更新为Resnet34。
在一种可能的实施例中,所述装置还包括:
第三判断模块,用于在第二检测集构建模块工作之前判断所述第一训练集中的表面缺陷图片总数是否位于第二设定区间;
第四更新模块,用于在所述第一训练集中的表面缺陷图片总数位于第二设定区间时,将所述目标卷积神经网络模型的特征提取网络更新为Resnet50。
在一种可能的实施例中,所述装置还包括:
第四判断模块,用于在第二检测集构建模块工作之前判断所述第一训练集中的表面缺陷图片总数是否位于第三设定区间;
第五更新模块,用于在所述第一训练集中的表面缺陷图片总数位于第三设定区间时,将所述目标卷积神经网络模型的特征提取网络更新为Resnet101。
第三方面,本发明实施例提供一种用于钢板表面缺陷检测的CNN模型训练设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现第一方面中任一所述的CNN模型训练方法的步骤。
第四方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时以实现第一方面中任一所述的CNN模型训练方法的步骤。
本发明与现有技术相比,具有如下的优点和有益效果:
本发明在对卷积神经网络模型进行迭代训练时,用同一初始卷积神经网络模分别构建了目标卷积神经网络模型和辅助卷积神经网络模型。利用两个模型对同一检测集进行检测的结果,更新第一训练集,并迭代训练目标卷积神经网络模型,使目标卷积神经网络能够更准确地识别出钢板表面的缺陷。
本发明保证了训练集更新内容的准确度,整个过程全部实现计算机检测,提高了模型的迭代效率和识别精度。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种用于钢板表面缺陷检测的CNN模型训练方法的流程图;
图2是本发明实施例提供的一种用于钢板表面缺陷检测的CNN模型训练装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,基于本发明实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明实施例保护的范围。
本发明的发明人经过分析研究后发现,钢板表面的缺陷种类过多,而标注出不同的缺陷需要很强的专业背景知识,而深度学习并不能保证每次的迭代结果都能达到在一定的准确度,导致其每次的迭代训练效率并不高,因此需要大量的迭代次数去弥补迭代训练效率不高的缺陷。为了提高模型的迭代效率和识别准确性,本发明希望建立精细模型和粗糙模型,利用粗糙模型帮助精细模型构建训练集,因此提出了以下方案。
请参阅图1,图1为本发明实施例提供的用于钢板表面缺陷检测的CNN模型训练方法的流程图,包括步骤101至步骤112。
步骤101,构建初始卷积神经网络模型。
具体来说,本步骤所构建的卷积神经网络模型,采用FasterRCNN模型架构,并使用Resnet18作为特征提取网络。
具体的,Resnet(Deep Residual Network)属于深度残差网络,是一种新的卷积神经网络结构,其最重要的特点就是网络大部分是由多个残差单元组成,许多参数相同的残差单元连接起来组成BasicBlock,而许多BasicBlock组合起来再加上预处理层和最后的全连接分类层就组成了Resnet网络。
具体的,Resnet18包含有1个(7x7,64,stride2)层,4个(3x3 conv,64)层,4个(3x3conv,128)层,4个(3x3 conv,256)层,4个(3x3 conv,512)层和1个(fc 1000)层,可以使用Pytorch来实现具体网络结构的搭建。
具体来说,初始的训练参数设置为:学习率0.01,batch_size=8,优化算法SGD,训练步数50epoch,训练环境选取Pytorch。
步骤102,利用经人工标注的表面缺陷图片,构建第一训练集。
其中,所述经人工标注的表面缺陷图片包括若干张表面缺陷图片和所述若干张表面缺陷图片的缺陷类别。
具体来说,首先确定出需要模型检测识别的缺陷类别,然后从采集的缺陷图片中按照每类缺陷标注30张图片的方式,选出若干张经过标注的表面缺陷图片作为初始的第一训练集,而经过人工标注的表面缺陷图片包含有两部分内容,一是初始的表面缺陷图片,二是该初始的表面缺陷图片对应的缺陷类别,可以将表面缺陷图片对应的预测缺陷类别通过可视化处理的方式展示在表面缺陷图片上,方便技术人员使用。
具体来说,经人工标注的表面缺陷图片除了包含表面缺陷图片的缺陷类别之外,还可以包括缺陷出现位置以及存在范围等缺陷信息。
具体来说,钢板产线上设有高速相机用以采集初始的表面缺陷图片,采集完成后,高速相机会将表面缺陷图片上传到后台服务器中,本实施例中只需要通过向后台服务器发送请求命令,即可获取初始的表面缺陷图片。
本实施例采用pascal voc格式要求的xml文件来保存初始的表面缺陷图片对应的缺陷信息,其中包括表面缺陷图片的名称pic、缺陷类别label、缺陷位置框坐上坐标[xl,yl]以及右下坐标[xr,yr]。在进行人工标注时,会将xml文件中的信息以可视化的方式显示在对应的表面缺陷图片上,方便技术人员检查缺陷是否得到正确的标注,如果技术人员发现标注错误,也可及时修改该xml文件,进行信息校正。如表1所示,即为xml文件中表面缺陷图片对应的缺陷信息的内容。
表1
编号 pic label xl yl xr yr
1 0001 翘皮 325 55 432 78
2 0001 夹杂 201 118 289 150
3 0002 压痕 35 289 49 330
步骤103,利用第一训练集训练所述初始卷积神经网络模型,获取目标卷积神经网络模型。
具体来说,通过训练,可以更新卷积神经网络模型各层级之间的权重参数等数据,使卷积神经网络模型能够更准确地检测出钢板表面缺陷。
步骤104,利用未经人工标注的表面缺陷图片,构建第一检测集。
具体的,本步骤中的第一检测集包含若干张表面缺陷图片,可以通过向后台服务器发送请求命令,即可获取新的表面缺陷图片。
具体的,本步骤获取1000张新的表面缺陷图片作为第一检测集。
步骤105,将所述第一检测集输入所述目标卷积神经网络模型,获取所述第一检测集的缺陷类别检测结果。
具体的,由于此时目标卷积神经网络模型已经经过第一训练集的训练,能够进行图片的缺陷类别检测。
步骤106,将所述第一检测集的缺陷类别检测结果加入所述第一训练集,构建第二训练集。
具体的,本步骤利用第一检测集的缺陷类别检测结果构建第二训练集,使第二训练集与第一训练集不相同,但同时保持一定的关联度,方便之后的结果比对以及第一训练集的更新。
步骤107,利用第二训练集训练所述初始卷积神经网络模型,获取辅助卷积神经网络模型。
具体来说,通过训练,可以更新卷积神经网络模型各层级之间的权重参数等数据,使卷积神经网络模型能够更准确地检测出钢板表面缺陷。
步骤108,利用新的未经人工标注的表面缺陷图片,构建第二检测集。
具体的,本步骤中的第二检测集包含若干张表面缺陷图片,可以通过向后台服务器发送请求命令,即可获取新的表面缺陷图片。
具体的,本步骤每次获取200张新的表面缺陷图片作为第一检测集。
这里,新的表面缺陷图片是指重新进行表面缺陷图片获取操作而获得的表面缺陷图片。
步骤109,将所述第二检测集输入所述目标卷积神经网络模型,获取所述第二检测集的第一缺陷类别检测结果。
具体的,第一缺陷类别检测结果包括有第二检测集中各表面缺陷图片的缺陷类别。
步骤110,将所述第二检测集输入所述辅助卷积神经网络模型,获取所述第二检测集的第二缺陷类别检测结果。
具体的,第二缺陷类别检测结果包括有第二检测集中各表面缺陷图片的缺陷类别。
步骤111,获取所述第一缺陷类别检测结果和所述第二缺陷类别检测结果中缺陷类别检测结果相同的表面缺陷图片。
具体的,通过比对分析两个模型的检测结果,即可实现上述操作。
步骤112,将所述缺陷类别检测结果相同的表面缺陷图片加入所述第一训练集中,更新所述第一训练集,并利用更新后的所述第一训练集重新训练所述目标卷积神经网络模型,并返回步骤108。
具体的,本步骤更新完第一训练集后,利用更新后的第一训练集重新训练目标卷积神经网络模型,然后返回步骤108,再次构建第二检测集,开始新一轮的迭代训练。
具体的,这里,更新后的第一训练集包含有原有的初始的第一训练集以及步骤111中获得的缺陷类别检测结果相同的表面缺陷图片。
具体的,本步骤使用更新后的第一训练集,重新训练目标卷积神经网络模型,之后再重复步骤108至步骤112,对目标卷积神经网络模型进行多次的迭代训练,以提高其识别结果的准确度。当达到预先设定的迭代终止条件后,则停止迭代训练,将最后获得的目标卷积神经网络模型,作为训练好的卷积神经网络模型,用于钢板表面缺陷的检测。
具体的,迭代终止条件可以是迭代的最大次数,当迭代次数达到或超过设定的最大次数时,即停止迭代训练;迭代终止条件也可以是检测准确度,当目标卷积神经网络模型对测试集的检测准确度到达或超过设定准确度时,即可停止迭代训练。
具体的,由于缺陷类别检测结果相同的表面缺陷图片的缺陷类别是经过了两个模型的检测计算获得的,其准确度较高,能够准确有效地更新第一训练集,方便之后模型的迭代训练。
在一种可能的实施例中,为了提高辅助卷积神经网络模型的检测精度,本发明还提供了以下方案:
所述步骤112之前,所述方法还包括步骤21。
步骤21,将所述第一缺陷类别检测结果对应的表面缺陷图片加入所述第二训练集中,更新所述第二训练集,并利用更新后的所述第二训练集重新训练所述辅助卷积神经网络模型。
具体的,本步骤利用第一缺陷类别检测结果更新第二训练集,快速提高第二训练集中图片的数量,之后利用更新后的第二训练集重新训练辅助卷积神经网络模型,使辅助卷积神经网络模型的检测结果更准确。
由于表面缺陷图片的缺陷识别的复杂性,为了获得准确的缺陷类别信息,人工标注是一种优选的方式,但是神经网络模型的检测精度与其训练集的规模大小成正相关,但是人工标注的效率并不高,无法短时间内获取足够的标注图片构建训练集,为此本发明提供了一种根据少量表面缺陷图片,增广出足够规模的训练集的方案,以此提高模型训练的精度,具体方案为:
所述步骤112之前,所述方法还包括步骤31至步骤32。
步骤31,对所述缺陷类别检测结果相同的表面缺陷图片进行增广处理,获取增广集。
具体的,增广处理是基于图片原有特征而重新生成多张图片的处理技术。具体的增广处理。当然在经过增广处理后,也能经过简单变换,获得增广图片对应的缺陷类别等信息。
具体的,由于缺陷类别检测结果相同的表面缺陷图片经过了两次模型检测的验证,其缺陷类别检测结果的可信度较高,因而使用这类表面缺陷图片进行增广处理,可以短时间内获取大量的图片扩充训练集,从而提高模型训练的精度。
这里,本发明还给出了一种较优的增广处理方案,具体方案为:
所述对所述校正集进行增广处理,获取增广集,包括步骤41至步骤42。
步骤41,选择左右翻转、上下翻转、旋转、剪裁和改变亮度中的一种或多种方式处理所述缺陷类别检测结果相同的表面缺陷图片,获取处理后的图片集。
具体的,对于缺陷类别检测结果相同的表面缺陷图片中的每张图片可以使用一种或多种操作来进行处理,获得多张处理后的图片;当然还可以对缺陷类别检测结果相同的表面缺陷图片中的某一张图片分别使用不同的操作来进行处理,以获得更多的处理后的图片。
步骤42,将所述缺陷类别检测结果相同的表面缺陷图片和所述处理后的图片集合并为增广集。
具体的,增广集中包括原有的缺陷类别检测结果相同的表面缺陷图片以及步骤41获取的处理后的图片集。
步骤32,将所述增广集加入所述训练集中,更新所述第一训练集。
具体的,本步骤更新后,第一训练集中就在更新之前的训练集基础上,增加了增广集的内容,同时再经过步骤112中的更新,将极大加快第一训练集中图片数量的增速,以此提高模型训练的效率以及准确度。
由于本实施例提供的模型迭代方案更有针对性,同时解决了初始表面缺陷图片数量不足的缺陷,比现有的基于深度学习的缺陷检测方法效率更高,模型迭代周期更短。
在一种可能的实施例中,本发明还给出了一种较优的迭代终止条件,具体为:
所述步骤108之前,所述方法还包括步骤51至步骤52。
步骤51,判断所述第一训练集中的表面缺陷图片总数是否大于设定最大数值。
具体来说,设定最大数值是本实施例中所允许使用的最大第一训练集表面缺陷图片的上限数量,本实施例将第一数值设定为100000。
步骤52,若是,则将所述目标卷积神经网络模型作为训练好的卷积神经网络模型,用于钢板表面缺陷检测。
具体来说,当第一训练集中的表面缺陷图片数量达到上限,随即终止迭代训练,此时得到的目标卷积神经网络模型即为训练好的卷积神经网络模型。
具体来说,本实施例在第一训练集中的表面缺陷图片总数不大于设定最大数值时,继续进行步骤108至步骤112的迭代训练过程。
在一种可能的实施例中,为了提高模型特征提取网络的工作效率,本发明还提供了以下方案:
所述步骤108之前,所述方法还包括步骤61至步骤62。
步骤61,判断所述第一训练集中的表面缺陷图片总数是否位于第一设定区间。
具体的,本步骤中的第一设定区间为(3000,10000)。
步骤62,若是,则将所述目标卷积神经网络模型的特征提取网络更新为Resnet34。
具体的,Resnet(Deep Residual Network)属于深度残差网络,是一种新的卷积神经网络结构,其最重要的特点就是网络大部分是由多个残差单元组成,许多参数相同的残差单元连接起来组成BasicBlock,而许多BasicBlock组合起来再加上预处理层和最后的全连接分类层就组成了ResNet网络。
具体的,Resnet34包含有1个(7x7,64,stride2)层,6个(3x3 conv,64)层,8个(3x3conv,128)层,12个(3x3 conv,256)层,6个(3x3 conv,512)层和1个(fc 1000)层,可以使用Pytorch来实现具体网络结构的搭建。
具体的,当第一训练集中表面缺陷图片的数量大于3000并小于10000时,将卷积神经网络模型的特征提取网络由Resnet18更新为Resnet34,同时将训练参数设置为:学习率0.008,batch_size=6,优化算法SGD,训练步数40epoch,然后利用新的新训练集进行训练。
在一种可能的实施例中,为了提高模型特征提取网络的工作效率,本发明还提供了以下方案:
所述步骤108之前,所述方法还包括步骤71至步骤72。
步骤71,判断所述第一训练集中的表面缺陷图片总数是否位于第二设定区间。
具体的,本步骤中的第一设定区间为[10000,20000)。
步骤72,若是,则将所述目标卷积神经网络模型的特征提取网络更新为Resnet50。
具体的,Resnet(Deep Residual Network)属于深度残差网络,是一种新的卷积神经网络结构,其最重要的特点就是网络大部分是由多个残差单元组成,许多参数相同的残差单元连接起来组成BasicBlock,而许多BasicBlock组合起来再加上预处理层和最后的全连接分类层就组成了ResNet网络。
具体的,Resnet50包含有1个(7x7,64,stride2)层,3个(1x1 conv,64)层,3个(3x3conv,64)层,3个(1x1 conv,256)层,4个(1x1conv,128)层,4个(3x3 conv,128)层,4个(1x1conv,512)层,6个(1x1 conv,256)层,6个(3x3 conv,256)层,6个(1x1 conv,1024)层,3个(1x1 conv,512)层,3个(3x3 conv,512)层,3个(1x1 conv,2048)层和1个(fc 1000)层,可以使用Pytorch来实现具体网络结构的搭建。
具体的,当第一训练集中表面缺陷图片的数量大于等于10000并小于20000时,将卷积神经网络模型的特征提取网络由Resnet34更新为Resnet50,同时将训练参数设置为:学习率0.005,batch_size=4,优化算法SGD,训练步数30epoch,然后利用新的新训练集进行训练。
在一种可能的实施例中,为了提高模型特征提取网络的工作效率,本发明还提供了以下方案:
所述步骤108之前,所述方法还包括步骤81至步骤82。
步骤81,判断所述第一训练集中的表面缺陷图片总数是否位于第三设定区间。
具体的,本步骤中的第一设定区间为[20000,100000)。
步骤82,若是,则将所述目标卷积神经网络模型的特征提取网络更新为Resnet101。
具体的,Resnet(Deep Residual Network)属于深度残差网络,是一种新的卷积神经网络结构,其最重要的特点就是网络大部分是由多个残差单元组成,许多参数相同的残差单元连接起来组成BasicBlock,而许多BasicBlock组合起来再加上预处理层和最后的全连接分类层就组成了ResNet网络。
具体的,Resnet101包含有1个(7x7,64,stride2)层,3个(1x1 conv,64)层,3个(3x3 conv,64)层,3个(1x1 conv,256)层,4个(1x1conv,128)层,4个(3x3 conv,128)层,4个(1x1 conv,512)层,23个(1x1 conv,256)层,23个(3x3 conv,256)层,23个(1x1 conv,1024)层,3个(1x1 conv,512)层,3个(3x3 conv,512)层,3个(1x1 conv,2048)层和1个(fc1000)层,可以使用Pytorch来实现具体网络结构的搭建。
具体的,当第一训练集中表面缺陷图片的数量大于等于20000并小于100000时,将卷积神经网络模型的特征提取网络由Resnet50更新为Resnet101,同时将训练参数设置为:学习率0.002,batch_size=2,优化算法SGD,训练步数30epoch,然后利用新的新训练集进行训练。
基于与方法同样的发明构思,本发明实施例还提供了一种用于钢板表面缺陷检测的CNN模型训练装置,如图2所示为该装置实施例的结构示意图,所述装置包括:
初始模型构建模块901,用于构建初始卷积神经网络模型;
第一训练集构建模块902,用于利用经人工标注的表面缺陷图片,构建第一训练集;其中,所述经人工标注的表面缺陷图片包括若干张表面缺陷图片和所述若干张表面缺陷图片的缺陷类别;
目标模型获取模块903,用于利用第一训练集训练所述初始卷积神经网络模型,获取目标卷积神经网络模型;
第一检测集构建模块904,用于利用未经人工标注的表面缺陷图片,构建第一检测集;
第一检测模块905,用于将所述第一检测集输入所述目标卷积神经网络模型,获取所述第一检测集的缺陷类别检测结果;
第二训练集构建模块906,用于将所述第一检测集的缺陷类别检测结果加入所述第一训练集,构建第二训练集;
辅助模型获取模块907,用于利用第二训练集训练所述初始卷积神经网络模型,获取辅助卷积神经网络模型;
第二检测集构建模块908,用于利用新的未经人工标注的表面缺陷图片,构建第二检测集;
第二检测模块909,用于将所述第二检测集输入所述目标卷积神经网络模型,获取所述第二检测集的第一缺陷类别检测结果;
第三检测模块910,用于将所述第二检测集输入所述辅助卷积神经网络模型,获取所述第二检测集的第二缺陷类别检测结果;
第一结果对比模块911,用于获取所述第一缺陷类别检测结果和所述第二缺陷类别检测结果中缺陷类别检测结果相同的表面缺陷图片;
迭代训练模块912,用于将所述缺陷类别检测结果相同的表面缺陷图片加入所述第一训练集中,更新所述第一训练集,并利用更新后的所述第一训练集重新训练所述目标卷积神经网络模型,并返回第二检测集构建模块重新构建第二检测集。
在一种可能的实施例中,所述装置还包括:
第一更新模块,用于在所述迭代训练模块进行工作之前将所述第一缺陷类别检测结果对应的表面缺陷图片加入所述第二训练集中,更新所述第二训练集,并利用更新后的所述第二训练集重新训练所述辅助卷积神经网络模型。
在一种可能的实施例中,所述装置还包括:
增广模块,用于对所述缺陷类别检测结果相同的表面缺陷图片进行增广处理,获取增广集;
第二更新模块,用于将所述增广集加入所述训练集中,更新所述第一训练集。
在一种可能的实施例中,所述增广模块,包括:
处理后的图片集获取模块,用于选择左右翻转、上下翻转、旋转、剪裁和改变亮度中的一种或多种方式处理所述缺陷类别检测结果相同的表面缺陷图片,获取处理后的图片集;
增广集获取模块,用于将所述缺陷类别检测结果相同的表面缺陷图片和所述处理后的图片集合并为增广集。
在一种可能的实施例中,其特征在于,所述装置还包括:
第一判断模块,用于在第二检测集构建模块工作之前判断所述第一训练集中的表面缺陷图片总数是否大于设定最大数值;
若是,则将所述目标卷积神经网络模型作为训练好的卷积神经网络模型,用于钢板表面缺陷检测。
在一种可能的实施例中,所述装置还包括:
第二判断模块,用于在第二检测集构建模块工作之前判断所述第一训练集中的表面缺陷图片总数是否位于第一设定区间;
第三更新模块,用于在所述第一训练集中的表面缺陷图片总数位于第一设定区间时,将所述目标卷积神经网络模型的特征提取网络更新为Resnet34。
在一种可能的实施例中,所述装置还包括:
第三判断模块,用于在第二检测集构建模块工作之前判断所述第一训练集中的表面缺陷图片总数是否位于第二设定区间;
第四更新模块,用于在所述第一训练集中的表面缺陷图片总数位于第二设定区间时,将所述目标卷积神经网络模型的特征提取网络更新为Resnet50。
在一种可能的实施例中,所述装置还包括:
第四判断模块,用于在第二检测集构建模块工作之前判断所述第一训练集中的表面缺陷图片总数是否位于第三设定区间;
第五更新模块,用于在所述第一训练集中的表面缺陷图片总数位于第三设定区间时,将所述目标卷积神经网络模型的特征提取网络更新为Resnet101。
基于与前述实施例中同样的发明构思,本发明实施例还提供一种用于钢板表面缺陷检测的CNN模型训练设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现前文任一所述方法的步骤。
基于与前述实施例中同样的发明构思,本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前文任一所述方法的步骤。
本发明实施例中提供的技术方案,至少具有如下技术效果或优点:
本发明实施例在对卷积神经网络模型进行迭代训练时,不断使用新的表面缺陷图片测试集来检测当次迭代训练的目标卷积神经网络模型,并使用经更正的表面缺陷图片测试集来更新训练集,最后使用新训练集对当次迭代训练的目标卷积神经网络模型再进行训练,使目标卷积神经网络能够更准确地识别出钢板表面的缺陷。
本发明实施例在模型迭代训练中,创新性地使用更正后的的表面缺陷图片测试集来更新训练集,保证了训练集更新内容的准确度,使模型的迭代训练更有针对性,进而提高了模型的迭代效率和识别精度。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、装置(模块、系统)、和计算机程序产品的流程图和/或方框图来描述。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式计算机或者其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。

Claims (10)

1.一种用于钢板表面缺陷检测的CNN模型训练方法,其特征在于,所述方法包括:
步骤101,构建初始卷积神经网络模型;
步骤102,利用经人工标注的表面缺陷图片,构建第一训练集;其中,所述经人工标注的表面缺陷图片包括若干张表面缺陷图片和所述若干张表面缺陷图片的缺陷类别;
步骤103,利用第一训练集训练所述初始卷积神经网络模型,获取目标卷积神经网络模型;
步骤104,利用未经人工标注的表面缺陷图片,构建第一检测集;
步骤105,将所述第一检测集输入所述目标卷积神经网络模型,获取所述第一检测集的缺陷类别检测结果;
步骤106,将所述第一检测集的缺陷类别检测结果加入所述第一训练集,构建第二训练集;
步骤107,利用第二训练集训练所述初始卷积神经网络模型,获取辅助卷积神经网络模型;
步骤108,利用新的未经人工标注的表面缺陷图片,构建第二检测集;
步骤109,将所述第二检测集输入所述目标卷积神经网络模型,获取所述第二检测集的第一缺陷类别检测结果;
步骤110,将所述第二检测集输入所述辅助卷积神经网络模型,获取所述第二检测集的第二缺陷类别检测结果;
步骤111,获取所述第一缺陷类别检测结果和所述第二缺陷类别检测结果中缺陷类别检测结果相同的表面缺陷图片;
步骤112,将所述缺陷类别检测结果相同的表面缺陷图片加入所述第一训练集中,更新所述第一训练集,并利用更新后的所述第一训练集重新训练所述目标卷积神经网络模型,并返回步骤108。
2.根据权利要求1所述的CNN模型训练方法,其特征在于,所述步骤112之前,所述方法还包括:
将所述第一缺陷类别检测结果对应的表面缺陷图片加入所述第二训练集中,更新所述第二训练集,并利用更新后的所述第二训练集重新训练所述辅助卷积神经网络模型。
3.根据权利要求1所述的CNN模型训练方法,其特征在于,所述步骤112之前,所述方法还包括:
对所述缺陷类别检测结果相同的表面缺陷图片进行增广处理,获取增广集;
将所述增广集加入所述训练集中,更新所述第一训练集。
4.根据权利要求2所述的CNN模型训练方法,其特征在于,所述对所述缺陷类别检测结果相同的表面缺陷图片进行增广处理,获取增广集,包括:
选择左右翻转、上下翻转、旋转、剪裁和改变亮度中的一种或多种方式处理所述缺陷类别检测结果相同的表面缺陷图片,获取处理后的图片集;
将所述缺陷类别检测结果相同的表面缺陷图片和所述处理后的图片集合并为增广集。
5.根据权利要求1所述的CNN模型训练方法,其特征在于,所述步骤108之前,所述方法还包括:
判断所述第一训练集中的表面缺陷图片总数是否大于设定最大数值;
若是,则将所述目标卷积神经网络模型作为训练好的卷积神经网络模型,用于钢板表面缺陷检测。
6.根据权利要求1所述的CNN模型训练方法,其特征在于,所述步骤108之前,所述方法还包括:
判断所述第一训练集中的表面缺陷图片总数是否位于第一设定区间;
若是,则将所述目标卷积神经网络模型的特征提取网络更新为Resnet34。
7.根据权利要求1所述的CNN模型训练方法,其特征在于,所述步骤108之前,所述方法还包括:
判断所述第一训练集中的表面缺陷图片总数是否位于第二设定区间;
若是,则将所述目标卷积神经网络模型的特征提取网络更新为Resnet50。
8.一种用于钢板表面缺陷检测的CNN模型训练装置,其特征在于,所述装置包括:
初始模型构建模块,用于构建初始卷积神经网络模型;
第一训练集构建模块,用于利用经人工标注的表面缺陷图片,构建第一训练集;其中,所述经人工标注的表面缺陷图片包括若干张表面缺陷图片和所述若干张表面缺陷图片的缺陷类别;
目标模型获取模块,用于利用第一训练集训练所述初始卷积神经网络模型,获取目标卷积神经网络模型;
第一检测集构建模块,用于利用未经人工标注的表面缺陷图片,构建第一检测集;
第一检测模块,用于将所述第一检测集输入所述目标卷积神经网络模型,获取所述第一检测集的缺陷类别检测结果;
第二训练集构建模块,用于将所述第一检测集的缺陷类别检测结果加入所述第一训练集,构建第二训练集;
辅助模型获取模块,用于利用第二训练集训练所述初始卷积神经网络模型,获取辅助卷积神经网络模型;
第二检测集构建模块,用于利用新的未经人工标注的表面缺陷图片,构建第二检测集;
第二检测模块,用于将所述第二检测集输入所述目标卷积神经网络模型,获取所述第二检测集的第一缺陷类别检测结果;
第三检测模块,用于将所述第二检测集输入所述辅助卷积神经网络模型,获取所述第二检测集的第二缺陷类别检测结果;
第一结果对比模块,用于获取所述第一缺陷类别检测结果和所述第二缺陷类别检测结果中缺陷类别检测结果相同的表面缺陷图片;
迭代训练模块,用于将所述缺陷类别检测结果相同的表面缺陷图片加入所述第一训练集中,更新所述第一训练集,并利用更新后的所述第一训练集重新训练所述目标卷积神经网络模型,并返回第二检测集构建模块重新构建第二检测集。
9.一种用于钢板表面缺陷检测的CNN模型训练设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现权利要求1至7任一所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时以实现权利要求1至7任一所述的方法的步骤。
CN202010810100.6A 2020-08-13 2020-08-13 用于钢板表面缺陷检测的cnn模型训练方法和装置 Active CN112016675B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010810100.6A CN112016675B (zh) 2020-08-13 2020-08-13 用于钢板表面缺陷检测的cnn模型训练方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010810100.6A CN112016675B (zh) 2020-08-13 2020-08-13 用于钢板表面缺陷检测的cnn模型训练方法和装置

Publications (2)

Publication Number Publication Date
CN112016675A CN112016675A (zh) 2020-12-01
CN112016675B true CN112016675B (zh) 2023-12-19

Family

ID=73506050

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010810100.6A Active CN112016675B (zh) 2020-08-13 2020-08-13 用于钢板表面缺陷检测的cnn模型训练方法和装置

Country Status (1)

Country Link
CN (1) CN112016675B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113077414B (zh) * 2021-03-01 2023-05-16 湖北工程学院 一种钢板表面缺陷检测方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108345911A (zh) * 2018-04-16 2018-07-31 东北大学 基于卷积神经网络多级特征的钢板表面缺陷检测方法
CN110310261A (zh) * 2019-06-19 2019-10-08 河南辉煌科技股份有限公司 一种接触网吊弦缺陷检测模型训练方法和缺陷检测方法
CN110598767A (zh) * 2019-08-29 2019-12-20 河南省收费还贷高速公路管理有限公司航空港分公司 一种基于ssd卷积神经网络的地下排水管道缺陷识别方法
WO2020037960A1 (zh) * 2018-08-21 2020-02-27 深圳大学 一种sar目标识别方法、装置、计算机设备及存储介质
CN111060601A (zh) * 2019-12-27 2020-04-24 武汉武船计量试验有限公司 一种基于深度学习的焊缝超声相控阵检测数据智能分析方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108345911A (zh) * 2018-04-16 2018-07-31 东北大学 基于卷积神经网络多级特征的钢板表面缺陷检测方法
WO2020037960A1 (zh) * 2018-08-21 2020-02-27 深圳大学 一种sar目标识别方法、装置、计算机设备及存储介质
CN110310261A (zh) * 2019-06-19 2019-10-08 河南辉煌科技股份有限公司 一种接触网吊弦缺陷检测模型训练方法和缺陷检测方法
CN110598767A (zh) * 2019-08-29 2019-12-20 河南省收费还贷高速公路管理有限公司航空港分公司 一种基于ssd卷积神经网络的地下排水管道缺陷识别方法
CN111060601A (zh) * 2019-12-27 2020-04-24 武汉武船计量试验有限公司 一种基于深度学习的焊缝超声相控阵检测数据智能分析方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于Faster R-CNN的刨花板表面缺陷检测研究;彭煜;肖书浩;阮金华;汤勃;;组合机床与自动化加工技术(第03期);全文 *
基于卷积神经网络的磁瓦缺陷检测研究;王超;刘玉婷;徐祥宇;张涛;;大连民族大学学报(第03期);全文 *

Also Published As

Publication number Publication date
CN112016675A (zh) 2020-12-01

Similar Documents

Publication Publication Date Title
CN109509187B (zh) 一种针对大分辨率布匹图像中的小瑕疵的高效检验算法
CN111815605B (zh) 基于分步深度学习的轨枕缺陷检测方法及存储介质
CN109159113B (zh) 一种基于视觉推理的机器人作业方法
CN110136116B (zh) 一种注塑泵缺陷检测方法、装置、设备及存储介质
CN109146873B (zh) 一种基于学习的显示屏缺陷智能检测方法及装置
CN110689535A (zh) 一种工件识别方法、装置及电子设备和存储介质
CN112016675B (zh) 用于钢板表面缺陷检测的cnn模型训练方法和装置
CN113222913B (zh) 一种电路板缺陷检测定位方法、装置和存储介质
CN112989947A (zh) 一种人体关键点的三维坐标的估计方法及装置
CN116071360A (zh) 一种工件外观缺陷检测方法、电子设备及存储介质
CN113780484B (zh) 工业产品缺陷检测方法和装置
CN110334775B (zh) 一种基于宽度学习的无人机线路故障识别方法和装置
CN113947597B (zh) 一种基于屏蔽重建的工业缺陷检测方法、装置及介质
CN111178405A (zh) 一种融合多种神经网络的相似物体识别方法
CN112434582A (zh) 一种车道线颜色识别方法、系统、电子设备及存储介质
CN115797808A (zh) 一种无人机巡检缺陷图像的识别方法、系统、装置及介质
CN116630809A (zh) 基于智能图像分析的地质雷达数据自动识别方法及系统
CN113487538B (zh) 一种多目标分割缺陷检测方法、装置及其计算机存储介质
CN115661126A (zh) 一种基于改进YOLOv5算法的带钢表面缺陷检测方法
CN112363465B (zh) 一种专家规则集训练方法、训练器和工业设备预警系统
CN107341830A (zh) 一种确定弹孔环值的方法及装置
CN114494773A (zh) 一种基于深度学习的零件分拣识别系统和方法
CN112801013B (zh) 一种基于关键点识别校验的人脸识别方法、系统及装置
CN111985582B (zh) 基于学习行为的知识点掌握程度评测方法
CN114972810B (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