掌桥专利:专业的专利平台
掌桥专利
首页

掩膜细化的机械部件表面裂纹几何信息检测方法及装置

文献发布时间:2024-04-18 20:02:18


掩膜细化的机械部件表面裂纹几何信息检测方法及装置

技术领域

本发明涉及图像检测技术领域,尤其涉及一种掩膜细化的机械部件表面裂纹几何信息检测方法及装置。

背景技术

机械部件是机械装置中的动力传递器件,在各个机械装置中起到至为关键的作用,如果机械部件表面出现裂纹等缺陷,对机械装置性能产生严重影响的同时,还会产生极大的安全隐患。因此如何高效精准地进行机械部件表面裂纹几何信息检测是目前亟待解决的重要课题。

相关技术中,在机械部件设计过程中通常会采取对机械部件进行疲劳试验的方式,通过检测机械部件在长时间使用过程中所产生的疲劳裂纹、变形等问题,帮助工程师评估机械部件的寿命,并帮助进行材料选择和设计优化。

但是,在实验过程中,往往需要采用人工目测的方式进行机械部件表面裂纹几何信息确定,这种方式往往会消耗大量的人力资源,并且检测速度慢,存在人眼疲劳从而导致误检、漏检的可能性,由此导致机械部件表面裂纹几何信息检测的检测效率和准确性低下。

发明内容

本发明提供一种掩膜细化的机械部件表面裂纹几何信息检测方法及装置,用以解决现有技术中机械部件表面裂纹几何信息检测的检测效率和准确性低下的缺陷,实现高效精准地进行机械部件表面裂纹几何信息的检测。

本发明提供一种掩膜细化的机械部件表面裂纹几何信息检测方法,包括:

根据待检测机械部件的表面图像,获取目标输入信息;

将所述目标输入信息输入至检测模型中,得到所述待检测机械部件的裂纹缺陷对应的掩膜检测结果;

对所述掩膜检测结果进行掩膜细化,并从细化后的掩膜检测结果中提取所述待检测机械部件的裂纹缺陷对应的目标骨架;

根据所述目标骨架的像素点集合,获取所述待检测机械部件的裂纹缺陷的几何信息;

其中,所述检测模型是基于样本数据集进行有监督训练得到的;所述样本数据集中是对多个裂纹缺陷样本图像进行样本扩充得到的;多个所述裂纹缺陷样本图像是多个样本机械部件的表面图像中存在裂纹缺陷的图像。

根据本发明提供的一种掩膜细化的机械部件表面裂纹几何信息检测方法,所述检测模型是基于如下步骤训练得到的:

将各所述样本机械部件的表面图像划分为正常样本图像或者裂纹缺陷样本图像;

对各所述裂纹缺陷样本图像进行样本扩充,得到各所述裂纹缺陷样本图像对应的模拟缺陷样本图像;

分别对各所述模拟缺陷样本图像、各所述裂纹缺陷样本图像,以及各所述正常样本图像进行掩膜标签标记;

基于各所述模拟缺陷样本图像、各所述裂纹缺陷样本图像、各所述正常样本图像,以及掩膜标签标记结果,构建所述样本数据集;

基于所述样本数据集对初始模型进行训练,得到所述检测模型。

根据本发明提供的一种掩膜细化的机械部件表面裂纹几何信息检测方法,所述对各所述裂纹缺陷样本图像进行样本扩充,得到各所述裂纹缺陷样本图像对应的模拟缺陷样本图像,包括:

将目标噪声数据输入至改进的生成对抗网络中,由所述改进的生成对抗网络中的生成器,生成各所述裂纹缺陷样本图像对应的模拟缺陷样本图像;

其中,所述改进的生成对抗网络是基于样本噪声数据以及各所述裂纹缺陷样本图像进行无监督训练得到的;所述改进的生成对抗网络是基于多层可变形卷积构建的。

根据本发明提供的一种掩膜细化的机械部件表面裂纹几何信息检测方法,所述初始模型包括多个堆叠的上采样模块和多个堆叠的下采样模块、多个残差模块,以及多个自注意力模块;

各所述上采样模块与各所述下采样模块一一对应,各所述下采样模块与各所述残差模块一一对应,各所述下采样模块与各所述自注意力模块一一对应;

对于多个堆叠的下采样模块中除最后一层下采样模块之外的每一目标下采样模块,所述目标下采样模块的输出端,分别与所述目标下采样模块的下一层下采样模块的输入端和所述目标下采样模块对应的自注意力模块的输入端连接;

所述目标下采样模块对应的自注意力模块的输入端,还与所述目标下采样模块对应的上采样模块的上一层采样模块的输出端连接;

所述目标下采样模块对应的自注意力模块的输出端,与所述目标下采样模块对应的残差模块的输入端连接;

所述目标下采样模块对应的残差模块的输出端,与所述目标下采样模块对应的上采样模块的输出端连接。

根据本发明提供的一种掩膜细化的机械部件表面裂纹几何信息检测方法,所述从细化后的掩膜检测结果中提取所述待检测机械部件的裂纹缺陷对应的目标骨架,包括:

