点上方蓝字计算机视觉联盟获取更多干货

在右上方 ··· 设为星标 ★,与你不见不散

编辑:Sophia
计算机视觉联盟  报道  | 公众号 CVLianMeng

转载于 :黄浴知乎,已获授权

https://zhuanlan.zhihu.com/p/90773462

【人工智能资源(书籍+视频)全网收集,附下载!】

推荐文章【点击下面可直接跳转】:

如何快速下载不同网站文档!

AI博士笔记系列推荐:

博士笔记 | 周志华《机器学习》手推笔记“神经网络”

最近讨论过数据层传感器融合问题,特别是最近采用深度学习方法估计深度图的方法。主要是激光雷达等深度传感器的数据比较稀疏分辨率低(特别是便宜的低线束激光雷达),好处是数据可靠性高;而摄像头传感器获取的图像比较致密并分辨率高,缺点是获取的深度数据可靠性差。下面介绍一下最近看到的深度学习方法。

“Learning Guided Convolutional Network for Depth Completion”2019.8

密集深度感知对于自动驾驶和其他机器人应用至关重要。因此,有必要完整稀疏激光雷达数据,通常同步的引导RGB图像促进此完整化。受著名的引导图像滤波(guided image filtering)方法启发,引导网络(guided network)可以从引导图像(guidance image)中预测内核权重。然后将这些预测核用于提取深度图像特征。

以这种方式,一个网络生成内容相关和空间变化的内核,用于多模态的特征融合。此外,动态生成的空间变量内核可能导致GPU内存消耗过大和计算开销,而卷积分解可减少计算和内存消耗,这样GPU内存的减少使特征融合可以在多步方案中运行。

如图所示,该网络体系结构包括两个子网:橙色GuideNet和蓝色DepthNet。在GuideNet和DepthNet的开头以及DepthNet的末尾添加卷积层。浅橙色和浅蓝色分别是GuideNet和DepthNet的编码器步,而对应的深橙色和深蓝色是GuideNet和DepthNet的解码器步。ResBlock是两个连续3×3卷积层的基本残差块结构。

下图是引导卷积模块架构图:(a)引导卷积模块的整体流水线,在给定图像特征输入的情况下,滤波器生成层动态地生成引导核(guided kernels),将其用于输入深度特征并输出新的深度特征;(b)引导核与输入深度特征之间卷积的细节,其分解为两步卷积,即逐通道卷积和跨通道卷积。

内容相关和空间变化内核的优点是双重的。首先,这种内核允许网络将不同的滤波器用于不同的目标(和不同的图像区域)。因此,根据图像内容和空间位置动态生成内核将很有帮助。其次,在训练期间,空间不变核的梯度计算为下一层所有图像像素的平均值。这样的均值更可能导致梯度接近于零,甚至觉得学习的内核对于每个位置而言不是最优,这可能会产生次优结果。相比之下,空间变化的内核可以缓解此问题,并使训练表现得更好,从而获得更好的结果。

最后是KITTI测试集上最新方法的结果定性比较,如图所示:选择的方法有‘Sparse-to-Dense’, ‘DDP’ , ‘DeepLiDAR’, ‘CSPN’和‘NConv-CNN’,以及本文的方法。


”DFineNet: Ego-Motion Estimation and Depth Refinement from Sparse, Noisy Depth Input with RGB Guidance“ 2019.8

深度估计是自动驾驶汽车了解和重建3D环境以及避免障碍的一项重要功能。精确的深度传感器(例如机械式激光雷达)通常很笨重和昂贵,并且只能提供稀疏深度,而较轻的深度传感器(例如,立体双目相机)则相对含噪。

DFineNet是一种端到端的学习算法,能够用稀疏、含噪的输入深度进行细化和深度填充。该模型输出摄影机姿势作为副产品。如图所示,稀疏、含噪的深度输入(第一行),真实深度的3D可视化(第二行)和模型输出的3D可视化(底部)示例。为了可视化,RGB图像(第1张)和有稀疏、含噪的深度输入叠在一起。

