魏德宏,禤鍵豪,楊嘉偉,張興福,余 旭
(1. 廣東工業大學測繪工程系,廣東 廣州 510006; 2. 同濟大學測繪與地理信息學院,上海 200092;3. 臨沂市自然資源和規劃局,山東 臨沂 276000)
利用GNSS技術可快速測量地面點的三維坐標,但由于其高程為大地高,無法用于實際生產,因此,尋求將GNSS測量大地高轉換為正常高的有效方法具有重要的實用價值。目前常用于GNSS高程轉換的方法包括函數模型擬合法[1]、地球重力場模型法[2]、似大地水準面模型法[3]、機器學習法[4]等。而在高程異常變化較大的山區,探討利用少量GNSS水準點實現較高精度的GNSS高程轉換仍然具有非常高的應用價值。近年來以深度學習為代表的機器學習方法已被廣泛應用于各個領域[5],部分學者探討將機器學習方法用于GNSS高程轉換[6]。本文基于GSVS2017項目高精度實測GNSS水準數據、SGG-UGM-2重力場模型及剩余地形模型等數據,利用移去-恢復法,將不同計算方案的深度BP/ELMAN神經網絡方法用于山區GNSS高程轉換,同時與其他轉換方法進行對比及相關精度分析。
選擇深度BP神經網絡、深度ELMAN神經網絡、徑向基函數神經網絡、廣義回歸神經網絡及支持向量機回歸等方法,分析其用于山區GNSS高程轉換的精度。BP神經網絡為前饋全局逼近神經網絡,由輸入層、隱含層、輸出層組成,可包含一層或以上隱含層,主要特點為誤差反向傳播以調節權值與閾值[7]。ELMAN神經網絡為采用延時算子的反饋型神經網絡[8],結構比BP神經網絡多一個連接層,以記憶隱含層為此刻輸出值,并在下一時刻輸出,使得網絡具有記憶歷史數據的功能。當BP和ELMAN神經網絡采用兩層以上隱含層的深度學習算法時,可稱為深度BP/ELMAN神經網絡[9]。徑向基函數神經網絡(RBFNN)為前饋局部逼近神經網絡,結構與BP神經網絡相似,以徑向基函數作為隱含層激勵函數[10]。廣義回歸神經網絡(GRNN)為一種改進的徑向基函數網絡,結構包含輸入層、模式層、求和層、輸出層[11],適用于非線性問題的研究。支持向量機回歸(SVR)通過確定的非線性映射將輸入向量映射到高維Hilbert空間中,在此空間進行線性回歸[12]。本文基于遺傳算法(GA)選取SVR的最優參數進行回歸。
選擇GNSS水準點的經度、緯度、大地高及SGG-UGM-2模型的高程異常作為輸入變量,移去SGG-UGM-2模型[13]與剩余地形模型[14]的高程異常后的剩余高程異常作為目標變量,采用基于移去-恢復[14]的深度BP/ELMAN神經網絡進行GNSS高程轉換,具體數據處理流程如圖1所示。利用GRNN、RBFNN、SVR方法進行GNSS高程轉換的流程也類似。

圖1 基于移去-恢復的深度BP/ELMAN神經網絡的高程異常擬合流程
選取NGS GSVS2017工程共200個線狀分布的GNSS水準點為研究對象。測區地形為山地,海拔范圍約為1900~3300 m,線路總長約320 km,平均點間距離約為1.6 km,高程異常值變化范圍為-20.135~-16.644 m,地形和高程異常起伏情況如圖2所示。利用所有GNSS水準點對2190階次的SGG-UGM-2模型進行精度評估,結果顯示,模型在該測區的精度為17.6 cm。下文采用基于移去-恢復的深度BP/ELMAN神經網絡及其他擬合方法進行高程異常擬合與精度分析。

