孫世宇,李 喆,李建增,胡永江
(1.山東華宇工學(xué)院,山東 德州 253034;2.陸軍工程大學(xué)石家莊校區(qū)無人機(jī)工程系,石家莊 050003)
近年來,無人機(jī)攝像技術(shù)發(fā)展迅速,特別在航空攝影、地形勘測、消防反恐和軍事偵察等多個領(lǐng)域被廣泛應(yīng)用[1]。但無人機(jī)在成像過程中易受到惡劣天氣、云臺抖動、相對運(yùn)動和成像設(shè)備故障等因素影響,導(dǎo)致拍攝的圖像模糊降質(zhì),嚴(yán)重影響信息的獲取質(zhì)量[2]。圖像復(fù)原技術(shù)通過分析圖像的退化機(jī)理,利用先驗知識或假設(shè),建立降質(zhì)模型,可以魯棒高效地復(fù)原模糊圖像,提高圖像清晰度[3]。傳統(tǒng)圖像復(fù)原多建立在模糊類型已知的條件下,研究側(cè)重有針對性地引入先驗條件實(shí)現(xiàn)模糊復(fù)原,未過多考慮實(shí)際情況中降質(zhì)因素復(fù)雜、模糊類型識別困難的問題,制約了圖像復(fù)原技術(shù)的應(yīng)用。
圖像模糊類型識別是根據(jù)不同模糊圖像所具有的不同特征,識別模糊退化類型的過程。其主要解決圖像模糊特征提取復(fù)雜、分類困難的問題。模糊類型的準(zhǔn)確識別,決定了后續(xù)圖像采取何種模糊復(fù)原方法,對模糊圖像的快速、魯棒復(fù)原起到重要作用。因此,研究一種無人機(jī)圖像模糊類型識別方法具有重要的意義。
在圖像模糊類型識別方面,學(xué)者做了大量工作:Shi 等人[4]提出一種基于頻譜分析的運(yùn)動離焦混合模糊識別方法。首先求得模糊圖像的頻譜圖,然后通過觀察運(yùn)動、離焦和混合模糊圖像的頻譜差異判定模糊類型。該方法對模擬模糊圖像具有較好的識別效果,但抗噪性較差。Xu[5]提出一種基于倒譜的運(yùn)動離焦模糊識別方法。首先對模糊圖像倒譜圖進(jìn)行處理區(qū)域選擇、二值化等預(yù)處理,然后根據(jù)二值化倒譜圖像素點(diǎn)的不同分布差異判定模糊類型。該方法一定程度改善了方法的抗噪性能,但仍是人工觀察圖像間差異,自動化程度較低。Duan 等人[6]提出一種改進(jìn)頻譜分析的模糊識別方法。首先對頻譜圖進(jìn)行去噪、邊緣增強(qiáng)、二值化和形態(tài)學(xué)濾波,增強(qiáng)不同類型模糊圖像間頻譜差異,然后用形狀特征提取中的形狀因子作為判別依據(jù),通過大量的實(shí)驗計算出運(yùn)動模糊和離焦模糊圖像的形狀因子,最后利用形狀因子作為閾值判斷兩種模糊類型。該方法自動化程度明顯提升,但識別精度不高。Han 等人[7]提出一種結(jié)合霍夫變換的離焦運(yùn)動模糊識別方法。首先提取模糊圖像對數(shù)頻譜圖的邊緣信息,然后對邊緣信息圖像進(jìn)行霍夫變換,最后比較霍夫變換矩陣的亮點(diǎn)數(shù)實(shí)現(xiàn)兩類模糊圖像的區(qū)分。該方法進(jìn)一步提高了識別準(zhǔn)確率,但類型識別種類過少。Yin 等人[8]提出一種利用概率神經(jīng)網(wǎng)絡(luò)鑒別離焦、矩形、運(yùn)動和高斯模糊的識別方法。首先將頻譜圖進(jìn)行預(yù)處理,轉(zhuǎn)化為概率神經(jīng)網(wǎng)絡(luò)的一維輸入矢量,然后訓(xùn)練概率神經(jīng)網(wǎng)絡(luò)模型,最后采用分塊處理的方法實(shí)現(xiàn)模糊分類。該方法實(shí)現(xiàn)了多種模糊類型間的識別,且識別準(zhǔn)確率較高,但由于概率神經(jīng)網(wǎng)絡(luò)自身的局限性,導(dǎo)致訓(xùn)練過于復(fù)雜。
方法流程分為4 個步驟,如圖1 所示。
圖1 方法流程圖
步驟1 樣本預(yù)處理。首先將已標(biāo)注的彩色模糊圖像轉(zhuǎn)化成灰度圖像,并經(jīng)過快速傅里葉變換得到其頻譜圖,然后利用鄰近插值法規(guī)格化所有頻譜圖為256×256,組成頻譜樣本集,最后將頻譜樣本集分為訓(xùn)練樣本和測試樣本,方便之后神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練和測試。
步驟2 網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計。參考經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),結(jié)合實(shí)際應(yīng)用需求,提出了一種適用于模糊圖像灰度頻譜圖分類識別的新網(wǎng)絡(luò)結(jié)構(gòu)。
步驟3 網(wǎng)絡(luò)模型訓(xùn)練。利用步驟1 中的訓(xùn)練樣本對設(shè)計的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,通過網(wǎng)絡(luò)前向傳播與反向傳播的交替處理,直至滿足收斂條件或達(dá)到預(yù)先設(shè)定的訓(xùn)練次數(shù)。
步驟4 模糊類型識別。將步驟1 中的測試樣本送入訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)模型進(jìn)行識別,得到識別結(jié)果。
卷積神經(jīng)網(wǎng)絡(luò)[9]是一種具有卷積結(jié)構(gòu)的深度神經(jīng)網(wǎng)絡(luò),Lecun 等人[10]最早將其應(yīng)用于手寫數(shù)字識別,其對輸入的二維圖像數(shù)據(jù),具有較強(qiáng)的畸變魯棒性。將卷積神經(jīng)網(wǎng)絡(luò)引入圖像模糊類型識別,不僅可以提高模糊類型的識別精度,還可以簡化傳統(tǒng)模糊類型識別前繁瑣的預(yù)處理過程。卷積神經(jīng)網(wǎng)絡(luò)主要分為特征提取網(wǎng)絡(luò)和分類器兩部分,本文設(shè)計的結(jié)構(gòu)模型如圖2 所示。
圖2 本文卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
本文特征提取網(wǎng)絡(luò)由3 個卷積層(convolutional layer)和2 個池化層(pooling layer)交替組成,具體結(jié)構(gòu)如表1 所示。
表1 特征提取網(wǎng)絡(luò)結(jié)構(gòu)
卷積層由多個特征圖組成,特征圖又由多個神經(jīng)元組成,神經(jīng)元通過卷積核與上一層特征圖局部連接[11]。卷積層通過卷積操作進(jìn)行特征提取,其中層數(shù)越高提取到的特征越高級。卷積層中特征圖被卷積核卷積,然后通過一個激活函數(shù),得到輸出特征圖:
式中,x 為特征圖,M 為輸入的圖像組,f(·)為激活函數(shù),k 為卷積核,b 為偏置。在同一個輸入輸出的特征圖中卷積網(wǎng)絡(luò)的權(quán)值共享,激活函數(shù)一般為非線性函數(shù),為更好地提升卷積網(wǎng)絡(luò)性能,本文使用ReLU(Rectified linear unit)函數(shù)作為激活函數(shù)。
局部連接和權(quán)值共享是卷積神經(jīng)網(wǎng)絡(luò)的優(yōu)勢,局部連接減少了權(quán)值訓(xùn)練量,有效降低了網(wǎng)絡(luò)過擬合現(xiàn)象的發(fā)生,而權(quán)值共享降低了模型復(fù)雜度,更有利于下一步的模型訓(xùn)練[12]。
通常根據(jù)實(shí)際情況設(shè)置卷積層層數(shù),層數(shù)過少可能會忽略有利于網(wǎng)絡(luò)學(xué)習(xí)的特征,影響訓(xùn)練模型的識別精度,而盲目增加層數(shù),又會增大訓(xùn)練參數(shù)和時間,同樣不利于模型訓(xùn)練。
池化層是一個降采樣的過程,緊跟在卷積層之后,目的是為了減弱卷積層出現(xiàn)的信息冗余。池化層通過二次抽樣,降低特征圖的“分辨率”,以此獲得空間不變性,減少網(wǎng)絡(luò)敏感度,提高網(wǎng)絡(luò)模型的魯棒性[13-14]。在降采樣的過程中,首先將圖像分塊,然后按照特定方法計算每塊區(qū)域的值,最后將計算結(jié)果重新組合,得到降采樣圖像。常用的池化策略有最大池化、均值池化和隨機(jī)池化[15],本文選擇最大池化策略設(shè)計特征提取網(wǎng)絡(luò)。
特征提取網(wǎng)絡(luò)部分提取到的特征圖需要輸入到一個權(quán)值可微的分類器中,從而使整個卷積神經(jīng)網(wǎng)絡(luò)能夠基于梯度學(xué)習(xí)進(jìn)行訓(xùn)練。本文使用的Softmax 分類器屬于單層神經(jīng)網(wǎng)絡(luò)分類器,是目前解決多分類問題常用的分類器模型,其損失函數(shù)和梯度計算公式分別為:
為進(jìn)一步對網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行優(yōu)化,在分類器中加入Dropout 層,以此減小網(wǎng)絡(luò)運(yùn)算量,降低數(shù)據(jù)過擬合的風(fēng)險,進(jìn)一步增強(qiáng)模型的泛化能力。在網(wǎng)絡(luò)訓(xùn)練的過程中,Dropout 技術(shù)按照一定的概率將神經(jīng)元從網(wǎng)絡(luò)中暫時丟棄置零,以此實(shí)現(xiàn)每輪迭代訓(xùn)練的網(wǎng)絡(luò)和更新的參數(shù)不同[16]。
網(wǎng)絡(luò)模型訓(xùn)練[17]是一個在高維曲面找全局最優(yōu)解的有監(jiān)督訓(xùn)練過程,主要包括信息前向傳播和誤差反向傳播兩個過程。在網(wǎng)絡(luò)模型訓(xùn)練階段,兩個過程反復(fù)交替進(jìn)行,直至滿足收斂條件或達(dá)到預(yù)先設(shè)定的訓(xùn)練次數(shù)。
前向傳播是利用上一層輸出計算下一層輸出的方法,其目的是得到網(wǎng)絡(luò)的實(shí)際輸出,進(jìn)而求出實(shí)際輸出與目標(biāo)輸出之間的誤差。在前向傳播的過程中,訓(xùn)練樣本經(jīng)過特征提取網(wǎng)絡(luò)逐層的卷積與池化處理,得到特征子圖,將其轉(zhuǎn)換成一維特征矢量,再由全連接的輸出層進(jìn)行分類識別,得到樣本的分類結(jié)果。
反向傳播是神經(jīng)網(wǎng)絡(luò)有監(jiān)督訓(xùn)練中常用的方法,其目的是通過訓(xùn)練樣本和期望輸出得到網(wǎng)絡(luò)模型的最佳參數(shù),從而使實(shí)際輸出更加逼近目標(biāo)值。反向傳播主要基于梯度下降法,首先隨機(jī)初始化網(wǎng)絡(luò)參數(shù),然后利用極小化誤差法通過反向傳播調(diào)整權(quán)值與閾值。神經(jīng)網(wǎng)絡(luò)各層梯度計算過程如下所示。
卷積層誤差靈敏度為:
式中,β 為池化層的連接權(quán)值,z 為上一層的輸出,up(·)為上采樣。通過卷積層誤差靈敏度可進(jìn)一步求得誤差相對于卷積核和偏置的梯度:
式中,u,v 為特征圖位置,P 為特征圖經(jīng)過k 卷積運(yùn)算的區(qū)域。
池化層誤差靈敏度的計算分為兩類:當(dāng)上一層的輸出為全連接層時,可以直接利用基本反向傳播算法進(jìn)行計算;當(dāng)上一層的輸出為卷積層時,偏置的梯度計算同卷積層,而權(quán)值β 的梯度為:
4.1.1 實(shí)驗平臺參數(shù)
筆記本計算機(jī):聯(lián)想拯救者R720-15IKB;CPU:Inter (R)-Core (TM)i7-7700HQ 2.80 GHz;GPU:NVIDIA GeForce GTX1050;內(nèi)存:8 G;操作系統(tǒng):Ubuntu16.04;編程環(huán)境:Opencv3.1.0,Cuda8.0,Caffe(python 接口)。
4.1.2 數(shù)據(jù)集
實(shí)驗采用DJI Phantom 3 Professional 型無人機(jī)拍攝的低空模糊圖像集進(jìn)行實(shí)驗,模糊圖像大小為4 000×3 000,包含運(yùn)動模糊、離焦模糊和大氣散射模糊3 種模糊類型,表2 為各模糊類型訓(xùn)練樣本和測試樣本的數(shù)目,圖3 為模糊圖像和相對應(yīng)的灰度頻譜圖示例。
表2 實(shí)驗數(shù)據(jù)組成
圖3 模糊圖像和相對應(yīng)的灰度頻譜圖示例
需要說明的是,由于是在真實(shí)環(huán)境下采集的數(shù)據(jù),模糊圖像數(shù)據(jù)集中的圖像受多種降質(zhì)因素影響,樣本數(shù)據(jù)通過主動干預(yù)獲取,以最顯著的模糊影響因素對數(shù)據(jù)進(jìn)行分類標(biāo)注。
4.1.3 網(wǎng)絡(luò)模型參數(shù)
網(wǎng)絡(luò)模型參數(shù)直接影響模型識別效果,本文的網(wǎng)絡(luò)模型已在上文給出,部分參數(shù)如下頁表3 所示。
4.1.4 實(shí)驗過程
無人機(jī)模糊圖像類型識別,首先利用訓(xùn)練樣本集對提出的卷積神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練,然后使用訓(xùn)練好的網(wǎng)絡(luò)模型對測試樣本集中的模糊圖像進(jìn)行測試,通過得到的模糊類型識別率,驗證本文所提方法的魯棒性與實(shí)用性。
表3 參數(shù)設(shè)置
圖4 分別給出了在網(wǎng)絡(luò)訓(xùn)練中的損失值變化曲線和準(zhǔn)確率變化曲線。
圖4 網(wǎng)絡(luò)訓(xùn)練效果圖
由圖4 分析可得:1)提出的網(wǎng)絡(luò)結(jié)構(gòu)收斂速度較快,大概在1 000 次迭代時趨于收斂;2)網(wǎng)絡(luò)模型參數(shù)設(shè)置較為合理,最終訓(xùn)練模型的損失值趨近于0,準(zhǔn)確率趨近于1。見表4 所示。
表4 識別混淆矩陣
由表4 分析可知:1)訓(xùn)練得到的網(wǎng)絡(luò)模型對無人機(jī)圖像模糊類型整體識別率為99.52%,模型識別精度較高;2)提出的網(wǎng)絡(luò)結(jié)構(gòu)可以較好地適用于無人機(jī)模糊圖像,提取到的目標(biāo)特征較為有效;3)本文所提方法魯棒性較強(qiáng),實(shí)用性較高。
本文提出一種基于卷積神經(jīng)網(wǎng)絡(luò)的無人機(jī)圖像模糊類型識別方法,并通過理論與實(shí)驗驗證了算法的可行性與優(yōu)勢。主要得到以下結(jié)論:1)將卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用于圖像模糊類型識別,取得了較好的識別效果,驗證了所提方法的可行性;2)將模糊圖像轉(zhuǎn)化為灰度頻譜圖再進(jìn)行分類識別,可以取得較好的模糊識別效果;3)設(shè)計的卷積神經(jīng)網(wǎng)絡(luò)模型對無人機(jī)運(yùn)動、離焦和大氣3 種模糊圖像的識別準(zhǔn)確率較高,滿足實(shí)際的應(yīng)用需求,具有較強(qiáng)的魯棒性和實(shí)用性。