产品缺陷检测定位的方法、装置、存储介质及终端设备转让专利

申请号 : CN201810019380.1

文献号 : CN108154508B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 冷家冰刘明浩梁阳文亚伟张发恩郭江亮唐进尹世明

申请人 : 北京百度网讯科技有限公司

摘要 :

本发明提出一种产品缺陷检测定位的方法、装置、存储介质及终端设备,其中,所述方法包括:根据待测产品的图片数据特征和产品缺陷复杂度,选取待训练的检测模型的神经网络结构;获取训练数据;其中,所述训练数据包括训练产品图片和所述训练产品图片中产品缺陷的标准类别和标准位置;根据所述训练数据训练选取的每一个神经网络结构的检测模型;从训练后的检测模型中选取拟合程度最好的检测模型以提供给检测服务器进行产品缺陷检测;其中,所述检测模型用于根据接收到的产品图片进行计算以获得所述接收到的产品图片中产品缺陷的预测类别和预测位置。采用本发明,能够提高检测产品缺陷的准确度。

权利要求 :

1.一种产品缺陷检测定位的方法,其特征在于,包括:

根据待测产品的图片数据特征和产品缺陷复杂度,选取待训练的检测模型的神经网络结构;

获取训练数据;其中,所述训练数据包括训练产品图片和所述训练产品图片中产品缺陷的标准类别和标准位置;

根据所述训练数据训练选取的每一个神经网络结构的检测模型;

从训练后的检测模型中选取拟合程度最好的检测模型以提供给检测服务器进行产品缺陷检测;其中,所述检测模型用于根据接收到的产品图片进行计算以获得所述接收到的产品图片中产品缺陷的预测类别和预测位置;

其中,所述训练的迭代截止条件为所述训练数据的产品图片的产品缺陷的标准类别和标准位置与当前训练的检测模型输出的预测结果之间的误差值小于误差阈值;

其中,所述神经网络结构包括卷积层、池化层和全连接层;以及所述选取待训练的检测模型的神经网络结构,包括:选取待训练的检测模型的神经网络结构的卷积层的神经元数量、池化层的池化形式和全连接层的映射结构;

所述从训练后的检测模型中选取拟合程度最好的检测模型,包括:

对于训练后的每一个检测模型,均通过该检测模型对所述训练数据中训练产品图片进行计算,获得所述训练数据中训练产品图片的预测结果;所述预测结果包括该训练产品图片的产品缺陷的预测类别和预测位置;以及根据所述训练数据和所述训练数据中训练产品图片的预测结果,计算该检测模型的拟合程度;以及根据训练后的每一个检测模型的拟合程度,从训练后的检测模型中选取拟合程度最好的检测模型。

2.如权利要求1所述的产品缺陷检测定位的方法,其特征在于,所述训练的方式包括信号前向传播和信号误差反向传播。

3.一种产品缺陷检测定位的方法,其特征在于,包括:

接收待测产品的产品图片;

根据当前存储的检测模型对所述产品图片进行计算,获得所述产品图片中产品缺陷的预测类别和预测位置;其中,所述检测模型是从根据训练数据训练生成的所有选取的神经网络结构的检测模型中选取拟合程度最好的检测模型,所述选取的神经网络结构是根据所述待测产品的图片数据特征和产品缺陷复杂度选取的,所述训练数据包括训练产品图片和所述训练产品图片中产品缺陷的标准类别和标准位置;

其中,所述训练的迭代截止条件为所述训练数据的产品图片的产品缺陷的标准类别和标准位置与当前训练的检测模型输出的预测结果之间的误差值小于误差阈值;

其中,所述神经网络结构包括卷积层、池化层和全连接层;以及所述选取的神经网络结构是根据所述待测产品的图片数据特征和产品缺陷复杂度选取的,包括:选取待训练的检测模型的神经网络结构的卷积层的神经元数量、池化层的池化形式和全连接层的映射结构;

