CASENet: Deep Category-Aware Semantic Edge Detection读书笔记

摘要:本文主要是给出一个类别感知的语义边缘检测算法。传统的边缘检测本身就是一个具有挑战性的二元问题,相比之下类别感知的语义边缘检测是一个更具有挑战性的多元问题。因为边缘像素出现在属于两个或更多个语义类的轮廓或连接点中,所以本文对每个边缘像素与至少两个类别相关联这个问题进行建模,并提出了一种新的基于ResNet的端到端深度语义边缘学习架构,以及新的跳跃结构,其中顶层卷积层上的类别边缘特征进行共享并与同一组底层特征进行融合。最后,提出了一个多类别的损失函数来监督特征的融合。

上图是CItyscapes数据集中的一张道路图,其中有几类物体,比如:建筑、地面、天空和汽车等等。特别地,在检测边缘像素的同时根据与一个或多个类别对象的关联对它们进行分类。例如,位于建筑物和杆轮廓上的边缘像素可以与这两个类别都相关联。在上图中对边界进行了可视化,列出了典型的类别组合的颜色,如“建筑+杆”和“道路+人行道”。在本文的问题中,每个边缘像素由一个向量表示,其中向量的每个元素表示该像素与不同语义类别之间的关联程度。虽然大多数边缘像素只与两个类别对象相关联,但在路口的情况下,可能边缘像素与三个甚至更多的类别像素相关联。因此,不限制一个像素可以关联的类别对象的数量,这也奠定了本文是作为一个多类别学习问题来进行研究的。


在本文中,提出了CASENet,一个能够检测类别感知语义边缘的深度网络。给定K个语义类别,网络实际上产生K个独立的边缘图,其中每个图表示某个类别的边缘概率。上图分别给出了测试图像的边缘图。

本文的工作与HED同样采用了嵌套体系结构,但是将问题扩展到更困难的类别感知语义边缘检测问题上。其中主要贡献如下:

1. 为了解决边缘分类,提出了一种多类别的学习框架,比传统的多类框架更好地学习边缘特征。

2. 提出了一个新的嵌套结构,在ResNet上不使用深监督,其中底部的特征用于加强顶部的分类。本文还发现深监督对该问题没有益处。

一、问题描述:

给定输入图形,其目标是基于预定义类别计算相对应的语义边缘图。对于输入图像I和语义类别K,可以获得K个边缘图\left\{ Y_{1},...,Y_{K} \right\} ,其中每个边缘图的大小与输入图像I大小相同。网络中带有参数W,把Y_{k}\left( p|I,W \right) \in \left[ 0,1 \right] 作为网络输出,该式表示像素p的第k个语义类别的边缘概率。

多类别的损失函数

可能由语义分割的多类性质驱动,关于类别感知语义边缘检测的几个相关作品或多或少从多类学习的角度来研究问题。 我们的直觉是,这个问题本质上应该允许同时属于多个类别的一个像素,并且应该由多标签学习框架来解决。

因此,我们提出多类别损失。假设每个图像I都有一组标签图像\left\{ \bar{Y} _{1},...,\bar{Y}_{K} \right\} ,其中\bar{Y}_{k} 表示第K类语义边缘的真值。多类别损失函数表示为下式:

L\left( W \right) =\sum_{k}{L_{k}\left( W \right) } =\sum_{k}{\sum_{p}{\left\{ -\beta \bar{Y}_{k}\left( p \right)logY_{k}\left( p|I;W \right)-\left( 1-\beta \right)  \left( 1-\bar{Y}_{k}\left( p \right) \right)log\left( 1- Y_{k}\left( p|I;W \right)\right)     \right\} } }

其中\beta 是图像中非边缘像素占样本数偏度的百分比(这个偏度我也不是很懂)。

二、网络框架:

本文提出了CASENet,一种端到端可训练的卷积神经网络(CNN)架构(如图c所示)来解决类别感知语义边缘检测。在描述CASENet之前,首先提出两种可选的网络架构,尽管这两种架构也可以检测出边缘,但是都有一些无法解决的问题,本文通过提出CASENet架构来解决这些问题。


基本网络:

本文采用ResNet-101框架,通过删除原来的平均池和完全连接的层,并保留底层卷积。 为了更好地保留低级边缘信息,进一步修改基本网络。本文将ResNet-101中的第一和第五卷积层(上图中的“res1”和“res5”)的步长大小从2变为1。将扩张因子引入后续的卷积层,以保持与 原来的ResNet相同大小的感受野。

基本结构:

在上面提出的基本网络的顶层,添加一个分类模块(图d),一个1×1卷积层后面加一个双线性上采样(由K组反卷积层去实现)以产生K个激活图\left\{ A_{1},...,A_{K} \right\} ,每个都与图像大小相同。 然后,由公式(多类别损失函数中的公式)Y_{k}\left( p \right) =\sigma \left( A_{k}\left( p \right)  \right) 给出的sigmoid单元来计算一个像素属于第K类边缘的概率。 这里注意,Y_{k}\left( p \right) 不是互斥的。

深监督框架:

全局嵌套边缘检测(HED)网络的是一个有深监督的嵌套架构。基本思想是除了顶部的网络损失之外,也加强底部卷积层侧面造成的损失。另外,通过监督侧面激活的线性组合来获得融合边缘图。

HED仅执行二进制的边缘检测。本文扩展了这种框架,用于处理K个通道的侧边输出的和K个通道的最终输出。如图b,这里称其为深度监督网络(DSN)。在该网络中,将之前描述的分类模块连接到每个残差块的输出,产生5个侧边分类激活图\left\{ A_{1},...,A_{5} \right\} ,其中每个激活图都有K个通道。然后通过切片级联层(图g中颜色表示通道下标)来融合这5个激活图,以产生5×K个通道的激活图:

A^{f}=\left\{ A_{1}^{\left( 1 \right) },...,A_{1}^{\left( 5 \right) } ,A_{2}^{\left( 1 \right) },...,A_{2}^{\left( 5 \right) } ,...,A_{K}^{\left( 5 \right) }\right\}

A^{f}被送入融合分类层进行K组的1×1卷积(图f)以产生K通道激活图A^{\left( 6 \right) }。 最后,使用公式(多类别损失函数中的公式)基于\left\{ A^{\left( 1 \right) },...,A^{\left( 6 \right) } \right\} 计算6个损失函数,对网络进行深监督。

这里的连接采用切片级联和组卷积的原因如下:由于5个侧面激活是被监督的,所以限制侧面激活的每一个通道,以使它带来与相应类最相关的信息。

通过切片连接和分组卷积,像素p的融合激活由下式给出:

A_{k}^{\left( 6 \right) }=W_{k}^{T}\left[ A_{k}^{\left( 1 \right) }\left( p \right)^{T},...,A_{k}^{\left( 5 \right) }\left( p \right)^{T}  \right]

这基本上集成了来自不同尺度的相应类的激活作为最终融合的激活,同样地,本文也使用了这种设计。

CASENet框架:

在介绍完基本框架和DSN框架后,发现类别感知语义边缘检测任务中存在几个潜在的问题:

第一,底部的感受野是有限的。因此,由于早期的网络给出的语义分类是不合理的,所以给出上下文信息在语义分类中起着重要作用。本文认为,语义分类应该在顶部发生,其中特征由高级信息进行编码。

第二,底面侧面特征有助于增强顶级分类,抑制非边缘像素并提供详细的边缘定位和结构信息。因此,在边缘检测中应该考虑到它们。

本文提出的CASENet架构(图c)是可以解决上述问题的。该网络采用嵌套架构,在某种程度上与DSN有些相似,但也包含了几个关键的改进。总结这些改进如下:

1. 将底部的分类模块更换为特征提取模块。

2. 将分类模块放在网络的顶部,并进行监督。

3. 执行共享级联(图h),而不是切片连接。

侧面特征提取和侧面分类之间的区别在于前者仅输出单通道特征图F^{\left( j \right) }而不是K类激活图。共享级联从Side 1-3复制底层特征F=\left\{ F^{\left( 1 \right) },F^{\left( 2 \right) },F^{\left( 3 \right) } \right\} 并分别连接到K个顶部激活中的每个激活:

A^{f}=\left\{ F,A_{1}^{\left( 1 \right) },F,A_{2}^{\left( 5 \right) } ,F,A_{3}^{\left( 5 \right) },...,F,A_{K}^{\left( 5 \right) }\right\}

将所产生的连接激活图再次送入到有K组卷积的融合分类层中以产生K通道激活图A^{\left( 6 \right) }

一般来说,CASENet可以被认为是一个联合边缘检测和分类网络,通过让低级特征参与,并通过跳跃结构来增强更高层次的语义分类。

  • 7
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值