使用说明.md 5.3 KB

Cd预测集成系统使用说明

项目简介

本项目整合了三个原本独立的模块:

  • 作物Cd模型文件与数据:用于预测作物中的镉含量
  • 有效态Cd模型文件与数据:用于预测土壤中有效态镉含量
  • Irrigation_Water:用于数据分析和可视化

整合后的系统可以一键运行完整的预测分析流程,从模型预测到最终的地图可视化。

快速开始

1. 数据迁移

首先运行数据迁移脚本,将原有项目的文件复制到新的项目结构中:

cd Cd_Prediction_Integrated_System
python setup_data.py

2. 安装依赖

pip install -r requirements.txt

3. 运行主程序

python main.py

项目结构说明

Cd_Prediction_Integrated_System/
├── README.md                 # 英文说明文档
├── 使用说明.md               # 中文使用说明
├── main.py                   # 主执行脚本
├── config.py                 # 配置文件
├── setup_data.py             # 数据迁移脚本
├── requirements.txt          # 依赖包列表
├── models/                   # 模型模块
│   ├── crop_cd_model/        # 作物Cd模型
│   │   ├── model_files/      # 模型文件(.pth, .npy等)
│   │   ├── data/            # 输入数据(areatest.csv)
│   │   └── predict.py       # 预测脚本
│   └── effective_cd_model/   # 有效态Cd模型
│       ├── model_files/      # 模型文件(.pth, .npy等)
│       ├── data/            # 输入数据(areatest.csv)
│       └── predict.py       # 预测脚本
├── analysis/                 # 数据分析模块
│   ├── data_processing.py    # 数据处理(整合预测结果与坐标)
│   ├── mapping.py           # 栅格映射(CSV转GeoTIFF)
│   └── visualization.py     # 可视化(地图和直方图)
├── data/                    # 共享数据
│   ├── coordinates/         # 坐标数据(坐标.csv)
│   ├── predictions/         # 模型预测结果
│   └── final/              # 最终整合数据
├── output/                  # 输出结果
│   ├── raster/             # 栅格文件(.tif, .shp等)
│   ├── figures/            # 图形输出(.jpg)
│   └── reports/            # 日志文件
└── utils/                  # 工具函数
    └── common.py           # 通用函数

工作流程

系统按以下顺序执行:

  1. 模型预测阶段

    • 运行作物Cd模型,生成 combined_pH.csv
    • 运行有效态Cd模型,生成 pHcombined.csv
  2. 数据整合阶段

    • 将预测结果与坐标数据合并
    • 生成 Final_predictions.csv
  3. 栅格转换阶段(相当于原来的 02_Transfer_csv_to_geotif.py

    • 将CSV数据转换为Shapefile
    • 将Shapefile栅格化为GeoTIFF
  4. 可视化阶段(相当于原来的 01_Figure_raster_mapping.py

    • 生成栅格地图
    • 生成预测值分布直方图

配置说明

可以通过修改 config.py 文件来调整系统行为:

模型配置

  • CROP_CD_MODEL: 作物Cd模型的文件路径和参数
  • EFFECTIVE_CD_MODEL: 有效态Cd模型的文件路径和参数

工作流程控制

WORKFLOW_CONFIG = {
    "run_crop_model": True,        # 是否运行作物Cd模型
    "run_effective_model": True,   # 是否运行有效态Cd模型
    "combine_predictions": True,   # 是否整合预测结果
    "generate_raster": True,       # 是否生成栅格文件
    "create_visualization": True,  # 是否创建地图
    "create_histogram": True       # 是否创建直方图
}

可视化配置

  • 6种预定义颜色方案
  • 可调整图片尺寸和分辨率
  • 支持自定义标题和标签

输出文件

运行完成后,会在以下位置生成输出文件:

  • data/predictions/: 模型预测结果CSV文件
  • data/final/: 最终整合的数据文件
  • output/raster/: 栅格文件(GeoTIFF, Shapefile)
  • output/figures/: 可视化图片
  • output/reports/: 执行日志

常见问题

Q: 如何只运行某个特定模块?

A: 修改 config.py 中的 WORKFLOW_CONFIG,将不需要的步骤设为 False

Q: 如何更改颜色方案?

A: 修改 config.py 中的 VISUALIZATION_CONFIG["default_colormap"],或者添加自定义颜色方案。

Q: 模型文件找不到怎么办?

A: 确保运行了 setup_data.py 脚本,并且原始项目文件夹在正确位置。

Q: 如何查看详细的执行日志?

A: 查看 output/reports/ 目录中的日志文件。

技术特点

  • 模块化设计:每个功能模块独立,便于维护和扩展
  • 配置驱动:通过配置文件控制执行流程
  • 完整日志:详细记录每个步骤的执行情况
  • 错误处理:完善的异常处理机制
  • 面向对象:使用类封装功能,代码结构清晰
  • JSDoc注释:所有函数都有详细的参数说明

扩展说明

如需添加新的模型或功能:

  1. models/ 目录下创建新的模型模块
  2. config.py 中添加相应配置
  3. main.py 中添加执行步骤
  4. 更新 analysis/data_processing.py 以支持新的预测结果

联系方式

如有问题或建议,请查看项目日志文件或联系开发团队。