本篇主要介绍基于类激活映射(Class Activation Mapping, CAM)的热度图绘制
算法原理出自论文: Learning Deep Features for Discriminative Localization
框架结构如下图所示:

作者在文中指出当前网络中普遍使用的GAP层,能够有效的反映目标物体周围的
特征;故作者采用了全连接层的特征来与CNN 网络的最后一个卷积层进行点乘运
算,用以增加feature map中目标物体的权重。
具体代码如下:
# simple implementation of CAM in PyTorch for the networks such as ResNet, DenseNet, SqueezeNet, Inception
import io
import requests
from PIL import Image
from torchvision import models, transforms
from torch.autograd import Variable
from torch.nn import functional as F
import numpy as np
import cv2
import pdb
# input image
LABELS_URL = 'https://s3.amazonaws.com/outcome-blog/imagenet/labels.json'
IMG_URL = 'http://media.mlive.com/news_impact/photo/9933031-large.jpg'
# networks such as googlenet, resnet, densenet

本文详细介绍了使用Class Activation Mapping (CAM)在PyTorch中绘制热度图的方法,探讨了算法原理和GAP层在目标定位中的作用,通过代码展示了如何结合全连接层和卷积层生成特征地图以突出目标物体。
4197

被折叠的 条评论
为什么被折叠?



