呂 新 鄭士富
(大連交通大學電氣信息學院,遼寧 大連 116028)
·計算機技術及應用·
一種BP神經網絡紙幣圖像識別方法的研究
呂 新 鄭士富
(大連交通大學電氣信息學院,遼寧 大連 116028)
介紹了BP神經網絡的結構特點與原理,基于此種方法,對幾種紙幣的面額與方向進行了識別,其中權值的修改算法采用LM算法,并對算法的基本思路作了闡述,識別仿真結果表明,BP神經網絡具有較高的準確性。
BP神經網絡,紙幣,圖像識別
傳統的紙幣識別采用人工識別的方法,有準確性高的特點,但卻存在識別過程中人們容易疲勞,識別效率低下的特點。隨著科學技術的發展,人工識別方法已經進入了歷史的舞臺。目前,很多行業都出現了基于人民幣紙幣識別技術的智能化無人收費系統,節省了大量的人力資源[1]。
就現在正在使用的識別方法來說,較常用的有尺寸比較法、模板匹配、人工神經網絡[1]等。在神經網絡系統中,BP神經網絡是較常見的一種,它是一種以誤差反向傳播為基礎的前向網絡,具有非常強的非線性映射能力[2]。將神經網絡應用于非線性系統的辨識,可以不受非線性模型的限制,達到較理想的實際結果。據統計,80%~90%的神經網絡模型采用了BP神經網絡或者它的變化形式[3]。在MATLAB軟件系統中提供了神經網絡工具箱,方便用戶學習與實際驗證。
1.1 BP神經網絡的特點
BP神經網絡一般有以下特點:
1)一般是多層的,有一個輸入層,一個輸出層,還有若干的隱含層。

3)采用誤差反向傳播算法(Back-Propagation),在BP網絡中,數據從輸入層經隱含層逐層向后傳播,訓練網絡權值時,沿著減少誤差的方向,從輸出層經過中間各層逐層向前修改網絡的連接權值。
含一層隱含層BP神經網絡結構如圖1所示。

1.2LM算法
BP的修正算法最常使用標準的是最速下降法,根據實際情況可以選用其他幾種改進算法。根據實際運用中神經元數目較多,要獲得較快的收斂速度,選用LM算法。
w(n)為第n次迭代的權值向量,則w(n+1)次權值迭代向量可由式(1)計算。H為誤差性能函數Hessian矩陣,其中包含了誤差函數的倒數信息。當誤差性能函數具有如式(3)所示的形式時,其中,ti為第i個向量的理想輸出值,oi為第i個向量實際輸出。因而有H=JTJ。那么,梯度可表示為式(5),其中J為雅可比矩陣,e的計算如式(4)所示。根據式(6)牛頓法的迭代公式可得式(7)LM算法。定義式(7)為LM算法網絡權值修訂公式。如果求得的-[JTJ+μI]-1JTe能使誤差指標函數降低,則μ降低,反之,則μ增加[4]。當μ=0時,LM算法轉換為擬牛頓法。 當μ很大時,式(6)相當于步長值較小的梯度下降法,由于雅可比矩陣計算量較Hessian矩陣較小,所以收斂速度相對較快。但LM實際運算中占用內存量過大,因而盡量減少迭代次數[5]。
w(n+1)=w(n)+▽w(n)
(1)