所述从根据训练数据训练生成的所有选取的神经网络结构的检测模型中选取拟合程度最好的检测模型包括:对于训练后的每一个检测模型,均通过该检测模型对所述训练数据中训练产品图片进行计算,获得所述训练数据中训练产品图片的预测结果;所述预测结果包括该训练产品图片的产品缺陷的预测类别和预测位置;以及根据所述训练数据和所述训练数据中训练产品图片的预测结果,计算该检测模型的拟合程度;以及根据训练后的每一个检测模型的拟合程度,从训练后的检测模型中选取拟合程度最好的检测模型。

4.如权利要求3所述的产品缺陷检测定位的方法,其特征在于,

所述卷积层用于利用权值不同的卷积核对产品图片进行扫描卷积,从中提取各种意义的特征,并输出至特征图中;

所述池化层,用于对所述特征图进行降维操作;

所述全连接层,用于将提取的特征进行映射定位。

5.一种产品缺陷检测定位的装置,其特征在于,包括

结构选取模块,用于根据待测产品的图片数据特征和产品缺陷复杂度,选取待训练的检测模型的神经网络结构;

数据获取模块,用于获取训练数据;其中,所述训练数据包括训练产品图片和所述训练产品图片中产品缺陷的标准类别和标准位置;

检测模型训练模块,用于根据所述训练数据训练选取的每一个神经网络结构的检测模型;

检测模型选取模块,用于从训练后的检测模型中选取拟合程度最好的检测模型以提供给检测服务器进行产品缺陷检测;其中,所述检测模型用于根据接收到的产品图片进行计算,获得所述接收到的产品图片中产品缺陷的预测类别和预测位置;

其中,所述训练的迭代截止条件为所述训练数据的产品图片的产品缺陷的标准类别和标准位置与当前训练的检测模型输出的预测结果之间的误差值小于误差阈值;

其中,所述神经网络结构包括卷积层、池化层和全连接层;以及所述结构选取模块具体用于:选取待训练的检测模型的神经网络结构的卷积层的神经元数量、池化层的池化形式和全连接层的映射结构;

所述检测模型选取模块包括:

预测与拟合计算单元,用于对于训练后的每一个检测模型,均通过该检测模型对所述训练数据中训练产品图片进行计算,获得所述训练数据中训练产品图片的预测结果;所述预测结果包括该训练产品图片的产品缺陷的预测类别和预测位置;以及根据所述训练数据和所述训练数据中训练产品图片的预测结果,计算该检测模型的拟合程度;以及模型选取单元,用于根据训练后的每一个检测模型的拟合程度,从训练后的检测模型中选取拟合程度最好的检测模型。

6.一种产品缺陷检测定位的装置,其特征在于,包括:

产品图片接收模块,用于接收待测产品的产品图片;

预测计算模块,用于根据当前存储的检测模型对所述产品图片进行计算,获得所述产品图片中产品缺陷的预测类别和预测位置;其中,所述检测模型是从根据训练数据训练生成的所有选取的神经网络结构的检测模型中选取拟合程度最好的检测模型,所述选取的神经网络结构是根据所述待测产品的图片数据特征和产品缺陷复杂度选取的,所述训练数据包括训练产品图片和所述训练产品图片中产品缺陷的标准类别和标准位置;

其中,所述训练的迭代截止条件为所述训练数据的产品图片的产品缺陷的标准类别和标准位置与当前训练的检测模型输出的预测结果之间的误差值小于误差阈值其中,所述神经网络结构包括卷积层、池化层和全连接层;以及所述选取的神经网络结构是根据所述待测产品的图片数据特征和产品缺陷复杂度选取的包括:选取待训练的检测模型的神经网络结构的卷积层的神经元数量、池化层的池化形式和全连接层的映射结构;

