汪詩奇,劉海波,王 瑩,孫嘉駿,陳 科
(1.中國電建集團(tuán)昆明勘測設(shè)計研究院有限公司 信息技術(shù)研究院,云南 昆明 650051;2.華能瀾滄江水電股份有限公司,云南 昆明 650214)
淺地層剖面儀(淺剖)是一種典型的聲學(xué)探測設(shè)備,它的主要原理是借助聲學(xué)換能器向海底發(fā)射低頻聲波,利用低頻聲波所具備的穿透地層的能力以及不同介質(zhì)對聲波的聲阻抗差異,使得聲波在各介質(zhì)交界面處產(chǎn)生較強(qiáng)回波,通過接收器接收這些時序的回波并存儲為淺剖數(shù)據(jù)文件。淺剖數(shù)據(jù)對于了解水底淺地層結(jié)構(gòu)和構(gòu)造情況具有重要的作用[1,2],此外,在油氣資源探測、海岸工程、海洋調(diào)查等方面也能發(fā)揮重要作用[3,4]。
Edgetech 3200型淺地層剖面儀是由美國Edgetech公司生產(chǎn)的一種聲吶設(shè)備。它主要由SB-216S拖魚(包括發(fā)射器、水聽器、前置放大等)、甲板處理單元(放大器、顯示處理器等)以及拖曳電纜組成。換能器發(fā)射的波形信號包含頻率從0.5 kHz~12 kHz的掃頻式高振幅信號。該系統(tǒng)配備Edgetech Discover數(shù)據(jù)采集軟件,數(shù)據(jù)存儲格式包括*.JSF和*.XTF兩種。其中,XTF格式數(shù)據(jù)靈活性好,可擴(kuò)展性較高,能夠同時保存淺地層剖面數(shù)據(jù)、側(cè)掃聲吶數(shù)據(jù)、多波束測深數(shù)據(jù)、導(dǎo)航數(shù)據(jù)等多種數(shù)據(jù)信息,因此XTF格式的應(yīng)用更為廣泛。
本文以Edgetech 3200型淺地層剖面儀采集獲得的XTF格式淺地層剖面數(shù)據(jù)為研究對象,深入分析了其數(shù)據(jù)結(jié)構(gòu),并借助編程手段進(jìn)行數(shù)據(jù)文件解碼及淺地層剖面圖像生成。實踐證明,本文解譯生成的淺地層剖面圖像與商用軟件SonarWiz生成的結(jié)果基本一致,表明本文所述的淺地層剖面數(shù)據(jù)文件解譯方式是正確有效的。
XTF文件格式是一種可擴(kuò)展的數(shù)據(jù)格式[5],它的伸縮性和可擴(kuò)展性很強(qiáng),可保存聲吶、航行、遙測、測深等多種類型的信息。在保存數(shù)據(jù)時,不會有儲存空間被浪費(fèi),也不會產(chǎn)生數(shù)據(jù)不連續(xù)的現(xiàn)象。用戶可以根據(jù)數(shù)據(jù)包的標(biāo)識信息識別數(shù)據(jù)包的類型,僅讀取所需要的數(shù)據(jù)包,而忽略未知或不需要的數(shù)據(jù)包。
所有的XTF文件都是由文件頭開始。文件頭數(shù)據(jù)保存在一個有1 024個字節(jié)大小的XTFFILEHEADER結(jié)構(gòu)中,每個XTFFILEHEADER結(jié)構(gòu)中包含6個通道的數(shù)據(jù),每個通道的數(shù)據(jù)保存于CHANINFO結(jié)構(gòu)中,當(dāng)存儲的數(shù)據(jù)通道大于6時,頭文件的大小會以1 024的整數(shù)倍進(jìn)行增加,直到有足夠用的空間存儲CHANINFO結(jié)構(gòu)為止。隨后是數(shù)據(jù)包,不同類型的測量數(shù)據(jù)均以包的形式存放,每個包中有一個包頭(它以XTFPINGHEADER結(jié)構(gòu)形式存在),存放每個脈沖中各通道的相關(guān)數(shù)據(jù)。最后則是通道頭與通道數(shù)據(jù),通道頭以XTFPINGCHANHEADER結(jié)構(gòu)形式存在,內(nèi)部存放著脈沖號、通道標(biāo)示等信息。
1.2.1 XTFFILEHEADER數(shù)據(jù)結(jié)構(gòu)
在XTFFILEHEADER數(shù)據(jù)結(jié)構(gòu)(見表1)中,主要記錄了文件類型、系統(tǒng)類型、聲吶通道數(shù)、測深通道數(shù)、Snippet通道數(shù)、回?fù)軓?qiáng)度通道數(shù)等必須填寫的項和測量文件名、導(dǎo)航延遲、導(dǎo)航系統(tǒng)和姿態(tài)傳感器的安裝偏差等選填項目,而在末尾,還包含6個(一般情況下)CHANINFO的數(shù)據(jù)結(jié)構(gòu)(見表2)。
表1 XTFFILEHEADER數(shù)據(jù)結(jié)構(gòu)Tab.1 Data structure of XTFFILEHEADER
表2 CHANINFO的數(shù)據(jù)結(jié)構(gòu)Tab.2 Data structure of CHANINFO
CHANINFO結(jié)構(gòu)的大小為128個字節(jié),其中包含通道類型和每個采樣點的字節(jié)數(shù)兩個必填項,也包括通道極性、電壓范圍、頻率、波束開角、安裝偏差(坐標(biāo)和角度)等選填項,末尾還包括53個字節(jié)的未使用區(qū)域。
1.2.2 淺剖數(shù)據(jù)包數(shù)據(jù)結(jié)構(gòu)
淺剖數(shù)據(jù)包主要包含3個部分:XTFPINGHEADER、XTFPINGCHANHEADER以及淺剖回波時序數(shù)據(jù)。
其中XTFPINGHEADER數(shù)據(jù)結(jié)構(gòu)(見表3)中,主要包含本Ping數(shù)據(jù)記錄時間(日期及時刻)、位置(導(dǎo)航數(shù)據(jù))、航向、船速、聲速等數(shù)據(jù)。
表3 XTFPINGHEADER數(shù)據(jù)結(jié)構(gòu)Tab.3 Data structure of XTFPINGHEADER
XTFPINGCHANHEADER數(shù)據(jù)結(jié)構(gòu)(見表4)中,主要包含本Ping數(shù)據(jù)的采樣點個數(shù)、回波接收總時間、回波接收總距離等數(shù)據(jù)信息。
表4 XTFPINGCHANHEADER數(shù)據(jù)結(jié)構(gòu)Tab.4 Data structure of XTFPINGCHANHEADER
淺剖回波時序數(shù)據(jù)緊跟其后連續(xù)存儲。每個采樣點的數(shù)據(jù)存儲格式為短整型(short)。
根據(jù)上述對XTF文件結(jié)構(gòu)的分析,首先定義各主要結(jié)構(gòu)體如下:
struct XTF_FILE_HEADER
{ BYTE FileFormat; //文件類型(set to 123)
BYTE SystemType; //系統(tǒng)類型
char RecordingProgramName[8];
char RecordingProgramVersion[8];
……
float MRUOffsetYaw; //姿態(tài)傳感器航偏
float MRUOffsetPitch; //姿態(tài)傳感器縱搖
float MRUOffsetRoll; //姿態(tài)傳感器橫搖
XTF_CHANINFO chaninfo[6];};
然后,根據(jù)二進(jìn)制文件讀取的特點,利用以上定義好的結(jié)構(gòu)體,使用fread( void *buffer,size_t size,size_t count,F(xiàn)ILE *stream) 函數(shù)可以很容易地將文件(硬盤)中的內(nèi)容讀取到緩存中[6]。
解譯程序主要代碼如下:
FILE *file;
file=fopen(filename.c_str(),"r+b");
if(file==NULL) {
printf("Can’t open file!");
return false; }
XTF_FILE_HEADER file_header;
fread(&file_header,sizeof(XTF_FILE_HEADER),1,file);
……
為驗證本文方法,利用某水庫實測淺地層剖面數(shù)據(jù)進(jìn)行實驗。為了說明本文解譯結(jié)果的正確性,利用商用軟件SonarWiz的處理結(jié)果進(jìn)行比較和分析。
對某一條測線數(shù)據(jù)進(jìn)行解析得到如下信息:測量道數(shù)1 769,每道采樣點數(shù)1 068。將其中某一道數(shù)據(jù)繪制成折線圖(橫坐標(biāo)為采樣點號,縱坐標(biāo)為回波強(qiáng)度),如圖1所示。
圖1 某一道數(shù)據(jù)繪制的折線圖Fig.1 Line chart drawn by using a certain data
從圖1可以看出,在第297個采樣點處具有最大回波強(qiáng)度,說明此處是發(fā)射聲波在水體與水底交界面處產(chǎn)生的強(qiáng)回波。而后,回波能量隨著傳播距離增加逐步衰減。
將每一道數(shù)據(jù)作為一列,依照每道數(shù)據(jù)的連續(xù)性依次排列可以得到矩陣形式的回波數(shù)據(jù)。將該矩陣的每一個元素值歸一化到0~255范圍內(nèi),即可將該回波數(shù)據(jù)矩陣轉(zhuǎn)化為灰度圖像。某測線數(shù)據(jù)對應(yīng)的淺剖圖像如圖2所示。
圖2 某測線數(shù)據(jù)對應(yīng)的淺剖圖像Fig.2 Sub-bottom profiler images corresponding to a certain data
對比圖2(a)和圖2(b)可知,利用本文方法對XTF格式數(shù)據(jù)解譯后所生成的圖像與利用SonarWiz軟件生成的圖像基本一致。但本文繪制的圖像存在較多豎直向條紋狀的噪聲干擾,而SonarWiz得到的圖像比較平滑,層界清晰。經(jīng)過分析,筆者認(rèn)為存在以下原因:
1)本文成圖時是直接將原始回波數(shù)據(jù)轉(zhuǎn)換為圖像,沒有經(jīng)過其他處理;而SonarWiz軟件成圖時重新進(jìn)行了增益調(diào)整。
2)本文方法與SonarWiz軟件采取的從回波數(shù)據(jù)到圖像的轉(zhuǎn)換過程存在差異。
3)本文成圖后未經(jīng)過任何處理,而SonarWiz軟件對結(jié)果圖像進(jìn)行了去噪處理。
本文以XTF格式淺剖數(shù)據(jù)為研究對象,詳細(xì)分析了XTF格式文件結(jié)構(gòu),并對各結(jié)構(gòu)數(shù)據(jù)進(jìn)行了說明,再利用編程手段對其進(jìn)行了解譯,最后對解譯結(jié)果進(jìn)行了成圖展示。通過與SonarWiz商業(yè)軟件的成圖結(jié)果進(jìn)行比較,認(rèn)為本文對文件的解譯方式是可行的。但是,因為本文方法未對原始回波數(shù)據(jù)進(jìn)行相應(yīng)的處理,導(dǎo)致所生成的圖像與商業(yè)軟件結(jié)果存在差異,在后續(xù)的工作中,需要加強(qiáng)這方面的研究,以獲得更為真實的淺剖圖像。