ArcGIS批量栅格影像归一化操作

代码实现arcgis栅格数据归一化:

import arcpy
from arcpy import env
from arcpy.sa import *
arcpy.CheckOutExtension("Spatial")
 
#这个是工作空间目录,待处理的所有影像都在这个文件型数据库中
env.workspace = "E:/poet/clip/clip.gdb"    
 
#设置读取的栅格类型,可以参考ArcGIS的官方文档,下面的是读取目录下所有类型的栅格文件
rasterList = arcpy.ListRasters("*") 
 
#结果输出文件夹
output_path = "E:/poet/toOne/" 
 
for raster in rasterList:
    print raster
    
    inRaster = raster
 
    maxValueDS = arcpy.GetRasterProperties_management(inRaster, "MAXIMUM")
    maxValue = maxValueDS.getOutput(0)
    print "最大值:" + str(maxValue)
 
    minValueDS = arcpy.GetRasterProperties_management(inRaster, "MINIMUM")
    minValue = minValueDS.getOutput(0)
    print "最小值:" + str(minValue)
 
    NormalizationRaster = (Raster(inRaster) - float(minValue)) / (float(maxValue)- float(minValue))
    #如果输入为文件型影像或者输出到数据库里这里不需要加后缀名
    out = output_path + inRaster + '.tif' 
    NormalizationRaster.save(out)
    print 'finish: ' + out
 
 
 

猜你喜欢

转载自blog.csdn.net/weixin_44913294/article/details/114380030
今日推荐