COLMAP安装记录及实战操作

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

COLMAP安装记录及实战操作

  • 前言
    • 图1
  • 一、COLMAP的安装
    • 1.Colmap官方程序下载
    • 2.Colmap安装教程
      • 1、安装依赖包
      • 2、配置和编译colmap
  • 二、COLMAP三维重建
    • 1.启动colmap
    • 2.Colmap三维重建过程
      • 1)新建项目
      • 2)特征提取(feature extraction)
      • 3)特征匹配(feature Matching)
      • 3)稀疏重建(reconstruction)
      • 4)影像去畸变(undistortion)
      • 5)深度图估计
      • 6)密集重建
  • 总结


前言

本文整理了开源的三维重建方法COLMAP的安装记录及实战案例。本文是在Linux系统下完成COLMAP的编译运行的,本文的计算机环境配置为:nvidia驱动版本为430.64,CUDA版本是10.1,显存是15GB。接下来将详细介绍COLMAP的安装过程,以及分享安装过程所遇到的问题,最后实战案例分析COLMAP三维重建的过程。

COLMAP安装记录及实战操作_第1张图片

一、COLMAP的安装

1.Colmap官方程序下载

Colmap下载地址

git clone https://github.com/colmap/colmap.git

COLMAP安装记录及实战操作_第2张图片

2.Colmap安装教程

Colmap官方网站上提供了安装教程,官方安装教程,主要安装步骤如下:

1、安装依赖包

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

COLMAP安装记录及实战操作_第3张图片
COLMAP安装记录及实战操作_第4张图片

  • Ubuntu16.04下,CGAL的cmake配置是损坏的,必须安装CGAL的qt5包:
sudo apt-get install libcgal-qt5-dev

COLMAP安装记录及实战操作_第5张图片

  • Install Ceres Solver
sudo apt-get install libatlas-base-dev libsuitesparse-dev
git clone https://ceres-solver.googlesource.com/ceres-solver
cd ceres-solver
git checkout $(git describe --tags) # Checkout the latest release
mkdir build
cd build
cmake .. -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF
make -j
sudo make install

COLMAP安装记录及实战操作_第6张图片
COLMAP安装记录及实战操作_第7张图片
COLMAP安装记录及实战操作_第8张图片

2、配置和编译colmap

git clone https://github.com/colmap/colmap.git
cd colmap
git checkout dev
mkdir build
cd build
cmake ..
make -j
sudo make install

安装过程到编译make的过程中出现问题,解决办法如下:

1、首先gcc-5版本太低了,更新gcc++到6.5.0

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-6 g++-6
cd /usr/bin
sudo sudo rm gcc
sudo ln -s gcc-6 gcc
sudo rm g++
sudo ln -s g++-6 g++
g++ --version

在这里插入图片描述
2、因为系统中已经提前安装了anaconda,它的路径和库会干扰,colmap安装的时候系统默认的库和路径,导致colmap安装编译时候找库有问题,所以需要找到并修改anaconda的文件名。等到colmap安装成功后,要记得把anaconda的文件名再修改回去。
3.如果遇到如下问题,可在colmap的CMakeList.txt文件里面添加:set(CMAKE_CXX_STANDARD 14)。
COLMAP安装记录及实战操作_第9张图片
最终colmap编译安装成功的图示如下:
COLMAP安装记录及实战操作_第10张图片

二、COLMAP三维重建

1.启动colmap

使用操作命令进行运行,可通过colmap -h了解有哪些命令行操作。
COLMAP安装记录及实战操作_第11张图片
使用colmap gui可进入可视化界面
COLMAP安装记录及实战操作_第12张图片

2.Colmap三维重建过程

1)新建项目

首先需要准备数据集,可以选择DTU数据集或者Tank and Temples数据,也可以选择自己采集的图像。
COLMAP安装记录及实战操作_第13张图片
点击file-> New Project-> ,在弹出窗口里面,点击New,新建工程,并将工程保存在scan75目录下,点击select,并最后点击save保存,就在scan75的文件夹下生成一个scan75.db文件。
COLMAP安装记录及实战操作_第14张图片

2)特征提取(feature extraction)

Processing-> Feature Extraction -> Extract

点击“processing”中的“Feature Extraction”, 弹出选择窗体,这里面,只需要将相机模型选择为“Pinhole”模型即可,其他参数默认可以不变。读者感兴趣的话,可以自行修正。一般我们采集的影像是携带有EXIF文件的,所以这里,需要选上“Parameters from EXIF”,意思是从EXIF中提取相机内参数。之后点击“Extract”即可进行特征提取。
COLMAP安装记录及实战操作_第15张图片

3)特征匹配(feature Matching)

Processing-> Feature Matching -> Run

点击“processing”中的“ Feature Matching”, 弹出选择窗体,选择默认参数,run即可。
COLMAP安装记录及实战操作_第16张图片

3)稀疏重建(reconstruction)

reconstruction-> start reconstruction

点击“reconstruction”中的“start reconstruction”进行一键式重建,这里得到目标稀疏的重建点云以及各个视图的相机姿态。
COLMAP安装记录及实战操作_第17张图片

4)影像去畸变(undistortion)

reconstruction-> dense reconstruction,在新窗口:select-> ./home/zhai/scan75/ -> undistortion即可去除图像畸变。
COLMAP安装记录及实战操作_第18张图片

5)深度图估计

在操作4)点击“stereo”,即可进行目标场景的深度估计。

6)密集重建

在操作4)点击“fusion”,即可进行目标场景的稠密重建。
COLMAP安装记录及实战操作_第19张图片

重建结果:

COLMAP安装记录及实战操作_第20张图片
导出的文件,fused.ply文件为最终三维点云文件。

COLMAP安装记录及实战操作_第21张图片


总结

COLMAP方法对目标进行三维重建,操作简单,很容易实现。对三维重建感兴趣的朋友,可以尝试一下。

你可能感兴趣的:(三维重建,ubuntu,linux)