艾寒冰,王彥國
(東華理工大學 地球物理與測控技術學院,江西 南昌 330013)
在野外重磁數據采集過程中,常會遇到沼澤、河流、水庫或斷崖等惡劣環(huán)境,導致數據無法采集,使得一部分數據空缺,不利于后期數據處理與解釋。目前,解決這一問題的主要措施是進行數據網格插值,較為常用的有克里金插值法[1]、最小曲率法[2]、等效源法[3]、線性插值法[4]等,不過這些方法的數據補空精度較低[5]。王萬銀等[6]引入最小曲率插值方法,給出了其差分迭代格式,并討論了相關技術措施,驗證了該方法精度明顯高于常規(guī)余弦插值法,但方法受給定初值影響較大;王明等[7]把位場數據插值類比成熱流傳導的過程,進而提出了基于熱傳導模型的位場網格數據補空方法,并驗證該法比最小曲率法插值效果更優(yōu);閆浩飛等[5]采用基于線性閾值衰減的凸集投影算法(POCS)進行位場數據補空,該方法相對常規(guī)插值方法具有更高的數據補空精度;曾小牛等進一步將該方法進行推廣,提出了基于凸集投影算法的重力數據擴充、下延一體化方法[8]和重力同時填充擴邊和去噪方法[9],有效地改善了常規(guī)分步驟進行插值、擴邊、下延和去噪的問題,獲得了良好的處理效果。
本文在凸集投影算法數據補空精度高基礎上,結合離散余弦變換(DCT)能量聚集度高及消耗內存小的優(yōu)點,并在Gao等[10]、張華等[11]在地震數據補空的研究基礎上,提出了基于DCT的廣義指數閾值衰減POCS算法,用于重磁數據的高質量補空工作。
凸集投影算法廣泛用于圖像修復,該方法將所有圖像約束表示為希爾伯特空間中的一系列閉合凸集Ci(i=1,2,3,…,m),然后將任意初始值x迭代投影到投影算子H下的所有閉合凸集的交點上。將位于交點邊界上的最終投影點作為最優(yōu)解,其原理如圖1所示,POCS迭代過程表達式為:
圖1 POCS算法原理[10]
xk+1=HmHm-1…H1xk,k=0,1,…,K。
(1)
基于DCT的數據補空凸集投影理論公式:
Dk=Dobs+MC-1TkCDk-1,k=1,2,3,…,K,
(2)
式中:K是總迭代次數;Dobs(x,y)是含缺失數據的原始觀測數據;Dk代表第k次迭代補空的數據;C和C-1代表二維離散余弦正、反變換;M是采樣矩陣,其與輸入數據維度相同,如果某點值為0,代表該點有數據,無需插值,反之為1,則代表該點需要進行插值計算;Tk是門限值矩陣,可表示為:
(3)
式中:pk是第k次迭代閾值,Sk是第k次的DCT變換譜。
Abma[13]給出的線性閾值衰減形式為:
(4)
本文給出的廣義指數閾值衰減形式為:
(5)
式中:Para為控制衰減速度的參數,當Para=1時為Gao等[10]提出的閾值衰減情況,當Para=0.5時即為張華等[11]提出的閾值衰減形式。
凸集投影算法進行數據補空的基本流程為:對原始輸入數據采用DCT處理,給定一個閾值,使得變換譜中振幅大于等于這個閾值時保留,振幅低于這個閾值則充零代替,然后對該數據進行反離散余弦變換乘以采樣矩陣,最后將其與原始待補空數據疊加,而在下一次迭代計算時,減小閾值重復上述操作,直到達到結束迭代計算的條件。本算法需要實現對不規(guī)則數據網格化,以滿足DCT變換的需要,算法的關鍵在于選擇合適的稀疏變換和閾值衰減方式,其工作流程圖見圖2。
圖2 基于DCT的POCS數據補空流程
為了驗證指數閾值衰減凸集投影算法在位場中的應用效果及優(yōu)越性,建立了一個由參數不同的4個模型體產生的疊加重力異常進行試算,使用的模型體參數如表1所示,模擬測區(qū)面積為500 m×500 m,點距與線距均為10 m。圖3是完整的疊加重力異常,其中黃色虛線所圈部分為地質體邊緣在地面的正投影,粉紅色鋸齒圈出區(qū)域為待補空部位。
表1 模型參數
圖4展示了Surfer軟件中4種常用的插值算法所獲得的數據補空結果及其與圖3的殘差情況。可以看出,所有的常規(guī)插值算法都在模型體1處存在等值線的間斷,尤其反距離加權平均法的最為明顯,最小曲率法的等值線畸變最不明顯,但最小曲率法的殘差值最大,其次是反距離加權法的。另外,常規(guī)插值方法的殘差均在原始數據的正異常處為負值,而負異常處為正值,這表明了補空的數據沒有達到真實值的幅度。表2給出了4種方法的插值均方根誤差(RMS),可以看出,反距離加權法的數據補空精度最差,其次是最小曲率法,二者誤差是克里金法和徑向基函數法的2倍左右。
圖3 組合模型產生的重力異常及缺失部位(粉色部分)
a、b—克里金法插值及殘差;c、d—徑向基函數法插值及殘差;e、f—反距離加權法插值及殘差;g、h—最小曲率法及殘差
表2 不同常規(guī)插值方法的數據補空誤差
為了了解線性閾值及指數閾值衰減凸集投影與總迭代次數關系,圖5繪制了不同模式下的凸集投影方法數據補空誤差與最大迭代次數K關系曲線??梢钥闯?,無論是線性衰減,還是不同參數的指數衰減,數據補空誤差均是隨著總迭代次數K增加而逐漸減小,不過指數衰減的速率要明顯大于線性衰減,其中Para=0.5時衰減速率最快。線性閾值衰減方式POCS算法基本收斂在0.070 mGal,指數閾值衰減基本收斂在0.030 mGal,不過指數閾值衰減的誤差隨著迭代次數變化呈現出了一定的波動性。對比圖5與表2可以看出,線性閾值衰減、指數閾值衰減凸集投影算法的數據補空精度分別是常規(guī)方法效果最好的徑向基函數法的1.6倍和4.5倍,這表明了采用基于指數閾值衰減的凸集投影算法能夠獲得更好的數據補空效果。
圖5 線性及指數閾值衰減凸集投影算法的理論數據補空誤差與總迭代次數K關系曲線
圖6則是基于線性與指數閾值衰減的POCS算法迭代800次數據補空后的重力異常及其與圖3的殘差,可以看出,無論線性閾值,還是不同參數指數閾值POCS法處理后的重力異常等值線均較圓滑,并不存在明顯的等值線畸變情況。從殘差圖中可以看出,POCS算法的殘差在原始數據表現為正異常區(qū)域內為正值,而負異常區(qū)為負值,這恰于常規(guī)插值方法數據補空的殘差是相反的,也就是說,基于POCS算法的數據補空的幅值略大于實際數據的。
a、b—線性閾值插值及殘差;c、d—指數閾值(Para=0.5)及殘差;e、f—指數閾值(Para=1)及殘差;g、h—指數閾值(Para=2)及殘差
為了進一步證實本文算法的有效性,對理論重力異常(圖3)添加了30%隨機噪聲(圖7),然后再對含噪重力異常進行了數據缺失處理(圖7粉色部位)。圖8是4種常用插值方法獲得的含噪重力數據補空結果及其與無噪聲重力異常的殘差,表3給出了4種插值方法的誤差。對比表3與表2可以看出,相對無噪聲時,含噪數據的常規(guī)插值方法補空誤差有所增加,不過規(guī)律基本保持,還是反距離加權法的誤差最大,最小曲率法次之。從圖8可以看出,4種常規(guī)插值方法獲得的補空數據仍在在模型體1位置存在等值線的畸變情況,另外還可以看出插值區(qū)域的噪聲水平與周邊數據噪聲水平明顯不一致,補空區(qū)的等值線更加圓滑些。
圖7 圖3添加30%隨機噪聲后的重力異常及缺失部位
a、b—克里金法插值及殘差;c、d—徑向基函數法插值及殘差;e、f—反距離加權法插值及殘差;g、h—最小曲率法及殘差
表3 不同常規(guī)插值方法對含噪重力異常的數據補空誤差
圖9是線性及指數閾值衰減POCS算法的補空的關系曲線。可以看出,線性閾值衰減POCS法的補空數據仍然是隨著總迭代次數的增加而減小,基本收斂在0.137 mGal,但不同para時的指數閾值衰減POCS法數據插值誤差則是隨著迭代增加,先減小后增加,最終基本收斂在0.272 mGal處,推測是誤差增加是由于噪聲的反復重建導致的。圖10可以看出,線性閾值衰減的POCS法(圖10a)也在模型體1處產生了明顯的等值線間斷情況,補空區(qū)內的異常同樣較為光滑,與殘差圖(圖10b)仍是南、北兩側為大面積的正差值,而中部則整體表現為大面積數據與無噪聲理論值之間均方誤差與總迭代次數K的負差值,這表明含噪數據進行補空時,線性閾值衰減的POCS法數據填充的誤差主要是數據未真實恢復引起的。指數閾值衰減的POCS法(圖10c、e、g)補空的數據明顯也存在著局部的波動,即含有一定的噪聲,殘差圖(圖10d、f、h)則是正負異常間隔出現,即認為主要誤差是由噪聲干擾引起的。
圖9 含噪聲時凸集投影算法的數據補空誤差與總迭代次數K關系曲線
a、b—線性閾值插值及殘差;c、d—指數閾值(Para=0.5)及殘差;e、f—指數閾值(Para=1)及殘差;g、h—指數閾值(Para=2)及殘差
為了檢驗本文算法的實際資料處理能力,對黑龍江嫩北農場布格重力異常進行挖空與數據補空處理。圖11是網格密度500 m×250 m的布格重力異常,布格重力異??傉`差為0.018 mGal。由于該區(qū)中部NWW流向的科洛河在汛期時河床較寬,最寬處可達1 km,汛期時重力數據將無法采集,故這里對科洛河的大致流域區(qū)域進行了數據挖空處理(圖11粉色部位)。
圖11 黑龍江嫩北農場布格重力異常及缺失部位(粉色部分)
圖12是理論模型測試所提及的4種常用插值方法處理的結果及其殘差分布,可以看到,這4種插值方法數據補空結果基本一致,很難看出彼此差異,且等值線畸變現象也難以直接顯示,其主要原因是挖空區(qū)域寬度僅為2~3個點距。從殘差圖上可以看出,補空數據與實際數據的殘差仍是大面積的正、負值,即誤差具有一定的范圍,這顯然不利于后期數據處理與解釋。表4是的4種常規(guī)插值方法的數據補空誤差,可以看出,徑向基函數法的數據補空誤差最小,其次是最小曲率法和克里金法,反距離加權法的誤差仍是最大,不過所有常規(guī)方法的數據補空誤差均遠大于布格重力異常的總誤差,也就是說補空數據質量較差。
表4 不同常規(guī)方法對實際資料進行數據補空的誤差
a、b—克里金法插值及殘差;c、d—徑向基函數法插值及殘差;e、f—反距離加權法插值及殘差;g、h—最小曲率法及殘差
圖13給出了基于線性、不同參數Para指數閾值衰減POCS算法數據補空均方根誤差與總迭代次數K的關系曲線,可以看出,無論是線性、還是不同參數的指數閾值衰減,POCS算法數據重建誤差均隨著K增加而逐漸減小,線性閾值衰減POCS算法的誤差基本收斂于0.149 mGal,遠高于布格重力異??傉`差,即線性閾值衰減的POCS算法重建的數據質量也較低;指數閾值衰減POCS算法的誤差收斂于0.008 mGal,則低于布格重力異??傉`差,重建數據質量較高,重建數據完全可以替代真實數據。圖14給出了Para=0.5時指數閾值衰減POCS法的處理結果以及殘差分布,殘差圖中顯示了缺失數據寬度較小的西北側基本為0,而補空區(qū)較寬的東南側基本是正負異常間隔出現,且數據幅值較小,這體現出了本文方法在數據補空方面的優(yōu)勢。
圖13 不同衰減方式POCS補空的誤差與總迭代次數K的關系曲線
a—指數閾值(Para=0.5)數據補空結果;b—與實測數據的殘差(K=6500)
針對缺失的重磁數據需要有效恢復的問題,本文采用了基于DCT的廣義指數閾值衰減凸集投影算法進行數據補空工作。通過模型分析與實例應用,證實了基于指數閾值衰減的凸集投影算法在數據補空中存在補空精度高及補空痕跡小的優(yōu)點,另外補空數據還能與實際數據噪聲含量保持一致。