当前位置: 首页 > news >正文

图像显著性目标检测

一、概述
 1、定义

 图像显著性检测(Saliency Detection,SD),  指通过智能算法模拟人的视觉系统特点,预测人类的视觉凝视点和眼动,提取图像中的显著区域(即人类感兴趣的区域),可以广泛用于目标识别、图像编辑以及图像检索等领域,是计算机视觉领域关键的图像分析技术。
示例如图所示,左图为原图,右图为经过显著性检测算法的结果图

2、方法分类

显著性目标检测主要可以分为两个阶段,分别是传统尺度空间手工特征的注意预测算法和基于深度学习的注意预测算法。
第一阶段为等传统尺度空间手工特征的注意预测算法。第二个阶段,随着计算机神经网络技术的革新和发展,基于深度学习的注意预测算法大量出现。
传统注意预测算法,指的是基于强度、颜色和方向等传统特征的算法,由于其特征提取和学习方法都以图像本身空间特征为基础,缺乏多语义等深度特征,相较于人眼仍然具有较大差距,很难检测到人眼注视信息包含的大量高级语义信息,在预测效果的提高上有局限。此外,不同人的注意力机制存在一定差异,在大部分传统模型中未加入先验信息,处理相对困难。
深度学习注意预测算法是近年来发展较为迅速的方法。由于深度学习算法需要大量的训练数据,同时神经网络的设计上针对不同任务需要不断变更,算法较复杂。另外,深度学习模型一般存在可解释性差的共性缺点。

# 二、算法模型

