联合时空重建与CUDA加速的遥感时间序列数据重建方法转让专利

申请号 : CN202211272949.8

文献号 : CN115346004B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王煜淼冯璐玮孙伟伟杨刚聂可王利花

申请人 : 深圳市规划和自然资源数据管理中心(深圳市空间地理信息中心)

摘要 :

本发明涉及联合时空重建与CUDA加速的遥感时间序列数据重建方法,包括将遥感时间序列数据转换为时空三维向量,利用地物的时空相似性分别从时间和空间维度对缺失像元进行重建,然后利用CUDA来并行实现时间重建、空间重建和结果合并,形成最终重建数据集。本发明的有益效果是:本发明充分利用了遥感时间序列数据的时空相关信息,采用GPU并行计算,从质量和效率两个方面提升重建效果,具有重要的实际应用价值。

权利要求 :

1.联合时空重建与CUDA加速的遥感时间序列数据重建方法,其特征在于,包括:步骤1、由CPU读取研究区的遥感时间序列数据,并保存在主机内存中,同时对所述遥感时间序列数据进行预处理,选择要重建的波段;

步骤2、以向量的形式将遥感时间序列数据表示为时空三维向量 ,其中I,J和Z分别表示空间经度、空间纬度和时间; 代表一个具体像元的值,缺失像元的值为0;

步骤3、根据GPU显存大小与时空三维向量 ,获取待重建时空三维向量 ,并将所述待重建时空三维向量 从CPU内存复制到GPU显存中;

步骤4、利用CUDA构建一种空间重建函数,沿着待重建时空三维向量 的空间维度,对每个待重建像元进行并行的空间重建;

步骤5、利用CUDA构建一种时间重建函数,沿着待重建时空三维向量 的时间维度,对每个待重建像元进行并行的时间重建;

步骤6、利用CUDA构建一个合并函数,并行的将待重建时空三维向量V上每个待重建像元的时间重建结果和空间重建结果加权平均,得到待重建时空三维向量 的最终重建结果,并将 从GPU显存复制到CPU内存,释放显存;

步骤7、根据待重建时空三维向量 的最终重建结果 ,获取时空三维向量的最终重建结果 ;

步骤8、检查重建结果,若仍存在缺失,重复步骤3‑7,直至完成达到重建要求。

2.根据权利要求1所述的联合时空重建与CUDA加速的遥感时间序列数据重建方法,其特征在于,步骤1中,所述预处理包括几何校正、大气校正、影像配准和云检测。

3.根据权利要求1所述的联合时空重建与CUDA加速的遥感时间序列数据重建方法,其特征在于,步骤3包括:步骤3.1、根据GPU显存大小计算理论上最大处理面积 ,表示为:其中, 表示显存大小, 表示遥感数据每个像元所占内存大小,表示每个像元的长度;

步骤3.2、将所述最大处理面积 与所述时空三维向量 的空间面积进行比较,若所述最大处理面积 大于所述时空三维向量 的空间面积,则将所述时空三维向量作为待重建时空三维向量 ;若所述最大处理面积 小于所述时空三维向量 的空间面积,则采用格网切分的方式对所述时空三维向量 进行空间维度分割,形成多个子区域的待重建时空三维向量 ,所述子区域的面积小于所述最大处理面积 。

4.根据权利要求3所述的联合时空重建与CUDA加速的遥感时间序列数据重建方法,其特征在于,步骤7中,若所述时空三维向量 未经过空间维度分割,将待重建时空三维向量的最终重建结果 作为时空三维向量 的最终重建结果 ;若所述时空三维向量 经过空间维度分割,将多个子区域的待重建时空三维向量 的最终重建结果 进行合并,得到时空三维向量 的最终重建结果 。

5.根据权利要求1所述的联合时空重建与CUDA加速的遥感时间序列数据重建方法,其特征在于,步骤4包括:步骤4.1、设置空间搜索半径,搜集待重建像元的空间邻居像元集合;

步骤4.2、考虑到光谱时序数据也存在缺失值,计算每个待重建像元与空间邻居像元的有效时序的交集,并将交集个数小于有效时序个数阈值的空间邻居像元删除;

步骤4.3、计算剩余空间邻居像元与待重建像元的时序相关性,生成相关性集合;相关系数的计算方式表示为:其中,为时序个数,为某个时序点, 和 分别为待重建像元和空间邻居像元在时序 上的值,和 分别为待重建像元和空间邻居像元的光谱时序数据的平均值;

步骤4.4、进一步筛选空间邻居像元,删除相关系数低于相关性阈值的空间邻居像元;

如果筛选后的空间邻居像元个数为0,则无法重建,保持空值;否则,将相关系数作为相关权重和距离权重相乘,重新计算空间邻居像元的权重,通过加权平均最终得到待重建像元的空间维度估计值。

6.根据权利要求1所述的联合时空重建与CUDA加速的遥感时间序列数据重建方法,其特征在于,步骤5包括:步骤5.1、设置时间搜索半径,搜集待重建像元的时间邻居像元集合;

步骤5.2、根据步骤5.1所搜集的时间邻居像元集合计算待重建像元的时间维度估计值,表示为:其中, 为待重建像元的时间维度估计值,m为时间邻居像元的个数, 为第l个时间邻居像元的观测值, 为当前时间邻居像元和待重建像元的时间间隔,为平衡参数,取值范围为0到1;当不存在时间邻居像元时,保留空值不变。

7.根据权利要求1所述的联合时空重建与CUDA加速的遥感时间序列数据重建方法,其特征在于,步骤4和步骤5中,通过构建时空三维向量索引,利用索引的计算提取时间邻居像元与空间邻居像元;待重建像元 的时空邻居集合分别通过以下公式算出:}

}

上式中, 和 分别为空间邻居集合和时间邻居集合,SR和TR分别为空间搜索半径和时间搜索半径。

8.联合时空重建与CUDA加速的遥感时间序列数据重建装置,其特征在于,用于执行权利要求1至7任一所述遥感时间序列数据重建方法,包括:预处理模块,用于将研究区的遥感时间序列数据进行预处理,选择要重建的波段;

表示模块,用于以向量的形式将遥感时间序列数据表示为时空三维向量 ,其中I,J和Z分别表示空间经度、空间纬度和时间; 代表一个具体像元的值,缺失像元的值为0;

第一获取模块,用于根据GPU显存大小与时空三维向量 ,获取待重建时空三维向量 ,并将所述待重建时空三维向量 读入GPU显存中;

空间重建模块,用于利用CUDA构建一种空间重建函数,沿着待重建时空三维向量 的空间维度,对每个待重建像元进行并行的空间重建;

时间重建模块,用于利用CUDA构建一种时间重建函数,沿着待重建时空三维向量 的时间维度,对每个待重建像元进行并行的时间重建;

相加模块,用于利用CUDA构建一个合并函数,并行的将待重建时空三维向量V上每个待重建像元的时间重建结果和空间重建结果相加,得到待重建时空三维向量 的最终重建结果 ,并将 从显存导出;

第二获取模块,用于根据待重建时空三维向量 的最终重建结果 ,获取时空三维向量的最终重建结果 ;

检查模块,用于检查重建结果,若仍存在缺失,第一获取模块、空间重建模块、时间重建模块、相加模块和第二获取模块重复运行,直至完成达到重建要求。

9.一种计算机存储介质,其特征在于,所述计算机存储介质内存储有计算机程序;所述计算机程序在计算机上运行时,使得计算机执行权利要求1至7任一所述遥感时间序列数据重建方法。

说明书 :

联合时空重建与CUDA加速的遥感时间序列数据重建方法

技术领域

[0001] 本发明涉及光学遥感图像处理技术领域,更确切地说,它涉及联合时空重建与CUDA加速的遥感时间序列数据重建方法。

背景技术