再看一个DFineNet实例,如图所示:它细化稀疏含噪的深度输入(第三行),并输出高质量的密集深度(下一行)。

下图是DFineNet的架构图。该网络由两个分支组成:一个CNN学习估计深度(ψd)的函数,另一个CNN学习估计姿势(θp)的函数。其将图像序列和相应的稀疏深度图作为输入,并输出变换以及密集深度图。在训练过程中,训练信号会同时更新两组参数。它是MIT深度网络的修正,称为Depth-CNN,而Pose-CNN改编自Sfmlearner。

训练中整个损失函数表示为

其中平滑损失记为Lsmo,而监督损失定义为:

光度损失定义为:

掩码光度损失定义为:

最后是结果:左边是本文方法结果,中间是关于RGB引导(第二行)及其不确定性(第三行)的方法结果,最右边是MIT方法的结果。


“PLIN: A Network for Pseudo-LiDAR Point Cloud Interpolation”2019.9

激光雷达可以在低频(约10Hz)下提供可靠的3D空间信息,并已广泛应用于自动驾驶和无人机领域。但是,实际应用中具有较高频率(约20-30Hz)的摄像机必须降低,以便与多传感器系统中的激光雷达匹配。

伪激光雷达内插网络(Pseudo-LiDAR interpolation network,PLIN),用于增加激光雷达传感器的频率。PLIN旨在解决相机和激光雷达之间的频率不匹配问题,同时生成时空高质量的点云序列。为此,它采用连续稀疏深度图和运动引导的粗内插阶段,以及由真实场景引导的精细内插阶段。这种从粗到细的级联结构,可以逐步感知多模态信息。

如图是PLIN的总体流程图。该方法将三个连续彩色图像和两个稀疏深度图作为输入,内插一个中间密集深度图,然后根据相机内参将其进一步转换Pseudo-LiDAR点云。

伪激光雷达内插网络(PLIN)概述图如下:整个架构由三个模块组成,即运动引导(motion guidance)模块、场景引导(scene guidance)模块和变换(transformation)模块。首先有一个基准网络(一个编码器-解码器架构)从两个连续稀疏深度图来生成内插图。然后,为了构造更合理的慢动作结果,用双向光流包含的运动信息来指导内插过程(基于LiteFlowNet网络)。此外,对输入的深度图进行扭曲(warping)操作得到中间的粗略深度图,其中包含了显式运动关系。最后中间彩色图像在场景引导下细化粗略的深度图(基于一个轻型U-Net网络),从而获得更准确、更密集的中间深度图。

下面是实验展示。如图所示是PLIN获得的内插深度图结果:对每个示例,显示彩色图像、稀疏深度图、密集深度图和PLIN结果。该方法可以恢复原始深度信息并生成更密集分布。

如图显示的结果:从上到下是内插的密集深度图、生成Pseudo-LiDAR的两个视图以及放大的区域。完整网络生成更准确的深度图,并且Pseudo-LiDAR的分布和形状与真实点云的分布和形状更相似。


”Depth Completion from Sparse LiDAR Data with Depth-Normal Constraints“ 2019.10

深度完整旨在从稀疏深度测量中恢复密集的深度图。它对自动驾驶的重要性日益增加,并引起了视觉界的越来越多的关注。大多数现有方法直接训练网络学习从稀疏深度输入到密集深度图的映射,这比较难利用3D几何约束,以及处理实际传感器噪声。

为了规范化深度完整解法并提高抗噪能力,作者提出一个统一的CNN框架:1)在发散模块(diffusion module)中模拟深度和表面法线之间的几何约束,2)预测稀疏激光雷达测量的置信度以减轻噪声的影响。具体而言,编码器-解码器主干网同时预测激光雷达输入的表面法线、粗深度和置信度,然后将其输入到扩散细化模块(diffusion refinement module)获得最终深度完整的结果。

