张量板显示不完整图像

问题描述 投票:0回答:1

enter image description here

为什么tensorboard显示的图像不完整

import torchvision
from torch.utils.data import DataLoader
from torch.utils.tensorboard import SummaryWriter
test_data = torchvision.datasets.CIFAR10(root="../torvision/dataset_test", train=False,transform=torchvision.transforms.ToTensor())
test_loader = DataLoader(test_data, batch_size=64, shuffle=False, num_workers=0, drop_last=False)
writer = SummaryWriter("loader_log")
step = 0
for data in test_data:
    img, target = data
    writer.add_image("test_data", img, step)
    step += 1
step_2 = 0
for data_2 in test_loader:
    img_2, target_2 = data_2
    writer.add_images("test_loader", img_2, step_2)
    step_2 += 1
writer.close()

data_loader 应显示 64 张图像

python-3.x pytorch tensorboard
1个回答
0
投票

test_data
,迭代数据集并单独添加每个图像,并为每个图像添加唯一的标签。

test_loader
,迭代数据加载器并使用 add_images 将整批图像添加为网格。

import torchvision
from torch.utils.data import DataLoader
from torch.utils.tensorboard import SummaryWriter

test_data = torchvision.datasets.CIFAR10(root="../torvision/dataset_test", train=False, transform=torchvision.transforms.ToTensor())
test_loader = DataLoader(test_data, batch_size=64, shuffle=False, num_workers=0, drop_last=False)
writer = SummaryWriter("loader_log")

# Add images from the test_data one by one
for i, (img, target) in enumerate(test_data):
    writer.add_image(f"test_data/{i}", img, i)

# Add images from the test_loader as batches
for i, (batch_img, batch_target) in enumerate(test_loader):
    writer.add_images("test_loader", batch_img, i)

writer.close()

© www.soinside.com 2019 - 2024. All rights reserved.