三维重建开源软件介绍

目录

一、针对初学者

二、针对具备一定基础的同学

三、相关网站

四、相关的开源代码

五、一些补充

六、一些额外补充


先上一个招聘三维重建岗位的图,这个图上信息是我之前在招聘网上看到的,写的很详细,虽然我暂时做不到这些,但是可以描述一个方向,如果你想去三维重建公司工作,那么你应该具备一些什么技能

一、针对初学者

书籍I Computer Vision for Visual Effects

书籍II Computer Vision Algorithms and Applications

二、针对具备一定基础的同学

三维重建的每个基础模块挑选了 1-2 篇代表性文献,强烈建议阅读以下相关的原著文献, 这些文献是经过时间检验非常经典的文献,这将大大提升你们的科研和工程能力。 这些文章包括:

扫描二维码关注公众号,回复: 4122882 查看本文章

Sift 特征点检测

[1] Distinctive Image Features from Scale-Invariant Keypoints

增量 SFM

[2] Photo Tourism Exploring Photo Collections in 3D

[3] Structure-from-Motion Revisited

稠密匹配&&多视角立体视觉

[4] Multi-View Stereo for Community Photo Collections

表面重建

[5] Reconstruction and Representation of 3D Objects with Radial Basis

纹理贴图

[6] Let it be color! Large-Scale Texturing of 3D Reconstructions

三、相关网站

我们也提供一些相关的网站,这些网站是一些比较著名的开源系统。

MVE: https://www.gcc.tu-darmstadt.de/home/proj/mve/index.en.jsp

Bundler: http://www.cs.cornell.edu/~snavely/bundler/

VisualSFM: http://ccwu.me/vsfm/

OpenMVG: https://openmvg.readthedocs.io/en/latest/software/SfM/SfM/

ColMap: https://demuc.de/colmap/

四、相关的开源代码

https://github.com/colmap/colmap

https://github.com/simonfuhrmann/mve

https://github.com/nmoehrle/mvs-texturing

https://github.com/jianxiongxiao/SFMedu

五、一些补充

https://www.youtube.com/watch?v=ELHOjC_V-FE

这个视频介绍了如下一些的用法:

有一个博客,梳理了整体的框架

http://www.cs.cmu.edu/~reconstruction/basic_workflow.html

分割线


0*-CMP-MVS

少写了这一个,补上的时候,不想再排序号,就把它称为0*吧

看到它实在VisualSFM中

给出的下载地址(好像没有):

http://grail.cs.washington.edu/downloads/

给出论文:

[CMPMVS]    Multi-View Reconstruction Preserving Weakly-Supported Surfaces. M. Jancosek, T. Pajdla, CVPR 2011.

youtube有个下载地址:

https://www.youtube.com/watch?v=ZRTEMKS3Sw0

下载地址:

https://www.dropbox.com/s/80savnaou9ck7v4/cmpmvs-v0.6.0-binary-win64-cuda.zip?dl=0


0-COLMAP

https://github.com/colmap/colmap

关于它的主页:

https://colmap.github.io/

MVS:PMVS、CMVS,CMPMVS,以及OpenMVS:

1-OpenMVS

https://github.com/cdcseacave/openMVS

关于它的主页:

http://cdcseacave.github.io/openMVS/


2-TexRecon – 3D Reconstruction Texturing

优化细节的算法,对数据集进行纹理化:

加上纹理贴图,更加逼真,niub

https://www.gcc.tu-darmstadt.de/home/proj/texrecon/ 

代码:

https://github.com/nmoehrle/mvs-texturing

3-SfM-Toy-Library

主页:

https://github.com/royshil/SfM-Toy-Library

我用过的分支,我用的时候第三方库还有SSBA,最新的好像已经取消了

https://github.com/royshil/SfM-Toy-Library/tree/335d7d2a0c1e603ec994d0e025bdec8ebeb493bc

使用的序列图:

4-MasteringOpenCV 的第四章 SFM

https://github.com/MasteringOpenCV/code

https://github.com/MasteringOpenCV/code/tree/master/Chapter4_StructureFromMotion

5-MVE 我前面的博客进行了环境配置的讲解

Windows编译MVE

以及项目主页和代码页

https://www.gcc.tu-darmstadt.de/home/proj/mve/

https://github.com/simonfuhrmann/mve/wiki/MVE-Users-Guide

6-Bundler

代码:

https://github.com/snavely/bundler_sfm

还有一个其他的代码:

https://github.com/adinutzyc21/BundlerUbuntu64

项目主页:

http://www.cs.cornell.edu/~snavely/bundler/

一般的博客都是推荐:bundler + pmvs+ cmvs+ meshlab这样实现

7-theia-sfm

项目主页:

http://www.theia-sfm.org/ 

代码:

https://github.com/nmoehrle/TheiaSfM

8-ENFT-SfM 

浙江大学ZJUCVG组-大尺度运动恢复结构系统

项目主页: 

http://www.zjucvg.net/ls-acts/ls-acts.html

代码链接:  

https://github.com/ZJUCVG/ENFT-SfM

8-ORB_SLAM2

代码:

https://github.com/raulmur/ORB_SLAM2 

老一点的orbslam:

https://github.com/raulmur/ORB_SLAM

或者高翔的版本,在上面的基础上,增加了可视化点云图的功能:

https://github.com/gaoxiang12/ORBSLAM2_with_pointcloud_map

项目主页:

http://webdiis.unizar.es/~raulmur/orbslam/

9-PMVS、CMVS 

项目主页:

http://opensourcephotogrammetry.blogspot.com/

代码:

https://github.com/pmoulon/CMVS-PMVS

PMVS2:

https://www.di.ens.fr/pmvs/

CMVS:

https://www.di.ens.fr/cmvs/

10-SFMToolkit 

代码:

https://github.com/dddExperiments/SFMToolkit

项目主页:

http://www.visual-experiments.com/demos/sfmtoolkit/

11-CODE and RepMatch 

CODE: Coherence Based Decision Boundaries for Feature Correspondence

REPMATCH: ROBUST FEATURE MATCHING AND POSE FOR RECONSTRUCTING MODERN CITIES

两个核心部分,都没有开源,速度比较慢,核心使用的是ASIFT+高斯线性回归

项目主页:

http://www.kind-of-works.com/

代码主页:

https://github.com/seravee08/WideBaselineFeatureMatcher_PAMI

http://www.kind-of-works.com/code/repmatch_code_bf_small.zip

六、一些额外补充

除了单纯图像进行三维重建,还有一种激光加图像的三维重建-ToF,结构光

参考数目:

除了点云的表示方式,三维结构还有几种表示方式:

其中,马赛克像素的那个叫做octomap,用处大致是方便路径规划:

具体详细的信息,参考高翔博士的博客:

http://www.cnblogs.com/gaoxiang12/p/5041142.html

猜你喜欢

转载自blog.csdn.net/baidu_40840693/article/details/83958628