显著图(Saliency map)

这篇具有很好参考价值的文章主要介绍了显著图(Saliency map)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

概念

在计算机视觉中,显著图(Saliency map)是一种突出人们眼睛首先关注的区域的图像。显著图的目标是反映像素对人类视觉系统的重要程度

显著性是图像的突出部分,我们的大脑会特别关注这个部分。例如,大家有没有曾经在看广告的时候被一些特别的内容吸引,为此我们还特意停下来多看了一会儿?这就是广告的显著性,即使让我们可以一眼看到广告,也会被他吸引。

例如,在这个图像中,一个人首先看房子和灯塔,所以在显著图上它们应该突出显示。
显著图(Saliency map)
在人工智能和计算机视觉中设计的显著图通常与由生物或自然视觉构建的实际显著图不同。

应用

显著图在各种不同的问题中都有应用。
一些通用应用:

  • 图像和视频压缩:人眼只关注画面中感兴趣的一小块区域。因此,没有必要以统一的质量压缩整个帧。根据作者的说法,使用显著图可以减少具有相同视觉感知的视频的最终尺寸。
  • 图像和视频质量评估:图像或视频质量指标的主要任务是与用户意见高度相关。显著区域的差异更加重要,因此对质量得分的贡献更大。
  • 图像裁剪:它旨在通过扩大或缩小非信息区域来调整图像的大小。因此,重定向算法依赖于显著图的可用性,这些显著图可以准确估计所有显著图像细节。
  • 对象检测和识别:我们可以将其用于图像中最有可能包含对象的最显著区域,而不是将计算复杂的算法应用于整个图像。
  • 图像分割
    显著性估计可以看作是图像分割的一个实例。在计算机视觉中,图像分割是将数字图像划分为多个片段(像素集,也称为超像素)的过程。分割的目标是将图像的表示简化和/或更改为更有意义且更易于分析的东西。图像分割通常用于定位图像中的对象和边界(直线、曲线等)。更准确地说,图像分割是为图像中的每个像素分配标签的过程,使得具有相同标签的像素共享某些特征。

算法

传统算法

在 OpenCV 中实现了三种形式的经典显著性估计算法:

  • 静态显著性:依靠图像特征和统计数据来定位图像的感兴趣区域。
  • 运动显著性:依赖于视频中的运动,由光流检测。移动的物体被认为是突出的。
  • 物体性:物体性反映了图像窗口覆盖物体的可能性。这些算法生成一组边界框,表示对象可能位于图像中的位置。

显著性检测的Saliency模块是在opencv-contrib-python这个库中的。
显著图(Saliency map)

pip install opencv-contrib-python

和opencv-python无法共存

在pypi中解释到:

run pip install opencv-python if you need only main modules

run pip install opencv-contrib-python if you need both main and contrib modules
 (check extra modules listing from OpenCV documentation)

opencv-python 是只包含了主要模块的包,opencv-contrib-python包含了主要模块以及扩展模块,扩展模块主要是包含了一些带专利的收费算法(如shift特征检测)以及一些在测试的新的算法(稳定后会合并到主要模块)。
这个链接是关于这个库的官方介绍。

静态显著性算法:对数光谱(SpectralResidual):

该算法分析了输入图像的对数谱,提取了图像在光谱域中的光谱残差,并提出了一种构造显着图的快速方法,该显著图建议了原型物体的位置。
相似性意味着冗余。对于旨在最小化冗余视觉信息的系统,它必须意识到输入刺激的统计相似性。因此,在可以观察到很大形状相似性的不同对数谱中,值得我们注意的是跳出平滑曲线的信息。我们认为,频谱中的统计奇异性可能是图像中出现异常对象的异常区域的原因。
显著图(Saliency map)
显著图(Saliency map)

静态显著性算法:细粒方法(FineGrained):

人眼的视网膜由神经节细胞组成。有两种类型的神经节细胞,中心和偏心。中心位于黑暗背景包围的明亮区域。偏心对明亮背景包围的黑暗区域做出反应。该算法根据中心上和中心外的差异计算显著性。
显著图(Saliency map)
显著图(Saliency map)
显著图(Saliency map)

人工智能算法

基于眼动仪预测显著性区域方法

除了经典方法外,基于神经网络的方法也很受欢迎:
这里有一个在线链接来调用摄像头实现实时的显著性检测,可以尝试一下,来自于文章: Contextual encoder-decoder network for visual saliency prediction (2020) and on arXiv
其他的一些比较经典的方法包括:

  • TASED-Net:由两个building blocks组成。首先,编码器网络提取低分辨率时空特征,然后下面的预测网络解码空间编码特征,同时聚合所有时间信息。
  • STRA-Net:强调两个基本问题。首先,通过外观和光流耦合整合时空特征,然后通过注意力机制学习多尺度显著性。
  • STAViS:结合了时空视觉和听觉信息。这种方法采用单个网络来学习定位声源并融合两个显著性以获得最终显著性图。
