Github链接:https://github.com/JonnesLin/Evison
程序
使用Evision工具可视化pytorch模型的网络特征图
from Evison import Display, show_network
from torchvision import models
from PIL import Image
# 构建一个模型
network = models.mobilenet_v2(pretrained=True)
# 展示可以可视化的 特征层的 特征图
show_network(network)
#选择展示 features.18 层的特征图
visual_layer = 'features.18'
#norm参数为标准化参数 RGB的均值和方差; img_size是可视化图片的尺寸
display = Display(network,visual_layer,norm=((0.485, 0.456, 0.406),
(0.229, 0.224, 0.225)),img_size=(448,448))
#PIL读取图片并resize到(448,488)
image = Image.open(r'C:\Users\DELL\Desktop\2.jpg').resize((448,448))
display.save(image)
#将原始图片保存到display.save()的同一文件夹下
image.save('./visualization/origin.jpg')
顺便记录一下pytorch中hook的使用方式
结果
以下依次是原始图片,灰色特征图,热力图,热力图与原始图片叠加图