SPADE(GauGAN)代码运行方法 您所在的位置:网站首页 人体最舒适的温度是多少度左右 SPADE(GauGAN)代码运行方法

SPADE(GauGAN)代码运行方法

#SPADE(GauGAN)代码运行方法| 来源: 网络整理| 查看: 265

SPADE运行方法 写在前面为什么Pix2PixHD和SPADE都不用RGB作为输入如何运行SPADE可能遇到的问题(2022/04/28更)如何控制合成风格(2022/07/30更)-\-contain_dontcare_label参数 写在后面

写在前面

SPADE作为目前Label to Image的守门员,非常值得学习,前几天复现了一下他的模型现在来分享一下运行方法。

为什么Pix2PixHD和SPADE都不用RGB作为输入

可以参考这篇博客https://blog.csdn.net/iiiiiiimp/article/details/123459193 其实这是为了把单通道的语义图label进行one-hot编码再给生成器 在这里插入图片描述

如何运行SPADE

我这里以512 * 512 大小的图片为例子,label默认为单通道8bit大小。 (1)我偏要用RGB的label图片作为输入 SPADE不能像Pix2PixHD那样使用参数--label_nc 0直接将RGB送给网络,但是我之前试了一下把--label_nc的参数设置255然后加上--contain_dontcare_label是可以运行的。参考了https://github.com/NVlabs/SPADE/issues/137

python train.py --name 名字 --dataset_mode custom --load_size 512 --crop_size 512 --display_winsize 512 --label_nc 255 --contain_dontcare_label --label_dir 路径/train_label --image_dir 路径/train_img --no_instance

(2)只有label作为输入

python train.py --name 名字 --dataset_mode custom --load_size 512 --crop_size 512 --display_winsize 512 --label_nc 类别数 --label_dir 路径/train_label --image_dir 路径/train_img --no_instance

(3)label和intance作为输入 把--no_instance改为--instance_dir即可

python train.py --name 名字 --dataset_mode custom --load_size 512 --crop_size 512 --display_winsize 512 --label_nc 类别数 --label_dir 路径/train_label --image_dir 路径/train_img --instance_dir 路径/train_inst

(4)如果输入图片的宽高不相等 例如我这里图片是720 * 576 这先计算720/576 = 1.25,然后把这个1.25作为 --aspect_ratio的参数

python train.py --name 名字 --dataset_mode custom --preprocess_mode none --load_size 720 --crop_size 720 --display_winsize 720 --aspect_ratio 1.25 --label_nc 类别数 --label_dir 路径/train_label --image_dir 路径/train_img --instance_dir 路径/train_inst 可能遇到的问题

如果训练效果可以,而测试效果如下这种很模糊,就把test.py里面的model.eval()注释掉就行。参考了https://github.com/NVlabs/SPADE/issues/96

(2022/04/28更)如何控制合成风格

如果使用训练时使用了超参--use_vae,那么测试时使用--use_vae每次运行生成的图片都会有不同的风格,但如何像论文第一页那种控制风格呢? 运行test.py前把pix2pix_dataset.py中__getitem__函数的

image = Image.open(image_path)

改为

image = Image.open( self.image_paths[0])

其中self.image_paths[0]中的0表示使用使用测试集图片的第0张图片去编码,如果想使用测试集图片的第1张图片去编码,改为1就行了。

(2022/07/30更)--contain_dontcare_label参数

--contain_dontcare_label表示的是是否包含不关心的类别,citycapes中不关心的类别为第一类,也就是没有标签,默认值为0。 但是SPADE中的不关心类别默认为255。 在这里插入图片描述 但是在SPADE的官方代码中,citycapes数据集并没有设置--contain_dontcare_label,所以是unlabel类型也当成一个类型去处理的。 在这里插入图片描述 但是在OASIS的citycapes数据集,这是把-1当作不关心的类别处理的。 在这里插入图片描述

写在后面

这是我总结的GAN相关论文的解析。希望本文对大家学习SPADE有所帮助。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有