如何解决如何从这段代码中分离保存生成的图像
我已经从 github 运行 StarGAN Code,这段代码在一张图片中生成所有生成的图像。
如何将生成的所有图像保存到单个文件夹中?我不想将所有图像保存在一张图片中。
我想从训练好的模型中保存生成的图像,而不是将所有图像保存在一张图片中的样本,而只是一个包含所有生成图像的文件。
这是我要更改的代码部分
# Translate fixed images for debugging.
if (i+1) % self.sample_step == 0:
with torch.no_grad():
x_fake_list = [x_fixed]
for c_fixed in c_fixed_list:
x_fake_list.append(self.G(x_fixed,c_fixed))
x_concat = torch.cat(x_fake_list,dim=3)
sample_path = os.path.join(self.sample_dir,'{}-images.jpg'.format(i+1))
save_image(self.denorm(x_concat.data.cpu()),sample_path,nrow=1,padding=0)
print('Saved real and fake images into {}...'.format(sample_path))
解决方法
在 self.G
的每个元素上调用生成器 c_fixed_list
以生成图像。连接所有结果,然后使用 torchvision.utils.save_image
保存。
我看不出是什么阻碍了您将图像保存在循环中。类似的东西:
for j,c_fixed in enumerate(c_fixed_list):
x_fake = self.G(x_fixed,c_fixed)
for k in range(len(x_fake)):
sample_path = os.path.join(self.sample_dir,f'{i+1}-{k}-feat{j}-image.jpg')
save_image(self.denorm(x_fake.data[k].cpu()),sample_path,nrow=1,padding=0)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。