为了实现对图像的分割,比如1024x512的图像分割为256x256大小的图像,使用arcmap中的分割栅格工具;为实现对大量图像的自动化操作,二次开发对"分割栅格"进行调用,代码即可轻松实现。
(1)打开arcmap,找到分割栅格工具:
(2)打开模型窗口:
(3)拖拽“分割栅格”至模型界面,会出现类似流程图的组件,左上角模型导出python脚本。
(4)加循环代码如下:
# Import arcpy module
... import arcpy
... # Local variables:
... m=[]
... for i in range(159):#要循环遍历的图片名称
... a=str(i)+".jpg"
... m.append(a)
...
... for n in range(len(m)):
... v = "E:\\222\\"#要分割的图像存放的文件夹
... v1 = "E:\\Street141"#分割后图像存放的文件夹
... # Process: 分割栅格 第一个参数为分割的图像存放的文件夹,第二个参数为分割后图像存放的文件夹,实现功能分割为256x256的图像大小。
... arcpy.SplitRaster_management(v+m[n], v1,"11%i%"+m[n], "SIZE_OF_TILE", "JPG", "NEAREST")
(5)运行代码。打开python窗口,输入上面的代码,回车,再次回车即运行,成功后就会看到右下角的进度条一直在动。