蘇 欣,杜 鑫
(承德石油高等專科學校計算機工程系系,河北,承德 067000)
一種通過計算機編程快速讀取地震數據的方法
蘇 欣,杜 鑫
(承德石油高等專科學校計算機工程系系,河北,承德 067000)
地震數據是地質勘探與開發研究工作中一類重要的數據,其格式復雜、數據體龐大,所以地震數據的訪問成為地球物理軟件開發中的技術難點之一。通過分析常用地震數據的格式,可以明確地震數據訪問要解決的關鍵技術問題是地震道在文件中的隨機定位。提出了一種在微機上快速讀取地震數據文件的方法,可以實現對大體積地震數據的直接讀取與隨機數據道訪問。將該方法應用于中國石油天然氣集團公司科技項目《多學科專家協同勘探虛擬現實工作平臺研制》中的地震數據管理軟件,可以更為快速準確地讀取并轉換大體積的地震數據,為實現3D虛擬顯示勘探數據的任務目標提供可靠保障。
SEG-Y文件;隨機訪問;地震數據
地震勘探技術在油氣田勘探開發中起著重要作用。地震勘探包括地震采集、處理和解釋三大部分。在地質勘探與開發研究工作中,地震數據是最為重要的研究對象。但是,地震數據格式復雜,并且體積十分龐大,因此成功地對地震數據進行分析與讀取是地質勘探軟件開發的重點之一。本文對常用地震數據格式:SEG-Y格式進行分析,并提出了一種通過VC編程實現對SEG-Y數據進行進接讀取的方法,有效提高了讀取地震數據的速度。
SEG是the Society of Exploration Geophysicists(勘探地球物理家學會)的縮寫。該學會是一個非贏利性組織,成立于1930年。SEG-Y數據交換格式是石油勘探行業地震數據最為普遍的格式,目前應用的版本是SEG-Y rev1.0,文件結構如表1所示:前3600字節(包括3200字節的文本文件和400字節的二進制文件頭)一般看作是一個整體,隨后是若干個3200字節的擴展文本文件頭記錄,最后是若干條道的數據記錄。地震數據可以以IBM浮點型、IEEE浮點型、整型等格式存儲,在一個三維工區中,同一次處理的地震數據格式是惟一的。

表1 SEG-Y rev1.0標準下的文件格式
SEG-Y的標準文件頭包括3200字節的文本文件頭和400字節的二進制文件頭。3200字節的文本文件頭包括40條(每條共80字節)記錄,用來保存地震數據體的相關描述信息;而400字節的二進制文件頭中包含了地震數據的重要信息,包括該SEG-Y數據文件的數據格式、采樣間隔、采樣點數和測量單位等,這些信息均存儲在固定的位置,比如,采樣間隔存放在第3217-3218字節處,每道的采樣點數存放在第3221-3222字節處,具體如表2所示。

表2 二進制數據頭參數位置示意表
在SEG-Y數據中,地震道數據保存在數據頭之后,每一道的地震數據均包括240個字節的道頭信息。道頭信息中包括該地震道的線號、道號,采樣點數、大地坐標等參數,如大地X坐標保存在第73-76字節,大地Y地震保存在第77-80字節,該道采樣點數保存在第115-116字節,該道的采樣間隔保存在第117-118字節處。
實際上,地震道數據是對地震信號的波形按一定的時間間隔(即前文所說的采樣間隔)Δt進行取樣,然后把這一系列的離散振幅值記錄下來。該地震道的采樣點數是由本道頭數據(即240字節)中所定義的采樣點數決定的,一般來說,大部分的SEG-Y數據所有的地震道采樣點的個數是相同的,但也有不相同的情況,一般稱地震道采樣點不相同的文件叫做變道長SEG-Y文件。
要訪問SEG-Y地震數據,首先要確定的是SEG-Y文件的數據格式,是IBM型浮點數、IEEE型浮點數,亦或是其它類型,這可以通過讀取二進制文件頭信息直接獲取。
在通常情況下,地震數據的處理都是在Sun或IBM工作站上進行,而在這些工作站中,二進制的地震數據的存放格式與在微機上的存放格式并不相同,以微機為例,存放一個4字節的浮點數的格式如表3所示。
其中,由左至右是從高位字節到低位字節。而在Sun工作站或IBM工作站中,若1-4字節依然是由高位至低位,則存儲格式如表4所示,即是由低位至高位存儲,與微機上面的存儲順序正好相反。

