产品缺陷检测系统及方法与流程

文档序号:19490415发布日期:2019-12-24 13:42阅读:485来源:国知局
产品缺陷检测系统及方法与流程

本发明涉及机器视觉技术领域,特别是涉及一种产品缺陷检测系统及方法。



背景技术:

工业缺陷检测是工业生产中一个重要的环节,在完成产品生产后,需要对生产的产品进行缺陷检测,通过缺陷检测的产品可以进入后续加工或包装等环节。在这种情况下,如果不能及时检测出有缺陷的产品,则会导致有缺陷的产品进入后续环节,造成生产线资源的浪费,因此,在进行工业产品缺陷检测时,需要降低漏检和误检情况的发生。目前,在进行工业产品检测时主要以人工检测为主,检测效率较低。



技术实现要素:

本发明实施例提供了一种产品缺陷检测系统及方法,以解决现有技术中存在的产品缺陷检测效率较低的技术问题。

根据本发明的第一方面,公开了一种产品缺陷检测系统,所述系统包括:拍摄规划模块、图像采集模块、缺陷检测模块和缺陷整合模块;

所述拍摄规划模块,用于确定所述图像采集模块的图像采集方案,并向所述图像采集模块发送所述图像采集方案,其中,所述图像采集方案包括:在待检测产品的各姿态下的拍摄位点、在各拍摄位点的拍摄角度和所述图像采集模块的运动轨迹;

所述图像采集模块,用于接收所述拍摄规划模块发送的图像采集方案,按照所述图像采集方案对所述待检测产品进行图像采集得到图像序列,并向所述缺陷检测模块发送所述图像序列,其中,所述图像序列中包括:所述待检测产品在不同拍摄位点的不同拍摄角度下的图像;

所述缺陷检测模块,用于接收所述图像采集模块发送的图像序列,针对所述图像序列中的每个图像进行缺陷检测,得到各图像的缺陷检测结果,并向所述缺陷整合模块发送所述缺陷检测结果,其中,所述缺陷检测结果包括:图像中缺陷的位置坐标和缺陷类型信息;

所述缺陷整合模块,用于接收所述缺陷检测模块发送的缺陷检测结果,根据所述缺陷检测结果,确定同一拍摄位点下所述待检测产品的缺陷位置和类型。

可选地,作为一个实施例,所述系统还包括:产品姿态调整模块;

所述产品姿态调整模块,用于在图像采集过程中固定所述待检测产品,并在确定所述图像采集模块完成对所述待检测产品一个姿态的图像采集后,将所述待检测产品调整至另一姿态。

可选地,作为一个实施例,所述图像采集模块包括:单摄像头图像采集子模块、或多摄像头图像采集子模块;

所述单摄像头图像采集子模块包括:摄像头和多自由度机械臂,其中,所述摄像头设置在所述多自由度机械臂的末端,所述多自由度机械臂用于带动所述摄像头运动到所述待检测产品的各拍摄位点,并在各拍摄位点变化不同拍摄角度;

所述多摄像头图像采集子模块包括:支架和多个三轴摄像头,其中,所述多个三轴摄像头设置在所述支架上构成摄像头阵列,所述支架用于带动所述多个三轴摄像头整体运动。

可选地,作为一个实施例,所述图像采集模块为所述单摄像头图像采集子模块;

所述图像采集模块的运动轨迹包括:所述多自由度机械臂的移动路径和所述多自由度机械臂的转动角度。

可选地,作为一个实施例,所述图像采集模块为所述多摄像头图像采集子模块;

所述图像采集模块的运动轨迹包括:所述支架的运动路径、每个多自由度摄像头的转动角度和转动顺序。

可选地,作为一个实施例,所述图像采集模块还包括:照明子模块;

所述照明子模块,用于对所述待检测产品和摄像头的周围进行打光。

可选地,作为一个实施例,所述拍摄规划模块具体用于:

根据所述待检测产品当前所处的姿态,确定覆盖所述待检测产品的矩形拍摄范围,并在所述矩形拍摄范围内等间距选取m*n个阵列拍摄位点;其中,m和n均为正整数。

可选地,作为一个实施例,拍摄位点的个数与产品被拍摄面的复杂程度之间成正比关系,拍摄角度与产品被拍摄面的复杂程度之间成正比关系。

可选地,作为一个实施例,所述缺陷检测模块包括:图像分类子模块和缺陷定位子模块;

所述图像分类子模块,用于接收所述图像采集模块发送的图像序列,针对所述图像序列中的每个图像,分别将图像输入到预设图像分类模型,根据所述预设图像分类模型的输出结果,对所述图像序列中的图像进行分类得到分类结果,并向所述缺陷定位子模块发送所述分类结果;其中,所述分类结果包括:图像中存在缺陷和图像中不存在缺陷,所述预设图像分类模型是通过对多个第一样本进行模型训练得到的;

所述缺陷定位子模块,用于接收所述图像分类子模块发送的分类结果,根据所述分类结果,确定所述图像序列中存在缺陷的图像,针对每个存在缺陷的图像,分别将图像输入到预设缺陷定位模型,根据所述预设缺陷定位模型的输出结果,确定各存在缺陷的图像的缺陷定位结果;其中,所述缺陷定位结果包括:图像中缺陷所在矩形区域的位置坐标和缺陷的类型信息,所述矩形区域的尺寸大于或等于缺陷轮廓区域的尺寸,所述预设缺陷定位模型是通过对多个第二样本进行模型训练得到的。

可选地,作为一个实施例,所述缺陷检测模块还包括:缺陷分割子模块;

所述缺陷定位子模块,还用于向所述缺陷分割子模块发送所述缺陷定位结果;

所述缺陷分割子模块,用于接收所述缺陷定位子模块发送的缺陷定位结果,根据所述缺陷定位结果,确定各存在缺陷的图像中缺陷所在的矩形区域,针对每个矩形区域,分别将矩形区域输入到预设缺陷分割模型,根据所述预设缺陷分割模型的输出结果,确定各存在缺陷的图像的缺陷分割结果;其中,所述缺陷分割结果包括:图像中缺陷轮廓区域的位置坐标和缺陷的类型信息,所述预设缺陷分割模型是通过对多个第三样本进行模型训练得到的。

可选地,作为一个实施例,所述缺陷整合模块包括:坐标转换子模块和缺陷去重子模块;

所述坐标转换子模块,用于接收所述缺陷检测模块发送的缺陷检测结果,根据所述缺陷检测结果,确定所述图像序列的图像中缺陷的位置坐标,以拍摄位点为处理单位,将同一拍摄位点不同拍摄角度下图像中缺陷的位置坐标转换到同一坐标系下,得到坐标转换结果,并向所述缺陷去重子模块发送所述坐标转换结果;

