Geographic Imager【晕渲图】制作实例介绍(以中国及周边海域地势图制作为例)

在地图制图领域中,地形晕渲(山体阴影)能让地图具有三维的视觉效果。制图人员使用山体阴影可以突出主要的地形特征,如高山、河谷或峡谷,以吸引读者的目光,增强地图的可读性。过去,地形晕渲图完全依赖人工,耗时耗力,现在,随着计算机图形软件和数字制图技术的发展,使用DEM高程数据,我们借助软件可以快速实现自动化的山体阴影图制作。

之前我们介绍过一种使用三维动画建模软件技术(blender)实现地形晕渲图的制作(ECartoRender地貌晕渲解决方案),该方法不同于GIS手段,可以渲染出更自然和美观的地形景观效果。

今天,我们将介绍使用Geographic Imager制作DEM晕渲图,在地图制图中,Geographic Imager往往与MAPublisher结合使用,因为基于Adobe Photoshop,所以主要用于处理影像和DEM等栅格类形的空间数据。为了能够说明问题,我们将以中国及周边海域晕渲地形图(下图所示)的制作为例来说明。该地图包括了陆地地形和海洋地形,两者具有不同的配色方案,因此具有一定的综合性。

image.png

首先,是DEM数据的获取,这里有很多种选择,如果您有现成的海陆集成的数据(如GEBCO),并且分辨率和精度能够满足您的要求,可以直接使用。为了说明这个过程,我使用了两部分数据,我国大陆部分我使用的是SRTM 90米的数据,周边国家及海域部分我使用了Tom Patterson编辑过的GEBCO数据(Blue Earth Bathymetry)因为SRTM数据是分块下载,需要在GIS软件中进行镶嵌和裁切,如果机器性能允许,该过程可以在Geographic Imager中实现。数据的范围可以使用Global Mapper的地图目录(map catalog)功能很方便的进行浏览,如下所示。

屏幕截图 2021-04-06 112949.png

然后根据全国的矢量范围(不包括南海诸岛部分)进行输出,生成全国的陆地地形数据,在Geographic Imager投影成我国常用的双标准纬线割圆锥投影像(双标准纬线设置为25度和47度),如下所示:

屏幕截图 2021-04-06 113437.jpg

以下是下载的Blue Earth Bathymetry数据,陆地部分集成了SRTM数据,实际可以直接使用,但有时我们要用自己生成的精度更高的数据代替,所以才有了我们的这个流程。

屏幕截图 2021-04-06 113511.jpg

借助Geographic Imager的高级导入功能,可以非常方便的对DEM进行镶嵌,并按照想要的范围和分辨率进行输出,该功能是一个集重采样、裁切、投影转换、镶嵌于一体,非常方便。

image.png

另存为DEM TIFF,如下图所示:

image.png

下面的过程,有一些技巧,本人也试验了多次才走通,一般情况下我们做晕渲都是对目标区域的DEM数据整体一次性来做,然后由于本区域涉及陆地和海洋,具有不同的配色方案,如果一次性生成的话,在海陆交界的地方很难控制好,因此,我采用的方法是将陆地DEM和海域DEM分别读取,这个在Geographic Imager中可以很好的实现,在导入DEM时分别设置不同的拉伸方案(raw数据和负值raw数据)可以实现正值DEM(陆地部分)和负值DEM(海域部分)的读取,然后分别应用晕渲,再进行镶嵌。

这里的配色方案需要有经验,我参考了自然资源部公开地图中的中国地势图和世界地形图的配色,如下所示,发现该图海部地形和陆地地形是分开的,海域使用的是分层设色,而非连续渐变色,因而其海部地形精细度不高。

中国地势图.jpg

在Geographic Imager中参考上图的图例色标,分别制作了海域和陆地的配色方案:

image.png
image.png

Geographic Imager中,导入上述合并的DEM,若要同时进行,可以复制一份,在导入时分别设置拉伸方案为“Raw数据”和“负值Raw数据”,这样将分别导入正值的DEM部分(陆地部分)和负值的DEM部分(海域部分):

