项目简介
本项目实现了基于MindSpore框架的Wasserstein GAN(WGAN),用于生成高质量图像。WGAN改进了原始GAN的算法流程,解决训练不稳定问题,保证生成样本的多样性。模型含生成器和判别器,支持在Ascend和GPU环境训练与推理。
项目的主要特性和功能
- 模型架构:生成器和判别器网络采用卷积DCGAN架构,支持标准卷积DCGAN和无BatchNorm的卷积DCGAN两种生成器结构。
- 数据集:支持LSUN - Bedrooms数据集,有3033044张64x64的卧室图像。
- 训练与推理:支持单机和多卡训练,有推理脚本用于生成图像。
- 模型导出:支持将训练好的模型导出为MindIR、ONNX等格式,方便在不同平台推理。
- 性能评估:提供详细训练和推理性能报告,支持在Ascend310上推理。
安装使用步骤
环境准备
- 安装MindSpore框架。
- 准备硬件环境(Ascend或GPU)。
数据准备
- 下载LSUN - Bedrooms数据集,并转换为图片格式。
- 将数据集放置在指定路径下。
训练模型
- 单机训练:
bash bash run_standalone_train_ascend.sh [DATASET] [DATAROOT] [DEVICE_ID] [NOBN] [OUT_PATH]
- 多卡训练:
bash bash run_distribute_train_ascend.sh [DATASET] [DATAROOT] [DEVICE_NUM] [RANK_TABLE_FILE] [NOBN] [OUT_PATH]
推理与评估
- 推理:
bash bash run_eval.sh [DEVICE_ID] [CONFIG_PATH] [CKPT_FILE_PATH] [OUTPUT_DIR] [NIMAGES]
- ONNX评估:
bash bash run_eval_onnx.sh [ONNX_MODEL_PATH] [DEVICE_TARGET] [N_IMAGES] [OUTPUT_DIR] [CONFIG]
模型导出
- 导出为MindIR格式:
bash python export.py --ckpt_file [CKPT_PATH] --file_name [FILE_NAME] --file_format MINDIR
Ascend310推理
- 执行推理:
bash bash run_infer_310.sh [MINDIR_PATH] [CONFIG_PATH] [NEED_PREPROCESS] [NIMAGES] [DEVICE_ID]
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】