产品的缺陷检测方法、装置、设备及计算机可读介质与流程

文档序号:31073515发布日期:2022-08-09 21:24阅读:146来源:国知局
产品的缺陷检测方法、装置、设备及计算机可读介质与流程

1.本技术涉及深度学习技术领域,尤其涉及一种产品的缺陷检测方法、装置、设备及计算机可读介质。


背景技术:

2.产品的缺陷检测是业务中必不可少的环节,曾经依赖人工进行检测的方式极大耗费人力物力及时间,而随着深度学习技术和机器视觉技术的发展,缺陷检测进入了自动化时代,如参考文献cn112991267a中提出的efficientdet,先对采集到的热轧带钢表面图片进行预处理后对缺陷位置进行标注,得到缺陷位置的矩形框参数,并设定类别标签,制作标准的带钢表面缺陷数据集,由标准的带钢表面缺陷数据集划分训练集和测试集;首先通过训练集训练efficientnet-rcnn模型,再将测试集输入到训练好的efficientnet-rcnn模型中,检测出带钢表面缺陷的类别和位置信息。然而,该技术方案是基于二维图像的缺陷检测方法,不具有精确的三维空间位置信息,易被光照不均、表面不洁、复杂纹理等信息的干扰,得不到精准的检测结果。相关技术中也存在应用三维点云进行缺陷检测的方案,但点云数据处理一直是个难题,检测精度还难以满足实际需求。
3.针对基于三维点云的缺陷检测中点云数据处理难度大,检测精度低的问题,目前尚未提出有效的解决方案。


技术实现要素:

