您的位置:首页 > 移动开发

阅读图像显著性检测论文三:Saliency Detection A Spectral Residual Approach

2016-12-12 22:30 344 查看
       
本博客为博主原创,转载请注明地址:http://blog.csdn.net/xbcReal/article/details/53590039

        在介绍这篇论文之前我觉得很有必要介绍本篇论文的作者。侯晓迪,2003年进入上海交大,并于大三于CVPR发表学术论文Saliency detection: A spectral residual approach,引用次数2000+,加州理工大学计算与神经系统博士,计算机视觉和认知科学领域专家,创立了基于频域的视觉注意机制理论,是近10年来在视觉注意机制最有影响力的研究,是计算机视觉领域全球华人博士中学术文章被引用最多的作者(此话来自百度百科,现在是否依旧成立待考证),现任图森科技联合创始人兼CTO。好了,人物介绍就到这儿了,下面进入正题,开始这篇论文的介绍。

        这篇文章最大的特点是什么?我认为是与特征无关。如果你阅读过本博客系列的前两篇文章,你会发现他们都用到了特征——颜色特征、纹理特征以及亮度特征等,但这篇论文作者一开始就说得很明白,是与特征、类别或者其他形式的先验知识无关的,他用到的工具是只要学过信号处理的人都会学到的傅里叶变换,大概说来是基于频谱的log函数,提取图像在频率域的残余,然后提出一种图像显著性检测的方法。

        首先讨论人类的视觉系统是如何实现显著性检测的?现在一般认为视觉系统的处理过程分为两步:第一步是并行的、简单的预注意处理,第二步 是串行的、缓慢而又复杂的注意处理过程。在第一步的过程中,人们对眼前所出现的事物,总会有一些底层特征是突然冒出来的,比如方向、纹理、边缘、亮度等,论文中用“pop up”一词来表示这种行为,以目标检测的角度来看,在第一步过程中突然冒出来的东西被看做是目标的候选物体,即这些东西可能就是我们想检测的目标。相关文献给这种候选物体起了一个专业的名字,叫做proto
object。为了找到这些proto objects,人们提出了许多模型,比较有名的有Itti的基于生物视觉的模型等,但是这些模型作为一个预注意处理系统,花费的计算量偏大了。现在大多数模型都是在找目标物体的特征和性质,而没有一个与物体类别无关的用来做显著性检测的模型。这也正是这篇论文想要做的,想找到一个共性适用于几乎所有的显著性检测任务,这也就是为什么我认为这篇文章最大的特点就是与特征无关的原因,因为与特征无关就与是什么物体无关。具体是如何找到这个共性的呢?我们现在就来分析。

        Spectral Residual Model(谱残差模型)

        从信息论的角度来看,对于一副图片所含的信息可以分为两部分,一部分是新颖的、有用的知识,另一部分是一些先验知识,公式可见下图:

        


       前者往往是我们想关注的,可以理解为显著性的东西或者前景,后者是我们不想关注的东西,可以称为背景。这也是这篇论文的一个思想来源所在吧,即如果我们能找到一种方法或者规律能够把背景给剔除,那剩下的就是显著性的东西了。作者针对这个问题提出在图像频谱的对数域上表示来寻找规律。前人了实验发现了以下规律:

  


       即大量自然图像在某个频率的幅度的平均值和该频率成反比。进一步还有以下规律:当频率和平均幅频响应都在log-log坐标下时是近似线性的,同时当只有幅频响应取对数坐标时,所有的图像的幅频响应曲线是类似的,见下图所示:
     


       当在幅度取log时,如果对多个图片取平均幅度时,上面的曲线又会逐渐退化成下图所示的曲线:



        当100张图片取平均时,发现那些尖峰的东西没有了,曲线变得平滑了起来。于是作者认为这个平滑的曲线和之前充满尖峰的曲线之间的关系可能和图像中不显著的和显著的东西的关系存在某种联系。那么会不会是说平滑的曲线就是背景所贡献的,而那些小尖峰就是显著性的物体所贡献的?我认为可以这样认为——显著性的物体破坏了背景的平滑性,导致原本平滑的曲线上多了一些尖峰变得不再平滑。于是作者便着手去实验这种想法,大致的思路是那如果我用一个图片的幅频响应曲线减去平均的曲线,得到的差称为谱残差,再将谱残差通过傅里叶反变换变换回去,看看都对应原图中的哪些区域,这些区域是不是显著性的区域?这样就可以验证这个想法对不对了。经过实验后发现还真是这么回事儿,下面具体介绍这个算法的实现过程。
      算法步骤:
      1、为了便于做傅里叶变换,首先将原图通过尺度变换变到64*64的尺度上。
      2、对原图做傅里叶变换,得到幅频响应,记为L(f)。
      3、用一个3*3的局部平均滤波器和原图做卷积,用来模拟平均的幅频响应,记为A(f)。
      4、得到谱残差R(f)的表达式为:R(f)
=L(f) - A(f)。
      5、对R(f)进行傅里叶逆变换,得到空间域的显著性图,如果想得到更好的视觉效果,可以对显著性图做一次标准差为8的高斯模糊。
      算法至此便结束了,用公式表达的话见下图:
  


       最后由于笔者也是刚刚接触这个领域,所以文中难免出现一些理解不到位的地方,还请大家多多指出,互相交流。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