一个简单直接的方法:
fea_srcnn = self.SRCNN_block_f(x) # 某层卷积后得到的特征图fea_srcnn
print(fea_srcnn.shape)# 查看特征图形状
plt.imshow(fea_srcnn[0].cpu().permute(1,2,0)[:,:,0])
# 取batch的第一个图,转为CPU下的tensor,交换维度使图像符合matplotlib,取第1个通道的特征图
plt.show()
参考:
- CNN(卷积神经网络)中间层可视化
- pytorch-中间层可视化
- 《Python深度学习》第5章第4节,卷积神经网络的可视化。