高分辨率卫星遥感产品规模化生产的制作方法

文档序号:11829122阅读:155来源:国知局
高分辨率卫星遥感产品规模化生产的制作方法与工艺

本发明是基于分布式计算的编程框架构建并行集群计算平台,研究多角度和多尺度的多源遥感图像获取模式,突破多源可见光多角度、多分辨率图像自动提取分辨率、高精度的DSM技术的基础上研究图像块的快速重投影和无缝拼接方法,通过海量影像的匀光匀色技术实现影像无差别显示。属于电子信息技术领域,可对高分辨率的卫星遥感产品进行规模化的生产,大大加快了产品生产的速度。



背景技术:

1)精细DSM提取技术:利用所有能获得的目标区影像,采用多基元、多分辨率的多片影像的匹配技术,加强匹配的约束条件,达到提高影像匹配的可靠性,提取高精度DEM的目的。

2)基于高精度DSM的建筑物遮挡计算和阴影自动去除:在明确获知成像时间和位置的前提下,可以知道当时当地的太阳高度角,同时可以计算出图像中的阴影范围。对于多云和阴天的情况,阴影可能并不存在,于是将对计算出的阴影范围与邻近的区域进行灰度和对比度等指标的计算。比较,判断是否是阴影。遮挡区域和阴影将同时考虑,作为需要填补的区域。这样的方法适合同时处理大范围影像,也适合做并行处理。其以区域的高分辨率DSM为核心,不局限于每景影像的单独处理。

3)研究多角度和多尺度的多源遥感图像获取模式:将新获取的多源可见光图像与基准图像数据进行自动匹配,获取高精度的均匀分布的地面控制点,免除了人工定位和输入地面控制点的工作,成为整个流程的自动化的第一步。



技术实现要素:

本发明采取的技术路线如下:

技术路线共包括5个部分,分别是:任务划分与数据智能调度技术、GPU与CPU协同处理技术、数据处理算法的并行化与模块化技术、多任务协同生产作业模式和自动流程化生产技术。

1)任务划分与数据智能调度技术

项目拟通过处理任务划分模块、节点负载监测模块、任务组织调度模块、任务监控存储模块,实现处理任务的精细划分和智能调度,其中,处理任务划分模块根据并行处理节点的数量以及生产任务的大小与并行能力,对生成任务进行划分;节点负载监测模块将定时获取计算节点的负载信息,生成负载报告,并将报告发送至任务组织调度模块;任务组织调度模块接收到节点负载报告后,按照负载均衡的方式,将待处理的任务发送到相应的处理节点上,随后通知任务监控存储模块,对任务处理的进展进行实时监控;任务监控存储模块不断接收处理节点上运行任务的信息,并通过人机界面让操作员实时了解任务进展,通 过在线存储方式,实时备份当前的处理结果,同时接收各节点的成果数据,在本机上储存备份。技术路线如图一

2)GPU与CPU协同处理技术

项目拟采用CUDA开发包,将GPU和CPU两种不同架构的处理器集成在一起,采用OpenMP多线程并行机制管理多个GPU设备,组成GPU-CPU硬件上的协同模式。在应用程序编写过程中,项目拟将并行层次明显、计算量大的函数改写为能够在GPU上执行的核函数,开发基于GPU的细粒度密集并行计算能力,并利用CPU执行顺序型代码,真正实现GPU和CPU的协同配合。在GPU-CPU协同配合的基础上,项目进一步将CPU-GPU异构计算机作为计算节点,通过互联网络连接,构建多节点混合集群系统,提供成本更低、体积和功耗更小、性能更强的高性能并行处理体系架构。

3)数据处理算法的并行化与模块化技术

通过分析整个空间信息处理作业流程,提取其中计算密集计算量大的处理算法与步骤,从算法层上对其进行多CPU并行分解,通过模块化方式,构建一套由数据驱动的高度自动化的空间信息处理并行算法库,更好地实现空间数据的并行化处理。项目拟构建的空间数据处理并行算法库主要包括影像预处理、多基线影像匹配、DSM/DEM自动提取、正射影像制作等主模块,且各主模块包含了多个核心并行算模块。

4)多任务协同生产作业模式

空间信息产品的生产,常常需要有多个部门、多个人来共同完成,由于空间信息生产的复杂性,需要建立多任务协同生产的作业模式。在多任务的协同设计中,基于工作流的多任务协同技术实现。以工作流为导向的分布式协同生产控制技术能够智能地通知生产人员在正确的时间处于正确的岗位,同时为他们提供完成工作所需的合适的信息。可以建立一种协同管理模式,将组织机制和协调方法融合在一起,实现分布式协同生产控制的整体框架可以实现跨企业、跨地域,以有效的协调方式响应用户需求、提高生产应变能力和生产的敏捷。生产作业模式图如图二所示。

5)自动流程化生产技术

项目将整个区域的数据一次性导入,且在产品生产流程中,尽可能多地实现自动处理。