基于中轴变换算法,从所述细化后的掩膜检测结果中提取多个最大内切圆的圆心;

基于多个所述最大内切圆的圆心,构建形成所述目标骨架。

根据本发明提供的一种掩膜细化的机械部件表面裂纹几何信息检测方法,所述几何信息包括长度值;

所述根据所述目标骨架的像素点集合,获取所述待检测机械部件的裂纹缺陷的几何信息,包括:

在所述细化后的掩膜检测结果中,对所述目标骨架的像素点集合中各像素点进行灰度值标记;

对各所述像素点的灰度值进行累加,根据累加结果,得到所述待检测机械部件的裂纹缺陷的长度值。

根据本发明提供的一种掩膜细化的机械部件表面裂纹几何信息检测方法,所述根据待检测机械部件的表面图像,获取目标输入信息,包括:

对所述待检测机械部件的表面图像进行预处理,得到所述目标输入信息;

其中,所述预处理包括标准化处理、图像裁剪处理、过采样或欠采样的样本均衡处理,以及随机像素变换处理中的至少一项。

本发明还提供一种掩膜细化的机械部件表面裂纹几何信息检测装置,包括:

第一获取单元,用于根据待检测机械部件的表面图像,获取目标输入信息;

裂纹检测单元,用于将所述目标输入信息输入至检测模型中,得到所述待检测机械部件的裂纹缺陷对应的掩膜检测结果;

骨架提取单元,用于对所述掩膜检测结果进行掩膜细化,并从细化后的掩膜检测结果中提取所述待检测机械部件的裂纹缺陷对应的目标骨架;

第二获取单元,用于根据所述目标骨架的像素点集合,获取所述待检测机械部件的裂纹缺陷的几何信息;

其中,所述检测模型是基于样本数据集进行有监督训练得到的;所述样本数据集中是对多个裂纹缺陷样本图像进行样本扩充得到的;多个所述裂纹缺陷样本图像是多个样本机械部件的表面图像中存在裂纹缺陷的图像。

本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述掩膜细化的机械部件表面裂纹几何信息检测方法。

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述掩膜细化的机械部件表面裂纹几何信息检测方法。

本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述掩膜细化的机械部件表面裂纹几何信息检测方法。

本发明提供的掩膜细化的机械部件表面裂纹几何信息检测方法及装置,通过对多个裂纹缺陷样本图像进行样本扩充,得到包含丰富样本图像的样本数据集,基于此样本数据集可精准高效地训练出高性能的检测模型,以基于此检测模型自动对待检测机械部件的表面图像进行检测,避免人眼检测所存在的检测效率和准确性低的问题,由此实现高效、准确地进行机械部件表面裂纹的几何信息的检测。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明提供的掩膜细化的机械部件表面裂纹几何信息检测方法的流程示意图之一;

图2是本发明提供的掩膜细化的机械部件表面裂纹几何信息检测方法的流程示意图之二;

图3是本发明提供的改进的生成对抗网络的结构示意图;

图4是本发明提供的初始模型的结构示意图;

图5是本发明提供的原始U-net模型构建的检测模型的检测效果示意图;

图6是本发明提供的改进的U-net模型构建的检测模型的检测效果示意图;

图7是本发明提供的掩膜细化的机械部件表面裂纹几何信息检测装置的结构示意图;

图8是本发明提供的电子设备的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

相关技术中,往往采用人工目测的方式判定当前状态,这种方式往往会消耗大量的人力资源,并且检测速度慢,存在人眼疲劳从而导致误检、漏检的可能性,难以满足现代化工业批量生产制造的需求,同时容易出现主观性和疏漏。由此导致机械部件表面裂纹几何信息检测的检测效率和准确性低下。

随着AI+(Artificial Intelligence Plus,人工智能+)工业视觉的快速发展,机器视觉已经被广泛应用于工业场景中,并取得显著的效果和优势。采用机器视觉代替人工检测,利用计算机图像处理和模式识别算法,可以快速准确地检测出机械部件表面的裂纹、变形等缺陷,并生成缺陷图像或数据报告。其次,机器视觉能够实现非接触式的检测,避免了传统手工检测过程中可能对机械部件产生的二次损伤。同时,机器视觉可以在短时间内对大量机械部件进行检测和分析,提高检测效率,节省人力资源。此外,机器视觉还能够对检测结果进行自动分类和评估,根据预设的标准判定机械部件的状态,帮助工程师评估机械部件的寿命,并为后续的材料选择和设计优化提供依据。最后,机器视觉技术可以通过不断的学习和迭代优化,提高其检测和识别能力,降低误检、漏检的概率,提高检测精度和可靠性。

综上所述,机器视觉技术在机械部件疲劳试验中具有广阔的应用前景;因此为了解决相关技术中存在的检测效率和准确性低下的问题,本实施例提供的方法,通过基于机器视觉对机械部件表面裂纹几何信息进行自动检测,由此提高检测效率和准确性,降低人力成本,帮助工程师进行更加科学、可靠的机械部件设计和评估。

