Linux 编译安装colmap

这篇具有很好参考价值的文章主要介绍了Linux 编译安装colmap。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        COLMAP可以作为独立的app,通过命令行或者图形交互界面使用,也可以作为一个库被包含到其他源代码中。

        这里记录一下编译安装colmap的过程,首先需要安装好CUDA,CUDA具体安装过程这里就不赘述了。在GitHub上下载源代码,我这里就是下载的主干的源码:

        源码下载地址:GitHub - colmap/colmap: COLMAP - Structure-from-Motion and Multi-View Stereo

        源码编译说明:Installation — COLMAP 3.9-dev documentation

        


一、安装依赖库

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 \
    libcgal-qt5-dev \
    libflann-dev \
    libsqlite3-dev \
    libatlas-base-dev

二、安装Ceres优化库

        先解压源码的压缩包,然后进入解压后的文件夹:

unzip colmap.zip
cd colmap
git clone https://ceres-solver.googlesource.com/ceres-solver
cd ceres-solver
mkdir build
cd build
cmake .. -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF
make -j
sudo make install

三、修改文件

        在编译前需要修改一些文件,否则编译的时候会报错。

1.CUDA配置错误

        修改源码文件夹中的Cmake文件,加一句:

set(CMAKE_CUDA_ARCHITECTURES "native")

linux colmap,深度学习,linux,colmap

        如果不修改的话,编译时会报下面的错误:

CMake Error at cmake/FindDependencies.cmake:125 (message):
  You must set CMAKE_CUDA_ARCHITECTURES to e.g.  'native', 'all-major', '70',
  etc.  More information at
  https://cmake.org/cmake/help/latest/prop_tgt/CUDA_ARCHITECTURES.html
Call Stack (most recent call first):
  CMakeLists.txt:87 (include)

2.glog相关报错

        编译时报下面的错:

CMake Error at /usr/local/lib/cmake/Ceres/FindGlog.cmake:349 (add_library):
  add_library cannot create imported target "glog::glog" because another
  target with the same name already exists.
Call Stack (most recent call first):
  /usr/local/lib/cmake/Ceres/CeresConfig.cmake:247 (find_package)
  cmake/FindDependencies.cmake:33 (find_package)
  CMakeLists.txt:87 (include)

        修改报错提示里的/usr/local/lib/cmake/Ceres/FindGlog.cmake文件,第349行:

linux colmap,深度学习,linux,colmap

        把红框圈起来的部分改成下面的代码(直接注释掉也无妨):

if(NOT TARGET glog::glog)
  add_library(glog::glog INTERFACE IMPORTED)
  target_include_directories(glog::glog INTERFACE ${GLOG_INCLUDE_DIRS})
  target_link_libraries(glog::glog INTERFACE ${GLOG_LIBRARY})
endif()

四、编译colmap

cd colmap
mkdir build
cd build
cmake ..
make -j
sudo make install

        编译完成后,运行起来colmap:

// 查看colmap的帮助
colmap -h
// 显示colmap的gui图形界面
colmap gui

五、在云服务器上使用colmap图形界面到本机

        我使用的autodl的云服务器,在vscode上通过ssh访问云服务器,安装了colmap后,想运行colmap的gui图形界面。由于服务器并没有界面,所以想把colmap的图形界面显示到自己的电脑屏幕上,网上查试了很长时间都没弄好,最后看了autodl的官方文档终于把colmap的图形界面显示到自己电脑了,这里记录一下。

        安装VNC:AutoDL帮助文档

        ssh隧道:AutoDL帮助文档

        按照文档执行完export DISPLAY=:1后,可以使用xclock命令查看是否已经调通了,xclock所在的软件包是x11-apps,执行下面的命令,可以看到VNC客户端中显示了一个时钟:

sudo apt-get install x11-apps
xclock

linux colmap,深度学习,linux,colmap

        接着运行colmap显示colmap的图形界面,报了下面的错误:

linux colmap,深度学习,linux,colmap

(base) root@autodl-container-18e111b408-aed6fb9f:/# colmap gui
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
The X11 connection broke: No error (code 0)
XIO:  fatal IO error 0 (Success) on X server ":1"
      after 449 requests (449 known processed) with 0 events remaining.

        解决办法: 在/etc/profile末尾增加两句

export XDG_RUNTIME_DIR=/usr/lib/
export RUNLEVEL=3

        然后刷新全局变量:

source /etc/profile

        再执行colmap gui,VNC客户端中可以正常显示colmap图形界面了,大功告成!

linux colmap,深度学习,linux,colmap文章来源地址https://www.toymoban.com/news/detail-823565.html

到了这里,关于Linux 编译安装colmap的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

领支付宝红包 赞助服务器费用

