鄒進(jìn)貴,余 銳,陳 健
(1.武漢大學(xué)測繪學(xué)院,湖北武漢430079;2.精密工程與工業(yè)測量國家測繪地理信息局重點實驗室,湖北武漢430079)
數(shù)字子水準(zhǔn)儀又稱電子水準(zhǔn)儀,它是以自動安平水準(zhǔn)儀為基礎(chǔ),在望遠(yuǎn)鏡光路中增加了分光鏡和探測器(CCD),并采用條碼標(biāo)尺和圖像處理電子系統(tǒng)構(gòu)成的光機(jī)電測一體化的高科技產(chǎn)品。采用傳統(tǒng)水準(zhǔn)標(biāo)尺時,又可像一般自動安平水準(zhǔn)儀一樣使用。它具有以下特點:① 讀數(shù)客觀,不存在誤差、誤記問題,沒有人為讀數(shù)誤差;②精度高,視線高和視距讀數(shù)都是采用大量條碼分劃圖像經(jīng)處理后取平均得出來的,因此削弱了標(biāo)尺分劃誤差的影響;③速度快,由于省去了報數(shù)、聽記、現(xiàn)場計算的時間及人為出錯的重測數(shù)量,測量時間與傳統(tǒng)儀器相比可以節(jié)省1/3左右;④ 效率高,只需調(diào)焦和按鍵就可以自動讀數(shù),減輕了勞動強(qiáng)度[1]。
基于以上原因,數(shù)字水準(zhǔn)儀深受廣大測量者的青睞,并廣泛應(yīng)用于工程測量、結(jié)構(gòu)和沉降觀測及高精度水準(zhǔn)測量中。但是,目前的數(shù)字水準(zhǔn)儀的數(shù)據(jù)成果都是以文件的形式進(jìn)行存儲,而文件格式都不能直接應(yīng)用于常規(guī)的平差軟件(如科傻,GNPS),需要人工進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,這在很大程度上制約了數(shù)字水準(zhǔn)儀的使用和推廣[2]。因此,筆者結(jié)合索佳的SDL30數(shù)字水準(zhǔn)儀的原始數(shù)據(jù)格式,研究轉(zhuǎn)換方法,并用Visual C++6.0編寫數(shù)據(jù)格式轉(zhuǎn)換軟件。
索佳的SDL30數(shù)字水準(zhǔn)儀原始數(shù)據(jù)格式有兩種:SDR2X和 CSV。下面就這兩種格式作詳細(xì)說明。
1)SDR2X原始數(shù)據(jù)格式每行長度固定,有效數(shù)據(jù)行為69個字符。其中,第1~4個字符為標(biāo)識符;第5~8個字符為點號;第9~18個字符為視距;第19~28個字符為中絲讀數(shù);第29~30個字符為測量模式標(biāo)識?!癇S”為后視標(biāo)識,“FS”為前視標(biāo)識,后面的字符為測站標(biāo)識符。
2)每個測站開始的上一行為測站標(biāo)識,表示測站的數(shù)量。一個測站的有效數(shù)據(jù)行為4行。
4)一個SDR2X文件為一個測段,中間的測站為轉(zhuǎn)點。數(shù)據(jù)記錄格式如圖1所示。
圖1 SDR2X原始數(shù)據(jù)格式
1)CSV原始數(shù)據(jù)格式第1行為文件頭信息,包括儀器類型、文件名、測站數(shù)量等信息。
2)有效數(shù)據(jù)行長度不固定,共分為8個部門,每個部分用“,”隔開。第1部分為編號,從0001開始累加;第2部分記錄點名;第3、4部分為標(biāo)識符;第5部分記錄前后視標(biāo)志;第6部分為視距讀數(shù);第7部分為中絲讀數(shù);第8部分為累積高差。
3)一個CSV文件為一個測段,中間的測站為轉(zhuǎn)點。數(shù)據(jù)記錄格式如圖2所示。
圖2 CSV原始數(shù)據(jù)格式
GNPS數(shù)據(jù)處理軟件能夠很好地處理水準(zhǔn)測量數(shù)據(jù),生成原始觀測手簿、測段信息、進(jìn)行平差處理、生成網(wǎng)平差報告。GNPS數(shù)據(jù)處理軟件需要固定的數(shù)據(jù)格式,一行一個測站信息,按照后前前后的順序排列,分別為水準(zhǔn)點名、-1(標(biāo)識符)、視距、中絲讀數(shù),中間測站的點名就用-1表示。如圖3所示。本文按照GNPS軟件需要的數(shù)據(jù)格式,將SDL30的原始數(shù)據(jù)格式轉(zhuǎn)化成相應(yīng)的格式。
圖3 GNPS軟件要求的數(shù)據(jù)格式
1)測段提取。逐行讀取數(shù)據(jù),對于SDR2X文件來說,長度小于69的行為無效數(shù)據(jù)行,應(yīng)該舍去;對于CSV格式來說,從第2行開始讀取數(shù)據(jù)。提取出第1個測站的后視點號,提取出最后一個測站的前視點號。它們?yōu)樗枰乃疁?zhǔn)點,其余點號為轉(zhuǎn)點,無須存儲點號[3]。
2)測站提取。對于SDR2X文件來說,長度小于69的行為無效數(shù)據(jù)行,應(yīng)該舍去;對于CSV格式來說,從第1行開始讀取數(shù)據(jù)。每4行為一個測站,按照要求提取出視距和中絲讀數(shù),并根據(jù)前兩行的BS或者FS記錄下測量模式。
3)成果保存。測站的數(shù)據(jù)提取完畢后,如果是水準(zhǔn)點,則存入點名;如果是轉(zhuǎn)點,則在文件中寫入-1表示點名。根據(jù)測量模式,調(diào)整寫入文件的順序,統(tǒng)一按照后視距、后中絲讀數(shù)、前視距、前中絲讀數(shù)、前視距、前中絲讀數(shù)、后視距、后中絲讀數(shù)的順序?qū)懭胛募小?/p>
現(xiàn)以某工程的三四等水準(zhǔn)測量為例,說明數(shù)據(jù)格式轉(zhuǎn)換程序的操作流程[4](如圖4所示)。
1)運行“SDL30原始數(shù)據(jù)格式轉(zhuǎn)換軟件”,出現(xiàn)如圖5所示的程序界面。
2)選擇文件的數(shù)據(jù)格式,打開需要轉(zhuǎn)換的文件,由于一個文件為一個測站,因此需要同時選擇多個文件,轉(zhuǎn)換的結(jié)果保存在后綴名為GSO的文件,用戶可以瀏覽保存路徑。
3)程序根據(jù)用戶選擇的數(shù)據(jù)格式文件進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換結(jié)果如圖6所示。
圖4 數(shù)據(jù)轉(zhuǎn)換編程思路
圖5 程序主界面[5]
圖6 SDL30轉(zhuǎn)化實例
從圖6可以看出,第1個水準(zhǔn)點為0001,后面一個為0015,中間為轉(zhuǎn)點,故點號標(biāo)識為 -1。將圖6與圖1或者圖2進(jìn)行對比,以某一測站為例可以看出,轉(zhuǎn)換后的數(shù)據(jù)剔除了無效數(shù)據(jù)行,并且是按照后前前后的順序進(jìn)行排列,轉(zhuǎn)換后的數(shù)據(jù)是正確的[6]。
本文基于Visual C++開發(fā)的索佳SDL30數(shù)字水準(zhǔn)儀格式轉(zhuǎn)換軟件,極大地提高了內(nèi)外業(yè)測量的一體化,大大減少了水準(zhǔn)測量的內(nèi)業(yè)工作量,避免了人工出錯,提高了工作效率,對其他的水準(zhǔn)測量原始數(shù)據(jù)文件具有很好的借鑒意義。
[1]王海城,鄒進(jìn)貴,劉琦.DINI12電子水準(zhǔn)儀記錄數(shù)據(jù)標(biāo)準(zhǔn)化處理方法[J].地理空間信息,2007.10(5),111-113.
[2]吳克勝,雷順文.天寶dini03電子水準(zhǔn)儀數(shù)據(jù)格式轉(zhuǎn)換[J].安徽建筑,2011(6),183-185.
[3]王太松,韓勇.電子水準(zhǔn)儀數(shù)據(jù)自動傳輸記錄程序的研發(fā)[J].測繪與空間地理信息,2010.2(1),180-182.
[4]GB/T12898—2009國家三、四等水準(zhǔn)測量規(guī)范[S].北京:中國標(biāo)準(zhǔn)出版社,2009.
[5]王育堅.Visual C++面向?qū)ο缶幊探坛蘙M].北京:清華大學(xué)出版社,2003.
[6]侯建國,荊體賢.PC—E500外業(yè)記錄程序的開發(fā)和應(yīng)用[J].測繪通報,2000(7):33-34.