4.本技术提供了一种产品的缺陷检测方法、装置、设备及计算机可读介质,以解决基于三维点云的缺陷检测中点云数据处理难度大,检测精度低的技术问题。
5.根据本技术实施例的一个方面,本技术提供了一种产品的缺陷检测方法,包括:将第一点云数据集输入第一神经网络模型,以利用所述第一神经网络模型基于无监督学习策略确定所述第一点云数据集在多个神经网络层级下对应的无监督聚类中心,其中,所述第一点云数据集中包括多个样本产品的三维点云数据,所述无监督聚类中心用于表示所述样本产品在不同神经网络层级下对应的结构特征;基于有监督学习策略来利用所述无监督聚类中心对所述第一点云数据集进行邻域特征提取的学习,以训练得到第二神经网络模型;将目标产品的第二点云数据集输入所述第二神经网络模型,以利用所述第二神经网络模型识别出所述目标产品的缺陷。
6.可选地,将第一点云数据集输入第一神经网络模型,以利用所述第一神经网络模型基于无监督学习策略确定所述第一点云数据集在多个神经网络层级下对应的无监督聚类中心包括:将所述第一点云数据集输入所述第一神经网络模型的第一层降采样层,得到所述第一层降采样层输出的降采样数据,其中,所述第一神经网络模型中包括多层级联的所述降采样层;
按照所述多层级联的所述降采样层的级联顺序,依次将上一层降采样层输出的所述降采样数据输入下一层降采样层进行降采样,得到每一层降采样层输出的所述降采样数据;在每一层降采样层输出的所述降采样数据中随机选取出多个点云作为中心点;确定每一层所述降采样数据中每个中心点的邻域;提取每个邻域中的三维点云数据,并基于提取出的点云数据在每个所述中心点对应的邻域中进行无监督聚类;提取每个邻域的聚类中心,得到每一层降采样层对应的所述无监督聚类中心。
7.可选地,将第一点云数据集输入第一神经网络模型之前,所述方法还包括按照如下方式获取所述第一点云数据集:采集多个类型的所述样本产品的三维点云数据,其中,每个类型的所述样本产品的样本数量与样本平均数量的数量差均小于或等于预设阈值;针对每个所述样本产品的类型和所述三维点云数据的采集环境对所述每个所述样本产品的所述三维点云数据进行降噪;将经过降噪处理的每个所述样本产品的所述三维点云数据进行分类组合,得到所述第一点云数据集。
8.可选地,基于有监督学习策略来利用所述无监督聚类中心对所述第一点云数据集进行邻域特征提取的学习,以训练得到第二神经网络模型包括:将具有多个神经网络层级下对应的无监督聚类中心的所述第一点云数据集输入第三神经网络模型,以对所述第三神经网络模型进行参数初始化,其中,所述第三神经网络模型为初始深度神经网络模型;参数初始化后,对所述第一点云数据集进行初步特征提取和降采样,以进行预处理;经过预处理后,将所述第一点云数据集输入所述第三神经网络模型的基础层模块,以在所述基础层模块中利用所述无监督聚类中心对所述第一点云数据集进行邻域特征提取的训练学习;聚合学习得到的每个邻域的最新结构特征,并基于聚合后的特征预测所述样本产品的预测缺陷;在所述预测缺陷与所述样本产品的实际缺陷的吻合度小于目标阈值的情况下,基于所述样本产品的所述实际缺陷与所述预测缺陷的损失值调整所述第三神经网络模型的参数,直至所述预测缺陷与所述样本产品的实际缺陷的吻合度大于或等于所述目标阈值的情况下,将所述第三神经网络模型确定为所述第二神经网络模型。
9.可选地,将所述第一点云数据集输入所述第三神经网络模型的基础层模块,以在所述基础层模块中利用所述无监督聚类中心对所述第一点云数据集进行邻域特征提取的训练学习包括:确定所述第三神经网络模型中的多个级联的所述基础层模块,其中,所述多个级联的所述基础层模块与所述多层级联的所述降采样层按照级联顺序一一对应;将每一层降采样层输出得到的所述降采样数据输入对应层级的所述基础层模块;在每层所述降采样数据中为每个所述无监督聚类中心划分邻域,并将每个层级的
所述降采样数据中的所述无监督聚类中心作为当前层级的所述基础层模块的特征提取核;为每个所述特征提取核随机初始化权重系数,并使用所述特征提取核对各自对应的邻域进行特征提取,以进行邻域特征提取的训练学习。
10.可选地,使用所述特征提取核对各自对应的邻域进行特征提取包括:设邻域中所包含的特征点的个数为n,所述特征点的维度为d,所述特征提取核的个数为m,其中,所述特征提取核中点的个数与邻域中点的个数相同;将所述特征提取核中所有点的权重参数构建为行向量,并堆叠到一起表示为矩阵形式得矩阵,k为行向量的数量;将任一点p为中心的邻域的所有点的特征以同样的矩阵形式表示为,其中,该邻域中点的坐标以同样的矩阵形式表示为;按照以下方式进行特征提取:按照以下方式进行特征提取:;其中,tnet为线性变换神经网络模块,t为行变换矩阵,符号表示矩阵乘法,符号表示矩阵按元素相乘操作,sum代表矩阵所有元素求和,为第i个特征提取核的权重系数,concat为拼接操作,为拼接后得到的更新的特征。
11.可选地,将目标产品的第二点云数据集输入所述第二神经网络模型之前,所述方法还包括:获取目标对象根据对所述目标产品的实际缺陷检测需求确定的目标头网络,其中,不同的所述实际缺陷检测需求对应的所述目标头网络中的网络结构不同,所述目标头网络中的网络结构包括语义分割结构、目标检测结构以及实例分割结构三者至少之一;将所述第二神经网络模型的输出层之前插入所述目标头网络,以利用当前所述第二神经网络模型对所述目标产品进行缺陷检测。
12.根据本技术实施例的另一方面,本技术提供了一种产品的缺陷检测装置,包括:无监督聚类模块,用于将第一点云数据集输入第一神经网络模型,以利用所述第一神经网络模型基于无监督学习策略确定所述第一点云数据集在多个神经网络层级下对应的无监督聚类中心,其中,所述第一点云数据集中包括多个样本产品的三维点云数据,所述无监督聚类中心用于表示所述样本产品在不同神经网络层级下对应的结构特征;有监督训练模块,用于基于有监督学习策略来利用所述无监督聚类中心对所述第一点云数据集进行邻域特征提取的学习,以训练得到第二神经网络模型;缺陷检测模块,用于将目标产品的第二点云数据集输入所述第二神经网络模型,以利用所述第二神经网络模型识别出所述目标产品的缺陷。
13.根据本技术实施例的另一方面,本技术提供了一种电子设备,包括存储器、处理器、通信接口及通信总线,存储器中存储有可在处理器上运行的计算机程序,存储器、处理器通过通信总线和通信接口进行通信,处理器执行计算机程序时实现上述方法的步骤。
14.根据本技术实施例的另一方面,本技术还提供了一种具有处理器可执行的非易失的程序代码的计算机可读介质,程序代码使处理器执行上述的方法。
15.本技术实施例提供的上述技术方案与相关技术相比具有如下优点:
本技术技术方案为将第一点云数据集输入第一神经网络模型,以利用所述第一神经网络模型基于无监督学习策略确定所述第一点云数据集在多个神经网络层级下对应的无监督聚类中心,其中,所述第一点云数据集中包括多个样本产品的三维点云数据,所述无监督聚类中心用于表示所述样本产品在不同神经网络层级下对应的结构特征;基于有监督学习策略来利用所述无监督聚类中心对所述第一点云数据集进行邻域特征提取的学习,以训练得到第二神经网络模型;将目标产品的第二点云数据集输入所述第二神经网络模型,以利用所述第二神经网络模型识别出所述目标产品的缺陷。本技术采用无监督学习的方式学习三维点云数据的内在结构特征,采用有监督学习的方式进行进一步特征提取的训练,从而自适应、高效地学习三维点云数据的特征,提升基于三维点云数据缺陷检测效果,解决了基于三维点云的缺陷检测中点云数据处理难度大,检测精度低的技术问题。
附图说明
16.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
17.为了更清楚地说明本技术实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
18.图1为根据本技术实施例提供的一种可选的产品的缺陷检测方法硬件环境示意图;图2为根据本技术实施例提供的一种可选的产品的缺陷检测方法流程示意图;图3为根据本技术实施例提供的一种可选的无监督聚类示意图;图4为根据本技术实施例提供的一种可选的第二神经网络模型结构示意图;图5为根据本技术实施例提供的一种可选的基础层模块结构示意图;图6为根据本技术实施例提供的一种可选的特征提取核初始化示意图;图7a为根据本技术实施例提供的一种可选的语义分割前点云图像示意图;图7b为根据本技术实施例提供的一种可选的语义分割结果示意图;图8为根据本技术实施例提供的一种可选的目标检测结果示意图;图9为根据本技术实施例提供的一种可选的实例分割结果示意图;图10为根据本技术实施例提供的一种可选的产品的缺陷检测装置框图;图11为本技术实施例提供的一种可选的电子设备结构示意图。
具体实施方式
19.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
20.在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本技术的说明,其本身并没有特定的意义。因此,“模块”与“部件”可以混合地使用。
21.为了解决背景技术中提及的问题,根据本技术实施例的一方面,提供了一种产品的缺陷检测方法的实施例。
22.可选地,在本技术实施例中,上述产品的缺陷检测方法可以应用于如图1所示的由终端101和服务器103所构成的硬件环境中。如图1所示,服务器103通过网络与终端101进行连接,可用于为终端或终端上安装的客户端提供服务(如点云数据处理、神经网络训练及使用、产品缺陷检测等服务),可在服务器上或独立于服务器设置数据库105,用于为服务器103提供数据存储服务,上述网络包括但不限于:广域网、城域网或局域网,终端101包括但不限于pc、手机、平板电脑等。
23.本技术实施例中的一种产品的缺陷检测方法可以由服务器103来执行,还可以是由服务器103和终端101共同执行,如图2所示,该方法可以包括以下步骤:步骤s202,将第一点云数据集输入第一神经网络模型,以利用所述第一神经网络模型基于无监督学习策略确定所述第一点云数据集在多个神经网络层级下对应的无监督聚类中心,其中,所述第一点云数据集中包括多个样本产品的三维点云数据,所述无监督聚类中心用于表示所述样本产品在不同神经网络层级下对应的结构特征;步骤s204,基于有监督学习策略来利用所述无监督聚类中心对所述第一点云数据集进行邻域特征提取的学习,以训练得到第二神经网络模型;步骤s206,将目标产品的第二点云数据集输入所述第二神经网络模型,以利用所述第二神经网络模型识别出所述目标产品的缺陷。
24.通过上述步骤s202至s206,本技术首先采用无监督学习的方式学习三维点云数据的内在结构特征,减少对三维点云数据标注信息的需求,极大地缩短项目开发周期和人工标注成本,然后采用有监督学习的方式进行进一步特征提取的训练,从而自适应、高效地学习三维点云数据的特征,提升基于三维点云数据缺陷检测效果,解决了基于三维点云的缺陷检测中点云数据处理难度大,检测精度低的技术问题。
25.在步骤s202中,无监督聚类的目的是对样本产品的三维点云数据做结构信息统计,从而自适应学习三维点云数据的内在结构特征,如此便可以脱离人工对三维点云数据的标注需求,极大缩短项目开发周期和人工标注成本。无监督聚类的整体过程如图3所示,下面参照图3对无监督聚类的整个过程进行详细说明。
26.可选地,将第一点云数据集输入第一神经网络模型之前,所述方法还包括按照如下方式获取所述第一点云数据集:步骤1,采集多个类型的所述样本产品的三维点云数据,其中,每个类型的所述样本产品的样本数量与样本平均数量的数量差均小于或等于预设阈值;步骤2,针对每个所述样本产品的类型和所述三维点云数据的采集环境对所述每个所述样本产品的所述三维点云数据进行降噪;步骤3,将经过降噪处理的每个所述样本产品的所述三维点云数据进行分类组合,得到所述第一点云数据集。
27.本技术实施例中,样本产品中包括带有缺陷的产品和没有缺陷的产品。样本产品可以是多个类型的产品,多个类型可以是同一业务下不同型号的产品,还可以是不同业务下的产品,可以根据实际需求划定样本产品的选取范围。
28.本技术实施例中,对各类型的样本产品进行均衡采样,从而减少偶然误差,提升最
终缺陷检测的准确率。
29.本技术实施例中,还可以根据每个所述样本产品的类型和所述三维点云数据的采集环境对所述每个所述样本产品的所述三维点云数据进行降噪,采集环境可以是采集设备、采集场景等。例如,在进行线激光扫描过程中,位于平台边缘或平台外的点属于噪声点,可以根据点的坐标范围进行去噪。不同型号的产品具有不同的结构特征,采集样本产品的点云作为训练数据时,可以参照样本产品的结构特征对采集到的点云进行去噪,如基于样本产品的实际结构特征构建滤网模型,用该滤网模型过滤掉与样本产品的结构具有较大偏差的点云,从而提升点云数据的采集精度。
30.可选地,将第一点云数据集输入第一神经网络模型,以利用所述第一神经网络模型基于无监督学习策略确定所述第一点云数据集在多个神经网络层级下对应的无监督聚类中心包括:步骤1,将所述第一点云数据集输入所述第一神经网络模型的第一层降采样层,得到所述第一层降采样层输出的降采样数据,其中,所述第一神经网络模型中包括多层级联的所述降采样层;步骤2,按照所述多层级联的所述降采样层的级联顺序,依次将上一层降采样层输出的所述降采样数据输入下一层降采样层进行降采样,得到每一层降采样层输出的所述降采样数据;步骤3,在每一层降采样层输出的所述降采样数据中随机选取出多个点云作为中心点;步骤4,确定每一层所述降采样数据中每个中心点的邻域;步骤5,提取每个邻域中的三维点云数据,并基于提取出的点云数据在每个所述中心点对应的邻域中进行无监督聚类;步骤6,提取每个邻域的聚类中心,得到每一层降采样层对应的所述无监督聚类中心。
31.本技术提供的无监督聚类所用的第一神经网络模型可以具有多层级联的降采样层,以3层为例进行说明,如图3所示,3层级联的降采样层依次对第一点云数据进行降采样,每一层降采样层均输出当前层对应的降采样数据,其中,可以采用最远点采样或随机降采样等方法进行降采样操作。降采样之后,对每一层降采样层输出的降采样数据进行邻域数据采集、无监督聚类以及聚类中心提取操作,即在每一层降采样层输出的所述降采样数据中随机选取出多个点云作为中心点,确定每一层所述降采样数据中每个中心点的邻域,提取每个邻域中的三维点云数据,并基于提取出的点云数据在每个所述中心点对应的邻域中进行无监督聚类,最后提取每个邻域的聚类中心,得到每一层降采样层对应的所述无监督聚类中心。
32.在步骤s204中,有了无监督聚类中心,即可以此作为监督进行特征提取的学习,从而训练得到第二神经网络模型。
33.可选地,基于有监督学习策略来利用所述无监督聚类中心对所述第一点云数据集进行邻域特征提取的学习,以训练得到第二神经网络模型包括:步骤1,将具有多个神经网络层级下对应的无监督聚类中心的所述第一点云数据集输入第三神经网络模型,以对所述第三神经网络模型进行参数初始化,其中,所述第三神
经网络模型为初始深度神经网络模型;步骤2,参数初始化后,对所述第一点云数据集进行初步特征提取和降采样,以进行预处理;步骤3,经过预处理后,将所述第一点云数据集输入所述第三神经网络模型的基础层模块,以在所述基础层模块中利用所述无监督聚类中心对所述第一点云数据集进行邻域特征提取的训练学习;步骤4,聚合学习得到的每个邻域的最新结构特征,并基于聚合后的特征预测所述样本产品的预测缺陷;步骤5,在所述预测缺陷与所述样本产品的实际缺陷的吻合度小于目标阈值的情况下,基于所述样本产品的所述实际缺陷与所述预测缺陷的损失值调整所述第三神经网络模型的参数,直至所述预测缺陷与所述样本产品的实际缺陷的吻合度大于或等于所述目标阈值的情况下,将所述第三神经网络模型确定为所述第二神经网络模型。
34.本技术实施例中,第三神经网络模型为初始深度神经网络模型,第三神经网络模型经过训练并达到要求后才可作为第二神经网络模型投入业务线进行使用。第二神经网络模型的结构如图4所示,包括inputembed模块、basiclayer基础层模块以及networkhead。其中inputembed主要功能为,对初始输入数据进行初步特征提取(升维)和降采样,其中降采样的程度由输入数据规模和网络规模共同决定。basiclayer是整个网络的核心模块,多个basiclayer模块级联的结构将输入数据转换为抽象的特征。networkhead根据任务目标的不同可使用检测、分割、分类等架构,将提取到的特征变换为项目所需的检测结果。下面对basiclayer基础层模块以及networkhead模块进行说明。
35.basiclayer基础层模块的结构如图5所示,包括邻域划分模块、特征提取模块以及特征聚合模块,其中邻域划分模块和特征聚合模块为辅助模块,邻域划分模块目的是为三维点云这种非结构化数据进行邻域搜寻、降采样等操作。特征聚合模块目的是聚合提取出的各个层级的特征。特征提取模块为核心模块,特征提取的基本单位为点云中某个点的邻域,其核心思想是利用无监督数据结构信息统计过程(即无监督聚类过程)得到的数据聚类中心(即无监督聚类中心)作为特征提取核,并为其设定权重系数,使用特征提取核中的权重系数与点云中点的邻域特征数据进行运算,并用运算结果更新聚类中心的点的特征。下面对此进行说明。
36.可选地,将所述第一点云数据集输入所述第三神经网络模型的基础层模块,以在所述基础层模块中利用所述无监督聚类中心对所述第一点云数据集进行邻域特征提取的训练学习包括:步骤1,确定所述第三神经网络模型中的多个级联的所述基础层模块,其中,所述多个级联的所述基础层模块与所述多层级联的所述降采样层按照级联顺序一一对应;步骤2,将每一层降采样层输出得到的所述降采样数据输入对应层级的所述基础层模块;步骤3,在每层所述降采样数据中为每个所述无监督聚类中心划分邻域,并将每个层级的所述降采样数据中的所述无监督聚类中心作为当前层级的所述基础层模块的特征提取核;步骤4,为每个所述特征提取核随机初始化权重系数,并使用所述特征提取核对各
自对应的邻域进行特征提取,以进行邻域特征提取的训练学习。
37.如图6所示,本技术实施例中第二神经网络中也设置有多个级联的基础层模块,多个级联的所述基础层模块与第一神经网络模型中多层级联的降采样层按照级联顺序一一对应。由此,可将每一层降采样层输出得到的所述降采样数据输入对应层级的所述基础层模块,从而对具有递进级联关系的多个基础层模块进行特征提取核的初始化,即在每层所述降采样数据中为每个所述无监督聚类中心划分邻域,并将每个层级的所述降采样数据中的所述无监督聚类中心作为当前层级的所述基础层模块的特征提取核。至此,便可为每个所述特征提取核随机初始化权重系数,并使用所述特征提取核对各自对应的邻域进行特征提取,以进行邻域特征提取的训练学习。
38.本技术实施例中,特征提取的详细过程包括:设邻域中所包含的特征点的个数为n,所述特征点的维度为d,所述特征提取核的个数为m,其中,所述特征提取核中点的个数与邻域中点的个数相同;将所述特征提取核中所有点的权重参数构建为行向量,并堆叠到一起表示为矩阵形式得矩阵,k为行向量的数量;将任一点p为中心的邻域的所有点的特征以同样的矩阵形式表示为,其中,该邻域中点的坐标以同样的矩阵形式表示为;按照以下方式进行特征提取:按照以下方式进行特征提取:;其中,tnet为线性变换神经网络模块,t为行变换矩阵,符号表示矩阵乘法,符号表示矩阵按元素相乘操作,sum代表矩阵所有元素求和,为第i个特征提取核的权重系数,concat为拼接操作,为拼接后得到的更新的特征。
39.本技术实施例中,networkhead模块与实际的缺陷检测需求有关,实际生产过程中需要根据具体项目需求选择不同的networkhead。
40.可选地,将目标产品的第二点云数据集输入所述第二神经网络模型之前,所述方法还包括:步骤1,获取目标对象根据对所述目标产品的实际缺陷检测需求确定的目标头网络,其中,不同的所述实际缺陷检测需求对应的所述目标头网络中的网络结构不同,所述目标头网络中的网络结构包括语义分割结构、目标检测结构以及实例分割结构三者至少之一;步骤2,将所述第二神经网络模型的输出层之前插入所述目标头网络,以利用当前所述第二神经网络模型对所述目标产品进行缺陷检测。
41.本技术实施例中,networkhead结构(目标头网络)可划分为语义分割、目标检测和实例分割等几种结构。语义分割会得到每一个点的类别,是属于哪一种缺陷或是背景。目标检测要将每一个缺陷实例用三维的框准确的框起来,但不对框内部的点进一步分类。实例分割在目标检测的基础上对框内的每个点也进行分类。实际生产过程中需要根据具体项目需求选择不同的networkhead。以语义分割为例,特征提取是降采样的过程,目的是提升感受野和特征的抽象程度。而后还需要升采样的过程,将特征图的分辨率不断提升,直到与输
入的三维点云数据一致,然后根据点云中每个点对应的特征,判断这个点所属的类别(是哪一种缺陷或者是背景),再通过标准判别、可视化等过程完成缺陷检测。语义分割的检测结果的示例如图7a(分割前)、图7b(分割后)所示,目标检测的检测结果的示例如图8所示,实例分割的检测结果的示例如图9所示。
42.本技术首先采用无监督学习的方式学习三维点云数据的内在结构特征,减少对三维点云数据标注信息的需求,极大地缩短项目开发周期和人工标注成本,然后采用有监督学习的方式进行进一步特征提取的训练,从而自适应、高效地学习三维点云数据的特征,提升基于三维点云数据缺陷检测效果,解决了基于三维点云的缺陷检测中点云数据处理难度大,检测精度低的技术问题。
43.根据本技术实施例的又一方面,如图10所示,提供了一种产品的缺陷检测装置,包括:无监督聚类模块1001,用于将第一点云数据集输入第一神经网络模型,以利用所述第一神经网络模型基于无监督学习策略确定所述第一点云数据集在多个神经网络层级下对应的无监督聚类中心,其中,所述第一点云数据集中包括多个样本产品的三维点云数据,所述无监督聚类中心用于表示所述样本产品在不同神经网络层级下对应的结构特征;有监督训练模块1003,用于基于有监督学习策略来利用所述无监督聚类中心对所述第一点云数据集进行邻域特征提取的学习,以训练得到第二神经网络模型;缺陷检测模块1005,用于将目标产品的第二点云数据集输入所述第二神经网络模型,以利用所述第二神经网络模型识别出所述目标产品的缺陷。
44.需要说明的是,该实施例中的无监督聚类模块1001可以用于执行本技术实施例中的步骤s202,该实施例中的有监督训练模块1003可以用于执行本技术实施例中的步骤s204,该实施例中的缺陷检测模块1005可以用于执行本技术实施例中的步骤s206。
45.此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现。
46.可选地,该无监督聚类模块,具体用于:将所述第一点云数据集输入所述第一神经网络模型的第一层降采样层,得到所述第一层降采样层输出的降采样数据,其中,所述第一神经网络模型中包括多层级联的所述降采样层;按照所述多层级联的所述降采样层的级联顺序,依次将上一层降采样层输出的所述降采样数据输入下一层降采样层进行降采样,得到每一层降采样层输出的所述降采样数据;在每一层降采样层输出的所述降采样数据中随机选取出多个点云作为中心点;确定每一层所述降采样数据中每个中心点的邻域;提取每个邻域中的三维点云数据,并基于提取出的点云数据在每个所述中心点对应的邻域中进行无监督聚类;提取每个邻域的聚类中心,得到每一层降采样层对应的所述无监督聚类中心。
47.可选地,该产品的缺陷检测装置,还包括数据采集模块,用于:采集多个类型的所述样本产品的三维点云数据,其中,每个类型的所述样本产品
的样本数量与样本平均数量的数量差均小于或等于预设阈值;针对每个所述样本产品的类型和所述三维点云数据的采集环境对所述每个所述样本产品的所述三维点云数据进行降噪;将经过降噪处理的每个所述样本产品的所述三维点云数据进行分类组合,得到所述第一点云数据集。
48.可选地,该有监督训练模块,具体用于:将具有多个神经网络层级下对应的无监督聚类中心的所述第一点云数据集输入第三神经网络模型,以对所述第三神经网络模型进行参数初始化,其中,所述第三神经网络模型为初始深度神经网络模型;参数初始化后,对所述第一点云数据集进行初步特征提取和降采样,以进行预处理;经过预处理后,将所述第一点云数据集输入所述第三神经网络模型的基础层模块,以在所述基础层模块中利用所述无监督聚类中心对所述第一点云数据集进行邻域特征提取的训练学习;聚合学习得到的每个邻域的最新结构特征,并基于聚合后的特征预测所述样本产品的预测缺陷;在所述预测缺陷与所述样本产品的实际缺陷的吻合度小于目标阈值的情况下,基于所述样本产品的所述实际缺陷与所述预测缺陷的损失值调整所述第三神经网络模型的参数,直至所述预测缺陷与所述样本产品的实际缺陷的吻合度大于或等于所述目标阈值的情况下,将所述第三神经网络模型确定为所述第二神经网络模型。
49.可选地,该有监督训练模块,还包括特征提取单元,用于:确定所述第三神经网络模型中的多个级联的所述基础层模块,其中,所述多个级联的所述基础层模块与所述多层级联的所述降采样层按照级联顺序一一对应;将每一层降采样层输出得到的所述降采样数据输入对应层级的所述基础层模块;在每层所述降采样数据中为每个所述无监督聚类中心划分邻域,并将每个层级的所述降采样数据中的所述无监督聚类中心作为当前层级的所述基础层模块的特征提取核;为每个所述特征提取核随机初始化权重系数,并使用所述特征提取核对各自对应的邻域进行特征提取,以进行邻域特征提取的训练学习。
50.可选地,该特征提取单元,还用于:设邻域中所包含的特征点的个数为n,所述特征点的维度为d,所述特征提取核的个数为m,其中,所述特征提取核中点的个数与邻域中点的个数相同;将所述特征提取核中所有点的权重参数构建为行向量,并堆叠到一起表示为矩阵形式得矩阵,k为行向量的数量;将任一点p为中心的邻域的所有点的特征以同样的矩阵形式表示为,其中,该邻域中点的坐标以同样的矩阵形式表示为;按照以下方式进行特征提取:按照以下方式进行特征提取:;
其中,tnet为线性变换神经网络模块,t为行变换矩阵,符号表示矩阵乘法,符号表示矩阵按元素相乘操作,sum代表矩阵所有元素求和,为第i个特征提取核的权重系数,concat为拼接操作,为拼接后得到的更新的特征。
51.可选地,该缺陷检测模块,还用于:获取目标对象根据对所述目标产品的实际缺陷检测需求确定的目标头网络,其中,不同的所述实际缺陷检测需求对应的所述目标头网络中的网络结构不同,所述目标头网络中的网络结构包括语义分割结构、目标检测结构以及实例分割结构三者至少之一;将所述第二神经网络模型的输出层之前插入所述目标头网络,以利用当前所述第二神经网络模型对所述目标产品进行缺陷检测。
52.根据本技术实施例的另一方面,本技术提供了一种电子设备,如图11所示,包括存储器1101、处理器1103、通信接口1105及通信总线1107,存储器1101中存储有可在处理器1103上运行的计算机程序,存储器1101、处理器1103通过通信接口1105和通信总线1107进行通信,处理器1103执行计算机程序时实现上述方法的步骤。
53.上述电子设备中的存储器、处理器通过通信总线和通信接口进行通信。所述通信总线可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。
54.存储器可以包括随机存取存储器(random access memory,简称ram),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
55.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
56.根据本技术实施例的又一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述任一实施例的步骤。
57.可选地,在本技术实施例中,计算机可读介质被设置为存储用于所述处理器执行以下步骤的程序代码:将第一点云数据集输入第一神经网络模型,以利用所述第一神经网络模型基于无监督学习策略确定所述第一点云数据集在多个神经网络层级下对应的无监督聚类中心,其中,所述第一点云数据集中包括多个样本产品的三维点云数据,所述无监督聚类中心用于表示所述样本产品在不同神经网络层级下对应的结构特征;基于有监督学习策略来利用所述无监督聚类中心对所述第一点云数据集进行邻域特征提取的学习,以训练得到第二神经网络模型;将目标产品的第二点云数据集输入所述第二神经网络模型,以利用所述第二神经网络模型识别出所述目标产品的缺陷。
58.可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
59.本技术实施例在具体实现时,可以参阅上述各个实施例,具有相应的技术效果。
60.可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(application specific integrated circuits,asic)、数字信号处理器(digital signal processing,dsp)、数字信号处理设备(dsp device,dspd)、可编程逻辑设备(programmable logic device,pld)、现场可编程门阵列(field-programmable gate array,fpga)、通用处理器、控制器、微控制器、微处理器、用于执行本技术所述功能的其它电子单元或其组合中。
61.对于软件实现,可通过执行本文所述功能的单元来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
62.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
63.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
64.在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
65.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
66.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
67.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意
在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
68.以上所述仅是本技术的具体实施方式,使本领域技术人员能够理解或实现本技术。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1