相关文章

  • cmake/vcpkg x64-windows colmap安装/编译

            colmap是增量式sfm开源软件。相比于之前的sfm工作,colmap在选择最优初始图,选择最优更新图,三角化,BA,和迭代方面都有策略上的更新。本博文介绍其安装/编译方法。博主是先安装跑了下功能,再编译以阅读源码。         安装的软件是封装好的,无法看到源代码

    2024年02月08日
    浏览(61)
  • 【三维重建】【深度学习】【数据集】基于COLMAP制作自己的NeRF(LLFF格式)数据集

    提示:最近开始在【三维重建】方面进行研究,记录相关知识点,分享学习中遇到的问题已经解决的方法。 LLFF格式是NeRF网络模型训练使用的数据集格式之一,本文基于COLMAP软件展示从LLFF格式数据集的制作到开始模型训练的完整流程。NeRF(神经辐射场)通过输入同一场景不同视角下

    2024年02月10日
    浏览(52)
  • ARM & Linux 基础学习 / 配置交叉编译工具链 / 编译 Linux 应用和驱动 / 编译内核

    编辑整理 by Staok。 本文部分内容摘自 “100ask imx6ull” 开发板的配套资料(如 百问网的《嵌入式Linux应用开发完全手册》,在 百问网 imx6ull pro 开发板 页面 中的《2.1 100ASK_IMX6ULL_PRO:开发板资料》或《2.2 全系列Linux教程:在线视频与配套资料》里面可以下载到),还有参考 菜

    2024年02月04日
    浏览(54)
  • 【安装】grpc源码编译安装(Linux)

    修改构建套件的CMake Tool为新建的CMake 选择grpc源码目录中的CMakeLists.txt(grpc/CMakeLists.txt) 初始打开,会弹出窗,设置cmake编译的构建目录;(构建产生的构建文件都会生成在该目录下) 初始打开,设置构建目录后,会弹出窗设置CMake参数; 点击CMake,执行CMake;(最终会生成

    2024年04月27日
    浏览(48)
  • glibc 安装linux 编译

    1下载源码 2构建 编译 3安装 官方下载:Index of /gnu/glibc $wget https://ftp.gnu.org/gnu/glibc/glibc-2.26.tar.gz $tar xvf glib-tar.gz 下载linux内核头文件 Index of /pub/linux/kernel/v3.x/ $wget https://mirrors.edge.kernel.org/pub/linux/kernel/v3.x/linux-3.12.17.tar.xz $ tar xvf linux-3.12.17.tar.xz  $cd linux-3.12-17 如果出现编译器太

    2024年01月20日
    浏览(45)
  • linux编译源码,安装valgrind

    目录 1 下载源码 2 在虚拟机上解压 3 进入解压的目录,执行make 4 安装 5 检查安装是否成功 本文参考了内存检查工具valgrind介绍、安装与使用-CSDN博客 我到Valgrind: Current Releases 下载了valgrind 3.22.0源码 我使用的虚拟机是银河麒麟

    2024年01月22日
    浏览(49)
  • Linux内核的编译、安装、调试

    Linux内核下载The Linux Kernel Archives 打开 .config 更改 CONFIG_SYSTEM_TRUSTED_KEYS 和 CONFIG_SYSTEM_REVOCATION_KEYS 更改 CONFIG_DEBUG_INFO_BTF 注释掉CONFIG_X86_X32 首先安装模块 这里加上 INSTALL_MOD_STRIP=1 是为了避免内核启动时卡在 loading initial ramdisk 安装内核 更改引导 更改 grub 修改文件 更新 重启 在

    2024年02月11日
    浏览(47)
  • linux 搭建Nginx网页(编译安装)

    ♥️ 作者:小刘在C站 ♥️ 个人主页:  小刘主页  ♥️ 不能因为人生的道路坎坷,就使自己的身躯变得弯曲;不能因为生活的历程漫长,就使求索的 脚步迟缓。 ♥️ 学习两年总结出的运维经验,以及思科模拟器全套网络实验教程。专栏: 云计算技术 ♥️ 感谢CSDN让你我相遇

    2024年02月05日
    浏览(58)
  • Linux的学习之路:6、Linux编译器-gcc/g++使用

    本文主要是说一些gcc的使用,g++和gcc使用一样就没有特殊讲述。 目录 摘要 一、背景知识 二、gcc如何完成 1、预处理(进行宏替换) 2、编译(生成汇编) 3、汇编(生成机器可识别代码 4、链接(生成可执行文件或库文件) 5、函数库 6、静态库和动态库 7、gcc选项 三、思维导图

    2024年04月23日
    浏览(50)
  • Linux 上安装PostgreSQL-源码编译安装(超详细版!!!)

    服务器:CentOS Linux 7 (Core),4CPU 8GB  100GB磁盘。 最小配置 CPU: 至少 2 核心 内存: 至少 2 GB 硬盘: 至少 10 GB 空间,推荐使用 SSD 以提高性能 网络: 100 Mbps 场景:这种配置适用于轻量级的测试,如功能验证、小型应用的开发等。 推荐配置 CPU: 4 核心或以上 内存: 8 GB 或以上 硬盘:

    2024年01月23日
    浏览(95)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包