周超,陶沙
基于神經(jīng)網(wǎng)絡(luò)的圖像分類算法*
周超,陶沙
(銅陵學院 電氣工程學院,安徽 銅陵 244061)
神經(jīng)網(wǎng)絡(luò)由于其強大的信息處理能力,目前越來越多地用來解決圖像處理中的特定問題。根據(jù)筆者的實際工作經(jīng)驗,將神經(jīng)應(yīng)用于圖像分類算法中。其中神經(jīng)網(wǎng)絡(luò)模型采用AlexNet網(wǎng)絡(luò),在介紹AlexNet網(wǎng)絡(luò)的工作原理的基礎(chǔ)上,通過與傳統(tǒng)圖像處理算法的對比,展現(xiàn)了神經(jīng)網(wǎng)絡(luò)應(yīng)用于圖像分類算法的優(yōu)點,并且對算法進行了改進和優(yōu)化,最后經(jīng)過試驗結(jié)果證明這種方法對于圖像處理來說是比較理想的。
分類算法;神經(jīng)網(wǎng)絡(luò);圖像處理;圖像分類
圖像分類是圖像處理的重要基礎(chǔ)和分支,傳統(tǒng)的圖像分類策略不能滿足人們對圖像的精度要求,卷積神經(jīng)網(wǎng)絡(luò)由于其獨特高效的處理能力,越來越多地被應(yīng)用于圖像分類及其他圖像處理領(lǐng)域,使得傳統(tǒng)的圖像分類的算法在圖像處理領(lǐng)域取得了長足的進步。
圖像輸入神經(jīng)網(wǎng)絡(luò)后經(jīng)過預處理,經(jīng)過圖像分割后的各區(qū)塊做成標記,把具有相同像素的區(qū)塊賦予同樣的編號。在圖像處理中,通過圖像分割把圖像中的活動景象和靜止圖片進行分開,進一步地把活動景象中移動量大的部分與移動量小的部分進行編號,然后對二者分別進行編碼處理,從而可以降低傳輸碼率,提高傳輸效率。通過圖像分割處理,將小于圖像的濾鏡應(yīng)用于圖像的每個區(qū)塊,然后進行乘法操作,以便創(chuàng)建新的網(wǎng)格值。
特征提取利用軟件程序提取圖像信息,以便對圖像中的像素進行判斷是否屬于一個特征。通過特征提取確定哪個節(jié)點與給定的信息最匹配。具體地,把圖像中的像素分成不同的集合,其中每個集可以是點、線或者區(qū)域。然后對這些集合進行影響分析和數(shù)學變換,以便從中提取所需特征。在特征提取之后還要進行特征選擇,從上述提取的特征中選出最有效的特征。
隨后,要對經(jīng)過特征提取之后的圖像進行目標識別。圖像的目標識別將信息堆疊到一維數(shù)組來進行計算,進而算出該數(shù)組與其他數(shù)組的關(guān)系,在圖像識別技術(shù)過程中,通常使用模板模型進行匹配。在一些應(yīng)用場景中,圖像識別不但要判別出物體或景物是什么,而且還要判別出其所在的方位和位置以及它們的運動形態(tài)。隨著神經(jīng)網(wǎng)絡(luò)的發(fā)展,出現(xiàn)了基于深度學習的目標識別,此技術(shù)大幅提高了圖像識別的精準度和效率。在圖像識別過程中將每個圖像按以下方式處理:每次的預測正確時,加強等式;預測不正確時,修改導等式。最后,新構(gòu)建的模型用于新生成的圖像的預測,并且將經(jīng)過目標識別之后的圖像進行最終的輸出。
為圖像分類算法挑選合適的神經(jīng)網(wǎng)絡(luò)模型已經(jīng)越來越重要,高效率的神經(jīng)卷積網(wǎng)絡(luò)模型不但可以使得圖像處理算法變得切實可行,而且還能節(jié)省硬件的計算資源。通常需要依據(jù)數(shù)據(jù)庫質(zhì)量的高低來選擇適合的模型,另外在選擇模型時,還需要注意深度學習和訓練的停止和開始條件、訓練數(shù)據(jù)的數(shù)據(jù)量等參數(shù)。常見的深度卷積神經(jīng)網(wǎng)絡(luò)模型有ZF-Net、VGG、AlexNet和GoogLeNet等。下面簡要介紹常用來進行圖像分類算法的AlexNet模型。
AlexNet網(wǎng)絡(luò)模型在圖像處理領(lǐng)域?qū)⑻卮髷?shù)據(jù)集執(zhí)行圖像分類的算法。該網(wǎng)絡(luò)主要由輸入層、歸一化層、卷積層和全連接層組成,其中卷積層5個,全連接層3個。該網(wǎng)絡(luò)在對圖像進行分類時采用了大尺寸、大步長的卷積對圖像進行采樣,而在其他層上則采用最大匯聚的方法。AlexNet網(wǎng)絡(luò)模型采用分組卷積的策略,在處理器顯存或內(nèi)存容量不足的時候,將每個卷積層的算子分成2個部分分別放在2個處理器上進行處理?;诖?,每個處理器輸出互不相關(guān)的2個結(jié)果,然后將這2個結(jié)果進行合并,將合并后的結(jié)果提供給后面的網(wǎng)絡(luò)層使用。通過以上操作,在AlexNet網(wǎng)絡(luò)中不僅可以解決硬件的存儲容量不夠的問題,還可以提高處理器的處理能力,進而提升了整個網(wǎng)絡(luò)的整體性能。AlexNet網(wǎng)絡(luò)模型在同一特征尺度下利用多個卷積核進行算子計算,為防止由于數(shù)據(jù)的不完整而引起的網(wǎng)絡(luò)模型的泛化性以及網(wǎng)絡(luò)過擬合等問題,在增加訓練時間的前提下,在卷積層后使用了刪除策略,刪除策略使得整個網(wǎng)絡(luò)減少了分枝,刪除了一些與圖像處理不相關(guān)的分量,而保留有用信息,從而提高了卷積核迭代的效率。通過采用AlexNet深度神經(jīng)卷積網(wǎng)絡(luò)模型,使得采集不同的數(shù)據(jù)集更加方便,并且可以處理非常復雜的數(shù)據(jù)集。
傳統(tǒng)的圖像分類算法的基本思路是基于組合特征的提取,此算法將特征提取和圖像分類分開。目前,這種算法已經(jīng)無法滿足人們對于高品質(zhì)圖像的處理要求,因此將神經(jīng)網(wǎng)絡(luò)應(yīng)用于圖像分類算法是一個比較好的思路。
通常神經(jīng)網(wǎng)絡(luò)中的每一層都有若干類似人的大腦的神經(jīng)元組成。卷積層的卷積核定期掃描輸入的圖像信息的特征,將掃描的特征與矩陣中的元素進行相乘并進行求和操作,接著將結(jié)果進行線性卷積。其中卷積核的大小決定著掃描特征的精確度。然后,神經(jīng)網(wǎng)絡(luò)將提取出的特征組成圖的形式并傳遞到池化層進行特征選擇和信息過濾。在池化層,通常可以采用平滑池化、降維池化和混合池化等方法,其中一種方法與卷積層掃描圖像的特征類似,通過池化大小、步長和池化區(qū)域來對特征圖進行池化。具體地,在池化域中選擇特征的最大值或平均值作為計算對象,從而將特征向量的維數(shù)降低,以實現(xiàn)對特征值的采樣,接著對特征圖進行平移、旋轉(zhuǎn)、比例調(diào)節(jié)等變換,以使得其敏感性降低。經(jīng)過池化之后的圖像信號傳遞到全連接層,在該層將進行二次特征提取,以便使得圖像樣本具有很好的容錯性。全連接層將信號通過激勵函數(shù)展開為向量,然后將該向量進行特征值的提取,再進行非線性組合,進而達到學習目的。最后全連接層將處理后的圖像信號傳遞給輸出層進行輸出。
卷積神經(jīng)網(wǎng)絡(luò)雖然能有效地進行圖像信息的分類處理,但是也存在一些需要優(yōu)化和改進的地方:首先在訓練卷積神經(jīng)網(wǎng)絡(luò)時,神經(jīng)網(wǎng)絡(luò)中其他各層的參數(shù)會受到相鄰層參數(shù)的影響。而且神經(jīng)網(wǎng)絡(luò)模型的層數(shù)越多,這種影響就越大,這被稱為“梯度彌散”。其次,由于網(wǎng)絡(luò)層數(shù)增加,參數(shù)也會增加,神經(jīng)算子的計算就會超出預期的目標,造成圖像信息的丟失,這被稱為過擬合問題。另外,這種方式的圖像分類處理需要強大的計算機硬件的處理能力。
卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用于圖像分類處理可以采用下述的方法進行優(yōu)化。
第一,采取數(shù)據(jù)擴充的方法,以便防止過度擬合現(xiàn)象的發(fā)生。具體地,可以通過對圖像的特征向量進行上下和左右翻轉(zhuǎn),如此操作會將原始圖像的特征值擴大到4倍。另外還通過對圖像的特征向量做伸縮變換和尺度變換,這樣操作不會改變原始圖像的特征值。經(jīng)過上述操作,當伸縮量或者尺度發(fā)生變化時,可以有效防止過度擬合現(xiàn)象的發(fā)生。
第二,為了簡化計算過程,進而降低圖像分類算法對硬件的依賴,可以通過對多層網(wǎng)絡(luò)聚集的目標區(qū)域進行預篩選,將與圖像處理密切相關(guān)的區(qū)塊或區(qū)域進行保留,而刪除那些與圖像分類算法沒有關(guān)系的區(qū)塊或區(qū)域,從而縮短了系統(tǒng)響應(yīng)時間,提高了硬件運行的效率,節(jié)省了硬件的計算內(nèi)存和資源。
第三,在全連接輸出層后面布置一個歸一化層,利用這個歸一化層對所有輸出的圖像特征向量進行統(tǒng)一的規(guī)則化,以便將所有輸出的圖像數(shù)據(jù)進行標準化的整理,這樣的輸出就會有相同的函數(shù)分布。經(jīng)過上述操作,從而避免了過度的梯度彌散現(xiàn)象的發(fā)生。
下面將說明如何對特征向量進行統(tǒng)一化規(guī)則。
第一步,輸入圖像的特征向量為={1,…,n},其中學習參數(shù)為采樣因子。
第二步,輸出經(jīng)過轉(zhuǎn)變的向量{i=r,β(i)},其中為當前池化串口的橫向特征像素。
經(jīng)過上述的神經(jīng)網(wǎng)絡(luò)結(jié)合圖像分類算法對圖像進行處理之后,通過系統(tǒng)仿真和實驗,采用AlexNet的神經(jīng)網(wǎng)絡(luò)學習框架,對一個包含50人的人臉數(shù)據(jù)庫的數(shù)據(jù)進行分析,這些數(shù)據(jù)包括人臉形狀的不同、表情的變化、姿態(tài)的細微變化等。為了避免過度擬合,將特征圖像的向量上下左右翻轉(zhuǎn),使擴展的圖像數(shù)比原來多4倍,最終使得分析的數(shù)據(jù)集包含了2 000個像素。經(jīng)過對檢測率和誤檢率不同的閾值數(shù)值的算法進行對比,多維度卷積網(wǎng)絡(luò)應(yīng)用于圖像分類算法優(yōu)于但單維度卷積神經(jīng)網(wǎng)絡(luò)。進一步地,優(yōu)化改進的卷積神經(jīng)網(wǎng)絡(luò)算法對圖像的處理,尤其是對大量數(shù)據(jù)人臉圖像的分類效果明顯優(yōu)于其他算法,并且其穩(wěn)定性和抗干擾性也越強。
通過理論和實驗分析,基于卷積神經(jīng)網(wǎng)絡(luò)的圖像分類算法使圖像處理更加方便,處理精度更好,圖像更加清晰。而且通過對卷積神經(jīng)網(wǎng)絡(luò)進行優(yōu)化和改進,進一步抑制了過度擬合現(xiàn)象和“梯度彌散”現(xiàn)象的發(fā)生。實驗結(jié)果表明,深度卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用于圖像分類處理起到了較好的效果。
[1]孫雨萌.深度學習在計算機視覺分析中的應(yīng)用分析[J].中國新通信,2018,20(23):169-171.
[2]陳奇星.基于卷積神經(jīng)網(wǎng)絡(luò)的圖像分類算法研究[D].南昌:南昌航空大學,2019.
[3]呂朦.基于多尺度卷積神經(jīng)網(wǎng)絡(luò)的圖像分類算法研究[D].武漢:湖北工業(yè)大學,2019.
周超(1976—),男,天津薊縣人,碩士,銅陵學院電氣工程學院助教,主要研究方向為通信與信息系統(tǒng)。
2018年度安徽高校自然科學研究項目“混合遺傳卷積神經(jīng)網(wǎng)絡(luò)在智能制造系統(tǒng)圖像識別技術(shù)中的研究與應(yīng)用”(編號:KJ2018A0484)
2095-6835(2020)20-0033-02
TP391.41
A
10.15913/j.cnki.kjycx.2020.20.011
〔編輯:王霞〕