显著目标检测论文(一)——Global Contrast based Salient Region Detection

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gzj2013/article/details/82148220

基于全局对比度的显著性区域检测

这篇论文其实在 作者的主页 上面已经给出中文版的论文了,这里主要是为了对显著性检测方法发展过程进行梳理。同时本文也将对照源码分析论文中算法的实现.

1、引言


论文的提出主要是根据以下几点考虑

  • 基于全局对比度的方法倾向于将大范围的目标和周围环境分离开. 这种方法要优于那些通常只在轮廓附近产生较高显著性的局部对比度方法.
  • 全局的考虑可以为图像中相似区域分配一个相近的显著值, 这样就可以均匀的凸显目标.
  • 一个区域的显著性主要是由它和周围区域的对比度决定, 相距很远的区域就几乎不起作用了.
  • 为了能够适应大规模图像集处理和搞笑图像检索, 分类的应用需求, 显著性检测算法应该快速, 简单.

根据这几点的观察, 作者在文章中提出了两种方法,分别是基于直方图对比度的方法(Histogram Contrast)和基于局域对比度的方法(Region-based Contrast)。

2、基于直方图统计的对比度(HC)


文中提出 HC 方法来检测显著性, HC 方法是通过计算与其他像素的颜色差异来分配像素的显著性值.

一个像素的显著性值用它和图像中其他像素颜色的对比度来定义. 例如图像 I 中像素 I k 的显著性值定义为:

(1) S ( I k ) = I i I D ( I k , I i )

其中 D ( I k I i ) 为像素 I k 和像素 I i 在 L*a*b 空间的颜色距离。将公式展开可得:

(2) S ( I k ) = D ( I k , I 1 ) + D ( I k , I 2 ) + + D ( I k , I N )

其中 N 为图像 I 的像素个数.

如果按照以上方法计算,相同颜色值的像素得到的显著性显著性值也相同,如此一来,我们可以将相同颜色值的像素 c j 归到一起, 不必对每个像素都进行计算,可以得到以下公式:

(3) S ( I k ) = S ( c l ) = j = 1 n f j D ( c l , c j )

用公式 (1) 计算显著性值时, 算法的复杂度为 O ( N 2 ) , 对于中等图像来说, 这个计算的代价也已经很高了.

公式 (3) 计算显著性值时的算法复杂度为 O ( N ) + O ( n 2 ) , 如果 O ( n 2 ) O ( N ) , 那么时间复杂度就可以优化到 O ( N ) . 因此, 加速的关键在于减少图像像素颜色的总数. 因为彩色图片有三个通道,每个通道取值为 0-255,所以总共有 255 3 种颜色,这个计算量是非常大的.

基于直方图的加速


为了满足本文最先提出的几点观察中说明的显著性算法应该是快速的, 作者做提出了一种基于直方图的加速方法。

为了加快算法的运行时间,降低算法的时间复杂度,作者使用基于直方图加速的方法,将每个通道值从 255 量化到 12, 这会将颜色数量减少到 n = 12 3 = 1728 种颜色. 考虑到自然图像中的颜色只占据整个色彩空间中很小的一部分, 可以将出现频率较小的颜色丢掉,确保颜色覆盖 95% 以上的像素就可以了, 这样可以将颜色数目减少到 n = 85 左右, 剩下的 5% 的像素所占的颜色被直方图中距离最近的颜色所代替。

颜色空间平滑


由于减少颜色数量会对图片产生一定的瑕疵, 然后导致相似颜色可能会被量化为不同的值, 所以作者通过颜色空间平滑来解决这个问题: 每个颜色的显著值被替换为相似颜色(L*a*b 颜色空间)显著值的加权平均。文中使用 m = n 4 个最近邻颜色来平滑颜色 c 的显著性值. 公式如下:

(4) S ( c ) = 1 ( m 1 ) T i = 1 m ( T D ( c , c i ) ) S ( c i )

其中, T = i = 1 m D ( c , c i ) 为颜色 c 和它的 m 个最近邻 c i 之间的距离; ( m 1 ) T 为归一化因数.

这样一来在颜色特征空间中距离 c 较近的颜色分配较大权值,相似的颜色分配到相似的显著性值,减少了量化的瑕疵。

注意区分两个颜色空间, 量化发生在 RGB 颜色空间,测量距离在 Lab 颜色空间。

3、基于区域的对比度(RC)


因为计算像素级对比度时引进空间关系会使得计算代价非常大, 因此文中引进一种对比度分析方法: Region Contrast, 将空间关系和 Region Contrast 结合到一起.

首先将图像分割成若干区域,然后计算 Region Contrast 和颜色对比度, 再用每个区域和其他区域对比度加权和来为此区域定义显著性值. 权值由 Region 空间距离决定, 较远的 Region 分配较小的权值.

用稀疏直方图比较来计算 Region Contrast

将图像分割成若干区域, 为每个区域建立上一节提到的颜色直方图. 对每个区域 r k , 通过测量它与图像其他区域的颜色对比度来计算它的显著性,公式如下:

(5) S ( r k ) = r k r i ω ( r i ) D ( r k , r i )

其中, ω ( r i ) 为区域 r i 的权值, D ( r k , r i ) 为两个区域的颜色度量. 这里用 r i 区域中的像素个数来强调大区域的颜色对比度. D r ( r k , r i ) 定义为:

(6) D r ( r k , r i ) = i = 1 n 1 j = 1 n 2 f ( c 1 , i ) f ( c 2 , j ) D ( c 1 , i , c 2 , j )

其中 f ( c 1 , i ) 为第 i 个颜色在第 1 个区域的所有 n 1 种颜色中出现的概率, f ( c 2 , j ) 为第 j 个颜色在第 2 个区域的所有 n 2 种颜色中出现的概率, n 1 , n 2 分别表示第一, 第二区域内的颜色总数, D r ( c 1 , i , c 2 , j ) 表示第 1 个区域第 i 种颜色和地 2 个区域第 j 种颜色之间的距离。

在以上的基础上再融入空间信息,在式子 (5) 中引入空间权值,公式如下:

(7) S ( r k ) = r k r i exp ( D s ( r k , r i ) σ s 2 ) ω ( r i ) D r ( r k , r i )

其中, D s ( r k , r i ) 表示区域 r k r i 之间的空间距离, 定义为两个区域重心的欧氏距离. σ s 控制空间权值强度. σ s 越大, 空间权值对显著性值的影响越小.

在文中的实验中, σ s 2 = 0.4 , 像素坐标归一化到 [0, 1] 之间.

4、实验比较


显著性分割
显著性分割在获得显著性图的基础上加上Grabcut分割方法,得到结果如下

基于内容感知的图像缩放

非真实感渲染

参考资料


[1]. Global Contrast based Salient Region detection
[2]. 论文作者主页

论文的作者主页上提供代码下载。

猜你喜欢

转载自blog.csdn.net/gzj2013/article/details/82148220