在训练我的网子时,我想可视化每个时期的视频。 到目前为止,我做了一个获取张量的函数(大小:[3,32,64,64]-3个批处理大小,32帧,64X64分辨率)。 我想将一些视频可视化为网格。 我尝试使用
import torch
import torchvision.utils as vutils
import numpy as np
import matplotlib.pyplot as plt
import torchvision.transforms as transforms
import scipy.misc
def show(img):
npimg = img.numpy()
plt.imshow(np.transpose(npimg, (1,2,0))interpolation='nearest')
video = torch.randn(3,32,64,64)
grid = vutils.make_grid(video)
show(grid) # here to use save_img func
但是失败了。有人知道怎么做吗?谢谢!
答案 0 :(得分:0)
这对我有用:
def show(img):
npimg = img.numpy()
plt.imshow(np.transpose(npimg, (1,2,0)), interpolation='nearest')
video = torch.randn(32,3,64,64)
grid = vutils.make_grid(video)
show(grid) # here to use save_img func
您忘记了用逗号分隔plt.imshow()的参数。 我交换框架和通道尺寸。我认为视频可以表示为张量形状的张量[#of_frames,#of_channels,hight,width]。