沈蔚,饒亞麗,3,紀(jì)茜,3,孟然,3,欒奎峰
(1.上海海洋大學(xué) 海洋科學(xué)學(xué)院,上海 201306;2.上海河口海洋測(cè)繪工程技術(shù)研究中心,上海 201306;3.南通智能感知研究院,江蘇 南通 226009)
水深測(cè)量是繪制水下地形不可或缺的工作。地球表面約71%為海洋,無(wú)論是軍事、國(guó)防還是資源開(kāi)發(fā)等方面,測(cè)量水深意義重大。當(dāng)前水深測(cè)量以船載聲吶測(cè)深為主,但對(duì)于船只無(wú)法到達(dá)或是存在主權(quán)爭(zhēng)議的海區(qū),則難以開(kāi)展工作。近年來(lái),隨著遙感技術(shù)的進(jìn)步和發(fā)展,越來(lái)越多的衛(wèi)星數(shù)據(jù)被應(yīng)用于水深反演中,其高空間分辨率、高光譜分辨率、高時(shí)間分辨率的特點(diǎn)為淺水水深獲取提供了更高效靈活和低成本的方法手段。
20世紀(jì)70年代,國(guó)外學(xué)者利用遙感數(shù)據(jù)反演水深,Stumpf等[1]提出了波段比值模型,其只含兩個(gè)未知參數(shù),適用于低反照率特征的水域;Lyzenga[2]提出雙層流理論模型,首次利用多光譜航拍影像對(duì)淺海地區(qū)進(jìn)行了水深估算。
進(jìn)入本世紀(jì),國(guó)內(nèi)相關(guān)研究日益增多,陸天啟等[3]基于SPOT 6遙感影像和實(shí)測(cè)水深值之間建立比值模型,顯示綠-紅波段的比值模型精度最高,但是對(duì)于已有的遙感水深反演方法波段選取較難,不易得到較好的模型參數(shù)。針對(duì)該問(wèn)題,盛琳等[4]基于WorldView-2多光譜影像對(duì)非線性模型進(jìn)行研究,引入逐步回歸算法,可以快速解算模型參數(shù);黨福星等[5]基于TM影像,對(duì)底質(zhì)類型進(jìn)行分區(qū)和潮汐改正,構(gòu)建淺海島礁水深反演模型,取得了較好的應(yīng)用價(jià)值。
當(dāng)前,機(jī)器學(xué)習(xí)算法日益成熟,為遙感水深反演提供了有效手段。王艷姣等[6]引入動(dòng)量BP神經(jīng)網(wǎng)絡(luò)模型,反演長(zhǎng)江口南港河段的水深,發(fā)現(xiàn)模型在淺水域反演精度較高;王錦錦等[7]將多核支持向量機(jī)引入多光譜遙感水深探測(cè),表明反演精度較高;Friedman[8]在2001年對(duì)梯度提升決策樹(shù)(gradient boosting decision tree,GBDT)模型展開(kāi)研究;Chen等[9]推出了改進(jìn)版本的極限梯度提升(extreme gradient boosting,XGBoost)模型,XGBoost是在GBDT的基礎(chǔ)上對(duì)boosting算法進(jìn)行改進(jìn),用于樹(shù)的增強(qiáng);溫開(kāi)祥等[10]綜合多種機(jī)器學(xué)習(xí)算法,通過(guò)建立隨機(jī)森林、XGBoost和支持向量機(jī)三種不同的機(jī)器學(xué)習(xí)模型對(duì)水深進(jìn)行反演,反演精度有明顯提高,得到廣泛認(rèn)可。
近年來(lái),國(guó)內(nèi)外學(xué)者通過(guò)多種與水深相關(guān)的因素建立回歸預(yù)測(cè)模型并取得顯著成果,但仍然存在模型參數(shù)過(guò)多、性能不佳等問(wèn)題。
本文在水深反演相關(guān)模型研究的基礎(chǔ)上,利用XGBoost算法結(jié)合網(wǎng)格搜索,自動(dòng)耦合多個(gè)參數(shù),確定其最佳參數(shù)組合,降低人為調(diào)試參數(shù)的不確定性,提高了模型性能和運(yùn)行效率,以啟東恒大淺海為實(shí)驗(yàn)區(qū)域,獲得了較理想的水深反演結(jié)果。本文研究方法與成果,適用于淺海水深的反演,隨著遙感數(shù)據(jù)的不斷豐富,未來(lái)可以在更大范圍推廣應(yīng)用。
多光譜遙感水深反演模型可分為理論解析模型和經(jīng)驗(yàn)?zāi)P蚚11]兩大類。理論解析模型利用輻射傳輸方程推導(dǎo)水深信息,該過(guò)程涉及較多光學(xué)參數(shù),難以在實(shí)際工作中應(yīng)用[12];經(jīng)驗(yàn)?zāi)P托杞柚羁刂泣c(diǎn),建立遙感影像數(shù)據(jù)與水深值之間的關(guān)系,從而推導(dǎo)算出研究區(qū)域水深值。
經(jīng)驗(yàn)?zāi)P陀挚煞譃榘敕治鏊惴ê徒y(tǒng)計(jì)相關(guān)算法。半分析算法借助理論公式,基于實(shí)測(cè)水深解算水體參數(shù),反推未知區(qū)域的水深信息,常見(jiàn)的半分析算法以比值模型為主;統(tǒng)計(jì)相關(guān)算法是將影像波段的輻射亮度值作為自變量,對(duì)應(yīng)實(shí)測(cè)水深值作為因變量,建立數(shù)據(jù)模型,解算模型參數(shù),其中神經(jīng)網(wǎng)絡(luò)模型具有較好的模擬能力,常用的有BP人工神經(jīng)網(wǎng)絡(luò)、隨機(jī)森林、支持向量機(jī)反演模型等。
本文利用波段比值模型、GBDT模型和網(wǎng)絡(luò)搜索+XGBoost模型進(jìn)行水深反演研究的實(shí)驗(yàn)對(duì)比。
在遙感水深反演領(lǐng)域,單波段模型可用于水質(zhì)清澈的理想淺海環(huán)境,水質(zhì)較差時(shí),反演精度較低。由單波段模型過(guò)渡到波段比值模型,根據(jù)波段組合與水深值之間的相關(guān)性,選取相關(guān)性較大的藍(lán)、綠兩個(gè)波段,帶入式(1)計(jì)算得出水深值。
(1)
式中:H為水深值;L(λi)為傳感器接收藍(lán)波段的輻射亮度;L(λj)為傳感器接收綠波段的輻射亮度;n、a、b為可調(diào)參數(shù)。
GBDT是以CART分類回歸樹(shù)為基模型的一種集成學(xué)習(xí)算法,采用加法模型,不斷迭代減小訓(xùn)練過(guò)程產(chǎn)生的殘差,利用損失函數(shù)(loss)作為準(zhǔn)確度指標(biāo),從而達(dá)到分類或者回歸的效果[13]。算法過(guò)程如下。
步驟1:初始化弱學(xué)習(xí)器,如式(2)所示。
(2)
式中:L為損失函數(shù);yi為第i個(gè)訓(xùn)練數(shù)據(jù);c為常數(shù)。
步驟2:進(jìn)行迭代訓(xùn)練,計(jì)算殘差,如式(3)所示。
(3)
步驟3:計(jì)算得到的殘差訓(xùn)練回歸樹(shù),根據(jù)權(quán)重更新得出強(qiáng)學(xué)習(xí)器,如式(4)所示。
(4)
步驟4:為了防止過(guò)擬合現(xiàn)象,加入學(xué)習(xí)率參數(shù)v,得到最終模型,如式(5)所示。
FM(x)=FM-1(x)+vfm(x)
(5)
該算法的訓(xùn)練過(guò)程如圖1所示。

