gee下载tvdi之后有缺失值nodata

gee下载ndvi、lst并用python计算tvdi,出现缺失值nodata,

在gis中先复制原始tif,将nodata设置为-9999,tvdico.tif

栅格计算器,给nodata赋值

空间分析--栅格综合--nibble,如下图:

(Nibble 仅适用于掩膜栅格中的 NoData 值。请注意,掩膜栅格中所有非NoData 像元均会接收输入栅格中的值。这些像元的值及其位置均将被用于向掩膜栅格各 NoData 位置处分配值。NoData 位置将接收输入栅格中被识别为掩膜栅格中最近非 NoData 像元的像元值。)

arcpy批处理:::

import arcpy
from arcpy.sa import *

# 检查Spatial Analyst 扩展模块是否可用
if arcpy.CheckExtension("Spatial") == "Available":
    arcpy.CheckOutExtension("Spatial")
else:
    raise LicenseError("Spatial Analyst 扩展不可用")

# 设置工作环境
arcpy.env.workspace = r"D:"  # 设置工作空间路径
input_folder = r"D:"      # 输入栅格文件夹路径
mask_folder = r"D:"        # 掩膜栅格文件夹路径
output_folder = r"D:"    # 输出栅格文件夹路径

# 获取输入栅格文件和掩膜栅格文件列表
arcpy.env.workspace = input_folder
input_rasters = arcpy.ListRasters("*", "TIF")       # 假设栅格文件为TIF格式

arcpy.env.workspace = mask_folder
mask_rasters = arcpy.ListRasters("*", "TIF")

# 输出文件数量检查
print(f"找到 {len(input_rasters)} 个输入栅格文件.")
print(f"找到 {len(mask_rasters)} 个掩膜栅格文件.")

# 确保输入栅格和掩膜栅格文件数量一致
if len(input_rasters) != len(mask_rasters):
    raise ValueError("输入栅格和掩膜栅格文件数量不一致")

# 批处理Nibble操作
for input_raster, mask_raster in zip(input_rasters, mask_rasters):
    input_raster_path = f"{input_folder}\\{input_raster}"
    mask_raster_path = f"{mask_folder}\\{mask_raster}"
    
    # 生成输出文件名
    output_raster_name = f"nibbled_{input_raster}"  # 使用输入栅格文件的名称作为输出文件的一部分
    
    # 拼接输出文件的完整路径
    output_raster_path = f"{output_folder}\\{output_raster_name}"
    
    # 执行Nibble操作
    try:
        print(f"正在处理: {input_raster_path} 使用掩膜: {mask_raster_path}")
        nibble_result = Nibble(input_raster_path, mask_raster_path, "ALL_VALUES")
        nibble_result.save(output_raster_path)
        print(f"已生成: {output_raster_path}")
    except Exception as e:
        print(f"处理 {input_raster_path} 时出错: {e}")

print("所有栅格处理完成")

# 释放Spatial Analyst 扩展模块
arcpy.CheckInExtension("Spatial")

ArcGIS教程:使用 Nibble、收缩和扩展功能对区域进行概化_nibble命令-CSDN博客ArcGIS学习总结(15)——影像空缺值蚕食填充批处理(Nibble)_arcgis蚕食-CSDN博客学习

  • 10
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值