[0002] 遥感时间序列数据可以提供地物变化的细节信息,被广泛应用在地区或全球环境变化研究中。然而,由于受到云、雾、冰雪和传感器本身故障影响,影像数据往往会出现信息缺失导致时空不连续现象,因此研究遥感影像重建方法,构建完善的遥感时间序列数据,是后续进行长时序遥感应用的重要基础,也是一项意义重大的课题。
[0003] 目前,遥感数据重建算法主要包括空域重建方法和时域重建法。空域重建方法适用于小面积的重建问题,对于大面积的空间缺失,重建结果会出现过度平滑、模糊或重建不完整等现象。时域重建方法是利用多时相数据作为互补信息源,通过建立多时相之间的数学关系,实现特定区域缺失影像的信息重建,但在地物变化较快的地区应用效果不佳。此外,大多研究数据主要为低分辨率遥感数据,如MODIS,中高分辨率的数据研究较少。中高分辨率遥感数据的体量是低分辨率遥感数据的上百倍甚至上千倍,一般的重建方法应用在中高分辨率遥感数据上效率低下,方法实用性受限。

发明内容

[0004] 本发明的目的是克服现有遥感时序数据重建方法在时空互补信息利用不足,且运行效率低的缺陷,提供了联合时空重建与CUDA加速的遥感时间序列数据重建方法。
[0005] 第一方面,提供了联合时空重建与CUDA加速的遥感时间序列数据重建方法,包括:
[0006] 步骤1、由CPU读取研究区的遥感时间序列数据,并保存在主机(Host)内存中,同时对所述遥感时间序列数据进行预处理,选择要重建的波段;
[0007] 步骤2、以向量的形式将遥感时间序列数据表示为时空三维向量  ,其中I,J和Z分别表示空间经度、空间纬度和时间;  代表一个具体像元的值,缺失像元的值为0;
[0008] 步骤3、根据GPU显存大小与时空三维向量 ,获取待重建时空三维向量 ,并将所述待重建时空三维向量 从CPU内存复制到GPU显存中;
[0009] 步骤4、利用CUDA构建一种空间重建函数,沿着待重建时空三维向量 的空间维度,对每个待重建像元进行并行的空间重建;
[0010] 步骤5、利用CUDA构建一种时间重建函数,沿着待重建时空三维向量 的时间维度,对每个待重建像元进行并行的时间重建;
[0011] 步骤6、利用CUDA构建一种合并函数,并行的将待重建时空三维向量V上每个待重建像元的时间重建结果和空间重建结果加权平均,得到待重建时空三维向量 的最终重建结果   ,并将  从GPU显存复制到CPU内存,释放显存;
[0012] 步骤7、根据待重建时空三维向量 的最终重建结果  ,获取时空三维向量 的最终重建结果   ;
[0013] 步骤8、检查重建结果,若仍存在缺失,重复步骤3‑7,直至完成达到重建要求。
[0014] 作为优选,步骤1中,所述预处理包括几何校正、大气校正、影像配准和云检测。
[0015] 作为优选,步骤3包括:
[0016] 步骤3.1、根据GPU显存大小计算理论上最大处理面积  ,表示为:
[0017]
[0018] 其中,   表示显存大小,  表示遥感数据每个像元所占内存大小, 表示每个像元的长度;
[0019] 步骤3.2、将所述最大处理面积 与所述时空三维向量  的空间面积进行比较,若所述最大处理面积  大于所述时空三维向量的空间面积,则将所述时空三维向量  作为待重建时空三维向量 ;若所述最大处理面积  小于所述时空三维向量的空间面积,则采用格网切分的方式对所述时空三维向量  进行空间维度分割,形成多个子区域的待重建时空三维向量  ,所述子区域的面积小于所述最大处理面积 。
[0020] 作为优选,步骤7中,若所述时空三维向量  未经过空间维度分割,将待重建时空三维向量 的最终重建结果  作为时空三维向量  的最终重建结果 ;若所述时空三维向量  经过空间维度分割,将多个子区域的待重建时空三维向量 的最终重建结果  进行合并,得到时空三维向量的最终重建结果 。
[0021] 作为优选,步骤4包括:
[0022] 步骤4.1、设置空间搜索半径,搜集待重建像元的空间邻居像元集合;
[0023] 步骤4.2、考虑到光谱时序数据也存在缺失值,计算每个待重建像元与空间邻居像元的有效时序的交集,并将交集个数小于有效时序个数阈值的空间邻居像元删除;
[0024] 步骤4.3、计算剩余空间邻居像元与待重建像元的时序相关性,生成相关性集合;相关系数的计算方式表示为:
[0025]
[0026] 其中,  为时序个数,  为某个时序点, 和 分别为待重建像元和空间邻居像元在时序  上的值,和 分别为待重建像元和空间邻居像元的光谱时序数据的平均值;
[0027] 步骤4.4、进一步筛选空间邻居像元,删除相关系数低于相关性阈值的空间邻居像元;如果筛选后的空间邻居像元个数为0,则无法重建,保持空值;否则,将相关系数作为相关权重和距离权重相乘,重新计算空间邻居像元的权重,通过加权平均最终得到待重建像元的空间维度估计值。
[0028] 作为优选,步骤5包括:
[0029] 步骤5.1、设置时间搜索半径,搜集待重建像元的时间邻居像元集合;
[0030] 步骤5.2、根据步骤5.1所搜集的时间邻居像元集合计算待重建像元的时间维度估计值,表示为:
[0031]
[0032] 其中, 为待重建像元的时间维度估计值,m为时间邻居像元的个数, 为第l个时间邻居像元的观测值, 为当前时间邻居像元和待重建像元的时间间隔,  为平衡参数,取值范围为0到1;当不存在时间邻居像元时,保留空值不变。
[0033] 作为优选,步骤4和步骤5中,通过构建时空三维向量索引,利用索引的计算提取时间邻居像元与空间邻居像元;待重建像元  的时空邻居集合分别通过以下公式算出:
[0034] }
[0035] }
[0036] 上式中,  和 分别为空间邻居集合和时间邻居集合,SR和TR分别为空间搜索半径和时间搜索半径。
[0037] 第二方面,提供了联合时空重建与CUDA加速的遥感时间序列数据重建装置,用于执行第一方面任一所述遥感时间序列数据重建方法,包括:
[0038] 预处理模块,用于将研究区的遥感时间序列数据进行预处理,选择要重建的波段;
[0039] 表示模块,用于以向量的形式将遥感时间序列数据表示为时空三维向量 ,其中I,J和Z分别表示空间经度、空间纬度和时间;  代表一个具体像元的值,缺失像元的值为0;
[0040] 第一获取模块,用于根据GPU显存大小与时空三维向量  ,获取待重建时空三维向量  ,并将所述待重建时空三维向量  读入GPU显存中;
[0041] 空间重建模块,用于利用CUDA构建一种空间重建函数,沿着待重建时空三维向量 的空间维度,对每个待重建像元进行并行的空间重建;
[0042] 时间重建模块,用于利用CUDA构建一种时间重建函数,沿着待重建时空三维向量的时间维度,对每个待重建像元进行并行的时间重建;
[0043] 相加模块,用于利用CUDA构建一个合并函数,并行的将待重建时空三维向量V上每个待重建像元的时间重建结果和空间重建结果相加,得到待重建时空三维向量  的最终重建结果  ,并将 从显存导出;
[0044] 第二获取模块,用于根据待重建时空三维向量  的最终重建结果 ,获取时空三维向量  的最终重建结果 ;
[0045] 检查模块,用于检查重建结果,若仍存在缺失,第一获取模块、空间重建模块、时间重建模块、相加模块和第二获取模块重复运行,直至完成达到重建要求。
[0046] 第三方面,提供了一种计算机存储介质,所述计算机存储介质内存储有计算机程序;所述计算机程序在计算机上运行时,使得计算机执行第一方面任一所述遥感时间序列数据重建方法。
[0047] 本发明的有益效果是:本发明首先将遥感时间序列数据转换为时空三维向量,利用地物的时空相似性分别从时间和空间维度对缺失像元进行重建,然后将重建结果合并形成最终重建数据集。时间维度,采用改进的简单指数平滑函数进行逐像元重建,改善了传统方法因时间间隔大造成的误差。空间维度,采用改进的反距离加权函数进行逐像元重建,改善了传统方法因空间地物类型不同造成的误差。同时,利用CUDA来并行实现时间重建、空间重建和结果合并,提出空间分割策略和时空邻居搜寻方法,大大提高了重建效率。与现有单一时间重建方法和单一空间重建方法相比,本发明充分利用了遥感时间序列数据的时空相关信息,采用GPU并行计算,从质量和效率两个方面提升重建效果,具有重要的实际应用价值。

