此项目基于论文 Local Class-Specific and Global Image-Level Generative Adversarial Networks for Semantic-Guided Scene Generation、Local and Global GANs with Semantic-Aware Upsampling for Image Generation 和 Image Super-Resolution Using Very Deep Residual Channel Attention Networks 实现,代码参考了 lggan、JGAN、RCAN。
Jittor 草图生成风景比赛 LGGAN+SAU
定量结果
定性结果
左:草图,右:风景图像

简介
本项目包含了第二届计图挑战赛 (赛题一-草图生成风景) 的代码实现。本项目使用Jittor复现了 LGGAN 和 LGGAN++中的SAU模块。在上述LGGAN和SAU模块的基础上吗,本项目实现了草图生成风景方法,LGGAN包含全局、局部两个分支,分别从草图(分割图)生成风景图像。通过基于注意力机制的权重学习模块,两个分支输出的风景图像被融合为最终的风景图像。
在整个生成过程中,SAU作为语义感知的上采样模块,能在计算上采样结果中特定像素值时,考虑了语义上属于相同类别的像素点对该像素值的贡献。相较于插值方法、pixel shuffle、转置卷积等方法,SAU充分利用了像素邻域的语义信息,提高上采样的精度;另一方面,相较于空间注意力机制,SAU不进行高复杂度的像素间相关性计算,不会捕获过度冗余的信息,而是仅处理相同类别像素点间蕴含的语义信息,上采样效率更高,计算成本更低。
由于本模型训练时会占用大量的计算资源 (24G_BATCH_SIZE=2),本项目在训练及测试时,仅生成分辨率为(192*256)的图片,后续通过BICUBIC插值或超分辨率重建,将图像缩放到目标尺寸(384*512)。
本项目在超分辨率重建部分,复现了 RCAN。该模型提出了Residual in Residual(RIR)结构,其包含多个Residual Group(RG),RG之间通过长程跳跃连接(LSC)连接。每个RG由Residual Channel Attention Block(RCAB)及短程跳跃连接(SSC)组成。跳跃连接及通道注意力的使用,能使网络专注于学习图像的高频信息,提升重建结果的准确度和视觉效果。

安装
运行环境
batch size 设置为 2 的前提下 ,本项目可在 1 张 A5000 或 RTX3090 上运行,训练时间约为 3-4 天;训练时空余的存储空间最好在 20G 左右。
安装依赖
执行以下命令安装 python 依赖
预训练模型存放位置 目录结构
风景图像生成 预训练模型下载地址
1)下载
netG、netD
的模型文件(包括latest_net_G.pkl及latest_net_D.pkl)2)将
latest_net_G.pkl、latest_net_D.pkl
移动到checkpoints/jittor
目录下。【可选】超分辨率缩放 预训练模型下载地址
1)下载
RCAN-jittor
的模型文件2)将模型文件移动到
RCAN/
目录下数据预处理
目标数据集目录结构
1) 为构建上述数据集目录结构。首先进入项目目录,执行下述命令,下载训练、测试集并解压
2) 运行
split_dataset.ipynb
所有单元格,分割训练集和验证集训练
训练 风景图像生成模型
其训练分为了两个阶段:
train.sh
中的命令运行,训练到第 90 个epoch结束train_second_stage.sh
中的命令运行,从第 91 个epoch开始,到第 120 个epoch结束。【可选,分数只差 0.1 分】 训练 超分辨率缩放模型
其训练需要在原数据集上构造 512*384 和 256*192 两个版本的数据集
construct_sr_dataset.ipynb
所有单元格构造训练RCAN的训练集和验证集。RCAN
目录,运行main.py
,并按要求指定input_path
。训练 100 epoch,选择best.pkl
作为后续缩放使用的模型。推理 (针对 B 榜测试数据)
致谢
此项目基于论文 Local Class-Specific and Global Image-Level Generative Adversarial Networks for Semantic-Guided Scene Generation、Local and Global GANs with Semantic-Aware Upsampling for Image Generation 和 Image Super-Resolution Using Very Deep Residual Channel Attention Networks 实现,代码参考了 lggan、JGAN、RCAN。