安装参考资料:
Ubuntu下安装PCL库且在QT中配置应用
https://blog.csdn.net/hit1524468/article/details/79465980
Ubuntu下Qt中使用pcl库
https://blog.csdn.net/GreenHandCGL/article/details/81585629
显示参考资料:
官网:
http://pointclouds.org/documentation/tutorials/pcl_visualizer.php
PCLVisualizer可视化类
https://blog.csdn.net/u013019296/article/details/70052312
Qt中利用PCL显示点云和面,并进行点云变换,面变换
https://blog.csdn.net/hss468/article/details/80514805
pip方式安装pcl:
https://www.cnblogs.com/lifeofershisui/p/9037829.html
ubuntu16.04 :
跳过本节,执行后续步骤;
ubuntu18.04 :
需要安装boost,版本boost 1.62出现过问题,推荐版本boost 1.58,
所有历史版本见网址:
https://www.boost.org/users/history/
boost 1.58 版本见网址:
https://www.boost.org/users/history/version_1_58_0.html
参考网址:https://blog.csdn.net/abc13310086/article/details/79381820
https://blog.csdn.net/lzp_k2/article/details/82662112
三句话搞定,会自动安装依赖包,安装完直接使用。
安装完成后,会顺带将vtk和eigen都安装。
很方便。需要联网。
sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl
sudo apt-get update
sudo apt install libpcl-dev
当时日期2018.11.30:
默认安装pcl1.7, vtk6.2,eigen3.
当时日期2019.2.21:
默认安装pcl1.8, vtk6.3,eigen3.
注意在qt下调用时,一定选择正确的库路径,否则会报告奇葩问题。
在qt工程.pro文件中,添加如下代码,注意版本号需要对应:
#eigen3
INCLUDEPATH += /usr/include/eigen3
#VTK
INCLUDEPATH += /usr/include/vtk-6.2
LIBS += /usr/lib/x86_64-linux-gnu/libvtk*.so
#pcl
INCLUDEPATH += /usr/include/pcl-1.7/
LIBS += /usr/lib/x86_64-linux-gnu/libpcl*.so
步骤繁杂,容易出错,不推荐。
但是可以安装历史版本。所有历史版本见如下网址:
https://github.com/PointCloudLibrary/pcl/releases/
例如pcl-1.7的稳定版本地址:
https://github.com/PointCloudLibrary/pcl/releases/tag/pcl-1.7.2
对手动安装,如感兴趣,见后记。
有的工程用到了pcap
https://blog.csdn.net/qq_21792169/article/details/52496796
PCL示例代码详细解释:
https://blog.csdn.net/u013019296/article/details/70052312
参考:Qt中利用PCL显示点云和面,并进行点云变换,面变换
https://blog.csdn.net/hss468/article/details/80514805
这么重要个函数。竟然官网没有有效介绍。
有时间再续。
这些应该有过期的,建议根据当前流行搭配选择合适版本。
sudo apt-get update
sudo apt-get install git
//-------------------------------------------
build-essential linux-libc-dev
sudo apt-get install cmake cmake-gui
sudo apt-get install libusb-1.0-0-dev libusb-dev libudev-dev
sudo apt-get install mpi-default-dev openmpi-bin openmpi-common
sudo apt-get install libflann1.8 libflann-dev
sudo apt-get install libeigen3-dev
sudo apt-get install libboost-all-dev
sudo apt-get install libvtk5.10-qt4 libvtk5.10 libvtk5-dev
sudo apt-get install libqhull* libgtest-dev
sudo apt-get install freeglut3-dev pkg-config
sudo apt-get install libxmu-dev libxi-dev
sudo apt-get install mono-complete
//sudo apt-get install qt-sdk openjdk-8-jdk openjdk-8-jre
need: 25MB+4MB+2MB+15MB+17MB+2MB+256MB+303MB+0.7MB+...0MB...+165MB+600MB
pip install pyflann
https://blog.csdn.net/qq_30850767/article/details/80026403
7.1MB
pcl install need eigen:
ubuntu16.04+eigen3安装
office download: http://eigen.tuxfamily.org/index.php?title=Main_Page
https://www.cnblogs.com/newneul/p/8256803.html
sudo tar -xzvf eigen-eigen-5a0156e40feb.tar.gz -C /usr/local/include
sudo mv /usr/local/include/eigen-eigen-5a0156e40feb /usr/local/include/eigen3
2MB
若要正确安装pcl库,步骤应为先安装vtk
参考网页:
https://www.vtk.org/Wiki/VTK/Building/Linux
https://blog.csdn.net/GreenHandCGL/article/details/81585629
安装包官网下载:
https://www.vtk.org/download/#latest
并解压得到:VTK-7.1.1文件夹。
[打开一个终端执行指令:]
拷贝安装文件夹到系统目录/usr/local/src:
sudo cp -a VTK-7.1.1 /usr/local/src
cd /usr/local/src //进入系统目录
sudo mkdir VTK-build //在安装文件夹同级建立一个build文件夹
sudo cmake /usr/local/src/VTK-7.1.1/
sudo make
sudo make install
发现系统安装PCL过程中已经过VTK了,留个纪念吧:
/usr/include/vtk-6.2
opengl安装:
https://opencv.org/releases.html
安装VTK过程中已经自动安装了。不需要装了。
源码最新版本:https://github.com/PointCloudLibrary/pcl
源码历史1.8.1:https://github.com/PointCloudLibrary/pcl/tree/pcl-1.8.1
源码其他版本类似。
预编译过的所有版本:https://github.com/PointCloudLibrary/pcl/releases
解压安装包,进入安装包后打开终端,执行如下指令:
mkdir build //按照习惯,在安装包内新建构建路径,避免目录凌乱
cd build //进入构建路径
cmake .. //路径..指向安装包位置,也可以用绝对路径代替
make -j4 //make,使用4个CPU核
sudo make install //安装至默认路径
默认安装路径是:
.h头文件路径:/usr/local/include/pcl-1.8
.so库文件路径:/usr/local/lib/
安装1.9.0的问题:
错误提示:对‘inflateValidate@ZLIB_1.2.9’未定义的引用
参考操作:https://www.cnblogs.com/huhuai/p/9356913.html
https://blog.csdn.net/zhangruijerry/article/details/79724720 注意:要下载的deb包需要展开目录才能看到
都没有解决,安装deb时提示当前版本是1.2.8.因此改为使用pcl1.8.1
安装1.8.1的问题:
警告提示:/home/XXX/anaconda3/lib/libcurl.so.4: no version information available
参考操作:
libcurl.so.4: no version information available --curl 、pycurl报错已解决:
https://blog.csdn.net/dashen180309/article/details/81212348
(含软连接修改的分析) 安装caffe 出现libcurl.so.4: no version information available (required by cmake):
http://www.zhimengzhe.com/linux/329844.html
安装过程很漫长约0.5小时,带着warning安装完成了,因此libcurl.so.4的问题不去解决了。
https://blog.csdn.net/hit1524468/article/details/79465980
主要代码:
LIBS += /usr/local/lib/libpcl_*.so
注意不要写成如下形式添加-L,否则貌似添加了,实际根本没有添加,qt编译没有的路径是不会报错:
LIBS += -L/usr/local/lib/libpcl_*.so
-L和-l是配合使用的,详见:
https://www.cnblogs.com/lit10050528/p/3936203.html
此时已经安装成功了。
由于开始手动安装,pcl版本1.8;
编译正常,但是每次使用 pcl::visualization 时,总会提示:
...
The inferior stopped because it received a signal from the operating system.
Signal meaning :secmentation fault
...
后来又用pip安装过,pcl版本1.7;
将开始手动选择的以下库修改:
#INCLUDEPATH += /usr/local/include/pcl-1.8/
#LIBS += /usr/local/lib/libpcl*.so \
修改成如下路径:
INCLUDEPATH += /usr/include/pcl-1.7/
LIBS += /usr/lib/x86_64-linux-gnu/libpcl*.so \
不再报错了。
应该是pcl1.8和VTK等的版本还不是很搭配。