孔月萍,黨 爽,曾 軍,高 凱
1(西安建筑科技大學(xué) 信息與控制工程學(xué)院,西安710055)
2(地理信息工程國家重點實驗室,西安710055)
鞍部作為一種重要的地形控制點,與山頂、山谷、溝頭等點狀地形要素共同構(gòu)成了地形地貌的基本骨架結(jié)構(gòu),其自動提取與準確標(biāo)注對地學(xué)分析、地圖制圖、地理信息應(yīng)用具有重要的理論價值和指導(dǎo)意義[1].分析鞍部的空間結(jié)構(gòu)可以發(fā)現(xiàn),鞍部位于兩山頂之間較為平緩的地區(qū),與山頂存在一定的高差限制,在等高線地形圖上表現(xiàn)為相鄰兩山頂間山谷線和山脊線的相交之處.因此識別鞍部時既要著眼于鞍部的局部特征,還應(yīng)充分考慮鞍部與其它地形要素之間的點群約束全局特征.
現(xiàn)有的鞍部識別方法大致分為兩類,即地表幾何形態(tài)分析法和水文分析法.前者多采用移動分析窗[2]對鞍部的幾何形態(tài)進行特征分析,通過計算分析窗中多種曲面因子及相互關(guān)系進行鞍部判別與提取,此類方法處理速度快,但受分析窗口大小和方向的限制,易出現(xiàn)鞍部的誤判.文獻[3]在窗口分析基礎(chǔ)上以等間距高程剖分山體,增加了等高面間的拓撲關(guān)系分析來識別鞍部,其結(jié)果比單純的窗口分析法有了較大改善.而第二類方法則是借助地表水文匯流模擬分析的思想[4,5],利用正反地形中山脊線與山谷線求交的方法[6]提取鞍部,由于流域分水線與正地形疊合會導(dǎo)致某些山脊線斷裂,給鞍部提取帶來問題和偏差,且這類方法的復(fù)雜度較高,不易實施.
上述方法均依據(jù)人工設(shè)計的特征描述因子構(gòu)造鞍部提取方法,但人工特征較難對鞍部形態(tài)的局部和宏觀特征進行綜合表達.近年來,深度學(xué)習(xí)在目標(biāo)的特征學(xué)習(xí)與挖掘方面的優(yōu)勢極大顯現(xiàn),但當(dāng)前的深度學(xué)習(xí)目標(biāo)檢測與識別模型大都應(yīng)用于數(shù)字圖像,并在ImageNet、COCO等公開數(shù)據(jù)集上進行網(wǎng)絡(luò)訓(xùn)練和測試.DEM(Digital Elevation Model,數(shù)字高程模型)數(shù)據(jù)雖與數(shù)字圖像具有相似結(jié)構(gòu),但它們的物理含義、對象與背景的邊界卻差異極大,直接將圖像數(shù)據(jù)的相關(guān)方法遷移到DEM數(shù)據(jù)上,檢測性能還有待研究.2017年,Eric Guerin等人[7]從計算機視覺著眼,將3D虛擬地形生成任務(wù)視為有特征條件的圖像生成問題,用條件生成對抗網(wǎng)絡(luò)(Conditional Generative Adversarial Networks,CGANs)[8]從真實DEM地形樣本中訓(xùn)練地形生成模型,構(gòu)造虛擬地形,提出了虛擬地形生成的新途徑.2019年,Lin Du等人[9]利用DEM、坡度、地貌暈渲圖等多模態(tài)數(shù)據(jù)構(gòu)造聯(lián)合特征的融合網(wǎng)絡(luò),利用殘差學(xué)習(xí)單元從視覺形態(tài)和物理特征中挖掘深層次數(shù)據(jù)與地貌之間的相關(guān)性,在自建的ZISM50m數(shù)據(jù)集上,該算法的地貌識別準確率高達90.28%,表現(xiàn)出巨大的潛力.
綜上所述,深度學(xué)習(xí)技術(shù)在數(shù)字地形尤其是DEM要素分析方面的應(yīng)用研究成果較少,但效果十分理想,有必要繼續(xù)探索.但考慮到實際地形與可獲取的訓(xùn)練數(shù)據(jù)樣本有限,受文獻[10]和文獻[11]的啟發(fā),擬借助卷積神經(jīng)網(wǎng)絡(luò)與遷移學(xué)習(xí)的思想,融合卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)和多層感知器(Multilayer Perceptron,MLP),學(xué)習(xí)鞍部的局部形態(tài)特性及其與周圍山頂、山脊和山谷間的宏觀拓撲關(guān)系,實現(xiàn)DEM中的鞍部要素檢測與識別.先以LeNet-5[12]預(yù)訓(xùn)練模型作為初始網(wǎng)絡(luò),利用已標(biāo)記的鞍部樣本對初始網(wǎng)絡(luò)模型進行反向參數(shù)調(diào)節(jié),使模型能實現(xiàn)對鞍部局部和全局特征的學(xué)習(xí),進行候選鞍部點的提??;最后再融合MLP網(wǎng)絡(luò)對鞍部點的精確位置進行回歸,完成候選鞍部的坐標(biāo)標(biāo)注.
大量事實已證明卷積神經(jīng)網(wǎng)絡(luò)對圖像目標(biāo)的檢測與識別十分有效,但檢測與識別的過程中存在網(wǎng)絡(luò)性能與網(wǎng)絡(luò)參數(shù)之間的矛盾.LeNet-5作為一種典型的卷積神經(jīng)網(wǎng)絡(luò),在手寫體數(shù)字圖像的識別應(yīng)用中準確率極高,被廣泛應(yīng)用于美國銀行的支票手寫體識別[13].然而DEM中鞍部樣本與手寫體數(shù)字圖像的物理含義差異較大,完全套用LeNet-5神經(jīng)網(wǎng)絡(luò)模型識別鞍部要素效果不盡理想.因此,結(jié)合鞍部的空間結(jié)構(gòu)特征及其與周圍其它要素間的點群約束關(guān)系,以LeNet-5基礎(chǔ)網(wǎng)絡(luò)為框架改造CNN網(wǎng)絡(luò)模型.
為了盡可能完整地挖掘鞍部的局部特征和全局特征,對LeNet-5網(wǎng)絡(luò)的采樣層部分進行了如圖1所示的改造,即將鞍部的全局特征下采樣和深層局部特征上采樣,然后對提取到的特征加以融合,解決鞍部要素特征提取不完備的問題;最終,按照圖2流程實現(xiàn)鞍部要素的識別.
圖2 鞍部識別方法的整體框架Fig.2 Whole frame of saddle recognition method
圖1 改進的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.1 Improved convolutional neural network structure
在預(yù)訓(xùn)練階段,以LeNet-5神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)為基礎(chǔ)框架,對其權(quán)重參數(shù)進行初始化,保留除Softmax層的權(quán)重和偏置參數(shù),用鞍部樣本數(shù)據(jù)對其進行反向微調(diào),計算檢測分類結(jié)果與標(biāo)簽真值之間的差異,由后向前按照誤差最小原則調(diào)整CNN網(wǎng)絡(luò)各層權(quán)重,直至誤差滿足要求[14],獲得針對DEM鞍部的基礎(chǔ)CNN網(wǎng)絡(luò)模.
在新的CNN網(wǎng)絡(luò)模型中,以32*32*1的正樣本DEM數(shù)據(jù)作為神經(jīng)網(wǎng)絡(luò)第一層的輸入.卷積層采用5*5的卷積核學(xué)習(xí)鞍部的局部空間結(jié)構(gòu)特征,利用權(quán)值共享獲取其與周圍山頂點、山脊線和山谷線之間的空間拓撲關(guān)系等全局特征,減少了網(wǎng)絡(luò)學(xué)習(xí)的參數(shù),降低了網(wǎng)絡(luò)復(fù)雜度[15,16].每個卷積核分別與上層輸入特征圖進行卷積運算,經(jīng)過激活函數(shù)非線性映射到下一層網(wǎng)絡(luò),其迭代映射方式如式(1),其中l(wèi)為層數(shù),k是卷積核,b是偏置項,X是當(dāng)前層需計算的特征圖,M為上層特征圖,f是Relu非線性激活函數(shù).
(1)
在基本的CNN網(wǎng)絡(luò)模型中,隨著網(wǎng)絡(luò)層數(shù)的加深,特征圖的維數(shù)不斷減小,會使鞍部的空間結(jié)構(gòu)特征不斷稀釋,進而影響小面積鞍部區(qū)域的特征檢測性能.因此,在采樣層中不能僅使用連續(xù)下采樣,而應(yīng)通過對網(wǎng)絡(luò)提取到的淺層特征S2下采樣、深層特征S4上采樣、中層特征C3維持原有尺寸的方式對不同尺度的特征進行融合,得到既保持鞍部局部特征,又擁有鞍部宏觀地形特征的全局特征.改進后的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示.其中,下采樣中利用maxpooling進行池化處理,很大程度上減少了網(wǎng)絡(luò)可能出現(xiàn)的過擬合現(xiàn)象,加快了網(wǎng)絡(luò)的收斂速度[17],其表達如式(2),式中s表示池化的模板尺寸,m和n分別表示相應(yīng)方向的步長.上采樣階段則利用maxpooling的逆過程進行“上池化”,即在maxpooling時保留最大值的位置信息,之后在上池化階段使用該信息擴充特征圖,除最大值位置以外,其余補0.
(2)
卷積層和采樣層構(gòu)成了一個特征提取器,提取有關(guān)鞍部的判別性特征信息,挖掘?qū)W習(xí)鞍部所在區(qū)域的特征.全連接層5則將學(xué)到的鞍部特征整合在一起,經(jīng)過全連接層6對特征進行壓縮以便于交給最后的Softmax分類器層.然而全連接層由于參數(shù)冗余,容易出現(xiàn)過擬合現(xiàn)象,因此為了加快訓(xùn)練速度,提升模型的可靠性,對全連接層的權(quán)重進行L2正則化操作.對于全連接層的每一組權(quán)重通過在原有損失函數(shù)的基礎(chǔ)上加入λ∑ω2懲罰項,可有效減少訓(xùn)練數(shù)據(jù)中的“小凸起”等偽山頂點,避免引起鞍部區(qū)域的誤判.此時對于權(quán)重為ω的全連接層損失函數(shù)E可表示為式(3),其中E0為非正則化的損失函數(shù),λ是權(quán)重衰減系數(shù).
E=E0+↑λ∑ω2
(3)
無論是基于有監(jiān)督策略還是無監(jiān)督策略均需借助一定的分類器才能實現(xiàn)對目標(biāo)的識別,對于大量存在的鞍部點的識別,選取了深度學(xué)習(xí)算法中使用較為廣泛的Softmax回歸模型.Softmax用于分類過程中,它將多個神經(jīng)元的輸出映射到(0,1)區(qū)間內(nèi),這些值的累計和為1,即滿足概率和為1的性質(zhì).在最后選取輸出符合目標(biāo)區(qū)的特征點時,可選取概率最大的目標(biāo)像素點作為預(yù)測目標(biāo).借助有標(biāo)簽的樣本數(shù)據(jù)輸入到網(wǎng)絡(luò)中通過反向傳播微調(diào)網(wǎng)絡(luò)參數(shù),使其達到穩(wěn)定,從而實現(xiàn)對鞍部區(qū)域的識別.
從改進的CNN網(wǎng)絡(luò)結(jié)構(gòu)看,它能提取鞍部的深度特征并對DEM的區(qū)域地表形態(tài)進行學(xué)習(xí),對鞍部形成一定的“認知”與“記憶”能力,識別出候選鞍部點.然而經(jīng)實驗驗證,改造后的CNN網(wǎng)絡(luò)可識別出符合特征的鞍部區(qū)域,但僅用Softmax分類器并不能準確定位出鞍部的位置,因此附加了多層感知器MLP網(wǎng)絡(luò)對改進的CNN網(wǎng)絡(luò)模型進行再調(diào)節(jié).
MLP是一種有監(jiān)督學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)模型,由輸入層、中間隱藏層、輸出層組成,其中隱藏層可擴展為多層,相鄰層之間各神經(jīng)元進行全連接,而每層各神經(jīng)元之間無連接,網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示.當(dāng)一對輸入、輸出學(xué)習(xí)模式提供給網(wǎng)絡(luò)后,各神經(jīng)元獲得網(wǎng)絡(luò)的輸入響應(yīng)產(chǎn)生連接權(quán)值;然后按減小希望輸出與實際輸出誤差的方向,從輸出層經(jīng)各中間層逐層修正各連接權(quán),回到輸入層.此過程反復(fù)交替進行,直至網(wǎng)絡(luò)的全局誤差趨向給定的極小值,即完成學(xué)習(xí)的過程.MLP網(wǎng)絡(luò)最主要的優(yōu)點是具有極強的非線性映射能力,通過構(gòu)建合適的模型描述輸入數(shù)據(jù)和輸出數(shù)據(jù)間的復(fù)雜關(guān)系,因此能夠解決天氣預(yù)測、圖像識別等領(lǐng)域中包含非線性因素的問題.當(dāng)鞍部樣本測試集在CNN網(wǎng)絡(luò)模型中的測試準確率較高且網(wǎng)絡(luò)達到穩(wěn)定時,保存此時學(xué)習(xí)到的鞍部特征信息,經(jīng)過Softmax分類器得到候選鞍部點.凍結(jié)CNN網(wǎng)絡(luò)模型的前6層參數(shù),即建立一個與訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)在隱層層數(shù)、隱層節(jié)點數(shù)以及每一隱層網(wǎng)絡(luò)權(quán)重值三方面完全一樣的多層感知器模型,將候選鞍部點和標(biāo)定的鞍部坐標(biāo)作為輸入共同送入MLP網(wǎng)絡(luò),構(gòu)建出鞍部的候選坐標(biāo)與實際坐標(biāo)之間的最優(yōu)模型,通過該模型學(xué)習(xí)鞍部坐標(biāo)的偏移量,對每一個候選鞍部的準確位置進行回歸修正.
圖3 MLP結(jié)構(gòu)Fig.3 MLP structure
鞍部識別方法的整體框架如圖2所示.先將已訓(xùn)練好的LeNet-5網(wǎng)絡(luò)模型參數(shù)遷移到目標(biāo)網(wǎng)絡(luò)模型上,建立鞍部識別的CNN基礎(chǔ)網(wǎng)絡(luò)模型.然后將鞍部數(shù)據(jù)送入預(yù)訓(xùn)練的CNN基礎(chǔ)網(wǎng)絡(luò)模型進行反向參數(shù)微調(diào)和改進,訓(xùn)練出新的卷積神經(jīng)網(wǎng)絡(luò),利用Softmax回歸分類器作為最后的輸出層得到候選鞍部點.最后附加上MLP網(wǎng)絡(luò),將CNN網(wǎng)絡(luò)模型的各層參數(shù)凍結(jié)訓(xùn)練MLP網(wǎng)絡(luò),對候選鞍部點進行位置坐標(biāo)的精細調(diào)整.
為了驗證融合CNN與MLP的混合神經(jīng)網(wǎng)絡(luò)模型對未知山地數(shù)據(jù)中鞍部的識別效果,選取了SRTM-DEM開源網(wǎng)站下載的1:100萬DEM數(shù)據(jù)進行網(wǎng)絡(luò)模型訓(xùn)練與測試實驗.由于目前還未有公開的用于深度學(xué)習(xí)的鞍部數(shù)據(jù)庫,以盡可能完整包含鞍部信息的原則自建鞍部數(shù)據(jù)集SADDLE-100,從中選取6000個32*32大小且含有鞍部坐標(biāo)位置信息的鞍部數(shù)據(jù),采用隨機抽樣的方法選取其中5000個數(shù)據(jù)作為訓(xùn)練集,900個數(shù)據(jù)作為驗證集,100個數(shù)據(jù)作為測試集檢驗網(wǎng)絡(luò)模型的性能.通過多次的對比性仿真實驗,改進后的CNN網(wǎng)絡(luò)具體訓(xùn)練參數(shù)見表1.
表1 訓(xùn)練參數(shù)設(shè)置Table 1 Training parameter setting
經(jīng)實驗驗證,隨著迭代次數(shù)的增加,CNN網(wǎng)絡(luò)模型訓(xùn)練和測試階段的識別準確率(acc)逐漸升高,同時目標(biāo)函數(shù)的損失(loss)逐漸降低,當(dāng)?shù)螖?shù)達到800次左右時二者進入平穩(wěn)階段,表明此時網(wǎng)絡(luò)模型達到穩(wěn)定狀態(tài).同樣記錄MLP網(wǎng)絡(luò)在訓(xùn)練過程中的均方誤差(mse)變化情況,隨著迭代次數(shù)增加至300次,網(wǎng)絡(luò)的均方誤差值逐漸降低并進入平穩(wěn)變化,表明此時的MLP網(wǎng)絡(luò)已達到穩(wěn)定狀態(tài).
為了驗證CNN與MLP相結(jié)合的網(wǎng)絡(luò)模型對鞍部識別與位置標(biāo)定的有效性,選取我國三大地貌階梯具有代表性的大起伏極高山(數(shù)據(jù)I)、大起伏中山(數(shù)據(jù)II)和中起伏低山(數(shù)據(jù)III)數(shù)據(jù)開展實驗,將3組實驗樣區(qū)的鞍部識別結(jié)果與文獻[3]提出的拓撲分析方法作對比,結(jié)果分別如圖4(a)-圖4(c)所示,其中圓點為提取的鞍部點(A類點為文獻[3]方法漏提的鞍部點,B類點為深度神經(jīng)網(wǎng)絡(luò)誤提的鞍部點,C類點為深度神經(jīng)網(wǎng)絡(luò)漏提的鞍部點).最后對50個DEM數(shù)據(jù)的鞍部識別結(jié)果進行分類統(tǒng)計,分別于水文流域分析法[4]和拓撲分析法[3]作對比,如表2所示.
圖4 鞍部識別結(jié)果Fig.4 Results of saddle recognition
從圖4及表2可知,CNN與MLP網(wǎng)絡(luò)相結(jié)合識別的鞍部點比文獻[3,4]中識別出的鞍部點坐標(biāo)更為準確,漏提的鞍部點數(shù)目更少,且識別出的鞍部點均位于兩個山頂之間、山脊線和山谷線的交線區(qū)域,符合鞍部區(qū)域的地學(xué)定義,誤提的鞍部點其周圍形態(tài)也符合鞍部的區(qū)域特征,說明深度神經(jīng)網(wǎng)絡(luò)是以鞍部區(qū)域所呈現(xiàn)的形態(tài)和空間結(jié)構(gòu)為主要的描述特征進行的學(xué)習(xí).
表2 鞍部識別結(jié)果統(tǒng)計Table 2 Statistics of saddle recognition results
以DEM中的鞍部樣本為研究對象,基于深度神經(jīng)網(wǎng)絡(luò)的方法為手段,通過分析鞍部的形態(tài)特征、空間結(jié)構(gòu)及點群約束關(guān)系,設(shè)計了CNN與MLP網(wǎng)絡(luò)相結(jié)合的混合網(wǎng)絡(luò)模型對鞍部進行深度學(xué)習(xí)、自動識別.該方法可自動提取包含完備信息的鞍部全局特征,有效避免了人工選擇特征造成的鞍部語義信息缺失的現(xiàn)象,提高了鞍部識別的精度,且易于實現(xiàn).但因鞍部的訓(xùn)練樣本數(shù)據(jù)量較少,導(dǎo)致在鞍部精確定位時出現(xiàn)了偏差.今后應(yīng)逐漸增加該數(shù)據(jù)庫的數(shù)據(jù)量,或研究如何從有限的數(shù)據(jù)中進行樣本的擴充,進而完善該技術(shù)方法.