数据集 分辨率 数量 采集人数 持续时长 眼动仪
CAT2000 1920×1080 4000张图片 24 5s EyeLink 1000 (1000Hz)
EyeTrackUAV2 1280×720 43段视频 30 33s EyeLink 1000 Plus (1000 Hz, binocular)
CrowdFix 1280×720 434段视频 26 1-3s The Eyetribe Eyetracker (60 Hz
SAVAM 1920×1080 43段视频 50 20s SMI iViewXTM Hi-Speed 1250 (500Hz)

积分梯度方法

积分梯度是一种神经网络可解释性方法

现在想要知道某个特征对做预测的重要程度,最简单的想法就是修改它的值或直接拿掉它,看看预测结果变化有多大,变化越大就越重要。看下面这个图像分类任务的例子,在测试图片的任意位置贴一个固定大小的灰色方块,看看方块贴各个位置时对于预测结果的影响,把综合结果显示为热力图(越偏蓝影响越大),如图可见这种方法找到的关键特征是比较合理的。
显著图(Saliency map)
这就是积分梯度的大概思路,具体的数学解释,请参照下面这篇文章。

对比学习

每次我们的文章都会通过对比记忆来了解不同方法的原理,侧重点,目的,以达到更好的理解和记忆效果,这次也是一样。

显著性区域检验主要有两大方法类别:传统方法深度学习方法文章来源地址https://www.toymoban.com/news/detail-495439.html

  • 传统方法包括对数光谱和细粒方法。其主要思路是利用人眼成像的特性,寻找人可能感兴趣的区域,虽然计算速度较快,但是因为是对人眼的注意力情况进行建模,所以并不能算是一种普适性的方法,收到图像本身性质影响较大。
  • 深度学习方法也包括两个方向,神经网络可解释性方向和基于眼动仪的显著性区域预测。前者主要是为了搞清楚神经网络每一层关注图像的重点区域在哪里,属于研究神经网络可解释性的附加成果。而后者意在通过已有的眼动仪数据来通过神经网络预测一张新的图片人们会首先关注哪个区域。

到了这里,关于显著图(Saliency map)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 九、计算机视觉-形态学基础概念

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 现在开始后面几课将介绍计算机视觉中的形态学理论和技术,包括基本的形态学操作、形态学滤波、形态学轮廓分析等内容。包括如何应用形态学方法来处理图像以及解决实际问题。 本节课将简要介绍

    2024年02月21日
    浏览(24)
  • 【计算机视觉 | 目标检测】目标检测中的评价指标 mAP 理解及计算(含示例)

    在目标检测中,有几个常用的评价指标用于衡量算法的性能。以下是其中几个重要的评价指标: Precision(精确率):Precision 衡量了在所有被检测为正样本的样本中,有多少是真正的正样本。 Precision 的计算公式为:Precision = TP / (TP + FP),其中 TP 是真正的正样本数量,FP 是将负

    2024年01月19日
    浏览(38)
  • 计算机视觉CV领域中多尺度特征的概念

    知乎:深度学习中的多尺度模型设计 知乎:计算机视觉中的多尺度模型都有哪些设计? CSDN:多尺度理解  所谓多尺度,实际就是对信号的不同粒度的采样。 通常在不同的尺度下我们可以观察到不同的特征,从而完成不同的任务。 粒度更小/更密集的采样可以看到更多的细节

    2023年04月08日
    浏览(37)
  • 计算机视觉之——camera的几个概念-焦距、视场、光圈、快门等

    做了一年的激光点云,现在重拾计算机视觉算法。回头来看,反而对视觉有了更全面的认识。现在,就从最基础的开始,把一些回顾的内容记录下来。也分享出来给大家参考。 (图片来源网上,侵删) (图片来源网上,侵删) 相机成像遵循小孔成像原理。焦距就是从光心到

    2024年02月06日
    浏览(23)
  • 【计算机视觉 | 目标检测】术语理解3:Precision、Recall、F1-score、mAP、IoU 和 AP

    在图像目标检测中,常用的评估指标包括以下几项: 精确率(Precision):也称为查准率,表示被分类为正类别的样本中真正为正类别的比例。计算公式为:Precision = TP / (TP + FP),其中TP是真正例(模型正确预测为正类别的样本数),FP是假正例(模型错误预测为正类别的样本数

    2024年02月13日
    浏览(35)
  • 计算机视觉 计算机视觉识别是什么?

    计算机视觉识别(Computer Vision Recognition)是计算机科学和人工智能领域中的一个重要分支,它致力于使计算机系统能够模拟和理解人类视觉的过程,从而能够自动识别、分析和理解图像或视频中的内容。这一领域的发展旨在让计算机具备视觉感知和理解的能力,使其能够从视

    2024年02月07日
    浏览(42)
  • 计算机视觉框架OpenMMLab(一):计算机视觉基础

    👨‍💻 作者简介: 大数据专业硕士在读,CSDN人工智能领域博客专家,阿里云专家博主,专注大数据与人工智能知识分享。 公众号: GoAI的学习小屋,免费分享书籍、简历、导图等资料,更有交流群分享AI和大数据,加群方式公众号回复“加群”或➡️点击链接。 🎉 专栏推

    2024年01月22日
    浏览(40)
  • 计算机视觉(P2)-计算机视觉任务和应用

    在本文中,我们将探讨主要的计算机视觉任务以及每个任务最流行的应用程序。         图像分类是计算机视觉领域的主要任务之一[1]。在该任务中,经过训练的模型根据预定义的类集为图像分配特定的类。下图是著名的CIFAR-10数据集[1],它由十个类别的8000万张图像组成

    2024年02月02日
    浏览(60)
  • 【深度学习: 计算机视觉】如何改进计算机视觉数据集

    机器学习算法需要大量数据集来训练、提高性能并生成组织所需的结果。 数据集是计算机视觉应用程序和模型运行的燃料。数据越多越好。这些数据应该是高质量的,以确保人工智能项目获得最佳的结果和产出。 获取训练机器学习模型所需数据的最佳方法之一是使用开源数

    2024年02月20日
    浏览(35)
  • 什么是计算机视觉,计算机视觉的主要任务及应用

    目录 1. 什么是计算机视觉 2. 计算机视觉的主要任务及应用 2.1 图像分类 2.1.1 图像分类的主要流程 2.2 目标检测 2.2.1 目标检测的主要流程 2.3 图像分割 2.3.1 图像分割的主要流程 2.4 人脸识别 2.4.1 人脸识别的主要流程 对于我们人类来说,要想认出身边的一个人,首先需要

    2024年02月11日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包