摘要

近年来,计算机视觉应用越来越依赖于超像素,但是如何构成一个好的超像素算法并不总是很清楚。为了理解现有方法的优点和缺点,我们根据经验比较了五种最先进的超像素算法,它们能够坚持图像边界、速度、存储效率以及对分割性能的影响。然后引入一种新的超像素算法——简单线性迭代聚类(SLIC),该算法采用k-均值聚类方法来有效地生成超像素。尽管SLIC方法简单,但是它比以往的方法更符合边界条件,同时具有更快的存储效率,提高了分割性能,并且易于扩展到超体素生成。

1 introduction

SUPERPIXEL算法将像素分组成感知上有意义的原子区域,可以用来替换像素网格的刚性结构(图1)。它们捕获图像冗余,提供计算图像特征的方便的基元,并且极大地降低了后续图像处理任务的复杂性。它们已经成为许多计算机视觉算法的关键组成部分,例如PASCAL VOC挑战的多类对象分割任务[9]、[29]、[11]、深度估计[30]、分割[16]、身体模型估计[22]和对象定位[9]。

生成超像素的方法有很多,每个都有自己的优点和缺点,可能更适合于特定的应用程序。例如,如果认为保持图像边界更加重要的话,那么基于图的方法可能是一个更好的选择(8)。然而,如果要使用超像素来构建图,那么选择生成更规则格子的方法(如[23])可能是更好一些。虽然很难定义构成了各种应用的理想方法是什么,但我们相信以下特性通常是可取的:

  • 超像素应该很好地附着在图像边界上。
  • 当作为预处理步骤用于降低计算复杂度时,超像素应该计算速度快、内存有效且使用简单。
  • 当用于分割时,超像素既要提高速度,又要提高结果的质量。
    因此,我们对五种最先进的超像素方法[8]、[23]、[26]、[25]、[15]进行了实证比较,评估了它们的速度、粘附图像边界的能力以及对分割性能的影响。我们还提供了一个准则评估这些以及其他超像素方法。我们的认为没有任何方法是十全十美的。
    为了解决这个问题,我们提出了一个新的超像素的算法:简单的线性迭代聚类(SLIC),采用k-均值聚类以类似于[ 30 ]的方式生成超像素。虽然非常简单,但SLIC在Berkeley数据集[20]上能够比较好的分割图像边界,并且当用于PASCAL[7]和MSRC[24]数据集上进行分割时,其性能优于现有方法。

2 existing superpixel methods

生成超像素的算法可以大致归类为基于图形或梯度上升的方法。下面,我们回顾每一类流行的超像素的方法,包括一些原本不是专门设计来生成超像素。表1提供了评估方法的定性和定量总结,包括它们的相对性能。

2.1 Graph-Based Algorithms

基于图形的超像素生成方法将每个像素视为图中的节点。两个节点之间的边缘权重与相邻像素之间的相似性成比例。超像素是通过最小化在图上定义的代价函数来创建的。

  • NC05。归一化切割算法[23]使用轮廓和纹理线索递归地分割图像中所有像素的图,全局地最小化在分割边界的边上定义的代价函数。它产生非常规则、视觉愉悦的超像素。然而,NC05的边界粘附性相对较差,并且是所有方法中最慢的(特别是对于大图像),尽管存在加速算法的尝试[5]。NC05的复杂度为O(N32)O\left ( N^{\frac{3}{2}} \right )O(N23​),〔15〕,其中n为像素数。
  • GS04。Felzenszwalb和Huttenlocher [ 8 ]提供了一种基于图的迭代方法,已被应用到超像素生成。它使得像素作为图上的节点的聚集聚类,使得每个超像素是组成像素的最小生成树。GS04在实践中很好地粘附到图像边界,但是会产生尺寸和形状非常不规则的超像素。GS04的复杂度为O(NlogN)O(NlogN)O(NlogN)。然而,它并没有对超像素量或它们的紧凑性进行明确控制。
  • SL08。Moore et al.提出了一种通过寻找将图像分割成较小的垂直或水平区域的最优路径或接缝来生成符合网格的超像素的方法[21]。使用类似于Seam Carving[1]的图形切割方法找到最优路径。作者认为,虽然SL08的复杂度是O(N32logN)O\left ( N^{\frac{3}{2}} logN\right )O(N23​logN),但这并没有考虑预先计算的边界图,这严重影响了输出的质量和速度。
  • GCa10和GCb10。Veksler等人在[26 ]中使用了类似于[14 ]的纹理合成工作的全局优化方法。通过将重叠的图像块拼接在一起,使得每个像素仅属于重叠区域之一,从而获得超像素。他们提出了两种不同的方法,一种是产生紧凑的超像素(GCa10),另一种是产生恒定密度的超像素(GCb10)
2.1 Gradient-Ascent-Based Algorithms

从粗略的初始像素聚类开始,梯度上升法迭代地细化聚类,直到满足某些收敛准则以形成超像素。

  • MS02在文献[4]中,均值偏移是用于定位密度函数的局部极大值的迭代模式搜索过程,用于在图像的颜色或强度特征空间中寻找模式。收敛到相同模式的像素定义超像素。MS02是一种较老的方法,产生不规则形状的超尺寸的超像素。它是ON2复杂的,使其相对缓慢,并且不能够对超像素的数量、大小或紧凑度实现直接控制。
  • QS08。快速移位[25])也使用模式搜索分割方案。它使用MedoID移位过程初始化分割。然后,它将特征空间中的每个点移动到最近的邻居,从而增加PARZEN密度估计。虽然它具有较好的边界粘附性,但QS08相当慢,具有O=DN2的复杂性(D是一个小常数[25])。QS08不允许对超像素的大小或数量进行明确的控制。以前的工作已经使用QS08进行对象定位[9]和运动分割[2]。
  • WS91。分水岭方法[28]从局部最小值开始进行梯度上升以产生分水岭,。所得到的超像素在尺寸和形状上常常是高度不规则的,并且没有表现出良好的边界粘附。[28]的方法相对快速(O(NlogN)O\left ( NlogN \right )O(NlogN)),但是不提供对超像素数量或其紧凑性的控制。
  • TP09.涡轮螺旋桨方法逐步利用水平集几何流〔15〕扩展一组种子位置。几何流依赖于局部图像梯度,旨在在图像平面上规则地分布超像素。与WS91不同,TP09超像素被限制为具有均匀的尺寸、紧凑性和边界粘附性。TP09依赖于不同复杂度的算法,但在实践中,如作者所声称的,具有近似O(N)O(N)O(N)的复杂度〔15〕。然而,它是检查的最慢的算法之一,并且表现出相对较差的边界粘附。

3 SLIC SUPERPIXELS

我们提出了一种新的超像素生成方法,它比现有方法更快,内存效率更高,显示出最新的边界粘附性,并且提高了分割算法的性能。简单的线性迭代聚类是k-均值对超像素生成的适应,有两个重要区别:

  1. 通过将搜索空间限制为与超像素大小成比例的区域,可以显著减少优化中的距离计算次数。这减少了在n个像素数中独立于超像素k个数的线性度的复杂性。
  2. 加权距离度量结合了颜色和空间接近度,同时提供了对超像素的大小和紧凑度的控制。

SLIC类似于[30]中描述的用于深度估计的预处理步骤的方法,这在超像素生成的上下文中没有得到充分探讨。

3.1 Algorithm

SLIC易于使用和理解。默认情况下,算法的唯一参数是K,同时期望得到大小相等的超像素。对于CIELAB颜色空间中的彩色图像,聚类过程从初始化开始,在初始化步骤中,在间隔为S个像素的规则网格上采样k个初始聚类中心Ci=[liaibixiyi]TC_{i}=\left [ l_{i}a_{i} b_{i}x_{i}y_{i}\right ]^{T}Ci​=[li​ai​bi​xi​yi​]T.为了产生大小大致相等的超像素,网格间隔为S=N/kS=\sqrt{N/k}S=N/k​.将中心移动到与3*3个邻域中的最低梯度位置相对应的位置。这样做是为了避免将超像素居中在一些边缘上,并且减少将噪声像素选为超像素种子的机会。

