您当前的位置: 首页 >  算法

暂无认证

  • 3浏览

    0关注

    98301博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

基于深度学习的单视图三维重建算法学习路线

发布时间:2022-01-14 07:00:00 ,浏览量:3

点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

da88ee957b417cdd623af5b4583414ea.png

作者丨Longway

来源丨 三维重建学习笔记

本人从2018年开始接触基于深度学习的单视图三维重建算法,中间因为考研等原因休息了一年,毕业设计也是关于这方面的内容。在学习的过程中,我踩过很多坑,也学到了很多东西。现在把我的学习路线记录如下,也算是对本科学习的一个总结。 

一 基础知识

1.英语:下面给出的论文是全英文,可以培养阅读能力,建议少用翻译软件。

2.高等数学:非常重要,例如梯度下降公式涉及求导。

3.线性代数:非常重要,例如图像就是以矩阵的形式表示。

4.算法分析与设计:要有基本的算法思想,例如怎么减少时间复杂度和空间复杂度。

5.Python:这个不用说,基础的语法要会。推荐小甲鱼的python视频,B站搜:小甲鱼,P54之后的可以不用看。书籍推荐《Python编程 从入门到实践》。

6.Pytorch:大部分三维重建算法都是利用pytorch实现,推荐莫烦的pytorch,B站搜:莫烦python。书籍推荐《深度学习框架PyTorch:入门与实践》。 

二 进阶知识

1.Linux基本操作:大部分代码涉及到编译的过程,需要在Linux系统上面运行。同时这类算法的网络结构都比较大,代码基本上都是在服务器上面跑,需要了解如何使用服务器。书籍推荐《鸟哥的Linux私房菜》。

2.计算机图形学:主要是渲染相关知识,如何从三维模型得到二维图像是三维重建算法的一个重要问题,后面列举的论文基本上都涉及到这个过程。视频推荐B站:GAMES101,看评论就知道老师有多厉害,暂时只看到了P9,感兴趣的可以往后面看。

3.基于深度学习的最新三维重建算法综述:这篇论文对近几年三维重建相关工作做了详细的总结,例如网络结构、输入输出、数据集等。在阅读下面的论文之前,可以先看看这个,对所有的三维重建算法有一个大致的了解。论文链接:https://arxiv.org/pdf/1906.06543v3.pdf

4.数据集:后续算法使用了两个数据集,一个是ShapeNet,这个数据集很大,只有三维模型,需要经过渲染才能够得到二维图像。第二个是PASCAL3D+,这也是一个比较出名的数据集。

5.打开三维模型的软件:后续三维模型基本上都是使用网格的表示方法。可以用Windows系统自带的3D查看器和Print 3D,Linux系统需要安装meshlab,也可以使用python的vtk库进行查看。用text打开obj文件时,可以看到网格模型具体是怎么表示的。

6.三维重建涉及的一些基本概念:例如相机坐标系和世界坐标系、旋转矩阵、透视变换等,这些都需要慢慢了解。视频推荐B站:计算机视觉之三维重建篇,书籍推荐张广军老师的《机器视觉》。 

三 学习路线

1.Neural 3D Mesh Renderer

论文地址:https://arxiv.org/pdf/1711.07566.pdf

代码地址:https://github.com/hiroharu-kato/neural_renderer 

66111df69d7f2ef253a6c40d5b3a8511.png

可以把它列为基于深度学习的单视图三维重建算法里程碑之作,后续很多算法都由此展开。标准的渲染过程中涉及光栅化这种离散操作,阻止了反向传播,这就不能使用深度学习的方法进行训练。因此这篇文章提出了一种可微的渲染方法,能够在特定的视角渲染三维模型得到二维图像。

2.Learning Category-Specific Mesh Reconstruction from Image Collections(CMR)

论文地址:https://arxiv.org/pdf/1803.07549.pdf

代码地址:https://github.com/akanazawa/cmr

217f6cb42ad42a1a4afe0510c94a935c.png

这篇文章是对上一个算法的应用,也算是这类算法更完整的实现。作者提出了一种从单个图像中恢复物体三维形状、相机和纹理的学习框架,输入的数据集需要标注关键点,但是不需要真实的3D数据集或者单个物体的多张图像进行监督,最后的输出是带有纹理的网格模型。

3.Soft Rasterizer: A Differentiable Renderer for Image-based 3D Reasoning

论文地址:https://arxiv.org/pdf/1904.01786.pdf

代码地址:https://github.com/ShichenLiu/SoftRas

3be66a6396e021edb13bd5e8ef1765ad.png  这篇文章提出了另外一个可微渲染器,和第一篇不同的是,它将覆盖的所有三角形都考虑在内,能够使用可微函数直接渲染彩色网格。 

4.Shape and Viewpoints without Keypoints(UCMR)

论文地址:https://arxiv.org/pdf/2007.10982.pdf

代码地址:https://github.com/shubham-goel/ucmr

501605cd4c97e279d92f274752742b87.png

这篇文章是对第二篇的改进,也是对第一、第三篇文章所提到的渲染器的综合应用。总的来说,数据集更加简单,只需要原始图像和掩膜即可,但是达到的效果更好。

四 后续论文推荐

1.Self-supervised Single-view 3D Reconstruction via Semantic Consistency(UMR)

论文地址:https://arxiv.org/pdf/2003.06473.pdf

41b2b8f34090eb1c80cba6920e75a551.png

2.Using Adaptive Gradient for Texture Learning in Single-View 3D Reconstruction

论文地址:https://arxiv.org/pdf/2104.14169.pdf

3efa8ccb7b0022c2ba82e9a6b47bce74.png

本文与另外三篇的重建效果对比如下表所示:

Metric

Mask IOU

SSIM

CMR

0.704

0.782

UCMR

0.6369

0.756

UMR

0.734

0.812

Ours

0.7691

0.8294

五 相关论文推荐

1.Learning to Predict 3D Objects with an Interpolation-based Differentiable Renderer

论文地址:https://nv-tlabs.github.io/DIB-R/files/diff_shader.pdf

代码地址:https://github.com/nv-tlabs/DIB-R

fb5c5ab2082e75904cefbdcda8b1d597.png

2.Occupancy Networks: Learning 3D Reconstruction in Function Space

论文地址:http://www.cvlibs.net/publications/Mescheder2019CVPR.pdf

代码地址:https://github.com/autonomousvision/occupancy_networks

50d98a5940bec41af5e6377ef1b5284e.png

本文仅做学术分享,如有侵权,请联系删文。

3D视觉精品课程推荐:

1.面向自动驾驶领域的多传感器数据融合技术

2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码) 3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进 4.国内首个面向工业级实战的点云处理课程 5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解 6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦 7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化 8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)

9.从零搭建一套结构光3D重建系统[理论+源码+实践]

10.单目深度估计方法:算法梳理与代码实现

11.自动驾驶中的深度学习模型部署实战

12.相机模型与标定(单目+双目+鱼眼)

13.重磅!四旋翼飞行器:算法与实战

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉、CV&深度学习、SLAM、三维重建、点云后处理、自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

0a2211a78d09141204473e6bedcc77e9.png

▲长按加微信群或投稿

9222fc26107db7ff336363e1b41a6a25.png

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列、三维点云系列、结构光系列、手眼标定、相机标定、激光/视觉SLAM、自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

e3c974023c20e2feca408f2cea38b643.png

 圈里有高质量教程资料、答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

关注
打赏
1655516835
查看更多评论
立即登录/注册

微信扫码登录

0.1470s