所述缺陷去重子模块,用于接收所述坐标转换子模块发送的坐标转换结果,根据所述坐标转换结果,去除所述坐标转换结果中同一拍摄位点下对应同一缺陷的重复的位置坐标,得到去重结果,输出所述去重结果中每个缺陷的类型和位置。

可选地,作为一个实施例,所述坐标转换子模块包括:特征点提取单元、特征点匹配单元、矩阵计算单元和缺陷位置坐标变换单元;

所述特征点提取单元,用于以拍摄位点为处理单位,提取同一拍摄位点不同拍摄角度下各图像的特征点;

所述特征点匹配单元,用于将同一拍摄位点不同拍摄角度下的一个图像作为基准图像,对所述基准图像的特征点与同一拍摄位点不同拍摄角度下其他各图像的特征点进行匹配,得到特征点之间的对应关系;

所述矩阵计算单元,用于根据特征点提取单元提取到的特征点和所述特征点匹配单元匹配得到的对应关系,分别计算同一拍摄位点不同拍摄角度下其他各图像到所述基准图像的仿射变换矩阵;

所述缺陷位置坐标变换单元,用于分别对所述矩阵计算单元计算得到的仿射变换矩阵与同一拍摄位点不同拍摄角度下其他各图像中缺陷的位置坐标进行乘积运算,得到坐标转换结果。

可选地,作为一个实施例,所述缺陷类型信息包括:缺陷属于预设缺陷类型的概率,所述预设缺陷类型包括多个缺陷类型;

所述缺陷去重子模块包括:坐标去重单元和缺陷整合单元;

所述坐标去重单元,用于按照缺陷属于预设缺陷类型的概率,对所述坐标转换结果中各位置坐标的坐标区域进行排序,选择概率最大的坐标区域pmax1,计算pmax1与其他坐标区域的重叠度iou1,将iou1大于预设重叠度阈值的坐标区域去除,并标记所述pmax1;从剩余的坐标区域中选择pmax2,重复与所述pmax1相同的操作,直至剩余的坐标区域个数为零,得到去重结果{pmax1,…pmaxn};

所述缺陷整合单元,用于将{pmax1,…pmaxn}中的每个坐标区域确定为同一拍摄位点下所述待检测产品的缺陷位置,将所述缺陷检测结果中记录的与所述{pmax1,…pmaxn}对应的缺陷类型确定为同一拍摄位点下所述待检测产品的缺陷类型。

根据本发明的第二方面,公开了一种产品缺陷检测方法,所述方法基于上述产品缺陷检测系统,所述方法包括:

拍摄规划模块确定图像采集模块的图像采集方案,并向所述图像采集模块发送所述图像采集方案,其中,所述图像采集方案包括:在待检测产品的各姿态下的拍摄位点、在各拍摄位点的拍摄角度和所述图像采集模块的运动轨迹;

所述图像采集模块接收所述拍摄规划模块发送的图像采集方案,按照所述图像采集方案对所述待检测产品进行图像采集得到图像序列,并向缺陷检测模块发送所述图像序列,其中,所述图像序列中包括:所述待检测产品在不同拍摄位点的不同拍摄角度下的图像;

所述缺陷检测模块接收所述图像采集模块发送的图像序列,针对所述图像序列中的每个图像进行缺陷检测,得到各图像的缺陷检测结果,并向缺陷整合模块发送所述缺陷检测结果,其中,所述缺陷检测结果包括:图像中缺陷的位置坐标和缺陷类型信息;

所述缺陷整合模块接收所述缺陷检测模块发送的缺陷检测结果,根据所述缺陷检测结果,确定同一拍摄位点下所述待检测产品的缺陷位置和类型。

可选地,作为一个实施例,所述系统还包括产品姿态调整模块,所述方法还包括:

所述产品姿态调整模块在图像采集过程中固定所述待检测产品,并在确定所述图像采集模块完成对所述待检测产品一个姿态的图像采集后,将所述待检测产品调整至另一姿态。

可选地,作为一个实施例,所述图像采集模块包括:单摄像头图像采集子模块、或多摄像头图像采集子模块;

所述单摄像头图像采集子模块包括:摄像头和多自由度机械臂,其中,所述摄像头设置在所述多自由度机械臂的末端,所述多自由度机械臂用于带动所述摄像头运动到所述待检测产品的各拍摄位点,并在各拍摄位点变化不同拍摄角度;

所述多摄像头图像采集子模块包括:支架和多个三轴摄像头,其中,所述多个三轴摄像头设置在所述支架上构成摄像头阵列,所述支架用于带动所述多个三轴摄像头整体运动。

可选地,作为一个实施例,所述图像采集模块为所述单摄像头图像采集子模块;

所述图像采集模块的运动轨迹包括:所述多自由度机械臂的移动路径和所述多自由度机械臂的转动角度。

可选地,作为一个实施例,所述图像采集模块为所述多摄像头图像采集子模块;

所述图像采集模块的运动轨迹包括:所述支架的运动路径、每个多自由度摄像头的转动角度和转动顺序。

可选地,作为一个实施例,所述图像采集模块还包括照明子模块,所述方法还包括:

所述照明子模块对所述待检测产品和摄像头的周围进行打光。

可选地,作为一个实施例,所述拍摄规划模块根据所述待检测产品当前所处的姿态,确定覆盖所述待检测产品的矩形拍摄范围,并在所述矩形拍摄范围内等间距选取m*n个阵列拍摄位点;其中,m和n均为正整数。

可选地,作为一个实施例,拍摄位点的个数与产品被拍摄面的复杂程度之间成正比关系,拍摄角度与产品被拍摄面的复杂程度之间成正比关系。

可选地,作为一个实施例,所述缺陷检测模块包括:图像分类子模块和缺陷定位子模块;

所述图像分类子模块接收所述图像采集模块发送的图像序列,针对所述图像序列中的每个图像,分别将图像输入到预设图像分类模型,根据所述预设图像分类模型的输出结果,对所述图像序列中的图像进行分类得到分类结果,并向所述缺陷定位子模块发送所述分类结果;其中,所述分类结果包括:图像中存在缺陷和图像中不存在缺陷,所述预设图像分类模型是通过对多个第一样本进行模型训练得到的;

所述缺陷定位子模块接收所述图像分类子模块发送的分类结果,根据所述分类结果,确定所述图像序列中存在缺陷的图像,针对每个存在缺陷的图像,分别将图像输入到预设缺陷定位模型,根据所述预设缺陷定位模型的输出结果,确定各存在缺陷的图像的缺陷定位结果;其中,所述缺陷定位结果包括:图像中缺陷所在矩形区域的位置坐标和缺陷的类型信息,所述矩形区域的尺寸大于或等于缺陷轮廓区域的尺寸,所述预设缺陷定位模型是通过对多个第二样本进行模型训练得到的。

