OpenCV中的模块:三维重建-SFM

运动中恢复结构(SFM)可以用来重建目标的稀疏点云并为后续的稠密重建提供相对精度更高的种子点,也可以用于里程计等估计相机本身的位姿。同样,除了采用结构光进行三维重建外,还使用过OpenMVG + C/PMVS和COLMAP。在浏览OpenCV contrib模块时发现OpenCV也可实现MVG,高低得编译学习一下。同样,这里分为Ubuntu下的和windows下的编译及测试。

1. Ubuntu下编译带有SFM的OpenCV库

1.1 依赖库的安装

Ubuntu下的编译相对简单,主要是一些依赖库的安装,尤其是注意Ceres的安装。如果不安装Ceres,则重建功能将被禁用。

#安装依赖库

sudo apt-get install libgoogle-glog-dev

sudo apt-get install libatlas-base-dev

sudo apt-get install libeigen3-dev

sudo apt-get install libsuitesparse-dev

#编译、测试及安装Ceres

git clone https://github.com/ceres-solver/ceres-solver.git

cd ceres-solver

mkdir build && cd build

cmake ..

make -j4

make test

sudo make install

如果按照上述命令行,可能报错:

error: 'integer_sequence' is not a member of 'std'

这是因为最新版的ceres使用了C++14标准,需要修改C++编译标准,

CMAKE_CXX_STANDARD

为14或以上。当然,也可以回退版本:至少需要将ceres回退2.0以下,Eigen回退到3.3以下,此外,还可能需要回退其他库。

1.2 OpenCV的编译。

注意:上一步的库已经被安装到Ubuntu的环境中,在编译OpenCV库时注意查看VIZ和BUILD_opencv_sfm是否打开,或者直接打开。

cmake -DWITH_VTK=ON -DBUILD_opencv_sfm=ON ..

然后 make --> sudo make install 即可。如果没有将相关依赖安装到ubuntu,而是在某些文件夹之下,就需要填写库的路径,即将路径赋值对对应的xxx_DIR。

如果之前没有编译OpenCV + Contrib,则完整的编译命令可参考:

mkdir build && cd build

cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=./install -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules -DWITH_VTK=ON

-DBUILD_opencv_sfm=ON -DCMAKE_CXX_STANDARD=11 ..

make -j4

sudo make insatll

sudo ldconfig

相关推荐
Felaim4 分钟前
基于模仿学习(IL)的端到端自动驾驶发展路径
人工智能·深度学习·自动驾驶
苦学LCP的小猪42 分钟前
OpenCV图像基本操作
opencv·计算机视觉
量子-Alex43 分钟前
【目标检测】【PANet】Path Aggregation Network for Instance Segmentation
人工智能·目标检测·计算机视觉
lihuayong1 小时前
计算机视觉:经典数据格式(VOC、YOLO、COCO)解析与转换(附代码)
人工智能·yolo·目标检测·计算机视觉·目标跟踪·coco·数据标注
thinkMoreAndDoMore1 小时前
深度学习(3)-TensorFlow入门(常数张量和变量)
开发语言·人工智能·python
神舟之光1 小时前
动手学深度学习2025.2.23-预备知识之-线性代数
人工智能·深度学习·线性代数
wapicn991 小时前
‌挖数据平台对接DeepSeek推出一键云端部署功能:API接口驱动金融、汽车等行业智能化升级
java·人工智能·python·金融·汽车·php
不爱学习的YY酱1 小时前
MusicGPT的本地化部署与远程调用:让你的Windows电脑成为AI音乐工作站
人工智能·windows
kakaZhui1 小时前
【多模态大模型】端侧语音大模型minicpm-o:手机上的 GPT-4o 级多模态大模型
人工智能·chatgpt·aigc·llama
艾思科蓝 AiScholar1 小时前
【SPIE出版,见刊快速,EI检索稳定,浙江水利水电学院主办】2025年物理学与量子计算国际学术会议(ICPQC 2025)
图像处理·人工智能·信息可视化·自然语言处理·数据分析·力扣·量子计算