初探arcgis的python脚本的使用 (三)

需求:地籍科有以图幅接合表为范围的单幅的权属图的高清扫描件(tiff格式),前期已经配准完毕,现想要将单幅的权属图连成片,作为底图参考。

解决方案:使用镶嵌数据集构建数据——发布成imageserver服务——使用arcigs(或另搭小平台)进行数据展示、查询和使用

问题及处理:

      我做事情一般先把复杂的问题变简单(提纲挈领、构建解决方案),再把简单的问题复杂化(精细化、开始实施)。整个流程看起来很清楚,问题不大,但最为棘手的问题是第一步,确切的说是第0步。权属图的高清扫描件,并不是完全和图幅接合表契合,确切的说,只有内图廓和图幅接合表完全契合,内图廓外有无用的部分,而这些部分自然需要裁剪掉。

初探arcgis的python脚本的使用 (三)_第1张图片

    那么问题来了,怎么裁剪?这里有两个问题,

    问题一,用什么裁?PS、cdr、画图工具、各种图像处理软件?这种方案实在业余,都不用谈人工、效率、失真、像素误差的问题。作为地图学、GIS科班出身,提到这个方法简直不忍直视。专业的处理方式,是使用arcgis的裁剪工具。

初探arcgis的python脚本的使用 (三)_第2张图片

  这个工具是专门裁剪栅格数据的。

    有了工具,那第二个问题来了,怎么高效的用。看过我之前文章的朋友知道,其实就是那么几种

1 人工  一次处理一幅图,全市几千张图,一个小组处理一个月怎么也完事了。不用说,从技术角度,我肯定pass;但从其他角度,没准这方案还不错呢。

2 使用批处理。批处理是我一直提倡的非编码使用toolbox工具的方法, 但用在这里有个问题,矩形范围的四个参数不是固定的,是因“图”而异的,无法使用批处理。ps:arcgis非编码方法还有建模的办法,有兴趣的读者可以试试。

3 使用ae的GP工具进行裁剪。如果你熟悉ae开发,这种办法的好处显而易见,上手快、帮助文档多、网络资源丰富,甚至可以找到现成代码。

4 使用arcgis的python脚本,我是强烈推荐这种方法来处理需批量使用的toolbox的实际工作。

初探arcgis的python脚本的使用 (三)_第3张图片

          整理完,就27行代码,相比方法3使用ae,代码量是它的十分之一,更关键的是执行效率,也远远高于AE。当然,代码看起来少,写起来不是那么容易。这里面关键的算法是21-24行,很巧妙的解决了Clip_management矩形框四参数获取的问题。

最后,构建好镶嵌数据集的效果为

初探arcgis的python脚本的使用 (三)_第4张图片

至于 后面的imageserver发布和平台搭建,不是本文重点讨论的。

ps:本文相关可能涉密的图片都是经过虚化的

总结

哈哈,不写了,之前的文章已经写够了!!!

你可能感兴趣的:(GIS)