表3 微機存儲4字節二進制數據的格式

表4 工作站存儲4字節二進制數據的格式
因為,若要在微機上讀取SEG-Y地震數據,就必須進行格式轉換。格式轉換可以通過類conversion實現,conversion的定義如下:

目前,地震勘探面向著連片、高精度的方向發展,地震數據的體積變得越來越大。在一般情況下,三維工區的地震數據所占用的存儲空間的大小可以表示為:

其中,FileHead_Size為3200字節的文本文件頭,BinaryHead_Size為400字節的二進制文件頭,Si為第i條地震道的大小。在一般情況下,單個SEG-Y數據文件的體積均達到4至5個GB,而目前的SEGY數據讀取方法無法實現對這樣大體積的數據進行隨機訪問。這是因為,目前的數據讀取方法是通過fseek()函數實現對數據文件的隨機定位,fseek()函數的原型是:

其中,參數offset是32位的整型數據,因此2GB(231-1字節)是隨機進行文件定位的最大限值。因此可以采用64位函數對地震數據文件進行讀取,原數據原型為:

其中,offset為64位的長整型數據,所以理論上可以讀取的數據文件的大小為263-1字節,足夠滿足目前大體積數據的訪問需要。
完成數據格式轉換后,即可用常規方法,按道讀取每一地震道上的振幅值,亦可以使用上述文件定位方法隨機讀取SEG-Y數據文件中的某一道。按道順序讀取方法參見圖1所示的流程,隨機讀取方法參見圖2所示的流程,具體的讀取過程不是本文研究的重點,在此不再詳述。

基于本文提出的讀取大體積地震數據的方法,在微機上所開發的地震數據管理軟件,可以對多塊工區的三維地震數據進行讀取與轉換,總數據量可以達200GB至400GB。上述地震數據管理軟件應用于中國石油天然氣集團公司科技項目《多學科專家協同勘探虛擬現實工作平臺研制》,可以更為快速準確地讀取并轉換大體積的地震數據,為實現3D虛擬顯示勘探數據的任務目標提供可靠支持。
[1] 陸基孟.地震勘探原理[M].東營:石油大學出版社,1993.
[2] 牟永光.石油數據處理方法[M].北京:石油工業出版社,1999.
Quick Seismic Data Accessing by Computer Programming
SU Xin,DU Xin
(Department of Computer and Information Engineering,Chengde Petroleum College,Chengde 067000,Hebei,China)
The seismic data is one of the important data in petroleum exploration and production.Because of its complicated format and huge data body,accessing seismic data becomes one of the difficult technical issues in geophysical software development.By analyzing the common format of seismic data,we can find that the key technique in seismic data accessing is the seismic traces’random location in SEG-Y file.This paper puts forward a method of accessing seismic data on PC,we can read the huge body of seismic data directly and access random seismic traces in SEG-Y file.Using this method in seismic data management software,which is included in the technological project“multi-discipline experts explore base on virtual reality environment”of CNPC,we can access the huge body of seismic data more quickly and exactly.
SEG-Y file;random access;seismic data
P315.69
B
1008-9446(2011)02-0020-04
2011-04-08
蘇欣(1981-),男,河北承德人,承德石油高等專科學校計算機系助教,碩士,主要研究方向為三維虛擬現實技術以及石油勘探、模擬軟件數據管理。