• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Duilib庫的海洋可控源電磁數(shù)據(jù)預(yù)處理軟件開發(fā)

      2021-04-08 08:49:10趙文強(qiáng)景建恩趙慶獻(xiàn)羅賢虎
      物探化探計算技術(shù) 2021年2期
      關(guān)鍵詞:電磁場電磁預(yù)處理

      趙文強(qiáng),景建恩,楊 杰,趙慶獻(xiàn),羅賢虎

      (1.中國地震應(yīng)急搜救中心,北京 100049;2.中國地質(zhì)大學(xué)(北京),北京 100083;3.中國科學(xué)院 聲學(xué)研究所,北京 100190;4.廣州海洋地質(zhì)調(diào)查局,廣州 510760)

      0 引言

      海洋可控源電磁法(MCSEM)經(jīng)過數(shù)十年的發(fā)展,在實際應(yīng)用中取得顯著成效,已成為國內(nèi)、外海洋油氣和天然氣水合物勘查的有效手段之一[1]。這吸引了越來越多的油氣公司、高等院校及科研單位對此方法的關(guān)注,并紛紛開展相關(guān)的研究工作。

      國內(nèi)、外學(xué)者對海洋可控源電磁數(shù)據(jù)預(yù)處理做了大量的研究,MacGregor[2]對海洋地殼結(jié)構(gòu)進(jìn)行研究,采用快速傅立葉變換方法,對海洋可控源電磁數(shù)據(jù)進(jìn)行了處理與分析;Behrens[3]在其博士論文中介紹了數(shù)據(jù)處理的相關(guān)技術(shù)及流程;Lu[4-5]則介紹了數(shù)據(jù)處理的基本步驟并申請了專利;Wright[6]研究了壓制天然場源噪聲的方法;Mittet[7]介紹了能夠突出異常信息的歸一化幅值曲線計算方法;Nordskag[8]對消除海水層的電磁響應(yīng)進(jìn)行了理論研究。此外,一些學(xué)者討論了空氣波的壓制方法[9-10]。國內(nèi)學(xué)者在海洋可控源電磁數(shù)據(jù)方面也開展了一些研究工作,林昕等[11]研究了兩種提高海洋可控源電磁數(shù)據(jù)信噪比的方法;劉寧等[12]研究了時變雙邊濾波法;李予國等[13]對海洋可控源電磁數(shù)據(jù)預(yù)處理方法進(jìn)行了總結(jié)。一些學(xué)者則開發(fā)了MCSEM數(shù)據(jù)預(yù)處理的可視化軟件。

      目前海洋可控源電磁數(shù)據(jù)處理程序大多是采用MATLAB或C++語言進(jìn)行編寫,可視化界面少,操作復(fù)雜、在實際生產(chǎn)中難以推廣和實施[14]。傳統(tǒng)的MFC框架所開發(fā)的界面過于死板,并且其封裝性加大了界面優(yōu)化和改動的難度,往往出現(xiàn)代碼體積較大,影響后續(xù)開發(fā)者的工作效率。顯然,隨著預(yù)處理技術(shù)的不斷發(fā)展,尋找一套簡便的開發(fā)工具,編寫一套操作簡單、界面友好、可視化程度高和擴(kuò)展性強(qiáng)的海洋可控源電磁數(shù)據(jù)預(yù)處理軟件,將具有重要的實際意義。

      筆者采用Duilib庫進(jìn)行海洋可控源電磁數(shù)據(jù)預(yù)處理軟件開發(fā),將用戶界面和消息處理邏輯徹底分離,通過在Duilib庫中加載XML腳本,解決MFC基礎(chǔ)控件功能單一以及界面不美觀等問題,實現(xiàn)了數(shù)據(jù)格式轉(zhuǎn)換、解析并加載電磁場數(shù)據(jù)、電磁場數(shù)據(jù)與導(dǎo)航數(shù)據(jù)可視化、電磁場數(shù)據(jù)頻譜分解、發(fā)射機(jī)電流數(shù)據(jù)的頻域處理及可視化、導(dǎo)航數(shù)據(jù)與頻譜數(shù)據(jù)合并及歸一化處理、MVO(振幅隨偏移距變化)和PVO(相位隨偏移距變化)曲線生成及數(shù)據(jù)顯示等多項功能。最后,通過與前人處理結(jié)果的對比驗證了處理軟件的正確性可靠性,并對我國某海域的可控源電磁實測數(shù)據(jù)進(jìn)行了處理。

      1 電磁數(shù)據(jù)預(yù)處理軟件開發(fā)

      1.1 海洋可控源電磁數(shù)據(jù)預(yù)處理原理

      海洋可控源電磁探測,是將電磁發(fā)射機(jī)拖曳至近海底,通過水平電偶極向海底發(fā)射大功率電磁波,由布設(shè)在海底靜止的電磁接收機(jī)采集人工源電磁場信號[17]。

      如圖1所示,AB為電偶極子,方向與Z軸方向一致。假設(shè)偶極子位于球坐標(biāo)系的坐標(biāo)原點,發(fā)射電流的強(qiáng)度為I,偶極矩為dL。在均勻的全空間內(nèi),當(dāng)電阻率為ρ時,根據(jù)電磁場理論可以計算出觀測點P(r,θ,φ)的電偶極子的電場值為:

      (1)

      (2)

      圖1 均勻空間中電偶極子源Fig.1 Electric dipole source in uniform space

      圖2 MCSEM數(shù)據(jù)預(yù)處理流程圖Fig.2 MCSEM data preprocessing flow chart

      測量時,采集站記錄的是時間域電磁場信號,海洋電磁場數(shù)據(jù)資料通常在頻率域進(jìn)行,因此在預(yù)處理時需要將時間域電磁場信號轉(zhuǎn)換為頻率域信號[13]。采集站自由釋放至海底,方位是不確定的,因此要對采集的電磁場數(shù)據(jù)進(jìn)行方位和水平矯正[16]。最后與發(fā)射機(jī)的導(dǎo)航數(shù)據(jù)合并處理后,可以獲得MVO和PVO曲線(圖2)。

      1.2 Duilib界面庫簡介

      Duilib是我國自主開發(fā)的DirectUI界面庫,是一款強(qiáng)大的開源界面開發(fā)工具,支持Windows32、WindowsCE、Mobile等平臺,由C++開發(fā),遵循BSD協(xié)議[17]。采用Duilib庫開發(fā)應(yīng)用軟件,具有工作效率高、開發(fā)周期短、兼容性好、界面美觀等優(yōu)點。Duilib兼容ActiveX插件,可以與MFC界面庫共同使用,已經(jīng)在互聯(lián)網(wǎng)客戶端、手機(jī)客戶端、車載電腦系統(tǒng)中得到成功應(yīng)用。

      圖3 Duilib界面設(shè)計流程圖Fig.3 Flow chart of duilib interface design

      Duilib的主要原理就是將界面和邏輯徹底分離,提高界面開發(fā)效率。整個流程如圖3所示,利用Duilib設(shè)計界面的工作主要包括三個內(nèi)容:加載并解析XML、顯示XML界面、消息傳遞及響應(yīng)。

      1.3 軟件框架設(shè)計

      本軟件旨在處理由中國地質(zhì)大學(xué)(北京)所研發(fā)的海洋可控源電磁儀器所采集的數(shù)據(jù),對其進(jìn)行預(yù)處理,計算結(jié)果用于后期的二維反演?;赩S2013平臺,采用C++語言編寫,使用Duilib界面庫與MFC進(jìn)行開發(fā)。根據(jù)需求軟件的具體功能如下:

      1)數(shù)據(jù)格式轉(zhuǎn)換。

      2)解析并加載人工源電磁場數(shù)據(jù)。

      3)電磁場數(shù)據(jù)與導(dǎo)航數(shù)據(jù)可視化。

      4)發(fā)射電流與電磁場數(shù)據(jù)譜分析與顯示。

      5)電磁場頻譜的歸一化處理。

      6)導(dǎo)航數(shù)據(jù)與歸一化數(shù)據(jù)合并與導(dǎo)出。

      7)MVO和PVO曲線生成與顯示。

      圖4 軟件設(shè)計MVC結(jié)構(gòu)圖Fig.4 MVC structure chart of software design

      圖6 軟件開發(fā)設(shè)計原理Fig.6 Principles of software development and design

      圖5 軟件設(shè)計MVC結(jié)構(gòu)圖Fig.5 MVC structure chart of software design

      軟件整體功能及相應(yīng)模塊如圖4所示,根據(jù)軟件的功能,可將程序分為:①數(shù)據(jù)計算模塊;②圖形顯示模塊;③數(shù)據(jù)模塊;④界面設(shè)計模塊。數(shù)據(jù)計算模塊用于對數(shù)據(jù)的FFT變換,歸一化處理以及振幅和相位的計算。圖形顯示模塊用于對原始數(shù)據(jù)和MVO、PVO曲線的繪制。數(shù)據(jù)模塊用于對原始數(shù)據(jù)的讀取,各參數(shù)的定義以及計算結(jié)果的更新和輸出。界面設(shè)計模塊也就是用XML文件來設(shè)計軟件界面。各個功能的實現(xiàn)是通過函數(shù)的調(diào)用來完成。

      通過對軟件的模塊劃分主要設(shè)計的類有:

      class TabOpenTsFile;//解析數(shù)據(jù)類

      class TsEnvModel;//數(shù)據(jù)轉(zhuǎn)換類

      class TsViewHelper;//數(shù)據(jù)圖像繪制類

      class FFTProcessModel;//數(shù)據(jù)處理類

      class GlobalConstants;//參數(shù)及數(shù)據(jù)類

      1.4 軟件開發(fā)模式

      海洋可控源電磁數(shù)據(jù)預(yù)處理軟件采用MFC和Duilib界面庫渲染技術(shù)進(jìn)行開發(fā)。傳統(tǒng)的模型(Model)-視圖(View)-控制器(Controller) (MVC)設(shè)計模式實現(xiàn)了業(yè)務(wù)功能邏輯、數(shù)據(jù)模型和界面UI交互的功能解耦。這里采用MVC進(jìn)行程序框架的架構(gòu),設(shè)計了數(shù)據(jù)模型層、界面層和控制層(圖5),其中控制層連接數(shù)據(jù)模型層和界面層,完成數(shù)據(jù)更新和顯示;界面層用于人機(jī)交互以及圖形顯示;數(shù)據(jù)層保存原始數(shù)據(jù)以及數(shù)據(jù)的處理結(jié)果。該開發(fā)模式能夠極大的提高軟件開發(fā)效率,減少了對軟件的后期維護(hù)和再開發(fā)的困難。

      圖7 原始數(shù)據(jù)對比圖Fig.7 Raw data comparison chart(a)前人軟件數(shù)據(jù)結(jié)果;(b)本軟件數(shù)據(jù)結(jié)果

      1.5 功能實現(xiàn)

      軟件在開發(fā)過程中,基于XML文件+UI引擎+Win32框架(圖6)來實現(xiàn)軟件的各個功能界面。編寫XML文件完成界面整體框架設(shè)計,使用UI引擎調(diào)用XML文件實現(xiàn)界面渲染,最后使用Win32框架的Duilib消息處理機(jī)制,完成各個界面窗口的消息處理與消息傳遞。針對Windows系統(tǒng)平臺的特點,在進(jìn)行快速FFT變換時采用了多線程編程,增加了變換速度,提高了計算效率。參照海洋可控源電磁數(shù)據(jù)預(yù)處理的流程,以及數(shù)據(jù)預(yù)處理的方法原理完成功能函數(shù)的實現(xiàn),最后通過用戶界面的生成實現(xiàn)處理結(jié)果可視化的效果。

      雞、鴨、魚、肉類菜肴基本都要做加熱前的調(diào)味,最關(guān)鍵就在于去除腥臊味;青筍、黃瓜等配料,也常先用鹽腌除水,確定其基本味。

      圖8 MVO與PVO對比圖Fig.8 MVO and PVO comparison chart(a)前人軟件數(shù)據(jù)結(jié)果;(b)本軟件數(shù)據(jù)結(jié)果

      1.5.1 XML文件編寫

      在進(jìn)行XML文件編寫時,根據(jù)海洋可控源電磁數(shù)據(jù)預(yù)處理軟件的需求,用戶界面分為:繪圖區(qū),菜單選擇區(qū),編輯區(qū)。繪圖區(qū)用于繪制原始數(shù)據(jù)曲線、計算結(jié)果曲線。菜單選擇區(qū)用于選擇不同的功能。編輯區(qū)用于選擇和編輯數(shù)據(jù)處理過程所需的參數(shù)以及文件的加載和圖片的保存。為了保證本軟件在操作過程中的簡便性和界面美觀,XML文件編寫時,主要采用了水平布局,垂直布局以及選項布局三種布局方式。

      1.5.2 XML文件解析并顯示界面

      CPaintManagerUI m_PaintManager;

      m_PaintManager.Init(m_hWnd);//主窗口類與窗口句柄關(guān)聯(lián)

      CDialogBuilder builder;// 聲明窗口構(gòu)造器

      CControlUI*pRoot=builder.Create(_T("

      ASSERT(pRoot&&"Failed to parseXML");

      m_PaintManager.AttachDialog(pRoot);//創(chuàng)建控件樹

      m_PaintManager.AddNotifier(this);//添加控件等

      消息響應(yīng)

      m_pMainWnd->Create(NULL,_T("MainWnd"),UI_CLASSSTYLE_DIALOG,WS_EX_STATICEDGE|WS_EX_APPWINDOW,0,0,600,800);//注冊窗口類,創(chuàng)建窗口

      m_pMainWnd->CenterWindow();

      m_pMainWnd->ShowModal();//顯示窗口、進(jìn)入窗口消息循環(huán)

      1.5.3 建立消息響應(yīng)

      界面生成之后,需要重寫相應(yīng)函數(shù)Notify以響應(yīng)用戶請求的事件。這里以按鈕事件為例進(jìn)行介紹,主要包括3個步驟。

      1)調(diào)用AddNotifier函數(shù)將消息加入Duilib的消息循環(huán)。

      2)給按鈕設(shè)置一個唯一的控件ID。

      3)在Notify函數(shù)里處理消息。

      步驟1)在重寫HandleMessage函數(shù)時已經(jīng)完成,步驟2)是在編寫XML時完成的。當(dāng)用戶進(jìn)行點擊按鈕操作時,需要在Notify函數(shù)中進(jìn)行判斷點擊的按鈕以及實現(xiàn)。至此實現(xiàn)了主界面的編寫、顯示以及消息的響應(yīng)。

      圖9 實測MCSEM數(shù)據(jù)處理結(jié)果Fig.9 Data processing results of measured MCSEM(a)MVO曲線;(b)PVO曲線

      2 軟件測試

      對我國某海域?qū)崪y海洋可控源電磁數(shù)據(jù)進(jìn)行處理,并檢測軟件的可靠性。選取相同時間段電磁場時間序列的原始信號,與中國地質(zhì)大學(xué)(北京)王銘等[14]所開發(fā)的處理軟件進(jìn)行對比(圖7),由圖7可以看出,本軟件與中國地質(zhì)大學(xué)(北京)海洋可控源電磁數(shù)據(jù)預(yù)處理軟件顯示結(jié)果相同。

      選取相同的處理參數(shù),對同一測站的海洋可控源電磁數(shù)據(jù)進(jìn)行處理,最終得到各自的MVO與PVO曲線。這里頻譜分析采用FFT變換,選取的窗口類型都為Hanning窗和窗口長度都為4 096(圖8)。

      對比圖8(a)和圖8(b)發(fā)現(xiàn),本軟件得到的MVO曲線能夠得到更大的收發(fā)距,在計算過程中,本軟件采用頻率域振幅疊加的方法壓制實測信號中的噪聲,提高了信噪比,因此獲得了較大的收發(fā)距。由于本軟件集成化較好,加上對計算方法和程序進(jìn)行優(yōu)化處理,處理一條測線9個測點的處理效率提升了近35%。對比中可以看出PVO曲線差異較大,是由于本軟件對儀器內(nèi)置原子鐘產(chǎn)生的時間漂移而引起相位誤差進(jìn)行了矯正,得到了相對準(zhǔn)確的相位結(jié)果。

      3 實測數(shù)據(jù)處理

      通過與前人編寫的處理軟件進(jìn)行對比測試,測試結(jié)果表明本軟件的正確性,因此本軟件可用于生產(chǎn)任務(wù)中的MCSEM數(shù)據(jù)處理。利用本軟件處理了中國地質(zhì)大學(xué)(北京)與廣州海洋地質(zhì)調(diào)查局在2018年南海某海域采集的MCSEM數(shù)據(jù),本次對一條測線9個測點8Hz的人工源電磁場數(shù)據(jù)進(jìn)行處理。圖9顯示了最后的 MVO、PVO曲線,各顏色代表了不同測點的處理結(jié)果。

      4 結(jié)論

      利用筆者開發(fā)的預(yù)處理軟件對實測海洋可控源電磁數(shù)據(jù)進(jìn)行處理,最后得到了滿意的MVO與PVO曲線,又通過與前人軟件的處理結(jié)果進(jìn)行對比,驗證本文所開發(fā)軟件的可靠性。最后通過對實際數(shù)據(jù)的處理表明,筆者開發(fā)的軟件具有操作簡單、處理高效的特點,為將來實際海洋可控源電磁數(shù)據(jù)預(yù)處理提供了技術(shù)與軟件支持。

      筆者開發(fā)的軟件采用Duilib界面庫進(jìn)行海洋數(shù)據(jù)預(yù)處理軟件的開發(fā),對于傳統(tǒng)的處理軟件進(jìn)行了界面的優(yōu)化和集成,提高了數(shù)據(jù)預(yù)處理的效率,具有極大的推廣價值。對于Duilib界面庫開發(fā)可視化軟件的步驟進(jìn)行了詳細(xì)系統(tǒng)的介紹,這是一個新的嘗試,并對相關(guān)的地球物理數(shù)據(jù)處理可視化軟件開發(fā)具有一定的借鑒意義。

      猜你喜歡
      電磁場電磁預(yù)處理
      外加正交電磁場等離子體中電磁波透射特性
      三維多孔電磁復(fù)合支架構(gòu)建與理化表征
      任意方位電偶源的MCSEM電磁場三維正演
      基于預(yù)處理MUSIC算法的分布式陣列DOA估計
      掌握基礎(chǔ)知識 不懼電磁偏轉(zhuǎn)
      電磁場與電磁波課程教學(xué)改革探析
      淺談PLC在預(yù)處理生產(chǎn)線自動化改造中的應(yīng)用
      絡(luò)合萃取法預(yù)處理H酸廢水
      基于自適應(yīng)預(yù)處理的改進(jìn)CPF-GMRES算法
      電磁換向閥應(yīng)用探討
      河南科技(2014年16期)2014-02-27 14:13:21
      高阳县| 南岸区| 曲周县| 松滋市| 旺苍县| 姚安县| 武宣县| 得荣县| 宣恩县| 南宁市| 天门市| 临颍县| 伊川县| 茶陵县| 信阳市| 保定市| 漳浦县| 上高县| 奉贤区| 逊克县| 孝义市| 吐鲁番市| 和林格尔县| 瑞金市| 磐安县| 建平县| 屏东市| 饶平县| 灌南县| 游戏| 建水县| 石首市| 宁南县| 五河县| 英吉沙县| 浦东新区| 海原县| 安庆市| 云南省| 晋城| 双牌县|