当前位置: 首页 > news >正文

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。


http://www.lryc.cn/news/174512.html

相关文章:

  • Jumpserver堡垒机
  • 第一百五十三回 如何实现滑动窗口
  • Oracle 12c自动化管理特性的新进展:自动备份、自动恢复和自动维护功能的优势|oracle 12c相对oralce 11g的新特性(3)
  • Redis——Jedis中hash类型使用
  • 肖sir__项目实战讲解__004
  • 数据库数据恢复-ORACLE常见故障有哪些?恢复数据的可能性高吗?
  • 合规性管理如何帮助产品团队按时交付?
  • 从平均数到排名算法
  • 如何使用ESP8266微控制器和Nextion显示器为Home Assistant展示温度传感器和互联网天气预报
  • 阻塞队列-生产者消费者模型
  • Vector Art - 矢量艺术
  • ruoyi-nbcio增加flowable流程待办消息的提醒,并提供右上角的红字数字提醒(一)
  • 数据结构:二叉树的基本概念
  • 利用Socks5代理IP加强跨界电商爬虫的网络安全
  • Spring学习笔记6 Bean的实例化方式
  • 大二毕设.3-网盘系统-用户模块讲解
  • (Vue2)智慧商城项目
  • Nginx实战
  • day-57 代码随想录算法训练营(19)动态规划 part 17
  • 在项目中,关于前端实现数据可视化的技术选择
  • DT 卡通材质学习 一
  • 【游戏引擎架构】6.2 资源管理器
  • spring的ThreadPoolTaskExecutor装饰器传递调用线程信息给线程池中的线程
  • 转载 - 洞察问题本质,解决工作难题
  • 关于计算机找不到d3dx9_43.dll,无法继续执行代码修复方法
  • 《从零开始的Java世界》01基本程序设计
  • 【数据开发】数据全栈知识架构,数据(平台、开发、管理、分析)
  • 基于STM32的宠物托运智能控制系统的设计(第十七届研电赛)
  • 数据结构的奇妙世界:实用算法与实际应用
  • uniapp实现表格冻结