外观检查系统和计算机程序的制作方法

文档序号:32057026发布日期:2022-11-04 21:56阅读:31来源:国知局
外观检查系统和计算机程序的制作方法

1.本公开涉及外观检查系统和计算机程序。


背景技术:

2.以往,进行如下的外观检查:通过将对被检查物进行拍摄而获取的图像与作为基准的物品的图像(基准图像)进行比较,来判定被检查物是否存在缺陷、即被检查物是否是合格品。
3.在现有的外观检查装置中,在对用于合格与否判定的判定基准进行了充分的验证之后,通过人工方式在装置中进行设定。在对形状、表面的图案经常变化的对象进行检查的情况下,需要频繁地变更判定基准,因此难以进行有效的运用。
4.例如,日本公开公报特开2013-224833号公报公开了按照每个特定的像素对合格与否判定的判定基准进行定义,使用亮度的平均值/标准偏差来自动设定判定基准的技术。根据日本公开公报特开2013-224833号公报的技术,能够省略借助人工的判定基准的频繁的变更,从而能够更有效地运用外观检查。
5.现有技术文献
6.专利文献
7.专利文献1:日本公开公报:日本特开2013-224833号公报


技术实现要素:

8.发明要解决的课题
9.然而,在日本公开公报特开2013-224833号公报中,如果抑制过度检测,则像素值的偏差较大的部位的判定基准变得宽松,因而有可能发生缺陷的漏检。
10.本公开提供能够在抑制缺陷的漏检的同时抑制过度检测的外观检查系统和计算机程序。
11.用于解决课题的手段
12.本公开的例示性的外观检查系统利用被检查物的图像来判定所述被检查物合格与否,其中,该外观检查系统具有:存储装置,其存储有拍摄了被判定为合格品的多个物品而得的多个图像、记述有多个阈值的基准表以及记述有多个偏移值的偏移表;接口装置,其接收被检查物的图像数据和表示与制造条件相关的属性的属性数据;以及运算电路。所述被检查物的图像和所述多个图像分别包含多个部分区域。所述基准表的所述多个阈值的每一个阈值和所述偏移表的所述多个偏移值的每一个偏移值与所述多个部分区域分别对应地设定。所述多个阈值分别是用于判定为对应的所述多个部分区域各自所包含的所述被检查物的像表示缺陷的基准。所述多个偏移值包含使所述多个阈值的一部分变化的第1种偏移值和不使其余的一部分变化的第2种偏移值。所述运算电路执行如下处理:处理(a),对所述图像数据进行预先确定的缺陷检测处理,在所述被检查物的图像中包含有至少一个缺陷的像的情况下,提取所述被检查物作为缺陷候选。另外,所述运算电路执行如下处理:处理
(b),从提取为所述缺陷候选的所述被检查物的图像中切取部分图像,其中,切取的所述部分图像的位置是所述偏移表中的所述第1种偏移值所对应的部分区域的位置。另外,所述运算电路执行如下处理:处理(c),判定切取的所述部分图像的图像特征量是否被分类为过度检测类别,其中,所述过度检测类别是所述第1种偏移值所对应的部分区域的位置处的、所述多个图像的各部分图像的图像特征量以规定以上的比例被分类的类别。另外,所述运算电路执行如下处理:处理(d),在切取的所述部分图像的图像特征量被分类为所述过度检测类别的情况下,使用所述第1种偏移值来变更所述部分区域的位置处的所述基准表的阈值,进一步提高用于判定为所述被检查物的像表示缺陷的基准。另外,所述运算电路执行如下处理:处理(e),使用变更了所述阈值的所述基准表来判定在所述被检查物的图像中是否包含有至少一个缺陷的像。
13.本公开的例示性的计算机程序由利用被检查物的图像来判定所述被检查物合格与否的外观检查系统的运算电路执行。所述外观检查系统具有:存储装置,其存储有分别拍摄了被判定为合格品的多个物品而得的多个图像、记述有多个阈值的基准表以及记述有多个偏移值的偏移表;接口装置,其接收被检查物的图像数据;以及所述运算电路。所述被检查物的图像和所述多个图像分别包含多个部分区域,所述基准表的所述多个阈值的每一个阈值和所述偏移表的所述多个偏移值的每一个偏移值与所述多个部分区域分别对应地设定。所述多个阈值分别是用于判定为对应的所述多个部分区域各自所包含的所述被检查物的像表示缺陷的基准。所述多个偏移值包含使所述多个阈值的一部分变化的第1种偏移值和不使其余的一部分变化的第2种偏移值。所述计算机程序使所述运算电路执行如下的处理(a):对所述图像数据进行预先确定的缺陷检测处理,在所述被检查物的图像中包含有至少一个缺陷的像的情况下,提取所述被检查物作为缺陷候选。另外,所述计算机程序使所述运算电路执行如下的处理(b):从提取为所述缺陷候选的所述被检查物的图像中切取部分图像,其中,切取的所述部分图像的位置是所述偏移表中的所述第1种偏移值所对应的部分区域的位置。另外,所述计算机程序使所述运算电路执行如下的处理(c):判定切取的所述部分图像的图像特征量是否被分类为过度检测类别,其中,所述过度检测类别是所述第1种偏移值所对应的部分区域的位置处的、所述多个图像的各部分图像的图像特征量以规定以上的比例被分类的类别。另外,所述计算机程序使所述运算电路执行如下的处理(d):在切取的所述部分图像的图像特征量被分类为所述过度检测类别的情况下,使用所述第1种偏移值来变更所述部分区域的位置处的所述基准表的阈值,进一步提高用于判定为所述被检查物表示缺陷的基准。另外,所述计算机程序使所述运算电路执行如下的处理(e):使用变更了所述阈值的所述基准表来判定在所述被检查物的图像中是否包含有至少一个缺陷的像。
14.发明效果
15.根据本公开的例示性的实施方式,能够在将未检测的发生抑制为最低限度的同时抑制过度检测。
附图说明
16.图1是示出具有外观检查装置100的本公开的外观检查系统1000的结构例的图。
17.图2是主要示意性地示出外观检查装置100的结构例的图。
18.图3是示出存储装置14内的数据库14z的一例的图。
19.图4是示意性地示出对工件70进行拍摄而得到的图像数据的一例的图。
20.图5是示出被分成多个部分区域72的工件70的图像的例子的图。
21.图6是示出外观检查处理的过程的流程图。
22.图7是示出在某个部分区域72b存在损伤时的缺陷检测处理的结果的一例的图。
23.图8是示意性地示出偏移表14c(上段)和从工件70的图像72切取的部分图像的位置(下段)的图。
24.图9是用于对图6的步骤s8的处理进行说明的图。
25.图10是用于对图6的步骤s10进行说明的图。
26.图11是示出外观检查处理的具体的过程的流程图。
27.图12是示出数据库登记处理的过程的流程图。
28.图13是示出类似倾向确认处理的过程的流程图。
29.图14是用于对图13的步骤s56和s58具体地进行说明的图。
30.图15是示出偏移表的生成/更新处理的过程的流程图。
31.图16是示出数据库14z的更新处理的过程的流程图。
32.图17是示出偏移表的应用处理的过程的流程图。
33.图18是示出变形例的外观检查系统1100的结构的图。
具体实施方式
34.以下,参照附图对本公开的外观检查系统的实施方式进行说明。在本说明书中,有时省略超出所需的详细说明。例如,有时省略已经众所周知的事项的详细说明、对实质上相同的结构的重复说明。这是为了避免以下的说明不必要地冗长,使本领域技术人员容易理解。另外,本发明人为了让本领域技术人员充分理解本公开而提供附图和以下的说明,并非意图通过这些来限定权利要求书所记载的主题。在以下的说明中,对相同或类似的构成要素标注相同的标号。
35.1.外观检查系统的结构
36.图1是示出具有外观检查装置100的本公开的外观检查系统1000的结构例的图。图2是主要示意性地示出外观检查装置100的结构例的图。
37.在图示的例子中,外观检查系统1000具有摄像装置30、外观检查装置100以及监视器130。外观检查装置100、输入装置120以及监视器130能够通过通用的数字计算机系统、例如pc来实现。另外,摄像装置30可以是数码相机。摄像装置30通过未图示的有线的通信线缆或无线通信线路以能够通信的方式与外观检查装置100连接。监视器130通过未图示的有线的通信线缆以能够通信的方式与外观检查装置100连接。
38.摄像装置30对被检查物进行拍摄,并将通过拍摄而获取的图像数据发送给外观检查装置100。外观检查装置100按照后述的过程根据从摄像装置30接收到的图像数据进行被检查物的外观检查。
39.参照图1对在外观检查系统中进行的被检查物的外观检查的过程进行说明。被检查物是作为外观检查的对象的各种产品或部件等各种物品。以下,有时将被检查物称为“工件”。
40.工件70载置在移送台62上,并通过把持机构固定于移送台62。工件70例如是硬盘驱动器的成品、组装有马达的硬盘驱动器的壳体等。
41.移送台62能够以载置有工件70的状态通过搬运台64在水平方向上移动。摄像装置30以将搬运台64包含在视野内的方式在搬运台64的上方被支承部件60支承。摄像装置30进行视野内的工件70的拍摄。工件70也可以由机器人臂把持并放在摄像位置。另外,也可以是,在进行拍摄时,光源(未图示)照射工件70。
42.通过拍摄而获取的图像数据从摄像装置30向外观检查装置100发送。通过一次拍摄而获取的图像的尺寸的一例是横1600像素、纵1200图像,另一例是横800像素、纵600图像。
43.接着,参照图2。
44.外观检查装置100具有运算电路10、存储器12、存储装置14、通信电路16以及图像处理电路18。构成要素彼此通过总线20以能够通信的方式连接。另外,外观检查装置100具有与摄像装置30进行通信的接口装置22a、与输入装置120进行通信的接口装置22b以及向监视器130输出影像数据的接口装置22c。接口装置22a的一例是影像输入端子或以太网端子。接口装置22b的一例是usb端子。接口装置22c的一例是hdmi(注册商标)端子。也可以代替这些例子,利用其他端子作为接口装置22a~22c。另外,接口装置22a~22c也可以是用于进行无线通信的无线通信电路。作为这样的无线通信电路,已知例如利用2.4ghz/5.2ghz/5.3ghz/5.6ghz等频率进行无线通信的、遵照wi-fi(注册商标)标准的无线通信电路。
45.运算电路10例如可以是中央运算处理装置(cpu)或数字信号处理器等集成电路(ic)芯片。存储器12是保存有对运算电路10的动作进行控制的计算机程序12p,并构建了后述的学习完毕卷积神经网络12n的记录介质。另外,学习完毕卷积神经网络12n的实体是对构成输入层、中间层以及输出层的各人工神经元赋予的多个参数。多个参数包含与分别应用于向各人工神经元的多个输入的权重和输入的加权和(输入与权重之积的总和)比较的阈值。需要留意的是,为了使神经网络12n进行运算并输出结果,实际上需要运算电路10的处理。另外,也可以采用使构成存储器12上的神经网络12n的多个参数和与神经网络12n相关的运算电路10的运算功能一体化的硬件(面向特定用途的集成电路(asic)、gpgpu、可编程逻辑器件)。
46.存储器12不需要是单一记录介质,也可以是多个记录介质的集合。存储器12例如能够包含ram等半导体易失性存储器和闪存rom等半导体非易失性存储器。存储器12的至少一部分也可以是能够拆卸的记录介质。
47.存储装置14保存有作为各种数据的集合的数据库。图3示出了存储装置14内的数据库14z的一例。具体而言,存储装置14存储有分别拍摄了被判定为合格品的多个物品而得的多个图像14a、记述有多个阈值的基准表14b以及记述有多个偏移值的偏移表14c。并且,存储装置14也可以存储有表示与被检查物的制造条件相关的属性的属性数据14d。存储的各数据的内容等在后面详细说明。
48.再次参照图2。
49.摄像装置30是输出用于生成被检查对物的图像的数据的图像信号的装置。图像信号通过有线或无线而发送给运算电路10。摄像装置30的典型例是具有多个光电二极管呈矩阵状排列而得的cmos图像传感器或ccd图像传感器等区域传感器的照相机。摄像装置30生
成被检查物的彩色图像或单色图像的数据。摄像装置30能够使用外观检查用的各种照相机。
50.图4示意性地示出了对工件70进行拍摄而得到的图像数据的一例。图像数据是包含工件70的像的帧图像。本实施方式的例示性的图像是反映了工件70的表面所具有的凹凸和图案的256灰度等级的像素值(“明亮度”或“灰色标度”的值)的排列。有时将像素值称为亮度值或浓度。在帧图像为彩色图像的情况下,例如,能够通过分别以256级的灰度表现的红色、绿色以及蓝色这三种颜色来定义像素值。在本说明书中,有时也将灰度值、亮度值等统称为“图像特征量”。但是,“图像特征量”不仅是指与像素值相关的特征,也能够包含例如对图像的基本性质进行评价的亮度直方图统计量、能够表示像素间的对比度的强弱或像素的规整情况等局部特征的灰度等级的共生矩阵(grey level co-occurrence matrix;glcm)特征量。
51.在一张帧图像中,除了工件70以外,还能够包含移送台62的一部分作为背景70b。在图4的例子中,由线52l包围的区域52是“检查区域”。一张帧图像也可以包含多个检查区域52。
52.帧图像中的工件70的位置被执行对准,以与在帧图像内预先决定的位置对齐。在该对准中,使工件70的多个基准点与摄像装置30的视野中的多个基准点一致。在这样的对准的第1阶段中,调整工件70相对于摄像装置30的透镜光轴的物理性的配置关系。在对准的第2阶段中,调整所拍摄的图像的像素位置(坐标)。第2阶段的对准包含利用图像处理技术进行图像的平移、旋转、放大和/或缩小。这样的对准的结果是,各工件70的检查区域52始终与由线52l包围的区域对齐。这样,能够以部分区域为单位对各工件70的检查区域52的图像进行处理。另外,上述对准能够主要由运算电路10或图像处理电路18执行,但也可以通过根据来自运算电路10或图像处理电路18的指令,由使摄像装置30的姿势变化的机构(未图示)使摄像装置30在与搬运台64平行的平面内旋转或平行移动来执行。
53.监视器130是显示图像处理装置100所执行的判别的结果等的装置。监视器130也能够显示由摄像装置30获取的图像。
54.输入装置120是接收包含选择区域的指定的来自用户的输入并提供给运算电路10的输入器件。输入装置120的一例是触摸面板、鼠标和/或键盘。监视器130和输入装置120不需要通过有线始终与运算电路10连接,可以仅在需要的时候经由通信接口通过无线或有线来连接。监视器130和输入装置120也可以是用户携带的终端装置或智能手机。
55.2.外观检查的概要
56.本公开的外观检查系统1000利用图像来判定被检查物是否存在缺陷。例示性的实施方式的外观检查系统1000使用神经网络来判定被检查物的图像内是否存在缺陷的像。有无缺陷按照将物品图像分成多个部分区域时的每个部分区域来判定。
57.图5示出了被分成多个部分区域72的工件70的图像的例子。多个部分区域72呈格子状。图5例示出了构成多个部分区域72的一个部分区域72a。多个部分区域72设定为比工件70的像稍大,以整体上将工件70的检查区域52完全包含。
58.外观检查系统1000利用例如构成部分区域72a的全部像素的像素值作为向神经网络的输入,并得到来自神经网络的输出。在本实施方式中,使用利用“污垢”、“异物”、“损伤”等各种缺陷的像和各缺陷的名称作为教师信号来预先进行学习的卷积神经网络12n。在本
说明书中,将缺陷的种类称为“类别”。部分区域72a的全部像素的像素值向神经网络输入,其结果为,当判定为存在缺陷时,神经网络输出被认为是相应的缺陷的类别名。
59.并且,在本实施方式中,在输出缺陷的类别名的同时输出表示向神经网络输入的像与判定为是正常的标准的像不一致的程度的大小的值。在本说明书中,有时将输出的值称为表示是缺陷的可能性的高低的“概率值”。
60.考虑各种概率值的计算方法。当前,将缺陷设为是硬盘驱动器的壳体表面的“损伤”。当损伤进入铝板上的涂层时,由于铝板的反射率比涂层的反射率高,因此损伤的图像的亮度值比不存在损伤的情况的图像的亮度值高。当将包含损伤的部分区域的图像输入到卷积神经网络时,从卷积神经网络的中间层能够得到与所输入的部分区域的图像的亮度值相关的图像特征量。提取的各图像特征量作为所输入的部分区域的图像的散列值来处理。另外,例如在使用存储在存储装置14中的、分别拍摄了被判定为合格品的多个物品而得的多个图像14a中的任意一个时,从卷积神经网络的中间层也能够提取与判定为缺陷的部分区域的位置对应的、与合格品图像的部分区域的亮度值相关的图像特征量。在将所输入的部分区域的图像的散列值与该部分区域的标准的图像的散列值进行比较时,可以说散列值越接近,两者越类似,散列值越远离,两者越不类似。因此,两者的散列值的差越大,分配越接近100的值,差越小,分配越接近0的值,由此能够针对判断为包含缺陷的各部分区域得到上述的“概率值”。另外,被判定为是缺陷的部分区域的图像的概率值例如能够调整为至少50%以上的值。上述将通过cnn提取的图像特征量作为散列值而提取的技术是公知的。由此省略详细的说明。
61.从神经网络输出的缺陷的类别名和概率值是基于神经网络的学习结果的缺陷候选检测结果。
62.但是,即使在某个物品被判定为包含缺陷的情况下,可能存在实际上判定为不属于缺陷的情况。例如是如下情况:虽然在物品的表面附着有污垢,但其程度较小,并不会实质上产生功能性问题和外观上的问题。在现有的外观检查中,由熟练的检查员目视物品,由此判定为这样的污垢不属于缺陷。
63.例示性的实施方式的外观检查系统1000即使在暂时判定为物品包含缺陷的情况下,也会根据与被判定为合格品的多个物品的关系来变更缺陷的判定基准,从而重新判定是否即使如此也能够说是存在缺陷。在本说明书中,将尽管本来是应该判定为合格品的物品却判定为存在缺陷的情况称为“过度检测”。当发生过度检测时,物品的成品率降低,不得不成为改造等的对象,从而物品的成本上升。为了抑制这样的过度检测,根据迄今为止的经验,变更缺陷的判定基准,以扩大判定为合格品的范围从而抑制过度检测。
64.另外,为了抑制过度检测,也考虑了从一开始就放宽缺陷的判定基准的方法。然而,若过于抑制过度检测,那么本来应该判定为缺陷的物品却被判定为合格品,即会发生缺陷的未检测,而无法达成外观检查的目的。
65.例示性的实施方式的外观检查系统1000首先以明确地判定为合格品的基准来判定是否是合格品,在判定为不是合格品而存在缺陷的情况下,根据与至此被判定为合格品的多个物品的关系而放宽缺陷的判定基准。
66.具体的处理的概要如下。
67.在外观检查系统1000进行外观检查时,下述的数据预先保存在存储装置14中。
68.(a)分别拍摄了被判定为合格品的多个物品而得的多个图像
69.(b)记述有多个阈值的基准表
70.(c)记述有多个偏移值的偏移表
71.对上述(a)进行说明。
72.被判定为合格品的物品不限于最初被判定为合格品的物品。也包含暂时被判定为有缺陷,之后例如通过检查员的目视判定等被判定为合格品的被检查物以及后述的本公开的处理的结果是被判定为合格品的被检查物。通过包含后两者,能够扩大被判定为合格品的图像的特征的范围。“多个图像”分别可以仅包含一个物品的像,也可以包含多个物品的像。被判定为合格品的各物品的图像是为了对判定是否存在缺陷的基准进行变更而使用的。
73.对上述(b)进行说明。
[0074]“多个阈值”分别是与将图像分成多个部分区域时的各部分区域对应的阈值。各阈值是在针对暂时被判定为有缺陷的被检查物重新判定有无缺陷时,作为用于判定各部分区域是否包含缺陷的像的基准而利用的。在本实施方式中,“多个阈值”各自的初始值例如是“0.5”。阈值越接近1,越仅将明显的缺陷等判定为“缺陷”。也就是说,阈值越接近1,越难以判定为是缺陷。多个阈值分别能够通过接下来说明的“多个偏移值”的每一个偏移值而被更新为更高的阈值。
[0075]
另外,部分区域可以是由连续的多个像素构成的区域,也可以是由一个像素构成的区域、即由一个像素的大小定义的区域。在用彩色表现物品图像的情况下,一个像素可以是由例如彼此相邻配置的红、绿、蓝这三个子像素的大小定义的区域。
[0076]
对上述(c)进行说明。
[0077]“多个偏移值”用于对记述在基准表中的多个阈值进行更新。当通过本实施方式的处理来计算某个部分区域的偏移值时,该部分区域的阈值根据该偏移值而更新,以使用于判定为是缺陷的基准变得更高。例如,将当前的阈值与偏移值相加而得到的值作为新的阈值而更新。由此,能够进一步提高用于判定为是缺陷的基准。
[0078]
另外,“多个偏移值”不限于用于更新阈值的偏移值,也可以包含不更新阈值的偏移值、即维持当前的值的偏移值。在后述的实施方式的说明中,例示出具有维持当前的值的偏移值(第1种偏移值)和用于更新阈值的偏移值(第2种偏移值)双方的方式并进行说明。
[0079]
当使用维持当前的值的偏移值时,将全部的部分区域作为对象来进行运算,因此能够简化运算处理的程序。例如,在各部分区域的当前的阈值加上偏移值的情况下,只要编程如下的运算处理即可:对不更新阈值的偏移值设定0,对更新阈值的偏移值设定大于0的值,关于全部的部分区域在当前的阈值加上偏移值。另一方面,在仅在特定的部分区域的阈值加上偏移值的情况下,需要指定作为进行阈值的更新的对象的部分区域的操作,因此运算处理的编程可能复杂化。
[0080]
针对暂时被判定为包含缺陷的像的物品图像,外观检查系统1000使用进一步提高了用于判定为是缺陷的基准的阈值,再次判定该物品图像的各部分区域是否包含缺陷的像。
[0081]
在判定为物品图像内的任一个部分区域都不包含缺陷的像时,外观检查系统1000将该物品图像登记为上述(a)所示的“多个图像”之一。另一方面,在判定为物品图像内的任
一个部分区域继续包含缺陷的像时,外观检查系统1000判定为该物品图像的物品包含缺陷。
[0082]
根据上述处理,能够在防止未检测的同时抑制过度检测。
[0083]
在本实施方式中,将上述的“缺陷”分成多个类别,并按照每个类别判定是否是缺陷。例示出多个类别,有“污垢”、“异物”、“损伤”、“毛刺”、“缺口”、“变形”、“颜色不均”、“凹凸”、“模糊”。在被检查物的图像中可能存在上述一个或多个类别的“缺陷”。另一方面,在合格品的图像(上述(a))中可能存在上述一个或多个类别的一次被判定为“缺陷”的特征。因此,上述(b)的基准表、上述(c)的偏移表也只要按照缺陷的类别来设置,在判定每个类别的缺陷有无时进行利用即可。在后述的实施方式中,例示出了相当于缺陷的一个类别并进行说明,由于对所有的类别进行说明较为繁杂,因此省略说明。
[0084]
获取了图像数据的图像处理装置100执行前述的处理来执行工件70的外观检查。以下,对该处理的内容进一步详细地进行说明。
[0085]
3.外观检查处理
[0086]
3.1外观检查处理的想法的说明
[0087]
图6是示出外观检查处理的过程的流程图。
[0088]
在步骤s2中,运算电路10对图像数据进行预先确定的缺陷检测处理,在被检查物的图像中包含有至少一个缺陷的像的情况下,提取被检查物作为缺陷候选。这里所说的“预先确定的缺陷检测处理”是指利用了上述卷积神经网络的缺陷检测处理。通过缺陷检测处理,在被检查物的图像中包含有至少一个缺陷的像的情况下,提取该被检查物作为缺陷候选。图7示出了某个部分区域72b中存在损伤时的缺陷检测处理的结果的一例。在该例子中,从卷积神经网络输出的缺陷类别为“损伤”,表示是缺陷的可能性的高低的“概率值”为0.75。其结果为,图7所示的工件70被提取为缺陷候选。另外,在图7中,判定为仅一个部分区域存在缺陷,但也可能存在多个缺陷。在该情况下,可以赋予“损伤”以外的缺陷类别。在本说明书中,有时将被判定为存在缺陷的部分区域称为“缺陷候选区域”。
[0089]
再次参照图6。在接下来的步骤s4之后,进行如下处理:针对暂时被判定为包含缺陷的被检查物,根据与被判定为合格品的多个物品的关系来变更缺陷的判定基准,重新判定是否即使如此也能够说是存在缺陷。
[0090]
在以下的处理中,利用预先准备的上述“基准表”和“偏移表”。在本实施方式中,“偏移表”包含使多个阈值的一部分变化的第1种偏移值和不使其余的一部分变化的第2种偏移值。使用各偏移值,使用于判定是否是按照每个部分区域设定的缺陷的判定基准的阈值变化,或不使其变化而维持原样。另外,关于偏移表的制作方法,在后面进行说明。
[0091]
在步骤s4中,运算电路10从提取为缺陷候选的被检查物的图像中切取部分图像。切取的部分图像的位置是偏移表14c中的第1种偏移值所对应的部分区域的位置。
[0092]
图8是示意性地示出偏移表14c(上段)和从工件70的图像72切取的部分图像的位置(下段)的图。呈格子状设置的偏移表14c的行和列的数量与划分出多个部分区域的行和列的数量一致。由此,能够使偏移表14c的各要素的位置与在图像72中设定的各部分区域的位置对应。
[0093]
参照图8的上段,在偏移表14c中存在第1种偏移值(0以外的值)和第2种偏移值(0值)。其中,与分配了第1种偏移值的各位置对应的部分区域72b、72c、72d、72e的图像通过步
骤s4的处理被切取。
[0094]
再次参照图6。
[0095]
在步骤s6中,运算电路10判定切取的部分图像的图像特征量是否被分类为过度检测类别。“过度检测类别”是第1种偏移值所对应的部分区域的位置处的、多个图像的各部分图像的图像特征量以规定以上的比例被分类的类别。
[0096]
以更容易理解的方式对“过度检测类别”进行说明。首先,准备被判定为是合格品的多个图像。多个图像包含在先前的外观检查处理中发生了过度检测的图像。以这些多个图像为对象,切取被进行了过度检测的部分区域(以下,称为“过度检测部分区域”)。当对过度检测部分区域进行步骤s2的缺陷检测处理时,从卷积神经网络的中间层能够得到与所输入的部分区域的图像相关的一个或多个图像特征量。当将得到的各图像特征量作为对象进行规定的聚类处理时,能够分成一个或多个集群。其中,具有最多数量的要素的集群可以说被分类有在过去的多个图像中存在容易被过度检测的倾向的图像特征量。图像特征量可以根据发生了过度检测的缺陷类别(以下,称为“过度检测类别”)而不同。步骤s6的处理是判定在步骤s4中提取的部分图像是否具有属于过度检测类别的图像特征量的处理。
[0097]
另外,在从卷积神经网络的中间层提取的图像特征量的数量为一个的情况下,可以根据图像特征量的大小在一维空间上进行聚类。在图像特征量的数量为p(p:2以上的整数)的情况下,可以根据图像特征量的大小在p维空间上进行聚类。
[0098]
在步骤s8中,在切取的部分图像的图像特征量被分类为过度检测类别的情况下,运算电路10使用第1种偏移值来变更部分区域的位置处的基准表的阈值。由此,进一步提高用于判定为被检查物是缺陷品的基准。
[0099]
切取的部分图像的图像特征量被分类为过度检测类别可以说是指该图像特征量存在容易被过度检测的倾向。步骤s8的处理具有以使部分区域的位置处的基准表的阈值变高的方式进行更新从而抑制这样的过度检测的意义。
[0100]
图9是用于对图6的步骤s8的处理进行说明的图。接着,设想在部分区域72b(图7)中存在缺陷的情况。并且,在步骤s6中,从部分区域72b(图7)切取的部分图像的图像特征量被分类为过度检测类别。为了便于说明,具有被分类为过度检测类别的图像特征量的部分图像仅为部分区域72b(图7)。
[0101]
运算电路10将基准表14b和偏移表14c的、行和列相同的各位置的阈值和偏移值相加。在图9的例子中,在基准表14b中,与部分区域72b对应的位置72-1的值为“0.5”。在偏移表14c中,与部分区域72b对应的位置72-2处的第1种偏移值为“0.3”。另外,在偏移表14c中,对与部分区域72b以外的部分区域对应的各位置设定第2种偏移值“0.0”。
[0102]
当将与部分区域72b对应的位置的阈值和偏移值相加时,为“0.8”。在通过相加而得到的更新后的基准表14b-2的位置72-3处记述有“0.8”。另外,假设了具有被分类为过度检测类别的图像特征量的部分图像仅为部分区域72b(图7),因此更新前后的基准表14b和14b-2的不同点仅为位置72-3的阈值。然而,在多个图像特征量被分类为过度检测类别的情况下,其他部分区域的位置的阈值也可以被更新。
[0103]
再次参照图6。
[0104]
在步骤s10中,运算电路10使用更新了阈值的基准表14b-2来判定在被检查物的图像中是否包含有至少一个缺陷的像。具体而言,针对在步骤s2中判定为存在缺陷的像的部
分区域72b(图7),对已经得到的概率值与基准表14b-2的阈值进行比较。在比较的结果是概率值为阈值以上或大于阈值的情况下,运算电路10判定为仍然存在缺陷。在概率值小于阈值或为阈值以下的情况下,运算电路10判定为不存在缺陷。
[0105]
图10是用于对图6的步骤s10进行说明的图。运算电路10对部分区域72b的位置的像包含缺陷的概率值“0.75”与对应于该位置的基准表14b-2的阈值“0.8”进行比较。概率值小于阈值,因此运算电路10判定在步骤s2中暂时被判定为包含缺陷的像的部分区域72b中不存在缺陷。
[0106]
如以上所说明的那样,即使在暂时被判定为缺陷的情况下,也仅在与在过去的合格品判定的结果中进行了过度检测时类似的情况下更新作为判定基准的阈值。其结果为,能够在防止缺陷的未检测的同时抑制缺陷的过度检测。
[0107]
3.2外观检查处理的具体的说明
[0108]
对外观检查处理的更具体的例子进行说明。在以下的说明中,导入被检查物的“属性数据”。被检查物的“属性数据”是指表示与各被检查物的制造条件相关的属性的数据。如作为图3的属性数据14d所示的那样,与制造条件相关的属性例如是在制造各被检查物时使用的模具、生产线、制造工厂以及各被检查物的制造年月日。属性数据可以是从上述模具、生产线、制造工厂、制造年月日等的集合(组)选择的至少一个数据。另外,属性数据例如可以通过表示名称的字符串、编号、符号以及数值列的组合来表现。属性数据按照每个被检查物来准备。但是,在各被检查物的制造条件相同的情况下,可以利用一个属性数据作为每个被检查物的属性数据。
[0109]
对采用属性数据的原因进行说明。在某个被检查物被确认了缺陷的情况下,根据经验可知,模具、生产线和/或制造工厂等相同的其他被检查物也会被确认有相同的缺陷。因此,在暂时判定为被检查物存在缺陷之后重新判断是否存在缺陷时,针对属性相同的多个被检查物采用相同的基准表和偏移表。由此,能够降低再次的缺陷判定的结果发生偏差。
[0110]
如上所述,在决定了要采用的属性之后,按照属性的种类准备基准表和偏移表的组。基准表和偏移表的组可以按照每个缺陷类别来准备。
[0111]
图11是示出外观检查处理的具体的过程的流程图。该流程由运算电路10利用存储器12内的卷积神经网络12n和存储装置14内的各种数据来执行。
[0112]
首先,在步骤s20中,运算电路10获取被检查物的图像数据。考虑各种图像数据的获取方法。例如,摄像装置30对被检查物进行拍摄而获取图像数据,并发送给接口装置22a。运算电路10从接口装置22a接收接口装置22a接收到的图像数据。或者,也可以是,接口装置22a接收来自摄像装置30的被检查物的图像数据,在存储装置14保存了该图像数据之后,运算电路10从存储装置14获取图像数据。在后者的例子中,摄像装置30也可以不作为外观检查系统1000的一部分被包含。
[0113]
在步骤s22中,运算电路10获取被检查物的属性数据。
[0114]
在步骤s24中,运算电路10使用卷积神经网络12n进行缺陷的检测处理。然后,在被检查物的图像内检测到缺陷候选区域的情况下,提取该被检查物作为缺陷候选。此时,按照每个缺陷候选区域输出缺陷类别和概率值。
[0115]
在步骤s26中,运算电路10执行偏移表应用处理。偏移表应用处理相当于图9所示的处理。通过偏移表应用处理,基准表14b通过偏移表14c而被更新,从而获取了新的基准表
14b-2。偏移表应用处理的具体的说明在后面叙述。
[0116]
在步骤s28中,运算电路10使用在步骤s24中按照每个缺陷候选区域输出的概率值和更新后的基准表14b-2的阈值来判定缺陷候选区域实际上是否存在缺陷。更具体而言,运算电路10对缺陷候选区域的位置的概率值与对应于该位置的位置的基准表14b-2的阈值进行比较。在概率值为阈值以上或大于阈值的情况下,判定为被检查物仍然存在缺陷、即被检查物是不合格品,并结束处理。另一方面,在概率值小于阈值或为阈值以下的情况下,运算电路10判定为不存在缺陷,处理进入步骤s30。
[0117]
在步骤s30中,运算电路10执行数据库14z的更新处理。数据库14z的更新处理是如下处理:将暂时被判断为缺陷候选的被检查物的图像、属性以及检测结果作为合格品而登记在存储装置14中,进而根据图像特征量有无类似倾向而更新或删除偏移表。关于数据库14z的更新处理的具体的说明,参照图16在后面说明。
[0118]
以上,图11的外观检查处理结束。
[0119]
另外,在步骤s28中被判定为被检查物是不合格品之后,运算电路10的处理结束,但也可以在之后,例如检查员通过目视来判定被检查物是否存在缺陷。
[0120]
3.3数据库登记处理(包含类似倾向确认处理和偏移表的生成/更新处理)
[0121]
接着,参照图12对将偏移表登记在存储装置14的数据库14z中的处理进行说明。另外,图12的处理是生成作为用于执行图11的步骤s30的前提的偏移表的处理。在本实施方式中,也进行更新数据库14z的处理,但关于更新的处理,参照图16在后面说明。
[0122]
图12是示出数据库登记处理的过程的流程图。该流程由运算电路10执行。
[0123]
在步骤s40中,运算电路10在存储装置14中新登记合格品图像、属性以及检测结果。由此生成数据库14z。“合格品图像”是指被判定为“合格品”的物品的图像。如已经说明的那样,被判定为“合格品”的物品不限于最初被判定为合格品的物品。即,也包含暂时被判定为有缺陷,之后被判定为合格品的被检查物以及后述的本公开的处理的结果是被判定为合格品的被检查物。另外,“检测结果”包含检测的范围、缺陷类别、缺陷的概率。检测的范围例如在矩形的情况下,能够通过左上角的坐标和右下角的坐标来表现。另外,即使是合格品,过度检测的状态也根据样品而不同,因此作为分别独立的检测结果而登记。
[0124]
在步骤s42中,运算电路10执行类似倾向确认处理。“类似倾向确认处理”是指如下处理:根据具有相同的属性的合格品图像的相同的图像特征量对合格品图像进行聚类,在存在包含规定的比例以上的合格品图像的集群的情况下,保存实现了这样的聚类的类别分类器。得到类别分类器是指,关于为特定的属性并且具有特定的图像特征量的图像,卷积神经网络12n进行了过度检测。类似倾向确认处理参照图13和图14在后面进行说明。
[0125]
在步骤s44中,运算电路10根据在步骤s42中进行的类似倾向确认处理的结果,判定是否有类似倾向。在有类似倾向的情况下,处理进入步骤s44,在没有类似倾向的情况下,不生成偏移表并结束处理。
[0126]
在步骤s46中,运算电路10生成偏移表,并登记在数据库14z中。在进行了过度检测的情况下生成偏移表,之后,在判定为具有相同的属性和图像特征量的图像是缺陷时,能够变更缺陷的判定基准(阈值)。偏移表的生成处理参照图15在后面进行说明。
[0127]
通过以上的处理,在符合规定的条件的情况下,在数据库14z中登记偏移表的处理结束。经过上述的处理,如图3所示,偏移表14c登记在数据库14z中。
[0128]
接着,参照图13和图14对类似倾向确认处理的具体的内容进行说明。类似倾向确认处理是如下处理:在图12的步骤s40中新登记的合格品图像在与已经登记在数据库14z中的合格品图像的关系中有类似的倾向的情况下,生成偏移表。类似倾向确认处理是根据被检查物的属性来进行的,因此在执行处理时,预先决定作为对象的属性。
[0129]
图13是示出类似倾向确认处理的过程的流程图。该流程由运算电路10执行。
[0130]
在步骤s50中,运算电路10从数据库14z中提取具有对象的属性的合格品图像中的最新的合格品图像中的n张(n为2以上的整数)。
[0131]
在步骤s52中,运算电路10切取所提取的n张合格品图像中的发生了过度检测的一个或多个合格品图像的过度检测区域。
[0132]
在步骤s54中,运算电路10提取规定的图像特征量。应该提取的图像特征量被预先确定。图像特征量例如可以是由卷积神经网络12n提取的特征量,也可以是glcm特征量。提取的图像特征量的数量是任意的。
[0133]
在步骤s56中,运算电路10利用包含被过度检测的合格品图像的同属性的合格品图像来执行聚类处理。作为聚类处理,例如能够使用k-means法。k-means法是公知的技术,因此省略具体的说明。也可以使用k-means法以外的公知的聚类技术。
[0134]
在步骤s58中,运算电路10判定属于包含被过度检测的合格品图像的集群的样品数是否占总样品数的m%(m为0以上且100以下的实数。例如60)以上。在属于该集群的样品数为总样品数的m%以上的情况下,意味着存在与先前的过度检测类似的倾向,处理进入步骤s60。在小于m%的情况下,推断为没有类似倾向,是突发性地发生了过度检测。因此,处理结束。
[0135]
在步骤s60中,运算电路10将集群分类器保存在存储装置14中。
[0136]
图14是用于对图13的步骤s56和s58具体地进行说明的图。各合格品图像使用二维的图像特征量来描绘。例如,横轴是与亮度相关的图像特征量,纵轴是与对比度相关的glcm特征量。通过规定的聚类技术而执行聚类的结果是,如图14所示那样分类为三个集群a、b以及c。其中,着眼于集群a。
[0137]
集群a包含描绘通过卷积神经网络12n而判定为有缺陷的图像的图像特征量而得到的点s和描绘已经登记在数据库14z中的合格品图像组的各图像特征量而得到的多个点a。
[0138]
在总数为n张的图像中,将点s包含在内而k张图像的图像特征量描绘在集群a中。运算电路10进行q=(k/n)*100的运算,求出合格品图像被分类为集群a的比例。然后,在图12的步骤s58中,运算电路10判定是否是q≥m。在是q≥m时,与点s对应的图像能够推断为与先前发生了过度检测的合格品图像同样地被过度检测。因此,在图13的步骤s60中,保存用于聚类的集群分类器,并在之后新进行的被检查物的图像的判定中使用。
[0139]
接着,参照图15对偏移表的生成/更新处理的具体的内容进行说明。偏移表的生成/更新处理是在图12的步骤s46中执行的处理。
[0140]
图15是示出偏移表的生成/更新处理的过程的流程图。该流程由运算电路10执行。
[0141]
在步骤s70中,运算电路10从数据库14z中提取具有对象的属性的合格品图像中的最新的合格品图像中的n张。该处理与图13的步骤s50相同,但“n”不需要是相同的值。
[0142]
在步骤s72中,运算电路10生成提取的n张合格品图像的平均图像。平均图像的坐
标(x,y)的位置的像素值是提取的n张合格品图像各自的坐标(x,y)的像素值的平均值。
[0143]
在步骤s74中,运算电路10将平均图像输入到卷积神经网络12n,并利用输出结果而生成偏移表。更具体地进行说明。平均图像可以说表示典型的合格品图像。将该平均图像输入到卷积神经网络12n,进行缺陷的检测处理。于是,能够在平均图像内检测到缺陷候选区域。这是因为卷积神经网络12n针对具有属于图14的集群a的点的图像特征量的合格品图像也检测缺陷候选区域。检测结果可以包含一个或多个缺陷候选区域。另外,关于各缺陷候选区域,也可以输出缺陷类别和概率值。运算电路10生成在一个或多个部分区域中记述了与概率值的大小对应的偏移值(第1种偏移值)的偏移表。生成的偏移表例如与图8的偏移表14c相同。
[0144]
在步骤s76中,运算电路10按照每个缺陷类别提取缺陷候选区域。该处理是指按照每个缺陷类别准备偏移表。在偏移表包含缺陷候选区域的情况下,可以说是针对该缺陷类别卷积神经网络12n进行了过度检测。因此,缺陷候选区域也可以称为“过度检测区域”。
[0145]
在步骤s78中,运算电路10在每个缺陷类别的偏移表中,将过度检测区域以外的区域的值设定为0。由此,在偏移表中记述有第2种偏移值。
[0146]
在步骤s80中,运算电路10将每个缺陷类别的偏移表保存在数据库中。由此,在数据库14z中准备有每个缺陷类别的偏移表。在图3中,关于一个缺陷类别(例如,缺陷类别:损伤)的偏移表14c登记在数据库14z中。
[0147]
另外,即使已经存在偏移表,当新登记合格品图像时,生成新的偏移表,已有的偏移表被改写。在这样的情况下,图15的处理可以称为偏移表的更新处理。
[0148]
3.4数据库更新处理
[0149]
接着,参照图16对数据库14z的更新处理进行说明。另外,步骤s40、s42以及s44与图12的处理相同,因此省略说明。
[0150]
图16是示出数据库14z的更新处理的过程的流程图。
[0151]
在步骤s44中判定为有类似倾向的情况下,处理进入步骤s96,在判定为没有类似倾向的情况下,处理进入步骤s98。
[0152]
在步骤s96中,运算电路10更新偏移表。另一方面,在步骤s98中,运算电路10删除偏移表。删除偏移表的原因是为了抑制缺陷的检测受损的风险。如果设定偏移,则未检测的风险稍微提高。因此,在判断为没有类似倾向的情况下,假设没有过度检测的倾向而删除偏移表,从而抑制未检测的风险。
[0153]
3.5偏移表的应用处理
[0154]
接着,参照图17对偏移表的应用处理的具体的内容进行说明。偏移表的应用处理是在图11的步骤s26中进行的处理。
[0155]
图17是示出偏移表的应用处理的过程的流程图。该流程由运算电路10执行。
[0156]
在步骤s100中,运算电路10从存储装置加载与被检查物的属性相同的属性的偏移表。另外,被检查物的属性根据在图11的步骤s22中获取的属性数据而决定。
[0157]
在步骤s102中,运算电路10切取被检查物的图像的部分区域。切取的部分区域的位置例如与在偏移表14c(图8)内记述有第1种偏移值(非零的值)的位置对应。
[0158]
在步骤s104中,运算电路10向通过图13的步骤s60保存的集群分类器输入切取的部分区域的图像特征量。
[0159]
在步骤s106中,运算电路10判定部分区域的图像特征量是否被分类为包含过度检测的集群。包含过度检测的集群在图14的例子中是集群a。在图像特征量被分类为包含过度检测的集群的情况下,处理进入步骤s108,在未被分类为包含过度检测的集群的情况下,处理结束。
[0160]
在步骤s108中,运算电路10在切取的部分区域的判定基准(阈值)加上第1种偏移值。该处理相当于参照图9进行了说明的处理。
[0161]
通过以上的处理,基准表的阈值被更新为更大的值。由此,判定为合格品的范围扩大,从而能够抑制过度检测。
[0162]
4.变形例
[0163]
关于用于判定的被检查物的图像,可以是摄像装置(照相机)对一个或多个物品实时地进行拍摄而由外观检查装置100获取。或者,也可以是在暂时拍摄之后存储在大容量存储装置中,由外观检查装置100从该大容量存储装置中读出来获取。对后者的例子进行说明。
[0164]
图18示出了变形例的外观检查系统1100的结构。外观检查系统1100具有与通信网络300连接的外观检查装置100和二级存储装置310。通信网络300例如是因特网等广域通信网(wan)或铺设在企业等的区域内的局域通信网(lan)。另外,摄像装置30也与通信网络300连接,但在外观检查装置100进行外观检查的时间点,摄像装置30不是外观检查系统1100的必须的构成要素。
[0165]
二级存储装置310是所谓的云存储器。在本变形例中,二级存储装置310经由通信网络300接收摄像装置30所拍摄并发送的被检查物的图像数据并进行保存。
[0166]
外观检查装置100的接口装置22d经由通信网络300从二级存储装置310接收被检查物的图像数据。运算电路10获取接口装置22d接收到的图像数据,例如保存在存储装置14中以执行上述处理。
[0167]
本公开的外观检查系统和计算机程序能够适当地应用于工厂等制造现场中的物品或部件的外观检查。
[0168]
标号说明
[0169]
1000:外观检查系统;10:运算电路;12:存储器;14:存储装置;16:通信电路;18:图像处理电路;22a~22c:接口装置;30:摄像装置;120:输入装置;130:监视器。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1