卷積神經網絡可視化范文

時間:2024-04-02 18:03:50

導語:如何才能寫好一篇卷積神經網絡可視化,這就需要搜集整理更多的資料和文獻,歡迎閱讀由公務員之家整理的十篇范文,供你借鑒。

篇1

(江蘇科技大學電子信息學院,江蘇鎮江212003)

摘要:在實際交通環境中,由于運動模糊、背景干擾、天氣條件以及拍攝視角等因素,所采集的交通標志的圖像質量往往不高,這就對交通標志自動識別的準確性、魯棒性和實時性提出了很高的要求。針對這一情況,提出一種基于深層卷積神經網絡的交通標志識別方法。該方法采用深層卷積神經網絡的有監督學習模型,直接將采集的交通標志圖像經二值化后作為輸入,通過卷積和池采樣的多層處理,來模擬人腦感知視覺信號的層次結構,自動地提取交通標志圖像的特征,最后再利用一個全連接的網絡實現交通標志的識別。實驗結果表明,該方法利用卷積神經網絡的深度學習能力,自動地提取交通標志的特征,避免了傳統的人工特征提取,有效地提高了交通標志識別的效率,具有良好的泛化能力和適應范圍。

關鍵詞 :交通標志;識別;卷積神經網絡;深度學習

中圖分類號:TN911.73?34;TP391.41 文獻標識碼:A 文章編號:1004?373X(2015)13?0101?06

收稿日期:2015?01?09

基金項目:國家自然科學基金面上項目(61371114)

0 引言

隨著智能汽車的發展,道路交通標志的自動識別[1?3]作為智能汽車的基本技術之一,受到人們的高度關注。道路交通標志識別主要包括兩個基本環節:首先是交通標志的檢測,包括交通標志的定位、提取及必要的預處理;其次是交通標志的識別,包括交通標志的特征提取和分類。

如今,交通標志的識別方法大多數都采用人工智能技術,主要有下述兩類形式[4]。一種是采用“人工特征+機器學習”的識別方法,如基于淺層神經網絡、支持向量機的特征識別等。在這種方法中,主要依靠先驗知識,人工設計特征,機器學習模型僅負責特征的分類或識別,因此特征設計的好壞直接影響到整個系統性能的性能,而要發現一個好的特征,則依賴于研究人員對待解決的問題的深入理解。另一種形式是近幾年發展起來的深度學習模型[5],如基于限制波爾茲曼機和基于自編碼器的深度學習模型以及卷積神經網絡等。在這種方法中,無需構造任何的人工特征,而是直接將圖像的像素作為輸入,通過構建含有多個隱層的機器學習模型,模擬人腦認知的多層結構,逐層地進行信息特征抽取,最終形成更具推廣性和表達力的特征,從而提升識別的準確性。

卷積神經網絡作為深度學習模型之一,是一種多層的監督學習神經網絡,它利用一系列的卷積層、池化層以及一個全連接輸出層構建一個多層的網絡,來模仿人腦感知視覺信號的逐層處理機制,以實現視覺特征信號的自動提取與識別。本文將深層卷積神經網絡應用于道路交通標志的識別,通過構建一個由二維卷積和池化處理交替組成的6層網絡來逐層地提取交通標志圖像的特征,所形成的特征矢量由一個全連接輸出層來實現特征的分類和識別。實驗中將加入高斯噪聲、經過位移、縮放和旋轉處理的交通標志圖像以及實際道路采集交通標志圖像分別構成訓練集和測試集,實驗結果表明,本文所采用的方法具有良好的識別率和魯棒性。

1 卷積神經網絡的基本結構及原理

1.1 深度學習

神經科學研究表明,哺乳動物大腦皮層對信號的處理沒有一個顯示的過程[5],而是通過信號在大腦皮層復雜的層次結構中的遞進傳播,逐層地對信號進行提取和表述,最終達到感知世界的目的。這些研究成果促進了深度學習這一新興研究領域的迅速發展。