附图说明

1是处理任务的精细划分和智能调度组成模块示意

2是多任务协同生产作业模式

具体实施方式

1、任务划分与数据智能调度技术

通过处理任务划分、节点负载监测、任务组织调度、任务监控存储等功能模块,实现处理任务和数据 的智能调度。

(1)处理任务的精细划分模式

根据遥感影像处理的特点,本发明将采用按照数据划分和按任务划分两种模式,对处理任务进行精细划分。在数据划分模式下,各个处理节点(或是小型集群系统)完全独立地处理一块数据,并行地完成一系列的计算步骤,得出这一块数据的最终计算结果,交由主节点统一整合结果数据。

任务划分模式下,不同的处理任务根据其作业流程根据划分为不同的阶段,不同的处理阶段根据需要并行处理,阶段处理同步后再进行下一步的处理。相对于依数据划分模式,这种作业流程明确了当前阶段的处理任务,任务的调度更容易,但同时这种模式下处理节点之间的交互更多,对网络通信的要求更高。

(2)处理任务的组织调度方案

本发明将利用静态调度和动态调度手段,实施任务智能调度。静态调度研究在任务执行前如何对集群内的计算资源进行评估,并由此确定任务的分配;而动态调度研究在任务执行期间如何根据计算节点执行任务的当前状态和计算资源的占用情况,对任务进行实时调整,以达到集群计算的最佳性能。项目对两种作业流程模式下的任务调度策略进行分析,包括作业网络的形成、无资源需求的任务调度算法。其中,动态任务调度采取半分布式策略,将整个集群系统分成若干小区域,区域内部采用集中式任务调度,而区域间采用分布式调度。

在负载收集策略上,本发明采用变化收集的方法对各个处理节点的负载情况进行收集。在负载迁移的执行上,考虑复杂度较低的数据迁移方式,但是由于遥感数据处理的数据密集型,大数据的传输势必造成整体作业时间的增加,所以考虑提前迁移的策略,即根据节点负载情况,提前将负载较重的节点的数据向负载较轻的节点迁移,通过计算和通信重叠来提高计算性能。

2、GPU与CPU协同处理技术

项目采用CUDA开发包,将GPU和CPU两种不同架构的处理器集成在一起,组成硬件上的协同模式;同时在应用程序编写过程中,由CPU负责执行顺序型代码,将并行层次明显、计算量大的函数改写为能够在GPU上执行的核函数,而GPU负责密集型的并行计算,实现GPU和CPU的真正协同配合,提高处理效率。

为了充分发挥这种多层次、多节点的混合集群并行系统的优势,关键要掌握CUDA编程模型、基于OpenMP的集群节点内多GPU并行管理机制、基于MPI的集群节点间多GPU并行管理机制以及GPU性能提升策略。

(1)CUDA编程模型

当GPU计算程序运行时,CUDA驱动程序会将并行数据映射、加载到GPU中,并将其细分成更小的区块,然后进行并行处理,主机端程序可以通过高速的PCI Express总线与GPU进行数据交换。数据传输、GPU运算功能的启动以及CPU和GPU的交互都可通过调用驱动程序中的专门操作来完成。

(2)基于OpenMP的集群节点内多GPU并行管理机制

本发明借鉴集群系统的思想将多个GPU集成在一起,构建计算性能更高的GPU集群,实现多GPU并行。

为有效管理多个GPU的调度线程,项目拟采用OpenMP的多线程机制管理多个GPU设备。根据所加载的GPU并行加速卡数目,由OpenMP主线程派生出相同数目的子线程,每个派生线程通过CUDA提供的上下文管理和设备管理接口选择其中一个GPU设备进行管理、执行GPU内核程序,实现多GPU的粗粒度并行。

(3)基于MPI的集群节点间多GPU并行管理机制

CUDA与MPI联用,通过消息传递机制,将任务分配到各个节点,实现节点间的粗粒度并行;而在每个节点上,启动多线程机制,利用共享内存实现快速高效的细粒度并行。这种混合粒度的并行程序的开发既可以发挥每个节点的巨大的计算能力,又可以充分利用集群的可扩展性,为大型计算提供一个切实可行的方案。

而在GPU集群搭建过程中,需要保留传统纯CPU集群系统的任务管理与调度、数据通信、功能实现等接口不变,仅将其计算节点升级为GPU并行计算机,或每个节点加载多块GPU加速卡,形成混合型GPU集群并行计算平台。

(4)GPU性能提升优化策略

GPU具有独特的硬件结构,采用常规的并行算法,很难发挥GPU的运算优势,通常需要结合GPU的硬件特点和算法的可并行性,才能有效提高GPU的计算效率。为获得更大的性能提升,需要对初始程序进行优化。优化的核心思想是改进计算访存比和各存储层次上的延迟隐藏,主要包括执行配置优化、共享存储器优化和纹理存储器优化。

3、数据处理算法的并行化与模块化技术

