ImageBasedModellingEdu2.0 是用于深蓝学院基于图像的三维模型重建课程配套的代码。该代码来源于著名的开源三维重建开源系统MVE(https://github.com/simonfuhrmann/mve)。 我们其基础之上对代码的架构进行了调整,使其与课程更为相关,有助于阅读和学习。该工程项目采用CMake管理,可与方便的进行跨平台的编译。代码包含特征提取与匹配、对极几何、运动恢复结构、稠密重建、表面重建以及纹理贴图、可视化等模块,将随着课程的深入不断进行更新。
该工程主要包含core, math, util, features, sfm, mvs, surface, texturing等主要模块,其中:
- core—提供了工程项目需要的所有的基础数据结构,包括image, depthmap, mesh, view,以及数据的输入输出等结构和功能;
- math—提供矩阵,向量,四元数等基本的数学运算操作;
- features—提供特征提取以及特征匹配功能,其中特征类型包括sift和surf两种;
- sfm—提供了与运动恢复结构相关的功能,包括相机姿态的恢复,三维点的三角化和捆绑调整等;
- mvs—提供立体匹配功能,实现稠密点云匹配;
- surface—实现点云到网格的表面重建;
- texturing—实现纹理图像的创建;
- examples—提供一些关键模块的示例代码;
- tmp—存储临时数据
1.安装依赖库包含libpng, libjpeg, libtiff, eigen
sudo apt-get install libjpeg-dev
sudo apt-get install libtiff-dev
brew install libpng
brew install libjpeg
brew install libtiff
2.执行
git clone https://github.com/weisui-ad/ImageBasedModellingEdu.git
cd ~/ImageBasedModellingEdu
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make -j8
-
示例代码examples/
./build/examples/task3/task3-1_incremental_sfm ./examples/data/sequence ./examples/data/sequence_scene