魏湧明
(空軍航空大學航空航天情報系長春130022)
基于卷積神經(jīng)網(wǎng)絡的航拍圖像定位研究
魏湧明
(空軍航空大學航空航天情報系長春130022)
論文采用遷移學習的思想,通過制作研究區(qū)域內帶有地理標記的圖像做為數(shù)據(jù)集來微調Caffenet,使其適應航拍圖像分類任務。然后利用訓練好的卷積神經(jīng)網(wǎng)絡識別無人機獲取的航拍圖像,從而確定航拍圖像中心和飛機的經(jīng)緯度,實現(xiàn)圖像定位。在網(wǎng)絡的訓練過程中通過反復實驗調參,得到了最優(yōu)的識別結果,并且在高分辨率地景的skyline環(huán)境下進行飛行仿真,驗證了卷積神經(jīng)網(wǎng)絡識別的準確率和進行圖像定位的可行性。
遷移學習;卷積神經(jīng)網(wǎng)絡;圖像分類;圖像定位
Class NumberTP391.41
近年來,深度學習憑借其驚人的效果在很多領域取得了突破性進展[1]。其中卷積神經(jīng)網(wǎng)絡(Convolutional Neural Networks,CNN)因其在學習圖像高層次特征上的優(yōu)勢,被廣泛地應用到圖像分類、目標檢測、人臉識別等[2]與圖像相關的各類任務中。2014年Jianxiong Xiao等提出,Over-feat[3]作為一個在ImageNet[4]圖像上訓練的CNN,其性能優(yōu)于其他方法,包括GIST、SIFT、HOG和LBP。證明了CNN在場景分類任務中取得了突破。這也是推動研究者使用CNN進行圖像地理定位研究的重要原因。2015年,Workman S[5]等發(fā)表的論文中,成功地利用深度神經(jīng)網(wǎng)絡來處理交叉視角下的圖像定位問題。2016年,Weyand T[6]等將定位問題看作一種圖像分類問題,把地球表面劃分為成千上萬個不同尺度的地理單元,并且使用數(shù)百萬帶有地理標記的圖像來訓練卷積神經(jīng)網(wǎng)絡。
從上述研究中可以看出CNN在提取大尺度空間圖像特征上的優(yōu)勢。因此,我們希望利用CNN,進行航拍圖像定位的相關研究。本文將以Weyand T[6]等的思路來研究航拍圖像定位,將圖像定位問題轉化為一種圖像分類問題,制作研究區(qū)域內帶有地理標記的圖像做為數(shù)據(jù)集來訓練網(wǎng)絡,然后利用訓練好的網(wǎng)絡識別無人機獲取的航拍圖像,從而確定航拍圖像中心的經(jīng)緯度。由于是正射投影,無人機鏡頭中心與圖像中心的經(jīng)緯度相同,因此,也可間接得到飛機的經(jīng)緯度。
在這個問題上,在國內沒有相關的論文發(fā)表,國外也只是少數(shù)文章略有相似。在面對一個新的問題時,我們要盡量簡化問題。本文將以無人機的垂直偵察,做為應用背景和研究切入點,研究區(qū)域劃定在吉林省長春市市區(qū)范圍。研究意義在于使無人機更加智能化,像飛行員在自己熟悉的空域中只通過眼睛就能判斷飛機位置一樣,可以不利用其它導航裝置,只通過機載光電球獲取的數(shù)字圖像來判斷自身的位置,實現(xiàn)航空圖像定位。
數(shù)據(jù)集是深度學習的關鍵,也正是imagenet等大型公開數(shù)據(jù)集發(fā)布,卷積神經(jīng)網(wǎng)絡才得以快速發(fā)展。因此,數(shù)據(jù)集的制作顯得尤重要。本文從谷歌地球上獲取了2013年4月、2015年10月與2016年11月的吉林省長春市地區(qū)的衛(wèi)星遙感圖像做為圖像源。
2.1 投影轉換
由于從谷歌地球上獲取的.dat文件為等經(jīng)緯度投影,將其釋放為圖像后,在吉林省長春市地區(qū)的經(jīng)度方向上地物形變嚴重。本文為了保證地物特征的形狀不變性,采用正軸等角圓柱投影的投影方式,即墨卡托投影[7],作為一種等角投影,可以保證地物的形狀特征與人們真實觀察到的相一致。因此,采用雙線性內插法實現(xiàn)將圖像的投影方式轉換為墨卡托投影。
2.2 數(shù)據(jù)相關參數(shù)
將吉林省長春市市區(qū)的長方形區(qū)域作為研究對象。經(jīng)緯度范圍:左下角為東經(jīng)125.156249645352,北緯43.771094355985;右上角為東經(jīng)125.507812145352,北緯44.024422055603。圖像瓦片級數(shù)為15級,比例尺為1:36111.91;空間分辨率為9.55m。研究面積共794.98km2。
2.3 數(shù)據(jù)分類方法
參照第15級圖像瓦片的劃分方式將長春市區(qū)分成256個大小相同的正方形區(qū)域,作為讓卷積神經(jīng)網(wǎng)絡識別的256類區(qū)域,每一類區(qū)域對應一個15級的瓦片圖像,像素值為256*256,對應地面范圍為1.76km*1.76km。選用這種劃分方法主要出于一點考慮:參照捕食者無人機[8]的參數(shù),設定本文中的無人機以垂直偵照收容面積為2.0km*2.2km作為標準,因而采用這種1.76km*1.76km的區(qū)分方式,可以保證在研究區(qū)域內,每一張偵照圖像中至少包含一類區(qū)域的大部分特征。但因為飛行方向和拍照區(qū)域是隨機的,所以航拍圖像會包含若干類區(qū)域,而當具有明顯特征的地物處在區(qū)域之間的邊界處,屬于若干個區(qū)域時,我們需要確定它歸屬于哪一個區(qū)域。這就要求在提取每一個區(qū)域的圖像數(shù)據(jù)時,一定要考慮在邊界附近的跨區(qū)域地物特征。需要用人工的先驗知識進行篩選,以每一塊區(qū)域為中心時,將256*256大小的區(qū)域擴展為288* 288的大小,如圖1所示,深色區(qū)域為擴展后的區(qū)域。在其四個角的方向上及中心位置上,裁剪出256*256的區(qū)域做為訓練樣本[4],如圖2所示在深色區(qū)域上裁剪出256*256的淺色區(qū)域。然后對裁剪后的圖片進行篩選判斷,若存在相對明顯的地物特征即歸為此類,相鄰區(qū)域便不以該特征作為定位特征,并將每幅圖像對應區(qū)域的經(jīng)緯度作為訓練標簽。
2.4 數(shù)據(jù)增強
雖說有三個圖像源,但每類區(qū)域對應的數(shù)據(jù)量依然很小,所以要進行數(shù)據(jù)增強,才能夠滿足訓練網(wǎng)絡的需求。
1)不同的季節(jié)或一天中不同拍照時間獲取的圖像色調,亮度和飽和度均有不同的變化,首先變換圖像不同的亮度、色調、飽和度[9]。
2)考慮到飛行的不同方向,保證圖像識別過程中旋轉和傾斜不變性,對圖像進行不同角度的傾斜,并且進行垂直和水平圖像旋轉[9]。
3)考慮到雨、雪、霧等天氣情況,適當增加高斯噪聲。
4)將288*288的圖像裁剪成256*256大小[10],實現(xiàn)一變多,增加樣本數(shù)量。
5)為了只保留圖像主要的形態(tài)信息,使用pca方法處理圖像去掉冗余信息[4]。
通過以上五種數(shù)據(jù)增強的方法,將每一類區(qū)域的訓練樣本數(shù)量增加到450張,測試樣本增加到90張。共計256類區(qū)域,訓練樣本總數(shù)為115200張,測試樣本為23040張。增強后的數(shù)據(jù),在訓練過程中可以有效地減少過擬合,增加卷積網(wǎng)絡適應航拍圖像定位的能力。
航拍圖像定位研究的一個難點在于,航拍圖像訓練數(shù)據(jù)少(無法達到百萬千萬的級別),如果要直接采用隨機初始化CNN參數(shù)的方法,那么目前的訓練數(shù)據(jù)量是遠遠不夠的。這種情況下,最好的解決方式是選用已經(jīng)訓練好權重的卷積神經(jīng)網(wǎng)絡,用自己的數(shù)據(jù)集進行有監(jiān)督的參數(shù)微調,稱為遷移學習[11]。這種思想已經(jīng)成功地應用在目標檢測領域中,關于R-cnn[12]的一系列神經(jīng)網(wǎng)絡[13],就是運用遷移學習來實現(xiàn)的,因為省去了參數(shù)初始化的預訓練過程,極大地減少了工作量。
因此,本文借鑒遷移學習的思想,選用Caffenet[14]的網(wǎng)絡結構和初始化權重來進行fine-tuning訓練。Caffenet是caffe團隊在Alexnet[4],基礎上,定義的適合在caffe框架上運行的網(wǎng)絡結構。以Imagenet圖像作為數(shù)據(jù)集,在迭代30多萬次后精度比Alexnet提高了大約0.2%。兩個Net區(qū)別在于第一層和第二層中歸一化和池化處理互換了順序。Caffenet的網(wǎng)絡結構如圖3所示,模型一共分為八層,五個卷基層以及三個全連接層,在每個卷積層中包含了激勵函數(shù)RELU[15],在前兩層和第五層中包括降采樣(池化)處理和局部響應歸一化(LRN)處理,最后一層全連接層輸出1000類。
利用卷積神經(jīng)網(wǎng)絡進行識別的區(qū)域共有256類,那么就需要把預訓練階段的Caffenet模型的最后一個全連接層fc8(1000類),替換成256類的全連接層,如圖4所示,并將fc8更名為re-fc8,保證在訓練過程中其它網(wǎng)絡層的參數(shù)不變,對新的網(wǎng)絡層直接進行參數(shù)隨機初始化。采用隨機梯度下降法[16],訓練出適合于航拍圖像定位任務的網(wǎng)絡權重,最后一層輸出的prob是待識別圖像屬于各類區(qū)域的概率值。
實驗配置如下:
顯卡:英偉達GTX 1070 Cpu:Intel Core i7-6700;主頻:3.40GHz;內存:32G;操作系統(tǒng):win 7;框架:caffe。
將10多萬張的數(shù)據(jù)樣本作為輸入,經(jīng)過二十多次的反復調參訓練,最終得到了較為滿意的最優(yōu)訓練結果。當學習率為0.000001時,經(jīng)過近8個小時的訓練,網(wǎng)絡的損失值趨于穩(wěn)定,準確率逐漸地收斂到0.79,如圖5所示,訓練準確率從0開始增長在橫坐標為10(迭代次數(shù)為30000次)之后逐漸趨于穩(wěn)定。訓練的損失值變化如圖6所示,損失值從6開始下降,在橫坐標為500(迭代次數(shù)為20000次)后在4和0之間振蕩,趨于穩(wěn)定。并且在測試過程中,得到了超過80%的測試準確率如圖7所示,測試過程最終的準確率為0.8012,損失為1.86183。
具體參數(shù)如下:
在網(wǎng)絡訓練過程中,調參是能否讓網(wǎng)絡收斂的關鍵步驟,其中最重要的參數(shù)就是學習率[17],找到一個合適的學習率可以加快網(wǎng)絡的收斂速度,降低損失。本文抽取了調參過程中的四組實驗,來對比不同學習率對訓練結果的影響,如表1所示,在其它參數(shù)不變的情況下,當學習率為0.000001時,訓練和測試的準確率是最高的,在0.000001附近增加或者降低學習率時,訓練效果都不理想。因此,我們使用學習率為0.000001時訓練得到的網(wǎng)絡權重,對航拍圖像進行識別定位。
表1 不同學習率下網(wǎng)絡準確率差異比較
在研究區(qū)域內隨機截取一幅測試圖像,如圖8所示,是第15級瓦片圖像,大小為256*256。輸入到已經(jīng)訓練好的卷積神經(jīng)網(wǎng)絡中進行識別,用時0.057s,輸出識別結果為第50類。各類對應的概率值如圖9所示,橫坐標為256個類別,縱坐標為每個類別對應的概率值,第50類的概率為0.1062642,為256類中的最大值。而測試圖像的大部分都落在第50類區(qū)域中,所以卷積神經(jīng)網(wǎng)絡定位正確。而且0.057s的識別速度可以滿足無人機對定位實時性的要求。
在高分辨率地景的Skyline環(huán)境下,設置無人機的相關參數(shù),模擬無人機進行垂直偵察飛行,獲取航拍圖像,利用訓練好的卷積神經(jīng)網(wǎng)絡判斷航拍圖像所屬區(qū)域,確定無人機的經(jīng)緯度范圍,然后與Skyline環(huán)境中無人機的實際位置進行比較,驗證實驗結果的準確性。在研究區(qū)域上空選取四條不同的航線,作為無人機的偵察軌跡,圖10和圖11為其中兩條航線示意圖。分別對四條航線上獲取的航拍圖像序列進行識別,如表2所示,識別準確率在0.8左右波動,與卷積網(wǎng)絡的訓練準確率和測試準確率相一致。
表2 不同航線上圖像定位的效果比較
本文采用遷移學習的思想,通過制作研究區(qū)域內帶有地理標記的圖像做為數(shù)據(jù)集來微調Caffenet,然后利用訓練好的卷積網(wǎng)絡識別無人機獲取的航拍圖像,從而確定航拍圖像中心和飛機的經(jīng)緯度。在網(wǎng)絡的訓練過程中識別準確率逐漸收斂到0.79,并且在skyline的環(huán)境下進行飛行仿真,驗證了卷積神經(jīng)網(wǎng)絡識別的準確率和進行圖像定位的可行性。
[1]Lecun Y,Bengio Y,Hinton G.Deep learning[J].Nature,2015,521(7553):436-444.
[2]Gu J,Wang Z,Kuen J,et al.Recent advances in convolutional neural networks[J].Computer Science,2015.
[3]Sermanet P,Eigen D,Zhang X,et al.Overfeat:Integrated recognition,localization and detection using convolutional networks[J].arXiv preprint arXiv:1312.6229,2013.
[4]Deng J,Dong W,Socher R,et al.Imagenet:A large-scale hierarchical image database[C]//Computer Vision and Pattern Recognition,2009.CVPR 2009.IEEE Conference on.IEEE,2009:248-255.
[5]Workman S,Jacobs N.On the location dependence of convolutional neural network features[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition Workshops.2015:70-78.
[6]Weyand T,Kostrikov I,Philbin J.Planet-photo geolocation with convolutional neural networks[C]//European Conference on Computer Vision.Springer International Publishing,2016:37-55.
[7]劉麗萍.墨卡托投影與高斯投影的坐標轉換研究[J].中國新技術新產品,2013(4):13-14.
[8]王蕾.捕食者無人機綜述[C]//中國航空學會輕型飛行器專業(yè)委員會2005年學術交流會.2005.
[9]楚敏南.基于卷積神經(jīng)網(wǎng)絡的圖像分類技術研究[D].湘潭:湘潭大學,2015.
[10]陳智.基于卷積神經(jīng)網(wǎng)絡的多標簽場景分類[D].濟南:山東大學,2015.
[11]Hu J,Lu J,Tan Y P.Deep transfer metric learning[C]// IEEE Conference on Computer Vision and Pattern Recognition.IEEE,2015:325-333.
[12]Girshick R,Donahue J,Darrell T,et al.Rich Feature Hierarchies for Accurate Object Detection and Semantic Segmentation[J].2014:580-587.
[13]He K,Zhang X,Ren S,et al.Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition[J].IEEE Transactions on Pattern Analysis&Machine Intelligence,2015,37(9):1904-1916.
[14]Wang Z,Wang X,Wang G.Learning fine-grained features via a CNN tree for large-scale classification[J]. arXiv preprint arXiv:1511.04534,2015.
[15]Kim J,Kim S,Lee M.Convolutional Neural Network with Biologically Inspired ON/OFF ReLU[J].Procedia Computer Science,2016,88:145-154.
[16]Zhou P,Liu Z,Wang X,et al.Coherent Beam Combining of Fiber Amplifiers Using Stochastic Parallel Gradient Descent Algorithm and Its Application[J].IEEE Journal of Selected Topics in Quantum Electronics,2009,15(2):248-256.
[17]Zou J,Wu Q,Tan Y,et al.Analysis Range of Coefficients in Learning Rate Methods of Convolution Neural Network[C]//International Symposium on Distributed Computing and Applications for Business Engineering and Science.IEEE,2015:513-517.
Research on Aerial Image Location Based on Convolution Neural Network
WEI Yongming
(Department of Aerospace Intelligence,Air Force Aviation University,Changchun130022)
In this paper,the geometric markup image in the study area is used as the data set to fine tune Caffenet to adapt the aerial image classification task by using the idea of transfer learning.And then use the trained convolution neural network to identify the aerial images acquired by the UAV,so as to determine the latitude and longitude of the aerial image center and the aircraft,and realize the image localization.In the training process of the network,the accuracy of the recognition is obtained by repeated experiments.The flight simulation is carried out in the skyline environment with high resolution,and the accuracy and the feasibility of image localization of the convolution neural network are verified.
transfer learning,convolution neural network,image classification,image localization
TP391.41
10.3969/j.issn.1672-9730.2017.06.009
2016年12月9日,
2017年1月30日
魏湧明,男,研究方向:控制科學與工程。