2018 IROS【论文笔记】Towards real-time unsupervised monocular depth estimation on CPU

1 Intro
无监督学习下的深度估计越来越受到关注,但是许多网络层数很多结构也很复杂,需要强大计算能力GPU的模型无法实施在低计算能力的应用环境下。于是本文提出一种网络,可以在CPU上(甚至嵌入式系统)进行准确的深度估计。
2 PYD-NET ARCHITECTURE
与多数策略一样,将深度估计视为图像重建问题去解决。对每一对无标签的数据,左视图通过网络处理获得逆深度图(即视差图disparity maps)。PyD Net可以计算190万个参数,在Titan X Maxwell GPU上运行大约15ms,而Unsupervised Monocular Depth Estimation with Left-Right Consistency使用VGG模型时,可以计算3100万个参数,需要35ms。作者认为本文的简单模型甚至可以在嵌入式系统或智能手机的低端CPU上有效部署。
在这里插入图片描述
2.1 Pyramidal features extractor
输入图片的特征提取是通过encoder12个卷积层实现的。每一个level有一个stride 2的卷积层并后接一个第二卷积层,这样的level有六个。每个卷积层卷积核都是33,激活函数使用leaky ReLU。这样的coarse-to-fine方法可以在high levels(即网络的底层)获得图像的全局内容,也可以在low levels(即网络的高层)去提炼细节。
2.2 Depth decoders and upsampling
提取到的特征是通过四个卷积层组成的depth decoder进行处理,输出feature maps。这个decoder有两个作用:1)在当下层提取一个深度图;2)将这些features经过2
2的deconvolution传递给上一个level。然后上一个level将从input提取出的features和传递过来的features连接起来,再将它们送去新的decoder处理。重复这个操作直至网络最高层。所有的deconvolutional layers都是leaky ReLU激活,除了最后一个deconvolutional层使用sigmoid函数激活来归一化outputs。这样的结构使PyD-Net在每个尺度下去学习预测深度图。
2.3 Training Loss
这里的loss采用Unsupervised Monocular Depth Estimation with Left-Right Consistency一文中的loss方法,有三部分:
在这里插入图片描述
在每一个level计算loss,Lap是使重建的图像和对应的input图像相似,Lds加强disparity平滑,Llr控制左右disparity的一致性。
Appearance Matching Loss
这里表示重建错误,使用L1范式和SSIM计算原始图像与重建图像的不同:
在这里插入图片描述
Disparity Smoothness Loss
使用L1范式约束,使disparity局部平滑,处理图像梯度上的深度不连续。
在这里插入图片描述
Left-Right Disparity Consistency Loss
网络只有left view作为input,为了达到一致性,在左右一致性上施加L1约束,这个loss是为了使左视图disparity map与右视图disparity map相等。
在这里插入图片描述
3 EXPERIMENTAL RESULTS
作者首先比较该方法和其他方法的准确度,然后研究该网络在不同的硬件设备上会有怎样的表现。

3.1 Accuracy evaluation on Eigen split
在这里插入图片描述
上图比较了该方法与其他监督或者非监督的方法。表的第一部分为与其他方法的比较,表中间部分为评估最大深度达到50的预测深度图,从之前和这部分可以看出训练epochs越多(50代表训练50个epochs,200代表训练200个),网络performance越好。表最下面部分是在额外的数据集上训练,作者首先在cs数据集上训练50 epochs,然后在K数据集上进行微调。该网络的表现要明显优于Zhou的。
总的来说,该网络比大多数复杂网络的预测结果要好,在一些情况下也可与top-performing的方法媲美。下一部分就比较两种方法在不同硬件结构上的准确度和运行时间。
3.2 Runtime analysis on different architectures
该网络在不同的尺度下预测深度,在网络的高层会有更好的准确度。对于任意网络训练的例子,如果从网络的低层输出,可以减少计算量,内参需求和运行时间。下表给出了不同层处理和不同设备上运行的比较结果。F是full,H是half,Q是quarter,E是eight
在这里插入图片描述
可以看出,层级越低,运行时间越短,并且PyD-Net明显需要更少的运行时间,是可以在低端处理器上进行实时预测的。下图和表给出具体的在不同层级上的比较结果:

在这里插入图片描述

在这里插入图片描述
此图是比较PyD-net(上)与Godard et al.(下)在F、H、Q、E的结果
4 Discussion
这是一个小网络,作者指出未来工作应该在致力于将PyD-Net应用于一些低配约束的环境里。其实该网络也是coarse to fine的类型,思想来自于Depth Map Prediction from a Single Image using a Multi-Scale Deep Network,但其是有监督的学习,大规模标记的数据是难以获得的,所以本文使用Unsupervised Monocular Depth Estimation with Left-Right Consistency的loss,为无监督的学习。综合以上,再减小网络的规模使其在CPU上实时预测成为可能。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值