如何将Torch张量转换为PIL图像?


ToPILImage() 变换将 torch 张量转换为 PIL 图像。**torchvision.transforms** 模块提供了许多重要的变换,可用于对图像数据执行不同类型的操作。**ToPILImage()** 接受形状为 **[C, H, W]** 的 torch 张量,其中 **C、H** 和 **W** 分别是相应 PIL 图像的通道数、图像高度和宽度。

步骤

我们可以使用以下步骤将 torch 张量转换为 PIL 图像:

  • 导入所需的库。在以下所有示例中,所需的 Python 库为 **torch、Pillow** 和 **torchvision**。确保您已安装它们。

import torch
import torchvision
import torchvision.transforms as T
from PIL import Image
  • 定义形状为 **[C, H, W]** 的 torch 张量。

tensor = torch.rand(3,256,256)
  • 定义一个变换,将 torch 张量转换为 PIL 图像。

transform = T.ToPILImage()
  • 将上述定义的变换应用于输入 torch 张量,将其转换为 PIL 图像。

img = transform(tensor)
  • 显示转换后的 PIL 图像。

img.show()

示例

请看下面的示例:

# import required libraries
import torch
import torchvision.transforms as T
from PIL import Image

# define a torch tensor
tensor = torch.rand(3,300,700)

# define a transform to convert a tensor to PIL image
transform = T.ToPILImage()

# convert the tensor to PIL image using above transform
img = transform(tensor)

# display the PIL image
img.show()

输出

它将产生以下输出:

更新于:2023年9月10日

42K+ 次浏览

启动您的 职业生涯

通过完成课程获得认证

开始学习
广告
© . All rights reserved.