- 09/14
- 2022
-
QQ扫一扫
-
Vision小助手
(CMVU)
当前,国内多数工业企业已经跨越装备自动化阶段,正在从流程数字化向智能制造转型。
智能制造中非常重要的一环,传统方式中都是由专业的质检员进行人工目检。产线依靠工人的“火眼金睛”来检查工件的好坏,由于目前工业自动制造生产周期较大,所以质检工人的工作强度也非常大。高强度工作除了对工人的身体健康带来损害之外,还严重依赖于工人的经验,这种重复性劳动效率非常低下。另外,由于目前制造工艺的不断改进,很多产线的瑕疵率已经低于千分之五,缺陷难以收集,数据量严重不足,而且对于高精度的工件,往往不需要区分缺陷的类别,一旦发现就将作为报废件处理。
此时如果想使用传统的目标检测方法,往往带来项目周期长,检出精度不尽如人意以及成本过高、浪费等问题。这个时候就是异常检测登场的时机,异常检测以其无需缺陷件,无需标注信息,能应对可能出现的未知缺陷等优势,成为了工业质检中的一股强大的新兴力量。
基于生成模型的异常检测
基于深度学习的异常检测算法有两大经典的方向,第一个方向的工作主要集中在生成模型上,基于如生成对抗网络(GAN)或变分自动编码器(VAEs)等深度生成模型。
无监督生成模型通过学习真实数据的本质特征,能够刻画出样本数据的分布特征,生成与训练样本相似的新数据。模型能够发现并有效地内化数据的本质,并生成这些数据。生成式模型可以用于在没有目标类标签信息的情况下捕捉观测到可见数据的高阶相关性。
基于GAN的异常检测模型有不少,其中最经典的当属AnoGAN,它由两个对抗网络模块组成:生成网络和判别网络。
生成网络G从潜在空间中随机采样(随机产生噪声)作为输入,其输出结果需要尽量模仿训练集中的真实样本。
判别网络D的输入则为真实样本与生成网络的输出,输出为一个标量,代表其为真实样本而不是生成样本的可能性,其目的是将生成网络的输出从真实样本中尽可能分辨出来。
生成网络要尽可能地欺骗判别网络。两个网络相互对抗、不断调整参数,最终目的是使判别网络无法判断生成网络的输出结果是否真实。
在测试阶段,输入原始图像之后,将生成器输出的生成结果图与原图比对可以找到异常区域,同时辨别器的输出也可以作为异常值,两者共同做出判断,超过一定阈值则可认为是异常样本。
尽管它们是异常检测基于逐像素重建误差或评估模型概率密度分布的一种有效方法,但是其应用在检测领域可能存在负面效果,即通过比较重构出来的图像之间的像素值的差值来确定是否异常是不稳定的,因为存在形态重构正常但是像素值大小有差异的情况,如此求差的话将产生异常区域,但这种情况其实是在正常区域发生的。
基于嵌入的异常检测
另一类基于嵌入的异常检测算法在目前工业质检领域则具有相对更具有实用价值的表现。所谓的基于嵌入的方法指的是:将图像送入已经与训练好的目标检测模型,提取图像中的深层语义特征,并在特征空间中构造分界面或者评分规则。这类方法与上文谈到的重构方法的主要不同在于,其不在RGB图像空间而是在高维的特征空间中进行异常检测。
这一类算法使用在其他数据集上事先训练好的的神经网络模型,从正常样本图像中抽取出对应的高维特征,在检测时,计算待检测图片和正常样品图片特征之间的向量距离,根据这一距离和事先划定好的距离来判断图像上是否有异常,若有异常那么异常又属于待检测图像的具体哪个部分。
这一类别异常检测算法,虽然理论相对简单,但开拓了一个异常检测的研究方向,而且相对于之前其他异常检测方法,对于异常定位的效果却异常的好,更加贴合工业质检的需求。
此类方法首先使用在ImageNet数据集中训练的RCNN网络抽取出所有正常样本的特征,构建特征库。在检测时,使用同样的网络提取待测试图像的特征,通过K聚类方法找出特征库中和测试图像特征最近的K个正常特征,计算它们之间的距离,通过距离判断图像是否为异常。
若待测试图像被判定为异常图像则进入下一步异常定位工作,即找出图像中属于异常部分的像素。和上一步相似,都是要使用RCNN网络所提取的特征进行像素级的KNN距离计算。区别在于,像素级的异常检测是抽取RCNN第1,2,3层的特征向量,将三层特征向量通过向量的变形、广播进行结合,获取一个能反映图像不同维度特征信息的新的特征向量,使用这个新的特征向量构建特征库。通过这一特征库,计算出测试图片每一个像素上的异常得分,将异常得分和预先设定的阈值比较大小即可完成像素级的异常定位工作。
算法方法简单,效果好,使用预训练模型抽取特征构建特征库也免去了模型训练的烦恼。但由于此类算法的检测时间复杂度和正常样本数量线性相关,投入了越多的训练集,构建的特征库越庞大,检测所消耗的时间越久。总而言之,过久的检测时间导致此算法在实际项目上的应用价值有限。
在构建特征库的基础上,学界又进行了更加深入的研究,通过各种方式在特征提取方面不断尝试。在构建特征库时,仅使用特征集的核心集来当作特征库,缩减了特征库的尺寸,在检测精度略有提升的情况下,大幅度缩短了检测时间,图片的检出速度接近30张每秒,能够满足绝大多数工业件的生产节拍,在工业质检领域已经具备了较高的实际使用价值。
电极帽检测系列产品
由菲特自主研发的电极帽检测系列产品就是异常检测算法在工业质检领域的一次成功应用。菲特电极帽检测系统可进行焊接电极帽工作区表面缺陷检测。通过分析图像数据来改善电极帽焊接质量,避免后续出现的潜在质量风险;提高电极帽利用率,节约材料成本。通过视觉检测设备搭载算法,与焊接机器人联动,电极帽研磨完毕,自动进行缺陷检测,设备运行全过程无需人工参与,检测稳定性及一致性远高于人工目视检测方法。
检出结果如下图所示,对于帽头上的缺陷可以说做到既没有错杀也没有放过,模型的准确率和召回率分别为99.5%和99.6%