论文笔记-Towards Scene Understanding-Unsupervised Monocular Depth Estimation

  • 论文信息

    • 标题: Towards Scene Understanding: Unsupervised Monocular Depth Estimation with Semantic-aware Representation
    • 作者:Po-Yi Chen, Alexander H. Liu, Yen-Cheng Liu, Yu-Chiang Frank Wang
    • 机构:National Taiwan University, Georgia Institute of Technology, MOST Joint Research Center for AI Technology and All Vista Healthcare
    • 出处:CVPR 2019
  • 代码链接

    • None
  • 论文主要贡献

    • 指出目前的基于左右一致性的无监督单目深度估计任务中可能存在误匹配问题
    • 提出的 SceneNet 目标在于整合几何结构信息和语义信息,利用任务的一致性、左右语义一致性和语义指导的视差圆滑性等提高深度预测性能
    • 端到端的训练方式使得模型能够从独立的跨模态数据集中进行学习训练,利用双目图像数据和语义标签数据同时训练网络
  • 论文要点翻译

    • 摘要
      • 单目深度估计从二维图像中获取三维空间的几何属性,是计算机视觉场景理解领域一个极具挑战的任务,由于实际应用中通常缺乏大量的 RGB-深度数据对,通常会利用双目立体图像之类的数据替换原有的监督信号,实现无监督的深度估计
      • 现有的许多方法难以对物体的几何结构进行建模,在训练中通常只是考虑像素级的目标函数
      • 本文提出 SceneNet 用于克服之前的局限,借助语义分割提供的语义信息帮助解决结合结构的建模
      • 提出的模型通过对双目图像对之间的语义一致性进行约束,实现区域级的深度估计
      • 实验结果证明了模型的有效性,和许多的 SOTA 方法一样生成了较好的实验结果
    • 引言
      • 在机器人和自动驾驶领域,场景理解是一个很关键但是又极具挑战的任务。本文的场景理解目标在于通过从二维的场景图象分析得到三维的几何结构信息
      • 之前的许多方法通过监督学习的方式建立从图像到深度图的回归模型,但是对于这些方法而言,收集大量标注数据耗时耗力,因此也有的方法通过使用双目立体图像对或者视频序列来进行无监督的深度估计
      • 大多数深度估计方法通过重建场景的几何结构获取深度信息,对于人类而言,除了场景的几何结构,还会利用场景的语义信息去进行深度的判断(例如:一个人会将“天空”对应的像素点判断成深度无穷远的像素),此外,在同一个分割区域中的像素点的深度值应当是相近的、而且是相关的,深度值突变的地方通常是分割区域的边界
      • 基于上述的这些直觉观察,也有一部分工作提出挖掘语义分割任务和单目深度估计任务之间的相互促进作用,利用成对的深度图与分割图进行网络训练
      • 本文第一次指出,当前预测双目视差时经常只依赖于单张的图像,导致了测试过程中经常忽略了来自另一张图像的结构信息,进而影响了视差预测的性能,提出的 SceneNet 通过其中的训练方式避免误匹配的问题
      • 提出的模型通过利用语义理解信息,改进深度估计结果,如图1所示,
      • 在这里插入图片描述
      • SceneNet 通过学习语义级的场景理解,进一步提高深度估计性能,模型是一个基于 encoder-decoder 结构的网络,输入场景图像,获取其特征表示,decoder 部分作为一个多任务、共享的分类器,将场景特征表示还原成深度图信息或者语义分割信息
      • 实现上述的双任务主要通过 task identity,即任务的一致性机制,使得共享的 decoder 可以在深度输出和语义分割输出两种输出中选择切换,基于条件的任务一致性信息,SceneNet可以看作一个多模态模型,将深度模态和语义分割模态结合
      • 左右语义一致性用于进一步加强几何信息和语义理解之间的联系,利用左右一致性和基于语义指导的视差圆滑性,两个自监督的损失函数用于优化深度估计和语义标签预测
      • 实验中,结果说明了 SceneNet 不仅可以生成高质量的深度估计结果,还能够实现集成几何、语义信息的通用场景理解,仅仅使用少量的语义标签数据,模型就能达到很好的深度估计性能
    • 相关工作
      • 深度估计:传统方法、深度估计方法、半监督深度估计方法,无监督深度估计方法(双目图像、单目视频)
      • 语义分割的利用:【13,20,4,18】将语义分割和深度估计作为多任务进行联合的监督训练、【10】探索深度数据的长尾分布属性
      • 这些工作与本文工作的联系:本文使用一体的模型进行两个任务的联合训练;本文模型不需要成对的训练数据,两个任务之间的数据不成对;深度估计任务在模型中以无监督学习方式进行训练;虽然下游任务是不同的,模型还是以端到端的形式进行训练,不需要预训练或者模型的精调
  • 方法

    • SceneNet 的目标在于从单目图像预测致密的深度图;训练阶段,模型利用双目立体图像和RGB-分割图像数据对进行训练,模型不需要双目图像与分割图像成对
    • 如图2所示,模型在编码器部分将场景图像 I 转换成特征表示 z,解码器将场景的特征表示 z 和任务一致性( task identity, 下一部分具体描述) 作为输入,得到最终的跨模态输出 Y ~ \tilde Y Y~
    • 为了训练 SceneNet,本文将无监督深度估计和有监督语义分割任务中的目标函数结合,通过两个自监督信号训练网络
    • Task Identity
      • 现有的工作将语义分割与深度估计当成是独立任务进行训练,用过任务具体的分类或者回归自网络得到视差图和分割图,但是这就需要针对不同任务分支对一些网络层数等超参数进行调整,因而限制了模型在不同数据集场景下的实际可用性
      • 为了解决这个局限,本文将跨模态任务进行融合,利用一个统一的解码器模型,在任务一致性 ( task identity) 的指导下。设置深视差图回国任务作为 t=1,语义分割任务作为 t=0,解码器根据输入的场景表示 z 和任务一致性 t,得到跨模态输出 Y ~ \widetilde Y Y Y ~ = D ( δ ( z , t ) ) \widetilde Y=D(\delta(z,t)) Y =D(δ(z,t)) δ \delta δ 是拼接操作,D 是跨模态解码器,最后一个网络层没有激活函数层
      • 具体来说,语义分割任务 s (图2中的红线)通过 s = σ c ( Y ~ s ) s=\sigma_c(\widetilde Y_s) s=σc(Y s) 计算,其中 Y ~ s = D ( δ ( z , t = 1 ) ) \widetilde Y_s=D(\delta(z,t=1)) Y s=D(δ(z,t=1)) σ c \sigma_c σc 是一个 softmax 函数
      • 是插入估计任务通过 d = σ b ( f μ ( Y ~ d ) ) d=\sigma_b(f_{\mu}(\widetilde Y_d)) d=σb(fμ(Y d)) 实现,其中 Y ~ d = D ( δ ( z , t = 0 ) ) \widetilde Y_d=D(\delta(z,t=0)) Y d=D(δ(z,t=0)) f μ f_\mu fμ 是像素级的平局池化操作, σ b \sigma_b σb 是 sigmoid 函数
      • 这其中预测的输出 Y ~ \widetilde Y Y 是依赖于设置的任务量 t 的,所以模型可以通过指定 t 的值进行模型最终输出模态的切换
      • 实现的统一化的解码器使得模型能够充分利用跨模态提供的语义信息和几何结构信息,对两个任务都进行了训练促进,实验结果进一步说明了模型的有效性
    • 无监督深度估计
      • 利用重建损失的无监督深度估计:基于 RGB 图像和预测的视差图,从一个视角的图像合成得到另一个视角的图像,根据合成的图像和原本真实图像之间的重建损失进行模型的训练
      • L r e = ∥ I l − I ^ r → l ∥ + ∥ I r − I ^ l → r ∥ \mathcal{L}_{re}=\|I^l-\hat I^{r\to l}\|+\|I^r-\hat I^{l\to r}\| Lre=IlI^rl+IrI^lr
      • 进一步利用左右视差的一致性和预测的视差图的圆滑性改进网络训练,得到最终的损失
      • L d e p t h = L r e + α l r ( ∥ d l − d ^ r → l ∥ + ∥ d r − d ^ l → r ∥ ) + α d s ( ∥ ∂ x d ∥ e − ∥ ∂ x d ∥ + ∥ ∂ y d ∥ e − ∥ ∂ y d ∥ ) \mathcal{L}_{depth}=\mathcal{L}_{re}+\alpha_{lr}(\|d^l-\hat d^{r\to l}\|+\|d^r-\hat d^{l\to r}\|)+\alpha_{ds}(\|\partial_xd\|e^{-\|\partial_xd\|}+\|\partial_yd\|e^{-\|\partial_yd\|}) Ldepth=Lre+αlr(dld^rl+drd^lr)+αds(xdexd+ydeyd)
    • 误匹配问题
      • Godard 等人的方法从左图同时预测左右的视差图,这可能不能准确的维持右图和右视差图的结构对齐性质,因为没有输入右图的结构和纹理信息,仅从左图估计右视差图本身是很困难的
      • 本文提出不直接从网络一张图片得到的两个视差图,而是只输出一张和输入图像对应的视差图,为了获取右图的视差图,使用水平方向的反转处理输入的右图
    • 有监督语义分割
      • 现有的深度估计只注意像素级的深度回归,将所有像素的深度估计看作是一样的,导致视差估计在物体边缘的效果并不好,本文使用语义信息指导视差估计
      • 定义损失函数为真实语义标签与预测语义标签之间的交叉熵损失: L s e g = H ( s g t , s ) \mathcal L_{seg}=\mathcal H(s_{gt},s) Lseg=H(sgt,s)
    • SceneNet 的自监督训练
      • 左右语义一致性
        • 使用左右图一致性作为重建损失,很容易受到左右图光照条件不一致的影响,因此替换使用更高级的语义信息作为一致性判断依据,不容易受到光照条件影响,语义一致性表达为: L l r s c = ∥ s l − s r → l ∥ + ∥ s r − s l → r ∥ \mathcal{L}_{lrsc}=\|s^l-s^{r \to l}\|+\|s^r-s^{l \to r}\| Llrsc=slsrl+srslr
      • 语义指导的视差圆滑性
        • 为了约束语义的一致性,加上视差图的圆滑性,约束统一分割区域的像素对应的视差的圆滑性
        • L s m o o t h = ∥ d − f ↦ ( d ) ∥ ⨂ ( 1 − ∥ ψ ( s ) − f ↦ ( ψ ( s ) ) ∥ ) \mathcal L_{smooth}=\|d-f_{\mapsto}(d)\|\bigotimes(1-\|\psi(s)-f_{\mapsto}(\psi(s))\|) Lsmooth=df(d)(1ψ(s)f(ψ(s)))
        • 其中的 ψ \psi ψ 代表每个通道最大值设置为1,其余值设置为0; ⨂ \bigotimes 表示矩阵元素乘; f ↦ f_{\mapsto} f 表示将输入在水平方向平移一个像素
      • 最终的训练目标
        • 最小化损失函数
        • L = L + α s e g L s e g + α l r s c L l r s c + α s m o o t h L s m o o t h \mathcal{L}=\mathcal{L}+\alpha_{seg}\mathcal{L}_{seg}+\alpha_{lrsc}\mathcal{L}_{lrsc}+\alpha_{smooth}\mathcal{L}_{smooth} L=L+αsegLseg+αlrscLlrsc+αsmoothLsmooth
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值