本篇记录在自己服务器上安装Colmap过程。
系统:Ubuntu 20.04
显卡:Nvidia Geforce RTX 3080Ti
参考链接:Ubuntu20.04安装Colmap ,Ubuntu20.04安装colmap-知乎简明过程
1. 安装CUDA和CUDNN首先检查是否有这两个东西 nvcc -V 和 ls | grep cudnn
说明只有CUDA没有CUDNN
参考链接:判断CUDA和CUDNN是否安装成功并正常使用
接下来就是安装CUDNN参考链接:Ubuntu 20.04安装CUDA & CUDNN
先查看一下CUDA的安装路径 /usr/local/cuda-11.3/ ,因为之后安装CUDNN就是要把头文件拷贝到 include 和 lib64 中
去Nvidia官网下载对应版本的CUDNN:
下载好后 sudo dpkg -i cudnn-local-repo-ubuntu2004-8.4.0.27_1.0-1_amd64.deb 安装即可
使用 cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2 或者 ls | grep cudnn 验证安装是否成功
或者可以使用python输出版本信息:
import torch from torch.backends import cudnn print(torch.backends.cudnn.version())2. 安装依赖
【知乎链里给的依赖…】
sudo apt-get install
git
cmake
build-essential
libboost-program-options-dev
libboost-filesystem-dev
libboost-graph-dev
libboost-regex-dev
libboost-system-dev
libboost-test-dev
libeigen3-dev
libsuitesparse-dev
libfreeimage-dev
libgoogle-glog-dev
libgflags-dev
libglew-dev
qtbase5-dev
libqt5opengl5-dev
libcgal-dev
libcgal-qt5-dev
官方教程里的依赖: 【按这个来吧… 不然cmake会有报错的】
sudo apt-get install
git
cmake
build-essential
libboost-program-options-dev
libboost-filesystem-dev
libboost-graph-dev
libboost-system-dev
libboost-test-dev
libeigen3-dev
libsuitesparse-dev
libfreeimage-dev
libmetis-dev
libgoogle-glog-dev
libgflags-dev
libglew-dev
qtbase5-dev
libqt5opengl5-dev
libcgal-dev
3. 安装Ceres Solver
这一步所需依赖都包含在上面了
下载源码:Ceres Solver,官方安装教程
git clone https://github.com/ceres-solver/ceres-solver.git
进入到该文件夹,进行编译
mkdir build cd build cmake .. # 预编译 make -j20 # 编译 可用 nproc 查看cpu核心数,我的cpu核心数是 20 -j40 / -j16?->(CPU Core 8) sudo make install # 安装 如果不想安到计算机里也可以不执行这个命令
参考链接:Ubuntu安装Ceres Solver
关于以下问题,暂时没有考虑:
注意,直接编译出来的是静态库.a 如果需要编译动态分享库需要修改CMakeLists.txt中option(BUILD_SHARED_LIBS “Build Ceres as a shared library.” ON)
参考链接:Ubuntu20.04安装Ceres和g2o库
至于为什么要进行这一步,可能涉及到使用 anaconda的Qt问题… 具体的也不是很了解,可以看看 这个问题
cd ~ ls mv anaconda3 axx ls5. 下载Colmap
下载源码: Colmap主页 ,官方教程
git clone https://github.com/colmap/colmap.git
cd colmap mkdir build cd build cmake .. make -j sudo make install运行Colmap
验证是否安装成功:
colmap -h colmap gui
cmake .. 的时候出现报错… Oh…
噗… 于是我们 重新进入到官方教程中查看它要求的依赖进行安装… 应该是少了什么依赖没装…
cmake .. 完成
make -j 完成
sudo make install 完成
Colmap 安装完成
cd ~ ls mv axx anaconda3 ls



