高翔视觉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安装方式_第1张图片
修改之后这,仍然还有错误

No rule to make target '/usr/lib/x86_64-linux-gnu/libproj.so

我们输入以下指令

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安装方式_第2张图片
再之后利用以下命令就可以重现点云图了,代码如下

pcl_viewer map.pcd

运行结果如下
高翔视觉SLAM十四讲学习笔记3+PCL安装方式_第3张图片
大功告成了。

ps:如果可以直接通过ppa方式安装pcl更好,代码如下

sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl
sudo apt-get update
sudo apt-get install libpcl-all

你可能感兴趣的:(高翔视觉SLAM十四讲学习笔记3+PCL安装方式)