本博文为本人学习三维重建的学习笔记,本博文的大部分内容来源于网络各类教程博客,本博文仅供本人学习记录用
视觉三维重建=定位定姿+稠密重建+surface reconstruction/mesh+纹理贴图
SLAM与三维重建的区别(SLAM和三维重建有什么区别? - 知乎):
三维重建的应用场景
colmap是目前state-of-the-art的sfm与mvs框架。本博文介绍的三维重建主要是colmap框架
shift特征检测与描述
假如获得以下信息:
TSDF的更新与组合的过程,一步一步计算各个体素(voxel)的TSDF值,再把他们拼接起来。
而所谓的体素(voxel)就是一个一个的小方块,最终可以拼成3D重建的结果。如下图所示。三维重建的结果会放到一个立方体当中,而这个立方体就是由voxel组成的。步骤如下:
如下图所示。T就是截断的意思,太远或者太近都设置为定值。而一个体素的SDF值就是它到最近的表面的距离。设某个点X,为其中一个体素,而绿色线是离它的最近的一个平面,而P点则是平面上离X最近的一个点,他们之间的距离就是SDF。
而对于截断T,越接近0就是越近,越接近正负1就是越远。正负为面的前后
深度可以通过深度图或者深度相机获取。
3D视觉工坊
GitHub - hku-mars/r3live: A Robust, Real-time, RGB-colored, LiDAR-Inertial-Visual tightly-coupled state Estimation and mapping package
GitHub - cdcseacave/openMVS: open Multi-View Stereo reconstruction library
GitHub - colmap/colmap: COLMAP - Structure-from-Motion and Multi-View Stereo
COLMAP — COLMAP 3.8 documentation
【三维重建基础与算法】2022最新首发!唐宇迪大佬全面讲解三维重建基础与算法,草履虫都能学会!可做毕设,能写简历-人工智能、机器学习、深度学习、项目实战_哔哩哔哩_bilibili
开源工作的总结:
https://github.com/wuxiaolang/Visual_SLAM_Related_Research
https://github.com/tum-vision/lsd_slam
https://link.springer.com/content/pdf/10.1007/978-3-319-10605-2_54.pdf
https://github.com/alejocb/dpptam
https://arxiv.org/pdf/1909.04250.pdf
https://github.com/HKUST-Aerial-Robotics/DenseSurfelMapping
https://wang-kx.github.io/pdf/quadtree_mapping.pdf
https://github.com/HKUST-Aerial-Robotics/open_quadtree_mapping