日期
10/27
2017
咨询
  • QQ扫一扫

  • Vision小助手
    (CMVU)

学习|探究缺陷检测中的深度学习:从预测像素属性谈起
收藏
2017-10-27 16:11:31来源: 中科慧远微信公众号:CASIVISION

瑕疵检测易受到光照、灰尘、噪声等干扰,且由于瑕疵种类繁多、边界模糊,如图1所示,手工设计的特征很难高效率检测所有瑕疵。随着深度学习的发展,一些经典的深度网络如AlexNet、GoogleNet等在多个图像任务中取得了巨大成功,一些任务的成功率和准确率甚至达到或超过人工检测。在瑕疵检测中,研究人员也一直致力于借用深度网络,降低手工设计特征的难度,并进一步提升准确率。


图1: IR孔检测中的典型缺陷 (a) 错印 (b) 黑点 (c) 白点 (d) 异色 (e) 橘皮

由于受到光照不均的影响,第一列图像的灰度值明显低于第二列图像

CNN的强大之处在于通过多次卷积、池化过程,自动提取抽象特征,并且这些特征是多个层次的,较浅的层感知域较小,学习到一些局部区域的特征;较深的层具有较大的感知域,能学习到更加抽象的特征,这些抽象特征对物体的大小、位置和方向等敏感性更低,从而有助于识别性能的提高。这些抽象的特征可以很好的判断出一幅图像中包含什么类别的物体。然而,卷积和池化过程会丢失图像的具体细节,不能精确指出每个像素的具体属性,因此不适用于类似瑕疵检测这种像素级精度的检测任务。

为了完成对单个像素点分类的任务,传统的基于CNN的方法通常是:为了对一个像素的属性进行分类,使用该像素周围的一个图像块作为CNN的输入用于训练和预测。这种方法有几个缺点:一是存储开销很大,且需要存储的相邻像素块基本上是重复的;二是像素块的大小限制了感知区域的大小,通常像素块的大小比整幅图像小很多,只能获取一些局部的特征。针对此问题,加州大学伯克利分校的Long等人提出了全卷积网络(FCN),该网络试图从抽象特征中恢复每个像素所属的类别,即从图像级别的分类进一步延伸至像素级别的分类。

所谓全卷积网络,就是将传统的CNN中的全连接层转化为卷积层,如图2所示。在传统的CNN结构AlexNet中,前5层是卷积层,后3层是全连接层,第6层和第7层分别是一个长度为4.096的一维向量,第8层是长度为1000的一维向量,分别对应1000个类别的概率。在FCN中,这3层全部被表示为卷积层,故称为全卷积网络。


图2传统CNN与FCN网络结构对比

经过多次卷积和池化后,结果图像越来越小,分辨率越来越低,为了得到与原图像一样大小目标图,FCN采用了上采样,例如经过5次卷积和池化后,图像大小缩小了32倍,对于最后一层的输出图像,需要进行32倍的上采样。既使进行上采样,得到的目标图像与原图像大小一样,但图像细节无法恢复。于是Long在第6层进行上采样时,将第4层的结果进行叠加,从而得到更精细的2倍上采样图像;进一步上采样时,将第3层的结果同样进行叠加,得到更精细的4倍上采样图像。当然,也可以进行进一步上采样,并将第2层的结果叠加,得到8倍上采样图像,但作者在论文中证明,继续进行这些步骤,并不能带来效果上的改进。整体网络结构如图3所示。

与传统使用CNN进行图像分割的方法相比,FCN有两大明显优点:一是可以接受任意大小的输入图像,而不用要求所有的训练图像和测试图像具有同样的尺寸。二是更加高效,因为避免了由于使用像素块而带来的重复存储和计算卷积的问题。同时FCN的缺点也比较明显:一是得到的结果还是不够精细。进行8倍上采样虽然比32倍的效果好了很多,但是上采样的结果还是比较模糊和平滑,对图像中的细节不敏感。二是对各个像素进行分类,没有充分考虑像素与像素之间的关系,忽略了在通常的基于像素分类的分割方法中使用的空间规整(spatial regularization)步骤,缺乏空间一致性。因此,为进一步将FCN应用至瑕疵检测中,仍需改进,以进一步提升FCN在细节表达方面的能力,来达到瑕疵检测所需的精度。

图3FCN网络结构

中科慧远一直致力于先进的机器学习技术在瑕疵检测中的应用,在未来人工智能的大潮中,必有慧远人的足迹。


咨询电话:0379-60210288

联系邮箱:hy@casivision.com

中科慧远助力工业4.0

与您携手同行