高翔视觉SLAM十四讲学习笔记3+PCL安装方式

一.首先更新软件

sudo apt-get update

二.安装VTK视觉模块 进入管网下载,选好对应到版本,选择8.2或者7.1,太新的版本可能需要安装更高版本到cmake,所以建议安装8.2或者7.1.1,我自己安装到8.2,下载地址
VTK
下载完解压进入目录,编译
cmake .. make sudo make install

三.安装pcl依赖和工具
sudo apt-get install libpcl-dev pcl-tools sudo apt-get install freeglut3-dev

安装完成后可能还会报错,首先是我们必须在工程到cmakelist文件中添加
list(REMOVE_ITEM PCL_LIBRARIES "vtkproj4")

否则会报错,例如高翔slambook第五章的第二个程序,先在cmakelist添加以上代码,
高翔视觉SLAM十四讲学习笔记3+PCL安装方式
文章图片

修改之后这,仍然还有错误
No rule to make target '/usr/lib/x86_64-linux-gnu/libproj.so

【高翔视觉SLAM十四讲学习笔记3+PCL安装方式】我们输入以下指令
sudo ln -s/usr/lib/x86_64-linux-gnu/libproj.so.9 /usr/lib/x86_64-linux-gnu/libproj.so

这样就可以编译了,但是视觉十四讲中的代码如果我们是创建build再进行编译到话,仍然肯能出现问题,因为pose.txt在上一个文件夹,所以我们要对其中到图片路径和pose.txt路径进行修改,再编译。修改为…/pose.txt
vector colorImgs, depthImgs; // 彩色图和深度图 vector> poses; // 相机位姿ifstream fin("../pose.txt"); if (!fin) { cerr<<"请在有pose.txt的目录下运行此程序"<

另一个代码修改如下,修改为…/%s/%d.%s
boost::format fmt( "../%s/%d.%s" ); //图像文件格式 colorImgs.push_back( cv::imread( (fmt%"color"%(i+1)%"png").str() )); depthImgs.push_back( cv::imread( (fmt%"depth"%(i+1)%"pgm").str(), -1 )); // 使用-1读取原始图像

这样可以完美运行代码了,之后./joinMap,生成map.pcd文件
高翔视觉SLAM十四讲学习笔记3+PCL安装方式
文章图片

再之后利用以下命令就可以重现点云图了,代码如下
pcl_viewer map.pcd

运行结果如下
高翔视觉SLAM十四讲学习笔记3+PCL安装方式
文章图片

大功告成了。
ps:如果可以直接通过ppa方式安装pcl更好,代码如下
sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl sudo apt-get update sudo apt-get install libpcl-all

    推荐阅读