image.png
未标题-2.jpg

然后在Geographic Imager中执行镶嵌,该过程支持多图层文档,这样就形成了整体的晕渲效果:

晕渲合并.jpg

最后我们可以在此基础上叠加矢量数据,自从 V6.0开始,Geographic Imager增加了矢量数据(库)的导入和导出,前提是矢量数据的坐标系与图像保持一致,由于我使用的是natural earth的矢量数据,其坐标系是WGS84,Geographic Imager可以很方便的对图像进行投影像转换,我们将其转为WGS84坐标系,与矢量数据保持一致,并在其首选项中将矢量导入设置为裁切到图像范围。

wgs84.jpg

分别导入河流中心线、海岸线、湖泊三个矢量数据层,Geographic Imager将导入的矢量数据保存到了路径面板中,

image.png

我们可以分别对其描边和填充操作,使图Photoshop的画笔描边路径,使用前景色填充路径,结果如下图所示,再次进行投影转换,即得到了本文最前面的晕渲图成果。

叠加矢量.jpg

上面所有的过程,Geographic Imager会自动维护数据的坐标系,因此可以很方便的叠加到MAPublisher中作为底图,在其上面继续叠加文字、符号、图例等其他地图要素,制作出精美的地图产品。由于Geographic Imager与Adobe Photoshop无缝集成,使用Geographic Imager最大的优势是在维护图像的地理信息同时,我们可以使用Photoshop自带的强大而丰富的图像编辑工具,后面我们将探索使用Photoshop 3D渲染功能实现更为生动的晕渲效果。

【制图新技术】地形晕渲底图(山体阴影)制作新方法

之前我们发布过一种新的地貌晕渲解决方案(【ECartoRender】地貌晕渲解决方案),在其中我们介绍了一种新的地貌晕渲(也叫山体阴影)的技术方法,与GIS的做法不一样,该新方法基于3D动画建模技术,采用更先进的渲染引擎,可以生成比GIS软件更加美观和自然的晕渲成果(北京【地图上的四季】)。

今天我们大概介绍一下其实现过程,首先,是准备好数字高程模型(DEM),获取DEM有多种途径,比较常用的有公开的SRTM90和SRTM30(分辨率分别为90米和30米)、ASTER全球30米高程数据等,如果您还没找到好的途径,使用Global Mapper是一种非常便捷的获取开源数据的方式(【免费,优质GIS数据】:Global Mapper在线数据访问)。

Global Mapper在线数据下载

有了DEM数据,我们需要根据作图范围和比例尺计算所需要的分辨率。我们拿制作祁连山国家公园的晕渲为例,假设我想制作一张85cm宽的图,换算成英寸大约为33英寸,典型的打印分辨率是每英寸300像素,因此我需要33×300 = 9900像素宽的晕渲图。祁连山国家森林公园大约宽为1200公里,因此,我们需要的DEM分辨率大约为1,200,000(米)÷ 9900 ≈ 120米。

在进入blender软件渲染之前,我们需要在GIS软件中进行一些预处理,包括DEM数据的投影、镶嵌、重采样、裁切等工作,同时还有重要的一步,将DEM数据的高程值拉伸到0-65535之间(大概就行),所有这些工作我一般使用QGIS、Global MapperGeographic Imager等软件来实现,最后将DEM输出为unsigned 16位类型的TIFF。

预处理生成的Unsigned 16位TIFF​高程数据

然后我们进入到blender进行DEM数据导入,以及配置渲染引擎、着色器,对地形平面进行细分(手工或自适应),添加虚拟”光源”和”相机”并进行相关设置,然后添加相应的颜色渐变​等。

Blender晕渲方案配置​

在正式进行渲染之前,我们可以通过快速预览对结果进行确认,如果可以,即可启动渲染,渲染过程如下视频所示,根据DEM数据的大小,需要一定的时间。

Blender渲染过程​

以下是不同的配色方案​的渲染结果:

成果(一)
成果(二)
成果(三)
成果(四)

虽然上述blender输出的晕渲结果图像不带坐标,但是我们可以保留原来GIS预处理时的tfw文件,在文件名相同的情况下 ,即可以恢复其坐标。在后期的制图中我们借助MAPublisherGeographic Imager工具,可以在Geographic Imager进行投影转换,然后在MAPublisher中将晕渲结果作为底图嵌入,再在上面叠加符号、注记、以及其他地图要素。由于MAPublisher和Geographic Imager是基于Adobe Illustrator(AI)和Photoshop(PS)的制图插件,因此,我们在充分利用GIS数据源和GIS功能的同时,可以利用AI和PS强大的设计能力,使地图具有更好的表达效果,如下面两幅图中叠加晕渲底图后通过对注记添加描边、设置描边透明、以及外发光等效果可以增强文字的可读性​。​

北京【地图上的四季】

进入九月,天气转凉,秋意渐浓,北京进入一年中最美的季节。

北京是一个四季非常分明的城市,夏天和冬天比较漫长,春天和秋天虽然短暂,但加起来也有四个月,以下是在网上查询的北京四季划分:

  • 3月下旬到5月上旬是北京的春季,共2个月,其中
    • 3月下旬——4月上旬是初春,一个月;
    • 4月下旬——5月上旬是晚春,一个月。
  • 5月下旬到9月上旬是北京的夏季,共4个月,其中
    •     5月下旬——6月上旬是初夏,一个月;
    •     6月下旬——8月上旬是盛夏,两个月;
    •     8月下旬——9月上旬是晚夏,一个月。
  • 9月下旬到11月上旬是北京的秋季,共2个月,其中
    • 9月下旬——10月上旬是初秋,一个月;
    • 10月下旬——11月上旬是晚秋,一个月。
  • 11月下旬到次年3月上旬是北京的冬季,共4个月,其中
    • 11月下旬——12月上旬是初冬,一个月;
    • 12月下旬——次年2月上旬是隆冬,两个月;
    • 2月下旬——3月上旬是晚冬,一个月。

在北京生活多年,一直想制作一幅北京的四季地图,在上一篇公众号文章中,我们介绍了公司新推出的ECartoRender晕渲产品解决方案(【ECartoRender】地貌晕渲解决方案),在地貌晕渲以及三维景观地图制作方面有很好的应用。

于是,最近做了几幅北京的晕渲地图,使用同一个DEM数据源,叠加了四个季节的卫星影像,影像的时相选取分别依据上述的四季分划时间,目前跟大家分享的还是初步成果,影像的左下角还有少量缺失,将在后续进行完善。

大家可以从地图上感受大北京的四季,也能从地图上感受北京的地形地貌特征。

基础DEM数据和Landsat 8卫星影像的前期处理工作主要使用Geographic Imager和Global Mapper,DEM主要的处理工作为镶嵌,裁切,高程拉伸等(将高程数据拉伸到0-65535,然后存为无符号的16位数值型),Global Mapper中的栅格计算功能非常适合,影像数据的主要处理工作为投影变换、镶嵌、调色以及与DEM套合裁切,这些工作在Geographic Imager和Global Mapper中非常便。


数据源的下载与处理可以参考左下角“阅读原文”和”【干货分享】Landsat 8 Photoshop教程


后期的渲染工作主要在ECartoRender中进行,因为采用基于光线追踪的渲染算法,其效果远远好于GIS晕渲的算法,产品采用3D动画建模的思路,可以进行丰富的设置(光照/材质/角度/去噪/掩膜/…等等),并具有动画建模能力,在地形晕渲和景观图制作方面具有非常好的应用效果。

(一)DEM数据源

(二)基础晕渲图

(三)叠加分层设色高度图

(四)叠加春季影像(时相2020/04/29)

(四)叠加夏季影像(时相2020/08/03)

(五)叠加秋季影像(时相2019/10/20)

(六)叠加冬季影像(时相:2020/01/08)

(七)斜视图(45度俯视)