圖1 GBDT訓(xùn)練過(guò)程
XGBoost是一種常用的boosting集成學(xué)習(xí)算法[14],該算法是一個(gè)加法模型,基于GBDT算法的改進(jìn),對(duì)目標(biāo)函數(shù)進(jìn)行二階泰勒展開(kāi),從而保留更多目標(biāo)函數(shù)的信息。為避免過(guò)擬合現(xiàn)象,添加正則化項(xiàng)[15],有利于模型獲得更低的方差。
本文引入網(wǎng)格搜索法,當(dāng)面臨小數(shù)據(jù)集時(shí),可以自動(dòng)進(jìn)行排列組合,從而篩選出最佳參數(shù)組合。其原理是:首先選擇當(dāng)前對(duì)模型影響最大的參數(shù)進(jìn)行調(diào)優(yōu),通過(guò)給定取值區(qū)間,按照順序進(jìn)行搜索,直到最優(yōu)再對(duì)下一個(gè)影響較大的參數(shù)進(jìn)行調(diào)優(yōu),以此類推,直至所有的參數(shù)調(diào)優(yōu)結(jié)束,選出最佳參數(shù)組合。其中參數(shù)max_depth用來(lái)防止模型陷入過(guò)度擬合狀態(tài),同時(shí)加快收斂速度,參數(shù)eta控制模型的學(xué)習(xí)效率,提高模型適應(yīng)能力。XGBoost算法相對(duì)于其他機(jī)器學(xué)習(xí)算法而言,有著更多的自由度優(yōu)勢(shì)[16],通過(guò)不斷尋找新的目標(biāo)函數(shù),自動(dòng)處理缺失值特征,從而提高預(yù)測(cè)精度。算法過(guò)程如下。
(6)
式中:K為樹(shù)的總個(gè)數(shù);fk為樹(shù)模型。
步驟2:經(jīng)過(guò)t次迭代后的目標(biāo)函數(shù)由兩部分組成(式(7)、式(8))。
(7)
(8)

式(3)對(duì)式(7)目標(biāo)函數(shù)進(jìn)行泰勒公式展開(kāi),整理可得式(9)。
(9)

(10)

(11)
步驟3:對(duì)葉子結(jié)點(diǎn)的輸出值求導(dǎo)并且令導(dǎo)函數(shù)等于零,得到XGBoost最終目標(biāo)函數(shù),如式(12)所示。
(12)
該算法的訓(xùn)練過(guò)程如圖2所示。

圖2 XGBoost訓(xùn)練過(guò)程
選取位于長(zhǎng)江入海口的南通市啟東恒大海上威尼斯內(nèi)湖作為研究區(qū),該水域水體透明度高,水質(zhì)條件好,適合開(kāi)展水深反演實(shí)驗(yàn)。影像數(shù)據(jù)來(lái)源于GF-1衛(wèi)星多光譜WFV相機(jī),有藍(lán)(B)、綠(G)、紅(R)和近紅外(NIR)四個(gè)波段,影像獲取時(shí)間為2020年3月21日,研究區(qū)如圖3所示。

圖3 啟東恒大海上威尼斯內(nèi)海位置與對(duì)應(yīng)遙感影像圖【審圖號(hào):GS(2022)2235號(hào)】
該區(qū)域?qū)崪y(cè)水深由船載單波束采集,時(shí)間為2020年5月7日至2020年5月13日,研究水域最深處可達(dá)10 m,近岸水深則在0.3 m左右。由于遙感影像和實(shí)測(cè)數(shù)據(jù)采集存在時(shí)間差,故通過(guò)現(xiàn)場(chǎng)水文站的水位數(shù)據(jù),對(duì)實(shí)測(cè)水深進(jìn)行改正。為獲取更高精度的訓(xùn)練效果,將實(shí)測(cè)水深數(shù)據(jù)做以下處理:首先,將實(shí)測(cè)水深點(diǎn)與GF-1衛(wèi)星影像的投影統(tǒng)一(本文為UTM投影);其次,按照像素單元進(jìn)行劃分,計(jì)算單個(gè)像素單元中每個(gè)水深的標(biāo)準(zhǔn)差,剔除標(biāo)準(zhǔn)差較大的水深點(diǎn);再次,通過(guò)將噪音大、有耀斑的水深點(diǎn)進(jìn)一步剔除,保留846個(gè)水深點(diǎn)用于建模,181個(gè)水深點(diǎn)用于檢驗(yàn);然后,利用ArcGIS軟件提取遙感影像上對(duì)應(yīng)實(shí)測(cè)水深點(diǎn)的像素值,結(jié)合吃水改正后的水深值,在Python編程環(huán)境中搭建網(wǎng)格搜索+XGBoost模型、GBDT模型和雙波段比值回歸模型,開(kāi)展水深反演實(shí)驗(yàn)。
建立回歸模型之前,需對(duì)衛(wèi)星遙感影像進(jìn)行預(yù)處理,影像反射率數(shù)據(jù)受到大氣、光照等因素的影響,會(huì)導(dǎo)致反演模型的精度下降,因此需要通過(guò)大氣校正降低水蒸氣、二氧化碳等物質(zhì)造成的影響[17]。本文采用FLAASH模塊對(duì)衛(wèi)星影像進(jìn)行大氣校正,在一定程度上消除大氣帶來(lái)的影響。為了提高反演精度,還需進(jìn)行正射校正和幾何校正,此過(guò)程均在ENVI軟件中實(shí)現(xiàn)。
為了獲取更好的反演效果,對(duì)遙感影像進(jìn)行水陸分離。無(wú)論是航線設(shè)計(jì)還是水深反演,對(duì)遙感影像進(jìn)行水體和陸地分離都極其重要。本文基于提取指數(shù)進(jìn)行水陸分離,減少非水體部分對(duì)回歸模型造成的影響,從而更加精確地提取水深值。
通過(guò)篩選剔除,將原始數(shù)據(jù)集劃分成訓(xùn)練集和測(cè)試集,其中測(cè)試集用作調(diào)整參數(shù)和評(píng)定模型的好壞。通過(guò)網(wǎng)格搜索對(duì)模型重要參數(shù)進(jìn)行調(diào)優(yōu):首先,將eta設(shè)置為0.1,其他參數(shù)為默認(rèn)值,使用Grid Search CV函數(shù)確定最佳迭代次數(shù);其次,使用Grid Search CV函數(shù)對(duì)最大深度進(jìn)行自動(dòng)尋優(yōu),減小(增大)學(xué)習(xí)率,同時(shí)增大(減小)迭代次數(shù),直至找到最佳的學(xué)習(xí)率和迭代次數(shù),使得誤差最小;然后,經(jīng)網(wǎng)格搜索得出的最佳參數(shù)組合(表1),并將其帶入模型進(jìn)行預(yù)測(cè),使得模型反演效果最好。

