(超、深)超像素网络SSN

1.简介

目前超像素难以和深度学习相结合主要由两个原因:

  • 标准卷积运算是在规则网格上定义的,当应用于超像素时其效率会变的很低。
  • 超像素的聚类操作具有不可微分的计算,使得无法使用反向传播进行深度学习(难集成到其他端到端可训练的深度神经网络)。

超像素采样网络(SSN)是端到端可训练的。解决第二个问题。


        我们开发了一种新的超像素采样可微模型,利用深度网络学习超像素分割。所得到的超像素采样网络(SSN)是端到端可训练的,允许学习任务特定的超像素,具有灵活的损失函数和快速的运行时间。

        我们首先回顾了SLIC超像素算法,并通过放松SLIC中存在的最近邻约束,将其转化为可微算法。这种新的可微算法允许端到端训练,并使我们能够利用强大的深度网络学习超像素,而不是使用传统的手工制作的特征。这种深度网络与可微SLIC的结合形成了我们的端到端可训练的超像素算法,我们称之为超像素采样网络(SSN)。


SSN的概述

        给定的输入图像首先被传递到一个深度网络中,网络提取每个像素的特征,网络这些深层特征传递到可微SLIC上,SLIC执行迭代聚类,然后使用这些特征来生成所需的超像素。整个网络是端到端可训练的。SSN的可微特性允许使用灵活的损失函数来学习特定任务的超像素。这里显示了两个例子,SSN生成的超像素用于语义分割光流

(超、深)超像素网络SSN_第1张图片

 在BSDS500、Cityscapes和PascalVOC三种不同的分割基准数据集上的实验结果表明,所提出的超像素采样网络(SSN)与现有的著名超像素算法相比,具有更好的性能,而且速度更快。我们还证明,通过简单地将SSN框架集成到现有的使用超像素的语义分割网络中,可以实现性能的改进。


SSN的优点

①可端到端训练:SSN是端到端可训练的,可以很容易地集成到其他深度网络架构中。据我们所知,这是第一个端到端可训练的超像素算法。
②灵活的和特定于任务:SSN允许使用灵活的损失函数进行学习,从而学习特定于任务的超像素。
③最先进的性能:在广泛的基准数据集上的实验表明,SSN优于现有的超像素算法。
④优异的运行时间:SSN在运行时间方面也优于著名的超像素算法,使它能够在大型数据集上学习,并对实际应用有效。


2.相关工作

2.1 传统超像素算法和深度网络的结合

传统的超像素算法可分为基于图的算法和基于聚类的算法。

基于图的方法:将超像素分割问题描述为图的分割问题,图节点由像素表示,边缘表示相邻像素之间的连通性强度。通常,图的划分是通过求解离散优化问题来实现的。在这类算法中广泛使用的算法包括归一化剪切、Felzenszwalb和Huttenlocher (FH)以及熵率超像素(ERS)。由于离散优化涉及离散变量,优化目标通常是不可微的,因此很难结合基于图的方法和深度网络。

基于聚类的方法利用传统的聚类技术(如k-means)进行超像素分割。这类算法中广泛使用的算法有SLIC[1]、LSC和流形SLIC。这些方法主要进行k均值聚类,但在特征表示上存在差异。SLIC将每个像素表示为一个5维位置和Lab颜色特征(XY Lab特征),而LSC方法将这些5维特征投射到一个10维空间中,并在投影空间中执行聚类。
        另一方面,流形SLIC使用二维流形特征空间进行超像素聚类。虽然这些聚类算法需要迭代更新,但在SNIC方法中提出了一种用于超像素分割的非迭代聚类方案。该方法也是一种基于聚类的方法。然而,与现有技术不同,我们利用深度网络通过端到端训练框架学习超像素集群的特性。

        最近的SEAL技术提出了一种通过不可微超像素算法绕过梯度来学习超像素分割的深层特征的方法。与我们的SSN框架不同,SEAL不是端到端可微的。

        端到端指的是输入是原始数据,输出是最后的结果

        非端到端呢,就是输入不是直接的原始数据,而是在原始数据中提取的特征。因为图像像素数太多,数据维度高,会产生维度灾难,所以原来一个思路是手工提取图像的一些关键特征。


2.2 深度聚类

有几种方法,使用深度网络进行无监督数据聚类。但是不同于以往的工作,我们的算法是针对超像素分割任务,我们使用特定的图像约束。此外,我们的框架可以很容易地结合其他视觉目标函数学习任务特定的超像素表示。

3.基础知识

SLIC是一种对图像像素在五维位置和颜色空间(通常缩放为XY Lab空间)上执行的k-means聚类。在形式上,给定一幅图像,有n 个像素,每个像素有5维特征,超像素计算的任务是将每个像素分配给m个超像素中的一个,即计算像素-超像素关联ss

SLIC算法如下:

首先在5维空间中采样(均匀地跨越像素网格进行地)超像素中心,然后基于梯度做一些局部变动。然后迭代地进行以下两个步骤:

1.像素-超像素关联:将像素分配到5维空间中最近地超像素中心。即,分配每个像素以一个新的超像素。

ss
2.超像素中心更新:每个超像素关联的所有像素的5维特征取平均得到新的超像素聚类中心。

ss

这两个步骤构成了SLIC算法的核心,并不断重复,直到收敛或进行固定次数的迭代。计算步骤1中所有像素与超像素之间地距离D非常耗时,所以限制了搜索范围。


4.超像素采样网络

SSN=生成像素特征的深度网络+可微SLIC

4.1可微SLIC

不可微是因为像素-超像素关联地计算引起的。它涉及到不可微的最近邻操作。但是这种最近邻计算也是SLIC超像素聚类的核心,不可避免。

我们方法的关键:将近邻操作转换成可微的。我们不计算像素-超像素硬关联。而是计算软关联。
ss

具体来说,对于t次迭代时的像素p和超像素i,我们将SLIC中的最近邻计算替换为以下像素-超像素关联:
ss

相应,新超像素中心的计算公式也要修改为像素特征的加权和:
 ss,为了方便也将Q^{t}表示为\widehat{Q^{t}},因此超像素中心更新也可以表示为ss

其中,ss是归一化常数。

Q的大小=n × m

超像素数量=m

缩短计距离限制为9个周围,则Q的大小从n × m 降到了n × 9 。Q计算中的这种近似在本质上类似于SLIC中的近似最近邻搜索。

(超、深)超像素网络SSN_第2张图片

你可能感兴趣的:(深度学习,超像素,深度学习,计算机视觉)