littlebot
Published on 2025-04-11 / 1 Visits
0

【源码】基于MindSpore框架的WGAN图像生成器

项目简介

本项目基于MindSpore框架实现了WGAN(Wasserstein GAN),主要用于图像生成任务。WGAN改进了原始GAN的算法流程,解决了GAN训练不稳定的问题,保证了生成样本的多样性,同时训练过程中可用数值(-loss_D)指示训练进程,该数值越小,生成器产生的图像质量越高。

项目的主要特性和功能

  1. 模型架构:包含生成器网络和判别器网络,生成器网络有卷积DCGAN生成器结构或无BatchNorm的卷积DCGAN生成器结构两种选择。
  2. 数据集:采用LSUN - Bedrooms数据集,大小为42.8G,包含3033044张图像。
  3. 训练与评估:支持单机训练和推理,提供详细的训练和评估脚本。
  4. 模型导出:可将训练好的模型导出为MindIR、ONNX或MINDIR格式。
  5. 性能监控:训练时通过损失值(-loss_D)监控训练进程。

安装使用步骤

1. 环境准备

2. 数据准备

  • 下载LSUN - Bedrooms数据集:LSUN - Bedrooms
  • 使用LSUN官网提供的脚本将lmdb格式转换为图片格式,并把Bedrooms类图片存于同一文件夹。

3. 训练模型

  • 运行单机训练脚本: bash bash run_train.sh [DATASET] [DATAROOT] [DEVICE_ID] [NOBN]
  • 选标准卷积DCGAN生成器结构: bash bash run_train.sh [DATASET] [DATAROOT] [DEVICE_ID] False
  • 选无BatchNorm的卷积DCGAN生成器结构: bash bash run_train.sh [DATASET] [DATAROOT] [DEVICE_ID] True

4. 模型评估

  • 运行评估脚本: bash bash run_eval.sh [DEVICE_ID] [CONFIG_PATH] [CKPT_FILE_PATH] [OUTPUT_DIR] [NIMAGES]

5. 模型导出

  • 导出模型为MindIR格式: bash python export.py --ckpt_file [CKPT_PATH] --file_name [FILE_NAME] --file_format [FILE_FORMAT]
  • file_format 可选值:["AIR", "ONNX", "MINDIR"]

注意事项

  • 保证数据集路径和格式正确。
  • 训练可能耗时较长,请耐心等待。
  • 按需使用评估和导出功能。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】