所述从根据训练数据训练生成的所有选取的神经网络结构的检测模型中选取拟合程度最好的检测模型包括:对于训练后的每一个检测模型,均通过该检测模型对所述训练数据中训练产品图片进行计算,获得所述训练数据中训练产品图片的预测结果;所述预测结果包括该训练产品图片的产品缺陷的预测类别和预测位置;以及根据所述训练数据和所述训练数据中训练产品图片的预测结果,计算该检测模型的拟合程度;以及根据训练后的每一个检测模型的拟合程度,从训练后的检测模型中选取拟合程度最好的检测模型。

7.一种实现产品缺陷检测定位的终端设备,其特征在于,所述终端设备包括:一个或多个处理器;

存储装置,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1-4中任一所述的产品缺陷检测定位的方法。

8.一种计算机可读存储介质,其存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4中任一所述的产品缺陷检测定位的方法。

说明书 :

产品缺陷检测定位的方法、装置、存储介质及终端设备

技术领域

[0001] 本发明涉及计算机技术领域,尤其涉及一种产品缺陷检测定位的方法、装置、存储介质及终端设备。

背景技术

[0002] 在传统工业制造业生产场景中,质检是生产流程中的关键环节。在钢铁生产、汽车制造、造纸、电池制造、太阳能板制造等领域中,对产品质量进行控制的一种重要手段是对产品的表面状态进行检测,以判断产品是否存在瑕疵和缺陷,并根据检测结果对产品做相应的处理。在传统工业制造业生产场景中,质检是生产流程中的关键环节。在钢铁生产、汽车制造、造纸、电池制造、太阳能板制造等领域中,对产品质量进行控制的一种重要手段是对产品的表面状态进行检测,以判断产品是否存在瑕疵和缺陷,并根据检测结果对产品做相应的处理。在传统工业制造业生产中,这种基于产品表面状态的质检多为人工巡检或半自动化光学仪器辅助质检,不仅效率低下,而且容易出现误判,另外,这种方式产生的工业数据不易存储、管理和二次挖掘再利用。
[0003] 其中,现有的质检系统在缺陷检测与定位的应用中主要有两种方式。第一方式为纯人工质检方式,依赖于质检人员的经验,质检人员肉眼观察产品的外观照片进而依经验给出判断;第二方式为机器辅助的半自动质检方式,主要由具有一定判断能力的质检系统过滤掉没有缺陷的照片,然后再由质检人员对疑似存在缺陷的照片进行检测判断。
[0004] 但是,对于第一种质检方式和第二种质检方式,均涉及人工质检的流程,需要质检人员在生产现场进行巡视检查,发现缺陷之后人工记录下来再做后续处理。这种方法不仅效率低,容易漏判误判,数据很难进行二次利用挖掘,而且工业生产环境往往比较恶劣,对质检人员或生产人员的健康和安全会造成不利影响。以及,对于第二种质检测方式,由于其质检测系统是在基于传统专家系统或特征工程的质检系统发展而来,其检测判定规则都是基于经验固化到机器中的,难以随业务的发展迭代,导致随着生产工艺的发展质检系统的检测精度越来越低,甚至降低到完全不可用的状态。此外,传统质检系统的检测判定规则都由第三方供应商预先固化在硬件中,升级时不仅需要对生产线进行重大改造,而且价格昂贵。传统质检系统在安全性、规范化、可扩展性等方面都存在着明显不足,不利于传统工业生产线的优化升级。

发明内容