深度學習[4,6?7]的目的就是試圖模仿人腦感知視覺信號的機制,通過構建含有多個隱層的多層網絡來逐層地對信號特征進行新的提取和空間變換,以自動學習到更加有效的特征表述,最終實現視覺功能。目前深度學習已成功地應用到語音識別、圖像識別和語言處理等領域。在不同學習框架下構建的深度學習結構是不同的,如卷積神經網絡就是一種深度的監督學習下的機器學習模型。

1.2 卷積神經網絡的基本結構及原理

卷積神經網絡受視覺系統的結構啟發而產生,第一個卷積神經網絡計算模型是在Fukushima 的神經認知機中提出的[8],基于神經元之間的局部連接和分層組織圖像轉換,將有相同參數的神經元應用于前一層神經網絡的不同位置,得到一種平移不變神經網絡結構形式。后來,LeCun 等人在該思想的基礎上,用誤差梯度設計并訓練卷積神經網絡[9?10],在一些模式識別任務上得到優越的性能。

卷積神經網絡本質上是一種有監督的深度學習算法,無需事先知道輸入與輸出之間精確的數學表達式,只要用已知的模式對卷積神經網絡加以訓練,就可以學習到輸入與輸出之間的一種多層的非線性關系,這是非深度學習算法不能做到的。卷積神經網絡的基本結構是由一系列的卷積和池化層以及一個全連接的輸出層組成,可以采用梯度下降法極小化誤差函數對網絡中的權值和閾值參數逐層反向調節,以得到網絡權值和閾值的最優解,并可以通過增加迭代次數來提高網絡訓練的精度。

1.2.1 前向傳播

在卷積神經網絡的前向傳播中,輸入的原始圖像經過逐層的卷積和池化處理后,提取出若干特征子圖并轉換成一維特征矢量,最后由全連接的輸出層進行分類識別。

在卷積層中,每個卷積層都可以表示為對前一層輸入圖像的二維卷積和非線性激勵函數,其表達式可用式(1)表示:

式中:Yj 表示輸出層中第j 個輸出;Y l + 1i 是前一層(l + 1層)

的輸出特征(全連接的特征向量);n 是輸出特征向量的長度;Wij 表示輸出層的權值,連接輸入i 和輸出j ;bj表示輸出層第j 個輸出的閾值;f (?) 是輸出層的非線性

1.2.2 反向傳播

在反向傳播過程中,卷積神經網絡的訓練方法采用類似于BP神經網絡的梯度最速下降法,即按極小化誤差的方法反向傳播調整權值和閾值。網絡反向傳播回來的誤差是每個神經元的基的靈敏度[12],也就是誤差對基的變化率,即導數。下面將分別求出輸出層、池采樣層和卷積層的神經元的靈敏度。

(1)輸出層的靈敏度

對于誤差函數式(6)來說,輸出層神經元的靈敏度可表示為:

在前向傳播過程中,得到網絡的實際輸出,進而求出實際輸出與目標輸出之間的誤差;在反向傳播過程中,利用誤差反向傳播,采用式(17)~式(20)來調整網絡的權值和閾值,極小化誤差;這樣,前向傳播和反向傳播兩個過程反復交替,直到達到收斂的要求為止。

2 深層卷積神經網絡的交通標志識別方法

2.1 應用原理

交通標志是一種人為設計的具有特殊顏色(如紅、黃、白、藍、黑等)和特殊形狀或圖形的公共標志。我國的交通標志主要有警告、禁令、指示和指路等類型,一般采用顏色來區分不同的類型,用形狀或圖形來標示具體的信息。從交通標志設計的角度來看,屬于不同類型(不同顏色)的交通標志在形狀或圖形上有較大的差異;屬于相同類型(相同顏色)的標志中同類的指示信息標志在形狀或圖形上比較接近,如警告標志中的平面交叉路口標志等。因此,從機器視覺的角度來分析,同類型中同類指示信息的標志之間會比不同類型的標志之間更易引起識別錯誤。換句話說,相比于顏色,形狀或圖形是正確識別交通標志的關鍵因素。

