沈燮陽
摘 要: 遙感技術的飛速發展和遙感數據的廣泛應用,使現有的遙感應用系統操作復雜、生產流程較長的問題日益凸顯。針對這一情況,提出了一種基于XML文件的命令語言,以語言的形式輔助遙感產品的流程化生產,從而在遙感應用系統中實現數據與配置的自動化、標準化和可回溯操作,提高用戶操作效率。通過對于這種命令語言的應用,切實證明了該方案的可行性和有效性,解決了傳統的遙感應用系統當中生產流程較為繁瑣,需要用戶專業技能支持等問題。
關鍵詞: XML文件; 命令語言; 自動化; 標準化
中圖分類號:TP399 文獻標志碼:A 文章編號:1006-8228(2014)07-31-04
Abstract: With the extensive application of remote sensing data, remote sensing application system's complexity of existing operations has become a serious problem. In response to this situation, a kind of command language based on XML files is introduced. Remote sensing production is assisted by the language, enabling automation and standardization of configuration of remote sensing data and application systems. Operation can be traced back. By application, the feasibility and efficiency of user actions are proved. It overcomes expertise support issues and complicacy in process issues in the traditional system.
Key words: XML document; command language; automation; standardization
0 引言
近年來,全球范圍內航天與遙感技術的發展迅猛,我國也發射了多顆遙感衛星。由此引發了遙感數據爆發式增長,而這些數據往往得不到高效的處理。同時,隨著衛星分辨率的提高和遙感技術的不斷應用與發展,對遙感數據的實時處理和高效利用提出了更高的要求。如何在現有的遙感數據加工和處理過程當中,減少繁復的人工操作,提高系統運行效率,使遙感產品的生產更加工程化、流程化是目前遙感領域的一個重要課題。
目前國內對于流程化的語言技術體系研究多處于起步階段,在經常需要處理大量數據的遙感領域,亟需一種穩定的、面向工程化的類語言驅動平臺來增強可視化流程定制過程[1],擴展軟件的復用性,提高遙感數據處理系統的穩定性與易用性。與此同時,隨著對于遙感應用技術的產業化和大規模工程化服務能力的日益提高,在可視化、可擴展、可復用方面的優勢也得到了國內外學者的高度重視與研究[5-12]。
1 針對遙感產品生產的命令語言設計策略
要設計一種針對遙感產品生產的命令語言,首先需要充分了解遙感產品的特點和遙感產品生產的流程特性,下面就先對以上特性作一簡要分析,再有針對性地提出設計策略。
1.1 遙感數據及處理流程特點
目前對于遙感數據和其處理流程而言,最主要的特性有以下幾點[2-4]。
⑴ 單幅數據的體積較大。隨著衛星傳感器的技術進步,單幅影像包含的地域越來越廣的同時,主流數據的單幅影像大小已經超過了GB級,對單幅影像處理的難度也在日益加大。
⑵ 數據格式較單一。目前,絕大多數的數據格式仍為.tiff格式。
⑶ 單次處理數據量大。根據業務對于遙感數據的需求不同,通常一次任務中需要處理幾十到幾千幅影像不等。
⑷ 基本流程類似。對于一般的遙感影像而言,從開始生產到執行特定的產品生產算法的過程中,一般都需要經過預處理、特征提取、質量檢驗、參數反演等過程。
1.2 命令語言的設計策略
本文設計的命令語言,是根據用戶輸入的一種類似于編程語言的控制指令,自動化的從遙感數據處理流程中選取合適的過程和參數供用戶進行調用,從而提高整個系統在流程上的運行效率,減少重復操作與復雜的參數記錄,其主要用在體現以下幾個方面的特性。
⑴ 自動化:本文所提的自動化是一種針對系統內流程的自動化,這種自動化主要表現在對于系統內的各個子模塊之間的自動執行,以及常用參數的自動默認值選擇等方面。
⑵ 標準化:標準化的應用主要在于對遙感產品生產流程的規范性約束和對于不同產品的參數單位、數值范圍的標準。
⑶ 可回溯操作:針對于遙感產品的多樣性,可以記錄不同產品、同種產品的不同生產流程和配置,并進行重復生產和再次使用。此外,也可以導入外部數據。
2 基于XML文件的命令語言的設計
從遙感產品的實際特點考慮,產品生產任務往往具有很強的目的性和重復性。針對這一特點,本節首先提出了一種基于目標的構建模型;其次,在此模型的基礎上,通過XML文件實現命令語言的設計;最后,闡述了一種提高復用性的管理機制。
2.1 基于目標的模型構建
目標(Goal)是指系統在執行某一模塊或功能的同時,根據系統的內部輸入的相關信息,對所求結果的一種預估。這種處理目標不僅僅包括了期望得到的數據關系或是流程內容,還包括了為達成目標所需的運行數據,以及該目標與系統流程中的其他相關目標的對應邏輯關系。如果該目標可以分解,還包括與該目標相關的多個分支目標(Branch Goal)信息,分支目標也可包括多個葉目標(Leaf Goal)。根據不同的目標級別,生成對應的邏輯關系。所有子目標的所需信息,主要來自數數據庫。該模型具體內容如圖1所示。
圖1中,數據庫中保存著主要目標信息和所有目標與分支目標、葉子目標的樹形關系結構。
通過給定的目標,在數據庫中搜索其所有分支目標信息,并依次遞歸執行。完成所有的分支目標后,再對所需目標進行任務分析,并通過執行結果與預期值的對比,判斷目標達成情況,并可根據當前情況對系統參數進行調整,之后重新執行當前過程。整個模型是一個包含遞歸關系的整體,并可以從任何一部分開始重新執行。
2.2 可定制的管理機制
基于目標的模型具有目的性強,結構明確等特點,具有良好的應用價值和使用基礎[9-11]。同時,針對于遙感產品的流程接近、配置復雜的特性,需要一種可以定制的機制來簡化操作,提高用戶的執行效率。由于系統中要處理大量的類似任務或者相同任務,對于批量的產品生產,一種可定制的管理機制可以有效減少人工操作。該機制的具體流程圖如圖2所示。
從圖2中可以看出,這種可定制的管理機制主要包括兩個方面的內容。一是,允許用戶在現有系統的基礎上自主加入產品組件并配置相關參數,以方便其在對該組件的多次重復應用。這種方式使得系統的靈活性有較大的提高,同時提高各個模塊的通用性。二是,對于一次成功的產品生產,可對其生產流程中的每一步過程生成流程文件并保存,以方便多次的流程調用。因此,為了滿足系統對產品生產的有效性和實時性的要求,系統采用了多線程方式的運行機制。這種機制貫穿于系統的整個流程中,命令語言保證了系統的快速有效執行命令,可定制的管理機制則簡化了重復操作,提高系統的復用性。
3 基于XML文件的命令語言的實現
3.2 XML文件的格式約定
XML文件的主要作用是存儲系統流程當中各個模塊的執行順序、所選參數和數據信息。由于XML文件具有表意分離的特性,可以有效地保存當前模型所積累的知識,便于用戶進行便捷快速的消息傳遞和數據重用,提高系統流程的運行效率。同時,XML中基于樹形結構的信息保存方式也與現有的算法流程有良好的對應關系,可以形成一種以算法為根節點,相應的參數為子節點的模板,從而有效地保證模板的通用性和一致性。從另一方面講,也可以簡化在大量數據中的出錯查找與錯誤檢索所需的時間。其存儲方式的核心思想如下。
⑴ 建立一個queue,用以保存全局信息。
⑵ 獲取當前Goal的信息,將其存入根節點中。
⑶ 遍歷Goal中的Branch Goal,將每個Branch Goal的信息依此加入根節點下的子節點,并將每個Branch Goal和與其對應節點信息加入queue。
⑷ 用迭代的方式遍歷Branch Goal下屬一級的Leaf Goal,直至所有目標信息都已保存到文檔中。
XML不僅僅具有便利的存儲功能,對讀寫數據也有強大的平臺支撐和結構支撐。因此,使用XML文檔來存儲模型信息可以很好地滿足目前絕大多數遙感應用系統對于速度、精度的需求。XML格式說明如圖3所示。
3.3 命令語言的控制與應用
在遙感產品生產過程中,通過命令語言對產品的生產流程進行控制,主要從以下兩方面著手:
⑴ 記錄用戶本次產品生產中的操作流程與參數選擇,并記錄在XML文件中,以供用戶下次調用;
⑵ 通過命令進行判斷、循環、迭代等操作,完成產品的完整生產流程或對生產流程進行組裝,并生成新的模塊組件。
根據實際項目需求,將本文提出的基于命令語言進行細節調整,對“高分辨率對地觀測綜合業務處理平臺”項目中的產品算法管理模塊實現了本文所提出了模型,同時在自主加入算法與算法模型研究功能上實現了很好的接入。“高分辨率對地觀測綜合業務處理平臺”的產品算法管理模塊界面如圖4所示。
同樣,系統中可定制管理機制的實現也十分類似。圖6展示的是新建配置模塊界面,用戶可以通過命令語言的方式,直接加入新算法的對應信息,或將現有的執行過程加入新的配置模塊。
4 結束語
本文針對遙感產品生產過程中控制較為復雜的問題,提出了一種基于XML文件的命令語言工具。通過以一種基于目標的結構模型,對遙感產品生產過程中通過命令語言完成產品生產、回溯等功能進行了實現,簡化了遙感應用系統中用戶的操作,提高了產品數據的復用性和可回溯性。從總體上講,本文完成了概念-方法-模型-應用的完整研究流程,以遙感產品的特征為入手點,完成了對基于XML的語言命令的設計和實現。
在后續的研究中,我們將注重于研究業務流程可視化建模方法中的功能和流程的可視化建模方法,此外,還將針對不同遙感產品的流程特點,豐富和發展可視化建模方法對于可變性的適應程度,拓展建模方法的使用。
參考文獻:
[1] 孔駿,趙春穎.可視化語言技術在軟件開發中的應用(英文)[J].軟件學報,2008.19(8):1902-1909
[2] 姚青,洪余柯,王海洋.基于過程代數的可變業務流程建模方法的研究[J].計算機集成制造系統,2009.15(9):1721-1730
[3] 王瑞榮,汪樂宇.基于事件觸發并發數據流模型的可視化編程語言研究[D].浙江大學,2013.
[4] 張樹凡,余濤,李家國等.基于三級并行的遙感業務化處理系統研究[J].計算機工程與設計,2012.23(2):33-50
[5] 李建強,范玉順.一種工作流模型的性能分析方法[J].計算機學報,2003:11-24
[6] 翁代云,楊莉.人工智能技術在遙感圖像分類中的應用[J].計算機仿真,2012.6(29):240-243
[7] 董新法.一種可視化程序設計語言UVPL原型的研究與實現[D].河南大學,2009:13-26
[8] 鄭逢斌,張哲,余濤等.一種支持多任務高效處理的遙感產品生產線架構研究[J].計算機科學,2012.39(11):181-186
[9] 曾晶.Radviz可視化技術度量模型的研究[D].北京交通大學,2012:14-20
[10] Santos S D,Brodlie K.Gaining understanding of multivariate andmultidimensional data through visualization.Computer&Graphics,2004.28(1):311-325.2
[11] 王劍鋒,麻麗娜,李新葉等.基于潛在語義分析和自組織特征映射神經網絡的文本聚類研究[J].計算機與現代化,2010.2:77-79
[12] 雷向東.基于神經網絡語法分析[J].計算機工程與應用,2001.37(17):138-139