陶 沙, 司 偉, 王 奎
(1.銅陵學(xué)院 電氣工程學(xué)院, 安徽 銅陵 24000; 2.中國(guó)聯(lián)合網(wǎng)絡(luò)通信有限公司, 北京 100032)
隨著我國(guó)工業(yè)的發(fā)展,尤其是納米和集成技術(shù)的不斷進(jìn)步,對(duì)檢測(cè)精度和速度的要求也越來(lái)越高,傳統(tǒng)的顯微鏡測(cè)量已經(jīng)達(dá)不到要求。為了提高精度,可以利用計(jì)算機(jī)對(duì)目標(biāo)物件進(jìn)行識(shí)別,計(jì)算機(jī)和互聯(lián)網(wǎng)技術(shù)的高速發(fā)展可以更好利用和提高數(shù)字圖像對(duì)智能制造系統(tǒng)識(shí)別的準(zhǔn)確率。目前,檢測(cè)智能制造系統(tǒng)的研究熱點(diǎn)是基于機(jī)器學(xué)習(xí)和深度神經(jīng)網(wǎng)絡(luò)技術(shù)[1-2]。為了采集高精度圖像,先使用高分辨率的相機(jī)采集物理零件圖像,對(duì)采集到的圖像進(jìn)行降噪濾波和邊緣檢測(cè)。
系統(tǒng)結(jié)構(gòu)如圖1所示。相機(jī)是采集圖像的重要設(shè)備,選擇合適的相機(jī)可以在一定程度上提升采集圖像的質(zhì)量。采集的圖像需要進(jìn)行預(yù)處理,本系統(tǒng)選擇單一零件進(jìn)行檢測(cè),采集零件圖像的邊緣清晰度要高,利用局部區(qū)域假設(shè)的亞像素邊緣算法去提高采集零件圖像邊緣的清晰度[3-5]。經(jīng)過(guò)預(yù)處理后的圖像送入GA-CNN網(wǎng)絡(luò)進(jìn)行處理。
圖1 系統(tǒng)框圖
在一般數(shù)字圖像處理中,采集到的數(shù)據(jù)一定要進(jìn)行預(yù)處理[6-8],包括灰度化、平滑處理、銳化處理、閾值處理。本文檢測(cè)零件邊緣清晰度對(duì)于后面GA-CNN算法缺陷分類很重要,需要進(jìn)行邊緣檢測(cè)處理,主要原理是:圖像的邊緣形狀可以由近似曲線表示,近似曲線可以用方向、曲率、距離等參數(shù)表示。假設(shè)曲線邊緣由y=a+bx+cx2來(lái)表示,以3×5的區(qū)域進(jìn)行研究,如圖2所示。L、M、R分別表示直線下方每列面積,計(jì)算公式為:
圖2 曲線邊緣3×5的區(qū)域圖
(1)
(2)
(3)
SL、SM、SR表達(dá)式與直線相同,從而可以得出系數(shù)a、b、c的表達(dá)式:
(4)
(5)
(6)
由此3個(gè)特征參數(shù),可以算出邊緣曲率表達(dá)式為:
1.2.1 卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
卷積神經(jīng)網(wǎng)絡(luò)(CNN)是一種前饋網(wǎng)絡(luò)[9],網(wǎng)絡(luò)結(jié)構(gòu)主要分為input Layer、Hidden Layer和output Layer,Hidden Layer包括conv Layer和full Layer,如圖3所示。input Layer用來(lái)提取特征,可以處理多維數(shù)據(jù)。conv Layer對(duì)輸入數(shù)據(jù)進(jìn)行特征提取,其內(nèi)部包含多個(gè)卷積核,卷積層參數(shù)包括卷積核大小、步長(zhǎng)和填充,三者共同決定了卷積層輸出特征圖的尺寸。full Layer主要對(duì)網(wǎng)絡(luò)進(jìn)行分類。output Layer直接輸出每個(gè)像素的分類結(jié)果。
圖3 卷積神經(jīng)網(wǎng)絡(luò)圖
卷積神經(jīng)網(wǎng)絡(luò)分層框架如圖4所示。假設(shè)樣本總數(shù)為m,每個(gè)樣本特征維數(shù)為d,則卷積網(wǎng)絡(luò)輸入層為d×m,在訓(xùn)練過(guò)程中,不斷學(xué)習(xí)卷積掩膜,每一個(gè)卷積掩膜都使用相同的掩膜尺寸,記為1×d′。其中d′表示卷積掩膜的維數(shù),如果少于3個(gè)卷積層,d′滿足式(7)。經(jīng)過(guò)前3個(gè)卷積層之后,特征的維度為式(8)~式(10):
圖4 卷積神經(jīng)網(wǎng)絡(luò)分層框架
(7)
d11=d-d′+1
(8)
(9)
(10)
通過(guò)前面的特征提取和減少相應(yīng)的參數(shù)后,進(jìn)入full Layer對(duì)其分類。通過(guò)上述理論,把該網(wǎng)絡(luò)結(jié)構(gòu)分為5個(gè)conv Layer(3×3卷積核)、4個(gè)pooling Layer(2×2大池化)、2個(gè)full Layer,共11層網(wǎng)絡(luò)。
1.2.2 混合遺傳卷積神經(jīng)網(wǎng)絡(luò)
圖5 遺傳算法流程圖
(11)
GA算法位數(shù)的前B-1位用于編碼卷積掩膜,B位用于初始化全連接層,根據(jù)上述原理計(jì)算染色體編碼以及染色體的適應(yīng)度值。
本次測(cè)量的零件圖如圖6所示。選取50個(gè)零件進(jìn)行測(cè)量,利用局部區(qū)域假設(shè)檢測(cè)算法檢測(cè)零件邊緣,連續(xù)測(cè)30次,獲得30幅圖像[11],為了提高精度取平均值作為測(cè)量值。基于局部區(qū)域假設(shè)檢測(cè)算法檢測(cè)邊緣的方向和位置,與標(biāo)準(zhǔn)值進(jìn)行比對(duì),平均誤差分別為0.009 mm和0.002 mm,如表1所示。
圖6 測(cè)試零件圖
表1 誤差分析表 單位:mm
選用Caffe作為實(shí)驗(yàn)用深度學(xué)習(xí)架構(gòu)去實(shí)現(xiàn)卷積神經(jīng)網(wǎng)絡(luò)。數(shù)據(jù)集在網(wǎng)絡(luò)結(jié)構(gòu)分類中一般劃分成訓(xùn)練集和測(cè)試集。對(duì)約1 500個(gè)零件圖像按照訓(xùn)練、驗(yàn)證、測(cè)試集的占比大致60∶20∶20的比例進(jìn)行劃分。缺陷分類網(wǎng)絡(luò)準(zhǔn)確率如圖7所示。網(wǎng)絡(luò)在測(cè)試集上缺陷的分類準(zhǔn)確率如表2所示。
圖7 缺陷分類網(wǎng)絡(luò)準(zhǔn)確率
表2 網(wǎng)絡(luò)測(cè)試分類準(zhǔn)確率 單位:%
利用基于局部區(qū)域假設(shè)檢測(cè)算法獲取圖像,進(jìn)行卷積算法分類,加入混合型遺傳算法,用改進(jìn)后的算法對(duì)工件的區(qū)域進(jìn)行測(cè)量。數(shù)據(jù)處理和算法模擬實(shí)驗(yàn)表明:利用基于局部區(qū)域假設(shè)檢測(cè)算法,提高了圖形獲取的精度,誤差?。籊A-CNN 混合神經(jīng)網(wǎng)絡(luò)模型, 改進(jìn)了傳統(tǒng)梯度下降法的訓(xùn)練缺點(diǎn),比未經(jīng)優(yōu)化的 CNN混合神經(jīng)網(wǎng)絡(luò)算法模型表現(xiàn)出更高的預(yù)測(cè)精度;訓(xùn)練得到的網(wǎng)絡(luò)對(duì)缺陷識(shí)別率較高,但對(duì)于不明顯的缺陷識(shí)別率不高,主要原因是網(wǎng)絡(luò)結(jié)構(gòu)簡(jiǎn)單。若要獲得較高的精確率,還要加深網(wǎng)絡(luò)結(jié)構(gòu)、增加數(shù)據(jù)集規(guī)模??偟膩?lái)說(shuō),GA-CNN在智能制造系統(tǒng)中具有一定的應(yīng)用價(jià)值。