Skip to content

Alexababab/Remote_Sense_Agent

Repository files navigation

基于多智能体框架的遥感影像指数计算与解译报告生成系统

项目背景

本项目面向遥感影像课程设计场景,基于 LangGraph 多智能体框架构建 Sentinel-2 四波段影像指数分析系统。系统通过 Planner、Executor、Critic、Finalizer 四个智能体节点协同完成任务规划、工具调用、结果审查和报告生成。

功能介绍

  • 读取 Sentinel-2 四波段 GeoTIFF 影像基本信息。
  • 计算 NDVI 植被指数,并输出 GeoTIFF 与 PNG 可视化结果。
  • 计算 NDWI 水体指数,并输出 GeoTIFF 与 PNG 可视化结果。
  • 汇总影像信息、指数统计和输出路径。
  • 生成《遥感影像指数分析报告》。
  • 提供 Streamlit 前端,支持上传 1 个四波段 stack tif/tiff,或按 B02、B03、B04、B08 顺序上传 4 个单波段 tif/tiff,也可使用默认示例影像。

系统架构

系统保留四节点多智能体结构:

  1. Planner:根据用户需求规划遥感指数分析任务。
  2. Executor:调用 raster_info_tool、ndvi_tool、ndwi_tool、summary_tool。
  3. Critic:检查影像信息、NDVI、NDWI、统计结果和报告依据是否完整。
  4. Finalizer:生成最终遥感解译报告。

文件结构

.
├── agents.py
├── app.py
├── graph.py
├── raster_tools.py
├── tools.py
├── state.py
├── pyproject.toml
├── requirements.txt
├── uploads/
├── outputs/
│   ├── ndvi/
│   ├── ndwi/
│   └── reports/
├── data/
│   └── demo/
├── screenshots/
└── docs/

运行方式

使用 uv:

uv sync
uv run streamlit run app.py

不使用 uv:

pip install -r requirements.txt
streamlit run app.py

示例输入

请分析这幅 Sentinel-2 裁剪影像的植被和水体分布,计算 NDVI 和 NDWI,并生成一份遥感解译报告。

输出结果说明

  • NDVI GeoTIFF:outputs/ndvi/ndvi.tif
  • NDVI 可视化图:outputs/ndvi/ndvi.png
  • NDWI GeoTIFF:outputs/ndwi/ndwi.tif
  • NDWI 可视化图:outputs/ndwi/ndwi.png
  • 报告文本:outputs/reports/remote_sensing_report.md

注意事项

  • 默认示例影像路径为 data/demo/sentinel2_demo_stack.tif
  • Sentinel-2 四波段 stack 默认顺序为 Band 1 = B02 蓝光,Band 2 = B03 绿光,Band 3 = B04 红光,Band 4 = B08 近红外。
  • 若上传 4 个单波段 tif,请在前端按 B02、B03、B04、B08 的顺序选择文件,系统会自动合成为四波段 stack 后再计算指数。
  • NDVI 可视化采用离散分级渲染:[-1,-0.6]、[-0.6,-0.2]、[-0.2,0.2]、[0.2,0.6]、[0.6,1]。
  • NDVI 高值区域阈值采用 NDVI > 0.3。
  • NDWI 水体候选区域阈值采用 NDWI > 0。
  • 指数阈值为经验阈值,正式分析应结合人工目视解译、地面样本或其他辅助数据复核。

About

遥感多智能体系统

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages