基于XML的遥感产品生产命令语言的设计与实现

时间:2022-07-23 09:45:17

基于XML的遥感产品生产命令语言的设计与实现

摘 要: 遥感技术的飞速发展和遥感数据的广泛应用,使现有的遥感应用系统操作复杂、生产流程较长的问题日益凸显。针对这一情况,提出了一种基于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 puter&Graphics,2004.28(1):311-325.2

[11] 王剑锋,麻丽娜,李新叶等.基于潜在语义分析和自组织特征映射神经网络的文本聚类研究[J].计算机与现代化,2010.2:77-79

[12] 雷向东.基于神经网络语法分析[J].计算机工程与应用,2001.37(17):138-139

上一篇:分段组卷伪并行遗传算法的研究与实现 下一篇:智能视频监控和智能视频分析技术在检察工作中...