CVPR2020 | HANet:通过高度驱动的注意力网络改善城市场景语义分割

点击上方“AI算法修炼营” , 选择加星标或“置顶”
标题以下 , 全是干货

CVPR2020 | HANet:通过高度驱动的注意力网络改善城市场景语义分割

文章插图
论文地址:
代码地址:
该论文利用了城市场景图像的内在特征 , 并提出了一个通用的附加模块 , 称为高度驱动的注意力网络(HANet) , 用于改善城市场景图像的语义分割 。
将城市场景图像进行水平分割后(分为上部、中部、下部) , 像素级类别分布彼此之间存在显著差异 。同样 , 城市场景图像具有其自身独特的特征 , 但是大多数语义分割网络并未反映出体系结构中的此类独特属性 。HANet网络架构结合了利用垂直属性来有效处理城市场景数据集的能力 。HANet根据像素的垂直位置来选择相关特征并进行像素类 。
经过广泛的定量分析表明 , HANet模块能既简单又经济高效地添加到现有模型中 。在基于-101的分割模型中 , 该方法在基准上实现了新的SOTA性能 。此外 , 文中通过可视化和解释注意力图来表明所提出的模型与在城市场景中观察到的事实是一致的 。
1. 简介
由于城市现场图像是由安装在汽车前部的摄像头捕获的 , 因此城市现场数据集仅由道路行驶图片组成 。这导致有可能根据空间位置 , 特别是在垂直位置 , 引入共同的结构先验 。
下图显示了垂直位置上的城市场景数据集的类别分布 。尽管少数类别的像素在整个图像区域中都是主要的(图1(a)) , 但类别分布对垂直位置有很大的依赖性 。也就是说 , 图像的下部主要由道路组成 , 而中间部分则包含各种相对较小的对象 。在上部 , 建筑物 , 植被和天空是主要对象 , 如图1(b)所示 。
CVPR2020 | HANet:通过高度驱动的注意力网络改善城市场景语义分割

文章插图
可以看出 , 类别分布极为不平衡 ,  主要的前五类的概率:道路 , 建筑物 , 植被 , 汽车和人行道 。占主导地位的类占据了整个数据集的88%。如上所述 , 如果将图像分为三个区域:上部 , 中部和下部 , 则类别分布完全不同 。
如果能够识别出图像中任意像素所属的部分 , 将有助于语义分割中的像素级分类 。提出了一种新型的高度驱动的注意力网络(HANet) , 作为城市场景图像语义分割的通用附加模块 。给定一个输入特征图 , HANet提取代表每个水平划分部分的“高度上下文信息” , 然后从高度上下文信息中预测每个水平部分中特征或类别 。
论文主要贡献:
2. 背景
语义分割的模型中 , 在捕获高级语义特征的同时保持特征图的分辨率对于实现语义分割的高性能至关重要 。主要方法有:
CVPR2020 | HANet:通过高度驱动的注意力网络改善城市场景语义分割

文章插图
3. 方法
根据空间位置的不同 , 城市场景图像通常包含共同的结构先验 。就类别分布而言 , 图像的每一行都有明显不同的统计信息 。从这个意义上说 , 在城市场景分割的像素级分类过程中 , 可以分别捕获表示每一行的全局上下文信息即高度上下文信息来估计信道的权重 。
因此 , 提出了HANet , 其目的是:i)提取高度方向的上下文信息 , ii)使用上下文计算高度驱动的注意权重 , 以表示每行的特征(中间层)或类(最后一层)的重要性 。。
CVPR2020 | HANet:通过高度驱动的注意力网络改善城市场景语义分割

文章插图
(a)width-wise
压缩空间维 。在宽度合并操作的最大合并和平均合并之间进行选择是一个超参数 , 并根据经验设置为平均合并 。
(b,d) for
合并操作后 , 模型生成矩阵Z∈RC`×H` 。但是 , 并不是矩阵Z的所有行对于计算有效的关注图都是必要的 。因此 , 先经过插值进行下采样(b) , 同时 , 由于由下采样表示构造的注意图也是粗糙的 , 因此还需要通过上采样将注意图转换为与给定的高层次特征图Xh具有等效的高维(图2(d)) 。
(c) -map
高度驱动的通道式注意力图A是由卷积层获得的 , 这些卷积层将宽度合并和插值后的特征图?Z作为输入 。在生成注意力图过程中 , 采用卷积层而不是全连接层(与SENet有区别) , 以便在估计注意力图时考虑相邻行之间的关系 , 因为每一行都与其相邻行相关 。同时 , 为了允许这些多个功能和标签 , 在计算注意力图时使用了S形函数 , 而不是函数 。这些由N个卷积层组成的运算可以写成:
(c)
当人类识别出驾驶场景时 , 他们对特定物体的垂直位置具有先验知识(例如 , 道路和天空分别出现在下部和上部) 。受此观察的启发 , 将NLP领域的正弦位置编码添加到HANet中 。具体位置编码定义为:
【CVPR2020 | HANet:通过高度驱动的注意力网络改善城市场景语义分割】在计算注意力图之后 , 可以将给定的较高级特征图Xh转换为通过A和Xh的元素乘积获取的新表示 。每个通道的单个缩放向量是由每个单独的行或多个连续行每组派生的 , 因此该向量与水平方向一起进行计算 , 公式为:
CVPR2020 | HANet:通过高度驱动的注意力网络改善城市场景语义分割

文章插图
4. 具体细节和可视化
CVPR2020 | HANet:通过高度驱动的注意力网络改善城市场景语义分割

文章插图
采用 + 作为语义分割任务的基准 。+具有带ASPP的编解码器架构 , 该架构采用各种扩张速率对应于不同rate的空洞率 。在从骨干网络对高级表示进行编码之后 , 将HANet添加到五个不同层的分段网络 。这是因为高级特征与垂直位置的相关性更强 。
CVPR2020 | HANet:通过高度驱动的注意力网络改善城市场景语义分割

文章插图
HANet具体的结构图如上图所示 。在中使用二维自适应平均池化操作2来实现针对粗略注意的宽度方向池化和插值 。此后 , 应用了层和三个一维卷积层 。
CVPR2020 | HANet:通过高度驱动的注意力网络改善城市场景语义分割

文章插图
如上图所示 , 宽度方向上的列与高度方向上的相应的列类别分布相似 。因此 , 相对于图像的水平位置提取不同的信息将相对困难 。同样 , 从经验上讲 , 使用注意力网络与预测宽度类别分布时 , 没有观察到有意义的性能提升 。这证实了HANet概念的基本原理 , 该思想提取并合并了高度方向的上下文信息 , 而不是宽度方向的上下文信息 。
5. 效果
CVPR2020 | HANet:通过高度驱动的注意力网络改善城市场景语义分割

文章插图
为了与其他最新模型进行比较 , 使用经过精细注释的训练和验证集 , 9000次迭代进行训练 。在采用-101 骨干的情况下 , 额外使用了粗注释的图像 , 并且该模型在 上进行了预训练 。crop和批量大小分别更改为864×864和12 。将基于-101和-101的最佳模型与测试集上的其他最新模型进行了比较 , 模型实现了最新的性能 。
CVPR2020 | HANet:通过高度驱动的注意力网络改善城市场景语义分割

文章插图
目标检测系列
语义分割系列
面试求职系列
一起学C++系列