图1为本申请提供的掩膜细化的机械部件表面裂纹几何信息检测方法的流程示意图之一;如图1所示,该方法包括:

步骤110,根据待检测机械部件的表面图像,获取目标输入信息;

此处的待检测机械部件为所需进行表面裂纹几何信息检测的机械部件,如齿轮、机翼、涡轮叶片等机械部件,本实施例对此不作具体地限定。待检测机械部件的表面图像可以是预先从互联网下载输入的,或者通过图像采集设备实时共享输入的,或者是用户在用户终端通过用户输入生成的。所称的用户输入,可以是通过命令行界面输入、图形化界面输入、触摸输入、下拉选择输入、语音输入、手势输入、视觉输入、脑机输入等输入的信息等,本实施例对此不作具体地限定。

可选地,在获取到待检测机械部件的表面图像之后,可以基于待检测机械部件的表面图像,获取检测模型的目标输入信息;此处目标输入信息获取方式,可以是直接将待检测机械部件的表面图像作为目标输入信息;或者,为了便于后续更加精准地进行裂纹缺陷检测,可以是对待检测机械部件的表面图像进行至少一种预处理,以获取目标输入信息。此处的至少一种预处理可以是对待检测布匹表面图像进行图像增强方式实现、标准化处理等处理。

步骤120,将所述目标输入信息输入至检测模型中,得到所述待检测机械部件的裂纹缺陷对应的掩膜检测结果;其中,所述检测模型是基于样本数据集进行有监督训练得到的;所述样本数据集中是对多个裂纹缺陷样本图像进行样本扩充得到的;多个所述裂纹缺陷样本图像是多个样本机械部件的表面图像中存在裂纹缺陷的图像;

此处的检测模型可以是基于多种神经网络模型,如上采样网络、下采样网络、残差网络、自注意力网络中的多种神经网络模型构建形成,用于对机械部件的表面图像进行裂纹缺陷检测,以精准地输出裂纹缺陷对应的掩膜检测结果。

可选地,在执行步骤120之前,需要预先训练得到检测模型;该模型可以是是基于对多个裂纹缺陷样本图像进行样本扩充的样本数据集进行预先训练得到的,具体训练步骤包括:

首先,收集疲劳试验中多个样本机械部件的表面图像,得到一部分表面图像中存在裂纹缺陷的裂纹缺陷样本图像和一部分面图像中不存在裂纹缺陷的正常样本图像。由于裂纹缺陷样本图像的数量相对较少,因此为了扩充样本数量,还需要对各裂纹缺陷样本图像进行样本扩充,以得到各裂纹缺陷样本图像的扩充样本图像。

此处的样本扩充,可以是基于生成对抗网络或者自编码器进行模拟生成,或者对样本进行随机裁剪、翻转、增加噪声等增强处理实现。

同时,对各裂纹缺陷样本图像和各正常样本图像进行掩膜标签标记,并基于各裂纹缺陷样本图像的掩膜标签对各扩充样本图像进行同等的掩膜标签标记,也即为各扩充样本图像配置与其对应的裂纹缺陷样本图像相同的掩膜标签;随后,基于各裂纹缺陷样本图像、各正常样本图像、各扩充样本图像,以及各裂纹缺陷样本图像对应的掩膜标签、各正常样本图像对应的掩膜标签、各扩充样本图像对应的掩膜标签,构建样本数据集。

接着,可以是将样本数据集按照一定划分比例划分为训练集和验证集,以基于训练集和验证集对初始模型进行多次迭代优化训练,以从多次迭代训练后的初始模型中筛选出性能最优的训练后的初始模型作为检测模型。此处的划分比例可以根据实际训练需求进行划分,如按照7:3的比例划分为训练集和验证集。

此处,优化训练可以是基于样本数据集,对初始模型中所有模块进行整体训练,或者控制各部分模块以分阶段冻结微调的方式参与模型训练,如,先固定一部分模块的参数,对其他部分模块的参数进行优化之后,再固定训练后的其他部分模块,对该部分模块的参数进行优化,本实施例对此不作具体地限定。

随后,在通过迭代训练得到检测模型之后,可以将步骤110中获取的目标输入信息输入至检测模型中,由检测模型依照目标输入信息对待检测机械部件的表面图像进行裂纹缺陷检测,得到待检测机械部件的裂纹缺陷对应的掩膜检测结果。

步骤130,对所述掩膜检测结果进行掩膜细化,并从细化后的掩膜检测结果中提取所述待检测机械部件的裂纹缺陷对应的目标骨架;

可选地,在获取到待检测机械部件的裂纹缺陷对应的掩膜检测结果之后,可以对掩膜检测结果中的掩膜进行去掉噪声和细化边缘的处理,使得最终的掩膜结果更加精细和准确。此处的掩膜细化,可以是基于腐蚀操作和/或膨胀操作等实现。

