Deep learning 如何保存此代码中生成的图像

Deep learning 如何保存此代码中生成的图像,deep-learning,pytorch,generative-adversarial-network,Deep Learning,Pytorch,Generative Adversarial Network,我已经从github运行了,这段代码在一张图片中生成所有生成的图像 如何将生成的所有图像分别保存到单个文件夹中?我不想在一张图片中保存所有图像 这就是它如何生成输出(示例图像 我想保存从训练过的模型生成的图像,不是作为一张图片中所有图像的样本,而是一个包含所有生成图像的文件 这是代码的一部分,我想更改它 # Translate fixed images for debugging. if (i+1) % self.sample_step == 0: with torch.no_grad(

我已经从github运行了,这段代码在一张图片中生成所有生成的图像

如何将生成的所有图像分别保存到单个文件夹中?我不想在一张图片中保存所有图像

这就是它如何生成输出(示例图像

我想保存从训练过的模型生成的图像,不是作为一张图片中所有图像的样本,而是一个包含所有生成图像的文件

这是代码的一部分,我想更改它

# 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))

c_fixed_list
的每个元素上调用生成器
self.G
,以生成图像。所有结果都连接在一起,然后使用保存

我看不出是什么阻止你在循环中保存图像。类似于:

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)

c_fixed_list
的每个元素上调用生成器
self.G
,以生成图像。所有结果都连接在一起,然后使用保存

我看不出是什么阻止你在循环中保存图像。类似于:

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)

我已经尝试过这种方法,但每次都会给我一列图片,而不是一张图片。我编辑过我的答案,
x\u fake
是一整批,因此你会得到多张图片。我已经尝试过这种方法,但每次都会给我一列图片,而不是一张图片。我编辑过我的答案,
x\u fake
是一整批,因此您将获得多个图像。