可选地,作为一个实施例,所述缺陷检测模块还包括缺陷分割子模块,所述方法还包括:

所述缺陷定位子模块向所述缺陷分割子模块发送所述缺陷定位结果;

所述缺陷分割子模块接收所述缺陷定位子模块发送的缺陷定位结果,根据所述缺陷定位结果,确定各存在缺陷的图像中缺陷所在的矩形区域,针对每个矩形区域,分别将矩形区域输入到预设缺陷分割模型,根据所述预设缺陷分割模型的输出结果,确定各存在缺陷的图像的缺陷分割结果;其中,所述缺陷分割结果包括:图像中缺陷轮廓区域的位置坐标和缺陷的类型信息,所述预设缺陷分割模型是通过对多个第三样本进行模型训练得到的。

可选地,作为一个实施例,所述缺陷整合模块包括:坐标转换子模块和缺陷去重子模块;

所述坐标转换子模块接收所述缺陷检测模块发送的缺陷检测结果,根据所述缺陷检测结果,确定所述图像序列的图像中缺陷的位置坐标,以拍摄位点为处理单位,将同一拍摄位点不同拍摄角度下图像中缺陷的位置坐标转换到同一坐标系下,得到坐标转换结果,并向所述缺陷去重子模块发送所述坐标转换结果;

所述缺陷去重子模块接收所述坐标转换子模块发送的坐标转换结果,根据所述坐标转换结果,去除所述坐标转换结果中同一拍摄位点下对应同一缺陷的重复的位置坐标,得到去重结果,输出所述去重结果中每个缺陷的类型和位置。

可选地,作为一个实施例,所述坐标转换子模块包括:特征点提取单元、特征点匹配单元、矩阵计算单元和缺陷位置坐标变换单元;

所述特征点提取单元以拍摄位点为处理单位,提取同一拍摄位点不同拍摄角度下各图像的特征点;

所述特征点匹配单元将同一拍摄位点不同拍摄角度下的一个图像作为基准图像,对所述基准图像的特征点与同一拍摄位点不同拍摄角度下其他各图像的特征点进行匹配,得到特征点之间的对应关系;

所述矩阵计算单元根据特征点提取单元提取到的特征点和所述特征点匹配单元匹配得到的对应关系,分别计算同一拍摄位点不同拍摄角度下其他各图像到所述基准图像的仿射变换矩阵;

所述缺陷位置坐标变换单元分别对所述矩阵计算单元计算得到的仿射变换矩阵与同一拍摄位点不同拍摄角度下其他各图像中缺陷的位置坐标进行乘积运算,得到坐标转换结果。

可选地,作为一个实施例,所述缺陷类型信息包括:缺陷属于预设缺陷类型的概率,所述预设缺陷类型包括多个缺陷类型;

所述缺陷去重子模块包括:坐标去重单元和缺陷整合单元;

所述坐标去重单元按照缺陷属于预设缺陷类型的概率,对所述坐标转换结果中各位置坐标的坐标区域进行排序,选择概率最大的坐标区域pmax1,计算pmax1与其他坐标区域的重叠度iou1,将iou1大于预设重叠度阈值的坐标区域去除,并标记所述pmax1;从剩余的坐标区域中选择pmax2,重复与所述pmax1相同的操作,直至剩余的坐标区域个数为零,得到去重结果{pmax1,…pmaxn};

所述缺陷整合单元将{pmax1,…pmaxn}中的每个坐标区域确定为同一拍摄位点下所述待检测产品的缺陷位置,将所述缺陷检测结果中记录的与所述{pmax1,…pmaxn}对应的缺陷类型确定为同一拍摄位点下所述待检测产品的缺陷类型。

根据本发明的第三方面,公开了一种产品缺陷检测设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的产品缺陷检测方法中的步骤。

根据本发明的第四方面,公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的产品缺陷检测方法中的步骤。

本发明实施例中,从多个拍摄位点和多个拍摄角度对待检测产品的各部位进行图像采集得到一定数量的图像,对采集到的每个图像进行缺陷检测,并对缺陷检测结果进行整合,得到每个拍摄位点下待检测产品的缺陷。与现有技术相比,由于本发明实施例中无需人工参与,因此可以提高检测效率;又由于本发明实施例中采集到的图像综合了多个拍摄位点和多个拍摄角度等因素,降低了光照和角度对图像质量的影响,因此基于本发明实施例采集到的图像进行缺陷检测,可以减少对缺陷的漏检和误检。

附图说明

图1是本发明的一个实施例的产品缺陷检测系统的结构框图;

图2是本发明的另一个实施例的产品缺陷检测系统的结构图;

图3是本发明的一个实施例的图像采集模块的应用场景图;

图4是本发明的另一个实施例的图像采集模块的应用场景图;

图5a是本发明的一个实施例的缺陷检测模块的结构框图;

图5b是本发明的一个实施例的预设图像分类模型输出结果的实例图;

图5c是本发明的一个实施例的预设缺陷定位模型输出结果的实例图;

图6a是本发明的另一个实施例的缺陷检测模块的结构框图;

图6b是本发明的一个实施例的预设缺陷分割模型输出结果的实例图;

图7是本发明的一个实施例的缺陷整合模块的结构框图;

图8a是本发明的一个实施例的坐标转换子模块的结构框图;

图8b是本发明的一个实施例的坐标转换过程的一个实例图;

图9a是本发明的一个实施例的缺陷去重子模块的结构框图;

图9b是本发明的一个实施例的缺陷去重过程的一个实例图;

图10是本发明的一个实施例的产品缺陷检测方法的流程图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。

工业缺陷检测是工业生产中一个重要的环节,在完成产品生产后,需要对生产的产品进行缺陷检测,通过缺陷检测的产品可以进入后续加工或包装等环节。在这种情况下,如果不能及时检测出有缺陷的产品,则会导致有缺陷的产品进入后续环节,造成生产线资源的浪费,后续加工还可能会导致产品缺陷无法补救,这就对工业缺陷检测的准确度提出了更高的要求,需要尽量减少漏检和误检情况的发生。

现有技术中,有采用人工进行缺陷检测的方法,其检测效率较低;此外,也有采用少量普通摄像头进行缺陷检测的方法,但由于图像采集角度单一,周围光线也容易影响图片质量,对于表面不平滑、有大量斜面或凹凸部分的产品容易造成缺陷的漏检和误检。

为了解决上述技术问题,本发明实施例提供了一种产品缺陷检测系统及方法。