因此,在應用卷積神經網絡識別交通標志時,從提高算法效率和降低錯誤率綜合考慮,將交通標志轉換為灰度圖像并作二值化處理后作為卷積神經網絡的輸入圖像信息。圖2給出了應用卷積神經網絡識別交通標志的原理圖。該網絡采用了6層交替的卷積層和池采樣層來逐層提取交通標志的特征,形成的特征矢量由一個全連接的輸出層進行識別。圖中:W1i(i=1,2,…,m1),W1(j j=1,2,…,m2),…,W1k(k=1,2,…,m(n?1))分別表示卷積層L1,L3,…,Ln - 1 的卷積核;Input表示輸入的交通標志圖像;

Pool表示每個池采樣層的采樣池;map表示逐層提取的特征子圖;Y 是最終的全連接輸出。

交通標志識別的判別準則為:對于輸入交通標志圖像Input,網絡的輸出矢量Y = [y1,y2 ,…,yC ],有yj = Max{y1,y2 ,…,yC},則Input ∈ j,即判定輸入的交通標志圖像Input為第j 類交通標志。

2.2 交通標志識別的基本步驟

深層神經網絡識別交通標志主要包括交通標志的訓練與識別,所以將交通標志識別歸納為以下4個步驟:(1) 圖像預處理:利用公式Gray= 0.299R +0.587G + 0.114B 將彩色交通標志圖像轉換為灰度圖像,再利用鄰近插值法將交通標志圖像規格化,最后利用最大類間方差將交通標志圖像二值化。

(2)網絡權值和閾值的初始化:利用隨機分布函數將權值W 初始化為-1~1之間的隨機數;而將閾值b 初始化為0。

(3)網絡的訓練:利用經過預處理的交通標志圖像構成訓練集,對卷積神經網絡進行訓練,通過網絡前向傳播和反向傳播的反復交替處理,直到滿足識別收斂條件或達到要求的訓練次數為止。

(4)交通標志的識別:將實際采集的交通標志圖像經過預處理后,送入訓練好的卷積神經網絡中進行交通標志特征的提取,然后通過一個全連接的網絡進行特征分類與識別,得到識別結果。

3 實驗結果與分析

實驗主要選取了我國道路交通標志的警告標志、指示標志和禁令標志三類中較常見的50幅圖像。考慮到在實際道路中采集到的交通標志圖像會含有噪聲和出現幾何失真以及背景干擾等現象,因此在構造網絡訓練集時,除了理想的交通標志以外,還增加了加入高斯噪聲、經過位移、旋轉和縮放處理和實際采集到的交通標志圖像,因此最終的訓練樣本為72個。其中,加入的高斯噪聲為均值為0,方差分別為0.1,0.2,0.3,圖像的位移、旋轉、縮放的參數分別隨機的分布在±10,±5°,0.9~1.1的范圍內。圖3給出了訓練集中的交通標志圖像的示例。圖4是在實際道路中采集的交通標志圖像構成的測試集的示例。

在實驗中構造了一個輸入為48×48個神經元、輸出為50 個神經元的9 層網絡。網絡的輸入是像素為48 × 48 的規格化的交通標志圖像,輸出對應于上述的50種交通標志的判別結果。網絡的激活函數采用S型函數,如式(2)所示,其輸出范圍限制在0~1之間。

圖6是交通標志的訓練總誤差EN 曲線。在訓練開始的1 500次,誤差能迅速地下降,在迭代2 000次以后是一個平穩的收斂過程,當迭代到10萬次時,總誤差EN可以達到0.188 2。

在交通標志的測試實驗中,為了全面檢驗卷積神經網絡的識別性能,分別針對理想的交通標志,加入高斯噪聲、經過位移、旋轉和比例縮放以及采集的交通標志圖像進行實驗,將以上測試樣本分別送入到網絡中識別,表2給出了測試實驗結果。

綜合分析上述實驗結果,可以得到以下結論:(1)在卷積神經網絡的訓練學習過程中,整個網絡的誤差曲線快速平穩的下降,體現出卷積神經網絡的訓練學習具有良好的收斂性。

(2)經逐層卷積和池采樣所提取的特征具有比例縮放和旋轉不變性,因此對于旋轉和比例縮放后的交通標志能達到100%的識別率。

(3)與傳統的BP網絡識別方法[11]相比較,卷積神經網絡能夠達到更深的學習深度,即在交通標志識別時能夠得到更高的所屬類別概率(更接近于1),識別效果更好。

