论文
Predicting Depth, Surface Normals and Semantic Labels with a Common Multi-Scale Convolutional Architecture
摘要
相比与Eigen2014,Eigen2015一方面考虑使用网络同时估计深度、法向以及语义信息,另一方面还对网络进行了一定程度的升级,更深更复杂。
网络模型
下图展示了文章中提出的网络模型,其共可以分为三层。
第一层为特征提取层,无论是用AlexNet还是VGGNet,都是先提取特征,得到一个高维特征向量,然后reshape和上采样得到一个多通道的特征图。作者在介绍此网络层的时候,其实是非常推崇其中的全连接层,因为他认为全连接可以使得网络有全局视野。
第二层为预测层,其输入包括原始影像和来自第一层的特征提取层,最后输出最终的预测结果。可能是显卡更好了,相比Eigen2014,Eigen2015可以得到分辨率更高的结果。同时作者还强调了一下,第二层的输入是第一层的特征图,而不是第一层的结果;这个操作的目的是使得第一层和第二层可以一起训练,而不是Eigen2014那样分开训练。
第三层为优化层,一般是固定第一层和第二层,对粗糙的结果进行优化。
总的来说,Eigen2015和Eigen2014还是有很多相似之处,唯一的变化就是网络层数确实是多了好多~~。
损失函数
Eigen2014里已经充分介绍了尺度不变的损失函数,作者在Eigen2015里又稍微升级了一下,就是加了一个平滑项(其实有点法向量的意思,就是让你深度更平滑),其计算公式如下。前两项已经很清楚了,最后一项就是一个基于梯度的平滑。
除了深度的损失函数,还是法向量的损失函数和语义分割的损失函数,一个是向量角度差,一个是交叉熵。感觉没有介绍的动力。。。。
结果及分析
博主比较关注深度预测结果,所以就贴一个,直接说一下结论。然深度的估计结果更好了,这其中网络深度和损失函数都功不可没。