李顏瑞
(山西機電職業技術學院信息工程系 山西 長治 046011)
傳統的檢測方法,是采用人工的方式進行檢測。人工檢測效率低且人為因素較多,存在一定的漏檢、錯檢情況。而智能制造在檢測上,必須借助設備實現自動檢測。一些高精尖的制造產品或者零部件雖然已經具備一套完整的設備用于自動檢測,但還存在一部分制造產品或者零部件無法實現自動檢測的情況。這些制造產品或者零部件不屬于高精尖,但是卻與人民生活息息相關。其中就包括陶瓷制品,體積較小,成本很低,用量相對較大,主要檢測表面的平整程度,要求表面不能出現氣泡孔、劃痕和缺口,一旦出現這些情況,就直接定為廢品。但如果直接使用廢品部件,會造成制造產品不能正常使用,如果利用人工檢測,會提高生產成本,也不能保證百分之百的檢測率,故而研究出了一種自動檢測方法,利用主成分分析(PCA)對陶瓷產品部件圖像進行特征提取,然后使用支持向量機(SVM)進行自動識別。
主成分分析方法[1-2]即PCA,是一種線性判別方法,由Pentland和Turk提出,也稱為K-L方法。

零件圖像的采集裝置是用高清放大設備,固定位置拍照采集。所有零件圖像整體效果比較好,并且零件圖像中(圖1)只包含零件部分,基本沒有多余部分,可以用于下一步操作。對零件圖像進行灰度化處理,可以利用公式(2):

經過處理后,原彩色零件圖像就生產為黑白的灰度零件圖像(圖2)。其中R表示原圖像中紅色部分,G表示原圖像中綠色部分,B表示原圖像中藍色部分

圖1 原零件圖象

圖2 灰度零件圖象
研磨后的陶瓷零件總體分為兩種狀態,即合格與不合格。其中陶瓷零件表面有劃痕、缺口和氣泡都為不合格狀態。
選取四張陶瓷零件圖像,分別為合格、劃痕、缺口、氣泡。記為,大小均為像素。
(2)先計算矩陣M每行的平均值,則由這些平均值構成一個列向量,然后用M矩陣的每一列減去列向量T,構成行的矩陣B。
(3)先計算BBT矩陣的值,選擇K個最大的特征值對應的特征向量組成一個矩陣β,記為。然后將其轉置,記,k的具體值由閾值η決定。那么t就稱為投影空間。
(5)選擇有劃痕、缺口和氣泡零件圖像各五張,做投影和求平均值計算,分別得到對應的特征向量,記為。
支持向量機即SVM[5],主要方法是結構中風險最小化的歸納原則近似。本文直接調用了LIBSVM包,LIBSVM是由臺灣大學的林智仁教授研制開發的。
(1)先將待識別的零件圖像經過預處理和轉換成列向量,然后在投影空間上進行投影運算生產特征向量,即。
(2)直接使用支持向量機LIBSVM包,將訓練的任意兩個特征向量都生成一個分類器,則共生成六個分類器。
(3)將待識別的特征向量,放入所有的分類器中進行識別,并記下每個分類器識別結果。
(4)統計所有的分類器產生的結果,識別結果為分類器產生的結果中出現次數最多的。
在2000張零件圖像上進行實驗研究,其中合格零件圖像為500張,有劃痕的零件圖像500張,有缺口的零件圖像500張,有氣泡的零件圖像500張。訓練零件圖像各取5張,測試零件圖像為1980張。實驗結果見表1、表2。

表1 不同的實驗方法

表2 閾值的不同對實驗的影響
兩個實驗證明,用PCA做特征提取,SVM做識別,其識別率最高。證明了PCA提取的特征質量較高,并且SVM識別效果高于近鄰方法。閾值對識別有一定的影響,因為閾值決定著投影空間的大小。如果閾值越小,那么投影空間就會越小,投影得到的特征向量越小,那么影響識別的關鍵數據可能就會排除到特征向量之外,影響識別率;反之,如果閾值越大,那么投影空間就會越大,投影得到的特征向量越大,那么有些不利于識別的無用數據也會放到特征向量里,影響識別率。所以,閾值選擇0.93時,用SVM進行識別,其識別率最理想。
文章研究了使用PCA做特征提取,用SVM做識別,在包含2000張陶瓷零件數據庫上進行實驗,獲得了比較滿意的識別率。再次證明了,使用PCA和SVM在驗證陶瓷零件這種小配件是否合格上具有一定的可行性。識別率基本達到了企業的要求。如果要應用必須具備相應的硬件條件,例如PLC或者單片機以及其他附屬設備,因此,今后的研究重點要放到實際的工業應用上。