基于Keras实现的代码文档 (图+说明)

"Deep Inside Convolutional Networks: Visualising Image Classification Models and Saliency Maps"

saliency map即特征图,可以告诉我们图像中的像素点对图像分类结果的影响。

计算它的时候首先要计算与图像像素对应的正确分类中的标准化分数的梯度(这是一个标量)。如果图像的形状是(3, H, W),这个梯度的形状也是(3, H, W);对于图像中的每个像素点,这个梯度告诉我们当像素点发生轻微改变时,正确分类分数变化的幅度。

计算saliency map的时候,需要计算出梯度的绝对值,然后再取三个颜色通道的最大值;因此最后的saliency map的形状是(H, W)为一个通道的灰度图。

下图即为例子:

上图为图像,下图为特征图,可以看到下图中亮色部分为神经网络感兴趣的部分。

理论依据

需要注意一下:

saliency map [转]的更多相关文章

  1. Neuron:Neural activities in V1 create a bottom-up saliency map

    Neural activities in V1 create a bottom-up saliency map 本文证明了人类的初级视皮层可以在视觉信息加工的非常早期阶段,生成视觉显著图,用以引导空间 ...

  2. PAMI 2010 Context-aware saliency detection

    This is a highly-cited paper. The context aware saliency proposed based on four principles, which ca ...

  3. [精读]Spationtemporal Saliency Detection Using Textural Contrast and Its Applications

    Spationtemporal Saliency Detection Using Textural Contrast and Its Applications Last Edit 2013/12/3 ...

  4. 显著性检测(saliency detection)评价指标之sAUC(shuffled AUC)的Matlab代码实现

    AUC_shuffled.m function [score,tp,fp] = AUC_shuffled(saliencyMap, fixationMap, otherMap, Nsplits, st ...

  5. 显著性检测(saliency detection)评价指标之NSS的Matlab代码实现

    calcNSSscore.m function [ score ] = calcNSSscore( salMap, eyeMap ) %calcNSSscore Calculate NSS score ...

  6. 显著性检测(saliency detection)评价指标之KL散度距离Matlab代码实现

    步骤1:先定义KLdiv函数: function score = KLdiv(saliencyMap, fixationMap) % saliencyMap is the saliency map % ...

  7. Saliency Detection via Graph-Based Manifold Ranking

    Saliency Detection via Graph-Based Manifold Ranking https://www.yuque.com/lart/papers 本文不是按照之前的论文那样, ...

  8. Saliency Detection: A Spectral Residual Approach

    Saliency Detection: A Spectral Residual Approach 题目:Saliency Detection: A Spectral Residual Approach ...

  9. Learning to Promote Saliency Detectors

    Learning to Promote Saliency Detectors 原本放在了思否上, 但是公式支持不好, csdn广告太多, 在博客园/掘金上发一下 https://github.com/ ...

随机推荐

  1. Swift 属性 函数

    如今看cocoachina上得文章越来越有质量了,果断分享一下  原文: http://www.cocoachina.com/newbie/basic/2014/0611/8773.html 函数 函 ...

  2. YAML Class ID Reference

    Classes Ordered by ID Number ID Class 1 GameObject 2 Component 3 LevelGameManager 4 Transform 5 Time ...

  3. oracle-srvctl-output

    ############################## [grid@rac01 ~]$ crsctl query crs administratorCRS Administrator List: ...

  4. day 29 socketsetserver 模块

    1.FTP上传/下载服务端/客户端. --------------------------------------------------------------------------------- ...

  5. oracle之 反向键索引

    反向键索引是一种B-tree索引,它在保持列顺序的同时,物理地改变每个索引键的字节(反向键索引除了ROWID和still之外,反转每个索引列的字节).例如,如果索引键为20,如果在十六进制中存储为这个 ...

  6. babel-loader和webpack UglifyJS一起使用时console的问题

    一起使用babel-loader和webpack UglifyJS时,babel会优先处理一遍代码,编译后的代码才进入webpack进行打包和优化操作. 出处:https://www.tangshua ...

  7. opengl 几何着色器

    绘制4条线段 #define GLEW_STATIC #include <GL/glew.h> #include <GLFW/glfw3.h> #include "S ...

  8. struts中的dojo控件sx:submit布局问题

    想在一个四列的表格中插入两个按钮,希望实现下面的布局效果: 其中保存按钮为<sx:submit />控件.按照下面的代码布局: <tr><td align="c ...

  9. JS 缓存

    JSON.stringify() 方法用于将 JavaScript 值转换为 JSON 字符串. 例: JSON.parse(jsonstr); //可以将json字符串转换成json对象 JSON. ...

  10. 实践中总结出来对heapq的一点理解

    关于heapq(优先级队列算法): heapq.heapify(x):个人理解就是以线性时间(O(n)时间)将一个list转换经过堆排序之后在放入list中,而这种堆特点是根节点必须小于左右节点.曾听 ...