下面首先对本发明实施例提供的一种产品缺陷检测系统进行介绍。

图1是本发明的一个实施例的产品缺陷检测系统的结构框图,如图1所示,产品缺陷检测系统100,可以包括:拍摄规划模块110、图像采集模块120、缺陷检测模块130和缺陷整合模块140;其中,

拍摄规划模块110,用于确定图像采集模块120的图像采集方案,并向图像采集模块120发送图像采集方案,其中,图像采集方案包括:在待检测产品的各姿态下的拍摄位点、在各拍摄位点的拍摄角度和图像采集模块的运动轨迹;

图像采集模块120,用于接收拍摄规划模块110发送的图像采集方案,按照图像采集方案对待检测产品进行图像采集得到图像序列,并向缺陷检测模块130发送图像序列,其中,图像序列中包括:待检测产品在不同拍摄位点的不同拍摄角度下的图像;

缺陷检测模块130,用于接收图像采集模块120发送的图像序列,针对图像序列中的每个图像进行缺陷检测,得到各图像的缺陷检测结果,并向缺陷整合模块140发送缺陷检测结果,其中,缺陷检测结果包括:图像中缺陷的位置坐标和缺陷类型信息;

缺陷整合模块140,用于接收缺陷检测模块130发送的缺陷检测结果,根据缺陷检测结果,确定同一拍摄位点下待检测产品的缺陷位置和类型。

本发明实施例中,待检测产品可以为单个零件,也可以为由多个零件组成的设备。待检测产品可以为结构简单的产品,也可以为结构复杂的产品,例如,表面存在凸起、凹陷、斜面等结构的产品。

本发明实施例中,可以将待检测产品调整至一个特定姿态,或者依次调整至多个姿态(例如,平放姿态、倾斜姿态、旋转姿态等等)。

本发明实施例中,对于每个姿态下的待检测产品,拍摄规划模块可以根据待检测产品的形状特点和所处姿态,将待检测产品的待拍摄表面划分(逻辑划分)为多个部分,针对每个部分设置一个对应的拍摄位点,拍摄位点可以理解为图像采集模块对该姿态下的待检测产品进行图像采集时的机位,图像采集模块在一个姿态下所有拍摄位点拍摄到的图像可以覆盖该姿态下待检测产品的整个待拍摄表面;之后,针对每个拍摄位点设置多个拍摄角度,针对多个拍摄位点和多个拍摄角度规划图像采集模块的运动轨迹,也就是,规划图像采集模块由一个拍摄位点移动至下一拍摄位点的运动路径和/或摄像头的转动顺序等。

本发明实施例中,当拍摄规划模块根据待检测产品的形状特点和所处姿态,设置待检测产品的拍摄位点和拍摄角度时,可以按照以下原则设置:拍摄位点的个数与产品被拍摄面的复杂程度之间成正比关系,拍摄角度与产品被拍摄面的复杂程度之间成正比关系。也就是,表面形状复杂区域的拍摄位点较密,拍摄时摄像头转动范围大,表面形状较平滑区域的拍摄位点较稀疏,摄像头转动范围小。此外,拍摄规划模块也可以支持用户手动添加拍摄位点和该拍摄位点的拍摄角度。

本发明实施例中,当需要对一定位姿下的待检测产品进行图像采集时,图像采集模块可以根据拍摄规划模块规划的运动轨迹,移动到当前位姿下的各个拍摄位点,在各拍摄位点变换多个拍摄角度进行图像采集。

在一个例子中,待检测产品处于平放姿态,该平放姿态下设置有5个拍摄位点,每个拍摄位点下设置有6个拍摄角度,则图像采集模块针对处于平放姿态下的待检测产品,可以采集到5*6=30个图像。

本发明实施例中,缺陷检测模块可以基于深度学习从图像序列中检测出待检测产品表面上的缺陷的位置坐标和缺陷类型信息,其中,缺陷的位置坐标可以为缺陷所在矩形区域的位置坐标,也可以为缺陷轮廓区域的位置坐标,缺陷类型信息可以为缺陷所属的具体类型例如划痕、凹陷等,也可以为缺陷处于某一种或某几种缺陷类型的概率例如属于划痕的概率,属于凹陷的概率等,在这种情况下,将最大概率对应的类型确定为缺陷类型。

本发明实施例中,缺陷整合模块可以对缺陷在待检测产品中的位置和类型进行分析,整合处于同一位置的缺陷,减少缺陷的重复上报。

可见,本发明实施例中,可以通过拍摄规划模块、图像采集模块、缺陷检测模块和缺陷整合模块的协同工作,获取并分析待检测产品表面,包括凸起、凹陷、斜面的大量图像信息,减少光照和角度对图像质量的影响,进而减少对缺陷的漏检和误检。

由上述实施例可见,本发明实施例中,从多个拍摄位点和多个拍摄角度对待检测产品的各部位进行图像采集得到一定数量的图像,对采集到的每个图像进行缺陷检测,并对缺陷检测结果进行整合,得到每个拍摄位点下待检测产品的缺陷。与现有技术相比,由于本发明实施例中无需人工参与,因此可以提高检测效率;又由于本发明实施例中采集到的图像综合了多个拍摄位点和多个拍摄角度等因素,降低了光照和角度对图像质量的影响,因此基于本发明实施例采集到的图像进行缺陷检测,可以减少对缺陷的漏检和误检。

在本发明提供的另一个实施例中,产品缺陷检测系统100还可以包括:产品姿态调整模块150;其中,

产品姿态调整模块150,用于在图像采集过程中固定待检测产品,并在确定图像采集模块完成对待检测产品一个姿态的图像采集后,将待检测产品调整至另一姿态。

本发明实施例中,产品姿态调整模块可以图像采集过程中平稳固定待检测产品,并在一组图像采集完成后转动待检测产品至另一姿态继续进行后续图像采集。这样做,一方面,可以确保待检测产品在缺陷检测过程中不会滑落,另一方面,自动化调整待检测产品的姿态,调整结果比较精确、稳定。

在本发明提供的另一个实施例中,图像采集模块120可以包括:单摄像头图像采集子模块、或多摄像头图像采集子模块;

单摄像头图像采集子模块包括:摄像头和多自由度机械臂,其中,摄像头设置在多自由度机械臂的末端,多自由度机械臂用于带动摄像头运动到待检测产品的各拍摄位点,并在各拍摄位点变化不同拍摄角度;

多摄像头图像采集子模块包括:支架和多个三轴摄像头,其中,多个三轴摄像头设置在支架上构成摄像头阵列,支架用于带动多个三轴摄像头整体运动,每个三轴摄像头都可以独立驱动摄像头分别绕x、y.和z轴转动。

为了便于理解,结合图3和图4所示的应用场景图进行描述,其中,图3示出了单摄像头图像采集子模块的应用场景图,图4示出了多摄像头图像采集子模块的应用场景图。如图3所示,摄像头设置在机械臂末端,机械臂带动摄像头运动到零件上方和侧面的多个拍摄位点,在每个拍摄位点变换不同拍摄角度进行产品画面的拍摄,在变换拍摄角度时,机械臂末端也即摄像头位置不动;如图4所示,16个多个三轴摄像头设置在支架上形成摄像头阵列,一个三轴摄像头的位置对应一个拍摄位点,每个三轴摄像头都可以独立驱动摄像头分别绕x、y和z轴转动(即360度旋转),根据不同拍摄位点的产品形状特点,可驱动不同点的三轴摄像头获取不同角度的图像。

本发明实施例中,拍摄规划模块可以根据图像采集模块的类型(或者特点),设置图像采集模块的运动轨迹,具体的,当图像采集模块为单摄像头图像采集子模块时,拍摄规划模块规划机械臂移动路径和末端的转动角度,此时,图像采集模块的运动轨迹包括:多自由度机械臂的移动路径和多自由度机械臂的转动角度;当图像采集模块为多摄像头图像采集子模块时,拍摄规划模块规划支架的运动路径、每个三轴摄像头的转动角度和顺序,此时,图像采集模块的运动轨迹包括:支架的运动路径、每个多自由度摄像头的转动角度和转动顺序。

本发明实施例中,为加速缺陷检测流程,可以仅对一个姿态下的待检测产品进行图像采集,此时,拍摄规划模块具体可以用于:根据待检测产品当前所处的姿态,确定覆盖待检测产品的矩形拍摄范围,并在矩形拍摄范围内等间距选取m*n个阵列拍摄位点;其中,m和n均为正整数。

本发明实施例中,每个拍摄位点的拍摄角度组可以固定为同样的一系列角度,也可以为不同的一系列角度。

本发明实施例中,当图像采集模块为单摄像头图像采集子模块时,拍摄规划模块可以针对图像采集模块做出以下规划:以离机械臂最远的拍摄位点起始点,到离机械臂最近的拍摄位点为结束点,中间距离的拍摄位点的拍摄顺序可采用路径规划算法选择可以遍历所有拍摄位点的机械臂末端运动最短路径或机械臂做功最少的路径,并结合机械臂几何参数和运动学的要求,确保该运动范围在机械臂工作空间内,且全过程机械臂没有陷于奇异点的危险。

本发明实施例中,当图像采集模块为多摄像头图像采集子模块时,拍摄规划模块可以针对图像采集模块做出以下规划:摄像头阵列移动至矩形拍摄范围,摄像头阵列中的每个摄像头对应一个拍摄位点,针对每个拍摄位点设置摄像头的转动角度。

在本发明提供的另一个实施例中,图像采集模块120还可以包括:照明子模块;其中,照明子模块,用于对待检测产品和摄像头的周围进行打光。

本发明实施例中,照明子模块可以在待检测产品和摄像头周围打上一圈环形光,将拍摄区域均匀照亮,以降低周围光线对图像质量的影响。

需要说明的是,本发明实施例中,对待检测产品进行图像采集时,可以只采集各拍摄位点各拍摄角度下的图像,并标注好位置角度上传至后续图像处理模块,也可以全程摄像,标定出视频中各拍摄位点各拍摄角度对应的时间点。

在本发明提供的另一个实施例中,当缺陷的位置坐标为缺陷所在矩形区域的位置坐标时,如图5a所示,缺陷检测模块130可以包括:图像分类子模块131和缺陷定位子模块132;

图像分类子模块131,用于接收图像采集模块120发送的图像序列,针对图像序列中的每个图像,分别将图像输入到预设图像分类模型,根据预设图像分类模型的输出结果,对图像序列中的图像进行分类得到分类结果,并向缺陷定位子模块发送分类结果;其中,分类结果包括:图像中存在缺陷和图像中不存在缺陷,预设图像分类模型是通过对多个第一样本进行模型训练得到的;

缺陷定位子模块132,用于接收图像分类子模块131发送的分类结果,根据分类结果,确定图像序列中存在缺陷的图像,针对每个存在缺陷的图像,分别将图像输入到预设缺陷定位模型,根据预设缺陷定位模型的输出结果,确定各存在缺陷的图像的缺陷定位结果;其中,缺陷定位结果包括:图像中缺陷所在矩形区域的位置坐标和缺陷的类型信息,矩形区域的尺寸大于或等于缺陷轮廓区域的尺寸,预设缺陷定位模型是通过对多个第二样本进行模型训练得到的。

本发明实施例中,预设图像分类模型可以为resnet、densenet或mobiene等卷积神经网络模型,预设图像分类模型为一个二分类模型,图像分类子模块用于通过预设图像分类模型对图像进行二分类,分类结果分为:图像中有缺陷和图像中没有缺陷。

在一个例子中,如图5b所示,将图5b中左边的图像输入到预设图像分类模型,输出结果是“存在缺陷概率:0.01”;将图5b中右边的图像输入到预设图像分类模型,输出结果是“存在缺陷概率:0.98”;两个图像的输出结果与预设概率阈值进行比较,例如预设概率阈值为0.8,由于左边图像的缺陷概率0.01小于0.8,因此确定左边图像的分类结果为图像中没有缺陷,由于右边图像的缺陷概率0.98大于0.8,因此确定右边图像的分类结果为图像中有缺陷。

本发明实施例中,预设缺陷定位模型可以为yolov3、faster_rcnn、或retinanet等卷积神经网络模型,预设缺陷定位模型是一个具备缺陷区域定位和缺陷类型识别功能的模型。

本发明实施例中,缺陷定位子模块用于通过预设缺陷定位模型定位图像中缺陷所在矩形区域的位置坐标(例如,图5c所示,通过预设缺陷定位模型定位出两个缺陷所在的两个矩形区域的位置坐标)和缺陷类型信息,其中,缺陷类型信息具体可以为缺陷属于预设缺陷类型的概率,预设缺陷类型包括多个缺陷类型,例如预设缺陷类型有20种,缺陷类型信息为缺陷分别属于上述20种缺陷的概率。

本发明实施例中,预设图像分类模型和预设缺陷定位模型的训练过程,与现有技术中相关模型的训练过程类似,在此不再赘述。

在本发明提供的另一个实施例中,为了更为精细化地定位出缺陷的位置坐标,缺陷的位置坐标为缺陷轮廓区域的位置坐标,此时,如图6a所示,缺陷检测模块130还可以包括:缺陷分割子模块133;

缺陷定位子模块132,还用于向缺陷分割子模块133发送缺陷定位结果;

