1.前言
深度學習在計算機視覺主流領域已經(jīng)應用的很成熟,但是在工業(yè)領域,比如產(chǎn)品表面缺陷檢測,總感覺沒有發(fā)揮深度學習的強大能力,近幾年表面缺陷的 相關研究主要是集中在各種借鑒主流神經(jīng)網(wǎng)絡框架,從CNN到Y(jié)OLO,SSD,甚至到語義分割的FCN相關論文,通過一些技術,對框架進行輕量化,對缺陷進行分類或檢測。
不過,逃不出一個問題:一定要有缺陷樣本可供訓練,而且數(shù)量不能太少!當然,也有一些課題組使用稀疏編碼、字典學習、稀疏自編碼等對表面缺陷進行檢測,這類方法很有局限性,主要針對那些有周期性背景紋理的圖像,比如絲織品,印刷品等。國內(nèi)外很多課題組、工業(yè)軟件公司都想開發(fā)出一些切合實際應用的算法軟件,在缺陷檢測領域,比較好的公司有:VIDI、Halcon等,聽說??低?/u>也在搞工業(yè)產(chǎn)品方便的算法研究。
開始說下這篇文章,文章是今年發(fā)表的,題目為(本想直接給下載好的文章鏈接,知乎審核說違規(guī),論文被施普林格收錄,單pdf文件下載鏈接我放到評論里):
A Surface Defect Detection Method Based on Positive Samples
作者提出只依據(jù)已有的正常表面圖像樣本,通過一定的技術手段對缺陷樣本進行檢測,很好的將最近研究火熱的GAN應用于框架中,這一年,課題組的老師也一直討論這種方法的可行性,缺陷的檢測要不要有缺陷樣本,從稀疏自編碼,小樣本學習再到計算機視覺研究熱點之一的零樣本學習,得出結(jié)論:大多數(shù)工業(yè)產(chǎn)品表面缺陷檢測是需要缺陷樣本或者人為制作的缺陷樣本,論文雖然是沒有直接使用生產(chǎn)線上的缺陷樣本,但是通過算法人為的產(chǎn)生了缺陷樣本,并很好的融合和GAN在圖像修復領域的強大能力,整個框架的設計很巧妙。
文章思路:論文的整體思路就是GAN在圖像修復和重建方便具有很強大的能力,通過人為的去在正常樣本上“隨意”添加一些缺陷,訓練階段讓GAN去學習一個可以修復這些缺陷區(qū)域的網(wǎng)絡,檢測階段時,輸入一個真實缺陷樣本,訓練好的GAN會對其進行修復,再基于LBP可完成缺陷檢測。整個算法框架不需要真實的缺陷樣本和手工標簽,但是在框架中,人為的去產(chǎn)生(比如PS)一些缺陷區(qū)域。
通俗說:
作者利用GAN在圖像修復(重建)上的能力,在工業(yè)現(xiàn)場收集一些正常(無缺陷)樣本,人工PS一些缺陷,比如線條、斑點等。
訓練時,將PS的人工制作的缺陷圖像和原圖像做輸入樣本訓練GAN,得到一個具有圖像修復重建能力的網(wǎng)絡。
測試時,直接使用訓練好的GAN對采集到的圖像進行重建修復,如果樣本中中有缺陷區(qū)域,缺陷區(qū)域按照網(wǎng)絡設計,肯定需要修復,將修復后的圖像和原缺陷圖像使用LBP找出顯著差異區(qū)域即為缺陷區(qū)域。
2.文章主要內(nèi)容
論文的主體框架思想是基于GAN網(wǎng)絡的結(jié)構(gòu)。GAN 主要包括了兩個部分,即生成器 G與判別器 D。生成器主要用來學習真實圖像分布從而讓自身生成的圖像更加真實,以“騙過”判別器。判別器則需要對接收的圖片進行真假判別。在整個過程中,生成器努力地讓生成的圖像更加真實,而判別器則努力地去識別出圖像的真假,這個過程相當于一個博弈過程,隨著時間的推移,生成器和判別器在不斷地進行對抗,最終兩個網(wǎng)絡達到了一個動態(tài)均衡:生成器生成的圖像接近于真實圖像分布,而判別器識別不出真假圖像,對于給定圖像的預測為真的概率基本接近 0.5(這段話從李宏毅老師那引用的,致敬李老師)。
訓練階段
在訓練階段,模型采用一些圖像處理技術,人為的在正常樣本圖像上產(chǎn)生一些缺陷(示意圖中的紅色框模塊),使用由自編碼器構(gòu)成的G模塊進行缺陷修復學習,學習的目標是與正常樣本之間的L1范數(shù)最小,通過一定數(shù)量的樣本訓練可以獲得有缺陷修復能力的G模塊。GAN用于圖像修復的一些資料可以參考[3][4],當然也可以參考論文里的參考文獻。
訓練階段
測試階段
在測試階段,將上步驟訓練好的G模塊作為測試階段的圖片修復模塊,對于輸出的圖像樣本,假如存在缺陷區(qū)域,通過修復模塊G將得到修復后的圖像,與原缺陷樣本圖像一起作為LBP算法的輸入,通過LBP算法對其缺陷區(qū)域進行精確定位。
測試階段
3. 其他細節(jié)
3.1缺陷生成
在實際訓練中,論文作者手工生成一些缺陷樣本,如圖3所示,訓練網(wǎng)絡自動修復缺陷。另外作者也通過一些技術進行了樣本的擴充,比如加入高斯噪聲、隨機resize大小等。
缺陷生成
3.2缺陷圖像重建
缺陷圖像重建部分主要的作用是:缺陷圖像重建后盡量和正常樣本一樣,作者在這部分在文獻[5][6]基礎上進行框架修改的,比如使用L1 distance作為衡量重建差異的目標函數(shù)。
然后實驗中作者又發(fā)現(xiàn)只使用L1不行,圖像邊緣等細節(jié)可能會衡量不準確,又加入GAN loss來提升網(wǎng)絡的重建效果。
最后,得到了下面目標函數(shù)。
3.3缺陷檢測
因為使用GAN修復后的圖片和原始缺陷樣本圖片之間在像素級的細節(jié)上有一些差異,作者使用了前幾年在人臉領域應用比較好的LBP算法進行缺陷區(qū)域的檢測,這里不介紹算法的細節(jié),示意圖如下。
4.實驗
文章對DAGM 2007數(shù)據(jù)集和織物密集圖像進行了驗證實驗。實驗表明,提出的GAN+LBP算法和有足夠訓練樣本的監(jiān)督訓練算法具有較高的檢測準確率。實驗使用兩種類型的數(shù)據(jù)集,4.1是印花紋表面,4.2是織物表面。
4.1Texture surface
測試樣本
結(jié)果
a.原始圖像,b.修復圖像,c.論文方法,d. FCN方法,e.真實標簽
4.2Fabric Picture
實驗中缺陷樣本的類型有五種。實驗樣本按背景分有三類,每類包含5個缺陷樣本,25個正常樣本。
測試樣本
結(jié)果
a.原始圖像,b.修復圖像,c.論文方法,d. FCN方法,e.真實標簽
本人水平有限,表述不清楚或錯誤的地方請指出,一起進步!
歡迎點贊(開心臉)
參考文獻
[1] Zhao Z, Li B, Dong R, et al.A Surface Defect Detection Method Based on Positive Samples[C]// Pacific Rim International Conference on Artificial Intelligence. Springer, Cham, 2018:473-481.
[2] Wu X. Fully Convolutional Networks for Semantic Segmentation[J]. Computer Science, 2015.
[3] Li Y, Liu S, Yang J, et al. Generative Face Completion[J]. 2017.
[4] Yang C, Lu X, Lin Z, et al. High-Resolution Image Inpainting using Multi-Scale Neural Patch Synthesis[J]. arXiv preprint arXiv:1611.09969, 2016.
[5] Image-to-Image Translation with Conditional Adversarial Networks.
[6] Unsupervised representation learning with deep convolutional generative adversarial networks.
責任編輯:xj
原文標題:GAN用于(無缺陷樣本)產(chǎn)品表面缺陷檢測
文章出處:【微信公眾號:新機器視覺】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
-
GaN
+關注
關注
19文章
1967瀏覽量
74350 -
表面缺陷檢測
+關注
關注
0文章
20瀏覽量
1300
原文標題:GAN用于(無缺陷樣本)產(chǎn)品表面缺陷檢測
文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關推薦
X-Ray檢測設備能檢測PCBA的哪些缺陷
X射線工業(yè)CT檢測設備用于復合新材料內(nèi)部缺陷檢測
![X射線工業(yè)CT<b class='flag-5'>檢測</b>設備<b class='flag-5'>用于</b>復合新材料內(nèi)部<b class='flag-5'>缺陷</b><b class='flag-5'>檢測</b>](https://file1.elecfans.com/web2/M00/F2/D1/wKgZomZ6b7KAOsGBAACqyxW8E98544.png)
明治案例 | 【非標缺陷檢測】 FEB管黑色雜質(zhì)
![明治案例 | 【非標<b class='flag-5'>缺陷</b><b class='flag-5'>檢測</b>】 FEB管黑色雜質(zhì)](https://file1.elecfans.com/web2/M00/00/B8/wKgZomaxggiAZTSdAAR3d9mo_lE255.jpg)
渦流檢測常用的檢測方式
基于AI深度學習的缺陷檢測系統(tǒng)
外觀缺陷檢測原理
![外觀<b class='flag-5'>缺陷</b><b class='flag-5'>檢測</b>原理](https://file1.elecfans.com//web2/M00/F0/21/wKgaomZwBCCAKxwBAAP2HBGJUAE045.jpg)
產(chǎn)品標簽OCR識別缺陷檢測系統(tǒng)方案
![<b class='flag-5'>產(chǎn)品</b>標簽OCR識別<b class='flag-5'>缺陷</b><b class='flag-5'>檢測</b>系統(tǒng)方案](https://file1.elecfans.com//web2/M00/ED/6B/wKgaomZjKtyAXrQWAA7ZZLsSi5w643.png)
GaN功率HEMT制造中的缺陷及其表征方法
![<b class='flag-5'>GaN</b>功率HEMT制造中的<b class='flag-5'>缺陷</b>及其表征方法](https://file1.elecfans.com/web2/M00/CC/91/wKgZomYgmFKAUj18AABn28o8vmo905.png)
賽默斐視X射線薄膜測厚儀與薄膜表面缺陷檢測
工業(yè)CT測量機檢測產(chǎn)品內(nèi)部缺陷瑕疵
![工業(yè)CT測量機<b class='flag-5'>檢測</b><b class='flag-5'>產(chǎn)品</b>內(nèi)部<b class='flag-5'>缺陷</b>瑕疵](https://file1.elecfans.com/web2/M00/C5/EB/wKgaomX5U9uACUWPAADLPXxbVUo541.png)
一目了然:機器視覺缺陷識別方法
![一目了然:機器視覺<b class='flag-5'>缺陷</b>識別方法](https://file1.elecfans.com/web2/M00/C5/BD/wKgaomX4Dw6AUMshAADwPEzj6F0757.png)
如何應對工業(yè)缺陷檢測數(shù)據(jù)短缺問題?
![如何應對工業(yè)<b class='flag-5'>缺陷</b><b class='flag-5'>檢測</b>數(shù)據(jù)短缺問題?](https://file1.elecfans.com/web2/M00/C5/2E/wKgaomXyXmGAc7xGAABaUrbaWLw966.png)
基于深度學習的芯片缺陷檢測梳理分析
![基于深度學習的芯片<b class='flag-5'>缺陷</b><b class='flag-5'>檢測</b>梳理分析](https://file1.elecfans.com/web2/M00/C0/E8/wKgZomXa31uAB_R6AAAVwpLznTQ304.png)
2023年工業(yè)視覺缺陷檢測經(jīng)驗分享
![2023年工業(yè)視覺<b class='flag-5'>缺陷</b><b class='flag-5'>檢測</b>經(jīng)驗分享](https://file1.elecfans.com/web2/M00/C1/5E/wKgaomXVmaeAPfZyAAAH2RrtCYM600.png)
評論