王振,張錫亭,王建華
1. 北京航空航天大學 數學科學學院,北京 102206
2. 大連理工大學 工業(yè)裝備與結構分析國家重點實驗室,遼寧 大連 116024
3. 大連理工大學 數學科學學院,遼寧 大連 116024
4. 長沙礦冶研究院有限責任公司,湖南 長沙 410006
地球上海洋總面積約為3.6 億平方千米,占地球表面積的71%,蘊含巨大資源[1]。海底地形作為海洋研究的基礎地理信息,對海洋資源開采、水下設備研發(fā)以及對海底構造運動和海洋環(huán)流的研究具有重要意義[2]。但由于海底環(huán)境的特殊性以及采樣困難問題,造成海底地形數據網格精度不足,這給海洋事業(yè)發(fā)展帶來挑戰(zhàn)。海底地形復雜多變,高分辨率的水下地形的生成對于船舶、水下航行器等海洋工程裝備的路徑規(guī)劃和安全行駛十分重要。
提高海底地形圖像的分辨率面臨諸多困難,如何通過對有限測量數據的有效填充生成高分辨率地形是急需解決的問題。國內外研究人員提出很多種數據插值算法。如最近鄰域插值和線性插值,但由于最近鄰域插值在運算時直接選用鄰近的數據進行插值計算,得到的圖像的邊緣容易是鋸齒狀的,視覺效果較差。而線性插值數據量小、速度快,相對于最近鄰域插值方法來講,插值效果較好,但是其插值過程中會喪失一些高頻成分,使得圖像處理后變得有些模糊。為了改善上述情況,基于高階多項式的多項式內插算法被應用于圖像處理中,如Keys[3]提出立方卷積插值和Hou 等[4]提出三次樣條插值改變了圖像邊緣鋸齒狀以及圖像模糊的問題,但是計算復雜、計算量大。于是,Reed 等[5]提出了基于最小二乘法和線性插值方法的線性樣條插值方法以及Truong 等[6]提出基于最小二乘法與立方卷積插值函數的立方卷積樣條插值算法,經驗證比起先前的插值算法,會獲得更清晰的圖像,但是其計算復雜度相對較大 , 特別是算法中的計算循環(huán)卷積部分。除上述插值方法外,比如Schafer 等[7]提出基于貝葉斯方法和最大似然的插值算法,Li 等[8]提出基于模糊聚類的插值算法,這些數據插值算法在填充數據量小的問題上取得顯著的效果,然而面對大規(guī)模數據填充任務時,精度急劇下降,這是由于大規(guī)模數據存在著豐富的數據信息維度,而這些數據插值算法不能有效體現大規(guī)模數據的深度特征[9]。在地形數據處理方面,南非礦產地理學家Krige 提出了克里金插值算法。克里金插值算法相比于傳統線性插值算法具有更高的精度,在地質統計學及圖像處理等方面獲得了廣泛應用[10],但它本質上是一種光滑的內插值算法,生成圖像較光滑,然而真實的地表具有復雜性,用這種插值算法建立的模型未能體現真實地表最重要的特征[11]。
為了更好地提高圖像的質量,近幾年許多新方法被提出,比如Ramponi 等[12]提出空間可變的插值算法, 該方法利用相鄰點之間的不對稱性引入加偏差的距離,從而有效保護了圖像的局部特征,進而提高重構圖像的品質。Thurnhofer 等[13]提出自適應插值算法,根據原始圖像的不同區(qū)域的不同的結構特性,采用的不同的插值方法。為了更好完成大規(guī)模數據填充任務,大熱的機器學習方法被用于數據插值中,如Narang 等[14]提出K近鄰插值算法;Wang 等[15]提出基于支持向量回歸方法的數據插值方法;Shi 等[16]提出PixelShuffle 算法;Tian 等[17]提出DUpsampling 算法;張守建等[18]提出基于多層前饋神經網絡(back propagation,BP)的數據填充方法,應用于我國西南地區(qū)地形數據中。伴隨著海底開發(fā)工程裝備的發(fā)展,對海底高分辨率地形的需求變得十分迫切,但現有方法大多是基于鄰點的經典數據填充格式,很難反應海底地形的地貌特征,而利用有限采樣數據獲得相鄰樣本間的內在聯系,同時保持整體特征的地形生成方法值得深入研究探索。
本文在有限采樣數據下,通過BP 神經網絡建立具有跨層生成網格樣本能力的海底地形生成模型,對海底地形樣本填充,形成高分辨率海底地形圖像。
在保持樣本數據整體特征的前提下生成滿足高分辨率要求的海底地形,本文建立具有跨層網格生成效果的BP 神經網絡模型對原始網格型海底樣本加密填充,從而獲得高分辨率海底地形圖像。
本文針對如圖1 所示的規(guī)則網格地形樣本進行加密填充。圖1 中黑色圓形實心點代表測量地形已有樣本網格點,記為第1 層網格;綠色菱形實心點代表目標生成的網格點,記為第0 層網格。將第1 層網格每隔一行采樣一行,每隔一列采樣一列,得到的更稀疏的網格樣本記為第2 層網格,同理可生成更稀疏的高層網格。在第k層網格中取(m×n)個網格點組成第k層網格的網格單元,第一層網格的(3×3)網格單元如圖1 中紅框所示。在每個第k層網格單元中,相鄰的上下左右4 個等間隔網格點構成的小單元的中間位置為其對應的第k?1層網格。
圖1 海底地形樣本網格點示意
由于空間自相關性,同一區(qū)域地形數據具有相同的統計特征和隨機性[18],因此通過大量網格單元樣本訓練,神經網絡模型已將區(qū)域海底地形地貌數據隨機特征和統計特征融入跨層網格樣本間非線性映射關系中。采用這種方法得到的跨層網格生成模型既能表達網格點之間的相鄰關系,也能表達區(qū)域地形的隨機統計特征。利用3 層BP 神經網絡[19?25]構建高分辨率海底地形跨層生成模型,將第k層網格地形樣本和第k?1層網格地形樣本作為訓練集,通過BP 神經網絡獲得兩者間的非線性映射關系,形成具有跨層網格生成能力的BP 神經網絡模型。
式中:W(1)、W(2)分別為輸入層到隱藏層以及隱藏層到輸出層權重矩陣;分別為輸入層到隱藏層和隱藏層到輸出層的閾值矩陣;Z(1)為輸入層的輸出值構成的矩陣;A(2)為隱藏層的輸出值構成的矩陣;f為激活函數,用于隱藏層的傳遞,以達到增強BP 神經網絡模型非線性逼近能力的目的。
假設模型訓練樣本為第k層原始海底地形網格樣本Xk及其對應的第k?1層原始海底地形網格樣本Xk?1,樣本Xk以輸入層–隱藏層–輸出層的方向[26],按照式(1)~式(3)運算,得到經BP 神經網絡正向傳播運算后的第k?1層海底地形網格樣本Ok?1。
考慮到正向傳播結束后樣本Ok?1與樣本Xk?1之間有誤差,根據兩者的均方誤差利用梯度下降法,沿輸出層–隱藏層–輸入層的方向,進行誤差反向傳播[27],從而得到更新后的層間連接權重矩陣和閾值矩陣。
經過正向傳播和反向傳播之間的反復迭代,直到誤差達到容許的范圍或者循環(huán)達到設定的次數,則訓練過程完畢。BP 神經網絡會保存一套層間連接權重矩陣和閾值矩陣,形成如式(4)所示的用于反映訓練集中樣本Xk與樣本Xk?1之間非線性映射關系的跨層網格生成模型。
為檢驗跨層網格生成模型Fk→k?1對第p層海底地形網格樣本Xp的適用性,將Fk→k?1應用于Xp。
按照式(5),生成第p?1層海底地形網格樣本Xp?1,完成對樣本Xp的加密填充。以上過程記為Fk→k?1,p→p?1。
通過已有樣本數據檢驗模型Fk→k?1對第p?1層數據的生成質量,確定上述訓練模型的適用性,也部分說明跨層網格樣本之間具有相似的數據結構。因此可以利用訓練好的模型F2→1應用于第1 層網格樣本,也是給定的最精細網格,生成更精細的第0 層網格樣本,即X0=F2→1(X1),得到最終加密填充后的樣本數據。
為驗證模型是否可以在不改變樣本統計特征的前提下,完成對海底地形樣本的加密填充并提高海底地形圖像的清晰度,本文使用Mann-Whitney U 檢驗、Levene 檢驗和圖像清晰度3 個指標進行比較、驗證。
1.2.1 Mann-Whitney U 檢驗
Mann-Whitney U 檢驗[28?29]假設原始海底地形樣本Xk?1和模型生成的海底地形樣本Ok?1分別來自除了均值以外完全相同的2 個總體,由此檢驗2 組樣本的均值是否有顯著的差別。令WXk?1Ok?1表示Xk?1樣本觀察值小于Ok?1樣本觀察值的個數,m和n分別表示Xk?1和Ok?1的樣本個數,則檢驗統計量Z為
檢驗統計量Z服從標準正態(tài)分布,當求得的P值大于顯著性水平0.05 時,認為2 組地形樣本均值相等。
1.2.2 Levene 檢驗
Levene 檢驗[30?31]是一種方差齊性檢驗的方法。利用該檢驗方法來檢驗原始海底地形樣本Xk?1和模型生成的海底地形樣本Ok?1的方差是否相同。令Z1.和Z2.分別為Xk?1和Ok?1經轉化后的數值,和分別為轉化后2 組地形樣本的均值,表示Z1.和Z2.全部為地形樣本的均值。轉化公式及檢驗統計量W為
檢驗統計量W服從F(1,m+n?2)分布,當求得的P值大于顯著性水平0.05 時,認為2 組地形樣本之間方差相等。
1.2.3 圖像清晰度
本文采用基于頻率域特征的評價函數[32]來計算像素矩陣為M×N型矩陣的海底地形云圖的圖像清晰度,計算過程為:
1)將海底地形云圖RGB 圖像轉化為對應的灰度圖像,利用加權平均法計算圖像每一點的灰度值。
式中:(x,y)為圖像矩陣中每一點的坐標;R、G、B為三元光色紅、綠、藍強度值,任何一種顏色都可以由這3 種顏色表示,R、G、B取值范圍都為0 ~255。
2)對轉變?yōu)榛叶戎岛蟮暮5椎匦卧茍D圖像數值矩陣進行二維離散傅里葉變換,轉換到頻域。
3)計算海底地形云圖圖像清晰度數值。
式中:R(μ,ν)和I(μ,ν)分別為傅里葉變換F(μ,ν)的實部和虛部;G為圖像的清晰度數值,該數值越高,圖像越清晰。
利用Python 搭建海底地形跨層生成模型,完成對原始網格型海底地形樣本加密填充。為了確保模型有效,選取南海海底網格型樣本作為算例進行訓練分析。采用ETOPO5 (https://www.ngdc.noaa.gov/mgg/global/relief/ETOPO5/TOPO/ETOPO5/)中南海海域網格型海底地形數據作為樣本進行訓練,具體為東經105.004 2°~124.995 8°, 北緯21.362 5°~24.995 8°。選取3 種跨層取樣方式:將整體網格型原始海底網格樣本按照緊密相連的(3×3)個、(6×6)個、(12×12)個網格形成的網格單元進行分割。在3 種網格單元中分別以1 個、2 個、4 個網格上下左右等間隔取樣,每個網格單元都分別含有16 個第1、2、3 層樣本取樣位置,9 個相對應的第0、1、2 層樣本取樣位置。取樣位置舉例說明如圖2 所示。
圖2 取樣位置圖像
將跨層取樣后的海底地形樣本劃分3 種不同的訓練集和測試集的組合驗證模型效果。它們分別為:1)將171 570 組第2 層樣本和其對應的第1層樣本隨機分為170 570 組訓練集和1 000 組測試集。利用模型獲得訓練集中第2 層樣本與第1 層樣本之間的映射關系F2→1,將其作用于測試集的第2 層樣本中,生成相應的新第1 層樣本,與這種樣本組合相關的模型運行過程用F2→1,2→1標記。2)將83 580 組第3 層樣本和其對應的第2 層樣本隨機分為82 580 組訓練集和1 000 組測試集。通過模型將訓練集中的第3 層樣本與第2 層樣本之間的映射關系F3→2作用于測試集的第3 層樣本中,生成相應的新第2 層樣本,與這種樣本組合相關的模型運行過程用F3→2,3→2標記。3)將83 580 組第3 層樣本和其對應的第2 層樣本作為訓練集,隨機選取1 000 組第2 層樣本及其對應的第1 層樣本作為測試集。通過模型將訓練集中的第3 層樣本與第2 層樣本之間的映射關系F3→2作用于測試集的第2 層樣本中,生成相應的新第1 層樣本,與這種樣本組合相關的模型運行過程用F3→2,2→1標記。在算例運行過程中,為使各變量處于同等重要位置,保證模型運行結果的可靠性,對樣本標準化后再進入模型訓練。
本文BP 神經網絡的輸入層、隱藏層和輸出層的神經元個數,分別為16、40 和9,學習率為0.000 1,一次訓練選取的訓練樣本組數為7,所有訓練樣本最大訓練輪次為400,選取的激活函數為tanh 激活函數,根據激活函數,本文使用的權重矩陣初始化方法為Xavier 初始化[33?34]。F2→1,2→1、F3→2,3→2、 F3→2,2→1共3 種組合模型運行結果如圖3~8 所示。
圖3 F2→1,2→1 第 1 層原始海底地形樣本構成的三維圖像
圖3 、圖5 和圖7 表示3 種不同組合方式下測試集中原始海底地形樣本構成的三維圖像;圖4、圖6 和圖8 表示3 種不同組合方式下由模型生成的海底地形樣本構成的三維圖像。由同種組合方式的2 個圖像對比可知,模型生成的海底地形樣本與原始海底地形樣本相差不大。為更客觀地評價海底地形跨層生成模型結果,本文不僅對三維海底地形圖像進行對比,并且進行理論分析。如表1 所示,將3 種不同組合的模型運行結果與克里金插值算法對比,以均方誤差、相對誤差、決定系數、Mann-Whitney U檢驗和Levene 檢驗為對比指標進行比較。
表1 不同填充方式的誤差及假設檢驗結果對比
圖4 F2→1,2→1模型產生的第 1 層海底地形樣本構成的三維圖像
圖5 F3→2,3→2第 2 層原始海底地形樣本構成的三維圖像
圖6 F3→2,3→2模型產生的第 2 層海底地形樣本構成的三維圖像
圖7 F3→2,2→1第 1 層原始海底地形樣本構成的三維圖像
根據表1 可知,由F2→1,2→1、F3→2,3→2和F3→2,2→1這3 種組合方式對應的高分辨率海底地形跨層生成模型產生的海底地形樣本與原始海底地形樣本之間均值和方差相同的假設都成立,而由第2 層原始海底地形樣本和克里金插值方法共同產生的第1 層海底地形樣本與第1 層原始海底地形樣本之間不能通過均值相等的檢驗。對于模型生成的海底地形樣本與原始海底地形樣本之間的均方誤差和相對誤差,模型低于克里金插值。在決定系數方面,模型高于克里金插值。因此,該模型可以在不改變數據統計特征的前提下,利用跨層網格生成策略完成對海底地形數據的填充。
由上文可知,本文建立的海底地形跨層生成模型可以有效獲取跨層樣本間的非線性映射關系,并運用到其他層網格樣本生成中。為完成原始網格型海底樣本的加密填充,本文參照F3→2,2→1運行模式,利用F2→1,1→0運行模式,獲得第0層海底地形樣本,完成對原始海底地形樣本的加密填充。為體現高分辨率海底地形生成模型對樣本的填充效果,隨機選取該海底2 個局部地區(qū),得到2 個地區(qū)的樣本填充前后的三維海底地形對比圖像,如圖9 ~ 18 所示。同時,利用Mann-Whitney U 檢驗和Levene 檢驗來檢驗2 個地區(qū)樣本填充前后的統計特征的一致性,并由克里金插值對相同區(qū)域的第1 層原始海底地形網格樣本加密填充,以圖像清晰度為依據比較兩者生成的海底地形云圖圖像的質量,具體結果如表2 和表3所示。
表2 本文模型生成地形和克里金插值結果的數據的有效性對比(局部地區(qū)1)
表3 本文模型生成地形與克里金插值的數據的有效性結果對比(局部地區(qū)2)
圖9 局部地區(qū)1 原始樣本海底地形三維圖像
圖10 局部地區(qū)1 模型填充后海底地形三維圖像
由圖9~10 對比以及圖14~15 對比可知,本文高分辨率海底地形跨層生成模型可以對地形數據進行合理的填充,并且由圖11~13 對比以及圖16~18 對比可知,克里金插值方法獲得的圖像過于光滑,沒有體現出海底的地形特征,而本文模型生成的圖像在提升清晰度的同時,保證了生成的海底地形圖像有效性。由表2 和表3 可知,本文構建的高分辨率海底地形跨層生成模型對樣本填充效果良好。Mann-Whitney U 檢驗和 Levene檢驗結果顯示,填充前后樣本的均值和方差沒有顯著差異。通過圖像清晰度計算結果可知,該模型對樣本填充后圖像的清晰度高于原始樣本圖像以及克里金插值填充后樣本圖像的清晰度。
圖11 局部地區(qū)1 模型原始樣本海底地形云圖
圖12 局部地區(qū)1 模型填充樣本后海底地形云圖
圖13 局部地區(qū)1 克里金插值后海底地形云圖
圖14 局部地區(qū)2 原始樣本海底地形三維圖像
圖15 局部地區(qū)2 模型填充后海底地形三維圖像
圖16 局部地區(qū)2 原始樣本海底地形云圖
圖17 局部地區(qū)2 模型填充樣本后海底地形云圖
圖18 局部地區(qū)2 克里金插值后海底地形云圖
本文基于BP 神經網絡建立了具有跨層網格生成能力的高分辨率海底地形跨層生成模型,通過南海海底地形驗證了該模型產生的數據兼顧了原始樣本的相鄰數據關系和整體數據特征。
1)模型利用BP 神經網絡的泛化能力,將高層網格樣本與其對應的低層網格樣本之間的非線性映射關系遷移至其他層網格樣本生成中,并根據均方誤差與相對誤差驗證了該模型具有有效的網格樣本跨層生成能力。
2)通過假設檢驗,驗證了該模型生成樣本可以表征出原始樣本的統計特征。
3)由云圖圖像及其清晰度的計算結果表明,相較于傳統克里金插值方法,該模型的結果良好。因此,本文模型可以有效獲取并遷移跨層網格間的相關關系至其他層網格數據生成中,完成對海底樣本的加密填充,生成高分辨率圖像用于展現海底地形。機器學習和跨層網格生成方法的結合方式給海底地形的研究提供了一種新的思路,高分辨率海底地形跨層生成模型在更大地形范圍以及更多海山、海脊等海底地貌特征方面具有廣闊的應用前景。