附图说明

[0048] 图1为一种联合时空重建与CUDA加速的遥感时间序列数据重建方法的流程示意图;
[0049] 图2为另一种联合时空重建与CUDA加速的遥感时间序列数据重建方法的流程示意图;
[0050] 图3为本发明提供的遥感时间序列数据重建方法与对比方法的重建效果图;
[0051] 图4为联合时空重建与CUDA加速的遥感时间序列数据重建装置的结构示意图。

具体实施方式

[0052] 下面结合实施例对本发明做进一步描述。下述实施例的说明只是用于帮助理解本发明。应当指出,对于本技术领域的普通人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
[0053] 实施例1
[0054] CUDA(compute unified device architecture)是英伟达公司提出的统一计算设备架构,可以结合CPU和GPU的优点进行异构并行计算,使得高并发的计算效率大幅提升。因此,结合空间重建和时间重建的各自优势,充分利用CUDA提升算法效率,是实现大区域遥感时间序列数据高效重建的有效途径。
[0055] 在此基础上,本发明提供了一种联合时空重建与CUDA加速的遥感时间序列数据重建方法,充分利用了地物的空间相关性和时间相关性,分别从时间和空间两个维度设计算法进行影像重建,然后将时空重建结果进行合并生成最终重建结果,同时利用CUDA来优化重建算法,设计空间分割策略和时空邻居搜寻方法,提升大区域影像重建效率。该方法可实现中高分辨率遥感序列数据高质量重建,计算效率高、实用性强。
[0056] 具体地,本发明提供的联合时空重建与CUDA加速的遥感时间序列数据重建方法,如图1所示,包括:
[0057] 步骤1、由CPU读取研究区的遥感时间序列数据,并保存在主机内存中,同时对所述遥感时间序列数据进行预处理,选择要重建的波段。
[0058] 步骤1中,预处理包括几何校正、大气校正、影像配准和云检测,该步骤可提高影像数据质量,并对云缺失区域进行标记。
[0059] 步骤2、以向量的形式将遥感时间序列数据表示为时空三维向量 ,其中I,J和Z分别表示空间经度、空间纬度和时间;  代表一个具体像元的值,缺失像元的值为0。
[0060] 步骤3、根据GPU显存大小与时空三维向量  ,获取待重建时空三维向量  ,并将待重建时空三维向量 从CPU内存复制到GPU显存中。
[0061] 步骤3包括:
[0062] 步骤3.1、根据GPU显存大小计算理论上最大处理面积  ,表示为:
[0063]
[0064] 其中,  表示显存大小,  表示遥感数据每个像元所占内存大小, 表示每个像元的长度;除以2是为了让空间重建与时间重建并行,因此占两倍显存;
[0065] 步骤3.2、将最大处理面积  与时空三维向量 的空间面积进行比较,若最大处理面积  大于时空三维向量  的空间面积,则将时空三维向量  作为待重建时空三维向量  ;若最大处理面积  小于时空三维向量 的空间面积,则采用格网切分的方式对时空三维向量 进行空间维度分割,形成多个子区域的待重建时空三维向量  ,子区域的面积小于最大处理面积  。本实施例中,假设 大于时空三维向量  的空间面积,因此,不对时空三维向量  进行切割。
[0066] 步骤4、利用CUDA构建一种空间重建函数,沿着待重建时空三维向量  的空间维度,对每个待重建像元进行并行的空间重建。
[0067] 步骤4中的空间重建函数是一种改进的反距离加权函数。原始反距离加权函数是利用空间领域内的已知观测数据来对未知数据进行估计,距未知点越近的空间邻居点被赋予较高的空间贡献权重。但反距离加权函数仅考虑两点之间的距离,忽略了地物类型是否一致。为了保证搜集到的空间邻居像元的有效性,本发明假设距离相近的同类地物的光谱变化曲线相似,利用待重建像元的时序光谱特征与邻近空间像元的时序光谱特征的相似度来筛选领域范围内空间邻居像元,从而改进反距离加权算法,具体实现如下:
[0068]
[0069] 上述算法中的步骤可以描述为:
[0070] 步骤4.1、设置空间搜索半径,搜集待重建像元的空间邻居像元集合(neighborS);
[0071] 步骤4.2、考虑到光谱时序数据也存在缺失值,计算每个待重建像元与空间邻居像元的有效时序的交集,并将交集个数小于有效时序个数阈值的空间邻居像元删除(算法第5‑7行);
[0072] 步骤4.3、计算剩余空间邻居像元与待重建像元的时序相关性,生成相关性集合(neighborS_cor);算法中的相似度采用皮尔森相关系数,假设待重建和空间邻居像元的光谱时序数据分别为  和  ,则两者之间的相关系数的计算方式表示为:
[0073]
[0074] 其中,  为时序个数,  为某个时序点,  和  分别为待重建像元和空间邻居像元在时序  上的值,  和 分别为待重建像元和空间邻居像元的光谱时序数据的平均值;
[0075] 步骤4.4、为了保证空间邻居像元的可信度,进一步筛选空间邻居像元,删除相关系数低于相关性阈值(  )的空间邻居像元(第10‑14行);如果筛选后的空间邻居像元个数为0,则无法重建,保持空值;否则,将相关系数作为相关权重和距离权重(D_weight)相乘,重新计算空间邻居像元的权重(neighborS_weight),通过加权平均最终得到待重建像元的空间维度估计值(第15‑19行)。
[0076] 步骤5、利用CUDA构建一种时间重建函数,沿着待重建时空三维向量  的时间维度,对每个待重建像元进行并行的时间重建。
[0077] 步骤5中提出的时间重建函数是一种改进的简单指数平滑函数。原始简单指数平滑函数是假设时间邻居像元与待重建像元时间距离越近,则其贡献的权重越大,一般采用待重建像元之前的所有有效像元作为时间邻居像元进行建模。但是,采用所有时间邻居像元带来的误差较大,对此,本申请的步骤5包括:
[0078] 步骤5.1、设置时间搜索半径,搜集待重建像元的时间邻居像元集合;
[0079] 示例地,在遥感影像重返周期为r时,以前后2r作为时间窗口搜集待重建像元的时间邻居像元;这样在保证地物光谱变化不大的前提下,理论上有4个时间邻居像元,避免采用所有时间邻居像元带来的误差;
[0080] 步骤5.2、根据步骤5.1所搜集的时间邻居像元计算待重建像元的时间维度估计值,表示为:
[0081]
[0082] 其中, 为待重建像元的时间维度估计值,m为时间邻居像元的个数,  为第l个时间邻居像元的观测值, 为当前时间邻居像元和待重建像元的时间间隔,  为平衡参数,取值范围为0到1;当不存在时间邻居像元时,保留空值不变。
[0083] 此外,步骤4和步骤5中均需要搜寻待重建像元的时间和空间邻居像元,但通过全局搜索和距离比较的方式极为耗时,本发明考虑到时空向量的排列顺序已经隐含了时空邻近关系,因此通过构建时空三维向量索引,可以利用索引的计算快速提取时间邻居像元与空间邻居像元。具体来说,对于一个待重建像元  ,  分别为经度、纬度和时间维度上的索引,待重建像元  的时空邻居集合分别通过以下公式算出:
[0084]   }
[0085]   }
[0086] 上式中,  和 分别为空间邻居集合和时间邻居集合,SR和TR分别为空间搜索半径和时间搜索半径。
[0087] 步骤6、利用CUDA构建一种合并函数,并行的将待重建时空三维向量V上每个待重建像元的时间重建结果和空间重建结果加权平均,得到待重建时空三维向量  的最终重建结果 ,并将 从GPU显存复制到CPU内存,释放显存。
[0088] 步骤7、根据待重建时空三维向量  的最终重建结果 ,获取时空三维向量  的最终重建结果  。
[0089] 由于本实施例在步骤3.2中不对时空三维向量  进行切割,因此,待重建时空三维向量 的最终重建结果  可以直接作为时空三维向量  的最终重建结果 。
[0090] 步骤8、检查重建结果,若仍存在缺失,重复步骤3‑7,直至完成达到重建要求。
[0091] 步骤8中,本申请不对具体的重建要求进行限定,示例地,重建要求为缺失率小于10%。又示例地,重建要求也可以为完成所有缺失像元重建。
[0092] 实施例2
[0093] 如图2所示,本申请还提供了另一种联合时空重建与CUDA加速的遥感时间序列数据重建方法。在本实施例中,  小于时空三维向量  的空间面积,因此采用格网切分的方式对时空三维向量  进行空间维度分割,形成多个子区域的待重建时空三维向量  ,子区域的面积小于最大处理面积  。需要说明的是,若不对S进行切分,则超过GPU处理范围,无法计算。
[0094] 此外,在得到多个子区域的待重建时空三维向量  的最终重建结果 后,将其进行合并,得到时空三维向量的最终重建结果 。
[0095] 实施例3
[0096] 在本实施例中结合模拟实验结果对本发明的效果进一步分析:
[0097] 本模拟实验数据为美国Kingsbury县2018年全年的Landsat‑7 EMT+遥感影像,对比实验包括三种常用的重建方法:基于反距离加权法的空间重建法(IDW)、基于简单指数平滑的时间重建法(SES)和基于谐波分析的时间重建方法(HANTS)。图3为Kingsbury县在2018年第151天的原始影像和不同方法的重建影像。可以看出,IDW没有完全重建缺失区域,SES和HANTS方法重建区域与附近地物有明显的“边界”现象(水体区域尤为明显),而本发明很好的重建了原始影像原本的条带缺失和模拟缺失。另外,计算模拟缺失区域的重建像元与2
真值间的R,也可以得出本发明的效果最好。
[0098] 为了验证本发明采用CUDA提高遥感时序数据的重建效率的可靠性,本发明模拟构建5组遥感时间序列数据集,分别计算采用纯CPU和CUDA优化下的算法重建时间。5组遥感时间序列数据集的时间序列相同,均为365,空间大小分别为: 100×100像元、500×500像元、1000×1000像元、2000×2000像元和3000×3000像元。另外,本实验基于Google提供的免费云计算环境Google Colaboratory,具体硬件配置:2.2GHz Intel Xeon(R)处理器,25G内存,NVIDIA Tesla V100显卡,16G显存。对比结果如表1所示,可以看出利用CUDA优化算法来进行遥感时序数据重建相比较纯CPU有明显提升,加速比可达到700以上,效率提升巨大。
[0099] 表1 纯CPU和CUDA优化下算法耗时比较
[0100]实验图像大小 CPU(s) CUDA(s) 加速比
100×100×365 72.12 0.24 300.5
500×500×365 1903.45 2.76 689.66
1000×1000×365 7349.8 10.05 731.32
2000×2000×365 29841.24 41.38 721.15
3000×3000×365 66908.32 94.42 708.62
[0101] 综上,本发明利用地物在时间和空间的相关性,充分结合遥感时序数据重建中空间重建和时间重建的各自优势,分别在空间重建中提出改进的反距离加权方法,在时间重建中提出改进的简单指数平滑方法,然后将两者重建结果合并作为最终的重建结果,解决了传统重建方法存在的重建不完全和重建结果与现实割裂的缺点。同时,采用CUDA加速重建算法,提出空间分割策略和时空邻居搜寻方法,极大地提高了重建效率,实现了高效的大范围遥感时序数据重建,具有重要的应用价值。