如图2所示,接下来,在调整步骤中,每个像素i与最近的聚类中心相关联,其中这个聚类中心的搜索范围覆盖这个像素。这是算法加速的关键,因为限制搜索区域的大小显著减少了计算距离的次数,并且相比传统的k-均值聚类(其中每个像素必须与所有聚类中心进行比较)产生了显著的速度优势。这只能通过引入距离度量D来实现,距离度量D为每个像素确定最近的簇中心,如3.2节中所讨论的。由于超像素的预期空间范围是近似大小S_S的区域,因此在超像素中心周围的区域2S2 S中搜索类似的像素。

一旦每个像素都与最近的集群中心相关联,更新步骤将聚类中心调整为属于该集群的所有像素的平均向量[Labxy]T[Labxy]^{T}[Labxy]T。L2范数用于计算新的聚类中心位置和以前的聚类中心位置之间的残差E。分配和更新步骤可以迭代地重复,直到误差收敛,但是我们已经发现对于大多数图像10次迭代就足够了,并且使用这个准则报告本文中的所有结果。最后,后处理步骤通过将不相交的像素重新分配到附近的超像素来强制连接。算法1对整个算法进行了总结。

2.可选地,可以通过调整m来控制超像素的紧凑性,这将在第3.2节中讨论。

对上面的表格做个注释:

  • 时间包括参数搜索时间
    只考虑强度,忽略颜色
    NC05没能够成功分割2048*1536大小的图像,产生了内存溢出的错误
    可以选择恒定强度或紧凑的超像素

超像素方法在Berkeley data set [20]上分割边界的能力是由两个标准评判的:欠分割误差和边界召回(对于500个像素)。我们还报告了使用带有2GB RAM的Intel双核2.26GHz处理器进行图像分割所需的平均时间,以及使用[11]中描述的方法在MSRC数据集上获得的类平均分割精度。粗体条目表示每个类别的最佳性能。还提供了指定超像素数量、控制其紧凑性和生成超体素的能力。

算法一:SLIC超像素分割

初始化

  • 通过在规则网格步骤S中采样像素来初始化聚类中心 Ci=[liaibixiyi]TC_{i}=\left [ l_{i}a_{i} b_{i}x_{i}y_{i}\right ]^{T}Ci​=[li​ai​bi​xi​yi​]T。
  • 将聚类中心移动到3*3邻域中的最低梯度位置。
  • 对于每一个像素i设置l(i)=−1l(i)=-1l(i)=−1,每一个i的距离设置为d(i)=∞d(i)=\inftyd(i)=∞
  • 重复
    /* Assignment*/
    for each cluster center CiC_{i}Ci​ do
    for each pixel i in a 2S * 2S region around CiC_{i}Ci​ do Compute the distance DDD between CiC_{i}Ci​ and iii .
    if D&lt;d(i)D &lt; d(i)D<d(i) then
    set Ci=DC_{i}=DCi​=D
    set li=kl_{i}=kli​=k
    end if
    end for
    end for
    /* Update */
    Compute new cluster centers.
    Compute residual error E.
    until E threshold

3.2 距离度量

SLIC超像素对应于在Lab彩色图像平面空间中的簇。这在定义距离度量D时出现了一个问题,这可能不是立即显现的。D计算算法1中的像素i和聚类中心CiC_{i}Ci​ 之间的距离。在LAB颜色空间中一个像素的颜色可以表示为[lab]T[lab]^{T}[lab]T,而这些像素的大小范围是抑制的,像素的位置为[xy]T[xy]^{T}[xy]T,另一方面,可以用一系列根据图像大小变化的值。