如图所示:从稀疏的激光雷达测量和彩色图像(a-b),该模型首先推断出粗深度和法线图(c-d),然后强制深度和法线之间约束反复细化初始深度估计。此外,为了解决实际激光雷达测量的噪声(g),用解码器分支预测稀疏输入深度的置信度(h),实现更好的正则化。

在介绍该统一框架之前,需要简单提一下定义的平面原点距离空间(plane-origin distance space)。X为3D空间点,x为其在像平面的2D投影点。在3D点X处的表面法线N(x) 定义为垂直于切平面F的向量,其法平面方程为N(x)·X−P =0。如图所示,切平面方程建立了深度和法线之间关系。P=N(x)·X,称为平面原点距离。

下图是整个框架的概览:预测网络是共享权重编码器和独立解码器,其预测表面法线图N、粗深度图D和稀疏深度输入的置信度图M。然后,将稀疏深度输入D̄和粗略深度D转换为平面原点距离空间,分别为P̄和P。接下来,细化网络,一个各向异性发散(anisotropic diffusion)模块,在平面原点距离子空间中细化粗略深度图D来强制深度和法线之间的约束,并合并置信稀疏深度输入的信息。在细化期间,发散引导度(diffusion conductance)取决于引导特征图G的相似性。最后,当发散结束,细化距离P逆变换获得细化深度图Dr。

如图是可微分扩散块(Differentiable diffusion bloc)架构图。在每个细化迭代中,引导特征图(guidance feature map)G中的高维特征向量(例如,维数为64),通过两个不同的函数f和g(建模为两个卷积层,然后进行归一化)独立地进行变换。然后,计算从每个位置xi(在平面原点距离图P中)到其相邻的K个像素(xj∈Ni)的引导度。最后,发散经一个卷积运算操作,其内核由先前计算的引导度所定义。通过这种发散,深度完整的结果由深度和法线之间约束而规范化。

这里训练的损失函数定义为:

其中重建损失定义为

细化重建损失定义为

法线预测的损失定义为

深度损失定义为

如图是结果展示例子。实际上是与其他三个方法的定量比较:对每种方法,深度完整的结果以及细节和误差的放大图,还有法线预测和置信度预测的结果。

END

声明:本文来源于网络

如有侵权,联系删除

联盟学术交流群

扫码添加联盟小编,可与相关学者研究人员共同交流学习:目前开设有人工智能、机器学习、计算机视觉、自动驾驶(含SLAM)、Python、求职面经、综合交流群扫描添加CV联盟微信拉你进群,备注:CV联盟  

最新热文荐读

GitHub | 计算机视觉最全资料集锦(含实验室、算法及AI会议)

Github | 标星1W+清华大学计算机系课程攻略!

Github | 吴恩达新书《Machine Learning Yearning》

收藏 | 2020年AI、CV、NLP顶会最全时间表!

收藏 | 博士大佬总结的Pycharm 常用快捷键思维导图!

笔记 | 深度学习综述思维导图(可下载)

笔记 | 深度神经网络综述思维导图(可下载)

内推 | 4399小游戏

内推 | 无人驾驶~小马智行Pony.ai 2020

内推 | 虎牙直播2020校招

内推 | 字节跳动内推

前沿 | 阿里达摩院发布2019十大科技趋势!未来无限可期!

点个在看支持一下吧

