5分钟,ArcGIS 简单几步从天地图中提取出建筑物轮廓的矢量数据

Posted 一点唐城

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了5分钟,ArcGIS 简单几步从天地图中提取出建筑物轮廓的矢量数据相关的知识,希望对你有一定的参考价值。


5分钟,ArcGIS

前言:利用 ArcGIS Pro 从天地图中提取时效性好、位置又准确的建筑物轮廓矢量数据。ArcMap 同理。

天地图应用越来越广泛,其中的数据是比较权威的,准确性都比较高。

另外大家的需求也越来越多,想要用好天地图,比如,想要获得某个地区的建筑物轮廓矢量,当然官方是不可能提供下载的,但是我们可以从天地图影像中提取建筑物轮廓矢量,效果还不错。

1.ArcGIS Pro 下载天地图影像

  1. ArcGIS Pro 可以打开自带的天地图-矢量(CGCS2000);

5分钟,ArcGIS

  1. 如果不显示(基本上大家第一次打开都不会显示),这时打开天地图-矢量(CGCS2000)图层的属性,打开自定义参数,右击 tk 列,移除行,只要把这个 tk 列移除就可以了。

5分钟,ArcGIS

  1. 缩放移动内容窗口到项目区,打开共享选项卡,选择导出地图
  • 不要忘了勾选写入坐标文件
  • 颜色深度选择8位深度

5分钟,ArcGIS

Note:如果,如果我使用的栅格数据是从其他地方下载好的呢,本身就是彩色的呢?那也没有关系,添加到 ArcGIS Pro 中再按照8位深度导出即可,如果使用栅格函数中的灰度转换方法也是可行的。

2.栅格二值化

上一步最后导出的图片如下,颜色深度以8位灰度导出就变成了这种黑白灰的图片,建筑物的轮廓一目了然,同时由于勾选上了写入坐标文件,也没有丢失坐标信息。

5分钟,ArcGIS

8位灰度表示2的八次方,即256,表示图像从0开始到255,表示图像的像元取值在这个范围内。

接下来我们需要让0-255的范围取值变成0-2,0表示非建筑物,1表示建筑物,2表示道路,基本上分类三种是极限了,8位灰度图想要再区分更多的地物就非常困难了。

  1. 打开符号系统,在图层右击菜单中找到符号系统并打开;

5分钟,ArcGIS

  1. 符号渲染系统使用分类,方法使用默认的自然间断点分级法,然后类数量选3。手动修改取值范围直到达到满意效果。
    黑色的为非建筑物、白色为建筑物、绿色为道路,如果不单独提取道路的话更加简单。

5分钟,ArcGIS

  1. 设置标注名称,按0表示非建筑物,1表示建筑物,2表示道路来设置名称。

5分钟,ArcGIS

  1. 渲染器导出。
    在设置好分类间隔和标注名称后,右击栅格图层并导出,在导出栅格界面中勾选使用渲染器。勾选后,导出的栅格数据就是在符号系统中分类好了的。

5分钟,ArcGIS

3.矢量化

栅格在勾选渲染器后导出结果如下,细心的朋友会发现,“建筑物都没有了”。

实际上是因为新添加的栅格数据的默认渲染方式都是拉伸,建筑物只是没有在这个软件中呈现出来,数据本身是正确的。

5分钟,ArcGIS

  1. 栅格转矢量。工具箱中找到栅格转面,将栅格数据转为面矢量

5分钟,ArcGIS

  1. 数据处理。构建的矢量面如下,打开属性表,其中默认创建的gridcode 字段存储了之前设置的标注名称,即:0表示非建筑物,1表示建筑物,2表示道路来设置名称;
  • 可使用按属性选择功能选取出需要的建筑物轮;
  • 根据面积排序,栅格掉细碎图斑,毕竟碎斑和一个建筑物要素的面积差异挺大的。

5分钟,ArcGIS

最后获得结果

5分钟,ArcGIS

4.轮廓优化

放大看单栋建筑物轮廓的矢量,有非常多的折点,歪歪扭扭,锯齿一样,这显然不符合建筑物轮廓的特征,不管是现实地物或者是矢量化的要求。

这需要优化,使用规则化建筑物覆盖区工具即可,英文名称:RegularizeBuildingFootprint。

5分钟,ArcGIS

左:优化前;右:优化后

下面是提取的建筑物矢量图斑。

5分钟,ArcGIS

ArcMap 提取的​​操作教程​​,他是使用了 ArcScan 来完成的,不过好像 ArcGIS Pro 没有 ArcScan,可以参考参考。

最后,存在的问题

还有一个说大不大,说小也不小的问题,天地图的矢量影像如何下载?

尽管文章演示了使用 ArcGIS Pro 来下载天地图,但这种方式下载的范围有限,想要下载大范围的、较高级别清晰度的影像就不可行了。

我听说水经注和 Bigemap 这些可以下载,我没有试过,我一直是使用的 QGIS 下载,稍后会有详细教程,心急的朋友可以网上搜一搜。

以上是关于5分钟,ArcGIS 简单几步从天地图中提取出建筑物轮廓的矢量数据的主要内容,如果未能解决你的问题,请参考以下文章

ARCGIS同一shp内的图形重叠部分提取出来

arcgis从dem底图中获得高程属性

在arcgis中如何提取出栅格中每个像元点的经纬度及他的value值

arcgis api for js入门开发系列十七在线地图(天地图百度地图高德地图)

如何调用天地图js API 添加arcgis发布的图层服务

android arcgis加载天地图作为底图不显示问题记录