1. 从Github下载PCL源码(地址):
![55b9f118cac1f1677e7db8375217fbfd.png](https://i-blog.csdnimg.cn/blog_migrate/c106159a038aca9450b4f38359c50dca.jpeg)
2. 安装依赖项:
sudo apt-get install libflann-dev
sudo apt-get install libvtk5-dev
sudo apt-get install libboost-all-dev
sudo apt-get install libeigen3-dev
3. 编译:
解压PCL源码并进入目录:
![e9e87258ad239e2b1d99f404bc0b6bc8.png](https://i-blog.csdnimg.cn/blog_migrate/22b079fe8030608e70d081e3c5baa28f.png)
新建"build"文件夹并进入:
mkdir build && cd build
编译:
cmake -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_visualization=ON ..
查看输出信息:
![c684be090554d1f85a223fc816db069c.png](https://i-blog.csdnimg.cn/blog_migrate/95e1152a46859aa5c4ec461fd2444545.jpeg)
A: No package 'metslib' found. 下载安装
B: The minimum required version of VTK is 6.2 bu found 5.10.1: 删除旧版, 安装新版.
重新编译:
cmake -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_visualization=ON ..
make -j8
安装:
sudo make install
4. 测试(视觉SLAM十四讲CH5 joinMap)
joinMap.cpp
#include
CMakeFiles.txt
cmake_minimum_required( VERSION 2.8 )
project( joinMap )
set( CMAKE_BUILD_TYPE Release )
set( CMAKE_CXX_FLAGS "-std=c++11 -O3" )
# opencv
find_package( OpenCV REQUIRED )
include_directories( ${OpenCV_INCLUDE_DIRS} )
# eigen
include_directories( "/usr/include/eigen3/" )
# pcl
#find_package( PCL 1.10 REQUIRED COMPONENT common io )
#include_directories( ${PCL_INCLUDE_DIRS} )
#add_definitions( ${PCL_DEFINITIONS} )
find_package( PCL 1.10 REQUIRED COMPONENT common io )
include_directories( "/usr/include/pcl-1.10/" )
add_definitions( "/usr/share/pcl-1.10/" )
link_directories("/usr/lib/libpcl_common.so" "/usr/lib/libpcl_io.so")
add_executable( joinMap joinMap.cpp )
target_link_libraries( joinMap ${OpenCV_LIBS} ${PCL_LIBRARIES} )
![942ec1d63725c9f76c1104101c7cae06.png](https://i-blog.csdnimg.cn/blog_migrate/7b04b7782cdaa89f46a8196a58a33ca7.jpeg)
查看 .pcd文件:
pcl_viewer map.pcd
![cc7462a2b912bc966d82bf2ab394a3dc.png](https://i-blog.csdnimg.cn/blog_migrate/261ee17c9ca60a6ae44e14b963aaaa42.png)
![5d24981546329d4bfbda4446d29d526c.png](https://i-blog.csdnimg.cn/blog_migrate/4054e9ef0cd4c99af378e9d1f85f519a.jpeg)