Predicting Depth, Surface Normals and Semantic Labels with a Common Multi-Scale Convolutional Archit

空闲期,看看论文

代码开源:http://cs.nyu.edu/~deigen/dnl/

摘要中说,这篇文章是一石三鸟,深度预测,表面估计和语义分析。。。亮点可能就是多尺度了,本来以为要利用语义信息去预测深度。结果并没有。

网络结构


这个算法结构比较有意思,首先根据整张图片进行粗提取一个全局的输出预测,整个结构是取自于[8],不过创新就是1,更深了,2,又加了一个尺度,输出尺寸是输入的一半。3.多通道特征,而不是将特征由1传递到2(是因为concat嘛?有点densenet的意思~貌似是个挺不错的结构~),再细看:

该网络有三个尺度,分别对应着上文的scale1,scale2,scale3:

scale 1:全图像视角:

scale1出来的就是整个图像区域的粗特征预测。它总共有两种,一种AlexNet,一种是VGG。这个呢,看代码也是直接使用VGG的结果,其中有个4096转变成64通道的细节有点诡异~,后面文中讲这种提取粗特征对于图片有了一个全局的掌握,因此视野比较好。

scale 2:预测

比上文的特征粗提取网络的视角更为狭窄,但是这个网络会提供了更多的细节。通过concat这个conv/pool和上文特征粗提取的输出。因此,第二层的输出是55×74.用SGD去训练它。

scale 3: 更高的分辨率

这个部分是要将预测图片的分辨率变高。cocnatscale2层的输出,因此产生了一个更加细节的图片视角。



4.task

深度预测的loss是:


D是预测,D*是ground-truth。d=D-D*。

总体就是个l2loss,后面是水平和垂直方向上面的差异梯度。这一项可以比较ground truth预测的图像梯度。这让预测不仅只考虑附近值,而且领域具有相似的局部特征。这样的输出更好。

很想看下这个loss的代码实现,可惜下的代码里面没有~

总的来说,算法结构挺有新意~loss部分可以考虑

相关文章
相关标签/搜索