从ArcGIS到虚幻引擎 ——使用卫星高程影像构建3D地形的工作流

从ArcGIS到虚幻引擎 ——使用卫星高程影像构建3D地形的工作流

一、数据准备:


要创建现实世界3D模型,我们至少需要拿到相应地区的地理高度信息,这个数据称为高程数据,由卫星拍摄所得。

这里推荐以下两种数据集:

ALOS PALSAR数据集

ASTER Global Digital Elevation Model V003数据集


ALOS PALSAR为12.5m精度的高程数据,ASTER Global Digital Elevation Model V003为30m精度的高程数据。那我们直接选择精度更高的ALOS PALSAR数据集不就好了吗?其实不然,ALOS PALSAR虽然精度更高,但存在诸如噪点等问题(后面会提到),而ASTER Global Digital Elevation Model V003是Global Digital Elevation Model的第三个发行版本,其间进行过很多的数据优化和校正。


关于ASTER Global Digital Elevation Model V003:

NASA: nasa.gov/multimedia/ima

ASTER Global Digital Elevation Model V003国内下载链接:

地理空间数据云: gscloud.cn/sources/inde

ASTER Global Digital Elevation Model V003官方下载链接:

search.earthdata.nasa.gov


关于ALOS PALSAR:

ASF: asf.alaska.edu/data-set

ALOS PALSAR官方下载链接:

ASF: search.asf.alaska.edu/#




二、拼接高程图:


软件:ArcScene

1. 导入高程

ASTER Global Digital Elevation Model V003数据集在命名方式上,尾部形如“N22E113”的字样为该图对应经纬度。这里我们以香港为例,香港位于北纬22度,东经113~114度,因此,我们需要导入ASTGTMV003_N22E113_dem.tif和ASTGTMV003_N22E114_dem.tif两幅高程图。

2. 镶嵌高程

导入后,可以看到两幅图在拼接处存在明显色差,使用掩膜工具以对图像进行拼接。在右侧搜索框中查找“镶嵌至新栅格”。

这里推荐哔哩哔哩Up主 白桃小师姐 ,她针对这块有详细讲解。

关于“镶嵌”可空降至 bilibili.com/video/BV1j

完成相应设置,点击确定。

3. 至此我们完成高程图的拼接。

如果使用ALOS PALSAR数据集请跳转执行步骤“四(1)”




三、裁剪高程图:


软件:ArcMap

  1. 导入“全国行政区划”shp文件

2. 右键“市”,打开属性表。搜索名称,如“香港”,点击以选中,右侧地图中可同步预览。

3. 右键“市”,数据->导出数据

4. 将得到的SHP文件倒回到ArcScene,如下图所示。

5. 在左侧边栏中选择按掩膜提取。

6. 完成相应设置,点击确定。

7. 得到裁剪后的香港地区高程图。

跳转至“四(2)”




四(1)、ALOS PALSAR数据集 — 降噪和导出灰度tif

四(2)、Global Digital Elevation Model数据集

裁切后的ALOS PALSAR数据集 — 导出16bit灰度RAW

软件:Global Mapper


将高程图导入Global Mapper。

四(1)降噪和导出灰度tif

使用的是ALOS 12.5米的数据集,可以看到将会出现大量噪点。

因此我们在Global Mapper中进行降噪的操作,选择BBOX\COVERAGES

弹窗后,点击否。等待User Created Features生成。

使用Digitalizer Tool,点击User Created Features,以选中噪点。

右键,选择反选。

右键,选择计算坡度信息。

我们将得到计算出的坡度信息

点击创建高程网络,点击OK

这里需要消耗一定时间,中间可能会经历较长一段未响应的过程,请耐心等待。我在此消耗1小时左右。

可以看到噪点已经被修复,接下来输出为高程网络格式

选择GeoTIFF

选择为有符号16bit,点击OK导出。

跳转至“三”

问:使用 ALOS PALSAR数据集时, 为何要先使用Global Mapper进行降噪,再回到ArcScene对图像进行裁切,调换先后顺序是否可行?

答:降噪的本质是将噪点处使用其相邻的灰度像素进行近似覆盖。如果在对图像进行裁切后,再进行降噪,那么边缘处由于同样具有大反差灰度,也将被相邻的灰度像素进行近似覆盖,呈现的效果如下图所示,图像边缘处由于被错误地补全,导致边缘变得参差不齐,这是不能接受的。

四(2)导出16bit灰度RAW

导入裁切后的高程。

输出为RAW格式

问:为何输出为RAW格式,而不直接输出为PNG?

答:使用Global Mapper直接输出PNG将会出现较为明显的灰阶断层,在后续的创建3D模型时将体现为较为严重的梯田效应,因此,我们在此仅输出RAW,显然,Photoshop更擅长输出PNG图像。


导出设置如下,注意选择以灰度图像导出。



五、导出PNG

软件:Photoshop

调整灰度系数校正,至清晰地能区分海平面与陆地。

将背景填充为与与图中海平面一致的黑色。

导出为PNG。



六、创建3D地形

软件:虚幻引擎(UnrealEngine)

在虚幻引擎中创建地形,新建地形->从文件导入,选择之前处理好的高程PNG。

在地形模式中导入PNG高程图,建议将Z轴缩放调制15%。

生成3D地形。

以上为目前本人实际使用卫星高程影像构建3D地形的工作流,供大家参考,欢迎讨论。

编辑于 2022-03-13 16:49