接着,从细化后的掩膜检测结果中提取待检测机械部件的裂纹缺陷对应的目标骨架;此处的骨架提取,可以是基于通过中轴变换算法或者距离变换算法或者形态抗锯齿算法等方式实现。

步骤140,根据所述目标骨架的像素点集合,获取所述待检测机械部件的裂纹缺陷的几何信息;

此处的几何信息可以是长度值、曲率等,本实施对此不作具体地限定;以下以几何信息为长度值为例进行说明,对于其他几何信息可以进行同等替换。

可选地,在获取到目标骨架之后,可以是根据目标骨架的像素点集合的分布位置,计算出目标骨架的长度值,由此得到裂纹缺陷的长度值。

本申请实施例提供的方法,通过对多个裂纹缺陷样本图像进行样本扩充,得到包含丰富样本图像的样本数据集,基于此样本数据集可精准高效地训练出高性能的检测模型,以基于此检测模型自动对待检测机械部件的表面图像进行检测,避免人眼检测所存在的检测效率和准确性低的问题,由此实现高效、准确地进行机械部件表面裂纹的几何信息的检测。

在一些实施例中,所述检测模型是基于如下步骤训练得到的:

将各所述样本机械部件的表面图像划分为正常样本图像或者裂纹缺陷样本图像;

对各所述裂纹缺陷样本图像进行样本扩充,得到各所述裂纹缺陷样本图像对应的模拟缺陷样本图像;

分别对各所述模拟缺陷样本图像、各所述裂纹缺陷样本图像,以及各所述正常样本图像进行掩膜标签标记;

基于各所述模拟缺陷样本图像、各所述裂纹缺陷样本图像、各所述正常样本图像,以及掩膜标签标记结果,构建所述样本数据集;

基于所述样本数据集对初始模型进行训练,得到所述检测模型。

图2为本申请实施例提供的掩膜细化的机械部件表面裂纹几何信息检测方法的流程示意图之二;如图2所示,该方法包括检测模型训练步骤以及检测模型应用步骤;其中,检测模型训练步骤至少包括数据采集步骤、样本扩充步骤、数据预处理步骤、初始模型构建步骤。

首先,执行数据采集步骤,具体可以收集疲劳试验中多个样本机械部件的表面图像,并将其划分为存在裂纹缺陷的裂纹缺陷样本图像和不存在裂纹缺陷的正常样本图像。

其次,执行样本扩充步骤,具体由于在疲劳试验中,缺陷样本的出现伴随着随机性,且部件表面裂纹缺陷出现的概率相对较小,导致裂纹缺陷样本图像的数量相对较少,若收集足够的缺陷样本,则需要消耗很长的时间和精力。因此为了扩充样本数量,还需要对各裂纹缺陷样本图像进行样本扩充,以得到各裂纹缺陷样本图像的扩充样本图像。此处的样本扩充,可以是基于生成对抗网络或者自编码器进行模拟生成,得到各裂纹缺陷样本图像对应的模拟缺陷样本图像。

其次,执行数据预处理步骤,具体为提高后续机器视觉算法的准确性和稳定性,对样本扩充步骤中样本扩充后的数据进行预处理,用于后续模型训练;此处的预处理包括但不限于标准化处理、图像裁剪处理、过采样或欠采样的样本均衡处理,以及随机像素变换处理中的至少一项,本实施例对此不作具体地限定。

对于数据标准化,采用的是通过对各模拟缺陷样本图像、各裂纹缺陷样本图像、各正常样本图像中每一样本图像中每个像素值减去图像的均值并除以标准差,目的是将各样本图像的像素值转换为均值为0、方差为1的分布,从而提高模型的训练速度、稳定性和准确性,其公式如下:

其中z是标准化之后的像素值,x是原始像素值,μ是样本图像的像素值均值,σ是样本图像的像素值标准差。

对于图像裁剪处理,由于数据中裂纹部分占比较小,因此采用图像剪裁的方式去除冗余背景,保留有效的缺陷特征;具体使用图像裁剪来减小图像的大小,并保留感兴趣区域;对于各模拟缺陷样本图像和各裂纹缺陷样本图像,可以根据实际情况进行裁剪,以减少噪声或无用信息的影响,同时保留有效的缺陷特征。

对于过采样或欠采样的样本均衡处理,是使用过采样或欠采样技术调整样本图像的数量,使得每个类别的样本数量相对均衡,用以解决训练数据存在的类别不平衡情况。

对于随机像素变换处理,可以是通过随机亮度调整、随机对比度调整、随机色相调整、随机噪声添加等实现,以增加样本图像的多样性和鲁棒性。

同时,针对分别对各模拟缺陷样本图像、各裂纹缺陷样本图像,以及各正常样本图像进行掩膜标签标记。并基于各处理后的模拟缺陷样本图像、各处理后的裂纹缺陷样本图像,以及各处理后的正常样本图像,以及各样本图像对应的掩膜标签构建形成样本数据集。

