海底管道多波束数据可视化方法研究
2020-08-16王金龙
王金龙
摘 要:海底管道的裸露部分,存在着很多不同的情况,比如悬空、全裸露,半裸露等,有些裸露的管道,露出海底面的高度仅仅有十几厘米;反映在根据水深变化形成的图像上,产生的效果图很难判断和显示裸露情况。针对这个问题,使用海底斜率数据,基于DEM生成坡度图,大大加强了海底管道多波束数据的可视化效果。
关键词:海底管道;坡度图;可视化
引 言
针对海底管道的探测项目,工作内容包括海管的裸露及悬空情况探测、水深地形测量、浅地层探测、探测管道位置及埋深等工作,其中最主要的是使用多波束测深仪的探测,利用多波束测深仪得到的海量XYZ数据,得到水深地形变化,海底管道裸露情况等,传统的处理方法是生产等深线图和DEM渲染图,以此来显示海底地形和管道裸露情况,但是海底管道裸露出海底面的高度,常常仅有十几厘米;反映在根据水深变化形成的图像上,体现不出很大的差异,产生的效果图很难判断和显示裸露情况。所以使用水深变化数值来表现这种传统方法,往往不能很好的显示海底管道的裸露情况。
在探测过几条海底管线并进行资料处理后,经过认真分析,针对海底管道与其它目标物的不同特点,比如一条海底管道,裸露出来的部分沿一定距离是保持一种线性规则变化的,海底管道本身外形尺寸是有固定值的,这是区别于自然海底的重要不同。基于此我们考虑到使用斜率这一数据,基于DEM生成坡度图,能够加强海底管道多波束数据的可视化效果,使可視化图形更加一目了然。
一、方法路线
1、软件的选择:生成坡度图,可以用ARCGIS等GIS软件,但对于处理海底管道数据,基于简单快捷的原则,我们选择了SURFER软件来生成坡度图。
2、坡度和方位数据的处理方法:该方法将基于DEM生成斜坡的方向(方位)和斜坡的坡度(以度为单位),并使用颜色和饱和度来显示组合结果。面向不同方向的斜坡使用不同的颜色,并且该颜色的饱和度显示该斜坡的陡度(颜色越亮,斜率越陡)。两种数据共同的渲染,可以显示在DEM图中可能被忽视的小的变化。
但是方位和坡度是两个数据,基于XYZ数据的网格做图工具无法直接处理,所以要对这连个数据进行合并处理:将坡度数据重新分类为0到8的区间,步长为2,如表1所示;并将方位数据重新分类为10到80的区间,步长为10,如表2所示。
将坡度和方位两个数据根据上表重新分类赋值,然后合并为一个数据,此数据就包含了坡度和方位,数值范围10-88,这是坡度的最小值加上方位的最小值(10 + 0)和坡度的最大值加上方位的最大值(80 + 8)。数字中的十位数是方位,个位数是坡度。例如,值24表示方位角在22.5°和67.5°方位角之间(因为第一个数字是2),坡度在15%到30%之间(因为第二个数字是4)。
然后,我们将根据此组合值创建地图并对其进行着色。实际颜色基于方位(十位数)和该颜色的饱和度基于坡度(个位数)。由于任何一个地方都有0的值(例如10,20,30等)相对平坦(0-5°之间的斜率),我们可以为它指定一个我们可以完全透明的扁平灰色。对于其他颜色,我们可以使用预定义色标来进行着色渲染,如图1所示。
3、生成海底管道坡度图的方法:第一步,把原始的多波束数据经过处理后输出为XYZ数据。第二步,在SURFER软件中,点击GRIDS选单,根据原始XYZ数据生成GRID网格数据,此时生成的网格数据是基于深度的,网格的大小,要根据原始野外数据采集的精度来确定,为提高分辨率,尽可能的要相近。第三步,根据原始网格数据,生成坡度数据:
选择生成的坡度数据文件:
输入函数: IF(A> = 45,8,IF(A> = 30.0且A <45,6,IF(A> = 15且A <30,4,IF(A> = 5且A <15, 2,IF(A> = 0和A <5,0,A)))))
单击“ 输出网格文件 ”右侧的“ 更改文件名”按钮,为文件指定一个新名称然后单击“ 保存”。单击“ 确定”,然后创建网格。
第四步,创建方位数据网格。
打开原始网格数据后:
在Grid Calculus对话框中,选择Terrain Modeling | 地形方面。
单击“ 输出网格文件 ”右侧的“ 更改文件名”按钮,为文件指定一个新名称,然后单击“ 保存”。单击“ 确定”,然后创建网格。
使用网格数学重新分类方位网格文件。
单击“ 添加网格”按钮。
输入函数: IF(A> = 337.5或A <22.5,10,IF(A> = 22.5且A <67.5,20,IF(A> = 67.5且A <112.5,30,IF(A> = 112.5 AND) A <157.5,40,IF(A> = 157.5且A <202.5,50,IF(A> = 202.5且A <247.5,60,IF(A> = 247.5且A <292.5,70,IF(A> = 292.5和A <337.5,80,A))))))))
单击“ 输出网格文件 ”右侧的“ 更改文件名”按钮,为文件指定一个新名称,然后单击“ 保存”。单击“ 确定”,然后创建网格。
第五步,合并坡度数据和方位数据。
打开第三步和第四部生成的网格文件,输入功能: A + B.
单击“ 输出网格文件 ”右侧的“ 更改文件名”按钮,为文件指定一个新名称(例如海底管道坡度图.grd),然后单击“ 保存”。单击“ 确定”,然后创建网格。
第六步,使用上面定义的色标尺创建地图并为其着色。
单击MAP| NEW| color relief,选择海底管道坡度图.grd并单击“ 打开”。
在对象管理器中选择图像图层,然后单击“ 属性管理器”中的“ 常规”页面。
在Hill Shading部分下,取消选中Enable hill shading。
取消选中插值像素。
单击“ 颜色 ”右侧的“ 自定义色彩映射表(...)”按钮。
在Colormap对话框中,单击Load,选择ColorWheel.clr,然后单击Open。
单击确定,选中显示色标,在“ 缺失数据”部分下,将“ 不透明度”设置为0%。
如果需要,可以调整分类和色标尺的定义,通过调整网格来强调某些斜率或方位的范围,可以单独定义海底管道的颜色显示。或者通过将“ 色彩映射”对话框中的“ 不透明度”设置为100%,可以选择使平坦区域为灰色而不是透明,以更好的显示海底地形变化情况以及突出显示海底管道的裸露情况。
二、结果
根據上述方法路线生成海底管道坡度图(图2),同时由原始水深数据生成海底地貌图(图3)。
从两张图上对比可以看出,在单个图中同时显示斜率和坡向是识别地图中人工构筑物,比如海底管道的绝佳方法。在原始的水深地貌图中,海底管道裸露程度较轻的部分,由于水深变化的数值很小,体现在图中很不明显,甚至难以判断。但作为海底管道,由于其外形尺寸是确定的,表现在坡度数据上也是确定的,所以在坡度图上,裸露出来的深浅程度不同虽有差别,但都可以显示出来。
经过对比海底管道坡度图和原始的水深数据海底地貌图,可以看到采用坡度图,相对于深度图,加强了海底管道的可视化显示,对于微小的地形地貌改变,显示的也十分明显。
三、结论
利用人工构筑物的一些特点,比如规则的外观、固定的尺寸、线性的变化等,充分利用坡度图的特点,突出了海底管道的视觉效果,对识别并显示海底管道的裸露情况,是处理方法上的一个创新,并且很容易把这个方法利用的其它一些类似的应用中去。而且,利用软件本身对脚本的支持,可以开发出具有交互功能的自动处理系统,可以实现对海底管道或其它人工构筑物,根据其方位或坡度等数据,指定其显示颜色,达到更加智能化的功能。
参考文献
[1] Kari Dickenson,Creating Terrain Slope Maps from Digital Elevation Models in Surfer【EB/OL】, Tuesday, 24 May 2016