(2)
(3)
(4)
▽E=JTe
(5)
w(n+1)=w(n)-H-1(n)▽E(n)
(6)
w(n+1)=w(n)-[JTJ+μI]-1JTe
(7)
w(n+1)=w(n)+▽w(n+1)
(8)
1.3 算法的基本思路
在研究之前,首先考慮的是理想狀況下,是用處理軟件把4種幣樣縮放為相同的大小,保證紙幣特征的完整性。轉化為已經處理好的圖像,也就是已經對噪聲等干擾信號處理完全后的圖像。判別四種幣樣的面值與方向,共有16種情況。在進行識別算法時,首先要把紙幣平均分塊,如圖2所示,分塊的目的是為了使紙幣圖像便于數字化。
在應用神經網絡時,需要模式向量確定實際的輸入層的大小。通過計算確定出每一塊的平均灰度值。在MATLAB軟件中,運算公式為y=mean(mean())。以圖2為例,平均分成類16小塊。通過計算可得到圖1的平均灰度向量為x0=[216,200,207,227,206,193,198,235,209,203,188,235,208,206,209,218]。在神經網絡中,一般是要歸一化才處理,具體的方法為數據全部除以灰度最大值255,同時設置閾值x=0.75完成圖像的數字化。
1.4 圖像識別BP神經網絡設計結構
前人通過LVQ網絡進行紙幣圖像鑒別[6]中,競爭層數目過多,而且不能達到100%的準確率。
在前述分割與圖像處理技術不變的情況下,采用LVQ網絡中用于模式識別的newlvq函數訓練一個神經網絡,如圖6所示,當競爭層神經元達到150個時,誤差率仍然很大,且曲線下降斜率較小,訓練速率很慢。同時通過圖4中也可以看出識別率準確率低于60%,且實際測試訓練時間大于10 s。修改識別系統,提高識別性能,這對確定該系統的性能是非常重要的。在本次試驗中采用BP神經網絡,樣本數為16個,輸入神經元16個。設計輸出神經元4個。隱含層設計為兩層,第一層為23個神經元,第二層為46個神經元。設定目標值T為[0000;0001;…;1111]。每個向量值對應于實際的一種輸出結果。 BP神經網絡設計為一層輸出層,兩個隱含層,一層輸入層。通過MATLAB工具箱進行分析訓練,部分程序如下所示:
threshold=[0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1];
net=newff(threshold,[23,46,4],{′tansig′,′logsig′,′purelin′},′trainlm′);
net.trainParam.epochs=1000;
net.trainParam.goal=0.0005;
net.trainParam.lr=0.15;
net=train(net,p,t);
通過round 函數與abs函數處理向量中的每個值,可以得到較高的準確率。如圖3第3列經過處理后得到表示y2=[0 01 0],表示本樣本屬于第3個類別。實驗達到了100%的準確率。圖5可以看出達到規定的目標精度,且訓練速率很快,實際測試訓練時間為3 s左右。在實際軟件測試中y3,y4分別為BP神經網絡與LVQ神經網絡的驗證函數。
BP,LVQ神經網絡訓練效果圖分別見圖5,圖6。
BP神經網絡結構對模式識別有較好的效果。本文中運用BP神經網絡結構設計了一種識別網絡,達到了較高的識別效果。通過與LVQ神經網絡識別系統的比較,發現有識別訓練時間短,結構簡單,識別準確率高等特點。仿真結果表明,能夠很好完成識別要求。



在本文試驗中,數據的樣本值還不夠充足,還可以加入舊幣與破損幣樣本。另外一點是要減少權值修訂的迭代次數,從而減少網絡的訓練時間。為應用于實際的系統做好準備。
[1] 金 曦,張 健,邵 妍.基于數字圖像處理的人民幣紙幣面值識別[J].黑龍江科技信息,2010(3):68-69.
[2] 陳 明.Matlab神經網絡原理與實例精解[M].北京:清華大學出版社,2012.
[3] 李 萍,曾令可,稅安澤.基于MATLAB的BP神經網絡預測系統的設計[J].計算機應用與軟件,2008(4):149-151.
[4] 王建梅,覃文忠.基于LM算法的BP神經網絡分類器[J].武漢大學學報,2005(10):928-931.
[5] 張德豐.Matlab神經網絡仿真及應用[M].北京:電子工業出版社,2009.
[6] 蔣雁飛.光電紙幣清分系統的圖像處理[D].成都:電子科技大學碩士論文,2006.
[7] Hirohito Shintani,Masatake Akutagawa.Optimization of MLP/BP for character recognition using a modified alopex algorithm[J].Knowledge-based and Intelligent Engineering Systems,2007(11):371-379.
Research on a BP neural network image recognition method of banknote
LV Xin ZHENG Shi-fu
(SchoolofElectricalInformation,DalianJiaotongUniversity,Dalian116028,China)
The paper introduces the structural features and principles of BP neural network, undertakes the recognition of denomination and orientation of some currencies, adopts the LM calculation method in the modification method of weight value, illustrates the basic idea of the calculation method and proves by the recognition simulation that BP neural network has higher accuracy.
BP neural network, currency, image recognition
1009-6825(2014)30-0286-02
2014-08-18
呂 新(1987- ),男,在讀碩士; 鄭士富(1964- ),男,碩士生導師,副教授
TP183
A