此处,掩膜标签标记可以是用于由人工使用图像编辑工具并依靠先验知识或专家指导其手动绘制裂纹轮廓后保存形成的掩码图像。此处的掩码图像与原始样本图像具有相同的尺寸;其中,缺陷区域用特定的像素值(如255)表示,背景区域用0表示,且每个缺陷掩码图像与其对应的样本图像相匹配,以便于后续训练和验证。

接着,执行模型训练步骤,具体可以是构建初始模型;此处的初始模型可以是基于对U-NET(Convolutional Neural Network with Skip Connections,U型跳跃连接的卷积神经网络)模型进行改进,也即通过引入自注意力机制优化其骨干网络的卷积结构,同时运用残差连接,将U-net的每个子模块分别替换为具有残差连接的形式构建形成。随后,利用样本数据集对初始模型进行训练,获取初始模型在多个不同迭代次数下的预训练权重;并从多个不同迭代次数下的预训练权重中选择模型性能最优的预训练权重,构建形成检测模型。

本实施例提供的方法,样本划分、样本扩充、掩膜标签标记和样本数据集构建,可以提供多样性和鲁棒性的样本数据用于训练模型,由此基于此训练的检测模型进行机械部件表面裂纹几何信息检测,可有效提高机械部件表面缺陷检测的准确性和鲁棒性。

在一些实施例中,所述对各所述裂纹缺陷样本图像进行样本扩充,得到各所述裂纹缺陷样本图像对应的模拟缺陷样本图像,包括:

将目标噪声数据输入至改进的生成对抗网络中,由所述改进的生成对抗网络中的生成器,生成各所述裂纹缺陷样本图像对应的模拟缺陷样本图像;

其中,所述改进的生成对抗网络是基于样本噪声数据以及各所述裂纹缺陷样本图像进行无监督训练得到的;所述改进的生成对抗网络是基于多层可变形卷积构建的。

可选地,由于在疲劳试验中,缺陷样本的出现伴随着随机性,且部件表面裂纹缺陷出现的概率相对较小,导致裂纹缺陷样本图像的数量相对较少,若收集足够的缺陷样本,则需要消耗很长的时间和精力。因此,通过使用可变形卷积层代替DCGAN(Deep ConvolutionalGenerative Adversarial Networks,深度卷积生成对抗网络)模型中的卷积层,对DCGAN进行改进,得到能够更好的了解局部和全局特征改进的生成对抗网络;随后,将随机生成的目标噪声数据输入至改进的生成对抗网络,由改进的生成对抗网络依据目标噪声数据对各裂纹缺陷样本图像进行模拟缺陷样本图像生成,以实现对各裂纹缺陷样本图像的样本扩充,以解决缺陷样本图像不足的问题。

所称的改进的生成对抗网络用于图像生成任务,由一个生成器和一个判别器组成,通过博弈的方式学习生成真实数据分布的样本图像;在裂纹缺陷样本图像生成过程中,改进的生成对抗网络可以被用于生成具有特定缺陷类型的模拟缺陷样本图像,并且这些生成的模拟缺陷样本图像可以被用于检测模型的训练和测试。为增强生成器的表达能力,提高生成样本的质量,在输入裂纹缺陷样本图像的同时,增加噪声的输入;同时为进一步使模型更好的了解局部和全局特征,改进的生成对抗网络中使用可变形卷积代替DCGAN模型中的卷积层。

可变形卷积是一种改进的卷积操作,可以自适应地调整卷积核的形状和位置,从而提高模型对输入图像的适应性和感受野的灵活性。可变形卷积的计算公式可以表示为:

其中,x表示输入的特征图,ω表示可变形卷积核,

需要说明的是,该改进的生成对抗网络中生成器所包含的可变形卷积层可以根据实际需求进行配置,如包含4层或5层可变形卷积层;图3为本申请实施例提供的改进的生成对抗网络的结构示意图;示例性地,如图3所示,该改进的生成对抗网络可以是基于四层可变形卷积层堆叠形成;示例性地,第一层可变形卷积层DConV1的输入维度为1024×4×4,输出维度为512×8×8;第二层可变形卷积层DConV2的输入维度为512×8×8,输出维度为256×16×16,且DConV2的卷积核大小为5×5,移动步长为2;第三层可变形卷积层DConV3的输入维度为256×16×16,输出维度为128×32×32,且DConV3的卷积核大小为5×5,移动步长为2;第四层可变形卷积层DConV4的输入维度为128×32×32,输出维度为3×64×64,且DConV4的卷积核大小为5×5,移动步长为2。

此处,改进的生成对抗网络是基于如下步骤训练的,将样本噪声数据输入至改进的DCGAN模型中,由改进的DCGAN模型的生成器输出生成的模拟缺陷样本图像;将拟缺陷样本图像和裂纹缺陷样本图像混合在一起,输入到改进的DCGAN模型的鉴别器中,用于区分真实裂纹缺陷样本图像和生成的模拟缺陷样本图像,并通过反向传播算法更新生成器和鉴别器的权重参数,使得训练的生成器生成的模拟缺陷样本图像越来越接近真实裂纹缺陷样本图像,而训练的鉴别器能够更好地区分真实裂纹缺陷样本图像和生成的模拟缺陷样本图像,由此得到改进的生成对抗网络。

