PCL安装
1.安装依赖(pcl1.10+vtk6.2)
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 libvtk6.2 libvtk6.2-qt libvtk6-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
sudo apt-get install libopenni-dev libopenni2-dev
注意每个依赖安装是否成功,若安装失败也可能是网络原因,重新运行一次即可。
2.下载pcl源码
git clone https://github.com/PointCloudLibrary/pcl.git
3.编译安装源码
cd pcl
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_GPU=ON -DBUILD_apps=ON -DBUILD_examples=ON \
-DCMAKE_INSTALL_PREFIX=/usr ..
make
sudo make install
4.测试
创建test.cpp文件
#include <iostream>
#include <pcl/common/common_headers.h>
#include <pcl/io/pcd_io.h>
#include <pcl/visualization/pcl_visualizer.h>
#include <pcl/visualization/cloud_viewer.h>
#include <pcl/console/parse.h>
using namespace pcl;
int main(int argc, char const *argv[])
{
std::cout << "Test Pcl !" << std::endl;
PointCloud<PointXYZRGB>::Ptr point_cloud_ptr(new PointCloud<PointXYZRGB>);
uint8_t r(255), g(15), b(15);
for(float z(-1.0); z <= 1.0; z += 0.05){
for(float angle(0.0); angle <= 360.0; angle += 5.0){
PointXYZRGB point;
point.x = 0.5 * cosf (deg2rad(angle));
point.y = sinf (deg2rad(angle));
point.z = z;
uint32_t rgb = (static_cast<uint32_t>(r) << 16 |
static_cast<uint32_t>(g) << 8 | static_cast<uint32_t>(b));
point.rgb = *reinterpret_cast<float*>(&rgb);
point_cloud_ptr->points.push_back (point);
}
if(z < 0.0){
r -= 12;
g += 12;
} else {
g -= 12;
b += 12;
}
}
point_cloud_ptr->width = (int) point_cloud_ptr->points.size();
point_cloud_ptr->height = 1;
visualization::CloudViewer viewer("PCL Test");
viewer.showCloud(point_cloud_ptr);
while(!viewer.wasStopped()){};
return 0;
}
创建 CMakeLists.txt文件
cmake_minimum_required(VERSION 2.6)
project(test_project)
find_package(PCL 1.8 REQUIRED)
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})
add_executable(test test.cpp)
target_link_libraries (test ${PCL_LIBRARIES})
编译test.cpp
cmake .
make
qt5安装
1.首次从Qt官网上下载 Qt5.12 的安装包
下载地址: http://download.qt.io/archive/qt/
选择对应系统的安装包。
2.安装
cd 到安装包 qt-opensource-linux-x86_64-5.12.5.run 所在的目录
chmod +x /qt-opensource-linux-x64-5.12.5.run
sudo /qt-opensource-linux-x64-5.12.5.run
设置qt的安装路径,安装过程比较简单,这里不再赘述。
3.qt4切换到qt5
我们查看电脑已经安装的qt版本,打开文件路径 /usr/lib/x86_64-linux-gnu/qt-default/qtchooser,可以看到里面有一个default.conf文件,此时打开终端 .
cd /usr/lib/x86_64-linux-gnu/qt-default/qtchooser
sudo gedit default.conf
会看到
将内容改成安装目录下的
/安装目录/5.12.5/gcc_64/bin
/安装目录/5.12.5
测试qt工程
在*.pro文件中加入
CONFIG += c++14
INCLUDEPATH += /usr/include/eigen3
INCLUDEPATH += /usr/include/vtk-6.2
LIBS += /usr/lib/x86_64-linux-gnu/libvtk*.so
INCLUDEPATH += /usr/include/boost
LIBS += /usr/lib/x86_64-linux-gnu/libboost_*.so
INCLUDEPATH += /usr/include/pcl-1.10
LIBS += /usr/lib/libpcl_*.so
即可运行pcl库的c++工程。