测试过程中查看特征图

    def get_embedding(self, x):
        # x.shape: (64,3,320,240)
        img = x[3]
        img = torchvision.utils.make_grid(img).cpu().numpy()
        plt.imshow(np.transpose(img, (1, 2, 0)))
        plt.show()
        plt.imsave('visualize.png', np.transpose(img, (1, 2, 0)))

例如,get_embedding()是网络中的一个函数,其shape为(64,3,320,240),取第四张图片,即x[3]

其他参考https://blog.csdn.net/xiongchengluo1129/article/details/79078478中的方式二

注意,torchvision.utils.make_grid(img).cpu().numpy(),切记要转为cpu

以上即可查看。

 

去归一化

def convert_image_np(inp):
    """Convert a Tensor to numpy image."""
    inp = inp.cpu().data.numpy().transpose((1, 2, 0))
    mean = np.array([0.485, 0.456, 0.406])
    std = np.array([0.229, 0.224, 0.225])
    inp = std * inp + mean
    inp = np.clip(inp, 0, 1)
    return inp

img = convert_image_np(x[1])
plt.imshow(img)
plt.show()
cm = (dist - dist.min()) / (dist.max() - dist.min())
cmap=plt.cm.Blues
plt.imshow(cm.cpu().detach().numpy(), interpolation='nearest', cmap=cmap)
plt.show()

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值