今天有空,想看看点云配准4PCS算法,据说是一个高效鲁棒性很好的算法。
闲话少说,还是记录一下我的安装过程吧。
免得过段时间我又忘记了。
首先先说一下我的电脑配置:
虚拟机安装ubuntu 14.04 LTS
内存:2.1GB处理器:Intel® Core™ i5-4590 CPU @ 3.30GHz × 3
图形:Gallium 0.4 on SVGA3D; build: RELEASE;
操作系统:64位
磁盘:39.9
先在github拉一下源代码:
git clone https://github.com/nmellado/Super4PCS
官方安装教程:官方安装教程(https://github.com/nmellado/Super4PCS/wiki/Compilation)
安装依赖项:Eigen,OpenCV,boost请自行安装
下面安装libANN-1.1.2,CFITSIO
sudo apt-get install update
sudo apt-get install libann-dev
sudo apt-get install libcfitsio3-dev
sudo ldconfig
打开CMakeList文件,作如下修改:
find_path(ANN_DIR ann_1.1.2)
IF(DEFINED ANN_DIR)
set(ANN_INCLUDE_DIR "${ANN_DIR}/include")
include_directories( ${ANN_INCLUDE_DIR} )
if (MSVC)
set(ANN_LIBS "${ANN_DIR}/lib/libANN.dll")
else()
set(ANN_LIBS "${ANN_DIR}/lib/libANN.a")
endif()
ENDIF(DEFINED ANN_DIR)
修改为
find_path(ANN_DIR ann_1.1.2)
IF(DEFINED ANN_DIR)
set(ANN_INCLUDE_DIR "${ANN_DIR}/include")
include_directories( ${ANN_INCLUDE_DIR} )
if (MSVC)
set(ANN_LIBS "${ANN_DIR}/lib/libann.dll")
else()
set(ANN_LIBS "${ANN_DIR}/lib/libann.a")
endif()
ENDIF(DEFINED ANN_DIR)
好了,安装完依赖以后,可以开始编译了。
cd Super4PCS
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DANN_DIR=/usr/ ..
make
正常来说,应该不会出现什么问题了。在build文件夹中生成可执行文件Super4PCS
下载数据,测试:
github:https://github.com/nmellado/Super4PCS
wiki:https://github.com/nmellado/Super4PCS/wiki
web:http://geometry.cs.ucl.ac.uk/projects/2014/super4PCS/