clean code
注:第一行是原图,第二行是语义分割图,第三行是我们的模型根据语义图生成的结果。
本项目包含了第二届计图挑战赛计图 - 语义图生成风景比赛的代码实现。我们采用隐空间扩散模型生成风景图,模型分为两阶段:一阶段训练autoencoder,压缩和重建风景图;二阶段训练扩散模型,随机生成噪声,和语义图拼接在一起,映射到一阶段隐空间中进行扩散,最后使用一阶段的decoder对扩散结果进行解码生成风景图。
成绩
本项目可在 2 张 rtx titan 上运行。
执行以下命令安装 python 依赖
pip install -r requirements.txt
下载预训练模型 download link,放到ckpts/下。
ckpts/
DATA_DIR/ |-- train_val/ | |-- 1.jpg | | | |-- train.txt | |-- val.txt | |-- test/ | |-- 1.jpg | | | |-- test.txt | |-- test_B/ | |-- 1.jpg | | | |-- test_B.txt
在configs文件夹下的配置文件中修改数据集路径。
模型分为两阶段:vqgan和ldm,分开训练
python train_ldm.py
- 多卡训练可以运行以下命令:
mpirun –allow-run-as-root -np 2 python train_vqgan.py
mpirun –allow-run-as-root -np 2 python train_ldm.py
## 推理 生成测试集上的结果可以运行以下命令:
python inference_jittor.py
```
此项目基于论文 High-Resolution Image Synthesis with Latent Diffusion Models 实现,代码参考 latent-diffusion。
第二届计图人工智能挑战赛赛题一代码实现
©Copyright 2023 CCF 开源发展委员会 Powered by Trustie& IntelliDE 京ICP备13000930号
基于扩散模型的Jittor草图生成风景
注:第一行是原图,第二行是语义分割图,第三行是我们的模型根据语义图生成的结果。
简介
本项目包含了第二届计图挑战赛计图 - 语义图生成风景比赛的代码实现。我们采用隐空间扩散模型生成风景图,模型分为两阶段:一阶段训练autoencoder,压缩和重建风景图;二阶段训练扩散模型,随机生成噪声,和语义图拼接在一起,映射到一阶段隐空间中进行扩散,最后使用一阶段的decoder对扩散结果进行解码生成风景图。
成绩
安装
本项目可在 2 张 rtx titan 上运行。
运行环境
安装依赖
执行以下命令安装 python 依赖
预训练模型
下载预训练模型 download link,放到
ckpts/
下。数据准备
在configs文件夹下的配置文件中修改数据集路径。
训练
模型分为两阶段:vqgan和ldm,分开训练
python train_ldm.py
mpirun –allow-run-as-root -np 2 python train_vqgan.py
mpirun –allow-run-as-root -np 2 python train_ldm.py
python inference_jittor.py
```
致谢
此项目基于论文 High-Resolution Image Synthesis with Latent Diffusion Models 实现,代码参考 latent-diffusion。