缺陷分割子模块133,用于接收缺陷定位子模块132发送的缺陷定位结果,根据缺陷定位结果,确定各存在缺陷的图像中缺陷所在的矩形区域,针对每个矩形区域,分别将矩形区域输入到预设缺陷分割模型,根据预设缺陷分割模型的输出结果,确定各存在缺陷的图像的缺陷分割结果;其中,缺陷分割结果包括:图像中缺陷轮廓区域的位置坐标和缺陷的类型信息,预设缺陷分割模型是通过对多个第三样本进行模型训练得到的。

本发明实施例中,预设缺陷分割模型可以为fcn或mask-rcnn等卷积神经网络模型,预设缺陷分割模型是一个更为精细化的具备缺陷区域定位和缺陷类型识别功能的模型。

本发明实施例中,缺陷分割子模块用于通过预设缺陷分割模型确定图像中缺陷所在轮廓区域的位置坐标(例如,图6b所示,通过预设缺陷分割模型确定出一个缺陷所在的轮廓区域的位置坐标)和缺陷类型信息,其中,缺陷类型信息具体可以为缺陷属于预设缺陷类型的概率,预设缺陷类型包括多个缺陷类型,例如预设缺陷类型有15种,缺陷类型信息为缺陷分别属于上述15种缺陷的概率。

本发明实施例中,预设缺陷分割模型的训练过程,与现有技术中相关模型的训练过程类似,在此不再赘述。

在本发明提供的另一个实施例中,考虑到同一个缺陷在不同角度下表现形式不同,例如,在某些角度下,缺陷表现明显,而在另外一些角度下,缺陷表现不明显,以及为了减少缺陷的重复上报,因此需要整合处于同一位置的缺陷,具体的,可以将多角度观测下得到的缺陷转换到同一视角下,并将同一视角下重复的缺陷去除,得到不同缺陷在同一视角下的表示,此时,如图7所示,缺陷整合模块140可以包括:坐标转换子模块141和缺陷去重子模块142;

坐标转换子模块141,用于接收缺陷检测模块130发送的缺陷检测结果,根据缺陷检测结果,确定图像序列的图像中缺陷的位置坐标,以拍摄位点为处理单位,将同一拍摄位点不同拍摄角度下图像中缺陷的位置坐标转换到同一坐标系下,得到坐标转换结果,并向缺陷去重子模块142发送坐标转换结果;

缺陷去重子模块142,用于接收坐标转换子模块141发送的坐标转换结果,根据坐标转换结果,去除坐标转换结果中同一拍摄位点下对应同一缺陷的重复的位置坐标,得到去重结果,输出去重结果中每个缺陷的类型和位置。

本发明实施例中,在将同一拍摄位点不同拍摄角度下图像中缺陷的位置坐标转换到同一坐标系下时,首先需要确定基坐标,具体的,可以将同一拍摄位点某一拍摄角度拍摄的图像的坐标确定为基坐标,也可以自定义基坐标,之后将同一拍摄位点不同拍摄角度下图像中缺陷的位置坐标转换到基坐标去。

本发明实施例中,去重结果中保留的各位置坐标的坐标区域为待检测产品的缺陷位置,去重结果中保留的各位置坐标的坐标区域对应的缺陷类型为待检测产品的缺陷类型。

在本发明提供的另一个实施例中,当将同一拍摄位点某一拍摄角度拍摄的图像的坐标确定为基坐标时,如图8a所示,坐标转换子模块141可以包括:特征点提取单元1411、特征点匹配单元1412、矩阵计算单元1413和缺陷位置坐标变换单元1414;

特征点提取单元1411,用于以拍摄位点为处理单位,提取同一拍摄位点不同拍摄角度下各图像的特征点;

特征点匹配单元1412,用于将同一拍摄位点不同拍摄角度下的一个图像作为基准图像,对基准图像的特征点与同一拍摄位点不同拍摄角度下其他各图像的特征点进行匹配,得到特征点之间的对应关系;

矩阵计算单元1413,用于根据特征点提取单元1411提取到的特征点和特征点匹配单元1412匹配得到的对应关系,分别计算同一拍摄位点不同拍摄角度下其他各图像到基准图像的仿射变换矩阵;

缺陷位置坐标变换单元1414,用于分别对矩阵计算单元1413计算得到的仿射变换矩阵与同一拍摄位点不同拍摄角度下其他各图像中缺陷的位置坐标进行乘积运算,得到坐标转换结果。

本发明实施例中,特征点提取单元可以通过brief算法或者现有技术中的其他特征点提取算法,提取同一拍摄位点不同拍摄角度下各图像的特征点。

本发明实施例中,特征点匹配单元可以通过pnp算法、brute-force算法或者现有技术中的其他特征点匹配算法,对两两图像的特征点进行匹配。

本发明实施例中,矩阵计算单元可以通过ransac算法和两两图像的特征点,计算一个图像到另一个图像的仿射变换矩阵。

在一个例子中,以基坐标为同一拍摄位点某一拍摄角度拍摄的图像的坐标为例,图像采集设备在同一拍摄位点不同拍摄角度下采集到5张图像,分别为图像a、图像b、图像c、图像d和图像e,特征点提取单元提取图像a的特征点、图像b的特征点、图像c的特征点、图像d的特征点和图像e的特征点;

特征点匹配单元将图像a作为基准图像,匹配图像a的特征点与图像b的特征点,匹配图像a的特征点与图像c的特征点,匹配图像a的特征点与图像d的特征点,匹配图像a的特征点与图像e的特征点,最终得到:图像a的特征点与图像b的特征点的对应关系1、图像a的特征点与图像c的特征点的对应关系2,图像a的特征点与图像d的特征点的对应关系3,匹配图像a的特征点与图像e的特征点的对应关系4;

矩阵计算单元采用公式按照对应关系1将图像a的特征点输入到公式(1)左侧,将图像b的特征点输入到公式(1)右侧,得到由图像b到图像a的仿射变换矩阵h1;按照对应关系2将图像a的特征点输入到公式(1)左侧,将图像c的特征点输入到公式(1)右侧,得到由图像c到图像a的仿射变换矩阵h2;按照对应关系3将图像a的特征点输入到公式(1)左侧,将图像d的特征点输入到公式(1)右侧,得到由图像d到图像a的仿射变换矩阵h3;按照对应关系4将图像a的特征点输入到公式(1)左侧,将图像e的特征点输入到公式(1)右侧,得到由图像e到图像a的仿射变换矩阵h4;其中,