论文 | 多传感器数据深度图的融合:最近基于深度学习的方法(下)相关推荐

  1. 论文 | 多传感器数据深度图的融合:最近基于深度学习的方法(上)

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 编辑:Sophia 计算机视觉联盟  报道  | 公众号 CVLianMeng 转载于 :黄浴知乎,已获授权 htt ...

  2. 深度学习图像融合_基于深度学习的图像超分辨率最新进展与趋势【附PDF】

    因PDF资源在微信公众号关注公众号:人工智能前沿讲习回复"超分辨"获取文章PDF 1.主题简介 图像超分辨率是计算机视觉和图像处理领域一个非常重要的研究问题,在医疗图像分析.生物特 ...

  3. 基于深度学习的红外和可见光图像融合论文及代码整理

    基于深度学习的红外和可见光图像融合论文及代码整理 首先附上近期整理基于深度学习的图像融合论文的思维导图 本篇博客主要整理基于深度学习的红外和可见光图像融合的论文和代码 图像融合系列博客还有: 图像融合 ...

  4. 基于深度学习的多聚焦图像融合(Multi-Focus Image Fusion)论文及代码整理

    基于深度学习的多聚焦图像融合(Multi-Focus Image Fusion)论文及代码整理 首先附上近期整理基于深度学习的图像融合论文的思维导图 本篇博客主要整理基于深度学习的多曝光图像融合的论文 ...

  5. 基于深度学习的多曝光图像融合(Multi-exposure Image Fusion)论文及代码整理

    基于深度学习的多曝光图像融合(Multi-exposure Image Fusion)论文及代码整理 首先附上近期整理基于深度学习的图像融合论文的思维导图 本篇博客主要整理基于深度学习的多曝光图像融合 ...

  6. 综述|基于深度学习的深度图补全

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 在科学研究中,从方法论上来讲,都应"先见森林,再见树木".当前,人工智能学术研究方 ...

  7. 【综述专栏】基于深度学习的深度图补全

    在科学研究中,从方法论上来讲,都应"先见森林,再见树木".当前,人工智能学术研究方兴未艾,技术迅猛发展,可谓万木争荣,日新月异.对于AI从业者来说,在广袤的知识森林中,系统梳理脉络 ...

  8. 基于深度学习的日志数据异常检测

    基于深度学习的日志数据异常检测 数据对象 智能运维(AIOps)是通过机器学习等算法分析来自于多种运维工具和设备的大规模数据.智能运维的分析数据对象多源运维数据包括系统运行时数据和历史记录数据,历史记 ...

  9. 基于深度学习的命名实体识别研究综述——论文研读

    基于深度学习的命名实体识别研究综述 摘要: 0引言 1基于深度学习的命名实体识别方法 1.1基于卷积神经网络的命名实体识别方法 1.2基于循环神经网络的命名实体识别方法 1.3基于Transforme ...

最新文章

  1. Python 还能实现哪些 AI 游戏?附上代码一起来一把!
  2. JavaScript中函数四种调用模式
  3. huffman java_详解Huffman编码算法之Java实现
  4. 疫情之下的网站优化该怎样进行?
  5. python中的取余运算符是_python取余运算
  6. Mybatis学习总结二
  7. factorybean与beanfactory
  8. 数位 DP 入门 (不要 62+windy 数)
  9. 多线程爬虫191023
  10. Presto性能调优的五大技巧
  11. pandas插入新列
  12. Java Web文件下载
  13. DNS协议及Bind应用
  14. 颜色的RGBnbsp;指数
  15. C语言实现json文本解析
  16. 基于Matlab的三角函数方程组解算方法
  17. vue播放视频使用原生video标签基本功能(不含样式)
  18. SQLyog设置唯一
  19. Linux之计划任务与系统安全(cron周期性计划任务)
  20. python爬取今日头条后台数据_爬虫爬取今日头条数据代码实现

热门文章

  1. python中奖号_Python分析彩票记录并预测中奖号码过程详解
  2. c语言能让制表符空9个字符码,C语言编程规范 – 嗨!大佟!
  3. win10 .net framework 3.5 安装报错 0x800F0954问题
  4. c# 结构体 4字节对齐_C语言程序员们常说的“内存对齐”,究竟有什么目的?
  5. tkinter中text属性_python tkinter基本属性详解
  6. idea退出首界面_如何取消Idea开始界面打开默认项目配置
  7. python分为哪几个模块_干货:入门Python重点学哪几个模块才能成为高手?
  8. 集美大学诚毅学院计算机科学与技术学费,集美大学诚毅学院计算机科学与技术专业介绍...
  9. Unity2018.3全新Prefab预制件系统深入介绍视频教程+PPT+Demo源码
  10. heartbeat+iscsi+mysql实现双机高可用