(4)卷積神經網絡對實際采集的交通標志圖像的識別率尚不能達到令人滿意的結果,主要原因是實際道路中采集的交通標志圖像中存在著較嚴重的背景干擾,解決的辦法是增加實際采集的交通標志訓練樣本數,通過網絡的深度學習,提高網絡的識別率和魯棒性。

4 結論

本文將深層卷積神經網絡應用于道路交通標志的識別,利用卷積神經網絡的深層結構來模仿人腦感知視覺信號的機制,自動地提取交通標志圖像的視覺特征并進行分類識別。實驗表明,應用深層卷積神經網絡識別交通標志取得了良好的識別效果。

在具體實現中,從我國交通標志的設計特點考慮,本文將經過預處理二值化的圖像作為網絡的輸入,主要是利用了交通標志的形狀信息,而基本略去了顏色信息,其優點是在保證識別率的基礎上,可以簡化網絡的結構,降低網絡的計算量。在實際道路交通標志識別中,將形狀信息和顏色信息相結合,以進一步提高識別率和對道路環境的魯棒性,是值得進一步研究的內容。

此外,本文的研究沒有涉及到道路交通標志的動態檢測,這也是今后可以進一步研究的內容。

參考文獻

[1] 劉平華,李建民,胡曉林,等.動態場景下的交通標識檢測與識別研究進展[J].中國圖象圖形學報,2013,18(5):493?503.

[2] SAHA S K,DULAL C M,BHUIYAN A A. Neural networkbased sign recognition [J]. International Journal of ComputerApplication,2012,50(10):35?41.

[3] STALLKAMP J,SCHLIOSING M,SALMENA J,et al. Man vs.computer:benchmarking machine learning algorithms for traf?fic sign recognition [J]. Neural Network,2012,32(2):323?332.

[4] 中國計算機學會.深度學習:推進人工智能夢想[EB/OL].[2013?06?10].http://ccg.org.cn.

[5] 鄭胤,陳權崎,章毓晉.深度學習及其在目標和行為識別中的新進展[J].中國圖象圖形學報,2014,19(2):175?184.

[6] FUKUSHIMA K. Neocognition:a self ? organizing neural net?work model for a mechanism of pattern recognition unaffectedby shift in position [J]. Biological Cybernetics,1980,36(4):193?202.

[7] LECUN Y,BOTTOU L,BENGIO Y,et al. Gradient ? basedlearning applied to document recognition [J]. IEEE Journal andMagazines,1989,86(11):2278?2324.

[8] LECUN Y,BOTTOU L,BENGIO Y,et al. Backpropagationapplied to handwritten zip code recognition [J]. Neural Compu?tation,1989,1(4):541?551.

[9] CIRESAN D,MEIER U,MAsci J,et al. Multi?column deepneural network for traffic sign classification [J]. Neural Net?works,2012,32(2):333?338.

[10] NAGI J,DUCATELLE F,CARO D,et al. Max?pooling con?volution neural network for vision?based hand gesture recogni?tion [C]// 2011 IEEE International Conference on Signal andImage Processing Application. Kuala Lumpur:IEEE,2011,342?347.

[11] 楊斐,王坤明,馬欣,等.應用BP神經網絡分類器識別交通標志[J].計算機工程,2003,29(10):120?121.

[12] BUVRIE J. Notes on convolutional neural networks [EB/OL].[2006?11?12]. http://cogprints.org/5869/.

[13] 周開利,康耀紅.神經網絡模型及其Matlab 仿真設計[M].北京:清華大學出版社,2005.

[14] 孫志軍,薛磊,許陽明,等.深度學習研究綜述[J].計算機應用研究,2012,29(8):2806?2810.

[15] 劉建偉,劉媛,羅雄麟.深度學習研究進展[J].計算機應用研究,2014(7):1921?1930.

篇2

關鍵詞:水尺 檢測 圖像識別

中圖分類號:TP274 文獻標識碼:A 文章編號:1007-9416(2013)01-0114-02

1 引言

