语义变化检测代码-04-裁剪tif图像为指定大小
需求分析
一张512 x 512大小的遥感TIF格式影像,要分割裁剪为256 x 256大小的TIF,那么会得到4张影像。
当然可以利用arcgis进行操作,但如果经常有这样的需求,那么一份代码显然是更便利的。
代码
import arcpy
import os
"""
本程序需要在arcgis中运行
"""
inputdata_tif = r" G:\路径\in_split_tif" #输入影像文件夹
outputdata_tif = r" G:\路径\out_split_tif" #输出影像文件夹
for file in os.listdir(inputdata_tif):
if file.split('.')[-1] == "tif":
# 更改'256 256'为其他参数如'512 512'可以裁剪为其他指定的尺寸
arcpy.SplitRaster_management(inputdata_tif + "/" + file, outputdata_tif, file[:-4]+'_', "SIZE_OF_TILE", "TIFF", "NEAREST", "1 1", "256 256", "0", "PIXELS", "", "")
代码中设置文件夹展示
在代码中,需要修改的是一个需要进行裁剪的文件所在的文件夹,文件夹内可以有多个TIF影像,会逐个进行裁剪。
如图。
输出文件夹是一个新建的空文件夹,就不展示了。
代码中图片尺寸设置
代码中"256 256"中间是空格,设置输出图片的大小。
结果查看
一般都是这种输出这种结果,还有另外两种格式的文件,但是我们使用的是.TIF格式的。
代码使用
代码是基于arcgis的arcpy模块进行编写的,必须要有arcgis软件。由于我没有弄明白怎么在pycharm中调用它,所以我都是在arcgis中操作的。
点击Python以后,在弹出的窗口,将代码拷贝进去(注意调整路径和尺寸),再按ENTER两次,就会开始运行,随后就可以在输出路径中查看结果。
扩展
arcpy模块很常用,arcgis二次开发应当很常使用,建议多学习哦。