陳宗仁,謝文達,余 君,胡建華,蔣小波
(廣東科學技術職業(yè)學院 計算機工程技術學院(人工智能學院),珠海 519090)
工業(yè)金屬機械零件表面質(zhì)量檢驗一直以來都是工件生產(chǎn)過程中必不可少的一個環(huán)節(jié)[1]。在實際生產(chǎn)各種類型工件的過程中,主要是通過人工篩選的方式對工件表面的缺陷進行檢測,但這種方式存在檢測結(jié)果不準確以及檢測效率偏低等問題。因此,為了保證工件產(chǎn)品表面質(zhì)量,需要全面提升檢測結(jié)果的準確性和檢測速率。
近幾年,隨著計算機技術的迅猛發(fā)展,深度學習在各個研究領域均取得了比較廣泛的應用,其中最主要的就是工業(yè)檢測方面[2]。相關機械制造企業(yè)可以利用智能檢測技術代替人工檢測技術,在降低運營成本的過程中全面提升金屬機械零件的質(zhì)量。
朱勇建[3]等人通過光度立體原理對金屬表面進行三維重構(gòu),對重構(gòu)結(jié)果進行曲面擬合操作,同時利用級數(shù)展開法將其轉(zhuǎn)換為點云數(shù)據(jù),從而實現(xiàn)金屬表面缺陷檢測。韓寧[4]等人對渦流傳感探頭進行有限元建模以及參數(shù)分析,根據(jù)金屬材料的耦合作用,設計了對應的測試系統(tǒng),利用測試中的探頭對金屬的表面缺陷進行檢測。然而,由于上述方法未對零件圖像進行去噪處理,導致其檢測結(jié)果理想度較低、檢測耗時增加。
針對上述問題,本研究提出了一種基于深度學習的金屬機械零件表面缺陷檢測方法
在分析中值濾波器的相關概念的過程中,需要將信號設定為常數(shù)或者理想信號。由于在圖像采集的過程中,受環(huán)境影響會使得圖像中存在大量的噪聲。為了確保后續(xù)檢測結(jié)果的準確性,優(yōu)先需要對圖像進行去噪處理,確保圖像中有利用價值的信息不會被破壞。
根據(jù)先驗知識可知,針對自然圖像而言,由于不同像素點之間的關聯(lián)性比較強,因此除了孤立點外,隨機一點和鄰近像素點兩者的灰度值十分近似。在一幅完整的金屬機械零件表面圖像中,如果隨機一個像素點的取值高于或者低于鄰域像素點取值,則說明該像素點被噪聲污染;反之,如果兩者的取值十分近似,則說明該像素點為有利用價值的信號點。
綜合上述分析,設定信號S和噪聲N的判別依據(jù)如式(1)所示:
式中,xij代表原始圖像;max(W[xij])代表窗口內(nèi)W[xij]的最小取值;max(W[xij])代表窗口內(nèi)W[xij]的最大取值。
假設[yij]代表輸出圖像,則中值算法可以表示為式(2)的形式:
自適應中值濾波大致可以劃分為如下三個步驟:
1)對金屬機械零件圖像進行噪聲檢測;
2)通過各個區(qū)域受到噪聲污染的情況確定濾波窗口的具體規(guī)格。
3)對檢測出的噪聲依次進行濾波處理。
自適應中值濾波算法是由多個不同的部分組成,根據(jù)噪聲的特征,可以優(yōu)先檢測圖像中的脈沖噪聲,計算目標圖像灰度值,確保信息的完整性,最后有效刪除圖像中的噪聲[5]。
對以點xij為中心的噪聲窗口按照點進行排序計算,獲取式(3)形式的向量Aij:
當排序后的點xij位于向量Aij的兩端時,說明點xij附近會存在一個噪聲點。在此過程中,會經(jīng)常存在一個值m,它能夠包含噪聲圖像中的全部噪聲點。
對于參數(shù)m而言,需要結(jié)合實際需求進行設定。為了確保檢測到的全部噪聲點,m要使區(qū)間[0,m]中包含全部噪聲點為最小整數(shù)。當實際采用參數(shù)的過程中,m的選取和噪聲存在密切關聯(lián)。
假設圖像滿足設定的約束條件,則說明該點為一個噪聲點,需要將標志圖像矩陣標記為1;反之,則說明該點為信號點,需要將矩陣標記為0。經(jīng)過上述操作獲取噪聲分布的二進制圖像fij,如式(4)所示:
在使用噪聲檢測條件檢測出圖像中的噪聲以及信號點后,需要對噪聲點進行濾除。假設一個樣本為脈沖噪聲,需要通過觀測窗口內(nèi)其他點計算出來的值進行替換。由于在濾波窗口內(nèi)可能會含有一個脈沖,需要通過非線性思想來重構(gòu)噪聲點灰度值。
在濾波的過程中,需要優(yōu)先設定濾波窗口為3×3,在噪聲標志矩陣中,主要分為以下兩種情況進行處理:
1)假設鄰域存在信號點,將xij作為中心濾波窗WD范圍內(nèi),對中值進行計算。以式(5)對中心點的灰度值進行計算:
式中,n代表標記為0的點的總數(shù);f(i,j)代表標記為0的點的灰度值;fmid1(i,j)和fmid2(i,j)代表排名位于中間的點的灰度值。
2)假設噪聲周圍不存在任何圖像點,不需要對圖像點進行任何處理,同時直接將其賦予給輸出矩陣[yij]對應的位置yij。
噪聲濾除的過程能夠描述為:
首先以3×3的窗口長度進行濾波處理,具體的計算式如下:
式中,zij代表中值濾波。
在上述分析的基礎上,采用中值濾波對金屬機械零件圖像進行去噪處理,詳細的操作步驟如下所示:
1)讀入含有噪聲的圖像;
2)通過約束條件確定標識矩陣;
3)設定矩陣窗口規(guī)格;
4)對金屬機械零件圖像中的任意一點像素點進行觀察和分析;
5)對原始圖像進行處理;
6)修改標志;
7)判定標識矩陣中的元素取值是否為零;
8)輸出經(jīng)過去噪處理的圖像。
在金屬機械零件表面缺陷檢測過程中,需要引入級聯(lián)分類器,對全部連接層中的輸出特征進行分類處理,使其能夠獲取更加準確的分類結(jié)果。為了全面提取全連接層的特征,采用卷積神經(jīng)網(wǎng)絡的梯度直方圖和局部二值模式提取輸出特征,同時對多個不同級聯(lián)分類器依次進行訓練,將得到的分類結(jié)果進行決策融合,根據(jù)決策融合結(jié)果實現(xiàn)零件表面缺陷檢測。
方向梯度直方圖在細微變形的特征下具有良好的不變特性,但是方向梯度直方圖描述局部特征的能力存在缺陷,同時對噪聲十分敏感。局部二值模式具有較好的局部表達能力,所以方向梯度直方圖和局部二值模式具有比較好的互補性。
當通過卷積神經(jīng)網(wǎng)絡提取原始金屬機械零件圖像的特征后,將提取到的特征進行統(tǒng)計,同時將其放入到全連接層中。全面利用HOG和LBP的互補特征,進一步提取HOG的輸出特征。采用以上方式提取到的特征值具有比較強的魯棒特性。
使用梯度直方圖提取特征的詳細操作步驟如下:
將圖像灰度由RGB分量轉(zhuǎn)換為灰度圖像,具體的計算式為:
式中,R、G和B分別代表不同顏色的通道。
由于金屬機械零件圖像的照明是十分不均勻的,需要借助瑪咖處理來提升或者降低圖像整體亮度,具體計算式如下:
式中,I(x,y)代表金屬機械零件圖像信息;CGamma代表校正值。
通過式(9)獲取金屬機械零件圖像的水平和垂直方向的梯度:
式中,gx和gy分別代表x和y方向的梯度值。
計算梯度大小和梯度方向,具體的計算式為:
式中,Δg(x,y)代表金屬機械零件圖像的梯度量級;θ代表圖像的漸變方向。
將各個方向的梯度直方圖按照梯度角度劃分到對應的范圍內(nèi),同時將單元中的各個像素以投票方式劃分到梯度直方圖中。
將單元合并為一個大塊單元,在塊內(nèi)對梯度直方圖進行標準化處理,同時將特征描述符組合成一個全新的塊。
當金屬機械加工圖像處于不同的光照環(huán)境下時,圖像的亮度也會發(fā)生不同的變化。為了獲取更加清晰的圖像,需要對圖像進行二值化處理,具體如式(11)所示。
式中,LBP(xc,yc)代表金屬機械圖像的二值化處理結(jié)果;(xc,yc)代表圖像中心像素的坐標;p代表鄰域內(nèi)的第p個像素;ip和ic代表金屬機械零件圖像中隨機一點的中心像素灰度值;S(x)代表符號函數(shù)。
HOG-LBP特征是卷積神經(jīng)網(wǎng)絡的全連接層特征的進一步優(yōu)化。輸出經(jīng)過優(yōu)化處理后的特征,以此為依據(jù)構(gòu)建不同的級聯(lián)分類器。第一個級聯(lián)分類對卷積神經(jīng)網(wǎng)絡第三層的輸出特征進行分類;第二級聯(lián)分類器對HOG-LBP特征進行分類,將以上兩個分類器獲取的結(jié)果進行擬合處理,經(jīng)過計算獲取目標圖像的后驗概率。
通過各個分類器的分類準確率確定決策權重,同時借助多個取值不同的決策權重對分類器進行決策級融合,根據(jù)融合設定新的分類規(guī)則,最終實現(xiàn)金屬機械零件表面缺陷檢測,具體的操作過程如圖1所示。
圖1 基于深度學習的金屬機械零件表面缺陷檢測過程
不同分類器的決策權重是通過對應分類的高精度分類結(jié)果形成歸一化方法,獲取的決策權重主要被應用于決策級融合。其中,決策權重wr的具體計算公式為:
式中,Ar代表第r個分類器的權重取值;n代表分類器的總數(shù)。
在上述分析的基礎上,通過深度學習實現(xiàn)金屬機械零件表面缺陷檢測。
為了驗證基于深度學習的金屬機械零件表面缺陷檢測方法的有效性和可行性,設計如下實驗。為形成實驗對比,將文獻[3]中的基于光度立體和級數(shù)展開法的表面缺陷檢測方法、文獻[4]中的基于渦流傳感的表面缺陷檢測方法作為對比,與本文方法共同完成性能驗證。
實驗選取2種不同類型的產(chǎn)品進行表面缺陷檢測,具體實驗結(jié)果如圖2所示。
圖2 不同方法的金屬機械零件表面缺陷檢測結(jié)果對比
分析圖2中的實驗數(shù)據(jù)可知,本文方法能夠準確檢測金屬機械零件表面的缺陷,而2種傳統(tǒng)方法只能夠檢測到局部缺陷。由于本文方法引入中值濾波方法對采集到的金屬機械零件圖像中的噪聲進行刪除,使其能夠獲取更加理想的檢測效果。
為了對檢測結(jié)果進行有效性驗證以及量化分析,需要引入基于像素統(tǒng)計的誤檢率ME,具體計算式如下:
式中,B0和BT代表原始目標圖像的區(qū)域像素和背景像素;F0和FT代表經(jīng)過處理后的目標區(qū)域和背景區(qū)域,取值越低,說明檢測效果越好。
對圖2中的檢測結(jié)果進行數(shù)據(jù)分析,具體實驗結(jié)果如表1所示。
表1 不同方法的誤檢率測試結(jié)果對比
由表1能夠看出,文獻[3]方法和文獻[4]方法的F0和FT取值均高于本文方法,說明兩種方法的檢測性能還有進一步提升的空間,而本文方法的誤檢率明顯更低一些,說明本文方法能夠?qū)饘贆C械零件表面缺陷實施精準、全面地檢測。
在上述實驗分析的基礎上,利用圖3分析三種不同檢測方法的耗時情況。
由圖3可知,本文方法的檢測效率明顯優(yōu)于另外兩種方法,說明本文方法能夠以更快的速度完成缺陷檢測,這一結(jié)果進一步驗證了本文方法的優(yōu)越性。
圖3 不同方法的耗時結(jié)果對比分析
針對傳統(tǒng)表面缺陷檢測方法存在的一系列問題,本研究借助深度學習提出一種全新的缺陷檢測方法,以期提高金屬機械零件表面質(zhì)量。經(jīng)實驗測試證明,本文方法能夠獲取精準的檢測結(jié)果,同時還能夠有效降低檢測耗時。
本文方法雖然對金屬機械零件表面缺陷檢測方面的內(nèi)容進行了大量的研究和探索,但是仍然存在不足,后續(xù)將針對以下幾方面的內(nèi)容進行研究:
1)當檢測到更加細微的缺陷時,需要不斷對網(wǎng)絡結(jié)構(gòu)進行改進,確保檢測精度得到大幅度提升。
2)進一步擴大缺陷檢測范圍,同時加入更加廣泛的技術,全面提升金屬機械零件的質(zhì)量。