【阅读笔记】《LSTM-CF: Unifying Context Modeling and Fusion with LSTMs for RGB-D Scene Labeling》

版权声明:如需转载请联系博主获取权限并标明出处 https://blog.csdn.net/ShuqiaoS/article/details/87933409

本文记录了博主阅读语义分割网络LSTM-CF论文《LSTM-CF: Unifying Context Modeling and Fusion with LSTMs for RGB-D Scene Labeling》的阅读笔记,代码看这里。这是一篇2016年7月份的论文,时间有点早,而且文章比较简单,作为开端还是可以的。

更新于2019.02.26。

Introduction

Scene labeling也叫做semantic scene segmentation,即语义分割,其目的是给场景中的每个像素都赋予一个语义类别的标注,比如桌子、路、墙,等等。如下图所示。(关于语义分割可以参照博主的这篇论文。)

在这里插入图片描述

应用场景:机器人任务规划(robot task planning)位姿估计平面分割基于上下文的图像检索自动照片调整(automatic photo adjustment)

与室外场景的分割相比,室内场景任务更加困难,原因有:室内场景的语义类别更多、遮挡更严重、目标外观差异更大。 比如,如果只用广度通道(RGB)识别诸如床这种室内目标,盖上不同的床单、搭配不同的窗帘,要比室外场景难很多(如道路、建筑、天空)。尽管引入深度信息后,由于其能够提供额外的结构信息,室内场景的分割效果要好很多,但是仍然有下面两个问题需要解决:

  1. 如何有效地表述和融合共存的深度和光度(RGB)数据。
  2. 如何在特征学习过程中有效获取全局场景上下文。

LSTM-CF用了与ReNet相同的方式,通过竖直和水平方向上级联的RNN模型捕获图像中的2D依赖项。通过几何编码(geometric encodeing)方法对深度通道构造了HAA图像,再用几层卷积层提取特征。受ReNet的启发,这些卷积层后面跟着用于记忆上下文的层,对竖直方向上短期和长期空间依赖建模。对于光度通道,LSTM-CF用DeepLab网络学习特征,随后用记忆了上下文的层建模竖直方向上的上下文。之后,网络利用一个融合层将竖直方向上的光度和深度通道的上下文整合起来。考虑到光度通道相对于深度通道而言包含更多信息,LSTM-CF在最终全连接层之前又增加了跨层连接,将从光度通道习得的特征直接传递给融合的全局上下文。支持端到端训练、测试。

LSTM-CF模型

下图是论文所提出的LSTM-CF模型,包含四个部分:用于竖直深度上下文提取的层,用于竖直光度上下文提取的层,用于整合光度和深度上下文成2D全局上下文的记忆融合层,和给定级联的卷积特征和全局上下文进行像素级场景分割的最后一层。网络的输入是光度图像和深度图像。(深度图像提取上下文的那三层卷积的参考文献看这里。)

在这里插入图片描述

Memorized Vertical Depth Context

给定深度图像,论文应用这篇论文的提出的HHA描述来编码深度图像在三通道(视差、表面法线、高)下的几何性质。后面三层卷积层随机初始化,用来获得与RGB通路下相同的图像分辨率(这个操作与该论文不同,没有直接用ILSVRC2012数据库下预训练好的模型。这么做的原因是HHA图像与RGB图像色彩分布不同。)在HHAConv3层后面,跟了一个从ReNet中获得的额外的memorized上下文层,其从卷积层习得的局部上下文信息沿竖直方向进行双向传播。由于进行的是逐像素标注,因此这个ReNet层中的每个patch中仅包含一个像素。由此,vertical memorized context layer(此处用LSTM作为回归单元)可以表示为:

h i , j f = LSTM ( h i , j 1 f , f i , j ) , for  j = 1 , , h h_{i,j}^f=\text{LSTM}(h_{i,j-1}^f,f_{i,j}),\quad \text{for} \ j=1,\dots,h
h i , j b = LSTM ( h i , j 1 b , f i , j ) , for  j = h , , 1 h_{i,j}^b=\text{LSTM}(h_{i,j-1}^b,f_{i,j}),\quad \text{for} \ j=h,\dots,1

其中,用 F = { f i , j } F=\{f_{i,j}\} 表示HHAConv3习得的特征图, F R w × h × c F\in\mathbb R^{w\times h \times c} w w h h c c 分别代表宽、高、通道数), h f h^f h b h^b 分别代表LSTM中前向和后向的隐藏状态。在前向LSTM中,在像素 ( i , j ) (i,j) 处的单元以 h i , j 1 f R d h_{i,j-1}^f\in\mathbb R^d f i , j R c f_{i,j}\in\mathbb R^c 为输入,输出由下式算出(文献):

后向LSTM也可以类似地计算出来。

最后,像素级竖直深度上下文被共同描述成一张图 C depth R w × h × 2 d C_{\text{depth}}\in\mathbb R^{w\times h\times 2d} ,其中 2 d 2d 代表vertical memorized context layer输出通道数的总数。

Memorized Vertical Photometric Context

这一部分没说什么特别的,就是把网络结构详细说了一下。注意一点:提升分辨率这里用的interpolation。

Memorized Context Fusion

这一层的输入、输出维度: R w × h × 4 d \mathbb R^{w\times h\times 4d} R w × h × 2 d \mathbb R^{w\times h\times 2d}

Scene Labeling

考虑到光度图像比离散、稀疏的深度图像包含更多信息,网络又加了两层,从光度图像分支到像素标注之前。文献

实验结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/ShuqiaoS/article/details/87933409
今日推荐