肖樂萍
【摘 要】通過紋理分析方法實現對共晶碳化物各級別特征的定量描述。在此基礎上,本文采用基于MATLAB的BP神經網絡構造了神經網絡模型,實驗對共晶碳化物的標準圖譜GB1299-85截取具有該級別特征的圖片進行了評級訓練,取得了較好的實驗結果,證實了其在自動識別技術中的作用,尤其是在商業領域里的廣泛應用與建設,隨機選取一幅待測圖片進行測試,實驗結果與目測結果一致。數字顯示結果對基于MATLAB的BP神經網絡自動識別共晶碳化物級別具有一定的指導意義。
【關鍵詞】神經網絡 自動識別 建設 應用
應用鋼中共晶碳化物分布不均勻性是反映鋼材內在質量的重要指標之一,如何檢驗碳化物的不均勻性,如何對其評級,是鋼的生產廠家與使用單位共同關心的問題。由于鋼中碳化物分布的不均勻性,模糊性以及級別間的漸變性,時至今日,共晶碳化物的評定還是以人工為主。而人工比較評級因受眾多的主客觀因素的限制,不可能得到科學的結果。為此利用計算機對不同級別碳化物進行特征提取與自動識別在實際生產及應用中都有實際的意義。本文在作者已有工作的基礎上,利用BP神經網絡的方法,對描述圖像形狀的特征參數進行訓練,以期達到精確識別形狀的目的。
1 識別對象的特征描述方法
共晶碳化物紋理主要體現在以下5個方面:紋理粗細均勻生(粗糙度),紋理清晰程度,紋理主方向,紋理明暗程度和紋理周期。采用灰度共生矩陣,選擇參數如下:角二階矩(能量)、慣性矩、局部平穩性、熵和相關。這5個參數不僅保持了彼此之間良好的獨立性,而且還直接與人的感觀相對應,便于進行分類識別和共晶碳化物定量化研究。
對第二套標準圖8個級別進行紋理特征值提取,作為神經網絡模型的輸入層。
2 BP神經網絡
BP神經網絡是基于誤差反向傳播算法(BP算法)的多層前向神經網絡,是一種有監督的學習。典型的BP網絡是三層網絡,包括輸入層、隱含層和輸出層。本文的網絡模型采用的是單隱層BP網絡。加上輸入層、輸出層,總共3層,各層之間實行全連接,如圖1所示
3 網絡結構的確立和訓練識別過程
3.1隱含層神經元數的確定
網絡訓練精度的提高,可以通過采用一個隱含層,而增加其神經元個數的方法來獲得。這在結構實現上,要比增加更多的隱含層要簡單的多,那么究竟選取多少個隱含層節點合適?隱含層的單元數直接影響網絡的非線性性能,它與所解決問題的復雜性有關。但問題的復雜性無法量化,因而也不能有很好的解析式來確定隱含層單元數。本文隱含層數根據訓練情況確定為10。
3.2網絡學習參數的選取
由于系統是非線性的,初始值對于學習是否達到局部最小、是否能夠收斂以及訓練時間的長短關系很大。一般總是希望初始加權后的每個神經元的輸出值都接近于零,這樣可以保證每個神經元的權值都能夠在他們的S型激活函數變化最大之處進行調節。保證,但學習速度太慢;學習率太大,學習速度快,但可能導致振蕩或發散。因而一個固定學習率不可能很好地適用于網絡的整個學習過程。為實現快速而有效的學習收斂過程,本文采用變化的自適應學習速率,使網絡的訓練在不同的階段自動設置不同學習速率的大小。本文的學習速率根據訓練情況設置為0.1。
3.3樣本數據的處理
具體算法是:取表1中的數據作為神經網絡的學習訓練樣本,共晶碳化物的8個級別分別用神經網絡的3個輸出節點來表示目標輸出。即,T0=[0;0;0]表示第1級;T1=[0;0;1]表示第2級;T2=[0;1;0]表示第3級;T3=[0;1;1]表示第4級;T4=[1;0;0]表示第5級;T5=[1;0;1]表示第6級;T6=[1;1;0]表示第7級;T7=[1;1;1]表示第8級。
因為樣本數據不是在同一個數量級,因此本文對第一層神經網絡采用tansig激活函數,將輸入從(-∞,+∞)映射到[-1,1]之間。第二層神經網絡采用logsig激活函數。