python - 'ToPILImage' 对象没有属性 'show'
问题描述
我正在做一个图像处理任务,我想连接两个图片站点。对于concatting,我先将图像转换为张量,然后将张量转换为PIL图像显示,但报错。有人可以帮帮我吗?这是我的代码:
import skimage.io as io
import torch
from torchvision import models, transforms
from PIL import Image
import matplotlib.pyplot as plt
from torchvision.transforms import ToPILImage
import numpy as np
from skimage import data_dir,io,color
coll1 = io.ImageCollection('F:\\code1/*.jpg')
coll2 = io.ImageCollection('F:\\code2/*.jpg')
a = torch.tensor(coll1)
print(a)
print(a.shape)
b = torch.tensor(coll2)
print(b)
print(b.shape)
c=torch.cat((a,b),1)
print(c.shape)
print(c)
img= transforms.ToPILImage()
img.show()
这是错误代码:
Traceback(最近一次调用最后):文件“F:/filelist.py”,第 39 行,在 img.show() AttributeError: 'ToPILImage' 对象没有属性 'show'
解决方案
该ToPILImage
方法接受张量或 ndarray 作为输入source。
您需要将单个图像张量转换为该ToPILImage
方法。从您的帖子中,我怀疑您传递的是一批图像张量而不是一个,因此出现了错误。
假设如果你想从张量可视化图像c
,
img = transforms.ToPILImage()(c)
img.show()
推荐阅读
- swift - 快速应用时内存不断增加
- c++ - 擦除删除习语如何与范围/约束算法一起使用?
- python - discord.py - 检查多个公会 id
- python - 没有可用的默认输出设备
- javascript - OnClick 具有特定类的许多元素之一并返回单击的元素的 id(更少的代码)
- javascript - React.js useRef / createRef 当前始终为空滚动
- terraform - 如果愿意,如何将 Terraform 脚本用作“通用”脚本、库或子例程?
- r - 使用ggplot2的plot_usmap时如何将比例设置为静态而不是动态
- excel - 将值粘贴到特定行的空白列中的宏
- python - 如何根据 Holoviews 中数据框的顺序/索引设置条形的顺序