李長(zhǎng)齊,王 菡,羅 昊
(1.保山學(xué)院大數(shù)據(jù)學(xué)院,云南保山 678000;2.馬來西亞博特拉大學(xué),馬來西亞吉隆坡 43400)
由于人在工作時(shí)會(huì)受到主觀因素和外部環(huán)境的影響,工作效率會(huì)大幅度波動(dòng),導(dǎo)致人工檢測(cè)的速度和質(zhì)量難以保證,因此傳統(tǒng)的人工檢測(cè)方案在制造業(yè)生產(chǎn)中已無法滿足需求。隨著數(shù)字圖像處理技術(shù)理論的發(fā)展,將機(jī)器視覺與深度學(xué)習(xí)相結(jié)合的產(chǎn)品缺陷檢測(cè)解決方案被越來越多的廠家采用[1],提高了工廠自動(dòng)化程度,促進(jìn)了工業(yè)的智能化發(fā)展。但是研發(fā)一套價(jià)格便宜、性能穩(wěn)定的缺陷檢測(cè)系統(tǒng)依舊是值得研究的問題[2]。在網(wǎng)絡(luò)架構(gòu)上,卷積神經(jīng)網(wǎng)絡(luò)(CNN)在人臉識(shí)別[3]、字符識(shí)別[4]、圖像處理[5]、自然語言處理[6]等研究領(lǐng)域存在著大量成功的應(yīng)用案列,如喬麗等[7]使用CNN進(jìn)行鍵盤缺陷檢測(cè)。在硬件設(shè)計(jì)上,韓雪[8]等使用樹莓派設(shè)計(jì)了塑料紐扣次品檢測(cè)系統(tǒng),許艷[9]等發(fā)表了基于樹莓派的元器件檢測(cè)設(shè)計(jì)論文。
齒輪是機(jī)械設(shè)計(jì)領(lǐng)域必不可少的零件,但是生產(chǎn)線上出品的齒輪可能出現(xiàn)表面缺陷等質(zhì)量問題,因此研發(fā)齒輪表面缺陷檢測(cè)系統(tǒng)對(duì)于保證齒輪出廠的合格率至關(guān)重要,同時(shí)還能夠彌補(bǔ)人工檢測(cè)的不足,所以設(shè)計(jì)一套齒輪表面缺陷檢測(cè)系統(tǒng)具有重要的意義。
文章采用廠商提供的齒輪表面缺陷圖像,選出3種主要的缺陷種類:表面臟污、斷齒和表面裂紋,進(jìn)行識(shí)別分析。3種缺陷樣本如圖1所示。本文針對(duì)這3種常見的出廠缺陷進(jìn)行檢測(cè)設(shè)計(jì),不考慮其他類型的缺陷。
圖2為系統(tǒng)總體框圖?;跇漭傻凝X輪表面缺陷檢測(cè)系統(tǒng)由光電檢測(cè)模塊、圖像采集模塊、缺陷檢測(cè)模塊、次品剔除模塊和電源模塊組成。通過光電傳感器件探測(cè)目標(biāo)位置是否存在齒輪,通過傳感器的輸出電平觸發(fā)樹莓派4B控制CCD相機(jī)實(shí)時(shí)采集齒輪表面圖像,圖像返回給樹莓派4B進(jìn)行缺陷檢測(cè),剔除模塊根據(jù)檢測(cè)結(jié)果去除缺陷齒輪,電源模塊為樹莓派4B供電。
圖2 系統(tǒng)總體框圖
系統(tǒng)硬件由樹莓派4B開發(fā)板、光電傳感模塊、圖像采集模塊、剔除模塊和電源模塊組成,樹莓派4B作為主控平臺(tái)協(xié)調(diào)多個(gè)模塊共同實(shí)現(xiàn)齒輪表面缺陷次品的檢測(cè)功能。
樹莓派4B作為系統(tǒng)的主控平臺(tái),搭載缺陷檢測(cè)算法,協(xié)調(diào)多個(gè)外部設(shè)備的運(yùn)行,共同實(shí)現(xiàn)次品檢測(cè)任務(wù)。樹莓派4B是一種基于BCM2711的卡片式電腦,具有豐富的外接接口,支持多種操作系統(tǒng),支持python、C/C++等多種語言編程,具有價(jià)格低,開發(fā)周期短等優(yōu)點(diǎn)。
光電檢測(cè)模塊的任務(wù)是檢測(cè)齒輪的位置,觸發(fā)樹莓派控制相機(jī)采集齒輪表面圖像,系統(tǒng)使用對(duì)射式光電傳感器,它的原理是如果待檢位置存在目標(biāo)則會(huì)阻斷發(fā)射器的光線進(jìn)入接收器,從而判斷待檢位置存在目標(biāo)。系統(tǒng)采用PM-TF15/30型光電傳感器,具有安裝簡(jiǎn)單、使用壽命長(zhǎng)等優(yōu)點(diǎn)。
CCD(charge couple device)工業(yè)相機(jī)是具有電荷耦合器件的攝像機(jī),具有體積小、靈敏度高、功耗低、壽命長(zhǎng)、畸變小等優(yōu)點(diǎn),常應(yīng)用于工業(yè)生產(chǎn)中。系統(tǒng)采用MV-GE502C/M型相機(jī),像素為500萬,焦距可調(diào),使用USB3.0接口與樹莓派連接。
剔除模塊電路如圖3所示。P2為樹莓派4B外擴(kuò)GPIO接口排插,由于樹莓派硬件CPU部分原理圖未開源,設(shè)計(jì)了外擴(kuò)GPIO與外設(shè)連接的原理圖。樹莓派GPIO16引腳連接D2三極管基極,通過三極管驅(qū)動(dòng)繼電器K1,D1為保護(hù)二極管。通過GPIO36引腳檢測(cè)光電傳感器信號(hào),由于PM-TF15/30型光電傳感器的輸出電壓為5 V,而GPIO引腳標(biāo)準(zhǔn)電壓為3.3 V,使用2 kΩ、3 kΩ的電阻R2、R3組建分壓電路。
圖3 剔除模塊電路圖
由于樹莓派4B開發(fā)板功率為5 V/600~3 000 mA、CCD相機(jī)功率為5 V/200 mA,設(shè)計(jì)了電源電路如圖4所示。AC 220 V市電通過電源變壓器T1轉(zhuǎn)化為AC 18 V,全橋整流器D12將AC 18 V轉(zhuǎn)化為低壓直流電,C1對(duì)低壓直流電進(jìn)行穩(wěn)壓,U1、U2降壓穩(wěn)壓芯片將低壓直流電轉(zhuǎn)化為5 V直流電,L為輸出電感,D9、D10為電源指示燈,P1為輸出電壓的接線端子,因?yàn)長(zhǎng)M2576-5V最大輸出電流為3 000 mA,因此,并聯(lián)2路輸出。
根據(jù)齒輪表面圖像的紋理信息特征進(jìn)行缺陷檢測(cè)。設(shè)計(jì)的缺陷檢測(cè)算法如圖5所示。首先對(duì)圖像進(jìn)行雙邊濾波,得到質(zhì)量良好的圖像,然后將濾波后的圖像通道進(jìn)行轉(zhuǎn)換,并提取圖像的紋理特征,最后使用訓(xùn)練完成的分類器對(duì)圖像進(jìn)行分類,判斷齒輪表面是否存在缺陷。
一般得到原始圖像后,會(huì)對(duì)圖像進(jìn)行濾波去噪處理以獲得更高質(zhì)量的圖像,但是常用的濾波方法在對(duì)
圖4 電源模塊原理圖
圖5 缺陷檢測(cè)算法流程圖
圖像進(jìn)行去噪的同時(shí)會(huì)不可避免地模糊邊緣信息,這樣會(huì)造成細(xì)節(jié)信息尤其是紋理信息和邊緣信息丟失,導(dǎo)致后續(xù)檢測(cè)出現(xiàn)極低的準(zhǔn)確率。使用雙邊濾波能夠在濾波去噪的同時(shí)很好地保留圖像的邊緣及紋理信息。1998年,Tomasi等設(shè)計(jì)了基于高斯濾波器的改進(jìn)算法,即雙邊濾波器[10]。
它將圖像的像素值相似度和空間鄰近度進(jìn)行非線性組合,這樣在保證平滑圖像的同時(shí)又能夠充分保留圖像的邊緣信息。雙邊濾波器核函數(shù)由空間域核函數(shù)與像素范圍域核函數(shù)構(gòu)成。其中,空間域核函數(shù)公式為
(1)
式中:(k,l)為模板窗口中心像素點(diǎn)的位置;(i,j)為除模板窗口外像素點(diǎn)的位置;σd為該位置二維高斯函數(shù)的標(biāo)準(zhǔn)差。
像素范圍域核函數(shù)公式為
(2)
式中:f(x,y)為待濾波的圖像在點(diǎn)(x,y)處的灰度值;σr為該位置二維高斯函數(shù)的標(biāo)準(zhǔn)差。
將上述2個(gè)核函數(shù)相乘得到雙邊濾波器的表達(dá)式:
(3)
HSV顏色模型由色調(diào)(Hue)、飽和度(Saturation)和明度(Value)3個(gè)參數(shù)組成。圖6為HSV色彩空間模型。與傳統(tǒng)的RGB色彩空間相比,HSV顏色模型可以表達(dá)出更接近于人的眼睛所感知的色彩,因此HSV顏色模型在數(shù)字圖像處理領(lǐng)域的應(yīng)用范圍更加廣泛。RGB色彩空間中R表示紅色、G表示綠色、B表示藍(lán)色,取三者中的最大值記為MAX=max{R、G、B},取三者中的最小值記為MIN=min{R、G、B},從而可得兩種顏色空間的轉(zhuǎn)換公式為:
(4)
(5)
V=max(R,G,B)
(6)
圖6 HSV色彩空間模型
局部二值模式(LBP)是用來表達(dá)圖像局部特征的算子,它具有灰度不變性的優(yōu)點(diǎn),在人臉識(shí)別和目標(biāo)檢測(cè)項(xiàng)目中使用的比較多[11]。它的原理為:將圖像窗口中心灰度值與其T-1鄰域內(nèi)像素灰度值進(jìn)行比較得到結(jié)果0或1,將比較結(jié)果放入相應(yīng)的鄰域位置,按逆時(shí)針方向?qū)⒈容^結(jié)果進(jìn)行二進(jìn)制編碼,然后解碼為十進(jìn)制數(shù)作為窗口中心的LBP特征值。式(7)、式(8)為編碼公式。
(7)
(8)
式中:(xc,yc)為窗口中心位置的坐標(biāo);T為除窗口中心點(diǎn)外的像素?cái)?shù)量(一般為8);it為T鄰域中第t個(gè)像素的灰度值;S(x)為符號(hào)函數(shù);ic為窗口中心點(diǎn)像素值。
由于直接提取圖像LBP特征進(jìn)行缺陷檢測(cè)在后續(xù)試驗(yàn)中檢測(cè)的效果并不理想,因此提出了基于HSV空間的LBP特征加權(quán)融合提取方法。圖7為算法的示意圖。首先為了獲取更多齒輪表面顏色和紋理特征,加強(qiáng)LBP特征的表達(dá)能力,在3×3的窗口上對(duì)H、S、V三通道的特征進(jìn)行提取,為了體現(xiàn)3種通道分量對(duì)LBP特征貢獻(xiàn)度的不同并且歸一化LBP特征,采用加權(quán)的方式對(duì)三通道特征分量進(jìn)行融合。經(jīng)過多次實(shí)驗(yàn)發(fā)現(xiàn)3個(gè)通道的分量按照0.5∶0.1∶0.4的關(guān)系相加在一起,后續(xù)缺陷檢測(cè)的效果最好。式(9)為三通道特征加權(quán)融合的規(guī)則。
LBP=0.5LBPH+0.1LBPS+0.4LBPV
(9)
圖7 基于HSV空間的LBP特征加權(quán)融合提取算法示意圖
首先對(duì)樣本進(jìn)行處理,從廠家得到的齒輪樣本圖片經(jīng)過樣本擴(kuò)充,得到表1所示各類樣本的數(shù)量。
表1 各類樣本數(shù)量 張
視覺幾何群網(wǎng)絡(luò)(VGG)是牛津大學(xué)計(jì)算機(jī)視覺實(shí)驗(yàn)室為了解決ImageNet中的1 000類圖像分類和定位問題提出的網(wǎng)絡(luò)結(jié)構(gòu)[12]。VGG16是其中具有代表性的網(wǎng)絡(luò)架構(gòu)。為了實(shí)現(xiàn)齒輪表面圖像準(zhǔn)確分類,對(duì)VGG16結(jié)構(gòu)進(jìn)行了改造,由于樣本圖片大小為600×600,因此將輸入層擴(kuò)大為600×600,由于輸出結(jié)果一共4類,因此輸出層大小減小為1×4,網(wǎng)絡(luò)中的隱藏層和池化層以及激活函數(shù)和損失函數(shù)沿用原始VGG16網(wǎng)絡(luò)參數(shù)。
訓(xùn)練集和測(cè)試集樣本的數(shù)量按照3∶1的比例劃分。訓(xùn)練初期時(shí)較大的學(xué)習(xí)率可以加速模型收斂,但是在后期訓(xùn)練中卻可能導(dǎo)致模型不能充分收斂甚至不能收斂。過小的學(xué)習(xí)率雖然有助于模型后期的充分收斂,但會(huì)導(dǎo)致整個(gè)訓(xùn)練過程收斂緩慢。本文采用學(xué)習(xí)率隨迭代次數(shù)增加而衰減的方式設(shè)置學(xué)習(xí)率,訓(xùn)練初期設(shè)置較大的學(xué)習(xí)率0.000 5,每迭代10次學(xué)習(xí)率衰減為上個(gè)學(xué)習(xí)率的1/10,共設(shè)置n次迭代次數(shù)。當(dāng)?shù)螖?shù)達(dá)到n次,則認(rèn)為本次訓(xùn)練結(jié)束。以保證誤差盡可能小的同時(shí)加快模型收斂速度。
設(shè)置不同迭代次數(shù)得到了圖像分類的準(zhǔn)確率,結(jié)果如表2所示。可以看出,隨著迭代次數(shù)的增加,模型的誤差不斷減小,但測(cè)試集上的分類錯(cuò)誤率卻先減后增,這表明在不斷增加迭代次數(shù)過程中,模型出現(xiàn)了過擬合現(xiàn)象。因?yàn)镾igmoid函數(shù)在小輸入情況下具有線性特征,但是由于迭代次數(shù)的增加,權(quán)值不斷增加,Sigmoid函數(shù)的非線性特征開始顯現(xiàn),最終訓(xùn)練后期決策面過度復(fù)雜。
表2 訓(xùn)練集與測(cè)試集數(shù)據(jù)
為了獲得最高的準(zhǔn)確率,采用序號(hào)為2的模型參數(shù)作為預(yù)訓(xùn)練模型,再對(duì)模型進(jìn)行多次訓(xùn)練。最終在迭代次數(shù)為46時(shí),得到準(zhǔn)確率最高的模型,準(zhǔn)確率為96.56%。
根據(jù)以上方法,進(jìn)行線上實(shí)驗(yàn),使用了527個(gè)樣本,其中表面臟污齒輪106個(gè),斷齒齒輪187個(gè),表面裂紋齒輪112個(gè),正常齒輪122個(gè),進(jìn)行試驗(yàn)。試驗(yàn)結(jié)果如表3所示。
由表3可得,4種檢測(cè)結(jié)果正確率最高的為正常樣本的98.36%,最低的為表面裂紋樣本的87.50%,耗時(shí)最長(zhǎng)的為表面裂紋類型的1 440 ms,平均準(zhǔn)確率和平均耗時(shí)時(shí)間分別為94.50%和1 435 ms。說明設(shè)計(jì)的系統(tǒng)在齒輪表面缺陷檢測(cè)準(zhǔn)確率和速度上具有實(shí)用意義,能夠?yàn)楣I(yè)齒輪表面缺陷檢測(cè)方案設(shè)計(jì)提供借鑒。
表3 齒輪表面缺陷檢測(cè)結(jié)果
本文以齒輪表面缺陷人工檢測(cè)效率低的問題為出發(fā)點(diǎn),設(shè)計(jì)了基于樹莓派的齒輪表面缺陷檢測(cè)系統(tǒng)。設(shè)計(jì)了缺陷檢測(cè)算法,完成了硬件設(shè)計(jì)分別對(duì)齒輪表面臟污、斷齒、表面裂紋和正常4種類型檢測(cè)結(jié)果的正確率和消耗時(shí)間進(jìn)行了分析,平均正確率和時(shí)間分別為94.50%和1 435 ms。說明設(shè)計(jì)的系統(tǒng)能夠基本滿足企業(yè)對(duì)齒輪缺陷檢測(cè)的需求,對(duì)提高企業(yè)生產(chǎn)效率、降低生產(chǎn)成本、提升產(chǎn)品質(zhì)量具有重要意義。