隨著航運技術的發展,船舶運輸越來越受到人們的關注。船舶的水尺計重作為一種科學的計重方法,具有一定的準確性,在國際上已廣泛應用,其計算結果可作為商品交接結算、理賠、計算運費和通關計稅的依據。其適用于價值較低,衡重困難的大宗散裝固體商品,例如煤炭、鐵礦石、水泥、糧食等商品的重量計算。水尺計重的優點是省時、省力、省費用,能迅速計算出整船貨物的重量,但是計算過程較為復雜,影響計重結果的客觀因素較多,特別船舶刻度觀測水平是影響水尺準確性最重要因素。船舶吃水線的檢測目前主要依靠經過長期訓練的觀察人員目測船舶的水尺標志而獲得船舶的實際吃水值,為了獲得較為精確的數值,需要觀察人員多次查看,以求得平均值。這種人眼目測船舶吃水線數值的方式,往往帶有主觀性,存在較大的局限性,例如:觀測不方便,受環境影響大,并且觀測存在一定危險。因此,本文提出采用Matlab7.0作為仿真環境,利用圖像處理技術,設計船舶吃水線自動檢測的算法來自動檢測船舶水尺刻度數值,可以克服人工目測所引起的一系列問題,完整的記錄整個觀測階段的吃水線位置,并使后續的數據處理成為可能。降低了系統復雜性,又提高了效率和準確度。

2 圖像識別技術的原理

近年來,拍攝設備性能的不斷完善,設備的分辨率能夠達到很精確的程度,圖片質量清晰度非常高,同時計算機體系結構和算法的快速發展,使得圖像處理的性能和運算速度得到了較大提高,這些都為吃水線的求取提供了可能。一幅圖像在計算機中可以定義為一個二維函數f(x,y),其中x和y是空間(平面)坐標,而在任何一對空間坐標(x,y)處的幅值f稱為該點處的灰度,當x,y和灰度值f是有限的離散數值時,我們稱該圖像為數值圖像,數字圖像處理就是借助計算機來處理上述這些數字圖像。數字圖像是由有限數量的元素組成的,每個元素都有一個特殊的位置和數值,要將一副圖像轉化為數字形式,就要求數字化x,y和灰度值f。在此基礎上,利用上述數值,設計相應的算法即可得到船舶水尺精確的刻度值。

3 船舶吃水線刻度檢測算法的設計

3.1 總體結構設計

本文利用Matlab7.0作為仿真環境,通過采集到的視頻圖像序列,首先設計計算法檢測出吃水線邊緣,找到吃水線的位置,然后對船幫上刻度字進行分割,并求出水平面距離所在刻度上邊緣的距離,利用BP神經網絡對水尺刻度線進行識別,得到吃水線的數值。吃水線檢測算法的總流程圖如(圖1)所示:

3.2 船舶吃水線刻度檢測算法關鍵步驟的處理

3.2.1 圖像的灰度化和二值化處理

相比彩色圖像,灰度圖像的邊緣檢測較為方便和快捷,計算量小,所以先將獲取到的彩色圖像轉為灰度圖像。而圖像的二值化處理就是將圖像上的像素點的灰度值設置為0至255,將采樣后所得到的各像素的灰度值用矩陣表示,即灰度圖的量化。所有灰度值大于或者等于閥值的像素被判定為特殊物體,灰度值小于閥值的則表示為背景或者其他物體區域。通過將灰度值投影到曲線上,則可以獲得灰度值的分布特征。

3.2.2 選擇合適的邊緣檢測算法找到吃水線的邊緣

數字圖像的邊緣檢測是圖像分割,目標區域識別,區域形狀提取等圖像領域中十分重要的基礎,邊緣是圖像的最基本特征之一,它是利用周圍像素灰度有階躍變化或屋頂變化的像素的集合。邊緣檢測算法大致分為兩類:基于查找和基于零穿越的邊緣檢測。常用的邊緣檢測算法有:Roberts、Prewitt、Sobel、LOG、Canny算法等。

3.2.3 選擇合適的閥值對刻度字的分割

