项目简介
本项目是基于PyTorch框架构建的图像分割系统,主要针对Weizmann马数据库中的马匹图像开展分割任务。项目实现了FCN32s、FCN16s和FCN8s三种全卷积网络结构,同时借助Visdom对训练过程进行可视化。
项目的主要特性和功能
- 网络结构:实现FCN32s、FCN16s和FCN8s三种网络结构,用于完成图像分割任务。
- 数据预处理:具备数据读取和预处理功能,包含图像归一化以及转换为张量操作。
- 训练与测试:包含模型训练和测试的主函数,支持在训练过程中计算mIOU等指标。
- 可视化:使用Visdom对训练过程进行可视化,实时展示损失函数和预测结果。
安装使用步骤
1. 环境准备
确保已安装以下依赖: - Python 3.6 - PyTorch 1.2.0 - torchvision 0.4.0 - visdom 0.1.8.9
2. 数据准备
将Weizmann马数据库数据放入weizmann_horse_db
文件夹,确保数据格式如下:
weizmann_horse_db/
├── horse/
│ ├── horse001.jpg
│ └── ...
└── mask/
├── mask001.png
└── ...
3. 启动Visdom服务器
在命令行中运行以下命令启动Visdom服务器:
bash
python -m visdom.server
4. 运行训练脚本
直接运行train.py
文件开始训练:
bash
python train.py
5. 查看训练结果
训练过程中,Visdom将实时更新损失函数、mIOU等指标以及预测结果的可视化。通过浏览器访问Visdom服务器(通常是http://localhost:8097
)查看可视化界面。
6. 保存和加载模型
训练过程中,模型参数将每五个epoch保存一次。用户可以在需要时加载已保存的模型参数,继续训练或进行预测。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】