本实施例提供的方法,在缺陷样本扩充方面,采用改进的生成对抗网络进行样本图像扩充,可以生成具有多样化、高质量的模拟缺陷样本图像,同时还可以在一定范围内控制却显得裂纹形态,可以有效提升后续模型训练的鲁棒性和泛化能力,同时还可以节省大量手动标注真实缺陷样本的时间和人力成本,有效解决了现有模型训练中数据不足的问题,由此提高检测模型的检测精准性、泛化能力、效率,以及有效降低人工成本。

在一些实施例中,所述初始模型包括多个堆叠的上采样模块和多个堆叠的下采样模块、多个残差模块,以及多个自注意力模块;

各所述上采样模块与各所述下采样模块一一对应,各所述下采样模块与各所述残差模块一一对应,各所述下采样模块与各所述自注意力模块一一对应;

对于多个堆叠的下采样模块中除最后一层下采样模块之外的每一目标下采样模块,所述目标下采样模块的输出端,分别与所述目标下采样模块的下一层下采样模块的输入端和所述目标下采样模块对应的自注意力模块的输入端连接;

所述目标下采样模块对应的自注意力模块的输入端,还与所述目标下采样模块对应的上采样模块的上一层采样模块的输出端连接;

所述目标下采样模块对应的自注意力模块的输出端,与所述目标下采样模块对应的残差模块的输入端连接;

所述目标下采样模块对应的残差模块的输出端,与所述目标下采样模块对应的上采样模块的输出端连接。

此处,初始模型包括多个堆叠的上采样模块和多个堆叠的下采样模块、多个残差模块,以及多个自注意力模块;上采样模块、残差模块以及自注意力模块的层数是根据下采样模块的层数进行适应确定的;如下采样模块的层数为K层,对应上采样模块、残差模块以及自注意力模块的层数均为K-1层。下采样模块的层数可以根据实际需求进行设置,如3层、4层等。每一下采样模块可以是由多层卷积层、池化层构建生成的;每一下采样模块可以是由多层卷积层、上采样模块构建生成的。第i层的下采样模块与第K-i层的上采样模块对应。

图4为本申请实施例提供的初始模型的结构示意图;示例性地,如图4所示,在下采样模块的层数为4层的情况下,对应上采样模块、残差模块以及自注意力模块的层数均为3层。对于每一层下采样模块,其均可以是两层卷积核为3×3×3,激活函数为ReLU的卷积层以及一层最大池化层;其中,第一层下采样模块与第三层上采样模块对应;第二层下采样模块与第二层上采样模块对应;第三层下采样模块与第一层上采样模块对应;

每一层上采样模块顺次连接。

例如,第一层下采样模块的输出端与第二层下采样模块的输入端连接,第二层下采样模块的输出端与第三层下采样模块的输入端连接,第三层下采样模块的输出端与第四层下采样模块的输入端连接。

每一上采样模块的输入端与各自对应的下采样模块对应的残差模块的输出端连接;各自对应的下采样模块对应的残差模块的输入端,分别与各自对应的下采样模块对应的自注意力模块的输出端,以及上一层采样模块的输出端连接;各自对应的下采样模块对应的自注意力模块的输入端,分别与上一层采样模块的输出端以及各自对应的下采样模块的输出端连接。

例如,第一上采样模块的输入端,与第三下采样模块对应的残差模块的输出端连接,该残差模块的输入端,分别与第三下采样模块对应的自注意力模块的输出端以及第一上采样模块的上一层采样模块(也即第四下采样模块)的输出端连接;该自注意力模块的输入端,分别与第三下采样模块的输入端以及上一层采样模块的输出端连接;

第二上采样模块的输入端,与第二下采样模块对应的残差模块的输出端连接,该残差模块的输入端,分别与第二下采样模块对应的自注意力模块的输出端以及第二上采样模块的上一层采样模块(也即第一上采样模块)的输出端连接;该自注意力模块的输入端,分别与第二下采样模块的输入端以及上一层采样模块的输出端连接。

第三上采样模块的输入端,与第一下采样模块对应的残差模块的输出端连接,该残差模块的输入端,分别与第一下采样模块对应的自注意力模块的输出端以及第三上采样模块的上一层采样模块(也即第二上采样模块)的输出端连接;该自注意力模块的输入端,分别与第一下采样模块的输入端以及上一层采样模块的输出端连接。

本实施例提供的方法,通过将原始U-net模型的每个采样模块替换为具有残差连接和自注意力机制的形式。首先,通过引入残差模块,可以帮助解决U-Net中梯度消失或梯度爆炸等训练中的问题,残差模块能够传递输入和输出之间的差异,使得梯度能够更好地流向较浅层,从而更容易训练深层网络;其次,自注意力模块可以增强U-Net对输入特征的重要信息的感知能力,自注意力机制可以学习到特征之间的相关性,从而自适应地调整特征的重要程度,这有助于模型更好地聚焦于关键特征,并提升模型对局部和全局上下文的建模能力。

残差模块的计算公式形式为:

y=F(x)+x;

其中,x表示上一层的输入,F(x)表示当前层的映射函数,y表示当前层的输出。

自注意力模块的计算公式形式为:

Attention(Q,K,V)=softmax(Qk^T/sqrt(d_k))v;

其中,Q、K和V分别表示通过线性变换得到的查询(Query)、键(Ket)和值(Value)向量,d_k表示向量的维度。

本实施例提供的方法,通过将U-net模型的每个子模块替换为具有残差连接的自注意力机制模块,用于提升模型对重要信息感知能力的同时帮助解决U-net中梯度消失或梯度爆炸等训练中的问题,由此使得基于此训练的检测模型可以更加高效精准地进行机械部件表面裂纹几何信息的检测。

在一些实施例中,步骤130中从细化后的掩膜检测结果中提取所述待检测机械部件的裂纹缺陷对应的目标骨架,包括:

基于中轴变换算法,从所述细化后的掩膜检测结果中提取多个最大内切圆的圆心;

基于多个所述最大内切圆的圆心,构建形成所述目标骨架。

如图2所示,模块应用步骤包括检测结果获取步骤、中轴变换步骤以及目标骨架提取步骤以及裂纹几何信息检测步骤;

可选地,在基于检测结果获取步骤获取到细化后的掩膜检测结果之后,还需要执行中轴变换步骤以及目标骨架提取步骤,以实现目标骨架提取,具体实现步骤如下:

基于中轴变换算法,从细化后的掩膜检测结果中提取多个最大内切圆的圆心;将细化后的掩膜检测结果中全部最大内切圆的圆心集合,构建形成目标骨架。其中,目标骨架提取的公式表示为:

