本發明涉及泡沫鎳材料領域,具體涉及一種基于概率極限學習機集成的泡沫鎳表面缺陷分類方法。
背景技術:
泡沫鎳是通過對鎳金屬進行一系列物理化學加工后得到的多孔泡沫金屬材料,它作為車用電池的基材,對電池性能的影響極大。在泡沫鎳制備過程中,由于原料、工藝等方面因素,容易導致泡沫鎳表面出現壓痕、折痕、鎳皮、裂紋、劃線、漏鍍、擦傷等不同類型的缺陷,而這些缺陷嚴重影響著泡沫鎳的成品性能和質量。
目前,泡沫鎳表面缺陷的檢測與識別主要采用人工檢測手段,即操作人員通過肉眼觀察傳送帶上的泡沫鎳,憑經驗對泡沫鎳的缺陷進行人工判決,從而進行相應的手動處理。這種方式存在勞動強度大、效率低,主觀性強和檢錯率高。而這是因為這種質量檢測分析的滯后,難以有效在線優化泡沫鎳的生產工藝。
常見的缺陷分類識別方法有回歸分析法、人工神經網絡法、支持向量機以及組合等方法。如王典洪等人提出基于監督雙限制連接方法的帶鋼表面缺陷圖像降維方法,實驗說明該方法適合含水,油漬等干擾較多的帶鋼表面缺陷的分類。Zhang等人對金屬表面缺陷首先采用小波去噪,閾值分割,然后利用優化支持向量機(SVM)進行缺陷的分類,實驗說明能有效識別七種類型的缺陷。張學武等人借鑒生物視覺仿生機理構建了對銅帶表面缺陷檢測模型,在多缺陷分類實驗中取得較好的效果;徐科等人基于光度立體學的原理,采用明暗場的照明方式實現了金屬板帶表面微小缺陷在線檢測。上述方法為泡沫鎳過程的缺陷分類識別提供了借鑒,但由于泡沫鎳表現出更為復雜的紋理狀,缺陷與背景之間對比度低,不同缺陷形態特征相似性大,采用上述模型有一定的局限性。如回歸分析法的識別率偏低,不能適用于具有復雜紋理的泡沫鎳缺陷分類;神經網絡模型在模式識別和分類中獲得廣泛應用,但其性能受參數影響較大,在算法執行過程中輸入權值,隱含層節點閾值等都會影響最終的輸出,另外對相似缺陷難以有效區分。
針對神經網絡模型存在的諸多問題,新加坡南洋理工大學黃廣斌教授提出一種單隱層前饋神經網絡(single-hidden layer feed forward neural network, SLFN)學習算法-極限學習機(extreme learning machine, ELM)。該方法隨機設定隱含層函數參數,經過一步計算可以直接得到輸出權值,省去了傳統的神經網絡算法中迭代的步驟,因此學習速率較BP神經網絡和支持向量機等機器學習算法大大提高。Huang等人提出通過一種標準優化方法,利用ELM解決分類問題,隨后又證明了可以直接通過ELM解決任意多分類問題,取得了較好的實驗效果。但是,一方面在實際應用中,受目標識別類別多,訓練樣本少以及單一特征描述不夠充分等特點,使得該分類方法存在識別準確率不理想;另一方面由于初始權值隨機賦值,ELM分類在臨界邊界區域操作工況識別結果不穩定。
技術實現要素:
針對上述現有技術存在的不足,本發明的目的是提供一種基于概率極限學習機集成的泡沫鎳表面缺陷分類方法。該方法在分析泡沫鎳生產工藝和表面缺陷類型的基礎上,利用復合差分進化算法優化極限學習機的輸入權值和隱層閾值,考慮每一個分類器輸出值對最終結果的影響,提出概率極限學習機集成方法,為泡沫鎳生產過程的自動檢測和優化控制奠定基礎。
為實現上述目的,本發明采用的技術方案是:一種基于概率極限學習機集成的泡沫鎳表面缺陷分類方法,其特征在于,包括如下步驟:
步驟1:獲取各種泡沫鎳表面缺陷圖像,包括污染、折痕、裂紋、漏鍍、刮傷這五種常見缺陷圖像;
步驟2:分別提取泡沫鎳圖像的紋理特征,包括能量、熵、對比度和逆差矩,作為極限學習機多分類器的輸入樣本x;
步驟3:構建概率極限學習機集成策略;
步驟4:以樣本x為輸入,采用概率極限學習機集成策略構建泡沫鎳缺陷分類模型,實時對多泡沫鎳缺陷進行分類。
上述步驟2具體操作為:
(1)計算泡沫鎳圖像的灰度共生矩陣,
(1)
式中L是圖像的灰度級數,本發明中L取值256,為兩像素順時針與x軸的夾角,其取值通常為0o、45o、90o和135o。通常,表示2個像素之間的距離為1;
(2)利用灰度共生矩陣計算能量、熵、對比度和逆差矩這些紋理特征,其中能量E為:
(2)
能量是灰度共生矩陣各元素的平方和,反映了圖像灰度分布均勻程度和紋理粗細度。能量大時,紋理粗;反之能量小時紋理細;
熵S為:
(3)
圖像所包含的信息量是用熵值來進行度量的,熵值可以直接對圖像中紋理的非均勻度或紊亂度進行反映,熵值越大則表示紋理越復雜;
對比度(慣性矩)I為:
(4)
對比度可理解為圖像的清晰度,對比度大時,紋理的溝紋深,效果清晰;反之對比度小則溝紋淺,效果模糊;
逆差矩D為:
(5)
逆差矩D是數字圖像局部均勻性的直接度量,圖像局部紋理越均勻,則其對應的逆差矩值越大,反之亦然。
上述步驟3具體為:
(1)極限學習機的概率形式為:
(6),
其中x為輸入樣本,M為缺陷類別數,f(x)為決策方程,上式(6)歸一化得到輸入樣本x屬于類別m的概率,即
(7);
(2)對于輸入樣本x,當采用J組極限學習機分類器進行M種缺陷判決時,計算其屬于某類缺陷m的概率輸出值,并計算每一組分類器的概率輸出最大值,具體操作是:對于樣本x,計算第n組極限學習機分類器判決樣本x屬于第m類缺陷的概率輸出值:
(8);
然后根據這些結果判斷第n組極限學習機分類器所有缺陷概率輸出的最大值:
(9);
(3)計算每一組分類器概率輸出權值:
(10),
可以知道若pn越大,則該組分類器集成的權值也越大;
(4)獲得每一組概率輸出權值后,將每組分類器中每種缺陷的概率輸出進行加權集成,加權集成后結果最大的缺陷類別作為結果輸出,算法為:
(11)。
上述步驟4具體為:
(1)以提取的紋理特征能量、對比度、逆差矩和熵為模型輸入,利用4個ELM分類器分別進行樣本的訓練和測試,利用公式(6)計算獲得5種缺陷類別的概率P1, P2, P3, P4, P5;分類器數目等于樣本類別數(4個紋理特征),每個特征對應一個分類器,即文中J=4。
(2)采用公式(10)-(11)進行概率P1, P2, P3, P4, P5的集成,獲得集成后的概率輸出值,較大者為當前判斷類型。
與現有技術相比,本發明的有益效果:本發明在分析泡沫鎳生產工藝和表面缺陷類型的基礎上,利用復合差分進化算法優化極限學習機的輸入權值和隱層閾值,考慮每組分類器對不同輸入樣本的分類性能,提出概率極限學習機集成策略,避免多個概率輸出值接近時所造成的誤判,有效降低各類缺陷樣本相似造成的誤判。工業數據的仿真說明本方法具有較好的分類性能,使缺陷的識別率達到85%以上,滿足現場企業需求,為泡沫鎳生產過程的自動檢測和優化控制奠定基礎。
附圖說明
圖1為泡沫鎳表面缺陷的典型樣本圖
圖2為極限學習機的結構圖
圖3為泡沫鎳缺陷分類模型圖。
具體實施方式
現結合具體實例,對本發明作進一步的闡述。
本發明基于的極限學習機是一種新型單隱層前饋神經網絡(SLFN)學習算法,其基本結構如圖2所示,模型由輸入節點層、隱含節點層和輸出節點層組成。設該極限學習機的隱含層節點數目為K,則其輸入輸出關系可表示為:
(12);
其中是隱含層輸出權重向量,為輸入層神經元與第i個隱含層神經元的連接權值,為第i個神經元的閾值,為隱含層函數。
根據單隱層前饋神經網絡理論,單隱含層前饋神經網絡參數的隨機設定不會影響模型的收斂性,即對于參數(,)隨機設定的無限可微的隱含層函數,存在一組輸出權值,使得單隱層前饋神經網絡輸出能夠無限逼近樣本的期望值,即
(13);
根據Bartlett理論,對于訓練誤差較小的前饋神經網絡,其輸出權值越小,則泛化性能越好。因此,ELM建模問題轉化為尋找輸出權值使得模型輸出值盡可能接近實際值且輸出權值的范數盡可能小,即
(14);
其中G為隱層函數矩陣,即; T為訓練樣本的實際值矩陣。式(14)可以轉化為約束優化問題
其中為與第m個輸出節點對應第j個訓練樣本的訓練誤差向量,防止過擬合現象,C為相應的懲罰因子,N為學習樣本個數。
根據KKT理論,上式(15)等價于求解對偶優化問題:
(16);
式(16)求解方式如下:
其中,
將式(17)和式(18)帶入式(19),可以得到:
(20);
根據式(17)和(20)進一步求解得到:
(21)。
故ELM模型的輸出可表示為:
(22);
利用極限學習機可以求解分類問題,如解決二分類問題時決策方程為:
(23);
利用極限學習機解決多分類問題時,對于M分類問題的決策方程為:
(24)。
在上述極限學習機的基礎上,本發明首先獲取了泡沫鎳的表面缺陷圖像,包括污染、折痕、裂紋、漏鍍、刮傷這五類,如圖1所示;然后分別提取泡沫鎳表層紋理特征,包括能量、熵、逆差矩和相關性,作為極限學習機多分類器的輸入樣本x;通過概率極限學習機分類性能的分析,構建概率極限學習機集成策略;以樣本x為輸入,采用概率極限學習機集成策略構建泡沫鎳缺陷分類模型,如圖3所示,實時對多泡沫鎳缺陷進行分類;從而有效降低各類缺陷樣本相似造成的誤判。具體實施例如下。
實施例一
基于概率極限學習機集成的泡沫鎳表面缺陷分類方法,包括如下步驟:
第一步:獲取各種泡沫鎳表面缺陷圖像,包括污染、折痕、裂紋、漏鍍、刮傷這五種常見缺陷圖像。
第二步:首先,計算獲得的泡沫鎳缺陷圖像的灰度共生矩陣,
(1)
式中L是圖像的灰度級數,L=256,為兩像素順時針與x軸的夾角,其取值通常為0o、45o、90o和135o。通常,表示2個像素之間的距離為1;
然后,利用灰度共生矩陣計算能量、熵、對比度和逆差矩這些紋理特征,其中能量E為:
(2)
能量是灰度共生矩陣各元素的平方和,反映了圖像灰度分布均勻程度和紋理粗細度,能量大時,紋理粗;反之能量小時紋理細;
熵S為:
(3)
圖像所包含的信息量是用熵值來進行度量的,熵值可以直接對圖像中紋理的非均勻度或紊亂度進行反映,熵值越大則表示紋理越復雜;
對比度(慣性矩)I為:
(4)
對比度可理解為圖像的清晰度,對比度大時,紋理的溝紋深,效果清晰;反之對比度小則溝紋淺,效果模糊;
逆差矩D為:
(5)
逆差矩D是數字圖像局部均勻性的直接度量,圖像局部紋理越均勻,則其對應的逆差矩值越大,反之亦然;
最后將大量缺陷樣本提取的紋理特征用于實驗,包括能量、熵、逆差矩和對比度。
第三步:構建概率極限學習機集成策略:首先定義極限學習機的概率形式為:
(6),
其中x為輸入樣本,M為缺陷類別數,f(x)為決策方程,上式(6)歸一化得到輸入樣本x屬于類別m的概率,即
(7);
然后對于輸入樣本x,采用J組極限學習機分類器進行M種缺陷判決,計算每一組極限學習機分類器所有缺陷概率輸出最大值,具體操作是:對于樣本x,先計算第n組極限學習機分類器判決樣本x屬于第m類缺陷的概率輸出值:
(8);
然后根據這些結果判斷第n組極限學習機分類器所有缺陷概率輸出的最大值Pn:
(9);
(3)計算每一組分類器概率輸出權值:
(10),
可以知道若pn越大,則該組分類器集成的權值也越大;
(4)獲得每一組概率輸出權值后,將每組分類器中每種缺陷的概率輸出進行加權集成,加權集成后結果最大的缺陷類別作為結果輸出,算法為:
(11)。
步驟4:以提取到的能量、對比度、逆差矩和熵這四個紋理特征為樣本輸入,利用4個ELM分類器分別進行樣本的訓練和測試,分別獲得5種缺陷類別的概率P1, P2, P3, P4, P5;然后針對公式(9)計算存在誤判的情況,采用公式(10)-(11)進行概率P1, P2, P3, P4, P5的集成,獲得集成后的概率輸出值,較大者為當前判斷類型,從而實時對多泡沫鎳缺陷進行分類。
以下通過具體實例來進一步說明本發明分類方法的優勢所在。
實例一
從生產現場不同時刻泡沫鎳視頻中隨機選取900組構建樣本集,五種常見缺陷(污染、折痕、裂紋、漏鍍和刮傷)的圖像數目如表1所示,基本符合生產中不同缺陷出現的頻次。利用表1整理的紋理特征,構成分類特征向量。
表1訓練網絡使用的樣本數量
為避免不同隱含層函數引起的性能差異,統一選取Morlet小波函數形式的隱層輸出函數,將能量、熵、對比度、逆差矩這4種特征參數作為4組PELM的輸入,進行模型的訓練,即J=4。
然后利用最新整理的600組泡沫鎳缺陷樣本進行模型的測試,其中五種缺陷的數目依次為142、158、153、77和70 。將泡沫鎳缺陷圖像提取的由能量、熵、逆差矩和對比度和組成的特征量送入分類器進行缺陷分類。對某一測試樣本利用公式(6)計算其概率輸出,如表2所示。
表2 測試樣本數目列表
由表2 可知,通過概率極限學習機歸一化,有效的解決了不同輸入樣本輸出范圍不同的問題,可以在同一參量下進行比較。概率輸出最大值所對應的類別即為傳統最大值決策法的判決結果,傳統最大值決策方程為:
(25)。
但是,從上表可知,能量特征對應的輸出,折痕和裂紋的概率比較接近,采用最大值法不能有效說明問題,很大可能存在誤判。
而采用本文集成策略,利用式 (10)-(11)計算,折痕的集成輸出為0.43,裂紋的融合輸出為0.39,因此可以得到正確的判決結果。
對多分類器利用最新整理的600組泡沫鎳缺陷樣本進行測試,識別結果如表3所示。
表3工況識別準確率
從表3識別結果可看出,測試數據集共包括5種類型缺陷,共計600個樣本,能夠正確識別出515個,識別率達到85.8%。對于污染、折痕、裂紋、漏鍍、刮擦這五種泡沫鎳表面缺陷,經特征提取、分類器分類,最終的檢驗正確率分別為89.4%,81.6%,88.2%,84.4%和85.8%。由于缺陷折痕和裂紋的外在表現形式有些相似,形狀特征比較接近,系統將這兩種缺陷互相誤判的可能性比較大。另外污染缺陷和漏鍍缺陷在邊界輪廓或者外形上有一定的相似性,故誤判的可能性也相對較大,采用本發明的集成策略可以有效的減少缺陷的誤判情況。