APP下载

基于MPI并行的遥感影像系统级几何校正快速处理技术研究

2011-11-24李宏宽杨晓冬邹珍军

关键词:结点校正集群

李宏宽,杨晓冬,邹珍军

(1.北京大学 地球与空间科学学院,北京 100871;2.航天星图科技(北京)有限公司,北京 100085)

随着对地观测技术的飞速发展,通过遥感卫星获得的数据量将迅速膨胀,遥感图像处理的运算量也随之急剧增加,所以研究遥感影像的快速处理变得十分紧要.针对各种自然灾害或偶发的大型事故(如大连漏油监测)利用遥感影像监测的快速应急处理、分析等,都对遥感影像的快速处理提出了十分迫切的应用需求.同时,随着现代计算机科学的快速发展,各种先进的处理器(CPU)不断出现,在单机多核、高内存的配置下能够充分利用计算机的硬件资源,提高数据处理的速度.因此,建立一种利用多CPU或多核机群处理方案来满足遥感影像快速处理的需求很有必要.为此,首先必须要分析遥感影像几何校正处理的特点和集群技术所面临的问题,所以本文主要从遥感影像处理的特点和并行计算的特点进行分析,并进行实验得出相应的解决方案.因此,利用现代计算机的高速的多CPU处理能力以及网络集群技术,能够充分提高遥感影像的几何校正处理效率,进而构建遥感卫星图像并行处理系统,为充分利用先进的计算机技术解决空间信息领域的问题提供了很好的参考.

1 系统几何校正流程及分析

1.1 几何畸变原因分析

遥感图像在成像的过程中,由于受到各种系统性因素的影响会产生几何畸变.几何畸变所带来的误差可以分为内部误差和外部误差[1].

内部误差主要是由传感器自身的性能与技术指标偏离标称数值造成的,比如多光谱扫描仪(MSS)扫描速度不匀、不同波段相同扫描线的成像时间差、扫描线的非线性和非平行性等使得到的图像失真.外部误差主要是由传感器以外的各种因素所造成的误差,比如传感器外方位(位置或姿态)的变化、地球曲率、地球自转等因素引起的变形误差.

1.2 系统级几何校正流程

对相应的CCD成像过程进行分析,确定几何校正的过程、读取卫星位置、姿态、相机、椭球体参数等校正需要的参数,根据相应的规则建立校正模型,读取卫星影像一级数据并进行校正处理,包括位置重采样和灰度重采样,最后根据指定格式进行输出,如图1所示.

图1 系统几何校正流程示意图Fig.1 System diagram of the geometric correction process

1.3 校正的计算过程与计算特征分析

1.3.1 读取各种参数文件.主要是解析、读取相应轨道参数姿态等文件,格式简单、内容很少,基本上都是一些XML格式的说明解释性文件,经过多次测试,耗时基本上都是在150 ms以内.

1.3.2 建立校正模型.主要是利用前面所获取的各种参数,根据各种空间变换规则进行变换,构建几何校正模型.这一步发现逐像元进行变换构建几何校正模型的耗时太长,针对16 000*16 000*8 bit大小的影像耗时多达120 min,为了减少建立校正模型的耗时,可采取格网式的建立校正模型,即在影像上按照500*500的大小建立格网并计算校正模型.

1.3.3 数据读取.从硬盘上读取相应的待校正数据,数据的读取耗时只跟所采用的操作系统、文件系统、主机PCI总线、硬盘转速和内存传输速率[2]有关.

1.3.4 何校正.逐个像元灰度、位置采样,此部分主要是针对每一个像元而进行的,针对16 000*16 000大小的影像耗时基本上都是在30 s左右.

1.3.5 数据输出.将经过校正的好数据进行写硬盘操作,这里的主要处理速度同样和采用的操作系统、硬盘转速和主机PCI总线[2]的传输速率等密切相关.

2 并行处理的需求及意义

随着各种遥感卫星传感器相机的使用,全色数据、多光谱数据、高光谱数据以及SAR数据等各种数据以及宽幅等所生成的数据量都很大,同时,随着计算机技术的快速发展,市场上出现2核、4核甚至8核[3]的中央处理器(CPU),而且现在各个影像应用行业都希望使用高分辨率以及最新的影像数据或者某一地区的历史海量影像来处理分析,这些需求带来了巨大的数据量和运算量.若是使用传统的串行处理方式,一方面浪费了现有计算机的计算能力,另一方面也不能满足实际业务的时效性要求.

2.1 并行处理技术种类意义

现代计算机并行处理技术主要有基于CPU和基于GPU这两大类并行处理方法,各有特点并有相应的具体处理方案,如通过CPU加速的MPI、OpenMP、PVM[4]等,还有Intel的TBB等;基于GPU的有NVIDIA的CUDA和ATI的Stream技术.结合遥感影像的数组特点和遥感几何校正中主要存在的运算量等进行分析,考虑到处理海量多景数据的技术成熟度等因素,本文决定使用基于MPI构建集群进行遥感影像的系统级几何校正并行处理的方案.

2.2 遥感影像系统几何校正处理特点

根据对以上遥感影像系统几何校正处理过程的分析,整个校正过程主要耗时在重采样阶段,包括位置和灰度的重采样过程.

图2 横、纵向划分子块示意图Fig.2 Horizontal, vertical division of sub-block diagram

2.3 提出遥感影像几何校正并行处理方案

采用并行处理技术是提高校正执行效率的有效手段,遥感图像的几何校正采用数据并行的处理方式.直观并行法[5]是大图像并行重采样处理常用的算法,其处理方式是对输入的图像进行规则(条状或块状)划分.如图2所示,输入的图像被分割成4块子图像,每个处理器处理1块输入的图像,同时对目标图像的重采样计算也采用简单的规则划分,每个处理器对1块输出子图像进行灰度值位置重采样.

