You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WaterDetect Python遥感水体检测包执行报错及使用方法咨询

解决WaterDetect的AttributeError及正确使用方法

报错原因

你遇到的AttributeError是因为DWWaterDetect类已不再提供run_batch方法——该API在后续版本中被重构,方法入口已变更。

解决方案步骤

1. 确保安装最新版本的WaterDetect

通过pip安装的版本可能滞后于仓库最新代码,建议从本地克隆的仓库安装开发版:

cd path/to/cloned/WaterDetect
pip install -e .

2. 正确的Python API调用方式

直接使用模块顶层的run_batch函数,配合WaterDetectConfig配置参数(按需调整):

import waterdetect as wd

# 定义输入输出路径
input_folder = "path/to/input/folder"
output_folder = "path/to/output/folder"

# 配置检测参数(示例为Sentinel-2卫星图像,按需修改传感器类型)
config = wd.WaterDetectConfig(sensor='S2', threshold_method='Otsu')

# 执行批量水体检测
wd.run_batch(input_folder=input_folder, output_folder=output_folder, config=config)

3. 正确的命令行使用方式

命令行需指定传感器类型(必填参数),否则会触发错误,完整示例:

waterdetect -i path/to/input/folder -o path/to/output/folder -s S2 -m Otsu

参数说明:

  • -s:指定传感器类型,可选值如S2(Sentinel-2)、L8(Landsat-8)、S1(Sentinel-1)
  • -m:指定阈值计算方法,默认Otsu,可选MNDWI等

4. 废弃文档/Notebook的处理

仓库旧的Jupyter Notebook未同步API更新,建议直接参考仓库根目录的最新README文件或源码中的示例代码。

内容的提问来源于stack exchange,提问作者Souvik Datta

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 21:20:01