由于各种各样的原因,使用的项目区 DEM 数据存在空缺值,比如当我们使用 HMA 的高程数据时(8米空间分辨率),如下图所示,其中空白的图斑就是值缺失的部分,这里分享两种将空白区域填充起来的方法,以及各自的效果。
第一种方法:使用其他的 DEM 做栅格镶嵌。
第二种方式:使用栅格函数中的高程空填充函数。
第一种方法 DEM 数据镶嵌
当 DEM 数据出现空值的时候,比如当我们使用 HMA 的高程数据时(8米空间分辨率),该数据的质量不是太高,空缺区域很多,所以我们可以使用30米的全球 DEM 数据与之镶嵌,最后填充空白区域的 DEM。
这种方法的优点是填充区域的值时较为可信,毕竟也是使用了现成的 DEM 数据,可以处理较大范围的空缺;缺点是是空间分辨率不匹配,一些小区域的空缺区域在填充完后会非常突兀。
1.1步骤
打开 ArcMap 或者 ArcGIS Pro,在工具箱中点击数据管理工具,找到栅格,然后在栅格数据集中使用镶嵌至新栅格工具。
然后就先添加有空缺值的栅格数据,然后再添加完整的其他 DEM 栅格数据。由于栅格数据重叠的部分会前后覆盖,同时覆盖关系由镶嵌运算符(下图橙色框选)确定,所以你的添加顺序不必和我一致,只要最后成功了就行。
最后点击确认运行工具即可。
1.2效果
效果如下:
左边是原始的 HMA 数据一景的截图,右边是镶嵌后的效果。
左:原始 DEM;右:镶嵌填充后
填充的效果在灰度图的状况下是难以肉眼区分的,将其转换为 Hillshade 就能看出端倪。
左:原始 DEM 的 Hillshade;右:镶嵌填充后 Hilshade
在转换为 Hillshade 可以明显看出区别了,就像给衣服的补丁,大区域的”补丁“还不错。
但是就像上面说的一样,小范围的空缺区域填充效果就不行了,道理很简单,使用较低的空间分辨率的数据(30米空间分辨率)去补全较高空间分辨率(8米),一个大的补丁贴在一个比自己还小的区域上面,就直接是平的且突兀。
我们放大看看细节就明白了:
-
下面左图是原始数据转 Hillshade,在栅格图像的左上部分和下半部有整块的、或细碎的空缺区域;
-
中间是使用30米 DEM 镶嵌后的结果,效果不太好,真的就像是一个补丁黏上去一样;
-
右边使用的是下面会介绍的第二种方法,观感就好上了一些;
左:原始 DEM 的 Hillshade;中:镶嵌填充后 Hilshade;右:使用高程空填充函数修复的 Hillshade
第二种方法 使用高程空填充函数
这种方式是根据栅格现有的数据,以插值的方式将空缺区域填补上。
使用这种方法,小区域的填充效果看上去较为自然,但是填充的值完全没有依据,是算法填上去的,和真实的自然地理地物没有关系,也正是这个原因,所以大范围的空缺值就根本不能使用。
2.1步骤
打开 ArcMap 或者 ArcGIS Pro。
-
ArcMap 点击最上方菜单栏的窗口,然后点击打开影像分析窗口;
-
点击添加函数(橙色框选部分)打开函数模板编辑器;
-
在编辑器中使用高程空填充函数(橙色框选部分),最后确认即可。
2.2效果
效果就像前面演示的一样,小区域的填补效果较为光滑,优于第一种镶嵌的方法。
左:原始 DEM 的 Hillshade;中:镶嵌填充后 Hilshade;右:使用高程空填充函数修复的 Hillshade
大范围的就非常不推荐了,因为效果如下,非常丑陋,可以明显看出是使用的插值方法来填充空缺区域。
最后
两种方法各有千秋,但是都不是万能的,看情况使用吧。
同时以上的优缺点是站在直观的看上去好不好来判断的,以及我使用这些 DEM 来建模效果和个人经验,至于其他方面,比如各类空间计算、栅格代数,那种效果更好就需要大家自己斟酌了。
关于 HMA 数据,整个的质量其实是比较低的,但是小范围使用还是非常不错的,因为空间分辨率确实很高。