图2所示的直观并行法多用于图像的缩放与整体变形等,对于系统几何校正来说,将采用这种方法进行校正,对输出图像块进行重采样计算所需的像元灰度信息需要利用主从模式中的各个从计算机结点进行运算,需要通过处理器之间的交互获得,主计算机负责校正前数据读取以及对校正结果在内存中合并写出到硬盘文件中.这种通信模式简单,主从计算结点分工明确,容易理解与部署,但是对内存的使用量较大,需要主计算结点对数据进行读写或者使用操作系统文件进行详细的数据定位.在并行几何校正算法中,局部输出区域的计算与存储保证了算法的数据局部性,如图2所示,输入图像被分割成4块子图像,在计算结点上,规则输入子图像经过正映射函数变换到目标图像的对应区域.

图3 几何校正集群硬件部署示意图Fig.3 Schematic diagram of the geometric correction of the cluster hardware deployment

2.4 硬件部署处理方案

系统几何校正基本上采用多台主机利用MPI并行扩展进行几何校正,主要分为硬件架构、算法软件实现等.硬件架构采用跟MPI相结合的适合于校正几何校正使用的传统主从模式.所谓主从模式就是MPI程序的各个进程所起的作用和地位并不相同,1个或者多个进程完成一类任务,而另外的进程完成其他的任务,这些功能或者地位不同的进程所对应的代码也有较大的差别.基于此,在几何校正中所采用集群架构,如图3所示.

3 实验结果及分析

实验环境是由3台个人计算机(双核)构建的集群,其中1台计算机作为主控制结点,其余2台计算机作为从计算结点,通过100 Mb 快速交换式以太网互联.计算机的配置为Pentium(R)Dual-Core E5300 2.60 GHz的CPU ,内存2 GB;软件环境为Windows XP、MPICH 2.0消息传递库.实验数据为16 384×16 384 的全色影像,采用二次多项式与双线性重采样计算进行几何校正[6],其流程主要包括参数解析、模型构建、数据读取、几何校正与数据写出[7-9].表1 给出了采用5个处理结点处理时,各个处理结点处理本地数据的时间.图4是2台主机4个核参与运算的系统几何校正截图,分别是1个主管理进程和4个从计算进程参与系统几何校正.参与处理不同核及加速情况统计如图5所示.

表1 多核几何校正时间统计表Tab.1 Multi-core geometric correction time

图4 校正加速结果统计Fig.4 Charts the results of calibration speed

图5 某地区待校正和校正后影像缩略图Fig.5 In an area to be corrected and corrected image thumbnail

4 结 语

对于遥感影像几何校正这样的计算密集型应用,分布式并行计算能够大幅度提高运算效率并减少运算时间,特别在对单景大数据量以及多景海量数据进行处理时,性能的提高相当明显[10].但是,它不与参与计算的处理器的核数成正比,因为在整个运算过程中多核与主处理器核存在数据交换传递的时间.同时,在集群并行计算平台上,并行算法性能的优化一方面取决于算法是否能够充分利用计算平台的计算能力,另一方面也取决于采用硬件的数据IO的通讯能力.根据单景数据量的大小,将数据合适地划分为不同数据块并让计算结点进行计算,同时针对在更高硬件通讯能力的计算机上进行测试发现IO所使用的时间显著降低.在本次实验的过程中,也使用了GPU CUDA进行图像的相对辐射校正处理,同样有较大的效率提升.

下一步希望通过更进一步的研究提出在海量遥感影像的快速处理中采用基于GPU+CPU的并行集群架构模式,所采用的架构既经济又能满足当前对图像快速处理的要求,同时实现节省电能、小型化、高性能、速度快的目标.

参考文献:

[1] 梅安新.遥感导论[M].2版.北京:高等教育出版社,2004:65-83.

[2] 陈国良.并行算法实践[M].1版.北京:高等教育出版社,2004:24-42;58-78;105-132.

[3] 陈国良,孙广中.并行计算的一体化研究现状与发展趋势[J].科学通报,2009(8):25-27.

[4] 薛笑荣,曾琪明.并行计算在SAR图像处理中的应用[J].计算机应用,2006(S1):1-2.

[5] 蒋艳凰,杨学军, 易会战.卫星遥感图像并行几何校正算法研究[J].计算机学报,2004(7):10-11.

[6] 汤国安,张友顺.遥感数字图像处理[M].1版.北京:科学出版社,2004:60-80.

[7] 李盛阳.基于网格的遥感图像快速处理[J].计算机工程,2007(3):12-13.

[8] 都志辉.高性能计算并行编程技术—MPI行程序设计[M].北京:清华大学出版社,2001:36-76.

[9] 袁文龙.星载SAR图像几何校正原理及软件实现与实现[D].北京:中科院电子所,2005.

[10] 牟胜梅.海量遥感图像数据实时预处理系统结构设计[J].计算机工程与科学,2004(10):11-12.

猜你喜欢

结点校正集群
基于八数码问题的搜索算法的研究
劉光第《南旋記》校正
海上小型无人机集群的反制装备需求与应对之策研究
一种无人机集群发射回收装置的控制系统设计
Ladyzhenskaya流体力学方程组的确定模与确定结点个数估计
一类具有校正隔离率随机SIQS模型的绝灭性与分布
机内校正
Python与Spark集群在收费数据分析中的应用
勤快又呆萌的集群机器人
一种基于eNode B的主动式频偏校正算法