点击上方“小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达

有什么用?

微软2010年发布了消费级RGB-D(RGB+depth)相机Kinect1,此后涌现了大量基于RGB-D相机的研究工作,比如用RGB-D相机来进行室内三维重建,比较有名的是KinectFusion、Kintinuous,ElasticFusion,InfiniTAM,BundleFusion等。此外,RGB-D相机还大量用于物体及人脸的三维建模、自动驾驶、增强现实、三维打印等。

目前主流的RGB-D相机有微软的Kinect系列,Intel的realsense系列,structure sensor(需结合iPad使用)等。去年iPhone X前置结构光深度相机(depth)面世后,更是激发了手机产业链深度相机的热潮,目前小米、OPPO、Vivo等手机大厂都在积极推动深度相机在手机上的应用。

虽然RGB-D相机前景无限,但是受制于物理硬件的限制,目前深度相机输出的depth图还有很多问题,比如对于光滑物体表面反射、半/透明物体、深色物体、超出量程等都会造成深度图缺失。而且很多深度相机是大片的深度值缺失,这对于算法工程师来说非常头疼。

因此,深度图补全一直是一个非常有用的研究方向,之前的文献大都只能补全比较小范围的深度缺失,对于较大深度值缺失的情况无能无力,本文介绍的是2018 CVPR 最新的一项研究deep depth completion,不受RGB-D相机类型的限制,只需要输入一张RGB加一张depth图,可以补全任意形式深度图的缺失。对于算法工程师来说真的是喜大普奔啊,目前主要针对的是室内环境。

什么原理?

Deep depth completion算法流程如下,其输入是RGB-D相机拍摄的一张RGB图像和对应的深度图,然后根据分别训练好的两个网络(一个是针对RGB图表面法线的深度学习网络,一个是针对物体边缘遮挡的深度学习网络),预测该彩色图像中所有平面的表面法线和物体边缘遮挡。最后用深度图作为正则化,求解一个全局线性优化问题,最终得到补全的深度图。

一切看起来顺理成章,但是,做深度学习的小伙伴们纷纷举起了小手,开始提问:我的训练集怎么搞?我去哪里找大量的高精度已经补全的深度图?

的确,这是个大问题,消费级深度相机拍摄的深度图本身就是缺失的,没办法作为深度图的groundtruth,但是现有的RGB-D数据集几乎都是基于消费级深度相机的。而使用高精度的深度相机不仅设备费用成本高,时间成本也非常高,give up吧。

这里要夸一下本文的作者,聪明又勤奋,还乐于奉献。他们之间提供了一个已经补全好深度图的RGB-D数据集,包含105,432幅RGB-D图,而且给你都对齐了的。那他们是怎么做到的?

主要是因为他们聪明。对,你没看错!他们利用现有的消费级RGB-D相机拍摄的数据集(Matterport3D、ScanNet、SUN3D、SceneNN)先进行稠密的三维重建,然后再进行优化和渲染。虽然单一视角的深度图可能会有因为不同原因引起的缺失,但是经过多个不同视角的重建和优化,这些缺失的地方都被填补了。然后将其深度结果反投影回到输入深度图。最后得到的深度图就是groundtruth啦,简直完美!省时省力省钱,还顺带学习了稠密三维重建,就是这么棒!看看下面的图,还是比较形象的,黄色代表不同视点的图,红色是当前视点渲染后的深度图。

效果怎么样?

亲自测试,效果杠杠滴!具体的量化比较就不放了,可以查看论文,目前效果是该领域最好的,我这里只放几张比较直观的视觉效果的比较结果。

首先是和联合双边滤波的inpainting方法进行比较,如下所示,可以明显看出边缘信息保存的很好,噪点也很少。

再看一下和深度神经网络深度估计方法的对比,如下图所示。不仅深度值更准确,大尺度的几何结构也更准确。

来看一下点云结果对比吧,原始的RGB-D生成的点云结果如下:

经过深度图补全后生成的点云结果如下:

运行速度怎么样?

学术界对运行速度不是特别关注,但是产业界就是死死的盯住运行速度不放,因为这直接关系到能否直接用在嵌入式设备上。

他的运行速度是这样的:

实验环境:对于一幅320x256的RGB-D输入图来说,用NVIDIA TITAN X GPU预测表面法线和边界遮挡需要0.3s。在Intel Xeon 2.4GHz CPU上求解线性方程需要1.5秒。

虽然慢了点,但是也给算法优化的同志们留了一个不大不小的挑战,不是吗?

有什么参考资料

良心的作者不仅给了数据集,还开源了代码,还给了训练好了结果,如此良心负责人的作者必须给个大大的点赞!

项目地址:

