# 可视化tensor
import matplotlib.pyplot as plt
import numpy as np
x = x_rgb
x = (x - x.min()) / (x.max() - x.min() + 1e-10)
image = x.cuda().cpu().numpy()
image = image[0]
image = np.transpose(image, (1, 2, 0))
plt.axis('off')
plt.imshow(image)
plt.savefig('/data/Disk_D/pengcheng/Es.jpg', bbox_inches='tight', pad_inches=0.0)
plt.show()
make_grid
from torchvision.utils import make_grid,save_image
grid = make_grid(x,nrow=8)
grid = (grid-grid.min())/(grid.max()-grid.min()+1e-10)
save_image(grid.unsqueeze(1),'1.png')
可视化attn
# search
import matplotlib.pyplot as plt
import torch.nn.functional as F
# [0,0-11,:64,64:]
x = F.interpolate(attn[0, 9, :, :].reshape(256, 8, 8).unsqueeze(0), scale_factor=32,mode='bilinear').sum(dim=1).squeeze(0).cpu().numpy()
plt.axis('off')
plt.imshow(x, cmap ="jet")
plt.savefig('/data/Disk_D/pengcheng/Es.jpg',bbox_inches='tight', pad_inches=0.0)
import matplotlib.pyplot as plt
import numpy as np
import torch.nn.functional as F
x = x_rgb.mean(dim=1, keepdim=True)
x = F.interpolate(x, scale_factor=4, mode='bilinear')
x = (x - x.min()) / (x.max() - x.min() + 1e-10)
image = x.cuda().cpu().detach().numpy()
image = image[0]
image = np.transpose(image, (1, 2, 0))
plt.imshow(image)
plt.savefig('/data/Disk_D/pengcheng/Es.jpg')
可视化特征图
import matplotlib.pyplot as plt
import torch.nn.functional as F
x = x_s
x = F.interpolate(x, scale_factor=8, mode='bilinear')
x = x.mean(1, keepdim=True)
x = x[0].permute(1, 2, 0)
plt.axis('off')
plt.imshow(x.cpu().numpy(), cmap='jet')
plt.savefig('/data/Disk_D/pengcheng/Es.jpg', bbox_inches='tight', pad_inches=0.0)
plt.show()