徐建橋,吳 俊,陳向成,吳丹超,李 兵
(1.海軍工程大學(xué) 信息安全系,湖北 武漢 430033;2.武漢理工大學(xué) 自動化學(xué)院,湖北 武漢 430070;3.合肥小步智能科技有限公司,安徽 合肥 230011)
隨著中國制造2025 的推進(jìn),我國正穩(wěn)步向制造強(qiáng)國邁進(jìn)。由于生產(chǎn)和裝配過程中各種不確定的因素,軸承會產(chǎn)生各種缺陷,這些缺陷會降低軸承的抗腐蝕性、耐磨性和抗疲勞強(qiáng)度等性能,嚴(yán)重時甚至?xí)鹬卮蟮陌踩鹿蔥1-2]。在這種情況下,針對軸承的缺陷檢測顯得尤為重要。
現(xiàn)有的檢測手段可以分為人工目檢、物理檢測和機(jī)器視覺檢測等方法[3]。人工目檢是目前最主要的檢測方式,然而由于人工視覺檢測者的疲勞和非一致性,容易產(chǎn)生誤檢和漏檢,這種方式無法滿足軸承激增的數(shù)量和越來越高的品質(zhì)需求[4]。常用的物理檢測手段有電渦流探傷法、超聲波法、磁粉探傷法等,這些物理手段可以較好地檢測出軸承滾子的缺陷,然而與人工目測類似,檢測過程中也需要人為判定,同樣存在效率低、容易誤檢和漏檢等問題。
隨著人工智能技術(shù)的發(fā)展,越來越多的檢測任務(wù)可以利用機(jī)器視覺實(shí)現(xiàn)[5]。文獻(xiàn)[6]提出一種基于支持向量機(jī)(SVM)的軸承表面檢測算法,該算法將軸承中的非缺陷區(qū)域和缺陷區(qū)域分別看作是2 種不同的紋理模式,利用主成分分析法(PCA)對圖像降維,然后用SVM 進(jìn)行學(xué)習(xí)和分類,然而該文并未給出確定量化的評估指標(biāo)。文獻(xiàn)[7]也是利用SVM 進(jìn)行分類,其將缺陷分類為多類,并在論文中給出了缺陷的分類精確度。文獻(xiàn)[8]提出了一種基于差影法的軸承外圈側(cè)面缺陷檢測方法,該方法通過對軸承外圈側(cè)面圖像采集、濾波、分割、邊緣檢測實(shí)現(xiàn)側(cè)面快速定位,然后利用差影法進(jìn)行缺陷檢測,并采用8-連通域?qū)θ毕葸M(jìn)行標(biāo)記。文獻(xiàn)[9]提出一種機(jī)器學(xué)習(xí)的軸承檢測方法,利用SVM 分類器對缺陷特征進(jìn)行檢測,取得了較好的效果,利用圖像增強(qiáng)與紋理分割的方法,對變形缺陷進(jìn)行檢測。文獻(xiàn)[10]設(shè)計(jì)了一套照明和數(shù)據(jù)采集系統(tǒng),對獲取的圖像進(jìn)行了濾波、降噪等預(yù)處理,然后進(jìn)行了缺陷特征提取,并設(shè)計(jì)了BP 神經(jīng)網(wǎng)絡(luò)對缺陷進(jìn)行分類。文獻(xiàn)[11]將圖像融合技術(shù)應(yīng)用在檢測中,利用局部閾值分割方法進(jìn)行二值化,解決圖像光照不均勻甚至局部有影響的情況,運(yùn)用小波處理技術(shù)將分解后的圖像進(jìn)行融合處理。文獻(xiàn)[12]針對單閾值分割算法只能檢測高于閾值的缺陷而忽略掉低于閾值的缺陷問題,提出一種基于最大類間方差的多閾值分割算法,可以滿足在線檢測的需求。
雖然軸承缺陷檢測取得了一定的進(jìn)展,然而,依舊存在很多問題,主要原因是上述方法都是基于簡單的圖像特征,直接利用淺層網(wǎng)絡(luò),如BP 神經(jīng)網(wǎng)絡(luò)或者SVM 等神經(jīng)網(wǎng)絡(luò),會漏掉很多的缺陷。深度神經(jīng)網(wǎng)絡(luò)在缺陷檢測和識別中已經(jīng)取得了很好的效果[13-15],將深度神經(jīng)網(wǎng)絡(luò)應(yīng)用在軸承缺陷檢測上具有一定的可行性。然而,由于軸承樣本量較少,而深度網(wǎng)絡(luò)對數(shù)據(jù)的需求量很大,如何解決這個問題將是本文要解決的關(guān)鍵問題。
軸承缺陷采集系統(tǒng)由相機(jī)、照明系統(tǒng)、計(jì)算機(jī)組成,可以采集內(nèi)端面、外徑、內(nèi)徑、下端面的圖像。采集裝置示意圖如圖1 所示,其中相機(jī)型號為:Basler 工業(yè)相機(jī) acA1300-60gm,其分辨率為1 282像素× 1 026 像素;鏡頭焦距為PCHI012,通過調(diào)整焦距獲取不同的視場大小,從而匹配內(nèi)徑、外徑、上端面和下端面的尺寸,獲取不同部位的圖像;光源用環(huán)形LED 進(jìn)行均勻照明(照明光源型號為HZN DRL-70-60-W)。本裝置采集到的圖像如圖2所示。
圖1 測試裝置原理圖Fig.1 Schematic diagram of measurement device
為了確保檢測的準(zhǔn)確性,需要對樣本進(jìn)行一系列的預(yù)處理。內(nèi)端面、內(nèi)徑、外徑和下端面的缺陷雖然不一樣,但是其分布類似,都是沿著軸承周向分布,因而,本文選擇外觀更加復(fù)雜、干擾因素更多的內(nèi)徑樣本進(jìn)行處理。
圖2 軸承不同部分圖像Fig.2 Bearing images of different parts
圖3 不同部位軸承內(nèi)徑圖像Fig.3 Image of bearing inner diameter of different parts
由于軸承是放在襯墊上拍攝的,除了拍攝到軸承外,還會拍攝到其他部位的圖像。如圖3 中外邊緣外部,內(nèi)邊緣內(nèi)部的無效部分。為解決這個問題,首先尋找外邊緣和內(nèi)邊緣的輪廓,并對輪廓進(jìn)行橢圓擬合;然后基于擬合后橢圓的中心位置,將軸承移到圖像正中央,基于橢圓的參數(shù),使用透視變換,將橢圓變換成圓;最后,將變換后外邊緣外的部分和內(nèi)邊緣內(nèi)部的部分全部去掉。
算法流程如圖4 所示,詳細(xì)的算法如下:
1) 形態(tài)學(xué)去噪:對原圖像進(jìn)行腐蝕膨脹操作,模板為5×5 的矩形形態(tài)學(xué)結(jié)構(gòu)元素;
2) 將原圖進(jìn)行二值化操作,以內(nèi)徑區(qū)域部分的最大灰度值和最小灰度值作為閾值,將圖像中大于最大閾值和小于最小閾值的都置為255,內(nèi)徑區(qū)域變?yōu)?;
圖4 軸承內(nèi)徑樣本規(guī)范化算法Fig.4 Standardized algorithm for bearing inner diameter samples
3) 搜索內(nèi)邊緣輪廓,然后用橢圓擬合內(nèi)邊緣;
4) 用步驟3 中擬合的橢圓,將像中的多余部分剔除;
5) 搜索內(nèi)邊緣最上、最下、最左和最右4個點(diǎn);
6) 將上述橢圓映射成圓,以圖像中心位置為圓心、半徑為290 的圓的上下左右4 個點(diǎn)為目標(biāo)點(diǎn),建立投影變換映射矩陣,然后利用此變換矩陣將步驟4 中的圖像進(jìn)行變換;
7) 搜索外邊緣輪廓,擬合成橢圓,將橢圓外部切掉;
8) 搜索內(nèi)徑的區(qū)域,將內(nèi)徑區(qū)域外的部分裁剪掉。
經(jīng)過樣本規(guī)范化以后,軸承內(nèi)徑部分被轉(zhuǎn)換為標(biāo)準(zhǔn)的圓環(huán),滿足基于圖像中心堆成的特性。由于缺陷部分一般非常小,只占圓環(huán)的小部分,那么可以利用對稱性將樣本拆成大量的扇形圓環(huán),如圖5 所示。將內(nèi)徑樣本沿圓心均分為多份(本文采用12 份,一方面可以豐富樣本數(shù)量;另一方面,也不會將缺陷分割得過于零散)。分隔后的樣本編號分別為1~12,然后將樣本2~12 依此旋轉(zhuǎn)一定角度,到樣本編號1 的位置。而后將這12 份樣本進(jìn)行標(biāo)注,后續(xù)將會基于分割后的樣本進(jìn)行分類器的訓(xùn)練。
圖5 基于對稱性的樣本拆分算法Fig.5 Sample splitting algorithm based on symmetry
深度神經(jīng)網(wǎng)絡(luò)在目標(biāo)識別和檢測中起到了重要的作用。隨著網(wǎng)絡(luò)層數(shù)的增加,可以提取到不同層的特征更加豐富,而且越深的網(wǎng)絡(luò)提取的特征越抽象,越具有語義信息。然而,簡單的增加網(wǎng)絡(luò)的深度會導(dǎo)致梯度彌散或梯度爆炸。雖然可以通過正則化初始化和中間的正則化層,從而可以訓(xùn)練幾十層的網(wǎng)絡(luò)。但是,上述方法會出現(xiàn)另一個問題,就是網(wǎng)絡(luò)退化的問題,也就是隨著網(wǎng)絡(luò)層數(shù)的增加,訓(xùn)練集上的準(zhǔn)確率卻飽和甚至下降了。
ResNet 網(wǎng)絡(luò)就是為了解決上述問題,應(yīng)運(yùn)而生的。深度殘差網(wǎng)絡(luò)是一種殘差網(wǎng)絡(luò),其單元是一個子網(wǎng)絡(luò),這個子網(wǎng)絡(luò)經(jīng)過堆疊可以構(gòu)成一個很深的網(wǎng)絡(luò)。本文利用18 層的ResNet 網(wǎng)絡(luò),即ResNet18,這種網(wǎng)絡(luò)主要由2 個3×3 的卷積網(wǎng)絡(luò)串接在一起作為一個殘差模塊,如圖6 所示。
圖6 ResNet18 的兩層殘差學(xué)習(xí)模塊Fig.6 Two-layer residual learning module of ResNet18
圖7 是本文提出的基于特征增強(qiáng)殘差網(wǎng)絡(luò)的軸承缺陷檢測方法原理框圖。在訓(xùn)練端,由于缺陷樣本數(shù)量很少,很難獲取足夠多的樣本來進(jìn)行模型訓(xùn)練。本文利用軸承的軸對稱特性,將一個軸承的樣本切成12 等份(每30°切分成一份樣本);然后進(jìn)行樣本標(biāo)注,這樣就可以將樣本的規(guī)模提升起來;隨后將樣本分為訓(xùn)練集和測試集,將標(biāo)注后的梯度樣本送入ResNet18 網(wǎng)絡(luò)中進(jìn)行模型訓(xùn)練;最后,將上述訓(xùn)練好的模型拿到黑箱集上進(jìn)行精度評估。
圖7 基于樣本對稱性拆分的軸承缺陷檢測方法Fig.7 Bearing defects detection method based on sample symmetry splitting
本文的圖像處理算法是在服務(wù)器進(jìn)行的訓(xùn)練和測試。處理器是Intel(R)Xeon(R)CPU E5-2678v3@2.5 GHz,顯卡為2 塊英偉達(dá)公司的GeForce GTX 1080 Ti,深度學(xué)習(xí)架構(gòu)采用的是TensorFlow。
針對不同的工位訓(xùn)練制作不同的數(shù)據(jù)集,通過不同工位的數(shù)據(jù)集訓(xùn)練不同的缺陷分類器。本文選擇內(nèi)徑樣本為算法展示的示例。軸承內(nèi)徑樣本被分為訓(xùn)練集和黑箱集,為了保證黑箱集的可靠性,特選擇時間差異很大的2 批樣本。內(nèi)徑缺陷檢測采用的訓(xùn)練集中正樣本數(shù)量為930 份,負(fù)樣本數(shù)量為894 份;黑箱原始數(shù)據(jù)正樣本50 份,負(fù)樣本50 份。實(shí)驗(yàn)2~實(shí)驗(yàn)4 的訓(xùn)練集基于上述原始訓(xùn)練集重新標(biāo)注,訓(xùn)練樣本總量是原始樣本量的12 倍;黑箱集合的樣本數(shù)目也是原始黑箱集樣本數(shù)目的12 倍。設(shè)計(jì)如下實(shí)驗(yàn)1~4 中,其樣本數(shù)據(jù)如圖8 所示。
實(shí)驗(yàn)1:基于原始數(shù)據(jù),利用ResNet 網(wǎng)絡(luò)訓(xùn)練型,黑箱上評估結(jié)果。黑箱集中正樣本50 份,負(fù)樣本50 份。
實(shí)驗(yàn)2:將原始數(shù)據(jù)直接拆分成12 份,ResNet網(wǎng)絡(luò)訓(xùn)練分類模型,黑箱上評估結(jié)果。黑箱集基于原始黑箱集合,采用原始數(shù)據(jù)直接拆分成12 份進(jìn)行處理,產(chǎn)生正樣本1 014 張,負(fù)樣本186 張。
實(shí)驗(yàn)3:將原始數(shù)據(jù)進(jìn)行4 點(diǎn)透視校正后,拆分成12 份,然后利用ResNet 網(wǎng)絡(luò)訓(xùn)練分類模型,黑箱上出結(jié)果。黑箱集基于原始黑箱集合,將原始數(shù)據(jù)進(jìn)行4 點(diǎn)透視校正后,拆分成12 份,產(chǎn)生正樣本1 014 張,負(fù)樣本186 張。
圖8 實(shí)驗(yàn)1~4 中實(shí)驗(yàn)樣本Fig.8 Experimental samples in experiment 1~4
實(shí)驗(yàn)4:將原始數(shù)據(jù)進(jìn)行規(guī)范化樣本拆分算法后,利用ResNet 網(wǎng)絡(luò)訓(xùn)練分類模型,黑箱上評估結(jié)果。黑箱集基于原始黑箱集合,采用將原始數(shù)據(jù)進(jìn)行4 點(diǎn)透視校正后,拆分成12 份,并利用mask 剔除多余的部分,產(chǎn)生正樣本1 014 張,負(fù)樣本186 張。
本文采用訓(xùn)練模型在黑箱集上的正確率ACC(accurate rate)、準(zhǔn)確率P和召回率R來評估模型的優(yōu)劣。
正確率、準(zhǔn)確率和召回率的定義為:
另一個更全面的評估指標(biāo)是:接受者操作特征曲線(reciver operating characteristic curve,ROC)。ROC 曲線和AUC 是一個從整體上評價二分類模型優(yōu)劣的指標(biāo),其中AUC 是ROC 曲線與其橫軸之間的面積。ROC 曲線一般在y=x上方,AUC 值越大說明模型越好。
對實(shí)驗(yàn)1~實(shí)驗(yàn)4 的模型,利用ResNet 網(wǎng)絡(luò)訓(xùn)練模型,并在黑箱集上進(jìn)行測試,繪制ROC 曲線,如圖9 所示。統(tǒng)計(jì)各項(xiàng)指標(biāo),如表1 所示。
圖9 基于ResNet 的不同模型的ROC 曲線Fig.9 ROC curves of different models based on ResNet
表 1 基于ResNet 網(wǎng)絡(luò)的模型黑箱測試結(jié)果Table 1 Model black box test results based on ResNet network
從圖9 可以看出,實(shí)驗(yàn)1~實(shí)驗(yàn)4 的AUC 逐漸提高,模型越來越好。從表1 可知,實(shí)驗(yàn)2、3 和4 的ACC 指標(biāo)明顯優(yōu)于實(shí)驗(yàn)1,由此可以得到結(jié)論將樣本進(jìn)行拆分后的模型預(yù)測精度明顯有所提升;對比實(shí)驗(yàn)2、3 和4,從正樣本的預(yù)測率而言,實(shí)驗(yàn)4 的精度最高,召回率最低,說明經(jīng)過透視變換可以顯著提升模型的性能,經(jīng)過mask 處理可以專注于感興趣區(qū)域,可以進(jìn)一步提升模型的分類性能。實(shí)驗(yàn)4 的ACC 雖然略低于實(shí)驗(yàn)3,但是實(shí)驗(yàn)4 模型的AUC 指標(biāo)最高,更能反應(yīng)模型的優(yōu)良特性。換個角度來看,本項(xiàng)目更關(guān)注的是缺陷樣本漏檢所造成的危害,而對于正樣本的識別率,可以允許有一定程度的誤判,通過實(shí)驗(yàn)3 和實(shí)驗(yàn)4 模型的FP 和TN,也可以看出,實(shí)驗(yàn)4 的模型對于缺陷的識別率更高。
本文介紹了一種針對軸承缺陷檢測方法和裝置,選擇內(nèi)徑作為檢測對象,開發(fā)對應(yīng)的檢測算法,其他的缺陷可以采用完全相同的方法進(jìn)行檢測。本文提出的基于規(guī)范化樣本拆分的軸承缺陷檢測方法在Resnet18 網(wǎng)絡(luò)上獲取了較好的檢測效果。另外,這種規(guī)范化樣本拆分方法也可以應(yīng)用于其他網(wǎng)絡(luò),如GoogLeNet 網(wǎng)絡(luò)等深度神經(jīng)網(wǎng)絡(luò),其對于軸承其他缺陷樣本的處理,以及神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法,都與本文類似??梢灶A(yù)期,隨著視覺檢測系統(tǒng)在軸承自動化生產(chǎn)線上的廣泛應(yīng)用,該方法可以提高生產(chǎn)效率,為軸承生產(chǎn)品質(zhì)的提升做出一定的貢獻(xiàn),該方法具有一定的應(yīng)用價值。