一種基於深度學習架構檢測和分割表面異常最新算法

概述

利用機器學習自動進行表面異常檢測已成為一個有趣而有希望的領域研究,對視覺檢查的應用領域具有非常直接影響。

深度學習方法已成為完成此任務的最合適方法。

它們使檢查系統可以通過簡單地顯示一些示例來學習檢測表面異常圖片。

該論文文提出了一種基於分割的深度學習架構,該架構旨在檢測和分割表面異常,並在表面裂紋檢測的特定領域。

設計該架構使模型可以使用較小的模型進行訓練樣本數量,這是實際應用。所提出的模型與相關的深度學習方法(包括最新的商業軟件)表明,該方法在以下方面優於相關方法表面裂紋檢測。大量實驗還闡明瞭註釋所需的精度,所需培訓樣本的數量和所需的數量計算成本。

實驗是在新的根據真實的質量控制案例創建數據集並證明所提出的方法能夠學習在少數有缺陷的表面上,僅使用大約25-30個有缺陷的訓練樣本,而不是數百或數千,這在深度學習中通常是這樣應用程序。這使深度學習方法變得實用用於有缺陷數量的行業。

介紹

深度學習的檢測方法基本上可以分為兩個大類。

  • 基於目標檢測網絡實現的缺陷檢測系統
  • 基於圖像分割網絡實現的缺陷檢測系統


本文探討了合適的深度學習方法用於表面質量控制。尤其是,本文研究了應用於工業產品表面裂紋檢測的深度學習方法(見圖1)。探索合適的網絡體系結構,不僅是從整體上分類的表現,也是從角度來看

對於工業4.0特別重要的兩個特徵:

(a)註釋/數據要求和

(b)計算要求。滿足數據要求

通過利用深度卷積的有效方法基於兩階段語義分割的網絡。

提出了適合的細分和決策網絡從少數有缺陷的訓練樣本中學習,但仍可以達到最新結果。

在稱為Kolektor表面缺陷數據集(KolektorSDD)的新穎,真實世界的數據集上對提出的方法進行了廣泛的評估。

數據集代表工業上半成品表面缺陷檢測的實際問題,其中可用於培訓的缺陷項目數量有限。建議通過突出三個重要方面,證明該方法已經適合於所研究的應用程序:

(a)進行100%檢測所需的手動檢查率(人工檢驗假陽性結果),

(b)所需的註釋詳細信息和培訓次數導致人力成本的樣本;

(c)所需的樣本計算成本。在研究領域,網絡顯示勝過相關的最新技術方法,包括最新的商業產品和兩種標準細分網絡。在本文的其餘結構如下。

網絡設計

作者使用基於圖像分割網絡實現的缺陷檢測系統實現缺陷檢測和缺陷尺寸分割網絡,從而實現了更加有效和準確的缺陷檢測系統。該網絡僅需要20到30個訓練量的樣本即可獲得良好的結果,從而避免了網絡訓練所需的數千個樣本收集成本。作者在論文中提到,經典的機器視覺方法不能滿足工業4.0的技術要求,而深度學習方法具有很高的靈活性和準確性。傳統的手動標準特徵提取+ SVM / KNN視覺檢測方法不如深度學習相關方法有效。

該網絡在設計時考慮了以下兩個關鍵問題。

  • 需要多少標籤數據?
  • 網絡參數和浮點計算

語義分離與決策兩階段網絡基於KolektorSDD(缺陷檢測開放數據庫)以達到最佳效果,從而實現少量的樣本訓練和高精度檢測。

整個網絡的架構如下:


一種基於深度學習架構檢測和分割表面異常最新算法



帶有細分和決策網絡的擬議架構

在分割網絡部分,作者認為表面缺陷檢測可以解釋為圖像二進制分割問題,因此作者首先通過語義分割網絡實現像素級語義分割,然後將分割結果作為輸入特徵進行處理。構建決策部分。第一部分稱為分割網絡,第二部分自然被視為決策網絡。

如何分割網絡?

分割網絡由11個卷積層和3個池化層組成。每個卷積層之後是BN層和ReLU激活層(conv + BN + ReLU),以優化學習加速收斂。除了最後一層的卷積核大小為15x15之外,所有卷積層都使用5x5大小的卷積核。最後,通過與1x1卷積獲得的圖像大小是原始圖像大小的單通道蒙版圖像。輟學正則化被完全丟棄。作者認為,這樣的網絡是足夠規則的(事實背後的實驗數據被證明是正確的)。因此),這樣的網絡架構具有檢測高分辨率圖像中小的缺陷的能力,網絡具有相對較大的接收場(5x5),並且可以實現相對較小的特徵捕獲(像素級分割),作者還解釋了網絡的下采樣和高層的大卷積內核(15x15)用於放大接收場大小,底層使用多個卷積內核和一個下采樣最大池化層。

