使用 ArcGIS Bathymetry 管理水深数据
本章导读:ArcGIS Bathymetry 是ArcGIS平台的一个扩展模块,是用于现实和管理水下地形数据的一个扩展模块。目前大多数的介绍仅限于官方 站的英文说明,对绝大部分人来说,这是个比较陌生的软件以及需要比较专业的使用场景。笔者会在本章比较全面的介绍 ArcGIS Bathymetry 的功能以及使用场景。 BY 李远祥
ArcGIS Bathymetry 介绍
ArcGIS Bathymetry 是ArcGIS平台用来显示和管理水下地形数据的一个扩展模块,一般面向海洋、海事、航道管理、测绘等专业领域,属于解决方案型的扩展模块。跟ArcGIS Maritime 扩展一样,被 Esri 作为 solution 产品进行销售。
跟 ArcGIS Maritime 不太一样的是,Maritime 产品针对的是传统的老标准 S-57 数据,Esri 官方 站也说明了Maritime 是还支持 S-63 、S-58 等标准。ArcGIS Bathymetry 是首个ArcGIS 产品首个支持 S-100 系列标准的产品,虽然目前只是针对 S-102 水深表面标准产品,但总算也是开了个好头,毕竟现在 S-100 系列标准也只有 S-102 在实际中使用。
传统的 S-57 系列标准最初是没有跟 GIS 挂钩的,基本上就是自成体系,早期更是主要面向终端应用,很难融入到 GIS 这种面向信息化管理的体系中。因此在信息化时代,S-57 标准很难有大的作为。 Esri 产品曾经很努力往海图方向发展,这就是为什么早期有PLTS,后续有nautical (这些都是 ArcGIS Maritime 产品的前身)这些产品。这都是 Esri 力求将海图应用纳入到 GIS 应用当中。很可惜的是,由于海图的数据标准与 GIS 的标准很难对应上,无论怎样通过 Geodatabase 进行建库,都很难解决海图与 GIS 统一管理统一应用的问题。直到 ArcGIS 从10.3 版本开始 ,在海图的发布中终于“壮士断臂” ,p抛弃掉使用 GDB 的方式渲染海图,重新编写了海图渲染引擎,这才比较友好的支持传统海图标准。
S-100 标准是在2010年正式发布,其最大的改变是将原来的 S-57 面向结构的方式转变为面向对象方式进行组织数据,全面向 GIS 靠拢,估计IHO成员中肯定加入了不少的 GIS 厂商 ,属于标准的一次重大调整。但目前来说,新标准还很少在市面上看到有应用。由于原来的 S-57 标准没有针对栅格表面方面的应用,又或者 S-61 中的 RNC 并没有得到认可,反而导致了 S-102 标准更先一步在执行,以此解决海图中栅格数据的系列问题。
ArcGIS Bathymetry 则是最早一批支持 S-102 标准的 GIS 软件。在 ArcGIS 的官方 站上可以看到非常详细的产品介绍,不过都是全英的。目前bathymetry 和 maritime 产品都没有中文官方说明。可以点击 址参考 ArcGIS Bathymetry 官方说明 。
ArcGIS Bathymetry 软件和工具
ArcGIS Bathymetry 在桌面端是有扩展的,其安装介质是跟 Maritime Charting 在一起,安装的时候是可以选择安装,但授权则是和 Maritime Charting 分开授权,属于一个单独授权的产品。
安装之后跟 ArcGIS 其他模块基本上是一致的,有 Bathymetry 的工具条和工具箱可用。如下图所示,其提供的可视化界面和工具不是非常多(只能说一级的界面不多)。
其构建的设置也非常简单,需要BIS库的名称,指定对应的 GDB ,BIS 库的描述,坐标系,以及 BIS 库创建时的一些缓存视图目录及元数据目录 。如下图
这几张表格分别记录的是进库的 BAG 索引、目录、具体的数据说明以及模型等。
工具条中第二个按钮是管理 BIS 数据库的连接。可以创建多个 BIS 库,同时默认激活其中一个 BIS 库。
第四个按钮是诊断 BIS 库,验证一些参数是否有效。
Add Bathymetry 工具是直接导入 BAG 数据,其作用是创建一个 Bathymetry 的数据集,并将这些 BAG 数据在 BIS 库中进行登记。如下图所示
Extended Metadata 标签页中带绿色小点,是必须补全的参数,指定了传感器的一系列信息,如下图所示
当所有的设置完成后, BAG 数据就完成了到 BIS 的登记,如下图所示
从图上可以看到,上面操作的 BAG 数据集创建之后,实际上是一个镶嵌数据集,各个 BAG 文件的信息都会登记在对应的表格中。而 Collection 、Internal Metedata等则以XML的方式放在 BIS 库设定目录下的带 Config 字样的目录下, BAG 数据的预览图则是保存在 overviews 目录下。
Explore Bathymetry 按钮,从字面上是查看浏览 Bathymetry 数据,其机界面很简单,主要部分还是一些查找和过滤,如下图所示:
至于其他的修改都可以通过右键菜单进行呼出。
各种过滤条件设置好之后都可以保存下来,方便下次直接加载这个过滤文件,这样可以针对这些条件组织成各种不同的测深数据产品。这就是前面所说的通过 Bathymetry 扩展可以减少数据产品的复制。
在设置好对应的一些参数之后,最常用的应该是将这些数据另存为镶嵌数据集。点击 Save Surface model as 按钮,将数据令存在镶嵌数据集,如下图
这个镶嵌数据集数据还是引用原来 BIS 的数据,原则上是不产生任何新的数据,以确保一旦 BIS 做了修改,原来制作的数据产品都必须跟着修改,如下图所示,新生成的镶嵌数据集在属性上可以看到引用的 BisDatasetId。
然后根据向导设置设置影像服务的各个参数。具体操作可以参考之前文章 ArcGIS 栅格函数在线调用详解 中的内容。
注意:必须将 BIS 库以及对应的目录注册到 ArcGIS Server 对应的目录中。
水下地形的渲染可以使用【栅格函数模板】去定义,同样可以参考 ArcGIS 栅格函数在线调用详解 中定义栅格函数模板的内容。
在发布之前,必须要对镶嵌数据集重新构建项目缓存,不然通过 页调用服务,会导致概要视图缺失,地图会出现马赛克情况。
然后在发布的过程中指定这个模板作为默认的晕渲,如下图所示:
笔者通过 NOAA 的 站,发现它发布的海底地形服务,同样也是使用 ArcGIS 的 Image Server 进行发布,而且定义了多个栅格函数模板,方便开发者利用前端 JavaScript API 进行调用。
可以参考 NOAA发布的公开服务 。
使用镶嵌数据集同样可以对其进行组织和管理。

那么为什么还需要 ArcGIS Bathymetry 扩展p>
首先,镶嵌数据集是面向通用的栅格数据管理,一般针对卫星传感器数据,能够自动识别各种卫星传感器的参数,并写入到镶嵌数据的元素据中。但 BAG 数据显然不属于这个范畴。如果确定了要发布的数据,没有任何的管理功能,普通镶嵌数据集足以胜任发布工作。
ArcGIS Bathymetry 扩展很明显更加专业,能够更好的解读 S-102 标准,并且在元素中加入了扩展,通过其管理工具可以实现各种水深产品的管理和制作,是一个以管理作为手段的工具。
总结
ArcGIS Bathymetry 是一个专门针对 S-102 标准进行水深数据管理的 GIS 扩展工具,可以非常方便的管理水深数据并制作多种水深数据产品,结合 ArcGIS Server 和 Image Server 扩展,从数据的入库、管理、制作、发布、应用多个方面一体化集成,是 ArcGIS 面向海图方向的重要解决方案。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!