[0005] 本发明实施例提供一种产品缺陷检测定位的方法、装置、存储介质及终端设备,以解决或缓解现有技术中的以上技术问题。
[0006] 第一方面,本发明实施例提供了一种产品缺陷检测定位的方法,包括:
[0007] 根据待测产品的图片数据特征和产品缺陷复杂度,选取待训练的检测模型的神经网络结构;
[0008] 获取训练数据;其中,所述训练数据包括训练产品图片和所述训练产品图片中产品缺陷的标准类别和标准位置;
[0009] 根据所述训练数据训练选取的每一个神经网络结构的检测模型;
[0010] 从训练后的检测模型中选取拟合程度最好的检测模型以提供给检测服务器进行产品缺陷检测;其中,所述检测模型用于根据接收到的产品图片进行计算以获得所述接收到的产品图片中产品缺陷的预测类别和预测位置。
[0011] 结合第一方面,在第一方面的第一种实施方式中,所述神经网络结构包括卷积层、池化层和全连接层;以及所述选取待训练的检测模型的神经网络结构,包括:
[0012] 选取待训练的检测模型的神经网络结构的卷积层的神经元数量、池化层的池化形式和全连接层的映射结构。
[0013] 结合第一方面,在第一方面的第二种实施方式中,所述从训练后的检测模型中选取拟合程度最好的检测模型,包括:
[0014] 对于训练后的每一个检测模型,均通过该检测模型对所述训练数据中训练产品图片进行计算,获得所述训练数据中训练产品图片的预测结果;所述预测结果包括该训练产品图片的产品缺陷的预测类别和预测位置;以及根据所述训练数据和所述训练数据中训练产品图片的预测结果,计算该检测模型的拟合程度;以及
[0015] 根据训练后的每一个检测模型的拟合程度,从训练后的检测模型中选取拟合程度最好的检测模型。
[0016] 结合第一方面,在第一方面的第三种实施方式中,所述训练的方式包括信号前向传播和信号误差反向传播。
[0017] 结合第一方面,在第一方面的第四种实施方式中,所述训练的迭代截止条件为所述训练数据的产品图片的产品缺陷的标准类别和标准位置与当前训练的检测模型输出的预测结果之间的误差值小于误差阈值。
[0018] 第二方面,本发明实施例提供一种产品缺陷检测定位的装置,包括
[0019] 结构选取模块,用于根据待测产品的图片数据特征和产品缺陷复杂度,选取待训练的检测模型的神经网络结构;
[0020] 数据获取模块,用于获取训练数据;其中,所述训练数据包括训练产品图片和所述训练产品图片中产品缺陷的标准类别和标准位置;
[0021] 检测模型训练模块,用于根据所述训练数据训练选取的每一个神经网络结构的检测模型;
[0022] 检测模型选取模块,用于从训练后的检测模型中选取拟合程度最好的检测模型以提供给检测服务器进行产品缺陷检测;其中,所述检测模型用于根据接收到的产品图片进行计算,获得所述接收到的产品图片中产品缺陷的预测类别和预测位置。
[0023] 结合第二方面,在第二方面的第一种实施方式中,所述神经网络结构包括卷积层、池化层和全连接层;以及所述结构选取模块具体用于:
[0024] 选取待训练的检测模型的神经网络结构的卷积层的神经元数量、池化层的池化形式和全连接层的映射结构。
[0025] 结合第二方面,在第二方面的第二种实施方式中,所述检测模型选取模块包括:
[0026] 预测与拟合计算单元,用于对于训练后的每一个检测模型,均通过该检测模型对所述训练数据中训练产品图片进行计算,获得所述训练数据中训练产品图片的预测结果;所述预测结果包括该训练产品图片的产品缺陷的预测类别和预测位置;以及根据所述训练数据和所述训练数据中训练产品图片的预测结果,计算该检测模型的拟合程度;以及[0027] 模型选取单元,用于根据训练后的每一个检测模型的拟合程度,从训练后的检测模型中选取拟合程度最好的检测模型。
[0028] 结合第二方面,在第二方面的第三种实施方式中,所所述训练的方式包括信号前向传播和信号误差反向传播。
[0029] 所述装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
[0030] 在一个可能的设计中,产品缺陷检测定位的结构中包括处理器和存储器,所述存储器用于存储支持产品缺陷检测定位的装置执行上述第一方面中产品缺陷检测定位的方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。所述交通诱导图生成的装置还可以包括通信接口,用于产品缺陷检测定位的装置与其他设备或通信网络通信。
[0031] 第三方面,本发明实施例提供一种产品缺陷检测定位的方法,包括:
[0032] 接收待测产品的产品图片;
[0033] 根据当前存储的检测模型对所述产品图片进行计算,获得所述产品图片中产品缺陷的预测类别和预测位置;其中,所述检测模型是从根据训练数据训练生成的所有选取的神经网络结构的检测模型中选取拟合程度最好的检测模型,所述选取的神经网络结构是根据所述待测产品的图片数据特征和产品缺陷复杂度选取的,所述训练数据包括训练产品图片和所述训练产品图片中产品缺陷的标准类别和标准位置。
[0034] 结合第三方面,在第三方面的第一种实施方式中,所述神经网络结构包括卷积层、池化层和全连接层;
[0035] 所述卷积层用于利用权值不同的卷积核对产品图片进行扫描卷积,从中提取各种意义的特征,并输出至特征图中;
[0036] 所述池化层,用于对所述特征图进行降维操作;
[0037] 所述全连接层,用于将提取的特征进行映射定位。
[0038] 第四方面,本发明实施例提供一种产品缺陷检测定位的装置,包括:
[0039] 产品图片接收模块,用于接收待测产品的产品图片;
[0040] 预测计算模块,用于根据当前存储的检测模型对所述产品图片进行计算,获得所述产品图片中产品缺陷的预测类别和预测位置;其中,所述检测模型是从根据训练数据训练生成的所有选取的神经网络结构的检测模型中选取拟合程度最好的检测模型,所述选取的神经网络结构是根据所述待测产品的图片数据特征和产品缺陷复杂度选取的,所述训练数据包括训练产品图片和所述训练产品图片中产品缺陷的标准类别和标准位置。
[0041] 述装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
[0042] 在一个可能的设计中,产品缺陷检测定位的结构中包括处理器和存储器,所述存储器用于存储支持产品缺陷检测定位的装置执行上述第一方面中产品缺陷检测定位的方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。所述交通诱导图生成的装置还可以包括通信接口,用于产品缺陷检测定位的装置与其他设备或通信网络通信。
[0043] 第五方面,本发明实施例提供了一种计算机可读存储介质,用于产品缺陷检测定位的装置所用的计算机软件指令,其包括用于执行上述第一方面中产品缺陷检测定位的方法为上述第二方面中产品缺陷检测定位的装置所涉及的程序,或者用于执行上述第三方面中产品缺陷检测定位的方法为上述第四方面中产品缺陷检测定位的装置所涉及的程序。
[0044] 上述技术方案中的任一个技术方案具有如下优点或有益效果:
[0045] 本发明实施例通过根据待测产品的图片数据特征和产品缺陷复杂度,预选取待训练的检测模型的多个神经网络结构,然后利用训练数据分别对选取的每一个神经网络结构的检测模型进行训练,并从训练后的检测模型中选取拟合程度最好的检测模型,考量了神经网络结构的组织形式对检测模型训练的影响,以及能够根据图片数据特征以及产品缺陷复杂度来选取神经网络结构,则相应生成的检测模型能够对图片上的变形、模糊、光照变化等具有较高的鲁棒性,适应产品产品缺陷复杂度,有效提高检测产品缺陷的准确度。
[0046] 上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意,性的方面、实施方式和特征之外,通过参考附图,和以下的详细描述,本发明进一步的方面、实施方式和特征将会是容易明白的。

