ubuntu20.04下源码编译colmap

由于稠密重建需要CUDA,因此先安装CUDA,我使用的是3050GPU,nvidia-smi显示最高支持CUDA11.4。
在这里插入图片描述
不要用sudo apt安装,版本较低,30系显卡建议安装CUDA11.0以上,这里安装了11.1版本。

  • 下载: cuda_11.1.0_455.23.05_linux.run,参考博客把上面网址中的.com改成.cn,速度会快。
  • 安装参考:https://zhuanlan.zhihu.com/p/122286055
  • 安装成功以后,添加环境变量,nvcc -V显示如下即可。
    在这里插入图片描述

colmap编译,参考官方文档https://colmap.github.io/install.html
参考:https://zhuanlan.zhihu.com/p/526135749,这个博客居然几个坑都提到了。这个帖子用的make install,但是官方文档上用的是的是ninja install(显示的3.9-dev,但看了github代码版本,只有3.8版本,疑惑)。


步骤及报错记录:

# 安装依赖
sudo apt-get install \
    git \
    cmake \
    ninja-build \
    build-essential \
    libboost-program-options-dev \
    libboost-filesystem-dev \
    libboost-graph-dev \
    libboost-system-dev \
    libeigen3-dev \
    libflann-dev \
    libfreeimage-dev \
    libmetis-dev \
    libgoogle-glog-dev \
    libgtest-dev \
    libsqlite3-dev \
    libglew-dev \
    qtbase5-dev \
    libqt5opengl5-dev \
    libcgal-dev \
    libceres-dev
# 安装Qt5 package
sudo apt-get install libcgal-qt5-dev

继续官方文档步骤

git clone https://github.com/colmap/colmap.git
cd colmap
# git checkout dev //这里执行报错,跳过
mkdir build
cd build
cmake .. -GNinja 
# 出现ninja报错:sudo apt-get install ninja-build
# 再次cmake以后,出现ceres报错,需要安装ceres库

ceres安装参考https://zhuanlan.zhihu.com/p/460685629
但安装时git clone失败,用如下下载方式

wget ceres-solver.org/ceres-solver-1.14.0.tar.gz
tar -zxvf ceres-solver-1.14.0.tar.gz
cd ceres-solver-1.14.0
mkdir build
cd build
cmake ..
make -j8
sudo make install

继续之前的步骤cmake .. -GNinja 通过,执行ninja,ninja出现FAILED: src/colmap/exe/colmap 错误。
解决方法:更改Anaconda3文件夹名字以后,再编译就成功了。
参考:https://github.com/colmap/colmap/issues/1945、https://github.com/colmap/colmap/issues/391
最后执行sudo ninja install安装即可。

colmap -h
colmap gui

成功运行colmap。文章来源地址https://uudwc.com/A/k9y3D


原文地址:https://blog.csdn.net/weixin_41631106/article/details/133141416

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

h
上一篇 2023年09月25日 00:55
Responder
下一篇 2023年09月25日 00:57