PyCharm运行plt.imshow()不展示图片

avatar 2024年03月20日12:01:45 0 514 views
博主分享免费Java教学视频,B站账号:Java刘哥 ,长期提供技术问题解决、项目定制:本站商品点此

在学习CIFAR10时,在 PyCharm中无法显示图片

跟着慕课网上的视频教程,仔细对比代码,无效,百度一番

解决办法如下

plt.imshow(npimg)  # 显示图像
plt.show()

果然有效

附上完整代码

import torch  # 张量库
import torchvision  # 计算机视觉库
import torchvision.transforms as transforms  # 数据转换模块

# 数据转换
transform = transforms.Compose(
    [
        transforms.ToTensor(),  # 转换为张量
        transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))  # 标准化
    ]
)
# 训练数据集
trainset = torchvision.datasets.CIFAR10(root='./data', train=True, download=True, transform=transform)  # 训练集
trainloader = torch.utils.data.DataLoader(trainset, batch_size=4, shuffle=True, num_workers=2)  # 训练加载器

# 测试数据集
testset = torchvision.datasets.CIFAR10(root='./data', train=False, download=True, transform=transform)  # 测试集
testloader = torch.utils.data.DataLoader(testset, batch_size=4, shuffle=False, num_workers=2)  # 测试加载器

import matplotlib.pyplot as plt  # 绘图库
import numpy as np  # 数组库

def imshow(img):
    img = img / 2 + 0.5  # 反标准化
    npimg = img.numpy()  # 转换为numpy数组
    npimg = np.transpose(npimg, (1, 2, 0))  # 转置
    plt.imshow(npimg)  # 显示图像
    plt.show()

# 随机获取一些训练图像
dataiter = iter(trainloader)  # 迭代器
images, labels = next(dataiter)  # 获取数据

# 显示图像
imshow(torchvision.utils.make_grid(images))

 

  • 微信
  • 交流学习,资料分享
  • weinxin
  • 个人淘宝
  • 店铺名:言曌博客咨询部

  • (部分商品未及时上架淘宝)
avatar

发表评论

avatar 登录者:匿名
匿名评论,评论回复后会有邮件通知

  

已通过评论:0   待审核评论数:0