开发、评估和基准显著性模型的python库

pysalienc的Python项目详细描述


比重

pysalicent是一个用于显著性建模的python包。它旨在提供一个统一的接口 显著性建模中使用的传统显著性映射和概率显著性 模型。

显著性可以评估最常用的显著性指标,包括AUC、SAUC、NSS、CC 基于图像的kl散度、基于固定的kl散度和显著图模型的sim 概率模型的对数似然性和信息增益。

pysalicity提供了几个重要的数据集:

  • MIT1003
  • MIT300
  • 2000类
  • 多伦多
  • 科勒
  • ISUN
  • Salicon(2015年版和2017年版,每个版本都有原始鼠标痕迹和推断的固定点)
  • 菲格里姆
  • OSIE
  • nusef(带有公共图像的部分)

以及一些有影响力的模型:

  • 瞄准
  • 太阳
  • 上下文优先级
  • BMS
  • gbvs
  • gbvsittikoch
  • 朱德
  • Ittikoch
  • RARE2012
  • 共面

这些模型使用的是通常是Matlab的原始代码。 因此,使用这些模型需要获得Matlab许可证,尽管其中相当一部分模型 也可以使用八度音阶(见下文)。

安装

您可以通过

pip install pysaliency

快速启动

import pysaliency

dataset_location = 'datasets'
model_location = 'models'

mit_stimuli, mit_fixations = pysaliency.external_datasets.get_mit1003(location=dataset_location)
aim = pysaliency.AIM(location=model_location)
saliency_map = aim.saliency_map(mit_stimuli.stimuli[0])

plt.imshow(saliency_map)


auc = aim.AUC(mit_stimuli, mit_fixations)

如果您已经有一些数据集的显著性映射,可以很容易地将它们导入到pysalicity中:

my_model = pysaliency.SaliencyMapModelFromDirectory(mit_stimuli, '/path/to/my/saliency_maps')
auc = my_model.AUC(mit_stimuli, mit_fixations)

使用倍频程

如果没有安装Matlab,PySaliciency将回落到Octave。 有些模型可能适用于倍频程,例如aim和gbvsittikoch。在debian/ubuntu中需要安装 octaveoctave-imageoctave-statisticsliboctave-dev

这些模型和数据集似乎与倍频程一起工作:

  • 模型
    • 瞄准
    • gbvsittikoch
  • 数据集
    • 多伦多
    • MIT1003
    • MIT300
    • 萨利肯

依赖关系

judd模型需要一些库才能工作。在ubuntu/debian中,您需要安装以下软件包: libopencv-core-dev, libopencv-flann-dev, libopencv-imgproc-dev, libopencv-photo-dev, libopencv-video-dev, libopencv-features2d-dev, libopencv-objdetect-dev, libopencv-calib3d-dev, libopencv-ml-dev, opencv2/contrib/contrib.hpp

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何反射地迭代数组字段?   java NamedQuery错误“具有给定标识符的多行:1”   java无法使用单独类中的计时器更新TextView   兼容性什么时候可以很快使用新的Java功能?   java二叉树路径和   java矩形的性能   java我想从同一个子表在主表中添加两个外键   java如何获取基于特定日期的所有数据?   java javafx、OO编程规则和写入变量类型的选择   java使用带枚举的switch语句   java异步任务生成运行时异常   java为什么JLabel不显示下划线字符?   java如何解析具有可变参数号的函数?   带有按钮的java JavaFX自定义列表单元格:未调用处理程序   java Modelmapper无法映射整个模型?   传递给持久化的java分离实体,包含LatLng列表