S={p|p∈R,f(p)=max

其中,S表示所有圆心组成的集合,R表示细化后的掩膜检测结果中掩膜图像的区域,p是该区域内的一个点,f(p)表示到p最大的内切圆半径,d(p,q)表示点p到点q的欧氏距离,r是给定的半径。

此处,最大内切圆的圆心的确定方式,可以是在掩膜图像的区域内以给定的任意一点为圆心,围绕该圆心画出一个最大的圆盘,若该圆心对应的圆盘至少与图像边界有两点内切,则确定该圆心即为最大内切圆的圆心,也即为目标骨架上的点;若该圆心对应的圆盘与图像边界有内切的点少于两点,则确定该圆心为非最大内切圆的圆心,也即不属于目标骨架的像素点。

本实施例提供的方法,通过中轴变换算法和最大内切圆提取裂纹骨架(下文也称目标骨架),从而为机械部件表面裂纹几何信息检测提供了更丰富的形状信息和几何特征,以便更加高效精准地进行机械部件表面裂纹几何信息的检测。

在一些实施中,所述几何信息包括长度值;

所述根据所述目标骨架的像素点集合,获取所述待检测机械部件的裂纹缺陷的几何信息,包括:

在所述细化后的掩膜检测结果中,对所述目标骨架的像素点集合中各像素点进行灰度值标记;

对各所述像素点的灰度值进行累加,根据累加结果,得到所述待检测机械部件的裂纹缺陷的长度值。

如图2所示,在基于目标骨架提取步骤获取到目标骨架之后,还需执行裂纹几何信息检测步骤,以实现机械部件表面裂纹几何信息检测,具体实现步骤如下:

在细化后的掩膜检测结果中的掩膜图像中将目标骨架的像素点集合中各像素点的灰度值标记为1,其余的像素点标记为0;然后,对掩膜图像中的每个像素点进行遍历,并将属于裂纹骨架的像素点的灰度值进行累加,即可得到裂纹缺陷的长度值;其中,裂纹缺陷的长度值可表示为:

L=∑

其中,L表示裂纹缺陷的长度值,M(p)表示像素点p的灰度值,表示该像素点是否属于裂纹骨架。

本实施例提供的方法,基于像素灰度值标记和累加的方法,可以快速精准地在目标骨架上测量裂纹缺陷的长度,相较于人工目测,不仅可以大大提升裂纹几何信息检测的效率,还可以避免人工经验判断错误,提高裂纹几何信息检测的效率。

在一些实施例中,步骤110中根据待检测机械部件的表面图像,获取目标输入信息,包括:

对所述待检测机械部件的表面图像进行预处理,得到所述目标输入信息;

其中,所述预处理包括标准化处理、图像裁剪处理、过采样或欠采样的样本均衡处理,以及随机像素变换处理中的至少一项。

可选地,为了提高输入至检测模型的目标输入信息的质量,进而提高检测结果的准确性和稳定性,可以使用标准化处理、图像裁剪处理、过采样或欠采样的样本均衡处理,以及随机像素变换处理中的至少一种预处理方式,对待检测机械部件的表面图像进行预处理,以得到高质量的目标输入信息。

在一些实施例中,为了验证本实施例提供的方法的有效性,将在同样参数配置的条件下,将本实施例提供的方法与原有方法进行对比,验证本方法的有效性。

图5为本申请实施例提供的原始U-net模型构建的检测模型的检测效果示意图;图6为本申请实施例提供的改进的U-net模型构建的检测模型的检测效果示意图;如图5和图6所示,通过引入残差自注意力模块和残差模块的改进U-net模块构建的检测模型(下文也称Attention-U-net)的PR(Precision-Recall Curve,精确率-召回率曲线)图面积大于未引入残差自注意力模块和残差模块的原始U-net模型构建的检测模型的PR图面积,因此引入残差自注意力模块和残差模块的改进U-net模块构建的检测模型的检测性能明显高于要优于原始U-net模型构建的检测模型,进而验证了本实施例提供的方法的有效性。

下面对本发明提供的掩膜细化的机械部件表面裂纹几何信息检测装置进行描述,下文描述的掩膜细化的机械部件表面裂纹几何信息检测装置与上文描述的掩膜细化的机械部件表面裂纹几何信息检测方法可相互对应参照。

图7为本实施例提供的掩膜细化的机械部件表面裂纹几何信息检测装置的结构示意图;如图7所示,该装置包括:

第一获取单元710用于根据待检测机械部件的表面图像,获取目标输入信息;

裂纹检测单元720用于将所述目标输入信息输入至检测模型中,得到所述待检测机械部件的裂纹缺陷对应的掩膜检测结果;

骨架提取单元730用于对所述掩膜检测结果进行掩膜细化,并从细化后的掩膜检测结果中提取所述待检测机械部件的裂纹缺陷对应的目标骨架;

第二获取单元740用于根据所述目标骨架的像素点集合,获取所述待检测机械部件的裂纹缺陷的几何信息;

其中,所述检测模型是基于样本数据集进行有监督训练得到的;所述样本数据集中是对多个裂纹缺陷样本图像进行样本扩充得到的;多个所述裂纹缺陷样本图像是多个样本机械部件的表面图像中存在裂纹缺陷的图像。

本实施例提供的装置,通过对多个裂纹缺陷样本图像进行样本扩充,得到包含丰富样本图像的样本数据集,基于此样本数据集可精准高效地训练出高性能的检测模型,以基于此检测模型自动对待检测机械部件的表面图像进行检测,避免人眼检测所存在的检测效率和准确性低的问题,由此实现高效、准确地进行机械部件表面裂纹的几何信息的检测。

图8示例了一种电子设备的实体结构示意图,如图8所示,该电子设备可以包括:处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行掩膜细化的机械部件表面裂纹几何信息检测方法,该方法包括:根据待检测机械部件的表面图像,获取目标输入信息;将所述目标输入信息输入至检测模型中,得到所述待检测机械部件的裂纹缺陷对应的掩膜检测结果;对所述掩膜检测结果进行掩膜细化,并从细化后的掩膜检测结果中提取所述待检测机械部件的裂纹缺陷对应的目标骨架;根据所述目标骨架的像素点集合,获取所述待检测机械部件的裂纹缺陷的几何信息;其中,所述检测模型是基于样本数据集进行有监督训练得到的;所述样本数据集中是对多个裂纹缺陷样本图像进行样本扩充得到的;多个所述裂纹缺陷样本图像是多个样本机械部件的表面图像中存在裂纹缺陷的图像。

此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的掩膜细化的机械部件表面裂纹几何信息检测方法,该方法包括:根据待检测机械部件的表面图像,获取目标输入信息;将所述目标输入信息输入至检测模型中,得到所述待检测机械部件的裂纹缺陷对应的掩膜检测结果;对所述掩膜检测结果进行掩膜细化,并从细化后的掩膜检测结果中提取所述待检测机械部件的裂纹缺陷对应的目标骨架;根据所述目标骨架的像素点集合,获取所述待检测机械部件的裂纹缺陷的几何信息;其中,所述检测模型是基于样本数据集进行有监督训练得到的;所述样本数据集中是对多个裂纹缺陷样本图像进行样本扩充得到的;多个所述裂纹缺陷样本图像是多个样本机械部件的表面图像中存在裂纹缺陷的图像。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的掩膜细化的机械部件表面裂纹几何信息检测方法,该方法包括:根据待检测机械部件的表面图像,获取目标输入信息;将所述目标输入信息输入至检测模型中,得到所述待检测机械部件的裂纹缺陷对应的掩膜检测结果;对所述掩膜检测结果进行掩膜细化,并从细化后的掩膜检测结果中提取所述待检测机械部件的裂纹缺陷对应的目标骨架;根据所述目标骨架的像素点集合,获取所述待检测机械部件的裂纹缺陷的几何信息;其中,所述检测模型是基于样本数据集进行有监督训练得到的;所述样本数据集中是对多个裂纹缺陷样本图像进行样本扩充得到的;多个所述裂纹缺陷样本图像是多个样本机械部件的表面图像中存在裂纹缺陷的图像。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

技术分类

06120116581702