丁維鳳,馮霞,傅曉明,葉連春,楊根新
(1.國(guó)家海洋局第二海洋研究所,浙江 杭州 310012;2.杭州職業(yè)技術(shù)學(xué)院信息電子系,浙江 杭州 310018)
多波束XTF格式數(shù)據(jù)航向信息重寫(xiě)入實(shí)例
丁維鳳1,馮霞2,傅曉明1,葉連春1,楊根新1
(1.國(guó)家海洋局第二海洋研究所,浙江 杭州 310012;2.杭州職業(yè)技術(shù)學(xué)院信息電子系,浙江 杭州 310018)
以多波束實(shí)際調(diào)查數(shù)據(jù)為例,分析與討論無(wú)航向角的 RESON SeaBat 8101er系統(tǒng) XTF格式多波束數(shù)據(jù)處理問(wèn)題,提出從Hypack導(dǎo)航軟件輸出的RAW文本數(shù)據(jù)中提取電羅經(jīng)航向與時(shí)間數(shù)據(jù),經(jīng)時(shí)間匹配與插值處理后重新寫(xiě)進(jìn)XTF數(shù)據(jù)文件內(nèi)。實(shí)現(xiàn)時(shí)在沒(méi)有明確的XTF數(shù)據(jù)格式說(shuō)明的情況下,通過(guò)二進(jìn)制數(shù)據(jù)位的系統(tǒng)分析,確定羅經(jīng)航向數(shù)據(jù)的位置和結(jié)構(gòu),使用自編程序?qū)崿F(xiàn)航向數(shù)據(jù)重新寫(xiě)入原始XTF數(shù)據(jù)內(nèi),再經(jīng)Caris軟件精細(xì)處理后很好地解決了無(wú)航向數(shù)據(jù)處水深空白帶的問(wèn)題。
多波束;航向數(shù)據(jù);XTF
Abstract: Based on the long time field multibeam surveying, it is very possible for communicating line breaking off which connecting different devices, just as the gryo communicating line.As it was not found at time, the gyro heading data wasn’t inputted to the multibeam XTF file.Generally it need to survey the no heading line again at spot, but it was not convenient when the working ship and device were whithdrawn from the spot, so processor must deal with the no heading XTF file using all potential methods.To the RESON Seabeat8101er outputting XTF file, the paper analyse the file’s structure and search the heading variable bytes’ location within the file’s definition, and the paper discusses how to look for the heading data from another recording file and extract the heading data from Hypack navigation outputing RAW file, at last it studies the rewriting these heading data to the XTF file with flexible programming.All the methods are proved to be valid when processing XTF file of no heading data surveying line again and plotting the bathymetry.
Key words: multibeam; gyro heading data; XTFfile
多波束勘測(cè)是一種具有高效率、高精度和高分辨率的海底地形測(cè)量新技術(shù)[1-4]。該技術(shù)自20世紀(jì)70年代問(wèn)世以來(lái),在最近幾十年高性能計(jì)算機(jī)、高分辨率顯示、高精度定位和各種數(shù)字化傳感器以及其他相關(guān)高新技術(shù)的介入和支撐下,設(shè)備技術(shù)和勘測(cè)水平有了極大的發(fā)展[5]。我國(guó)自上世紀(jì)90年代引進(jìn)首套多波束系統(tǒng)以來(lái),已有多家測(cè)繪單位陸續(xù)引進(jìn)了多套先進(jìn)的多波束系統(tǒng),并廣泛應(yīng)用于海道測(cè)量、海洋工程測(cè)量、海洋劃界測(cè)量、海洋資源調(diào)查與水下考古測(cè)量等領(lǐng)域。
多波束系統(tǒng)是一種多傳感器的復(fù)雜組合系統(tǒng),包括結(jié)構(gòu)復(fù)雜的多陣列發(fā)射接收換能器和用于信號(hào)控制與處理的電子柜,以及高精度的運(yùn)動(dòng)傳感器(包括垂直參考單元與電羅經(jīng))、導(dǎo)航定位系統(tǒng)與聲速剖面儀等[1],如圖1所示的 RESON SeaBat 8101er系統(tǒng)組成結(jié)構(gòu)圖。各組成單元與輸入輸出控制電子柜的正確連接是保證野外勘測(cè)工作順利進(jìn)行的基礎(chǔ),任一單元的連接脫落或信號(hào)出錯(cuò)都會(huì)導(dǎo)致水深數(shù)據(jù)的無(wú)效,無(wú)效數(shù)據(jù)測(cè)線原則上都需要進(jìn)行重新測(cè)量。在大范圍的海域勘測(cè)工作中,長(zhǎng)時(shí)間的野外調(diào)查容易造成測(cè)量人員工作疏忽,設(shè)備間的連線松動(dòng)或脫落不能被及時(shí)發(fā)現(xiàn),數(shù)據(jù)處理發(fā)現(xiàn)問(wèn)題后因調(diào)查船駛離現(xiàn)場(chǎng)或人員設(shè)備的撤離已來(lái)不及補(bǔ)測(cè)。如圖2中繪制的水深地形圖,因電羅經(jīng)與輸入輸出控制單元的連線松動(dòng),造成XTF測(cè)量數(shù)據(jù)無(wú)航向數(shù)據(jù),處理后形成了圖中一條近4 km長(zhǎng)的水深空白帶,野外補(bǔ)測(cè)這些數(shù)據(jù)已非常麻煩,可行的辦法是由處理人員通過(guò)數(shù)據(jù)處理方法將航向數(shù)據(jù)重新寫(xiě)入XTF格式水深數(shù)據(jù)中,再用專(zhuān)業(yè)軟件重新處理并繪圖檢查寫(xiě)進(jìn)的航向數(shù)據(jù)正確與否。
下面詳細(xì)討論圖2中水深空白帶形成的原因,并研究如何提取有效航向數(shù)據(jù),以及如何實(shí)現(xiàn)航向數(shù)據(jù)重新寫(xiě)入XTF文件中的方法。
1.1 空白帶形成原因
在野外測(cè)線調(diào)查過(guò)程中,由于受海流與海風(fēng)的影響,調(diào)查船的航向與航跡方向一般存在一個(gè)角度,只有在海流為零以及船只完全順流或逆流的情況下,存在的角度才會(huì)趨于0。而多波束換能器總是沿垂直航向向兩側(cè)發(fā)射接收波束,因此每一個(gè)扇區(qū)掃描得到的是一系列垂直航向而非航跡并向兩側(cè)對(duì)稱排列的波束測(cè)點(diǎn)[1]。航向數(shù)據(jù)只有通過(guò)電羅經(jīng)才能獲得準(zhǔn)確的實(shí)時(shí)數(shù)據(jù),并通過(guò)數(shù)據(jù)線將獲得的實(shí)時(shí)航向數(shù)據(jù)輸入到信號(hào)控制單元中,經(jīng)專(zhuān)業(yè)軟件自動(dòng)運(yùn)算計(jì)算出每個(gè)波束點(diǎn)的空間位置,實(shí)現(xiàn)多波束測(cè)點(diǎn)的正確空間歸位。
圖2中因原始XTF記錄文件內(nèi)水深空白處的航向數(shù)據(jù)為都 0,處理軟件按照與航向數(shù)據(jù)垂直的90°方向投影計(jì)算各波束點(diǎn),歸位后的各波束都投影在同一個(gè)空間位置上,形成的水深條帶就會(huì)與圖中實(shí)際航跡接近平行且極其窄,由此產(chǎn)生了圖中的水深空白帶。野外沒(méi)有補(bǔ)測(cè)這些空白帶測(cè)線時(shí),室內(nèi)資料處理必須想辦法加以解決,解決的關(guān)鍵是修改原始XTF數(shù)據(jù)文件內(nèi)錯(cuò)誤的航向數(shù)據(jù),修改這些數(shù)據(jù)就要求處理人員必須找到航向數(shù)據(jù)在 XTF數(shù)據(jù)文件中的存儲(chǔ)位置,因而了解多波束XTF數(shù)據(jù)存儲(chǔ)格式的定義是修改工作的基礎(chǔ)。
圖1 RESON SeaBat 8101er系統(tǒng)組成結(jié)構(gòu)圖[1]Fig.1 Structure view of RESON SeaBat8101er system[1]
圖2 數(shù)據(jù)缺失區(qū)海底地形張貼圖(未做消噪處理,圖中白線為切水深剖面位置)Fig.2 Blank sounding view without gyro heading data(without removing noise)
1.2 XTF文件中與航向數(shù)據(jù)相關(guān)的變量
XTF(eXtended Triton Format)數(shù)據(jù)格式由Triton公司創(chuàng)建,用于在一個(gè)文件內(nèi)存儲(chǔ)多種不同的數(shù)據(jù)源信息,如聲吶數(shù)據(jù)、導(dǎo)航數(shù)據(jù)、水深數(shù)據(jù)等,這種格式非常方便擴(kuò)充內(nèi)容以容納新的數(shù)據(jù)源,至2007年06月份該格式已發(fā)展到X241)Triton Imaging, Inc..eXtended Triton Format(XTF), Rev.24.2007.06.)版。RESON SeaBat 8101er 多波束采集的原始數(shù)據(jù)(包括各波束點(diǎn)水深數(shù)據(jù)、DGPS導(dǎo)航數(shù)據(jù)、運(yùn)動(dòng)傳感器輸入的姿態(tài)數(shù)據(jù)與電羅經(jīng)的航向數(shù)據(jù)等)一般都轉(zhuǎn)換成XTF格式后再存儲(chǔ)處理,轉(zhuǎn)換后的RESON 多波束XTF文件主要包括文件頭、位置數(shù)據(jù)包、姿態(tài)數(shù)據(jù)包與水深數(shù)據(jù)包,其中水深數(shù)據(jù)包又包含記錄參數(shù)集、波束范圍數(shù)據(jù)、波束質(zhì)量數(shù)據(jù)與波束振幅數(shù)據(jù),如圖3所示,XTF文件中除了文件頭固定在文件開(kāi)始位置外,其余的數(shù)據(jù)包出現(xiàn)順序不固定,依現(xiàn)場(chǎng)設(shè)備輸入信號(hào)的到達(dá)時(shí)間依次存儲(chǔ),如圖4用Triton公司的XTF文件查看器查看RESON的XTF文件后顯示的數(shù)據(jù)內(nèi)容,在文件開(kāi)始位置的XTF Header Record后,有出現(xiàn)次序與位置不固定的Unknown Packet、Attitude Package及Bathy Package 3項(xiàng)內(nèi)容,其中的Unknown Packet為RESON公司自定義的Position Package,該軟件不能自動(dòng)識(shí)別,在未得到RESON公司自定義格式說(shuō)明書(shū)的情況下,該數(shù)據(jù)包內(nèi)定義的具體內(nèi)容不能獲得,只能通過(guò)字節(jié)計(jì)算得到其大小為64字節(jié),其余的Attitude Package與Bathy Package兩數(shù)據(jù)包內(nèi)容完全按照Triton公司定義的XTF格式數(shù)據(jù)內(nèi)容填寫(xiě),在這兩數(shù)據(jù)包內(nèi),Attitude Package數(shù)據(jù)包內(nèi)有一個(gè)4字節(jié)浮點(diǎn)的Heading變量與航向數(shù)據(jù)有關(guān),而B(niǎo)athy Package數(shù)據(jù)包中有ShipGyro與SensorHeading兩個(gè)變量與航向數(shù)據(jù)有關(guān),尋找這3個(gè)變量的位置、數(shù)據(jù)大小與時(shí)間參數(shù)成為重寫(xiě)航向數(shù)據(jù)的關(guān)鍵。
圖3 RESON Seabat81)Triton Imaging, Inc..eXtended Triton Format(XTF), Rev.24.2007.06.01er多波束采集系統(tǒng)輸出的XTF數(shù)據(jù)結(jié)構(gòu)示意圖Fig.3 Structure of RESON Seabat8101er outputting multibeam XTF file
圖4 XTF文件查看軟件顯示RESON的多波束XTF文件數(shù)據(jù)包列表Fig.4 List of RESON XTF file content using Triton viewing program
1.3 Hypack導(dǎo)航軟件輸出的航向數(shù)據(jù)
確定了航向變量在XTF文件中的定義位置,就可以通過(guò)數(shù)據(jù)記錄時(shí)間將航向數(shù)據(jù)寫(xiě)回到 XTF文件中對(duì)應(yīng)的變量字節(jié)上,然而室內(nèi)資料處理時(shí)航向數(shù)據(jù)從哪提取又是個(gè)問(wèn)題。多波束勘測(cè)野外資料采集時(shí)一般都要從電羅經(jīng)引出兩根數(shù)據(jù)線,一根連接多波束采集系統(tǒng),另一根則連接導(dǎo)航定位計(jì)算機(jī),導(dǎo)航軟件在運(yùn)行窗口上一般都有調(diào)查船只的實(shí)時(shí)航向數(shù)據(jù),該數(shù)據(jù)就為電羅經(jīng)的輸入數(shù)據(jù),若無(wú)電羅經(jīng)數(shù)據(jù)輸出到導(dǎo)航計(jì)算機(jī),導(dǎo)航軟件會(huì)從差分GPS數(shù)據(jù)項(xiàng)內(nèi)提取,DGPS航向數(shù)據(jù)為船舶航跡方向,不適宜用于多波束數(shù)據(jù)的航向角。針對(duì)上面的問(wèn)題從導(dǎo)航定位數(shù)據(jù)中獲取電羅經(jīng)信息成為可能。野外采用的 Hypack導(dǎo)航軟件在完成一條測(cè)線任務(wù)后會(huì)自動(dòng)生成一個(gè)以測(cè)線名命名且后綴為RAW的文本文件,在該RAW文件中一般每隔1s間隔就有一個(gè)以GYR字符串開(kāi)頭的記錄時(shí)間與航向角,提取這些記錄時(shí)間與航向角就可以解決重新寫(xiě)入時(shí)所需航向角的問(wèn)題。
2.1 導(dǎo)航軟件中航向數(shù)據(jù)的提取
既然導(dǎo)航軟件輸出的RAW文本文件中有我們需要的航向數(shù)據(jù),我們就可以通過(guò)編寫(xiě)數(shù)據(jù)訪問(wèn)與抽取程序來(lái)提取航向數(shù)據(jù)及對(duì)應(yīng)的記錄時(shí)間數(shù)據(jù)項(xiàng)。實(shí)現(xiàn)方法是通過(guò)尋找數(shù)據(jù)文件中的GYR字符串,提取該字符串所在數(shù)據(jù)行中的時(shí)間與航向角數(shù)據(jù),提取時(shí)需利用編程軟件靈活的動(dòng)態(tài)數(shù)組存儲(chǔ)功能,如VC++編程軟件中的模板數(shù)組,因RAW文件中航向數(shù)據(jù)的總數(shù)在訪問(wèn)結(jié)束前無(wú)法獲得,開(kāi)辟固定數(shù)目的一維數(shù)組變量不方便使用,因此程序編制時(shí)內(nèi)存開(kāi)辟方法需仔細(xì)考慮。圖5為編寫(xiě)程序提取航向數(shù)據(jù)與記錄時(shí)間后的結(jié)果顯示,其中的時(shí)間為秒單位,使用時(shí)需轉(zhuǎn)換為時(shí)分秒計(jì)時(shí),航向角為度單位。
圖5 提取Hypack導(dǎo)航軟件輸出文件中的時(shí)間與航向角結(jié)果圖Fig.5 Program results of extracting time and gyro data from Hypack RAW file
2.2 XTF文件航向數(shù)據(jù)重寫(xiě)入方法
航向數(shù)據(jù)提取完成并存入內(nèi)存數(shù)組后,接著需要調(diào)入無(wú)航向數(shù)據(jù)的多波束測(cè)線文件。通過(guò)分析XTF文件存儲(chǔ)格式,我們發(fā)現(xiàn)所有數(shù)據(jù)包的大小都是 64字節(jié)數(shù)的倍數(shù),而且每個(gè)數(shù)據(jù)包都有MagicNumber與HeadType兩變量,MagicNumber變量表示該數(shù)據(jù)包的開(kāi)始部分,賦予十六進(jìn)制值FACE,十進(jìn)制為64206,而HeadType表示該數(shù)據(jù)包的類(lèi)型,Triton公司規(guī)定了專(zhuān)門(mén)數(shù)字代表各種不同的數(shù)據(jù)包,對(duì)于RESON公司輸出的多波束數(shù)據(jù)類(lèi)型,用 2代表BathymetryHeader,用 3代表AttitudeHeader,程序編制時(shí)通過(guò)判斷這兩個(gè)變量的值就能實(shí)現(xiàn)訪問(wèn)所需數(shù)據(jù)包的文件位置。按照這種思想,通過(guò)定義專(zhuān)門(mén)的數(shù)據(jù)包類(lèi)型結(jié)構(gòu)體并判斷結(jié)構(gòu)體變量中數(shù)值內(nèi)容,就可以跳過(guò)無(wú)關(guān)數(shù)據(jù)項(xiàng),如圖4中軟件顯示為Unknown Packet的數(shù)據(jù)包,我們就可以不用關(guān)心其具體的變量定義內(nèi)容,將其數(shù)據(jù)項(xiàng)照原樣寫(xiě)進(jìn)新的文件后繼續(xù)訪問(wèn)后面的數(shù)據(jù)內(nèi)容,表1為程序找到航向數(shù)據(jù)后輸出的部分?jǐn)?shù)據(jù)內(nèi)容,表中Attitude Package內(nèi)的Heading變量以及BathymetryHeader內(nèi)的shipGyro與SensorHeading兩變量值都為0表示無(wú)航向數(shù)據(jù)輸入,需要對(duì)其進(jìn)行重新寫(xiě)入。
比較圖5與表1中的時(shí)間數(shù)據(jù)會(huì)發(fā)現(xiàn)導(dǎo)航軟件與多波束采集系統(tǒng)兩者采集數(shù)據(jù)的時(shí)間間隔不一致,導(dǎo)航軟件基本按1秒間隔采集數(shù)據(jù),而多波束卻不到1s,且間隔時(shí)間不固定,若按照時(shí)間匹配的方法對(duì)XTF文件進(jìn)行航向數(shù)據(jù)重新寫(xiě)入,則需要對(duì)圖5中的時(shí)間按照表1內(nèi)XTF時(shí)間間隔進(jìn)行航向角線性插值,否則兩者的時(shí)間匹配不上,航向角無(wú)法寫(xiě)入。發(fā)現(xiàn)這些問(wèn)題后,按照上面討論的方法重新寫(xiě)入航向數(shù)據(jù),并存儲(chǔ)新的XTF文件后用專(zhuān)業(yè)Caris軟件再次處理空白帶測(cè)線數(shù)據(jù),最終結(jié)果如圖6所示,從圖中可以看出水深空白帶已被解決,所有測(cè)線地形地貌拼接正確。圖7顯示的是從圖2中白線位置處切出的水深剖面圖,從該圖可以看出缺失航向數(shù)據(jù)處的水深剖面數(shù)據(jù)缺失嚴(yán)重,地形變化劇烈,不符合實(shí)際地形情況,圖8顯示的是從圖6中相同位置的白線切出的水深剖面圖,從該圖可以看出重新寫(xiě)入航向數(shù)據(jù)后的水深剖面變化平緩,無(wú)數(shù)據(jù)缺失區(qū),不同測(cè)線間的水深變化連續(xù)且能正確拼接,說(shuō)明重新寫(xiě)入的航向角基本正確。
另外野外采集時(shí)因沒(méi)有很好的跟蹤波束水深范圍,導(dǎo)致圖中出現(xiàn)一些小的水深空洞,這些空洞因?qū)?yīng)波束點(diǎn)處的水深值出錯(cuò)而被刪除,室內(nèi)資料處理已不能修復(fù),只能通過(guò)數(shù)據(jù)擬合與插值方法來(lái)進(jìn)行完善,圖9為插值擬合后的最終三維光照結(jié)果圖,從圖中可以看出水深空洞已基本解決,整體圖件顯示比較完美。
表1 XTF文件輸出的部分航向角與時(shí)間Tab.1 Output heading and time data coming from XTF file
圖6 航向數(shù)據(jù)重新寫(xiě)入后的XTF文件經(jīng)精細(xì)處理后的結(jié)果圖(圖中白線為切水深剖面位置)Fig.6 New fine processing result of XTF multibeam data after rewriting gyro data
圖7 從圖2中的白線位置切出的水深剖面圖Fig.7 Bathymetry profile coming from the white line of fig.2
圖8 從圖6中的白線位置切出的水深剖面圖Fig.8 Bathymetry profile coming from the white line of fig.6
圖9 插值擬合后的三維光照?qǐng)DFig.9 3D lighting view after interpolating and simulating
因野外調(diào)查任務(wù)的繁重,多波束野外勘測(cè)很容易出現(xiàn)各種難以發(fā)現(xiàn)的問(wèn)題,特別是設(shè)備間的數(shù)據(jù)連接問(wèn)題。本文以實(shí)際多波束勘測(cè)中電羅經(jīng)與多波束采集系統(tǒng)之間未正確連接導(dǎo)致數(shù)據(jù)文件無(wú)航向數(shù)據(jù)為題,分析討論了多波束XTF文件記錄格式,航向數(shù)據(jù)的重新提取以及重新寫(xiě)入 XTF文件中的方法,該方法很好的解決了無(wú)航向數(shù)據(jù)測(cè)線水深圖中出現(xiàn)空白帶問(wèn)題。
航向數(shù)據(jù)我們可以從導(dǎo)航軟件的文件中提取,但有些數(shù)據(jù)是無(wú)法從中提取的,如調(diào)查船的實(shí)時(shí)姿態(tài)數(shù)據(jù),因該數(shù)據(jù)只用一根線直接連接到采集記錄系統(tǒng),野外采集時(shí)若連線出錯(cuò)就無(wú)法從別的數(shù)據(jù)文件中提取,只能進(jìn)行重新勘測(cè)。因此加強(qiáng)野外勘測(cè)實(shí)時(shí)監(jiān)控的工作非常重要,另外采集軟件數(shù)據(jù)出錯(cuò)的聲音報(bào)警功能也非常重要,它能及時(shí)提醒工作人員采集工作出現(xiàn)了問(wèn)題,減少監(jiān)控工作的疏忽。
[1]李家彪, 王小波, 鄭玉龍, 等.多波束勘測(cè)原理技術(shù)與方法 [M]北京: 海洋出版社, 1999, 48-50.
[2]高金耀, 方銀霞, 徐賽英.原始多波束數(shù)據(jù)的格式轉(zhuǎn)換與統(tǒng)一[J].海洋通報(bào), 2002, 21(6): 68-74.
[3]吳自銀, 李家彪.多波束勘測(cè)的數(shù)據(jù)編輯方法 [J].海洋通報(bào), 2000, 19(3): 74-78.
[4]唐秋華, 陳義蘭, 周興華, 等.多波束海底聲圖像的形成及應(yīng)用研究 [J].海洋測(cè)繪, 2004, 24(5): 9-12.
[5]黃謨濤, 翟國(guó)君, 歐陽(yáng)永忠, 等.多波束與單波束測(cè)深數(shù)據(jù)的融合處理技術(shù) [J].測(cè)繪學(xué)報(bào), 2001, 30(4): 299-303.
A case study for rewriting gyro data in multibeam XTF file
DING Wei-feng1, Feng Xia2, Fu Xiao-ming1, Ye Lian-chun1,Yang Gen-xin1
(1.Second Institute of Oceanography, SOA, Hangzhou 310012, China; 2.The college of Hangzhou vocational technology, Hangzhou 310018,China)
P229.1;P209
A
1001-6932(2011)01-0001-06
2010-03-19 ;收修改稿日期:2010-05-17
國(guó)家海洋局 第二海洋研究所基本科研業(yè)務(wù)費(fèi)專(zhuān)項(xiàng)資助項(xiàng)目(SZ0812),中國(guó)海洋大學(xué)海底科學(xué)與探測(cè)技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室資助項(xiàng)目(2008-05)
丁維鳳(1978- ),男,江西德安縣人,高級(jí)工程師,主要從事海洋地球物理勘查與研究工作。電子郵箱:fwxf1769@126.com。