附图说明

[0047] 在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本发明公开的一些实施方式,而不应将其视为是对本发明范围的限制。
[0048] 图1是本发明第一实施例提供的产品缺陷检测定位的方法的流程示意图;
[0049] 图2是本发明第一实施例提供的检测模型的原理示意图;
[0050] 图3是本发明第一实施例提供的深度卷积神经网络的原理示意图;
[0051] 图4是本发明第一实施例提供的产品缺陷检测定位的方法的检测模型选取的流程示意图;
[0052] 图5是本发明第二实施例提供的产品缺陷检测定位的装置的结构示意图;
[0053] 图6是本发明第三实施例提供的产品缺陷检测定位的方法的流程示意图;
[0054] 图7是本发明第四实施例提供的产品缺陷检测定位的装置的结构示意图;
[0055] 图8 是本发明第三实施例提供的终端设备的结构示意图。

具体实施方式

[0056] 在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本发明的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
[0057] 实施例一
[0058] 请参阅图1,本发明实施例提供了一种产品缺陷检测定位的方法,由训练引擎执行,包括步骤S10至步骤S40,具体如下:
[0059] S10,根据待测产品的图片数据特征和产品缺陷复杂度,选取待训练的检测模型的神经网络结构。
[0060] 在本发明实施例中,对待测产品的表面状态进行检测时,可以通过摄像机等设备采集待测产品的产品图片集,由于摄像设备、摄像技术以及摄像环境的影响,导致图片的图片数据特征存在差异,例如,该图片为高清时,检测模型所选取的神经网络结构的卷积层的神经元数量可以减少。以及不同类型的产品其包含的产品缺陷的类型也是不同的,例如,在产品缺陷类型较多的情况下,检测模型所选取的神经网络结构的卷积层的神经元数量可以增加,以及全连接层的映射结构也可进一步调整。在具体实施时,神经网络结构是预选的,可以根据训练出来的检测模型的检测效果进一步调整。
[0061] 如图2所示,其为本实施例的检测模型的原理示意图。在本实施例中,所述检测模型可以包括深度卷积神经网络和缺陷定位分类网络。
[0062] 其中,所述深度卷积神经网络用于提取产品图片的特征,并将所述特征输入至所述缺陷定位分类网络中。所述深度卷积神经网络可以提取产品图片的特征信息,比如可能存在缺陷的部分图像进行提取等。
[0063] 所述缺陷定位分类网络用于判断深度卷积神经网络所提取的特征是否存在缺陷,并获得该缺陷的位置和类别。所述缺陷定位分类网络可以采用RCNN、 SSD、Mask RCNN等物体检测及图像分割模型,判断当前的特征是否存在缺陷,若存在,则判断当前缺陷的相对位置和所属类别。如果当前的特征中存在多处缺陷,则给出每个缺陷的相对位置坐标和类别。
[0064] 如图3所示,其为本发明实施例提供的深度卷积神经网络的原理示意图。将生产线上的原始图片作为模型的输入,而模型的输出则是代表缺陷类别的标签,例如0-n分别代表n+1类缺陷。其中,深度卷积神经网络的结构主要是由卷积层、池化层、全连层接等组成。其中,卷积层中利用权值不同的卷积核对原始图像或特征图(feature map)进行扫描卷积,从中提取各种意义的特征,并输出至特征图中。池化层则对特征图进行降维操作,保留特征图中的主要特征。利用这种具有卷积、池化操作的深度神经网络模型,可以对生产线上照片的变形、模糊、光照变化等具有较高的鲁棒性,对于分类任务具有更高的可泛化性。全连接层则将提取的特征映射到缺陷定位分类网络。对于不同的图片数据特征和产品缺陷复杂度,可以通过设计不同数量神经元、不同的池化形式、以及不同的全连接映射结构组成相应的深度神经网络模型,并进行训练。
[0065] S20,获取训练数据;其中,所述训练数据包括训练产品图片和所述训练产品图片中产品缺陷的标准类别和标准位置。
[0066] 在本发明实施例中,训练数据可以是存储在训练数据库中,训练产品图片可以预先拍摄采集好并检测识别完成后存储于训练数据库中,另外,运行检测模型的检测服务器对产品图片进行检测计算获取的检测结果也可存储于训练数据库中。在进行卷积神经网络的训练时,训练数据包括大量的具有产品缺陷的图片数据和不具有产品缺陷的图片数据对卷积神经网络进行训练。
[0067] S30,根据所述训练数据训练选取的每一个神经网络结构的检测模型。即,对于选取的每一个神经网络结构,均采用所述训练数据对该神经网络结构对应的检测模型进行训练,更新该神经网络结构对应的检测模型。
[0068] 其中,每一个模型的训练的迭代截止条件为所述训练数据的产品图片的产品缺陷的标准类别和标准位置与当前训练的检测模型输出的预测结果之间的误差值小于误差阈值。
[0069] S40,从训练后的检测模型中选取拟合程度最好的检测模型,以提供给检测服务器进行产品缺陷检测;其中,所述检测模型用于根据接收到的产品图片进行计算以获得所述接收到的产品图片中产品缺陷的预测类别和预测位置。
[0070] 在本发明实施例中,可以控制多个训练子单元分别对每一个检测模型进行训练,而当训练子单元的数量不足时,可以逐批次对检测模型进行训练。
[0071] 如图4所示,本步骤S40的具体实施过程如下:
[0072] S41,对于训练后的每一个检测模型,均通过该检测模型对所述训练数据中训练产品图片进行计算,获得所述训练数据中训练产品图片的预测结果;所述预测结果包括该训练产品图片的产品缺陷的预测类别和预测位置;以及根据所述训练数据和所述训练数据中训练产品图片的预测结果,计算该检测模型的拟合程度。
[0073] 在训练出检测模型时,可以继续以训练数据为检测标准,计算每一个检测模型的输出结果的拟合程度,可以以线性拟合的方式,例如,最小二乘法拟合或者最小经对误差回归等方式。
[0074] S42,根据训练后的每一个检测模型的拟合程度,从训练后的检测模型中选取拟合程度最好的检测模型。
[0075] 实施例二
[0076] 请参阅图5,本发明实施例提供一种产品缺陷检测定位的装置,包括:
[0077] 结构选取模块10,用于根据待测产品的图片数据特征和产品缺陷复杂度,选取待训练的检测模型的神经网络结构;
[0078] 数据获取模块20,用于获取训练数据;其中,所述训练数据包括训练产品图片和所述训练产品图片中产品缺陷的标准类别和标准位置;
[0079] 检测模型训练模块30,用于根据所述训练数据训练选取的每一个神经网络结构的检测模型;
[0080] 检测模型选取模块40,用于从训练后的检测模型中选取拟合程度最好的检测模型以提供给检测服务器进行产品缺陷检测;其中,所述检测模型用于根据接收到的产品图片进行计算,获得所述接收到的产品图片中产品缺陷的预测类别和预测位置。
[0081] 结合实施例二,在实施例二的第一种实施方式中,所述神经网络结构包括卷积层、池化层和全连接层;以及所述结构选取模块具体用于:
[0082] 选取待训练的检测模型的神经网络结构的卷积层的神经元数量、池化层的池化形式和全连接层的映射结构。
[0083] 结合实施例二,在实施例二的第二种实施方式中,所述检测模型选取模块包括:
[0084] 预测与拟合计算单元,用于对于训练后的每一个检测模型,均通过该检测模型对所述训练数据中训练产品图片进行计算,获得所述训练数据中训练产品图片的预测结果;所述预测结果包括该训练产品图片的产品缺陷的预测类别和预测位置;以及根据所述训练数据和所述训练数据中训练产品图片的预测结果,计算该检测模型的拟合程度;以及[0085] 模型选取单元,用于根据训练后的每一个检测模型的拟合程度,从训练后的检测模型中选取拟合程度最好的检测模型。
[0086] 结合实施例二,在实施例二的第三种实施方式中,所所述训练的方式包括信号前向传播和信号误差反向传播。
[0087] 所述装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
[0088] 实施例三
[0089] 请参阅图6,本发明实施例提供一种产品缺陷检测定位的方法,其可由检测服务器执行,包括:
[0090] S210,接收待测产品的产品图片;
[0091] S220,根据当前存储的检测模型对所述产品图片进行计算,获得所述产品图片中产品缺陷的预测类别和预测位置;其中,所述检测模型是从根据训练数据训练生成的所有选取的神经网络结构的检测模型中选取拟合程度最好的检测模型,所述选取的神经网络结构是根据所述待测产品的图片数据特征和产品缺陷复杂度选取的,所述训练数据包括训练产品图片和所述训练产品图片中产品缺陷的标准类别和标准位置。
[0092] 进一步地,当检测模型输出的预测类别为存在缺陷,则可以执行相应的响应动作,比如:可以执行报警操作,用于提醒工作人员进行核对等。另外,还可以将实时检测日志进行存储。
[0093] 以及,参见图3,所述神经网络结构包括卷积层、池化层和全连接层;
[0094] 所述卷积层用于利用权值不同的卷积核对产品图片进行扫描卷积,从中提取各种意义的特征,并输出至特征图中;
[0095] 所述池化层,用于对所述特征图进行降维操作;
[0096] 所述全连接层,用于将提取的特征进行映射定位。
[0097] 本发明实施例实施的技术效果与实施一的一致,在此不再赘述。
[0098] 实施例四
[0099] 请参阅图7,本发明实施例提供一种产品缺陷检测定位的装置,包括:
[0100] 产品图片接收模块210,用于接收待测产品的产品图片;
[0101] 预测计算模块220,用于根据当前存储的检测模型对所述产品图片进行计算,获得所述产品图片中产品缺陷的预测类别和预测位置;其中,所述检测模型是从根据训练数据训练生成的所有选取的神经网络结构的检测模型中选取拟合程度最好的检测模型,所述选取的神经网络结构是根据所述待测产品的图片数据特征和产品缺陷复杂度选取的,所述训练数据包括训练产品图片和所述训练产品图片中产品缺陷的标准类别和标准位置。
[0102] 所述装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
[0103] 在一个可能的设计中,产品缺陷检测定位的结构中包括处理器和存储器,所述存储器用于存储支持产品缺陷检测定位的装置执行上述第一方面中产品缺陷检测定位的方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。所述交通诱导图生成的装置还可以包括通信接口,用于产品缺陷检测定位的装置与其他设备或通信网络通信。
[0104] 实施例五
[0105] 本发明实施例还提供一种终端设备,如图8所示,该设备包括:存储器21 和处理器22,存储器21内存储有可在处理器22上运行的计算机程序。处理器 22执行所述计算机程序时实现上述实施例中的产品缺陷检测定位的方法。存储器21和处理器22的数量可以为一个或多个。
[0106] 该设备还包括:
[0107] 通信接口23,用于处理器22与外围设备之间的通信。
[0108] 存储器21可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
[0109] 如果存储器21、处理器22和通信接口23独立实现,则存储器21、处理器 22和通信接口23可以通过总线相互连接并完成相互间的通信。所述总线可以是工业标准体系结构(ISA,Industry Standard Architecture)总线、外部设备互连(PCI,Peripheral Component)总线或扩展工业标准体系结构(EISA,Extended Industry Standard Component)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0110] 可选的,在具体实现上,如果存储器21、处理器22及通信接口23集成在一块芯片上,则存储器21、处理器22及通信接口23可以通过内部接口完成相互间的通信。
[0111] 在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0112] 此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0113] 流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
[0114] 在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统) 使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
[0115] 本发明实施例所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质的更具体的示例至少(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器 (ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式只读存储器(CDROM)。另外,计算机可读存储介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
[0116] 在本发明实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于指令执行系统、输入法或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、射频(Radio Frequency,RF)等等,或者上述的任意合适的组合。
[0117] 应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA) 等。
[0118] 本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0119] 此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。所述存储介质可以是只读存储器,磁盘或光盘等。
[0120] 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。