本发明分析整个遥感影像处理作业流程,提取其中计算密集、且计算量大的处理算法与步骤,从算法层上对其进行CPU与GPU的并行分解,通过模块化方式,构建一套由数据驱动的高度自动化的遥感影像处理并行算法库,更好地实现遥感数据的并行化处理。

发明拟构建的遥感数据处理并行算法库主要包括影像预处理、多基线影像匹配、真正射影像制作等主模块,且各主模块包含了多个核心并行算法子模块。

(1)影像预处理算法的并行化与模块化

本发明对影像预处理过程进行分析,提取其中计算密集的预处理算法,实现其并行化处理,构建相应的并行算法子模块。项目拟构建的影像预处理并行算法子模块包括:影像金字塔制作子模块、特征点提取子模块、Wallis滤波子模块和暗原色去雾子模块等。

以特征点提取子模块为例,本发明主要针对SURF(Speeded Up Robust Features)算子进行并行化与 模块化处理。SURF算子使用Hessian矩阵来检测特征点,利用盒式滤波器(Box Filters)来代替二阶高斯滤波,并基于积分图像(Integral Image)加速卷积运算,提高处理效率。

(2)多基线影像匹配生成DSM算法的并行化与模块化

在多基线立体影像匹配中,核线影像制作、相关测度计算等是典型的计算密集型步骤,对计算资源有着巨大的需求,同时又具有非常规则的结构,体现着明显的并行性,需要通过并行处理技术来提高效率。

针对多基线立体匹配过程中的算法步骤,项目拟构建的多基线影像匹配并行算法子模块包括:核线影像制作子模块、松弛法匹配子模块、相关测度计算子模块和多视最小二乘匹配子模块等。

以相关测度计算子模块为例,本发明针对算法的SIMD并行处理特性,利用GPU来实现算法的并行处理,通过数据流转过程的优化,避免CPU系统主存与GPU设备显存之间频繁的数据通信。

(3)真正射影像纠正算法的并行化与模块化

项目构建的真正射影像纠正子模块包括:遮挡区检测子模块、正射纠正子模块、影像镶嵌子模块和兴趣区匀光子模块等。

以正射纠正子模块为例,本发明在实际的正射纠正处理流程中采用间接法重采样,对纠正目标影像上的每一个像点,根据原始影像与纠正结果影像间的坐标变换关系求解其对应像点在原始影像上的坐标,然后进行灰度值内插。在重采样处理过程中,纠正目标影像上每个像素的计算过程基本一致,且又相互独立,非常适合GPU的细粒度数据并行计算。而为实现重采样操作的GPU并行化,需要编写一个与之对应的“核函数(Kernel)”。在核函数内,GPU线程通过CUDA的内置变量来定位所要处理的像素。

作为针对图形渲染任务而设计的专用硬件,GPU在处理通用计算问题时具有同CPU完全不同的执行机制和性能特征。采用执行配置优化技术提高Warp占有率,利用共享存储器优化减少对效率低下的全局存储器中坐标变换系数的重复访问,通过纹理存储器代替全局存储器优化对原始影像数据的访问,提高正射纠正的处理效率,正射纠正过程的GPU-CPU协同处理流程。

单GPU并行主要研究针对几何纠正过程的内部像素级细粒度并行处理技术及优化策略进行研究,而要利用多GPU并行来进一步提高处理效率,则需要分析处理任务中更高层次的并行性。在面阵影像几何纠正的批量处理任务中,稍粗粒度的并行性表现为局部图像块间并行或者彩色图像的颜色通道间并行,而更粗粒度的并行则表现为批量处理任务中的各原始影像间的并行。

4、多任务协同生产作业模式

1)建立工作流模型

工作流模型一般可以分为面向控制、面向数据和混合模型这三类。因此,协同遥感处理系统中的工作流系统采用混合模型,采用基于业务规则的事件驱动,以数据为中心,以数据流向为驱动,以服务端运行的密集计算为主,同时具备同远程计算集群交互的能力,建立具备远程服务架构的生产模型。

2)工作流分类

工作流的类型分类主要是对整个遥感数据处理工作流执行过程中的相关对象的类型进行设置,验证工作流的可执行性以及对执行过程中的相关数据的兼容性进行转换。

支持相关对象的类型设定,主要是指Token、Port和Relation等的设定。

验证工作流活动的可连接性。

3)实现多任务协同生产

在多任务的协同设计中,基于工作流的多任务协同技术实现。以工作流为导向的分布式协同生产控制技术能够智能地通知生产人员在正确的时间处于正确的岗位,同时为他们提供完成工作所需的合适的信息。

5、自动流程化生产技术

系统能够根据计划自动将整个任务自动划分成多个子任务交给计算结点进行处理,最后自动整合得到整个测区的影像产品,通过自动化处理,大大减少人工劳动,提高工作效率。因此,发明需要对遥感数据自动化处理工作流进行设计,以实现任务计划的自动划分与节点计算资源的优化分配。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1