矩阵计算单元将仿射变换矩阵h1与图像b中缺陷的位置坐标进行乘积运算,得到图像a视角(或坐标系)下图像b中缺陷的位置坐标;将仿射变换矩阵h2与图像c中缺陷的位置坐标进行乘积运算,得到图像a视角(或坐标系)下图像c中缺陷的位置坐标;将仿射变换矩阵h3与图像d中缺陷的位置坐标进行乘积运算,得到图像a视角(或坐标系)下图像d中缺陷的位置坐标;将仿射变换矩阵h4与图像e中缺陷的位置坐标进行乘积运算,得到图像a视角(或坐标系)下图像e中缺陷的位置坐标。

为了便于理解,用“区域”的方式描述上述转换后的位置坐标,这里提到的“区域”是位置坐标的坐标区域,该坐标区域可以为缺陷所在的矩形区域,也可以为缺陷的轮廓区域。当坐标区域为缺陷所在的矩形区域时,例如,图像a视角下图像a中缺陷的位置坐标的坐标区域为图8b中的区域1、图像a视角下图像b中缺陷的位置坐标的坐标区域为图8b中的区域2,图像a视角下图像c中缺陷的位置坐标的坐标区域为图8b中的区域3,图像a视角下图像d中缺陷的位置坐标的坐标区域为图8b中的区域4,图像a视角下图像e中缺陷的位置坐标的坐标区域为图8b中的区域5。

在本发明提供的另一个实施例中,当缺陷类型信息包括:缺陷属于预设缺陷类型的概率,预设缺陷类型包括多个缺陷类型时,如图9a所示,缺陷去重子模块142可以包括:坐标去重单元1421和缺陷整合单元1422;

坐标去重单元1421,用于按照缺陷属于预设缺陷类型的概率,对坐标转换结果中各位置坐标的坐标区域进行排序,选择概率最大的坐标区域pmax1,计算pmax1与其他坐标区域的重叠度iou1,将iou1大于预设重叠度阈值的坐标区域去除,并标记pmax1;从剩余的坐标区域中选择pmax2,重复与pmax1相同的操作,直至剩余的坐标区域个数为零,得到去重结果{pmax1,…pmaxn};

缺陷整合单元1422,用于将{pmax1,…pmaxn}中的每个坐标区域确定为同一拍摄位点下待检测产品的缺陷位置,将缺陷检测结果中记录的与{pmax1,…pmaxn}对应的缺陷类型确定为同一拍摄位点下待检测产品的缺陷类型。

上一个例子,根据各坐标区域区域1~区域5属于缺陷的概率(该概率可以来源于上述预设缺陷定位模型,也可以来源于预设缺陷分割模型)做排序,例如从大到小属于缺陷的概率分别为区域3、区域2、区域4、区域1和区域5;

选择概率最大的区域3,分别计算区域1、区域2、区域4、区域5与区域3的iou,如果区域1、区域2、区域4、区域5与区域3的iou均超过阈值,那么就去除区域1、区域2、区域4、区域5,标记并保留区域3,如图9b所示,将区域3确定为待检测产品的缺陷位置,将区域3的缺陷类型确定为待检测产品的缺陷类型。

在另一个例子中,例如通过上述特征点提取单元、特征点匹配单元、矩阵计算单元和缺陷位置坐标变换单元的协同处理,得到6个坐标区域,分别为区域11、区域12、区域13、区域14、区域15和区域16,根据各坐标区域区域11~区域16属于缺陷的概率(该概率可以来源于上述预设缺陷定位模型,也可以来源于预设缺陷分割模型)做排序,例如从大到小属于缺陷的概率分别为区域16、区域15、区域14、区域13、区域12和区域11;

首先,选择概率最大的区域16,分别计算区域11、区域12、区域13、区域14、区域15与区域16的iou,如果区域12、区域14与区域16的iou均超过阈值,那么就去除区域12和区域14,标记并保留区域16;

接着,从剩余的坐标区域区域11、区域13和区域15中选择缺陷概率最大的区域15,计算区域11、区域13与区域15的iou,如果区域11、区域13与区域15的iou均超过阈值,则去除区域11和区域13,标记并保留区域15,最终得到去重结果{区域16,区域15},将区域16和区域15确定为待检测产品的缺陷位置,将区域16和区域15的缺陷类型确定为待检测产品的缺陷类型。

图10是本发明的一个实施例的产品缺陷检测方法的流程图,该方法基上述产品缺陷检测系统,如图10所示,该方法可以包括以下步骤:步骤1001、步骤1002、步骤1003和步骤1004,其中,

在步骤1001中,拍摄规划模块确定图像采集模块的图像采集方案,并向图像采集模块发送图像采集方案,其中,图像采集方案包括:在待检测产品的各姿态下的拍摄位点、在各拍摄位点的拍摄角度和图像采集模块的运动轨迹。

在步骤1002中,图像采集模块接收拍摄规划模块发送的图像采集方案,按照图像采集方案对待检测产品进行图像采集得到图像序列,并向缺陷检测模块发送图像序列,其中,图像序列中包括:待检测产品在不同拍摄位点的不同拍摄角度下的图像。

在步骤1003中,缺陷检测模块接收图像采集模块发送的图像序列,针对图像序列中的每个图像进行缺陷检测,得到各图像的缺陷检测结果,并向缺陷整合模块发送缺陷检测结果,其中,缺陷检测结果包括:图像中缺陷的位置坐标和缺陷类型信息。

在步骤1004中,缺陷整合模块接收缺陷检测模块发送的缺陷检测结果,根据缺陷检测结果,确定同一拍摄位点下待检测产品的缺陷位置和类型。

由上述实施例可见,该实施例中,从多个拍摄位点和多个拍摄角度对待检测产品的各部位进行图像采集得到一定数量的图像,对采集到的每个图像进行缺陷检测,并对缺陷检测结果进行整合,得到每个拍摄位点下待检测产品的缺陷。与现有技术相比,由于本发明实施例中无需人工参与,因此可以提高检测效率;又由于本发明实施例中采集到的图像综合了多个拍摄位点和多个拍摄角度等因素,降低了光照和角度对图像质量的影响,因此基于本发明实施例采集到的图像进行缺陷检测,可以减少对缺陷的漏检和误检。

可选地,作为一个实施例,所述系统还包括产品姿态调整模块,所述方法还包括:

所述产品姿态调整模块在图像采集过程中固定所述待检测产品,并在确定所述图像采集模块完成对所述待检测产品一个姿态的图像采集后,将所述待检测产品调整至另一姿态。

可选地,作为一个实施例,所述图像采集模块包括:单摄像头图像采集子模块、或多摄像头图像采集子模块;

所述单摄像头图像采集子模块包括:摄像头和多自由度机械臂,其中,所述摄像头设置在所述多自由度机械臂的末端,所述多自由度机械臂用于带动所述摄像头运动到所述待检测产品的各拍摄位点,并在各拍摄位点变化不同拍摄角度;