http://deepcompletion.cs.princeton.edu/

开源代码地址:

https://github.com/yindaz/DeepCompletionRelease

下载1:OpenCV-Contrib扩展模块中文版教程

在「小白学视觉」公众号后台回复:扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。

下载2:Python视觉实战项目52讲

在「小白学视觉」公众号后台回复:Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。

下载3:OpenCV实战项目20讲

在「小白学视觉」公众号后台回复:OpenCV实战项目20讲即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。

交流群

欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~

计算机视觉方向简介:深度图补全相关推荐

  1. 三维图形几何变换算法实验_计算机视觉方向简介 | 深度学习视觉三维重建

    点击上方"计算机视觉life",选择"星标" 快速获得最新干货 作者: Moonsmile https://zhuanlan.zhihu.com/p/79628 ...

  2. 模板匹配算法_计算机视觉方向简介 | 多目标跟踪算法(附源码)

    点击上方"计算机视觉life",选择"星标" 快速获得最新干货 || 前言 目标跟踪是计算机视觉领域中研究的热点之一,分为单目标跟踪与多目标跟踪.前者跟踪视频画 ...

  3. 计算机视觉子方向,计算机视觉方向简介 | 人脸识别中的活体检测算法综述

    原标题:计算机视觉方向简介 | 人脸识别中的活体检测算法综述 本文转载自"SIGAI人工智能学习与实践平台"(ID:SIGAICN) 导言 1. 什么是活体检测? 判断捕捉到的人脸 ...

  4. 基于深度学习的RGBD深度图补全算法文章鉴赏

    点击上方"计算机视觉工坊",选择"星标" 干货第一时间送达 [GiantPandaCV导语]本文针对3维视觉中的深度图补全问题,介绍了一下近年基于深度学习的RG ...

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

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

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

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

  7. FusionNet:基于稀疏雷达点云和RGB图像的深度图补全

    作者:Tom Hardy Date:2020-02-09 来源:FusionNet:基于稀疏雷达点云和RGB图像的深度图补全

  8. 图像几何变换时为何要用到插值算法?_计算机视觉方向简介 | 图像拼接

    作者戴金艳,公众号:计算机视觉life, 编辑部成员. 更好的阅读体验请看首发原文链接计算机视觉方向简介 | 图像拼接 简介 图像拼接是将同一场景的多个重叠图像拼接成较大的图像的一种方法,在医学成像. ...

  9. kitti深度图补全

    rgb图像 这个是雷达稀疏图 这个是补全后的图像 code后续整理出来放(python) import scipy import skimage import os import numpy as n ...

最新文章

  1. iOS安全之ipa 包重签名的3种方法
  2. C ++中的POD类型是什么?
  3. CSS书写技巧(转)
  4. 第十天2017/04/21(2、泛型编程:模板 / 全特化、偏特化)
  5. eclipse中通过search打开第二个文件时 第一个文件就自己关闭了
  6. 学习 MySQL 高性能优化原理,这一篇就够了!
  7. 信号量释放和等待函数sem_post()和sem_wait()
  8. 开启spring boot学习之旅
  9. 斯大林格勒拖拉机厂LCA项目研制成功
  10. python编程资料包_强力推荐,非常全的Python编程400集学习资料(今日限免)
  11. CentOS7通过定时脚本阻断异常IP连接SSH(实测)
  12. Window CE 驱动开发流程(Windows CE.5.0系统、pxa270平台)
  13. Bootstrap Paginator分页插件(mark)
  14. 【转-参考】九宫格时间管理-第三代时间管理方法:人生平衡发展的八个方向
  15. 传奇客户端小地图上的文字描述修改方法
  16. ActiveMQ笔记(一)
  17. 利用FlashPaper在web页面中显示PDF文件(兼容各浏览器)
  18. 从身份证号获取身份证信息
  19. 浙江省初中计算机知识点,浙江省信息技术学业水平考试重要知识点整理归纳
  20. Fiddler简介与功能

热门文章

  1. 一览六月最热的5篇AI技术论文
  2. 200行代码实现一个滑动验证码
  3. 新技术“红”不过十年,半监督学习为什么是个例外?
  4. 清华大学人工智能研究院成立听觉智能研究中心,将专注基础研究和成果产业化
  5. BERT拿下最佳长论文奖!NAACL 2019最佳论文奖公布
  6. 70亿美金!英伟达欲竞购这家以色列芯片公司!
  7. 元旦福利 | Python、机器学习、TensorFlow 图书送一波
  8. 吊打 ThreadLocal,谈谈FastThreadLocal为啥能这么快?
  9. 扛住100亿次请求?我们来试一试!
  10. 难以想象SpringBoot中的条件注解底层居然是这样实现的