本文主要是介绍Salient Object Detection 探索经历,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
概述
显著性目标检测也被称为显著性检测,旨在通过模拟人类视觉感知系统来检测自然场景图像中最显著的目标和区域。虽然,显著性目标检测听名字是一个检测任务,但是实际上是一个图像分割任务,即一个像素级分类任务,是一个数据所驱动的一个任务。是将自然图像中的显著目标分割出来,显著目标也可以理解为前景。如下图中给出了显著目标检测的示意图。从下图中可以看出显著性目标检测是一个像素级别的二分类任务。在早期的显著目标检测中是基于手工特征的传统方法。目前,随着深度学习的快速发展,基于卷积神经网络的方法取得了显著成绩。随着Transformer的发展,很多使用Transformer架构的算法取得了更好的结果。
显著性目标检测目前存在的问题(不限这几个方面)
- 多尺度目标问题
在不同场景中,不同的物体往往以不同的尺度存在于图像中。在下图中展示了不同尺度的显著目标。这些示例说明了显著目标检测在处理不同尺度目标时的挑战,对显著目标检测算法在捕捉多尺度特征方面提出了高要求。
- 背景误判问题
在显著目标检测场景中存在场景复杂的情况,尤其是当前景区域和背景区域具有相似的特征时,很容易将背景像素点误判为前景像素,从而影响整个模型的检测结果。如下图所示,青蛙自身的颜色和周围的环境十分相似、鸭子的倒影和鸭子本身也十分相似、以及小狗周围的白雪和小狗的毛发具有相似特征。在这些场景下,增加了显著目标检测的难度,这就需要模型可以很好的区分前景特征和背景特征。
- 边缘复杂问题
显著目标具有复杂轮廓和结构时,模型难以精确检测显著目标的边缘像素。如图下所展示的场景中,人物具有不规则的边缘,亭子也具有很多小孔呈现出复杂结构以及房子也同样具有复杂的结构。这就要求显著目标检测网络能很好地感知显著目标的边缘特征。
- 预测完整性问题
显著目标内部存在较大变化,内部结构复杂不一致的时候,会导致显著目标检测模型在预测时出现不完整的情况。如图下所示,图中所展示的显著目标,其内部都存在着不同程度的变化,这就要求网络具有一致性感知的能力,从而可以生成具有完整性的预测图。
我们在设计显著目标检测模型的时候,我们可以从以上几个角度来进行模型所提创新点的描述,比如使用了多尺度特征融合模块,可以多尺度特征融合模块是为了解决显著目标检测中存在的多尺度目标所提出来的。或者是在网络的最深层次中添加了注意力机制, 这个注意力机制可以让网络更加关注前景以解决显著目标检测中存在的背景误判问题。其他的也是类似,在做任何创新的时候一定要背靠解决什么问题提出的,虽然我们很多人都是先魔改的模型,在想动机,很多时候我们可以去观察一下加入模块后的预测图,去看看其在哪些方面是有所改进的,可以依据这样一个点来写。然后,在最后的可视化上再将图片展示出来,说明我们的所提模块确实是这样的。写论文的基础还是说先把实验做起来,以实验为基础来展开描述。
数据集和评价指标
- 数据集
显著目标检测的基准数据集有ECSSD、PASCAL-S、HKU-IS、DUTS、DUT-OMRON这五个数据集。其中DUTS分为DUTS-TE和DUTS-TR,DUTS-TR是训练集其他的都是测试集。 - 评价指标
评价指标包括平均绝对误差(MAE)、精确率-召回率(PR)曲线、F-measure、F-measure曲线、S-measure以及E-measure。其中F-measure还可以分为最大F-measure和平均F-measure。PR曲线是需要有的,F-measure曲线看结果好就用不好就不放。剩下的最大F-measure、平均F-measure、S-measure、以及E-measure中选2-3个即可,同时最大F-measure、平均F-measure中选一个、S-measure和E-measure中选一个。MAE指标是必须要有的。。
目前已有方法改进的方向
To be continued
这篇关于Salient Object Detection 探索经历的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!