如何決策網絡?

決策網絡使用分段網絡的輸出作為輸入,並使用分段網絡的最後卷積層(1024通道數據+上遮罩通道),使用max-pooling + conv(5x5卷積,獲得1025通道數據作為輸入特徵)最後,網絡通過全局最大池化和池化輸出的平均來生成66個輸出向量。在設計決策網絡時,作者考慮了以下兩個重要原則。

  • 該網絡具有處理大型和複雜形狀的能力,因此它使用三個最大池
  • 輸入不僅採用卷積層特徵的最後一層,而且以掩碼數據為輸入,最後輸出66個特徵向量,有效解決了過擬合和全卷積特徵參數的問題。


同時,作者提出了一種快速路徑的概念,它通過全局最大池化和卷積層實現了不同的快捷路徑,有效地防止了網絡的複雜性。以下是一些註釋數據的原始圖像和Mask圖像。


一種基於深度學習架構檢測和分割表面異常最新算法


具有可見缺陷的表面圖像及其註釋Mask的幾個示例


如何訓練?

分割網絡的學習目標是生成基於像素級分類操作的兩類分割網絡。作者使用兩種訓練方法。

  • 基於迴歸的平方誤差(MSE)
  • 基於交叉熵的兩種分類

該模型在開始時並未使用任何圖像分類網絡進行預訓練,並且使用正分佈生成了網絡參數的初始化。

決策網絡首先通過交叉熵損失訓練分割網絡,然後凍結分割網絡參數,直接使用分割網絡的輸出來訓練決策網絡。僅當決策層具有擬合現象時,才需要對分割網絡的加權參數進行微調。。作者在培訓期間沒有很多GPU。他說,在訓練決策網絡時,批處理大小= 2,在訓練分割網絡時,可以增加樣本數量(此操作使我深深感到世界需要GPU)。

兩種網絡培訓方法的作者也嘗試過。此時,損失函數更為關鍵。作者指出,此時兩級網絡應使用交叉熵損失。

作者的實驗也證明了一起訓練的效果會更好。

結果

作者說,當推斷輸入儘可能使用灰度圖像時,作者使用兩個分辨率的圖像作為測試。

  • 1408x512
  • 704x256

兩個輸出層分別從決策網絡輸出二進制分割掩碼圖像和概率異常分數(0〜1),指示異常出現在圖像中。KolektorSDD數據集支持的五種數據註釋方法如下:


一種基於深度學習架構檢測和分割表面異常最新算法


通過以不同比率擴展(a)中所示的原始註釋而生成的五種不同註釋類型的示例:(b)dilate= 5,(c)膨脹= 9,(d)膨脹= 13,(e)膨脹= 15


最後,在KolektorSDD數據集上查看網絡的實驗結果和性能。準確性和不同損失函數訓練結果的五種標準方法:


一種基於深度學習架構檢測和分割表面異常最新算法


擬議方法在KolektorSDD上的結果(深色顯示為假陽性(FP),淺色顯示為假陰性(FN))


當前的市場在KolektorSDD數據集上的康耐視缺陷檢測測試結果中占主導地位,如下所示:


一種基於深度學習架構檢測和分割表面異常最新算法


在KolektorSDD上評估商用軟件Cognex ViDi Suite

不同模型效果對比結果要比Cognex更好:


一種基於深度學習架構檢測和分割表面異常最新算法


與最新的KolektorSDD進行比較(在中間的圖中:深色的假陽性和淺色的假陰性)

一種基於深度學習架構檢測和分割表面異常最新算法


帶有分段輸出和相應分類(真實缺陷在第一行中圈出)的真陽性(綠色實線邊框)和假陰性(紅色虛線邊框)檢測示例

總結

作者核心思想是將缺陷檢測視為二進制圖像分割問題, 像素級語義分割網絡用於成功減少網絡深度和參數總數,並通過少量的樣本訓練實現非常高精度的缺陷,表面檢查網絡。 在本文中,作者提到網絡設計的思想是本質。

論文地址:https://arxiv.org/pdf/1903.08536v1.pdf


分享到:


相關文章: