Deeper Depth Prediction with Fully Convolutional Residual Networks(FCRN)全卷积残差网络概述
FCRN全卷积残差网络概述
FCRN全卷积残差网络是单目深度估计的一种方法。在FCN全卷积网络的基础上尝试了更深层次的网络带来的好处。
FCRN网络结构
上图中前两行是一个pretrained的ResNet50结构,最后一行为一系列反卷积的结构,使输出图片与输入图片大小近似相等。
FCRN延续了FCN(全卷积网络)的特点,直接去掉了全连接层,取而代之的是一个新的上采样结构.整个网络可以看做是一个encoder-decoder的过程。
插一句去掉全连接层的优点:
第一,是全连接层几乎拥有整个网络的90%以上的参数,去掉全连接层可以更好的利用GPU;
第二,全连接层固定了网络输入输出的大小,只有固定大小的图片才能够被处理。利用encoder-decoder就可以直接处理几乎所有的图片大小。
FCRN的设计与贡献
1.设计Res-Block反池化是提升图片的分辨率。作者首先使用了图a结构,过22的un-pooling层,没有值的地方填补0,之后过55的卷积,使让所有有0的地方都能被卷积到,过relu。采用4个这种结构是综合内存与分辨率的考量,如果使用5块,内存增加且分辨率不会有改善。作者又在该基础上,设计了图c所示的res-block的结构。
2.利用小卷积核使up-convolution更加的有效,降低参数,减少训练时间。在原有的结构中存在un-pooling(上池化)操作,在实验中发现会导致结果中出现过多 0 值,导致卷积操作无意义。于是采用4种不同的小卷积来代替5*5卷积核,分别进行计算,之后叠加feature map,获得更好的训练效果。
3.使用了huber做loss
Huber loss具备了MAE和MSE各自的优点,当值在C范围内为|X|就退化成了MAE(L1范式),而当超过C时就则退化为了MSE(L2范式)。Huber 对两种损失都有了一种平衡。大残差的时候使用L2项,同时,对于小残差梯度,L1效果比L2要好。这也使 Huber 对异常点更加鲁棒。
未完待续