作物类型映射:基于自注意力的光学卫星时序数据分类
crop-type-mapping 项目地址: https://gitcode.com/gh_mirrors/cr/crop-type-mapping
本教程将引导您了解并使用crop-type-mapping
项目,这是一个利用自注意力机制处理原始光学卫星时序数据进行作物类型分类的开源工具包。该项目基于Marc Russwurm和Marco Körner于2019年的研究。
1. 目录结构及介绍
项目根目录大致结构如下:
crop-type-mapping/
├── doc/ # 文档资料
├── experiments/ # 实验设置脚本和相关配置
│ ├── <各实验定义文件>.py # 实验逻辑实现
├── notebooks/ # Jupyter Notebooks用于演示或数据分析
├── src/ # 核心源代码
│ ├── models/ # 模型架构定义(如RNN, Transformer等)
│ ├── rnn.py
│ ├── transformerEncoder.py
│ └── ...
│ ├── experiments.py # 实验管理与执行
│ ├── train.py # 训练脚本
│ └── ... # 其他核心模块
├── gitignore # Git忽略文件
├── Dockerfile # Docker构建文件
├── LICENSE # 开源许可证
├── README.md # 主要的项目说明文档
├── requirements.txt # 依赖库列表
├── download.sh # 数据集和预训练模型下载脚本
doc
包含项目相关的技术文档。experiments
存放着实验的配置脚本,每个.py
文件控制一个特定实验的细节。notebooks
内有示例Notebook,便于理解数据处理和模型应用。src
是项目的核心代码区域,包含了模型定义、训练和实验逻辑。requirements.txt
列出了运行项目所需的Python包版本。
2. 项目启动文件介绍
主要的启动文件是train.py
,该文件负责模型的训练过程。通过命令行参数指定不同的实验配置和选项来启动训练。例如,可以这样启动一个实验:
python train.py --experiment isprs_tum_transformer \
--store /tmp/ \
--classmapping /data/BavarianCrops/classmapping23.csv \
--hyperparameterfolder /models/tune/23classes
这将会使用Transformer模型对23类作物进行训练,并且指定了存放路径、类别映射文件以及超参数配置文件的位置。
3. 项目的配置文件介绍
配置主要分布在几个地方:
- Hyperparameters: 超参数通常存储在CSV文件中,位于
models/tune
目录下,命名如transformer_tum.csv
。这些文件指导了训练过程中的关键数值设定。 - Class Mapping: 类别映射文件,如
classmapping23.csv
,位于data/BavarianCrops/
,它定义了每个类别的数字代码对应的作物类型。 - Experiment Configuration: 实验配置分布在
experiments.py
和命令行参数中,定义了实验的具体设置,比如使用的模型(isprs_tum_transformer
)、数据集路径等。
通过以上介绍,您可以按需配置环境,下载数据,调整超参数,然后开始您的作物类型分类之旅。记得先安装项目所需的所有依赖,执行pip install -r requirements.txt
,并根据提供的脚本下载必要的数据集和预训练模型。
crop-type-mapping 项目地址: https://gitcode.com/gh_mirrors/cr/crop-type-mapping
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考