## 1、ITTI视觉显著性模型
TTI视觉显著性模型是根据早期灵长类动物的视觉神经系统设计的一种视觉注意模型[1]。该模型首先利用高斯采样方法构建图像的颜色、亮度和方向的高斯金字塔,然后利用高斯金字塔计算图像的亮度特征图、颜色特征图和方向特征图,最后结合不同尺度的特征图即可获得亮度、颜色和方向显著图,相加得到最终的视觉显著图,如下图所示(引用自原文)。该方法不需要训练学习的过程,仅通过纯数学方法,便可完成显著图的计算。
![在这里插入图片描述](https://img-blog.csdnimg.cn/3d4aa20cb67e4ffc9f2364ac1867fc54.png)
## 高斯金字塔的构建
高斯金字塔包括三部分,分别是亮度、颜色和方向。

首先要对r、g、b三个通道做高斯降采样,从而获得九个尺度下的三通道图像、、,其中。

然后即可构建亮度高斯金字塔,在九个尺度下计算获得,这里需要根据再对、、做归一化处理,以便将色调与亮度分离,原因在于低亮度下色调难以分辨。而每一个像素点的归一化仅对亮度的点进行,而其余的点将置零,其中表示点所处的尺度的图像中最大的亮度值。

接着即可构建颜色高斯金字塔,在九个尺度下计算
![请添加图片描述](https://img-blog.csdnimg.cn/8e0e6da3aaf84cdcafabd73d2a8e8a34.jpeg)

以上四个分别代表红、绿、蓝、黄的颜色高斯金字塔。

最后利用Gabor滤波器构建Gabor方向金字塔,其中,角度分别为0 、45、90、135 。

上述获得亮度、颜色和方向高斯金字塔后,利用Center-Surround方法(Center(c)即精细尺度,Surround(s)即粗尺度)计算对应的特征图。计算方法为:![请添加图片描述](https://img-blog.csdnimg.cn/2986b337d8734df8acb8fe5b8e54f7e4.jpeg)
其中c 为2 3 4,而s=c+3或s=c+3。再通过减法操作调整图片到同一大小,I表示亮度特征图,RG和BY表示颜色特征图,这是利用了大脑皮质的“颜色双对立”系统,O表示方向特征图。所以总共生成的特征图有6+12+6x4=42张特征图。

## 显著图的构建
模型在缺少自顶而下的监督机制的条件下,提出一个特征图归一化操作运算符![请添加图片描述](https://img-blog.csdnimg.cn/59d20cf9ea0e412bac2ab4451e87dee2.gif)
,该操作过程基于大脑皮质侧向抑制机智,可以增强存在少量活动峰(即尖锐值)的特征图,抑制存在大量活动峰的特征图。其操作方法如下:

(1)首先对输入的特征图归一化至统一范围[0...M];

(2)找到该特征图的全局最大值M所在位置并计算其他所有局部最大值的均值m,然后把整个特征图同乘以(M-m)^2;

如下图所示,中间列上图便是存在大量活动峰的特征图,经过![请添加图片描述](https://img-blog.csdnimg.cn/29bddedac5ca41208d996d3418eb8daa.gif)操作后得到的特征图整体较为平滑,活动峰被抑制,中间列下图是存在少量活动峰的特征图,经过操作后得到的特征图在原有的活动峰处得到了增强。

![在这里插入图片描述](https://img-blog.csdnimg.cn/a9898d62def34afe9ec28b4b5bf24114.png#pic_center)
通过以上操作符结合获得的42张特征图,即可计算最后的视觉显著图,计算方法如下:
![在这里插入图片描述](https://img-blog.csdnimg.cn/fc97c2be1b2a4d11b4ec4562f7097b3a.jpeg#pic_center)
![在这里插入图片描述](https://img-blog.csdnimg.cn/ad99f51818644ab085cbc7809b64eba4.jpeg#pic_center)
一般在目标检测中,根据设定的阈值检测显著性目标,设定的阈值逐渐下降,得到的显著性目标就会逐渐增多,同时检测时间也会增加,论文实验如图所示。
![在这里插入图片描述](https://img-blog.csdnimg.cn/ccfc6249072f42bbb17cdc04d80d7950.png#pic_center)

## LC算法
LC算法的基本思想是:计算某个像素在整个图像上的全局对比度,即该像素与图像中其他所有像素在颜色上的距离之和作为该像素的显著值 [3]  。
![在这里插入图片描述](https://img-blog.csdnimg.cn/d9700cc1896445a392fd4fad7a0894a1.jpeg#pic_center)
HC算法
HC算法和LC算法没有本质的区别,HC算法相比于LC算法考虑了彩色信息,而不是像LC那样只用像素的灰度信息,由于彩色图像最多有256*256*256种颜色,因此直接采用基于直方图技术的方案不适用于彩色图片。但是实际上一幅彩色图像并不会用到那么多种颜色,因此提出了降低颜色数量的方案,将RGB各分量分别映射成12等份,则隐射后的图最多只有12*12*12种颜色,这样就可以构造一个较小的直方图用来加速,但是由于过渡量化会对结果带来一定的影响,因此又用了一个平滑的过程。 最后和LC不同的是,对图像处理在Lab空间进行的,而由于Lab空间和RGB并不是完全对应的,其量化过程还是在RGB空间完成的 [

AC
![在这里插入图片描述](https://img-blog.csdnimg.cn/1d70952780fb43448d9997240f40a000.jpeg#pic_center)
FT

![在这里插入图片描述](https://img-blog.csdnimg.cn/fa131be057a1465d9a1ffd16924a8f6e.jpeg#pic_center)

# 参考
https://blog.csdn.net/weixin_42647783/article/details/82532179
https://baike.baidu.com/item/%E8%A7%86%E8%A7%89%E6%98%BE%E8%91%97%E6%80%A7%E6%A3%80%E6%B5%8B/22761214

相关文章:

图像显著性目标检测

一、概述 1、定义 图像显著性检测(Saliency Detection,SD), 指通过智能算法模拟人的视觉系统特点,预测人类的视觉凝视点和眼动,提取图像中的显著区域(即人类感兴趣的区域),可以广泛用于目标识别、图像编辑以及图像检索等领域&am…...

力扣-查找重复的电子邮箱

大家好,我是空空star,本篇带大家了解一道简单的力扣sql练习题。 文章目录前言一、题目:182. 查找重复的电子邮箱二、解题1.正确示范①提交SQL运行结果2.正确示范②提交SQL运行结果3.正确示范③提交SQL运行结果4.正确示范④提交SQL运行结果总结…...

如何选择正规可靠的ISO认证机构?

ISO认证其实早已融入我们生活中,因为日常生活很多产品都有认证标识,企业办理ISO体系就需要找第三方认证公司,市面上这种公司也有不少,但找到合适可靠、认真负责的还是不易,尤其是体系认证有年审,如何留住客…...

React源码解读之更新的创建

React 的鲜活生命起源于 ReactDOM.render ,这个过程会为它的一生储备好很多必需品,我们顺着这个线索,一探婴儿般 React 应用诞生之初的悦然。 更新创建的操作我们总结为以下两种场景 ReactDOM.rendersetStateforceUpdate ReactDom.render …...

【程序人生】从土木专员到网易测试工程师,薪资翻3倍,他经历了什么?

转行对于很多人来说,是一件艰难而又纠结的事情,或许缺乏勇气,或许缺乏魄力,或许内心深处不愿打破平衡。可对于我来说,转行是一件不可不为的事情,因为那意味着新的方向、新的希望。我是学工程管理的&#xf…...

C++——C++11第二篇

目录 可变参数模板 lambda表达式 lambda表达式语法 捕获列表说明 可变参数模板 可变参数:可以有0到n个参数,如之前学过的 Printf C11的新特性可变参数模板能够让您创建可以接受可变参数的函数模板和类模板 模板参数包 // Args是一个模板参数包&…...

14.最长公共前缀

编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。示例 1:输入:strs ["flower","flow","flight"]输出:"fl"示例 2:输入&…...

【免费教程】 SWMM在城市水环境治理中的应用及案例分析

SWMMSWMM(storm water management model,暴雨洪水管理模型)是一个动态的降水-径流模拟模型,主要用于模拟城市某一单一降水事件或长期的水量和水质模拟。EPA(Environmental Protection Agency,环境保护署&am…...

SortableJS/Sortable拖拽组件,使用详细(Sortablejs安装使用)

简述 作为一名前端开发人员,在工作中难免会遇到拖拽功能,分享一个github上一个不错的拖拽js库,能满足我们在项目开发中的需要,支持Vue和React,下面是SortableJS的使用详细; 这个是sortableJS中文官方文档&…...

Heartbeat+Nginx实验

HeartbeatNginx实验 Heartbeat是什么? Heartbeat是 Linux-HA 工程的一个组件,自1999 年开始到现在,发布了众多版本,是目前开源 Linux-HA项 目成功的一个例子,在行业内得到了广泛的应用 构建规划: 两台后…...

JavaEE|网络编程之套接字 TCP

文章目录一、ServerSocket API构造方法常用方法二、Socket API构造方法常用方法注意事项三、TCP中的长短连接E1:一发一收(短连接)E2:请求响应(短连接)E3:多线程下的TCP回响服务器说明:这部分说实话有点懵&a…...

Robot Framework自动化测试---元素定位

不要误认为Robot framework 只是个web UI测试工具,更正确的理解Robot framework是个测试框架,之所以可以拿来做web UI层的自动化是国为我们加入了selenium2的API。比如笔者所处工作中,更多的是拿Robot framework来做数据库的接口测试&#xf…...

ASP.NET Core中的路由

传统路由 app.MapControllerRoute( name: "default", pattern: "{controllerHome}/{actionIndex}/{id?}"); MapControllerRoute用于创建单个路由。 单个路由命名为 default 路由 。大多数具有控制器和视图的应用都使用类似 default 路由的路由模板。 之所…...

VBA提高篇_26 Textbox多行_ListBox_ComboBox

文章目录1. 文本框多行换行2. ListBox: 列表框2.1 列表框中添加条目的三种方法:3. ComboBox 组合框: 属性方法等同于以上ListBox1. 文本框多行换行 MultiLine: 控制文本框多行自动换行() Enterkeybehevior: True 代表允许在文本框中使用回车键换行 WordWrap: True 代表自动换…...

python环境配置

python环境配置一、ADB环境配置1、ADB下载路径:2、点击下载3、解压并放到本地磁盘4、配置ADB环境变量二、Python环境配置1、Python下载路径:2、点击下载(默认下载最新的)3、解压并放到本地磁盘4、配置Python环境变量5、配置pip环境变量三、Pycharm安装1、pycharm下载路径:2、点…...

集算器连接外部库

1. 配置jar包将以下jar包从报表的类路径(【安装根目录】\report\lib或【安装根目录】\report\web\webapps\demo\WEB-INF\lib)中拷贝到集算器目录(【安装根目录】\esProc\ extlib\mongoCli);润乾外部库核心jar为:scu-mo…...

力扣刷题|216.组合总和 III、17.电话号码的字母组合

文章目录LeetCode 216.组合总和题目链接🔗思路LeetCode 17.电话号码的字母组合题目链接🔗思路LeetCode 216.组合总和 题目链接🔗 LeetCode 216.组合总和 思路 本题就是在[1,2,3,4,5,6,7,8,9]这个集合中找到和为n的k个数的组合。 相对于7…...

机器学习笔记之谱聚类(一)k-Means聚类算法介绍

机器学习笔记之谱聚类——K-Means聚类算法介绍引言回顾:高斯混合模型聚类任务基本介绍距离计算k-Means\text{k-Means}k-Means算法介绍k-Means\text{k-Means}k-Means算法示例k-Means\text{k-Means}k-Means算法与高斯混合模型的关系k-Means\text{k-Means}k-Means算法的…...

云原生周刊 | 2023 年热门:云 IDE、Web Assembly 和 SBOM | 2023-02-20

在 CloudNative SecurityCon 上,云原生计算基金会的首席技术官 Chris Aniszczyk 在 The New Stack Makers 播客的这一集中强调了 2023 年正在形成几个趋势: 随着 GitHub 的 Codespaces 平台通过集成到 GitHub 服务中获得认可,云 IDE&#xf…...

python 打包EXE

注: 从个人博客园 移植而来 环境: Windows7 Python 2.7 参考: 使用pyinstaller打包python程序 Pyinstaller 打包发布经验总结 Using PyInstaller 简介 使用python引用第三方的各种模块编写一个工具后,如果想发给其他人&…...

智慧医疗能源事业线深度画像分析(上)

引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

Zustand 状态管理库:极简而强大的解决方案

Zustand 是一个轻量级、快速和可扩展的状态管理库,特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...

JVM垃圾回收机制全解析

Java虚拟机(JVM)中的垃圾收集器(Garbage Collector,简称GC)是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象,从而释放内存空间,避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...

【AI学习】三、AI算法中的向量

在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...

汇编常见指令

汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?

在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...

管理学院权限管理系统开发总结

文章目录 🎓 管理学院权限管理系统开发总结 - 现代化Web应用实践之路📝 项目概述🏗️ 技术架构设计后端技术栈前端技术栈 💡 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 🗄️ 数据库设…...

iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈

在日常iOS开发过程中,性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期,开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发,但背后往往隐藏着系统资源调度不当…...

CRMEB 中 PHP 短信扩展开发:涵盖一号通、阿里云、腾讯云、创蓝

目前已有一号通短信、阿里云短信、腾讯云短信扩展 扩展入口文件 文件目录 crmeb\services\sms\Sms.php 默认驱动类型为:一号通 namespace crmeb\services\sms;use crmeb\basic\BaseManager; use crmeb\services\AccessTokenServeService; use crmeb\services\sms\…...

探索Selenium:自动化测试的神奇钥匙

目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...