显著性检测 视觉注意机制 超像素分割
概述
视觉显著性检测(Visual saliency detection)指通过智能算法模拟人的视觉特点,提取图像中的显著区域(即人类感兴趣的区域)。
视觉注意机制
视觉注意机制(Visual Attention Mechanism,VA),即面对一个场景时,人类自动地对感兴趣区域进行处理而选择性地忽略不感兴趣区域,这些人们感兴趣区域被称之为显著性区域。如图所示,当看到这幅图像时,图中的四个人最能引起人的注意。
人类视觉注意机制有两种策略:
1)自底而上基于数据驱动的注意机制
利用图像的颜色、亮度、对比度、边缘等特征表示,判断目标区域和它周围像素的差异,进而计算图像区域的显著性。
对比度
Itti
把方向,颜色,亮度等特征进行了融合,通过融合特征的对比度得到了一张灰度图,灰度图中的灰度值代表像素点属于显著区域的概率。
无论是基于局部对比度还是基于全局对比度,基于对比度的方法仍然有缺陷,如显著区域内部会发生衰减
对比度累加算法(Accumulate Contrast, AC)
边缘先验
研究图像中的背景应该具有怎样的性质。如果能清楚的知道背景的性质,就可以得到图像中的背景,近而找到前景。
变换域
有效编码假设,该假设可以有效的消除了输入中的冗余。有效编码假设认为,图像可以被分解为两个部分,一个部分是新颖的,另一个部分是已知的。
受到有效编码假设的启发,认为图像显著区域检测问题中可以把显著区域视为新颖的部分,背景部分可以视为已知的部分。求出图像对数谱和幅度谱并除去幅度谱的冗余分量,利用原图像和冗余谱得到图像显著区域的残差谱。
剩余谱(Spectral Residual, SR)算法和频域变换算法
多先验融合
研究者们希望把尽可能多的显著区域检测的先验加入到显著性检测算法中,认为显著区域检测方法分为基于全局的方法和基于局部的方法。但是这两种方法都存在缺陷。人类视觉系统皮层在观察物体时是先中心后周围的。同时人类对于局部的,对比度比较高的区域比较敏感。提出了一种结合全局与局部特征的显著区域检测方法[
2)自上而下基于任务驱动的目标的注意机制
由人的“认知因素” 决定, 从高层视觉信息入手,比如知识、预期和当前的目标.对图像的特定特征来计算图像区域的显著性。监控任务下, 场景中的人体能引起注意。
类型
近年来研究者们在特征综合理论和Guided search等注意的心理学模型基础上, 提出了大量的可计算的注意力选择模型,以用于模拟人类的视觉注意机制。这些模型包括: 基于认知、贝叶斯、决策论、信息论、图模型、频域分析、基于模式分类、基于CNN的等人视觉注意模型。
- 认知模型
几乎所有模型都直接或间接地受认知模型启发而来,其一大特点是与心理学和神经学相结合。Itti模型(使用三个特征通道:颜色、属性、方向)是这一类模型的代表,也是后来很多衍生模型的基础
- 信息论模型
本质是最大化来自所处视觉环境的信息,其中最有影响力的模型是AIM模型。
- 图论模型
图模型是一个使用图对随机变量之间的条件依赖结构进行表示的概率框架。这种类型的注意模型,把眼动看作一个时间序列。由于有大量的隐变量影响眼球运动的产生,因此,该类注意模型使用了隐马尔科夫模型、动态贝叶斯网和条件随机场等方法。图模型可以对复杂的注意机制建模,因此能取得较好的预测能力,缺点在于模型的高复杂度,尤其涉及训练和可读性时。
典型模型有:基于图论的视觉显著性(Graph-based Visual Saliency , GBVS)模型等
- 首先,对输入图像提取多个通道的特征图;
利用n 种不同的线性和非线性滤波器 得到不同通道的特征图M - 然后,分别针对每个特征通道图计算对应的响应图;
为了计算特征图M 对应响应图A ,首先要将M 中像素点视为节点,构造有向全连接图G
G 中从点 p 到点q 的有向边的权重
d是点 p 和点q 的特征差异性
在G 上定义一个马尔科夫链,当一个节点与其邻域节点特征差异性较大时,那么将在这个节点上停留更长时间,基于停留时间可以计算出A中每个节点的响应值。
- 最后,将多个响应图A进行融合得到需要的显著图。
- 频域模型
基于频谱分析的显著性模型,形式简洁,易于解释和实现,并且在注意焦点预测和显著区域检测方面取得了很大的成功,但其生物合理性不是非常清楚。经典模型有:频谱残差的显著性检测模型(纯数学计算方法)。
https://www.cnblogs.com/ariel-dreamland/p/8919541.html
https://blog.csdn.net/tyq101010/article/details/48626995
显著性检测预处理
超像素分割
超分割是指根据一定的规则把图像分成若干个小块。后续的算法通常会对超像素而不是像素点进行操作。
图像边缘检测算法
简单线性迭代聚类(Simple Linear Iterative Clustering,SLIC)
https://blog.csdn.net/zhj_matlab/article/details/52986700
评价指标
(1) 精确召回(PR)。首先将显著图S转化为二进制掩码M,然后通过将M与地面真值G进行比较来计算Precission和Recall:
(2) F值:通常Precission和Recall都不能完全评估显著图的质量,为此提出F值作为Precission和Recall的非负权重的集权跳河平均:
(3) ROC(Receiver Operating Characteristic)曲线:是以假正率(FP_rate)和假负率(TP_rate)为轴的曲线
(4)ROC曲线下面积(AUC):AUC越大性能越好
(5) 平均绝对误差(MAE):进行更全面的比较。
具体算法
https://blog.csdn.net/l1l2l3q1q2q3/article/details/70056132?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-2
https://blog.csdn.net/cai13160674275/article/details/72991049?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-2
https://blog.csdn.net/tyq101010/article/details/48626955?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-1
https://www.cnblogs.com/CCBB/archive/2011/05/19/2051442.html
https://blog.csdn.net/gbyy42299/article/details/79427457
https://mmcheng.net/bing/
BING: Binarized Normed Gradients for Objectness Estimation at 300fps
显著性检测 视觉注意机制 超像素分割相关推荐
- 超像素分割与超像素合并/区域合并/多尺度分割
最近两年,超像素分割方法非常火爆,计算机视觉.模式识别许多方向都兴起了超像素研究的热潮,提出的方法也比较多.其实这不是个什么新鲜的东西,以前的许多分割算法所获得的结果都可以称为超像素,如Watersh ...
- SLIC超像素分割的算法介绍和源码分析
前述 最近在看显著性检测,发现很多算法的基础是超像素分割,而正在看的Saliency Optimization from Robust Background Detection算法的预处理是SLIC算 ...
- 论文解读:《自适应非局部随机游动用于图像超像素分割》
论文解读:<Adaptive Nonlocal Random Walks for Image Superpixel Segmentation> 1.文章概述 2.背景 2.1 现有的超像素 ...
- SLIC超像素分割详解
SLIC超像素分割详解(一) 超像素概念是2003年Xiaofeng Ren提出和发展起来的图像分割技术,是指具有相似纹理.颜色.亮度等特征的相邻像素构成的有一定视觉意义的不规则像素块.它利用像素之间 ...
- 图像分割:Python的SLIC超像素分割
图像分割:Python的SLIC超像素分割 1. 什么是超像素? 2. 为什么超像素在计算机视觉方面有重要的作用? 3. 简单线性迭代聚类(SLIC) 4. 效果图 5. 源码 参考 1. 什么是超像 ...
- VLFeat SLIC超像素分割(Cpp版)
这段时间对VLFeat的C接口非常的感兴趣,以前用的都是其Matlab接口,虽然很方便,而且提供的Matlab接口要比C接口功能更强大,但Matlab终归只能用来做一下快速的方法验证,所以想比较完整的 ...
- julia 调用python库_Julia调用Python实现超像素分割SLIC算法
最近想要在julia中实现 Simple Linear Iterative Clustering (SLIC) 算法对图像进行超像素分割,关于SLIC超像素分割算法,请参考SLIC Superpixe ...
- SLIC超像素分割方法
为了方便查找,记录SLIC超像素分割方法的介绍 简介 关键代码分析 应用
- 超像素分割(Superpixel Segmentation)发展
转自:http://blog.csdn.net/anshan1984/article/details/8918167 最近实验需要用到超像素的一些算法,之前也有看过一下分水岭这个老算法,想着找找近年来 ...
最新文章
- wpf单容器中的Chrome
- 前端学习笔记day01 html 标签之音频 embed+audio+video
- 最短路径-Floyd(佛洛伊德算法)
- Intellij idea 快键键
- 架构之旅~一个操作的返回要有一个标准,看我的公用消息类
- 9008刷机模式写入超时刷机帮_刷机帮教你优思高通刷机工具错误处理方法
- 【机器学习基石】感知机模型+PLA(二)
- C语言中写保护的作用,C语言考试试题练习
- 12306验证码破解思路分享
- 文本框、密码框、文本域
- 喜羊羊与灰太狼java_喜羊羊与灰太狼之懒洋洋风波
- 六、入门python第六课
- Android 画闹钟
- We Can't Subsidize The Banks Forever
- 19 | Linux 常用命令全拼
- 指针与引用有什么区别?
- mybatis联表查询的几种方式,association和collection的用法
- 《Ceph源码分析》——导读
- Google Chrome 谷歌浏览器语言设置
- 我竟在一篇AI顶会论文里见到了小猪佩奇...
热门文章
- c语言 输入一个以回车结束的字符串(少于80个字符),过滤掉所有的非十六进制数后,组成一个新的字符串(十六进制形式),输出该字符串并将其转换为十进制输出
- 华为平板何时升级鸿蒙,华为鸿蒙系统升级时间表 2021最新消息
- google浏览器全黑
- 微软 windows 系统键盘快捷键部分整理汇总笔记参考
- Open-E完整版和Lite版
- java ssl证书连接_JAVA连接HTTPS - HTTPS SSL 教程 - 数安时代(GDCA)SSL证书官网
- apache负载均衡 健康检查_Apache服务器配置负载均衡的方法 - Apache - 数安时代(GDCA)SSL证书官网...
- 软件测试能做到多少岁?
- mysql中插入中文数据
- 60 个程序员才懂的梗!太形象了!(笑死了!!!!!!!!!)