本文主要是介绍RedNet: Residual Encoder-Decoder Network for indoor RGB-D Semantic Segmentation.,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章地址
这是一篇2018年的文章,之所以看它一是因为他的整体架构可以作为RGB-D的基础框架,比较通用,另一方面是因为在上一篇文章中提到的,恢复边界比较好。
放在2018的背景下,resnet已经提出,RedNet在encoder和decoder使用了残差块作为building block。作者同时提出了多尺度深监督,在现在的许多文章都用到了。最终在SUN RGB-D上取得47.8%的成绩。
FCN分为两个种类,一类是encoder-decoder结构一类是膨胀卷积,编码解码结构通过不断的卷积来扩大感受野,但是图像的尺寸慢慢变小,下采样的丢失信息在decoder时很难恢复出来,膨胀卷积通过增大膨胀率来扩大感受野,但是图像的尺寸不变会导致计算量非常大。
RedNet使用resnet34来作为rgb和depth的backbone,并且每一个layer都会进行融合,并且使用跳连接结构传递encoder的空间信息到decoder。
模型结构:相对比较简单
需要注意的点就是trans即模型decoder的上采样操作:
框架中的跳连接还有四个Agent block,其实就是四个普通的1x1卷积,目的是降低encoder通道大小,为了使encoder通道可以和decoder进行融合。且只在resnet50使用,resnet34不使用,因为resnet的encoder没有维度的扩张。
在encoder中,每一个残差块在第一个模块进行下采样,后面跟着几个卷积,同时在旁边会有一个残差连接,下采样操作,这些在原始的resnet中很清楚,而转置上采样是开始卷积不会影响大小,到最后一个卷积时再上采样,图像的大小扩大两倍,通道减小两倍,旁边的跳连接也是这样操作。
具体的配置:
实验:采用SUNRGB-D,作者使用了resnet34和50作为backbone,使用了median frequency调整类别的损失。
结果:我们可以发现resnet50相比于34提升了0.01,resnet34带深监督的比不带深监督的提升0.01,resnet34带深监督比resnet50不带深监督的还要好。
-----------------------------------------------------------分割线----------------------------------------------------------------
关于RedNet框架的一些"亲戚":
1:首先是整体框架几分类似的ESANet:
1:RGB和深度的融合策略一样,融合方式不一样。
2:跳连接几乎是一样的。
3:深监督几乎是一样的。
4:代码中也使用对每个像素进行加权。
2:接着是类似于resnet下采样的转置卷积上采样
在CANet中有使用到:
多尺度监督也用到了,现在多尺度监督已经成为一个经常用到的方法了。
3:修改,类似于ESANet,我们可以在RGB和Depth融合的地方进行修改,在decoder进行修改。
---------------------------------------------------------------------分割线--------------------------------------------------------
看一下论文的分割结果可视化:sideout逐渐变清晰,锯齿感越来越少。
这篇关于RedNet: Residual Encoder-Decoder Network for indoor RGB-D Semantic Segmentation.的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!