如果要脱离ArcGIS,使用python进行针对TIFF图的每个像元值的计算时,可以采用将TIFF图转化为ASCII格式之后再进行针对每个像元值的计算,以下是代码,有需要的可以自取。
在使用此代码前,需要一些前期准备工作,才能调用arcpy库:一、Arcpy介绍和安装【ArcGIS Python系列】 - 知乎 (zhihu.com)
import arcpy
import os
def tiff_to_ascii(input_folder, output_folder):
arcpy.env.workspace = input_folder
# 获取指定文件夹中的所有.tif文件
raster_files = arcpy.ListRasters("*", "TIF")
for raster_file in raster_files:
# 获取文件的基本文件名,并去掉后缀
file_name = os.path.splitext(raster_file)[0]
# 构造输出路径
output_raster = os.path.join(output_folder, file_name)
# 进行处理,将TIFF文件转换为ASCII格式
arcpy.RasterToASCII_conversion(raster_file, output_raster + ".txt")
if __name__ == '__main__':
input_folder = r"E:\Image\实验\cut_result\vv_db_wudi2"
output_folder = r"E:\Image\实验\ASCII\ASCII_VV2"
tiff_to_ascii(input_folder, output_folder)