李寶峰
(中國航發(fā)沈陽黎明航空發(fā)動機有限責(zé)任公司,遼寧 沈陽 110041)
機器視覺在機械零件缺陷自動識別中的應(yīng)用本質(zhì)上屬于模式識別技術(shù),可根據(jù)機器視覺的各種算法,如區(qū)域分割、輪廓提取和邊緣檢測獲取機械零件和缺陷部位的特征,再與數(shù)據(jù)庫中參考圖像的相應(yīng)特征進行對比,進而判定出機械零件是否存在缺陷和何種缺陷[1]??梢姡跈C器視覺的機械零件缺陷識別在很大程度上依賴于機器視覺相關(guān)特征提取方法的準確性。隨著該方法不斷發(fā)展,基于單一特征的檢測方法暴露出檢測精度不高和魯棒性較低的問題[2],因此產(chǎn)生了基于BP 神經(jīng)網(wǎng)絡(luò)的多特征訓(xùn)練學(xué)習(xí)的分類方法。隨著基于機器視覺的機械零件缺陷分類方法不斷發(fā)展,各種分類器的手段日益豐富,常見的分類器有BP 分類器、LR 分類器、DT 分類器、RF 分類器、SVM 分類器、CNN 分類器以及KNN 分類器等[3]。對于不同缺陷表現(xiàn)出來的機器視覺特征,不同分類器會表現(xiàn)出不同性能。本文將構(gòu)建多分類器融合的機械零件缺陷識別方法。本文方法同時使用多種分類器被,將不同機器視覺方法獲得的缺陷特征納入多種分類器,對缺陷類型進行融合判斷。本文方法在機械零件缺陷的識別中具有較高的準確率和較好的魯棒性。
本文采用了基于形態(tài)學(xué)的增強方法,并進行了改進處理。一般的形態(tài)學(xué)分割方法使用單一的結(jié)構(gòu)元素,處理過程相對簡單,處理結(jié)果很難同時滿足多項指標要求。例如,使用圓形結(jié)構(gòu)元素時,背景去除量大,但是一些邊緣細節(jié)特征會被圓形模板的形態(tài)學(xué)處理消除掉;使用線形結(jié)構(gòu)元素時,原始圖像的邊緣細節(jié)特征得以清晰保留,但是背景去除量小。
為此,本文考慮改進一般形態(tài)學(xué)處理方法,同時結(jié)合多種不同結(jié)構(gòu)元素完成開閉運算等形態(tài)學(xué)處理,以取得更理想的效果。
在具體的計算機二進制數(shù)據(jù)中,圓形結(jié)構(gòu)元素和線形結(jié)構(gòu)元素的模板形式如圖1所示。
圖1 不同結(jié)構(gòu)元素的模板
圖1 中給出了2 個同為4×4 的結(jié)構(gòu)元素模板,一個是圓形的,一個是線形的,結(jié)合2 種模板進行形態(tài)學(xué)處理的執(zhí)行步驟如下。
首先,利用圓形的結(jié)構(gòu)元素對原始圖像執(zhí)行開運算處理。圓形結(jié)構(gòu)元素用S1表示,原始圖像用f(x)表示,處理結(jié)果用A表示,處理過程如公式(1)所示。
其次,使用線形的結(jié)構(gòu)元素對原始圖像執(zhí)行閉運算處理。線形結(jié)構(gòu)元素用S2表示,原始圖像用f(x)表示,處理結(jié)果用B表示,處理過程如公式(2)所示。
再次,利用原始圖像和上述2 步處理結(jié)果分別做差,得到的結(jié)果分別用A1和B1表示,處理過程如公式(3)所示。
最后,將上一步得到的2 個處理結(jié)果再做差集運算,即可得到最終的去除背景的分割結(jié)果,如公式(4)所示。
為了驗證改進形態(tài)學(xué)分割方法的有效性,本文選取齒輪和軸的零件圖像分別進行試驗,同時采用線形結(jié)構(gòu)元素和圓形結(jié)構(gòu)元素,按照改進方法的步驟進行分割處理,得到的結(jié)果如圖2所示。
圖2 改進形態(tài)學(xué)的增強結(jié)果
本文改進后的形態(tài)學(xué)處理結(jié)果如圖2所示(同時使用了線形結(jié)構(gòu)元素和圓形結(jié)構(gòu)元素)。從處理結(jié)果可以看出,當結(jié)構(gòu)元素的尺寸為10 時,背景被明顯剪除了。當結(jié)構(gòu)元素的尺寸為20 時,背景元素完全被剪除,清晰地顯示出目標區(qū)域,充分表明本文改進措施的有效性。結(jié)構(gòu)元素尺寸為20 也是后續(xù)處理中采用的參數(shù)。
根據(jù)機械零件圖像的原理和特點,本文將小波變化和Ostu 域值分割結(jié)合起來,構(gòu)建了一種全新的圖像特征提取方法。在小波變換的各級分辨率圖像上可以分別獲得高頻信息和低頻信息。其中,高頻信息包括圖像的細節(jié)和噪聲,低頻信息包括圖像的輪廓。傳統(tǒng)的Ostu 分割是在原始圖像上進行分割,如果將該過程在小波變換的低頻成分上進行,就可以避免噪聲和其他干擾性細節(jié)的影響。
設(shè)x(t)代表可積函數(shù),那么x(t)有關(guān)其Fourier 變換φ(w)的連續(xù)小波可以定義為如公式(5)的形式。
基于此,小波反變換如公式(6)所示。
式中:a表示小波變換的尺度;b表示小波變換的位移。
其中φab(t)如公式(7)所示。
與一維Ostu 法相比,二維Ostu 法增加了鄰域平均灰度,從而將一維灰度直方圖擴展為二維灰度直方圖,即正常的圖像灰度和鄰域平均灰度同時出現(xiàn)的概率。其基本操作過程如下:用f表示原始圖像,假設(shè)其灰度等級為L(0,1,…,L-1),整幅圖像的像素總數(shù)為N,鄰域平均灰度等級為L。進一步用i表示一個像素的灰度等級,用j表示像素對應(yīng)的領(lǐng)域平均灰度等級,那么可以計算其聯(lián)合概率密度,如公式(8)所示。
二維Ostu 法比一維Ostu 法的處理精度高,因此本文選擇小波變化結(jié)合二維Ostu 法進行機械零件特征提取,提取效果如圖3所示。
從圖3 可以看出,原始圖像中機械零件上出現(xiàn)了帶狀缺陷,小波結(jié)合二維Ostu 分割有效地提取了該部分特征。
按照本文提出的多分類器融合的機械零件缺陷識別方法進行試驗研究。根據(jù)缺陷識別的常見分類算法,本文將KNN 分類器、DT 分類器、SVM 分類器、NB 分類器、BP 分類器、LR 分類器、Adaboost 分類器、RF 分類器、GBDT 分類器以及XGBT 分類器作為候選分類器。參與分類的機械零件的缺陷類別包括點狀缺陷、多點缺陷、孔洞缺陷、多孔缺陷、線狀缺陷、多線缺陷和帶狀缺陷。根據(jù)機器視覺方法對這7 類缺陷進行增強處理和特征提取后,納入各分類器進行缺陷識別分類。10 種分類器對7 類缺陷的分類識別準確率見表1。
表1 各分類器對不同缺陷的識別準確率
從表1 可以看出,不同分類器對不同缺陷的識別效果有所不同。從7 類缺陷的平均識別率來看,KNN 分類器、GBDT分類器和XGBT 分類器的識別準確率最高。為了進一步提升缺陷識別的準確率和魯棒性,將10 類分類器按照3 個一組隨機組合,分別納入第2 節(jié)的框架,形成融合分類器。最后得到排名最靠前的3 組組合,見表2。
表2 融合效果最好的3 組分類器
從表2 可以看出,3 組最好的融合模型中都有XGBT分類器和KNN 分類器,與這2 類分類器的效果最好有關(guān)。XGBT+KNN+RF 分類器的融合在缺陷識別精度和召回率方面均取得了最好的結(jié)果。本文進一步給出上述3 組分類器融合模型對7 類機械零件缺陷的識別準確率對比,結(jié)果見表3。
表3 3 組融合分類器模型對7 類機械零件缺陷的識別準確率(%)
針對機械零件缺陷的自動識別和分類問題,本文構(gòu)建了一種基于機器視覺和多分類器融合的方法。在該方法中,多種不同的分類器被融合在一起,形成對機械零件缺陷的融合判別結(jié)果。每個分類器對缺陷的判別來自機器視覺獲取的圖像特征。本文采用多元素結(jié)構(gòu)的改進形態(tài)學(xué)方法進行圖像增強處理,以提升機械零件圖像的對比度。并進一步采用小波變化結(jié)合二維Ostu 分割的方法獲取機械零件圖像的特征,作為分類器的輸入。在試驗過程中,針對7 類機械零件缺陷采用10 類分類器進行缺陷識別。測試顯示,XGBT+KNN+RF、XGBT+KNN+NB、XGBT+KNN+SVM 這3 組分類器的融合識別效果最好。其中,XGBT+KNN+RF 融合分類器不僅識別準確率高,而且對7 類機械零件缺陷均具有較好的魯棒性。今后的研究工作中將進一步測試其他分類器組合對機械零件缺陷識別的實際應(yīng)用效果。同時,在確保識別準確率的基礎(chǔ)上進一步提升識別速度也是今后的研究重點。