场景:假设已训练好model,并选了最佳模型best_net,现在想提取网络层的特征并绘出热力图。

1、oriImg = cv2.imread(image_path) #读取一张图片,image_path是图片路径

2、data = torch.from_numpy(oriImg).type(torch.FloatTensor).cuda()  
     output = best_net(data)   #前向计算,这是best_net上权值结合data生成了网络层的特征值。

3、获取网络层特征值:

activation = {}
def get_activation(name):def hook(model, input, output):activation[name] = output.detach()return hook# normalizing the output
def normalize_output(img):img = img - img.min()img = img / img.max()return img#conv1
best_net.conv1.register_forward_hook(get_activation('conv1'))#maxpool
feature = activation['conv1'].squeeze()
feature_0 = feature[0].cpu().numpy()

假设这里获取卷积层conv1的特征层,然后提取第一个通道。

4、可视化特征值,即可显示特征热力图。

feature_0 = normalize_output(feature_0)
feature_0 = np.uint8(255 * feature_0)
#plot
height, width, _ = oriImg.shape
featuremap = cv2.applyColorMap(cv2.resize(feature_0,(width, height)), cv2.COLORMAP_JET)
#featuremap = featuremap * 0.3 + oriImg * 0.5
plt.imshow(featuremap)
plt.axis('off')

结果:

Feature Map of Pytorch示例相关推荐

  1. 卷积后feature map尺寸计算公式

    像素宽度:W(Width) 填充大小:P(Padding) 卷积核大小:K(Kernel-size) 步长大小:S(stride) 卷积后所得feature map尺寸大小计算公式如下: 补充: 1. ...

  2. feature map 意义_FeatureMap Viewer以及中心化对统计分布变化的影响讨论

    Introduction 准备做一个feature map浏览器,可以做些intuitive的观察.code在这里(tool目录下放的支持变形输入的module.py模块). 可以支持对feature ...

  3. 计算feature map大小

    输入:N0*C0*H0*W0 输出:N1*C1*H1*W1 输出的feature map大小: H1=H0+2×pad−kernel_sizestride+1H1=\frac{H0+2\times p ...

  4. 理解CNN中的特征图 feature map

    feature map的含义 在每个卷积层,数据都是以三维形式存在的.你可以把它看成许多个二维图片叠在一起,其中每一个称为一个feature map.在输入层,如果是灰度图片,那就只有一个featur ...

  5. AlexNet层级分析(涉及:卷积核操作下下层网络特征图size计算;对通道和卷积核尺寸及通道前层feature map和卷积核的运算关系的解释)

    先盗一图,摘自ImageNet Classification with Deep Convolutional Neural Networks(Hinton) 注:看到这个结构,可以得到以下结论(以2. ...

  6. 原始图片中的ROI如何映射到到feature map?(转)

    链接:https://zhuanlan.zhihu.com/p/24780433 链接:https://www.cnblogs.com/objectDetect/p/5947169.html 在SPP ...

  7. 深入理解深度学习中的【卷积】和 feature map

    深入理解深度学习中的卷积和feature map        虽然深度学习和CNN的概念已经传遍大街小巷,本文还是说一说CNN中的卷积.        本文主要介绍卷积层的结构.下图显示了CNN中最 ...

  8. 卷积神经网络中feature map的含义

    卷积神经网络中feature map的含义 在每个卷积层,数据都是以三维形式存在的.你可以把它看成许多个二维图片叠在一起,其中每一个称为一个feature map.在输入层,如果是灰度图片,那就只有一 ...

  9. SSD系列算法原理讲解----(1)SSD系列算法介绍(主干网络、多尺度Feature Map预测)(笔记)

    SSD系列算法原理介绍 SSD算法介绍: Single Shot MultiBox Detector(One-stage方法) - Wei Liu在ECCV 2016提出 - 直接回归目标类别和位置 ...

最新文章

  1. 4、通过uiautomatorviewer实现appium元素定位
  2. java书籍_学习Java最好的10本书,从入门到精通
  3. Flutter 中的Error的捕获及处理
  4. mariadb 最新精简压缩版 win64 解压即用
  5. PHP高级——抽象类与接口的区别
  6. python判断点在矩形内_判断平面内矩形和圆是否有交点的python实现
  7. Python生成器实现及yield关键字
  8. Memcached 教程 | 菜鸟教程
  9. Android 模拟器 GPU ON
  10. 设计OA系统的用户-角色-权限分配
  11. 2021年最新C语言教程入门,C语言自学教程(最全整理)
  12. pdf转换成word后有文字叠加_word字体出现重叠 pdf转换成word
  13. 【Linux】Linux操作系统简单介绍 ----vim编辑器
  14. 一个小蜜蜂游戏的源代码
  15. 多线程不能不知道的之单线程和多线程的比较
  16. a4如何打印双面小册子_用word如何打印小册子(一张A4打两张那种的)
  17. 请问?外包到腾讯工作是怎样一种体验?
  18. IDEA—Maven项目JDK版本设置
  19. azdb文件怎么打开_az mysql db
  20. PostgreSQL 之 学籍管理示例

热门文章

  1. mysql定期执行备份语句_【mysql】备份篇1:使用系统计划任务+mysqldump 定时备份mysql数据库 不用输入密码自动导出sql文件...
  2. Redis:一致性Hash算法
  3. 10没有基于策略的qos_基于强化学习的用户移动场景下空中基站3D位置高效部署...
  4. Win2003服务器设置防火墙图文教程
  5. 函数名的应用(第一对象) 闭包 装饰器
  6. switch-case和if-else可互换时
  7. 自动生成get,set方法
  8. HTML5-SVG-嵌入到html的几种方式
  9. 深入浅出 Java Concurrency (33): 线程池 part 6 线程池的实现及原理 (1)[转]
  10. android启动---lk入口文件crt0.s解析