在Torch中将3D Tensor保存为图像

如何在Torch中将3D Tensor保存为图像?

我使用的是image包:https://github.com/torch/image/blob/master/doc/saveload.md

将3D Tensor保存为图像的代码如下:

  image.save('train100.jpg', trainData[100])

当我加载时:

x = image.load('train100.jpg'.jpg' )

我发现x与原始Tensor不同,保存的图像是全白的。

这是代码:

require 'torch'
require 'image'
local trainset = torch.load('cifar.torch/cifar10-train.t7')
local testset = torch.load('cifar.torch/cifar10-test.t7')

local trainData = trainset.data:float()
local trainLabels = trainset.label:float():add(1)

testData = testset.data:float()
testLabels = testset.label:float():add(1)

image.save('train100.jpg', trainData[100])

x = image.load('train100.jpg' )
print(trainData[100])
print(x)
点赞
用户3175582
用户3175582

这个问题可以通过将张量进行规范化来解决:

image.save('train100.jpg', trainData[100])
2016-11-21 08:10:42
用户2670420
用户2670420

你可以使用 torchvision.utils.save_image 来实现这个功能。

参数的具体信息可以在这里查询。

2018-03-14 21:44:36