莫少雄 趙 波
(上海工程技術(shù)大學(xué)機(jī)械與汽車(chē)工程學(xué)院 上海 201620)
機(jī)器視覺(jué)系統(tǒng)在工業(yè)生產(chǎn)線上進(jìn)行的產(chǎn)品質(zhì)量檢測(cè),通常是通過(guò)相機(jī)[1]進(jìn)行的。在這種方法中,不需要任何專業(yè)工人的控制,同時(shí),產(chǎn)品的計(jì)數(shù)、缺陷的檢測(cè)和其尺寸的測(cè)量都可以同時(shí)進(jìn)行。有了這樣的系統(tǒng),可以進(jìn)行非??焖?、平滑和完美的檢測(cè)。這樣增加企業(yè)產(chǎn)量的同時(shí),產(chǎn)品的質(zhì)量也得到了很大程度的保證。機(jī)器視覺(jué)缺陷檢測(cè)系統(tǒng)通常是流水生產(chǎn)線上的首選,以提供完全的非接觸式檢測(cè),而不需要任何專業(yè)人員的監(jiān)督,從而降低了質(zhì)量控制的成本[2]。
在工業(yè)領(lǐng)域,生產(chǎn)設(shè)備的測(cè)量通常采用接觸式和非接觸式兩種方式。在接觸測(cè)量方法中,操作完全是可視化的,誤差相當(dāng)大。這種方法的性能非常低,特別是在需要精確測(cè)量的領(lǐng)域。在非接觸式測(cè)量方法中,通過(guò)一個(gè)或多個(gè)攝像頭和一個(gè)機(jī)器視覺(jué)軟件完成檢測(cè)操作。這種方法可以很容易地檢測(cè)出產(chǎn)品的不同特性,并根據(jù)所使用的計(jì)算機(jī)系統(tǒng)性能提供快速、可行的解決方案[3]。在其中一項(xiàng)研究中,電子芯片生產(chǎn)的最后階段是由磁帶和卷軸包裝質(zhì)量控制。研究開(kāi)發(fā)了一種利用多線程并行編程技術(shù),每分鐘可檢測(cè)200 個(gè)芯片。實(shí)驗(yàn)研究表明,該方法具有較高的精度和速度。Wang等開(kāi)發(fā)了一種基于機(jī)器視覺(jué)的自動(dòng)檢測(cè)方法。這種方法控制了電路板上的孔,確定了孔的數(shù)量和缺陷等[4]。
本研究開(kāi)發(fā)了一種基于深度學(xué)習(xí)的PCB 板質(zhì)量控制算法,對(duì)電路板上存在的缺陷進(jìn)行檢測(cè)和定位。首先利用傳統(tǒng)圖像處理技術(shù)Otsu 變換和Can?ny 邊緣提取對(duì)待測(cè)圖像進(jìn)行對(duì)PCB 板上的缺陷進(jìn)行預(yù)提取。然后將預(yù)提取的圖像和PCB 模板作為網(wǎng)絡(luò)輸入,減少檢測(cè)網(wǎng)絡(luò)特征提取的卷積次數(shù),從而提高檢測(cè)速率。同時(shí)利用多尺度特征融合的方式,使模型對(duì)輸入圖像對(duì)的變化具有更強(qiáng)的魯棒性。
在缺陷預(yù)提取過(guò)程中通過(guò)Otsu 閾值法和Can?ny邊緣提取對(duì)待測(cè)板進(jìn)行缺陷預(yù)提取,從這個(gè)過(guò)程中獲得的結(jié)果將用于后續(xù)更為精確的缺陷分類和定位。
該方法首先通過(guò)相機(jī)對(duì)印刷電路板進(jìn)行圖像采樣。將得到的圖像傳輸?shù)街鳈C(jī)并進(jìn)行圖像處理。在算法的第一步,通過(guò)轉(zhuǎn)換顏色空間,將RGB圖像轉(zhuǎn)換為YUV顏色空間[5]。在此轉(zhuǎn)換之后,獲取圖像的過(guò)程將在Y 通道上執(zhí)行。當(dāng)圖像只剩下Y通道時(shí),圖像就變成為黑白灰度圖像,更加便于后續(xù)的處理。RGB 顏色空間到Y(jié)UV 顏色空間的轉(zhuǎn)換如式(1)所示。
式中:Y、U、V為圖像的三個(gè)通道分別為亮度、色度、飽和度。R、G、B為原圖像的三個(gè)顏色通道。
其次,利用高斯濾波器消除圖像中的噪聲[6]。執(zhí)行此操作的數(shù)學(xué)表達(dá)式如式(2)所示。
式中:σ為高斯模板半徑,N為變換空間維數(shù),r為像素模板半徑。
然后,利用Otsu 閾值法將圖像轉(zhuǎn)換為二值圖像。Otsu 閾值法,也被稱為大津算法[7]。它使用的是聚類的思想,利用預(yù)設(shè)閾值K把圖像的灰度數(shù)按灰度級(jí)分成前景E0={0,1,…,K}和背景E2={K+1,K+2,…,L-1}兩個(gè)部分,使得這兩個(gè)部分之間的σ2灰度值差異最大,同一部分之間的灰度差異最小,通過(guò)方差的計(jì)算來(lái)尋找一個(gè)合適的灰度級(jí)別來(lái)劃分[8],即:
自適應(yīng)能夠更靈活地確定圖像的最佳灰度閾值。使得處理后的灰度圖能夠清晰地顯示圖像中的所有前景細(xì)節(jié)。用Otsu閾值獲得的圖像后,再利用Canny 算子對(duì)PCB 板所有的邊緣進(jìn)行提取,其原理是用在圖像用兩組卷積核做平面卷積[9]。通過(guò)得到橫向和縱向的灰度偏導(dǎo)近似值計(jì)算出梯度估計(jì)值:
式中:G為梯度估計(jì)值,Gx、Gy分別為橫向和縱向的灰度偏導(dǎo)近似值。
然后將計(jì)算出的G值與定義的閾值進(jìn)行比較,如果G比閾值大則認(rèn)為該點(diǎn)是一個(gè)邊界值,從而得到了邊緣檢測(cè)的圖像[10]。待檢測(cè)PCB 板上缺陷預(yù)提取結(jié)果如圖1所示。
圖1 處理結(jié)果
由于典型的CNN 模型所提供的多個(gè)層代表了目標(biāo)圖像的不同特征,因此可以利用特征層次構(gòu)建一個(gè)更加魯棒的檢測(cè)系統(tǒng)。我們的方法是通過(guò)融合多尺度深度特征,學(xué)習(xí)模板和圖像之間的相似性度量。
神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)如圖2 所示。該模型由兩個(gè)并行網(wǎng)絡(luò)組成,每個(gè)網(wǎng)絡(luò)都包含一個(gè)基本的網(wǎng)絡(luò)架構(gòu),包括卷積層和全連接層。在訓(xùn)練步驟中,在權(quán)值共享機(jī)制下,對(duì)兩個(gè)分支的兩個(gè)網(wǎng)絡(luò)進(jìn)行同步優(yōu)化。兩個(gè)分支可視為特征提取模塊,輸出為兩圖像對(duì)的低維表示向量[11]。然后,目標(biāo)是學(xué)習(xí)輸入圖像的最優(yōu)特征表示。在一系列卷積和激活層的后面,連接一個(gè)頂層網(wǎng)絡(luò)作為一個(gè)計(jì)算圖像對(duì)相似度的決策網(wǎng)絡(luò)的函數(shù)。計(jì)算兩個(gè)圖像特征相似度的任務(wù),通過(guò)全連通層組合兩個(gè)特征向量來(lái)計(jì)算損失,通常采用對(duì)比損失函數(shù)。然后利用算法對(duì)模型進(jìn)行微調(diào)。本文采用前5 個(gè)卷積層進(jìn)行特征提取。整個(gè)卷積層被劃分為5 個(gè)部分,分別為S1,S2,S3,S4,S5。第一個(gè)層包含卷積層和一個(gè)激活函數(shù)。第二和第三個(gè)片具有相同的結(jié)構(gòu),包括最大池層、卷積層和激活函數(shù)。
圖2 網(wǎng)絡(luò)結(jié)構(gòu)圖
考慮到不同層次的圖像包含不同而互補(bǔ)的信息,將多尺度的特征融合到不同的層次中,從而構(gòu)建出更具鑒別性和豐富的檢測(cè)圖像的特征表示。該策略將較低層次的詳細(xì)紋理信息與較高層次的語(yǔ)義信息相結(jié)合,這在許多研究中被證明是有效的[12]。首先,應(yīng)用數(shù)據(jù)集增強(qiáng)技術(shù)對(duì)缺陷數(shù)據(jù)集進(jìn)行擴(kuò)充。相同布局的PCB 圖像分為正常和缺陷兩類。將模板及其缺陷預(yù)提取的小塊圖像隨機(jī)成對(duì)組合成匹配的圖像對(duì),分別作為網(wǎng)絡(luò)的兩個(gè)輸入。然后,通過(guò)網(wǎng)絡(luò)學(xué)習(xí)成對(duì)PCB圖像的特征表示。兩個(gè)權(quán)值共享的并行網(wǎng)絡(luò)對(duì)輸入的PCB 圖像進(jìn)行卷積操作。在一系列卷積層和激活層作為線性和非線性變換的函數(shù)后,多分辨率特征圖由多尺度特征融合層編碼,進(jìn)行下一步的相似度計(jì)算。最后,將兩個(gè)特征向量的輸出連接起來(lái)作為融合特征,轉(zhuǎn)移到?jīng)Q策網(wǎng)絡(luò)中。在訓(xùn)練步驟中,利用成對(duì)圖像向量之間的距離,利用對(duì)比損失對(duì)特征提取網(wǎng)絡(luò)進(jìn)行調(diào)整。
如圖2 所示,SPP 網(wǎng)絡(luò)對(duì)輸入圖像的大小沒(méi)有限制。由于最后一個(gè)卷積層與預(yù)定義維數(shù)的全連接層沒(méi)有連接,輸入圖像可以是任意大小[13]。圖像都是相同大小的512*512*3,并將首先在第一個(gè)結(jié)構(gòu)中調(diào)整到所需的空間尺寸。插入一個(gè)空間金字塔池化層,可以在不降低分辨率的情況下輸入多尺度的圖像塊。對(duì)表1 中的每個(gè)網(wǎng)絡(luò)層進(jìn)行差分,得到差異特征圖,如式(5)所示:
表1 骨干網(wǎng)絡(luò)架構(gòu)表
式中:Si為差異特征向量,S1i、S2i分別為前后圖像的特征向量。
經(jīng)過(guò)空間平均池化層后,每個(gè)二維差分特征圖后面是SPP網(wǎng)絡(luò)層。在建立全連通層之前,我們?nèi)诤狭瞬煌叨鹊奶卣飨蛄浚⊿1-S5)來(lái)增強(qiáng)網(wǎng)絡(luò)特征的收斂性。因此,將每個(gè)塊的特征連接起來(lái),形成多尺度的融合特征向量。
通過(guò)損失函數(shù)優(yōu)化網(wǎng)絡(luò),以區(qū)分正常PCB和缺陷PCB。更具體地說(shuō),利用獎(jiǎng)懲機(jī)制[14],使得相似的圖像盡可能接近,非相似的圖像盡可能遠(yuǎn)離。對(duì)比損失函數(shù)表示如下:
式中:圖像序號(hào)為K,式中1為相似,0為非相似;D為圖像的歐氏距離,不同模板間的邊界距離m(m>0)。
實(shí)驗(yàn)所用的數(shù)據(jù)集,是通過(guò)人工缺陷檢測(cè)出的產(chǎn)品和正常產(chǎn)品,用檢測(cè)時(shí)所用的相機(jī)對(duì)數(shù)據(jù)進(jìn)行采集的。在這個(gè)數(shù)據(jù)集中,總共有1321 電路板,其中652 個(gè)缺陷電路板。主要缺陷有缺孔、錯(cuò)孔和毛刺等。
網(wǎng)絡(luò)模型是在NVIDIA GeForce GTX 2080 GPU,i7 9700 CPU 上,利用Tensorflow 深度學(xué)習(xí)框架進(jìn)行訓(xùn)練的。訓(xùn)練的總數(shù)為30000,每次迭代的批處理大小為12。當(dāng)損失值變化為0.0001 時(shí),大約1.5h后完成整個(gè)培訓(xùn)。
應(yīng)用的圖像分類任務(wù)評(píng)價(jià)協(xié)議。為了對(duì)算法進(jìn)行定量評(píng)價(jià),將平均精度(AP)用于缺陷分類。精確度是指在所有選中的樣本中正確識(shí)別的百分比,召回率是指在整個(gè)陽(yáng)性樣本中正確識(shí)別實(shí)例的概率。計(jì)算公式可以用真陽(yáng)性(TP)、假陽(yáng)性(FP)和假陰性(FN)來(lái)表示。具體表達(dá)式為
以召回率為x軸,精度為y軸,通過(guò)計(jì)算P-R 曲線來(lái)評(píng)價(jià)分類問(wèn)題的性能。P-R 曲線以下區(qū)域按召回率水平取平均值,其間隔為0~1 之間的固定間隔值。
在測(cè)試數(shù)據(jù)集上對(duì)算法的詳細(xì)評(píng)價(jià)如圖4 所示。從這組PR 曲線中,我們可以得出以下觀察結(jié)果。與傳統(tǒng)的相似度度量和使用單一特征層的網(wǎng)絡(luò)相比,多尺度網(wǎng)絡(luò)在兩種情況下的性能都是最好的。當(dāng)召回值接近于1 時(shí),多尺度模型仍具有較高的精度。該方法能有效地識(shí)別正常、缺陷PCB板。
圖3 兩類缺陷的P-R曲線
表2 給出了不同相似度度量方法的評(píng)價(jià)指標(biāo),包括精度、平均精確度和召回值。可以看出,傳統(tǒng)方法特征提取方法相比,只能提高很小的檢測(cè)準(zhǔn)確率。這反映了我們的擴(kuò)展數(shù)據(jù)集經(jīng)過(guò)一系列的變換后,該檢測(cè)方法比傳統(tǒng)的方法具有更高效的缺陷檢測(cè)能力。最終,多尺度特征融合的方法可以達(dá)到很高的準(zhǔn)確率,模型的平均精確度達(dá)到91.2%。
表2 不同相識(shí)度度量方法評(píng)價(jià)
如今在許多工業(yè)生產(chǎn)中機(jī)器視覺(jué)得到了廣泛的應(yīng)用。這些應(yīng)用程序?qū)崿F(xiàn)的功能各不相同,如計(jì)數(shù)、缺陷檢測(cè)和測(cè)量,最終的目的都提高了生產(chǎn)線的生產(chǎn)能力。本文提出了一種基于神經(jīng)網(wǎng)絡(luò)的多尺度特征相似性度量模型,應(yīng)用于PCB未知缺陷的檢測(cè)。首先,利用傳統(tǒng)的視覺(jué)缺陷檢測(cè)方法,對(duì)待測(cè)板上的進(jìn)行缺陷預(yù)提取。其次,將得到的缺陷預(yù)提取圖像輸入缺陷檢測(cè)網(wǎng)絡(luò)中,減少特征提取的卷積次數(shù),可減少不必要的硬件開(kāi)銷(xiāo)。結(jié)合特征融合策略,將多尺度特征進(jìn)行融合,保證了模型輸入在添加噪聲和光照變化的情況下獲得更好的缺陷檢測(cè)精度。此外,對(duì)比損失是一種很好的圖像相似度度量特征學(xué)習(xí)方法。但是,多尺度特征融合策略任然是值得進(jìn)一步的研究領(lǐng)域。