圖2 GSVS2017項目的GNSS水準點海拔高度與高程異常起伏
借助Matlab軟件中的相關函數或工具包,利用深度BP/ELMAN神經網絡、GRNN、RBFNN和SVR進行GNSS高程轉換的程序設計,并進行試驗與精度分析,其中深度BP/ELMAN神經網絡采用多層隱含層(即深度學習算法),且考慮不同隱含層激勵函數進行訓練,隱含層最高取6層,循環取優;GRNN、RBFNN和SVR的激勵(核)函數均采用高斯函數。為消除數據量綱等的影響,對輸入數據及目標數據歸一化至[-1,1][15]。本文分3種方案進行相關試驗,即每50個GNSS水準點為一組,共4組,每組線路長約80 km(方案1);每100個GNSS水準點為一組,共2組,每組線路長約160 km(方案2);每200個GNSS水準點為一組,共1組(方案3)。GNSS水準點分別按點間距約50、30、15、10、5 km進行取點作為訓練點,剩余點作為檢核點。圖3為各方案GNSS高程轉換外符合精度的統計結果,其中訓練點間距為50 km時由于已知點較少,只考慮方案3,部分方案由于訓練點不足無法解算而沒有結果,BP/ELMAN括號內容表示所選用的隱含層激勵函數。
在深度BP/ELMAN神經網絡中:①當訓練點間距為50 km時,方案3擬合精度為3.45~6.39 cm,深度BP/ELMAN神經網絡(ReLU函數)的擬合精度為3.45/3.49 cm。②當訓練點間距為30 km時,方案1擬合精度為2.38~6.38 cm,方案2擬合精度為2.85~4.49 cm,方案3擬合精度為2.98~4.31 cm,深度BP/ELMAN神經網絡(ReLU函數)擬合精度分別為2.57/2.38、2.86/2.85、3.17/2.98 cm。③當訓練點間距為15 km時,方案1擬合精度為1.54~2.50 cm,方案2擬合精度為1.71~2.43 cm,方案3擬合精度為1.97~2.58 cm,深度BP/ELMAN神經網絡(ReLU函數)分別為1.79/1.80、2.00/2.24和2.16/2.19 cm。④當訓練點間距為10 km時,方案1擬合精度為0.97~1.37 cm,方案2擬合精度為1.04~1.42 cm,方案3擬合精度為1.27~1.63 cm,深度BP/ELMAN神經網絡(ReLU函數)分別為1.00/1.04、1.05/1.14和1.28/1.27 cm。⑤當訓練點間距為5 km時,方案1擬合精度為0.57~0.67 cm,方案2擬合精度為0.64~0.69 cm,方案3擬合精度為0.68~0.82 cm,不同隱含層激勵函數的深度BP/ELMAN神經網絡的擬合精度基本相同。
此外,當訓練點間距分別為50、30、15、10、5 km時,GRNN、RBFNN、SVR、二次曲線和曲面擬合中所有方案外符合精度最優分別為3.68、4.15、2.74、1.38、0.69 cm,采用深度BP/ELMAN神經網絡(ReLU函數)較其分別提升6%/5%、38%/43%、35%/34%、28%/25%和16%/17%。可見采用深度BP/ELMAN神經網絡(ReLU函數)進行GNSS高程轉換較GRNN、RBFNN、SVR、二次曲線和曲面擬合方法有較大的優勢。
綜上所述,深度BP/ELMAN神經網絡(ReLU函數)在不同的訓練點間距中均能獲得較高精度的結果,尤其當已知GNSS水準點點間距較大時,優勢明顯,在實際應用中可優先考慮該方法。
進一步分析在訓練點間距分別為50、30、15、10、5 km時,深度BP/ELMAN神經網絡(ReLU函數)兩者中最優方法的擬合精度(兩者差別可忽略)。圖4為擬合后的高程異常殘差。可以看出,訓練點間距越小,檢核點殘差值越小,5種計算結果中檢核點殘差最大值分別為10.45、7.70、4.49、2.34、1.36 cm,最小值分別為-7.02、-5.67、-5.44、-3.31、-1.49 cm,平均值分別為0.57、0.41、0.33、0.10、0.01 cm,經計算,5種擬合中檢核點間高差分別有100%、98%、98%、100%、100%符合五等水準測量要求,有92%、92%、97%、98%、100%符合四等水準測量要求,有77%、78%、82%、91%、100%符合三等水準測量要求,有31%、27%、36%、34%、58%滿足二等水準測量要求。

圖4 高程異常擬合殘差
本文利用GSVS2017項目提供的GNSS水準數據,基于移去-恢復法,分別采用不同隱含層激勵函數的深度BP/ELMAN神經網絡及其他方法進行GNSS高程轉換與精度分析,主要結論如下。
(1)深度BP/ELMAN神經網絡(ReLU函數)在不同的訓練點間距及不同計算方案中均能取得較高的GNSS高程轉換精度,在山區GNSS高程轉換中可優先考慮該方法。
(2)采用深度BP/ELMAN神經網絡(ReLU函數)進行GNSS高程轉換時,所有點間距計算結果均可滿足90%以上檢核點間高差,達四等測量精度,75%以上可達三等水準測量精度。訓練點間距為5 km時,55%以上高差可達二等水準測量精度。