表1 網(wǎng)格搜索+XGBoost結(jié)果
將網(wǎng)格搜索得到的最佳參數(shù)組合帶入模型進(jìn)行預(yù)測(cè),得到表2結(jié)果。
使用相關(guān)系數(shù)(R2)、均方根誤差(RMSE)和平均絕對(duì)誤差(MAE)三個(gè)參數(shù)作為本文實(shí)驗(yàn)的評(píng)價(jià)指標(biāo)。R2越大表明擬合效果越好;RMSE和MAE越小,表明誤差越小,回歸效果越好。
為對(duì)比網(wǎng)格搜索+XGBoost模型與其他模型的反演精度,計(jì)算各模型的預(yù)測(cè)值與實(shí)測(cè)值之間的R2、RMSE和MAE,結(jié)果如表2所示。

表2 三個(gè)模型精度對(duì)比
由表2可知,對(duì)于本文所選的三種模型,水深反演結(jié)果最優(yōu)的是網(wǎng)格搜索+XGBoost模型。與常用的比值模型和GBDT模型進(jìn)行比較,網(wǎng)格搜索+XGBoost模型的R2較高,RMSE和MAE指數(shù)較小,表現(xiàn)出較強(qiáng)的相關(guān)性,反演精度更高。
對(duì)啟東恒大海上威尼斯區(qū)域GF-1遙感影像應(yīng)用網(wǎng)格搜索+XGBoost回歸模型進(jìn)行水深反演,結(jié)果如圖4所示。反演結(jié)果顯示,其在5 m以淺水域精度較高,優(yōu)于當(dāng)前遙感水深反演的精度要求。

圖4 恒大威尼斯內(nèi)海水深反演結(jié)果【審圖號(hào):GS(2022)2235號(hào)】
本文在國(guó)內(nèi)外水深遙感反演研究的基礎(chǔ)上,以GF-1衛(wèi)星遙感影像為實(shí)驗(yàn)數(shù)據(jù),首次將網(wǎng)格搜索+XGBoost模型用于啟東恒大威尼斯淺海區(qū)域水深遙感反演。通過(guò)提取地物的光譜信息,結(jié)合實(shí)測(cè)水深點(diǎn),構(gòu)建網(wǎng)格搜索+XGBoost反演模型、GBDT反演模型和雙波段比值模型進(jìn)行水深反演,有以下結(jié)論。
1)在對(duì)研究區(qū)域進(jìn)行水深反演時(shí),傳統(tǒng)的波段比值模型算法簡(jiǎn)單,過(guò)程易實(shí)現(xiàn),但精度低,不能很好地反演復(fù)雜的水下地形。
2)GBDT模型通過(guò)對(duì)多個(gè)參數(shù)進(jìn)行調(diào)試,能取得較好的反演效果,但其結(jié)果更多的取決于操作人員的主觀選擇。
3)使用網(wǎng)格搜索調(diào)整參數(shù)后的XGBoost模型預(yù)測(cè)精度更高,效率更快,其評(píng)價(jià)指標(biāo)R2為0.820,RMSE為0.247,MAE為0.134,精度均高于其他兩種算法,具有較好反演效果和使用價(jià)值。并且,該模型的諸多訓(xùn)練參數(shù)不需要人為設(shè)置,減少了人為因素的干預(yù),提高了反演精度。但其耗時(shí)較長(zhǎng),需要遍歷所有的參數(shù)組合,直至找到最佳參數(shù)組合。
在遙感水深反演領(lǐng)域,對(duì)于不同研究區(qū)域的輸入層特征向量沒(méi)有特定的參考依據(jù)。本文結(jié)合傳統(tǒng)波段比值線性回歸模型中的輸入?yún)?shù),將GF-1遙感影像多光譜的四個(gè)波段以及四個(gè)波段之間的比值作為輸入層,具有一定經(jīng)驗(yàn)性和主觀性。因此,后續(xù)工作將考慮增加其他相關(guān)因子參與模型的建立,比如懸沙參數(shù)因子和葉綠素參數(shù)因子,從而提高反演精度,為探測(cè)海底地形和軍事安全等方面提供有力參考。