三維重建開源軟體介紹
目錄
先上一個招聘三維重建崗位的圖,這個圖上資訊是我之前在招聘網上看到的,寫的很詳細,雖然我暫時做不到這些,但是可以描述一個方向,如果你想去三維重建公司工作,那麼你應該具備一些什麼技能
一、針對初學者
書籍I Computer Vision for Visual Effects
書籍II Computer Vision Algorithms and Applications
二、針對具備一定基礎的同學
三維重建的每個基礎模組挑選了 1-2 篇代表性文獻,強烈建議閱讀以下相關的原著文獻, 這些文獻是經過時間檢驗非常經典的文獻,這將大大提升你們的科研和工程能力。 這些文章包括:
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
三、相關網站
我們也提供一些相關的網站,這些網站是一些比較著名的開源系統。
四、相關的開原始碼
五、一些補充
這個視訊介紹瞭如下一些的用法:
有一個部落格,梳理了整體的框架
0*-Open3D
補充一個三維重建的開原始碼 Open3D C++,有python介面
0*-meshroom
然後以下是
AliceVision是一種攝影測量計算機視覺框架,提供3D重建和相機跟蹤演算法。AliceVision旨在通過最先進的計算機視覺演算法提供強大的軟體基礎,可以對其進行測試,分析和重用。該專案是學術界和工業界合作的結果,旨在提供具有生產使用所需的穩健性和質量的尖端演算法。
分割線-2018.11.19更新
分割線-2018.11.21更新
0*-CMP-MVS
少寫了這一個,補上的時候,不想再排序號,就把它稱為0*吧
看到它實在VisualSFM中
給出的下載地址(好像沒有):
給出論文:
[CMPMVS] Multi-View Reconstruction Preserving Weakly-Supported Surfaces. M. Jancosek, T. Pajdla, CVPR 2011.
youtube有個下載地址:
下載地址:
0-COLMAP
關於它的主頁:
MVS:PMVS、CMVS,CMPMVS,以及OpenMVS:
1-OpenMVS
關於它的主頁:
2-TexRecon – 3D Reconstruction Texturing
優化細節的演算法,對資料集進行紋理化:
加上紋理貼圖,更加逼真,niub
程式碼:
3-SfM-Toy-Library
主頁:
我用過的分支,我用的時候第三方庫還有SSBA,最新的好像已經取消了
使用的序列圖:
4-MasteringOpenCV 的第四章 SFM
5-MVE 我前面的部落格進行了環境配置的講解
以及專案主頁和內碼表
6-Bundler
程式碼:
還有一個其他的程式碼:
專案主頁:
一般的部落格都是推薦:bundler + pmvs+ cmvs+ meshlab這樣實現
7-theia-sfm
專案主頁:
程式碼:
8-ENFT-SfM
浙江大學ZJUCVG組-大尺度運動恢復結構系統
專案主頁:
程式碼連結:
8-ORB_SLAM2
程式碼:
老一點的orbslam:
或者高翔的版本,在上面的基礎上,增加了視覺化點雲圖的功能:
專案主頁:
9-PMVS、CMVS
專案主頁:
程式碼:
PMVS2:
CMVS:
10-SFMToolkit
程式碼:
專案主頁:
11-CODE and RepMatch
CODE: Coherence Based Decision Boundaries for Feature Correspondence
REPMATCH: ROBUST FEATURE MATCHING AND POSE FOR RECONSTRUCTING MODERN CITIES
兩個核心部分,都沒有開源,速度比較慢,核心使用的是ASIFT+高斯線性迴歸
專案主頁:
程式碼主頁:
六、一些額外補充
除了單純影象進行三維重建,還有一種鐳射加影象的三維重建-ToF,結構光
參考數目:
除了點雲的表示方式,三維結構還有幾種表示方式:
其中,馬賽克畫素的那個叫做octomap,用處大致是方便路徑規劃:
具體詳細的資訊,參考高翔博士的部落格: