diff --git a/.gitignore b/.gitignore index 01c8f8e..62d966c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ .idea/ -**/*.png -**/*.pkl saved/ +venv/ +result.png diff --git a/CGAN.py b/CGAN.py index 1ecc4c0..b14bff0 100644 --- a/CGAN.py +++ b/CGAN.py @@ -159,4 +159,4 @@ def generate(numbers, epoch, filename): if __name__ == '__main__': # train() - generate([1, 2, 3, 3, 2, 1], 87, 'result.png') + generate([1, 2, 3, 4, 5, 6, 7, 8, 9, 0], 87, 'result1.png') diff --git a/README.md b/README.md index ac2e135..9e6860a 100644 --- a/README.md +++ b/README.md @@ -1,70 +1,44 @@ # Jittor 武汉大学队 手写数字生成 -![主要结果](https://s3.bmp.ovh/imgs/2022/04/19/440f015864695c92.png) - -|展示方法的流程特点或者主要结果等 +![主要结果](images/result1.png) ## 简介 -| 简单介绍项目背景、项目特点 - -本项目包含了第二届计图挑战赛计图 - 草图生成风景比赛的代码实现。本项目的特点是:采用了 XX 方法对 YY 处理,取得了 ZZ 的效果。 -## 安装 -| 介绍基本的硬件需求、运行环境、依赖安装方法 +本项目是 华中科技大学“武汉大学”队 参加 第二届计图人工智能挑战赛 热身赛 所使用的代码。项目使用 Conditional GAN 在 MNIST 数据集上训练,并生成一串手写数字的图像。 -本项目可在 2 张 2080 上运行,训练时间约为 6 小时。 +## 安装 #### 运行环境 -- ubuntu 20.04 LTS -- python >= 3.7 -- jittor >= 1.3.0 + +- Jittor 1.3.4.12 +- Numpy +- Pillow #### 安装依赖 执行以下命令安装 python 依赖 + ``` pip install -r requirements.txt ``` #### 预训练模型 -预训练模型模型下载地址为 https:abc.def.gh,下载后放入目录 `/weights/` 下。 -## 数据预处理 -| 介绍数据预处理方法,可选 - -将数据下载解压到 `/data` 下,执行以下命令对数据预处理: -``` -bash scripts/prepross.sh -``` +预训练模型[下载地址](https://drive.google.com/drive/folders/1qnS1SXwtmR-2H-i8vDxW1W4H5k1E2ENI?usp=sharing),可通过 `load` 导入系数。 ## 训练 -| 介绍模型训练的方法 - -单卡训练可运行以下命令: -``` -bash scripts/train.sh -``` -多卡训练可以运行以下命令: -``` -bash scripts/train-multigpu.sh -``` +`CGAN.py` 中 `train()` 函数为用于训练的函数,调用它即可运行训练。相关参数见文件内。 ## 推理 -| 介绍模型推理、测试、或者评估的方法 -生成测试集上的结果可以运行以下命令: +将参数放入 `saved` 文件夹内后,可以调用 `generate(numbers, epoch, filename)` 函数生成图像。其中 `numbers` 为要生成的数字数组,`epoch` 为模型训练的代数,预训练模型为 87,`filename` 为生成图像保存路径。 -``` -bash scripts/test.sh -``` +参见 `CGAN.py` 中的实现。 ## 致谢 -| 对参考的论文、开源库予以致谢,可选 - -此项目基于论文 *A Style-Based Generator Architecture for Generative Adversarial Networks* 实现,部分代码参考了 [jittor-gan](https://github.com/Jittor/gan-jittor)。 - -## 注意事项 -点击项目的“设置”,在Description一栏中添加项目描述,需要包含“jittor”字样。同时在Topics中需要添加jittor。 +本项目参考了以下资料与项目,感谢作者的分享! -![image-20220419164035639](https://s3.bmp.ovh/imgs/2022/04/19/6a3aa627eab5f159.png) \ No newline at end of file +- https://cg.cs.tsinghua.edu.cn/jittor/tutorial/2020-5-13-22-47-cgan/ +- https://github.com/Jittor/gan-jittor/blob/master/models/cgan/cgan.py +- https://github.com/arturml/mnist-cgan/blob/master/mnist-cgan.ipynb diff --git a/images/result1.png b/images/result1.png new file mode 100644 index 0000000..153192b Binary files /dev/null and b/images/result1.png differ diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..243c88c Binary files /dev/null and b/requirements.txt differ