SGMNet 项目使用教程
1. 项目目录结构及介绍
SGMNet/
├── assets/
├── components/
├── datadump/
├── demo/
├── evaluation/
├── sgmnet/
├── superglue/
├── superpoint/
├── train/
├── utils/
├── .gitignore
├── LICENSE
├── README.md
├── requirements.txt
- assets/: 存放项目相关的静态资源文件。
- components/: 存放项目的主要组件代码。
- datadump/: 存放数据集或数据处理相关的文件。
- demo/: 存放演示代码和示例脚本。
- evaluation/: 存放评估代码和评估脚本。
- sgmnet/: 存放 SGMNet 网络的核心代码。
- superglue/: 存放 SuperGlue 相关的代码。
- superpoint/: 存放 SuperPoint 相关的代码。
- train/: 存放训练相关的代码和脚本。
- utils/: 存放工具函数和辅助代码。
- .gitignore: Git 忽略文件配置。
- LICENSE: 项目许可证文件。
- README.md: 项目说明文档。
- requirements.txt: 项目依赖库配置文件。
2. 项目启动文件介绍
项目的主要启动文件位于 demo/
目录下,具体为 demo.py
。该文件用于演示如何使用 SGMNet 进行图像匹配。
cd demo
python demo.py
3. 项目的配置文件介绍
项目的配置文件主要包括 requirements.txt
和 train/train_sgm.sh
。
- requirements.txt: 列出了项目运行所需的 Python 依赖库。
pip install -r requirements.txt
- train/train_sgm.sh: 训练脚本,支持多 GPU 训练。可以通过配置以下参数来启用多 GPU 训练:
CUDA_VISIBLE_DEVICES=0,1,2,3
nproc_per_node=4
通过以上配置,可以启动多 GPU 训练。