国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

批量GNSS數據質量檢查程序設計

2014-08-21 09:46曹解放韓雪峰劉雪瑞張偉民
全球定位系統(tǒng) 2014年5期
關鍵詞:數據文件質量檢查程序

曹解放,韓雪峰,劉雪瑞,張偉民

(61365部隊,天津 300140)

0 引 言

GNSS野外測量人員在采集完數據以后,必須對所采集的數據進行質量檢查,以檢核數據是否合格,作為遷站或者加測的依據[1]。在實際的野外作業(yè)中,通常采用TEQC軟件對觀測數據進行質量檢查,該軟件是一款功能強大且簡單易用的GNSS數據預處理公開免費軟件,它的應用非常廣泛,主要功能有格式轉換、編輯和質量檢核等。它對數據質量的檢核可以反映GNSS數據的電離層延遲、多路徑影響、接收機周跳、衛(wèi)星信號信噪比等信息[2]。

然而,在Windows操作系統(tǒng)下使用TEQC軟件,只能通過DOS窗口發(fā)送命令,人機交互性差。給部分計算機知識匱乏的野外作業(yè)人員帶來極大不便,增加了作業(yè)的難度。而且在DOS窗口下無法完成多級目錄下原始數據的檢索和自動批量處理,檢查結果顯示不夠直觀,無法完成大量數據的質量檢查結果統(tǒng)計[3]。

為此,本文根據多年的野外GNSS數據采集作業(yè)經驗和實際作業(yè)需求,開發(fā)了具有可視化界面、可批量快速質量檢查、結果Excel報表輸出功能的數據質量檢查程序。

1 程序功能

程序主要分為數據檢索、質量檢查和結果輸出三個功能。

1.1 數據檢索

數據檢索功能主要是完成對在指定目錄(包含子目錄)下特定格式數據文件的搜索,并記錄他們的路徑,以便下一步的數據質量檢查。

在C#語言中,通過System IO命名空間下的FileSystemInfo類保存文件的基本信息(文件名、大小、路徑等),利用循環(huán)、遞歸調用、判斷等方法,可以檢索到指定目錄下符合用戶要求的所有文件[4-5]?;谝陨显?本程序設計了“數據類型選擇”和“所在目錄選擇”兩組控件,以便用戶查找數據。部分代碼如下:

private void SearchFiles(string filePath, ref List filesNames)

{

DirectoryInfo dirif=new DirectoryInfo(filePath);

FileSystemInfo[]fsi=dirif.GetFileSystemInfos();

//獲取文件夾下的文件

foreach (FileSystemInfo i in fsi)

{

if (i is DirectoryInfo)//如果i是文件夾

{

SearchFiles(i.FullName, ref filesNames);

//遞歸調用

}

else

if(Path.GetExtension(i.FullName)==".tps")

filesNames.Add(i.FullName);

}

}

以上代碼中,利用一次遞歸調用實現了對主目錄下所有子目錄的搜索,利用Path.GetExtension()函數獲取文件的后綴名,記錄后綴名為“.tps”的文件,返回到字符串集合filesNames中。通過上述方法可以搜索目錄下指定文件類型的所有文件。

本程序在數據類型選擇時可選擇標準格式O文件,也可以選擇接收機自定義格式tps文件。前者可直接進行數據質量檢查,后者需先進行格式轉換再進行下一步,格式轉換通過TEQC軟件或者TOPCON公司自帶的tps2rin.exe工具完成。

1.2 質量檢查

在完成對數據的檢索以后,可以通過TEQC軟件進行質量檢查。TEQC進行數據質量檢查的命令格式為

teqc+qc Ofile

在C#程序中,可以開辟獨立線程調用DOS控制臺,并向DOS控制臺輸入自定義的命令,以此完成對指定數據文件的數據質量檢查。部分代碼為

teqcProcess.StartInfo.FileName="cmd.exe";

//打開DOS控制平臺

teqcProcess.StartInfo.UseShellExecute=false;

teqcProcess.StartInfo.CreateNoWindow=true;

//是否顯示DOS窗口,true代表隱藏;

teqcProcess.StartInfo.RedirectStandardInput=true;

teqcProcess.StartInfo.RedirectStandardOutput=true;

teqcProcess.StartInfo.RedirectStandardError=false;

teqcProcess.Start();

teqcProcess.StandardInput.WriteLine(dosRoot);

teqcProcess.StandardInput.WriteLine("cd "+"""+teqcPath+""");

teqcProcess.StandardInput.WriteLine(teqcComLine);

teqcProcess.StandardInput.WriteLine("exit");

以上代碼中,dosRoot表示數據文件所在的盤符(C、D、E、F);teqcPath表示數據文件的路徑;teqcComLine為數據檢查的命令:teqc+qc Ofile.

1.3 結果輸出

在完成數據質量檢查以后,通過搜索檢查結果中每行信息的關鍵字,如“Receiver type”、“Time of start of window”、“MARKER NUMBER”等,讀取指定的關鍵字并利用添加的Microsoft.Office.Interop.Excel引用,將檢查結果按行輸出到Excel文件中。

2 程序應用

根據設計的功能,本程序可用于大批量GNSS觀測數據的質量檢查工作中,并在本單位的2014年GPS測前儀器檢驗工作中得到了實際應用。

打開程序后,如圖1所示,首先選擇數據類型為*.??o;再選擇數據所在目錄,本程序自動搜索該目錄(包括子目錄)下所有O文件,顯示在listview控件中,并計算文件數量顯示在狀態(tài)欄左下方;再點擊“質量檢查”按鈕,程序對所有選中的數據文件進行質量檢查,片刻之后即可檢查完畢;最后點擊“保存到Excel”按鈕,所有檢查結果自動保存到Excel報表中,結果輸出報表情況如圖2、圖3所示

圖1 程序運行界面

圖2 檢查結果輸出一

圖3 檢查結果輸出二

3 結束語

通過C#編程,集成TEQC軟件,本程序實現了GNSS數據的快速、大批量質量檢查功能,并將檢查結果保存在Excel報表中,對重點檢查的項目,例如時段長度、采樣率、中斷次數、有效率、MP1、MP2等逐項進行判斷,如不符合一定的標準,則突出相應單元格的顏色,使用戶能夠對所有數據的檢查情況一目了然,極大提高數據成果質量檢查的效率和準確度。

[1]中國地殼運動觀測技術規(guī)程[S]. 北京: 中國環(huán)境科學出版社, 2004.

[2]TEQC——The Tooklitfor GPS/GLONASS/Galileo/SBAS Data [EB/OL]. http://facility. unavco. org/software/teqc/teqc. html.

[3]李 沖,何鑫星. TEQC在GPS數據質量檢查中的常見問題及解決方案[J]. 全球定位系統(tǒng),2010,35(5):48-50.

[4]王小科.C#開發(fā)實戰(zhàn)寶典[M]. 北京:清華大學出版社,2010.

[5]黃勝忠.C# 4.0從入門到精通[M]. 北京:機械工業(yè)出版社,2011.

猜你喜歡
數據文件質量檢查程序
審計署赴江西省審計廳質量檢查座談會
給Windows添加程序快速切換欄
試論我國未決羈押程序的立法完善
基于表空間和數據文件探討MIS中數據庫架構設計
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
中注協舉辦2016年證券資格會計師事務所執(zhí)業(yè)質量檢查人員培訓班
加強會計信息質量檢查促進會計基礎工作規(guī)范
基于網絡環(huán)境的社區(qū)協同辦公問題探討(二)
氣象數據文件異機備份程序淺析
太湖县| 梁河县| 赣州市| 双柏县| 内乡县| 即墨市| 石城县| 威宁| 兰溪市| 甘泉县| 新余市| 黄梅县| 合山市| 哈巴河县| 洪雅县| 扬州市| 含山县| 韶关市| 定日县| 阿拉尔市| 台中县| 阳曲县| 佳木斯市| 伊金霍洛旗| 三亚市| 栾川县| 乌海市| 轮台县| 桃园县| 洛扎县| 武平县| 安溪县| 正宁县| 泰安市| 香格里拉县| 文登市| 平武县| 蒙自县| 定西市| 林周县| 壤塘县|