最近要给分局部署软件,需要一系列数据,首当其冲的是要做单独的区的一个影像切片,有趣的是,单位只有全市的影像切片,居然没有分区的,而且原始的tif影像数据也是全市杂糅在一起的,我只能自己来处理数据。
拿到几百个G的原始tif数据后,
发现几个特点和问题:
一 数据的横坐标不带41
二 数据是以图幅网格的副图名
三 数据量巨大
我的目的:
一 将数据转为带41的
二 将转换完的数据按行政区选择出来
三 进行切片
解决方案
对于一,(1)传统的就是使用arcgis平移工具了,由于数据量大,要使用批处理工具。有三个个问题,第一由于数据量打,速度极慢;第二在选择输出栅格数据集时,若想摒弃繁琐的人工操作,那么就要有所牺牲,就是新生成的数据无法保留原来数据的命名(欢迎指教,也可能是我不会用);第三,由于数据量很大,占据巨大的磁盘空间,而arcgis这个工具是要生成新的数据,相当于又生成一份数据,这样很浪费(这个问题当然有所争论,原始数据放在移动硬盘里,新生成数据放在电脑里,不但解决了空间问题,还解决了数据备份问题)
(2) 进一步的思路是,使用我上一篇文章提到的arcpy工具,上一篇,我提到过,使用python小程序代替arctoolbox的批处理工具,会有更为高效的结果,具体代码请翻上一篇文章,这里就不列出了,使用的是Shift_management()。这种方式,其实只解决了(1)的第二个问题,不过也可以使用了。
(3) 最好的思路是,原始tif影像中,有一个tfw文件,用记事本打开,可以看到最后两行的数字分别是这个影像的横坐标和纵坐标,那么思路来了,只需用程序批量读取tfw文件,修改第五个值,将它加上41000000即可。程