楊 柳,田生偉+,禹 龍,丁建麗,王知音
(1.新疆大學 軟件學院,新疆 烏魯木齊830008;2.新疆大學 網(wǎng)絡中心,新疆 烏魯木齊830046;3.新疆大學 資源與環(huán)境科學學院,新疆 烏魯木齊830046)
利用衛(wèi)星遙感圖像進行水體信息提取的關(guān)鍵在于設定合適的閾值,閾值過低會誤提其它地物信息,閾值過高會漏提部分細小的水體[1]。閾值的選取具有一定的主觀性和經(jīng)驗性,通常需要反復實驗,使水體提取難以完全自動化。人工神經(jīng)網(wǎng)絡 (artificial neural network,ANN)是一種可以模擬大腦神經(jīng)突觸聯(lián)接的結(jié)構(gòu)和功能的具有自學習、自組織、自適應能力的信息處理模型。BP (back propagation)神經(jīng)網(wǎng)絡是一種按誤差逆?zhèn)鞑ニ惴ㄓ柧毜亩鄬忧梆伨W(wǎng)絡,具有很強的學習能力,是處理非線性數(shù)據(jù)的有力工具。
近年來,BP神經(jīng)網(wǎng)絡在遙感信息提取領(lǐng)域得到了廣泛的應用。錢育蓉等選取荒漠植被的典型光譜特征 (紅邊、綠峰、紅谷等)作為輸入?yún)?shù),構(gòu)建基于BP網(wǎng)絡的植被分類模型,實現(xiàn)對荒漠植被的智能化分類[2];楊文亮等選取水體樣本光譜信息、譜間關(guān)系等4個特征,利用BP神經(jīng)網(wǎng)絡進行水體提取,取得了較好的提取效果,但是需要時間花費較長[3];林娜等提取了高光譜影像的核最小噪聲分離變換(kernel minimum noise fraction,KMNF)特征,使用BP神經(jīng)網(wǎng)絡對高光譜遙感影像進行分類,分類總體精度和時間性能得到提高[4];肖錦成等使用ETM+遙感數(shù)據(jù),構(gòu)建了基于BP網(wǎng)絡的濕地覆被分類模型,并驗證了模型的有效性[5]。
本文在分析提取水體光譜特征的基礎(chǔ)上,提出了基于BP神經(jīng)網(wǎng)絡的自動化水體識別方法。將遙感圖像中水體的典型特征作為輸入元,并提出基于GNDWI和譜間關(guān)系的樣本選擇算法進行樣本選擇。對BP神經(jīng)網(wǎng)絡進行訓練,在不設定閾值的情況下,獲得了良好的識別效果。然而,BP神經(jīng)網(wǎng)絡算法的收斂速度慢且占用較大內(nèi)存,在對海量遙感影像進行數(shù)據(jù)提取時出現(xiàn)耗時過長,甚至內(nèi)存不足無法訓練的情況[6,7]。為了解決這一問題,本文將并行計算的思想應用于遙感圖像的水體信息提取中,構(gòu)建基于MapReduce的BP神經(jīng)網(wǎng)絡水體識別模型,并設計實驗驗證模型的有效性。
艾比湖 (44°43′N~45°12′N,82°35′E~83°11′E)是準噶爾盆地最大的湖泊,也是新疆維吾爾自治區(qū)第一大鹽水胡。它位于精河縣境內(nèi),是博爾塔拉河、精河、奎屯河等多條內(nèi)流河的匯聚中心。近年來,艾比湖干縮導致地下水位下降,使流域周邊地區(qū)荒漠化大大加快,艾比湖生態(tài)惡化成為新疆第二大生態(tài)問題。
本文選取艾比湖2013年6月的Landsat ETM+影像為數(shù)據(jù)源,使用ENVI軟件對影像進行幾何校正、輻射校正,并對影像進行降噪和增色處理。
水體對太陽光具有強吸收性,在大部分遙感傳感器的波長范圍內(nèi),總體上呈現(xiàn)較弱的反射率。隨著波長的增加,水體的反射率不斷減弱,在近紅外和中紅外波長范圍內(nèi)反射率幾乎為零[8]。本文在對水體光譜特征進行分析整理后,選擇以下特征來提取水體:
(1)ETM+5 波段亮度值 (BV)。ETM+5 為短波紅外波段,位于兩個水體吸收帶之間,對土壤水分含量敏感,可以區(qū)分水體與其它地物。
(2)NDVI(歸一化差異植被指數(shù))。NDVI指數(shù)可以增強水陸特性,有助于區(qū)分植被、水體和土壤。其公式為
(3)譜間關(guān)系 (relations between spectrums): (ETM+2+ETM+3)- (ETM+4+ETM+5)。通過這4個波段的有效組合,增大了水體和陰影的差異,將兩者很好的區(qū)分開來。
(4)MNDWI (改 進 的 歸 一 化 差 異 水 體 指 數(shù))[9]。MNDWI指數(shù)增強了水體與建筑物的反差,降低了混淆,提高水體的識別精度。其公式為
(5)NDBI(歸一化建筑指數(shù))。NDBI指數(shù)利用建筑物的灰度值在ETM+4、ETM+5波段明顯高于其它地物這一特性,將建筑物與其它地物區(qū)分開來。本文使用NDBI指數(shù)來消除提取水體時誤提建筑物信息的問題,其公式為
其中,NIR 為近紅外波段,即ETM+第4波段;Red為紅光波段,即ETM+第3波段;Green為綠光波段,即ETM+第2波段;MIR 為短波紅外波段,即ETM+第5 或7波段。
BP人工神經(jīng)網(wǎng)絡是基于誤差反向傳播算法的多層前向神經(jīng)網(wǎng)絡,它具有很強的自學習和自適應能力。圖1為常用的3層BP 神經(jīng)網(wǎng)絡結(jié)構(gòu),包含輸入層、隱藏層和輸出層。其中,X1…Xn為神經(jīng)網(wǎng)絡的輸入,Y1…Yn為神經(jīng)網(wǎng)絡的輸出。
圖1 3層BP神經(jīng)網(wǎng)絡拓撲結(jié)構(gòu)
BP神經(jīng)網(wǎng)絡通過信息的正向傳播,輸出層得到信息處理結(jié)果。當實際輸出與期望輸出不一致時,進入誤差的反向傳播階段。BP神經(jīng)網(wǎng)絡根據(jù)輸出層的誤差估計輸出層的直接前導層的誤差,向隱層、輸入層逐層反傳,按誤差梯度下降法不斷調(diào)整各層權(quán)值,直至網(wǎng)絡輸出的誤差達到預先設定的期望值。
訓練樣本的質(zhì)量決定著整個識別模型的性能,為了保證選取的樣本的準確性、代表性和統(tǒng)計性,通常需要人工干預選擇樣本,使水體識別模型難以完全自動化。因此,本文使用以下兩種方式進行訓練樣本的自動選擇 (設訓練樣本數(shù)為S):
(1)“棋盤式”樣本選擇
將研究區(qū)域看成是一個m*n的 “棋盤”,即整個區(qū)域被劃分成m*n 個部分。在每個部分隨機選取 [S/ (m*n)]個樣本,構(gòu)成覆蓋大部分研究領(lǐng)域的訓練樣本。
(2)基于GNDWI和譜間關(guān)系的樣本選擇
朱長明等使用NDWI指數(shù)進行閾值分割,通過NDWI值實現(xiàn)初始樣本的自動選擇,但是該方法只用到了水體的單一特征,精度沒有得到保證[10]。因此,本文使用GNDWI指數(shù)[11]結(jié)合波譜間關(guān)系對原始數(shù)據(jù)進行閾值分割,完成樣本的自動選擇。具體算法如下:
步驟1 計算原始圖像的GNDWI值 (見式 (4)),選取合適的閾值,對水體圖像進行初始分割
步驟2 對上一步的分類結(jié)果進行波譜間關(guān)系((ETM+2+ETM+3)- (ETM+4+ETM+5))計算,設定合適的閾值,對水體進行二次提取,得到更高精度的水體分類結(jié)果。
步驟3 對分類結(jié)果進行樣本選取
其中,wi與wj分別表示水體和非水體樣本在整個訓練樣本中所占的比例。在實驗中,通過一定的試驗來確定最優(yōu)的樣本選取比例。
實驗選用標準的3層BP網(wǎng)絡,即輸入層、隱藏層和輸出層。首先,對訓練樣本進行歸一化處理,將提取到的水體特征:ETM+5波段亮度值、NDVI指數(shù)、譜間關(guān)系值、MNDWI指數(shù)、NDBI指數(shù)作為BP 神經(jīng)網(wǎng)絡的輸入,則輸入層節(jié)點數(shù)為5。令Y1= [1,0]T且Y2= [0,1]T構(gòu)造輸出參數(shù)矩陣,輸出層節(jié)點數(shù)為2,Y1代表水體,Y2代表非水體。根據(jù)常用的經(jīng)驗公式確定隱藏層的節(jié)點數(shù)
其中,l為隱藏層節(jié)點數(shù),m 為輸入層節(jié)點數(shù),n為輸出層節(jié)點數(shù),α為1~10之間的常數(shù)。通過一定的經(jīng)驗和數(shù)次的實驗,最終確定α為8,則得到隱藏層節(jié)點為10。BP網(wǎng)絡的其它參數(shù)設置見表1。
表1 BP網(wǎng)絡訓練參數(shù)
綜上所述,本文采用3層5-10-2型BP神經(jīng)網(wǎng)絡對水體信息進行提取。首先,對預處理后的多光譜圖像進行特征提取。然后,使用3.3節(jié)提到的方法進行樣本的自動選擇,得到訓練樣本和測試樣本。使用訓練樣本對BP網(wǎng)絡進行訓練,為了避免結(jié)果的偶然性和隨機性,采用3倍交叉法進行實驗。為了加快BP 網(wǎng)絡的收斂速度,利用Levenberg-Marquardt算法對整個網(wǎng)絡進行優(yōu)化??傮w流程如圖2所示。
圖2 基于BP-ANN 的水體自動識別總體流程
MapReduce采用“分而治之”的思想,把整個任務拆分成多個子任務,并將這些任務分發(fā)給一個主節(jié)點 (Name-Node)管理下的各個從節(jié)點 (DataNode)共同完成。然后,通過整合各個節(jié)點的中間結(jié)果而得到最終結(jié)果。
在分布式計算中,MapReduce框架負責處理并行編程中分布式存儲、工作調(diào)度以及網(wǎng)絡通信等復雜問題,把處理過程高度抽象為兩個函數(shù):Map和Reduce,Map負責把任務分解成多個任務,Reduce負責把分解后多任務處理的結(jié)果匯總起來。
數(shù)據(jù)塊的劃分方式和數(shù)據(jù)分塊的大小直接影響著并行計算的效率。本文采用矩形塊方式切分每幅影像,以默認數(shù)據(jù)分塊大小 (64 M)為單位,對研究區(qū)影像進行切分。
選取開源的Hadoop為實驗平臺,基于HDFS(Hadoop distributed file system,HDFS)和HBase(Hadoop database,HBase)的特點,將遙感影像文件存放到HDFS中,其它元數(shù)據(jù)信息 (見表2)存入HBase中,并為同一數(shù)據(jù)塊建立多個副本以提高數(shù)據(jù)塊的可靠性與可用性 (圖3為B0、B1等數(shù)據(jù)塊存儲在HDFS中的示例)。
表2 數(shù)據(jù)塊元數(shù)據(jù)信息
圖3 HDFS下遙感數(shù)據(jù)塊讀取流程
將研究區(qū)遙感影像按4.2節(jié)中介紹的方式進行切分和存儲。在Map任務中集成基于BP-ANN 的水體識別模型,提取每個影像塊中的水體信息。Map函數(shù)以<key,value>鍵值對形式輸出水體提取后的影像塊。其中,key為 “影像名稱”,value為影像塊的存儲地址。中間結(jié)果根據(jù)key值進行排序,將key值相同的影像塊組成影像塊序列作為Reduce任務的輸入。在Reduce任務中,根據(jù)集合序列中每個數(shù)據(jù)塊標識,將影像名相同的影像塊合并然后進行輸出。
實驗使用4臺普通pc機,其中1臺作為主節(jié)點 (Name-Node),其余3臺作為數(shù)據(jù)節(jié)點 (DataNode)。在每臺主機上安裝Linux Ubuntu 12.04、Java環(huán)境、JDK 1.6 和Hadoop 0.20,搭建Hadoop集群系統(tǒng)。計算機的硬件配置詳細信息見表3。
表3 計算節(jié)點配置信息
使用 “棋盤式”選點法和基于GNDWI和譜間關(guān)系的樣本選擇法進行樣本的智能化選擇,得到樣本集Sqi和Sg(其中,令wi=2,wj=1)。
實驗1:樣本選擇對識別結(jié)果的影響
訓練樣本的質(zhì)量直接影響整個BP網(wǎng)絡的識別效率,選擇合適且具有代表性的訓練樣本是構(gòu)建BP 網(wǎng)絡的關(guān)鍵步驟。因此,本文將提取到的水體特征分別作為BP網(wǎng)絡的輸入,利用樣本Sqi和Sg進行水體提取實驗,實驗結(jié)果如圖4所示。
圖4 樣本選擇對識別結(jié)果的影響
從圖4中,我們發(fā)現(xiàn)基于樣本Sg的水體識別正確率比樣本Sqi平均提高了9.38%。這是因為 “棋盤式”樣本選擇法選出的樣本雖然覆蓋了大部分研究區(qū)域,但無法保證樣本中的水體和非水體數(shù)量,使神經(jīng)網(wǎng)絡無法充分學習到水體和非水體的特性,因此獲得較低的識別結(jié)果。通過對比兩種樣本選擇算法的識別結(jié)果,證明了本文提出的基于GNDWI和譜間關(guān)系的樣本選擇算法的有效性。
實驗2:特征組合對識別結(jié)果的影響
特征之間的組合對機器學習的結(jié)果有很大的影響,我們對比單個、多個不同特征間的組合對識別結(jié)果的影響,實驗使用Sg作為訓練樣本,部分實驗結(jié)果見表4。
從表4中,我們得出以下結(jié)論:①在單特征水體識別方面,利用NDVI指數(shù)的識別率最低,而MNDWI指數(shù)最高。在使用NDVI指數(shù)提取水體信息時,由于建筑物在紅色波段和近紅外波段的波譜特征極為相似,導致建筑物被誤提為水體,影響了水體識別的正確率。因此,在特征組合時決定去除NDVI指數(shù)特征。②使用組合特征對水體信息進行提取,識別正確率均為90%以上,高于單特征的水體識別。其中,使用MNDWI指數(shù)、NDBI指數(shù)和波譜間關(guān)系的識別率最高。MNDWI指數(shù)增大了水體和建筑物的反差,降低了混淆。將MNDWI指數(shù)、譜間關(guān)系法相結(jié)合,去除了絕大部分建筑物和陰影。同時,一些細小的河流也被準確的提取出來。
表4 特征組合對識別結(jié)果的影響
實驗3:基于BP-ANN 的分布式水體識別
為了驗證模型的可擴展性,通過控制計算節(jié)點個數(shù)進行實驗。為了更好的評價實驗結(jié)果,引入加速比作為評價指標。將MNDWI指數(shù)、NDBI指數(shù)及波譜間關(guān)系作為BP網(wǎng)絡的輸入進行水體識別。實驗結(jié)果如圖5所示。
圖5 BP算法訓練耗時及加速比
由圖5可知,隨著節(jié)點的不斷增加,BP網(wǎng)絡的訓練速度不斷提高。當節(jié)點數(shù)為2時,水體識別的時間相對于單機縮短了17.07%;當節(jié)點數(shù)為4時,水體識別的時間縮短了56.09%。同時,如折線圖所示,BP 算法的加速比隨著節(jié)點數(shù)的增加而不斷升高。當節(jié)點數(shù)為4時,并行加速比達2.28。由此,驗證了基于分布式計算的BP-ANN 水體識別模型具有穩(wěn)定的可擴展性。
閾值的選取是水體識別的關(guān)鍵步驟,選擇的閾值是否合適決定著水體的識別精度。因此,本文提出了一種基于BP-ANN 的水體識別方法。通過提取水體多光譜遙感影像的若干特征作為神經(jīng)網(wǎng)絡的輸入,探討特征組合對水體識別結(jié)果的影響。考慮到訓練樣本對BP網(wǎng)絡性能的影響,提出了一種基于GNDWI和譜間關(guān)系的樣本自動提取方法,實現(xiàn)了訓練樣本的智能化提取。針對BP網(wǎng)絡收斂速度慢、占用內(nèi)存過大等問題,將并行計算的思想引入水體信息提取中,構(gòu)建基于分布式計算的BP神經(jīng)網(wǎng)絡水體識別模型,縮短了訓練BP網(wǎng)絡花費的時間,提高了水體識別速率,得到了良好的識別結(jié)果。
[1]JIAN Xing,CHEN Hong,XING Zhongya,et al.Influence of waterbody types on threshold of waterbody area extration using remote sensing technology [J].Science Technology and Engineering,2014,14 (18):267-270 (in Chinese). [簡興,陳鴻,邢忠亞,等.利用遙感技術(shù)提取水體面積時水體類型對閾值的影響 [J].科學技術(shù)與工程,2014,14 (18):267-270.]
[2]QIAN Yurong,JIA Zhenhong,YU Jiong,et a1.Application of BP-ANN to classification of hyperspectral grassland in desert[J].Computer Engineering and Applications,2011,47 (12):225-228 (in Chinese). [錢育蓉,賈振紅,于炯,等.BPANN 在荒漠草地高光譜分類研究中的應用 [J].計算機工程與應用,2011,47 (12):225-228.]
[3]YANG Wenliang,YANG Minhua,QI Hongxia.Water body extracting from TM image based on BPNN [J].Science of Surveying and Mapping,2012,37 (1):148-150 (in Chinese).[楊文亮,楊敏華,祁洪霞.利用BP 神經(jīng)網(wǎng)絡提取TM 影像水體 [J].測繪科學,2012,37 (1):148-150.]
[4]LIN Na,YANG Wnnian,WANG Bin.Hyperspectral image classification on KMNF and BP neural network [J].Computer Engineering and Design,2013,34 (8):2774-2782 (in Chinese).[林娜,楊武年,王斌.基于KMNF和BP神經(jīng)網(wǎng)絡的高光譜遙感影像分類 [J].計算機工程與設計,2013,34(8):2774-2782.]
[5]XIAO Jincheng,OU Weixin,F(xiàn)U Haiyue.Land cover classification of yancheng coastal natural wetlands based on BP neural network and ETM+remote sensing data [J].Acta Ecologica Sinica,2013,33 (23):7496-7504 (in Chinese). [肖錦成,歐維新,符海月.基于BP神經(jīng)網(wǎng)絡與ETM+遙感數(shù)據(jù)的鹽城濱海自然濕地覆被分類 [J].生態(tài)學報,2013,33 (23):7496-7504.]
[6]CHENG Tao,LIU Ruomei,ZHOU Xu.Water information extraction method in geographic national conditions investigation based on high resolution remote sensing images[J].Bulletin of Surveying and Mapping,2014 (4):86-89 (in Chinese). [程滔,劉若梅,周旭.基于高分辨率遙感影像的地理國情普查水體信息提取方法 [J].測繪通報,2014 (4):86-89.]
[7]CHEN Chunpin,ZHA Yaxing,QIAN Ping,et al.MapReduce-based BP neural network genetic algorithm to study nonlinear system identification [C]//Virtual Operation and Cloud Computing,2013:249-255 (in Chinese).[陳春萍,查雅行,錢平,等.基于MapReduce的BP神經(jīng)網(wǎng)絡遺傳算法在非線性系統(tǒng) 辨 識 中 的 研 究 [C]//虛 擬 運 營 與 云 計 算,2013:249-255.]
[8]ZHU Chenjie,YANG Yongli.Research of MapReduce based on BP neural network algorithm [J].Microcomputer Applications,2012,28 (10):9-19 (in Chinese). [朱晨杰,楊永麗.基于MapReduce的BP神經(jīng)網(wǎng)絡算法研究 [J].微型電腦應用,2012,28 (10):9-19.]
[9]XU Hanqiu.A study on information extraction of water body with the modified normalized difference water index (MNDWI)[J].Journal of Remote Sensing,2005,9 (5):589-595 (in Chinese).[徐涵秋.利用改進的歸一化差異水體指數(shù) (MND-WI)提取水體信息的研究 [J].遙感學報,2005,9 (5):589-595.]
[10]ZHU Changming,ZHANG Xin,LUO Jiancheng,et al.Automatic extraction of coastline by remote sensing technology based on SVM and auto-selection of training samples[J].Remote Sensing for Land and Resources,2013,25 (2):69-74(in Chinese).[朱長明,張新,駱劍承,等.基于樣本自動選擇與SVM 結(jié)合的海岸線遙感自動提取 [J].國土資源遙感,2013,25 (2):69-74.]
[11]SHEN Zhanfeng,XIA Liegang,LI Junli,et al.Automatic and high-precision extration of rivers from remotely sensed images with Gaussian normalized water index [J].Journal of Image and Graphics,2013,18 (4):421-428 (in Chinese).[沈占峰,夏列鋼,李均力,等.采用高斯歸一化水體指數(shù)實現(xiàn)遙感影像河流的精確提取 [J].中國圖象圖形學報,2013,18 (4):421-428.]