2019亚洲日韩新视频_97精品在线观看_国产成人精品一区二区_91精品网站在线观看

基于卷積神經網絡的無人機識別方法仿真研究

來源:期刊VIP網所屬分類:農業科技時間:瀏覽:

  摘 要:為了提高卷積神經網絡(CNN)的泛化性和魯棒性,改善無人機航行時識別目標圖像的精度,提出了一種CNN與概率神經網絡(PNN)相結合的混合模型。利用CNN提取多層圖像表示,使用PNN提取特征對圖像進行分類以替代CNN內部的BP神經網絡,采用均方差和降梯度法訓練模型,通過將預處理的圖像傳輸到CNN-PNN模型,對圖像紋理和輪廓進行分類識別,并將此模型的仿真結果與卷積神經網絡模型、卷積神經網絡-支持向量機模型的結果進行對比。仿真結果表明,與其他兩種模型相比,CNN-PNN模型具有更好的精準度,識別率高達96.30%。因此,CNN-PNN模型能夠快速有效地識別圖像,準確度和實時性較高,在圖像識別等方面具有很好的應用前景。

  關鍵詞:圖像識別;無人機識別;降梯度法;概率神經網絡;卷積神經網絡

科技期刊投稿

  《滇西科技師范學院學報》(季刊)創刊于1992年,是由滇西科技師范學院主辦的學術刊物。主要欄目:民族學研究、歷史學研究、語言學研究、教育學研究、經濟學研究、學術交流等。

  目標識別是當前人工智能領域不可或缺的一部分,而無人機識別作為目標識別的重要部分,在現代戰爭乃至生活等方面都有著重要的應用[1-4]。隨著人工智能的迅速發展,無人機識別系統將會扮演重要的角色。

  但是,無人機識別的準確率一直是影響該技術應用的重要因素[5-6],如何充分利用已有信息,使設計出的無人機識別準確率更高,是當前該領域的重要研究方向。

  CIRESAN等[7]提出了一種利用Hu不變矩進行特征值提取和交通標志檢測的方法,該方法快速可靠,識別率高,但它所提取的是低維特征,沒有層次信息。SHEN等[8]提出了一種利用灰度一致性(GLCM)進行拼接圖像偽造檢測的方法,該算法采用灰度共生方法提取圖像的紋理信息,并利用學習到的表示進行識別。該方法雖優于僅從圖像中提取低維特征向量的方法,但只能手工提取低維特征作為Hu不變矩,需要與其他方法相結合對其進行改進。YIN等[9]提出了一種利用神經網絡模型進行視覺模式識別的方法,該網絡被命名為“新認知”。實驗結果表明,該網絡在沒有任何類別指令的情況下運行良好。QIU等[10]提出了一種利用誤差梯度訓練CNN的方法,取得了較好的效果。該方法利用CNN模型提取圖像表示,利用CNN內部的BP神經網絡分類器對圖像進行分類。這種方法幾乎是第一次使用網絡本身只學習圖像的特征與圖像標簽。事實證明,CNN的學習能力是強大的。由于CNN內部的BP神經網絡存在一定的局限性,NIU等[11]提出了適用于手寫體數字識別的CNN-SVM模型,在CNN模型中用支持向量機(support vecto machine,SVM)代替BP神經網絡分類器。ZHENG等[12]提出了一種利用多注意卷積神經網絡(MA-CNN)進行精細圖像識別的局部學習方法,重點研究了零件定位和細粒度特征學習。PORIA等[13]提出了一種CNN-SVM與主成分分析(PCA)相結合的方法,取得了良好的效果,該方法旨在提高支持向量機的性能,不再局限于手寫數字,在紋理、圖像分類、圖像識別等方面有很好的應用前景。以上模型和方法在圖像識別領域都取得了不錯的效果。在上述方法的啟發下,筆者提出了一種CNN-PNN混合模型。

  1 問題建模

  1.1 CNN-PNN模型的構建

  本文對原始CNN圖像分類模型進行改進,使用一個簡單的CNN模型進行圖像特征提取,利用PNN模型進行分類,在仍以CNN為特征提取器的情況下,用性能較好的PNN代替BP神經網絡。PNN具有結構簡單、收斂速度快、應用范圍廣等優點,與其他圖像識別方法相比,可以提高識別精度,擴大卷積神經網絡的應用范圍。

  整個模型由CNN特征提取器和PNN分類器組成。首先,將樣本圖像輸入到CNN-PNN的輸入層,經過多次卷積和下采樣,得到大量的特征圖像。然后,由模型將圖像擴展為列向量,即從樣本圖像中提取特征向量,同時保留與特征向量完全連接的輸出層,用于CNN特征提取器的訓練。最后,分類器根據特征向量輸出最終結果。CNN-PNN結構圖見圖1。

  1.2 特征提取器工作原理

  在所提出的方法中CNN充當特征提取器,包括輸入層、隱含層、隱含單元和輸出層4個部分[14]。

  1)輸入層 利用原始CNN模型進行特征提取,將樣本圖像輸入至模型的輸入層即可。

  2)隱含層 由卷積層和降采樣層組成,用于對輸入層圖像進行卷積濾波和降采樣操作。卷積層進行特征提取,其計算形式為

  Xlj=f(∑[DD(X]i∈Mj[DD)]Xl-1i·klij+Bl)。(1)

  式中:所在層數用l表示;卷積核用k表示;Mj為輸入層的感受野; B為偏置項;f為激活函數,采用Sigmoid 函數。圖像尺寸會根據降采樣窗口的步長發生相應改變,采樣層的計算形式為

  Xlj=f(βljp(Xl-1j)+Blj)。(2)

  式中:p為采樣函數;β為權重系數。

  3)隱含單元 將一系列操作后得到的特征圖像變換為一列向量,即是提取到的最終特征向量。

  4)輸出層 輸出層的作用為訓練CNN的特征提取。

  1.3 分類器工作原理

  該模型采用PNN作為圖像分類器。PNN是由SPEEHT博士首先提出的一種人工神經網絡,具有訓練容易、收斂速度快、適用于實時處理等優點,且其隱含層采用徑向基的非線性映射函數,考慮了不同類別模式樣本的交錯影響,具有很強的容錯性[15-16]。在樣本數據的支撐下,概率神經網絡能收斂到貝葉斯(Bayes)分類器,沒有BP網絡的局部極小值問題[17]。

  概率神經網絡是由徑向基函數網絡發展起來的前饋神經網絡,其理論基礎是貝葉斯決策理論。網絡結構由輸入層、模式層、求和層和輸出層組成[18],結構如圖2所示。

  輸入層將訓練樣本傳遞到輸入層網絡中,輸入特征向量與訓練集中各模型之間的匹配關系在模式層中計算,其個數等于樣本向量的維數,根據式(3)得到各模式單元層的輸出。

  ij=[SX(]1[]2πd/2[SX)]exp[-[SX(](x-xij)τ(x-xij)[]2σ2[SX)]]。(3)

  式中:d為模式向量的維數;σ為平滑參數;xij為神經元向量。

  求和層是得到的每個模式的概率密度估計,其輸出與基于核的各單元概率密度估計成正比。求和層神經元通過總結和平均屬于同一類的所有神經元的輸出,來計算模式x被劃分為Ci的最大可能性。

  Pi=[SX(]1[](2π)d/2σd[SX)][SX(]1[]Ni[SX)]∑[DD(]Ni[]j=1[DD)]exp[-[SX(](x-xij)τ(x-xij)[]2σ2[SX)]]。(4)

  Ci類的樣本總數為Ni,如果每個類的先驗概率相同,且每個類的錯誤決策損失相同,則決策層單元根據所有求和層神經元輸出的Bayes決策規則對模式x進行分類。

  輸出層是在概率密度估計中選擇一個神經元最大后驗概率密度作為整個系統的輸出。輸出層神經元是一種競爭神經元,每個神經元對應一種數據類型,這是一種分類[19]。

  1.4 CNN-PNN模型訓練方法

  CNN提取器的訓練方式與傳統CNN訓練方式相同,流程如圖3所示。

  首先將所有卷積核中的權值和偏差進行初始化。通過訓練集的前向傳播得到輸出o。然后,CNN可以通過比較輸出o和標簽y來了解誤差E。假設樣本集的目錄是N,樣本類型的數目是c,則可以根據式(5)計算誤差E。

  Ep=[SX(]1[]2[SX)]‖yp-op‖2=[SX(]1[]2[SX)]∑[DD(]m[]j=1[DD)](ypj-opj)2。(5)

  CNN根據E值判斷模型收斂與否。如果收斂,則訓練完成;如果沒有,則計算輸出層的殘差δ。給定激活函數f,可以從式(6)得到殘差。

  δ(nl)=[SX(][]z(nl)i[SX)][SX(]1[]2[SX)]‖op-yp‖2=-(y-a(nl))·f′(z(nl))。(6)

  每一層的權值和偏重是通過學習率α的更新來完成的。

  W(l)=W(l)-α[SX(][]W(l)[SX)]J(ω,b)=W(l)-α·δ(l+1)(α(l))T,(7)

  bi=b(l)i-α[SX(][]b(l)i[SX)]J(ω,b)=bli-α·δ(l+1)。(8)

  PNN分類器的訓練過程如圖4所示。將訓練的圖像送入訓練完畢的CNN特征提取器,然后將得到的特征向量與其對應的標簽一同送入未訓練的PNN分類器中,得到最終訓練完畢的PNN分類器。

  2 仿真結果及分析

  2.1 仿真設置

  通過識別各個類型的飛機樣本來測試CNN-PNN的性能。實驗是在Matlab2016a平臺上運行的,計算機配置為Intel(R)Cores(TM)2.8 GHz,內存8 GB,Windows7 64 位操作系統。數據集所用圖像和標簽采集于FGVC-Aircraft數據集,共采集6 000張飛機圖像,其中包含3類不同的飛機,每種包含2 000個樣本,其中1 500個樣本用來培訓,4 500個樣本用于測試。飛機輪廓樣本共含有3種,每類抽取1 000張圖像組成含有3 000幅的數據集,其中1 000幅用來培訓,2 000幅用來測試。在此之前做一些預處理的工作來保證實驗的準確性。

主站蜘蛛池模板: 鞍山市| 万安县| 沁源县| 同仁县| 师宗县| 阿克苏市| 清丰县| 湄潭县| 南康市| 湄潭县| 开封县| 通州市| 吉安县| 弥渡县| 榆林市| 大英县| 南阳市| 石柱| 若羌县| 甘南县| 武平县| 南江县| 汕头市| 美姑县| 陕西省| 青田县| 依安县| 南投市| 崇仁县| 淮北市| 周至县| 宝坻区| 京山县| 织金县| 张掖市| 呼伦贝尔市| 宣城市| 井陉县| 金塔县| 壤塘县| 惠水县|