所述多摄像头图像采集子模块包括:支架和多个三轴摄像头,其中,所述多个三轴摄像头设置在所述支架上构成摄像头阵列,所述支架用于带动所述多个三轴摄像头整体运动。

可选地,作为一个实施例,所述图像采集模块为所述单摄像头图像采集子模块;

所述图像采集模块的运动轨迹包括:所述多自由度机械臂的移动路径和所述多自由度机械臂的转动角度。

可选地,作为一个实施例,所述图像采集模块为所述多摄像头图像采集子模块;

所述图像采集模块的运动轨迹包括:所述支架的运动路径、每个多自由度摄像头的转动角度和转动顺序。

可选地,作为一个实施例,所述图像采集模块还包括照明子模块,所述方法还包括:

所述照明子模块对所述待检测产品和摄像头的周围进行打光。

可选地,作为一个实施例,所述拍摄规划模块根据所述待检测产品当前所处的姿态,确定覆盖所述待检测产品的矩形拍摄范围,并在所述矩形拍摄范围内等间距选取m*n个阵列拍摄位点;其中,m和n均为正整数。

可选地,作为一个实施例,拍摄位点的个数与产品被拍摄面的复杂程度之间成正比关系,拍摄角度与产品被拍摄面的复杂程度之间成正比关系。

可选地,作为一个实施例,所述缺陷检测模块包括:图像分类子模块和缺陷定位子模块;

所述图像分类子模块接收所述图像采集模块发送的图像序列,针对所述图像序列中的每个图像,分别将图像输入到预设图像分类模型,根据所述预设图像分类模型的输出结果,对所述图像序列中的图像进行分类得到分类结果,并向所述缺陷定位子模块发送所述分类结果;其中,所述分类结果包括:图像中存在缺陷和图像中不存在缺陷,所述预设图像分类模型是通过对多个第一样本进行模型训练得到的;

所述缺陷定位子模块接收所述图像分类子模块发送的分类结果,根据所述分类结果,确定所述图像序列中存在缺陷的图像,针对每个存在缺陷的图像,分别将图像输入到预设缺陷定位模型,根据所述预设缺陷定位模型的输出结果,确定各存在缺陷的图像的缺陷定位结果;其中,所述缺陷定位结果包括:图像中缺陷所在矩形区域的位置坐标和缺陷的类型信息,所述矩形区域的尺寸大于或等于缺陷轮廓区域的尺寸,所述预设缺陷定位模型是通过对多个第二样本进行模型训练得到的。

可选地,作为一个实施例,所述缺陷检测模块还包括缺陷分割子模块,所述方法还包括:

所述缺陷定位子模块向所述缺陷分割子模块发送所述缺陷定位结果;

所述缺陷分割子模块接收所述缺陷定位子模块发送的缺陷定位结果,根据所述缺陷定位结果,确定各存在缺陷的图像中缺陷所在的矩形区域,针对每个矩形区域,分别将矩形区域输入到预设缺陷分割模型,根据所述预设缺陷分割模型的输出结果,确定各存在缺陷的图像的缺陷分割结果;其中,所述缺陷分割结果包括:图像中缺陷轮廓区域的位置坐标和缺陷的类型信息,所述预设缺陷分割模型是通过对多个第三样本进行模型训练得到的。

可选地,作为一个实施例,所述缺陷整合模块包括:坐标转换子模块和缺陷去重子模块;

所述坐标转换子模块接收所述缺陷检测模块发送的缺陷检测结果,根据所述缺陷检测结果,确定所述图像序列的图像中缺陷的位置坐标,以拍摄位点为处理单位,将同一拍摄位点不同拍摄角度下图像中缺陷的位置坐标转换到同一坐标系下,得到坐标转换结果,并向所述缺陷去重子模块发送所述坐标转换结果;

所述缺陷去重子模块接收所述坐标转换子模块发送的坐标转换结果,根据所述坐标转换结果,去除所述坐标转换结果中同一拍摄位点下对应同一缺陷的重复的位置坐标,得到去重结果,输出所述去重结果中每个缺陷的类型和位置。。

可选地,作为一个实施例,所述坐标转换子模块包括:特征点提取单元、特征点匹配单元、矩阵计算单元和缺陷位置坐标变换单元;

所述特征点提取单元以拍摄位点为处理单位,提取同一拍摄位点不同拍摄角度下各图像的特征点;

所述特征点匹配单元将同一拍摄位点不同拍摄角度下的一个图像作为基准图像,对所述基准图像的特征点与同一拍摄位点不同拍摄角度下其他各图像的特征点进行匹配,得到特征点之间的对应关系;

所述矩阵计算单元根据特征点提取单元提取到的特征点和所述特征点匹配单元匹配得到的对应关系,分别计算同一拍摄位点不同拍摄角度下其他各图像到所述基准图像的仿射变换矩阵;

所述缺陷位置坐标变换单元分别对所述矩阵计算单元计算得到的仿射变换矩阵与同一拍摄位点不同拍摄角度下其他各图像中缺陷的位置坐标进行乘积运算,得到坐标转换结果。

可选地,作为一个实施例,所述缺陷类型信息包括:缺陷属于预设缺陷类型的概率,所述预设缺陷类型包括多个缺陷类型;

所述缺陷去重子模块包括:坐标去重单元和缺陷整合单元;

所述坐标去重单元按照缺陷属于预设缺陷类型的概率,对所述坐标转换结果中各位置坐标的坐标区域进行排序,选择概率最大的坐标区域pmax1,计算pmax1与其他坐标区域的重叠度iou1,将iou1大于预设重叠度阈值的坐标区域去除,并标记所述pmax1;从剩余的坐标区域中选择pmax2,重复与所述pmax1相同的操作,直至剩余的坐标区域个数为零,得到去重结果{pmax1,…pmaxn};

所述缺陷整合单元将{pmax1,…pmaxn}中的每个坐标区域确定为同一拍摄位点下所述待检测产品的缺陷位置,将所述缺陷检测结果中记录的与所述{pmax1,…pmaxn}对应的缺陷类型确定为同一拍摄位点下所述待检测产品的缺陷类型。

对于方法实施例而言,由于其与系统实施例基本相似,所以描述的比较简单,相关之处参见系统实施例的部分说明即可。

根据本发明的又一个实施例,本发明还提供了一种产品缺陷检测设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上述任意一个实施例所述的产品缺陷检测方法中的步骤。

根据本发明的再一个实施例,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意一个实施例所述的产品缺陷检测方法中的步骤。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对本发明所提供的一种产品缺陷检测系统及方法,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1