圖像分割是一種重要的圖像分析技術,在對圖像的研究和應用中,人們往往僅對圖像中的特定部分感興趣。為了識別和分析圖像中得目標,需要將它們從圖像中分離提取出來,在此基礎上才有可能進一步對目標進行測量和對圖像進行利用。而分割字符的思想就是利用刻度字區域黑色像素點比較多,比較集中,同時根據水尺標志的特點,每個字符之間有10cm的空隙間隔隔開,這樣得到的投影圖有幾個比較集中卻又有明顯分割的投影峰值群,通過設定特定的閥值來判定特定物體,通過這種方法將找出船幫上刻度字的左右邊界。

3.2.4 選擇BP神經網絡對船幫處水尺字符進行識別

字符識別的主流技術有:統計決策法、人工智能法、模板匹配法和人工神經元網絡法等。同在字符識別領域相對比較成熟的光學字符(OCR)識別、車牌識別相比,船幫處水尺刻度字符由于表面凹凸、油漆掉色或攝像時水面反光等情況造成的字符畸變。為了提高系統的抗干擾性和自適應性,本文計劃采用對噪聲干擾和形變有較好適應性的BP神經網絡模型方式來進行識別。BP網絡是神經網絡的一個分支,又稱誤差信號反饋網絡,是神經網絡中使用最廣泛的一類。并嘗試通過改善收斂性,神經元的個數,提高系統的識別率。

3.3 Matlab軟件的使用

Matlab由美國的MathWorks公司出品,它的指令表達式與數學,工程中常用的形式十分相似。其典型的應用包括:(1)數學和計算;(2)算法開發;(3)數據獲取;(4)建模、模擬和原型設計;(5)數據分析、研究和可視化;(6)科學和工程圖形;(7)應用開發,包括圖像用戶界面的構建。MATLAB中補充了許多針對特殊應用的工具箱,圖像處理工具箱是一個MATLAB函數集合,能進行圖像的和、差等線性運算,以及卷積、相關、濾波等非線性運算,幾乎包括了常用的圖像處理操作的各種函數,只需了解這些函數的使用方法,正確調用函數就可以實現常用的各種圖像處理的操作。MATLAB能支持包括:TIFF、BMP、JPEG等的圖形文件的格式,用它來解決圖像問題比用C,Fortran等語言完成相同的事情簡捷的多。因此利用此工具,我們可以方便地從各個方面對圖像的性質進行深入的研究。

本文所研究的內容是在靜態圖像上對吃水線進行檢測,其技術路線包括圖像的預處理,利用邊緣檢測算子對吃水線邊緣進行擬合,去除干擾,得到吃水線的位置。利用船舶刻度字的特點,對其進行分割,對分割出來的字符進行識別后,得到吃水線的數值。以上都可以通過Matlab調用不同的工具箱和函數來實現。

4 結語

由于經濟利益,發貨人、收貨方和承運人都對貨物的重量非常重視,而且越來越精細、嚴格,如何準確計算船舶載重量成為亟待解決的問題。作為近年來快速發展起來的一個計算機學科,通過使用圖像處理和分析的手段,獲得水平面在圖像中的準確位置,既可以克服人工目測所引起的一系列問題,完整的記錄整個觀測階段的吃水線位置,使后續的數據處理成為可能,既降低了系統復雜性,又提高了效率和準確度。圖像處理的對象是一幅幅拍攝下的照片,其中的吃水線位置是固定的,這樣就為后續的處理和計算奠定了一個靜態的基礎,不會發生象人眼目測,由于景物晃動而產生的錯覺。同時,拍攝下的照片作為測量的記錄保存,可以滿足今后復核或是查對的要求。再次,利用圖像處理技術,可以大幅度降低對有經驗觀測人員的依賴。因此利用圖像識別技術對船舶水尺測量具有廣泛的應用價值。

參考文獻

[1]SN/T 0187-93 進出口商品重量鑒定規程——水尺計重.

[2]陳德為,張培銘.轉動式交流接觸器動態過程分析與控制[J].福州大學學報:自然科學版,2008,36(1):95—99.

[3]陳德為,張培銘.采用高速攝像機的智能交流接觸器控制及其測試裝置的研制[M].電工電能新技術:2009,28(3):58-61,72.

[4]周廣程.圖像處理技術在船舶吃水自動檢測系統中的應用[D].南京:南京理工大學,2006.