显示feature的heatmap热力图

显示feature的heatmap

import cv2
import numpy as np
import scipy.misc

# feature:numpy array; 从网络的forward过程当中保存下来的feature map
# row_image:numpy array; 3*224*224
# output_jpg_name: eg. "out.jpg"

def show_heatmap(feature,output_jpg_name,row_image):
    data = feature
    heatmap = data.sum(0)/data.shape[0]
    heatmap = np.maximum(heatmap, 0)
    heatmap /= np.max(heatmap)
    heatmap = 1.0 - heatmap # 也可以不写,就是蓝色红色互换的作用
    heatmap = cv2.resize(heatmap, (224,224)) # (224,224)指的是图像的size,需要resize到原图大小
    heatmap = np.uint8(255 * heatmap)
    heatmap = cv2.applyColorMap(heatmap, cv2.COLORMAP_JET)
    row = row_image
    row = row.transpose(1,2,0)
    superimposed_img = heatmap*1.0 + row*0.5 # 1.0 和 0.5代表heatmap和row image的强度占比,可调整
    scipy.misc.imsave(output_jpg_name,superimposed_img)

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值