简单地将D定义为Labxy空间中的5D欧氏距离,会导致不同超像素大小的聚类行为不一致。对于大的超像素,空间距离大于颜色接近度,给予空间接近度比颜色更重要。这产生紧凑的超像素,其不很好地粘附到图像边界。对于较小的超像素,反之亦然。若要将这两种距离合并为一种度量,在一个簇、NS和NC中,有必要通过它们各自的最大距离来规范颜色邻近和空间邻近。如此的话那么D′D^{'}D′可以被写为:

dc=(lj−li)2+(aj−ai)2+(bj−bi)2d_{c}=\sqrt{(l_{j}-l_{i})^{2}+(a_{j}-a{i})^{2}+(b_{j}-b_{i})^{2}}dc​=(lj​−li​)2+(aj​−ai)2+(bj​−bi​)2​

ds=(xj−xi)2+(yj−yi)2d_{s}=\sqrt{(x_{j}-x_{i})^{2}+(y_{j}-y_{i})^{2}}ds​=(xj​−xi​)2+(yj​−yi​)2​

D′=(dcNc)2+(dsNs)2D^{'}=\sqrt{(\frac{d_{c}}{N_{c}})^{2}+(\frac{d_{s}}{N_{s}})^{2}}D′=(Nc​dc​​)2+(Ns​ds​​)2​

给定簇内期望的最大空间距离应与抽样间隔相对应,Ns=S=N/kN_{s}=S=\sqrt{N/k}Ns​=S=N/k​。确定最大颜色距离NcN_{c}Nc​并不是那么简单,因为颜色距离在不同的聚类和图像之间可能有很大的差异。这个问题可以通过将NcN_{c}Nc​固定为常数m以使(1)变成X来避免。所以上面的式子就变成了:

D′=(dcm)2+(dsS)2D^{'}=\sqrt{(\frac{d_{c}}{m})^{2}+(\frac{d_{s}}{S})^{2}}D′=(mdc​​)2+(Sds​​)2​

减少超像素搜索区域,SLIC的复杂度O(N)随着图像像素的增加线性增加,而传统的K-means算法的算法复杂度是O(KNI),其中I是迭代次数。这是通过在分配步骤中限制每个聚类中心的搜索空间来实现。
(a)在传统的k-means算法中,计算从每个聚类中心到图像中的每个像素的距离。
(b)SLIC仅计算从每个簇中心到2S2S区域内的像素的距离。注意,预期的超像素大小仅为SS,由较小的正方形表示。这种方法不仅减少了距离计算,而且使SLIC的复杂度与超像素的数量无关。

用于视频序列计算的SLIC超体素。(顶部)从挥舞国旗的短视频序列中获得的帧。左下是包含视频的时间线,最新的帧出现在这个时间序列的顶部。右下方式超像素分割后的视频,为了方便显示将橙色部分移除。

它方便了我们在实践中使用的度量距离:

D=dc2+(dsS)2m2D=\sqrt{d{_{c}}^{2}+(\frac{d_{s}}{S})^{2}m^{2}}D=dc​2+(Sds​​)2m2​

通过以这种方式定义D,m还允许我们权衡颜色相似性与空间邻近之间的相对重要性。当m很大时,空间邻近性更重要,由此产生的超像素更紧凑(即它们的面积与周长比较低)。当m较小时,产生的超像素与图像边界更紧密地结合,但规则大小和形状较少。当使用CIElab颜色空间时,m可以在-1;40的范围内。

方程(3)可以通过设置来适应灰度图像。

dc=(lj−li)2d_{c}=\sqrt{(l_{j}-l_{i})^{2}}dc​=(lj​−li​)2​

它还可以扩展到处理3D超体素,如图3所示,方法是将深度维数扩展到(3)的空间邻近项:

ds=(xj−xi)2+(yj−yi)2+(zj−zi)2d_{s}=\sqrt{(x_{j}-x_{i})^{2}+(y_{j}-y_{i})^{2}+(z_{j}-z_{i})^{2}}ds​=(xj​−xi​)2+(yj​−yi​)2+(zj​−zi​)2​

3.3 后续处理

像其他一些超像素算法[8]一样,SLIC没有显式地强制连接。在聚类过程结束时,一些与集群中心不属于同一连接组件的“孤立”像素可能仍然存在。为此,使用连接组件算法为这些像素分配最近的群集中心的标签。

3.4 复杂度

通过在聚类过程中定位搜索,SLIC避免执行数以千计的冗余距离计算。在实践中,一个像素落在不到8个聚类中心的附近,这意味着SLIC复杂度是O(n)O(n)O(n)。相反,经典k-均值算法的平凡上界是O(kN)O(k^{N})O(kN)[17]。[6]的实际时间复杂度为O(NkI)O(NkI)O(NkI),其中III是收敛所需的迭代次数。同时为了降低k-均值复杂度的方案,还提出了利用素数长度抽样[27]、随机抽样[13]、局部聚类交换[12]以及通过设置下界和上界[6],这些方法在性质上是非常普遍的。SLIC是针对超像素聚类问题而专门定制的。最后,与大多数超像素方法和前面提到的加速k-均值的方法不同,SLIC的复杂度与像素数成线性关系,而不管k。

4.与先进技术的对比

我们使用公开的源代码对SLIC和五种最先进的超像素方法进行了定量比较。这些算法包括GS04、3 NC 05、4 TP 09、5 QS09、6和[26]中提出的两个版本的算法GCA 10和GCb10.7,图7显示了每种方法产生的超像素分割的实例。

4.1 遵守边界

可以说,超像素法最重要的特性是它能够分割图像边界。边界召回和欠分割误差是边界依从性的标准度量[15],[26]。在图4a和4b中,本算法和GS04, NC05, TP09, QS09, and GC10在Berkeley数据集上做了对比。此外,将图像分割成均匀方格所获得的基线性能被表示为“平方”。伯克利的数据集包含300幅321*481幅图像,以及与每幅图像对应的约10个人工标注的ground Truth。

边界召回测量ground-truth边缘的哪个部分在一个超像素边界的至少两个像素范围内。每种方法的边界召回被绘制在图4a中,用于增加超像素的数量。较高的边界召回率表明,很少有真正的边缘被遗漏。SLIC和GS 04生成的超像素显示了最佳的边界召回性能。如果将SLIC的紧致性m从默认值10降下来,SLIC的性能优于GS 04。

图4b所示的欠分割误差是另一个边界粘着度的度量。给定一个来自ground-truth的分割区域gig_{i}gi​和覆盖它所需的一组超像素,sj∣sj∩gis_{j}|s_{j}\cap g_{i}sj​∣sj​∩gi​如果∣⋅∣\left | \cdot \right |∣⋅∣是分割块的大小(以像素为单位),m是ground-truth块的大小,B是sjs_{j}sj​与gig_{i}gi​重叠中的最小像素数,分割误差表示为:

在我们的实验中,B被设置为∣sj∣\left | s_{j} \right |∣sj​∣的5%,以计算ground-truth中的歧义。不与ground-truth紧密匹配的超像素会导致较高的U值。

4.2 计算和内存效率

通常使用超像素来代替像素网格,以帮助加快其他算法的速度。因此,首先有效地生成超像素是很重要的。在图. 4c,我们比较了各种超像素方法在英特尔双核2.26GHz处理器和2GB RAM上分割尺寸增加的图像所需的时间。SLIC具有O(n)O(n)O(n)的时间复杂度,是速度最快的超像素方法,其优势随着图像大小的增加而增大。同时GS04也相当优秀,由于这是因为他的时间复杂度为O(n)log(n)O(n)log(n)O(n)log(n)复杂度,其余的方法在处理速度上都有很大的差距。

为了处理大图像,超像素算法的内存效率也很重要。SLiC是内存效率最高的方法,它只需要N个浮点数就可以存储从每个像素到最近的集群中心的距离。其他方法的内存要求相对较高:GS04和GC10需要5N浮点数来存储四连通性的边缘权重和阈值(或8联通为9N)。

边界粘着和分割速度。(a)边界召回测量在超像素边界至少两个像素范围内的地面真相边缘的分数。当GS04显示出最佳的边界召回时,从默认值中减少m会增加SLIC的边界召回量,而GS 04的边界召回率则更高。(b)欠分割误差测量给定地面真相区域的超像素“泄漏”量。SLiC的性能优于其他方法,在大多数有用的操作模式下,SLiC的分割误差最小.©为越来越大的图像生成超像素所需的时间。SLiC是最快的超像素方法,紧随其后的是GS 04,然后是一个显著的差距。NC 05由于速度特别慢而没有绘制。

4.3 分割性能

超像素是分割算法中常用的预处理步骤。一个好的超像素算法应该提高使用它的分割算法的性能。我们比较了SLIC,GS 04,NC 05,TP 09,QS 09和GC 10在MSRC数据集上的分割结果[24]。这些结果是使用[11]的方法得到的,该方法使用超像素计算颜色、纹理、几何和位置特征。然后,它为21个对象类训练分类器,并学习CRF模型。表1中的结果表明,SLIC超像素产生的性能最好。SLiC还比[11]中使用的NC 05减少了500倍以上的计算时间。使用SLIC分割的示例图像如图5所示。我们还使用[10]方法在PascalVOC 2010数据集[7]上进行了测试。如表2所示,SLIC提高了QS 09的分割精度,并将生成超像素的时间减少了一个数量级。

4.4 讨论

除了上面讨论的属性之外,其他考虑因素也应该考虑到超像素算法的质量。其中一个考虑因素是易用性。具有许多难以调整的参数的超像素方法可能会导致时间损失或性能差.另一个考虑因素是指定超像素数量的能力,这并不是所有方法都能提供的。最后,控制超像素的紧凑性的能力是很重要的。紧凑、规则的超像素通常是可取的,因为它们的有界大小和很少的邻居形成了一个更易于解释的图形,并且能够提取更多的局部相关特征。然而,紧凑是以牺牲边界依附为代价的,而控制这种权衡的能力可能是有用的。在此基础上,回顾了每种超像素方法在边界遵守性、速度、存储效率、分割质量、参数整定、指定超像素数量和控制超像素紧度等方面的性能。

TP09. 虽然TP09产生了一些最紧凑和一致大小的超级像素,但在所有方法中,它在边界召回和欠分割错误方面表现最差。TP09的运行时间也很慢,导致分割性能较差。除了NC05,它是最慢的超像素算法;对于2048‘’81536图像,它几乎比SLIC慢100倍,需要800 s。另一方面,TP 09只有一个参数可调,可以直接控制超像素的数量。

NC 05。与TP09相比,规范化的削减只显示出很小的改善。NC 05产生的超像素甚至比TP 09更紧凑,这使得它们对于基于图形的应用程序很有吸引力。然而,边界依存度很低,在边界召回方面排名第六,在欠分割错误中排名第五。尽管如此,分割质量还是惊人的高。NC05的运行时间慢得令人望而却步,该方法未能分割2048*1536图像,产生“内存不足”错误。

GCA10GCb10。这两种方法显示出相似的性能,尽管它们在设计上存在差异(紧凑和恒定强度的超级像素)。GCb 10的“紧凑”超像素比GCA10更紧凑,尽管比TP09和NC05要小得多。在边界召回方面,GCA 10和GCb 10分别排在第五和第四位。由于分割度过低(第三和第四),他们的表现略有改善。虽然GCA 10和GCb 10比NC 05和TP 09快,但它们的缓慢运行仍然限制了它们的有用性(分别需要235 s和315 s),并且它们报告了最差的分段性能之一。GC 10有三个参数可调,包括补丁大小,这可能是很难设置的。在积极的一面,GC 10允许控制超像素的数量,并能产生超体素。

QS09.QuickShift在低分割误差和边界召回方面表现良好,总体排名第二和第三位.然而,QS09的分割性能相对较差,其他限制使得它不是理想的选择.它有一个缓慢的运行时(181S),需要对几个非直观的参数进行调优,并且不提供对超像素的数量或紧凑性的控制。最后,源代码无法确保超级像素是完全连接的组件,这对于后续处理可能会有问题。

GS04符合图像边界,虽然超像素是非常不规则的。在边界召回方面,它排在第一位,表现略好于SLIC。它是第二快速的方法,在18.19 s内分割2048*1536图像(不执行参数搜索)。然而,GS 04的分割性能和分割误差相对较低,这可能是因为它的大、不规则形状的超像素不适合像[11]这样的分割方法。最后,GS04不允许使用其三个输入参数来控制超像素数或紧凑度。

SLIC在这里比较的超像素方法中,SLIC整体表现显然是最好的,它是最快的和最有效使用内存的方法,分割一个2048*1536图像在14.94 s以内。它具有良好的边界依存性,在欠分割误差方面优于所有其他方法,并且在边界召回方面以较小的幅度仅次于GS 04(通过调整m,它排在第一位)。当用于分割时,SLIC在MSRC和PASCAL数据集上表现出最佳的性能提升。SLiC使用简单,其唯一的参数是所需的超像素数,是产生超体素的为数不多的方法之一。最后,在现有的方法中,SLIC的独特之处在于它能够通过m来控制超像素紧密性和边界粘着性之间的权衡。

4.5 更复杂的距离测量

考虑到第3节中描述的方法的简单性,读者可能想知道更复杂的距离度量是否改善了SLIC的性能。我们用自适应归一化距离测度(ASLIC)和测地距离测度(GSLIC)代替(3)中的距离来研究这个问题。也许令人惊讶的是,(3)中使用的简单距离度量在速度、内存和边界粘附方面优于ASLIC和GSLIC。

自适应-SLIC,或ASLIC,适应每个集群中的颜色和空间规格化。如第3.2节所述,S和m(3)是簇内假定的最大空间和颜色距离。这些常量值用于对颜色和空间邻近度进行规范化,因此可以将它们合并成一个单独的距离度量来进行聚类。ASLIC不使用常量值,而是使用其从上一次迭代中观测到的最大空间和颜色距离(MS;MC)动态地标准化每个集群的接近度。这样,距离测量就变成了

D=(dcmc)2+(dsms)2D=\sqrt{(\frac{d_{c}}{m_{c}})^{2}+(\frac{d_{s}}{m_{s}})^{2}}D=(mc​dc​​)2+(ms​ds​​)2​

与以前一样,第一次迭代使用常量归一化因子,但算法随后跟踪每个集群的最大距离。这种方法的优点是,超像素的紧凑性更一致,而且从来没有必要设置。这是以降低边界召回性能为代价的,如图4A所示。

GSLIC使用测量的的距离代替(3)中使用的距离。这个从一个像素I(pi)I\left ( p_{i} \right )I(pi​)到另一个像素I(pi)I\left ( p_{i} \right )I(pi​)的无符号测量距离的定义为:

g(I(pi),I(pj))=minP∈τd(P)g(I(p_{i}),I(p_{j}))=min_{P\in \tau }d(P)g(I(pi​),I(pj​))=minP∈τ​d(P)

其中τ\tauτ是I(pi)I(p_{i})I(pi​)和I(pj)I(p_{j})I(pj​)所有路径的集合,d(p)d(p)d(p)是对应路径P的损失函数

d(P)=∑ni=2∥I(pi)−I(pi−1)∥d(P)=\sum_{n}^{i=2}\left \| I(p_{i})-I(p_{i-1}) \right \|d(P)=∑ni=2​∥I(pi​)−I(pi−1​)∥

其中∥I(pi)−I(pi−1)∥\left \| I(p_{i})-I(p_{i-1}) \right \|∥I(pi​)−I(pi−1​)∥是pip_{i}pi​到pi−1p_{i-1}pi−1​的LAB空间的欧拉距离。这种方法的优点是保证了XY平面上的连通性,消除了后处理步骤的需要。然而,计算成本较高,边界粘附性能受到影响,如图4A所示。

5 生物医学应用

许多流行的基于图形的分割方法,如[3]的计算代价变得越来越昂贵,因为更多的节点被添加到图中,限制了图像的实际大小。对于某些应用,如电子显微图像中的线粒体分割,图像很大,但降低分辨率不是一种选择。在这种情况下,在像素网格上定义的图形的分割将是很难的。在[18]中,SLIC超像素显着地降低了图的复杂度,使得分割变得容易处理。从[18]中分离出来的线粒体如图所示。6A和6B。

在[19]中,这种方法被扩展到包含数十亿体素的3D图像堆栈。只有最简单的算法才能对如此庞大的数据进行操作,而不会以某种方式缩小图形的大小。SLiC超体素降低了内存需求和复杂度超过三个数量级,并显着地提高了性能比规则立方体,如图所示。6C、6d和6E。

6 结论

超像素已经成为视觉界必不可少的工具,本文为读者提供了现代超像素技术的深入性能分析。我们对五种最先进的算法进行了经验比较,重点讨论了它们在分割框架中作为预处理步骤时的边界依存性、分割速度和性能。此外,我们还提出了一种新的基于k均值聚类的超像素生成方法SLIC,它在几乎所有方面都优于现有的超像素方法。虽然我们的实验是彻底的,但它们附带了一个警告。某些超像素方法,特别是GC10和TP09,不考虑颜色信息,而其他方法则考虑颜色信息。这可能对他们的业绩产生不利影响。

Image Segmentation论文学习翻译-SLIC Superpixels Compared to State-of-the-Art Superpixel Methods相关推荐

  1. Context Prior for Scene Segmentation论文阅读/翻译

    Context Prior for Scene Segmentation论文阅读/翻译 论文地址 Abstract Introduction Context Prior Affinity Loss C ...

  2. SLIC与目前最优超像素算法的比较 SLIC Superpixels Compared to State-of-the-art Superpixel Methods

    SLIC与目前最优超像素算法的比较 Radhakrishna Achanta, Appu Shaji, Kevin Smith, Aurelien Lucchi, Pascal Fua, and Sa ...

  3. 强化学习6——policy gradient的变种State of the Art

    policy-base SOTA 学习周博雷老师课程总结 Natural Policy Gradient 为了改善PG算法的不稳定的缺点(如果更新到一个bad policy,就会采集到的一个坏的数据集 ...

  4. 精读论文UNet++: A Nested U-Net Architecture for Medical Image Segmentation(附翻译)

    UNet++: A Nested U-Net Architecture for Medical Image Segmentation(附翻译) 写于2020年7月,本学期精读的第二篇论文,加油菜菜的小 ...

  5. End-to-End Object Detection with Transformers,DETR论文学习

    End-to-End Object Detection with Transformers,DETR论文学习 1. 引言 2. 本论文发表前的目标检测策略(非端到端的目标检测策略) 2.1 目标检测的 ...

  6. 论文学习——StyleGan原文精读

    原论文地址:https://arxiv.org/pdf/1812.04948.pdf 原论文及翻译,参考研究,能力有限,不一定每句话都准确,欢迎讨论 A Style-Based Generator A ...

  7. Panoptic Segmentation论文笔记

    个人博客:http://www.chenjianqu.com/ 原文链接:http://www.chenjianqu.com/show-113.html 论文:Alexander Kirillov,K ...

  8. Feature Selective Anchor-Free Module for Single-Shot Object Detection论文阅读翻译 - 2019CVPR

    Feature Selective Anchor-Free Module for Single-Shot Object Detection论文阅读翻译 文章目录 Feature Selective A ...

  9. [论文学习]TDN: An Integrated Representation Learning Model of Knowledge Graphs

    [论文学习以及翻译]TDN: An Integrated Representation Learning Model of Knowledge Graphs 文章主要内容 摘要 前言 相关工作 基于T ...

最新文章

  1. Asp.Net 之 下载文件的常用方式
  2. c语言反编译_Gacrux:基于C语言的可自定义PE加载恶意软件
  3. cat /proc/meminfo 各字段详解
  4. 一段java并发编程代码
  5. html canvas直线进度条,js+HTML5 canvas 实现简单的加载条(进度条)功能示例
  6. python写数据到mysql_使用python3 实现插入数据到mysql
  7. 利用百度搜索结果爬取邮箱
  8. sql语句优化的几种方法
  9. java毕业设计水库洪水预报调度系统源码+lw文档+mybatis+系统+mysql数据库+调试
  10. 深入浅出MFC第二章笔记
  11. 幅频特性曲线protues_求助如何用MULTISIM画出幅频特性曲线?如何使用波特图仪器?...
  12. 20145322何志威 《Java程序设计》第8周学习总结
  13. 指纹识别技术综述(扫盲篇)(转载)
  14. Oracle 基本SQL语句
  15. 矩阵中的旋转(Rotation)
  16. 上篇:基于球面调和基的实时全局光照明
  17. Houdini实现AO效果
  18. 从Oracle收购Sun 公司谈起
  19. Laravel第三方登录开发之实现微博登录
  20. IDEA统计代码总行数———————插件管理

热门文章

  1. Python networkx库
  2. 优酷移动端弹幕穿人架构设计与工程实战总结
  3. Excel怎么转换为Word文档?分享一种快速转换方法
  4. java开发桌球游戏源代码_Java学习的开端小游戏----桌球游戏
  5. 线性代数计算机应用论文,线性代数问题的计算机应用.docx
  6. Java使用FTP、FTPS上传文件
  7. 用液晶显示器和纯平显示器浏览Blog
  8. Mysql InnoDB一棵B+树能存多少行数据?为什么要用B+树?而不是其他树?
  9. mac自媒体gif图片压缩
  10. python访问局域网内其他电脑的共享文件