我是靠谱客的博主 彪壮香氛,这篇文章主要介绍ubuntu16.04安装pcl1.8.0(一)依赖库(二)安装pcl1.8.0(三)测试,现在分享给大家,希望可以做个参考。

(一)依赖库

Boost:

sudo apt-get install libboost-all-dev

Eigen:

sudo apt-get install libeigen3-dev

FLANN:

sudo apt-get install libflann-dev

QT5:

sudo apt-get qt5-default

 

VTK8.1

下载:

    官方下载地址 https://www.vtk.org/download/,下载所需版本后解压即可。

配置:

    在解压目录下新建build, 在其中使用ccmake配置参数 。

    1. 安装ccmake 和 VTK 的依赖项:

 sudo apt-get install cmake-curses-gui
 sudo apt-get install freeglut3-dev

    2. 配置VTK:

    cd /home/Username/Download/VTK
    mkdir build
    cd build
    ccmake ..

       主要配置选项:

    # 按照VTK tutorial要求,每设置完一项均按'c'进行一次configuration,直到所有项目设置完,
     
    BUILD_SHARED_LIBS = ON   
     
    BUILD_TESTING = ON    # 默认OFF,如果打开的话,编译时会由于下载测试数据所用url过旧而报错,建议OFF
     
    CMAKE_BUILD_TYPE = Release    # 默认Debug运行会较慢
     
    CMAKE_INSTALL_PREFIX = /usr/local    # 这里用默认就行,或者改到想要安装的位置
     
    # 以下为高级设置,需先在命令行按't'才可见
    VTK_FORBID_DOWNLOADS = ON    # 默认OFF,建议打开,否则编译会报错,理由同BUILD_TESTING
     
    # 此时应已经出现'g' generating 的按键选项,按 'g' 即完成配置.

     3. 安装VTK:(会需要挺长时间)

    cmake .
     
    make
     
    sudo make install

安装时可能会报错,报错内容记录如下:

    a. CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108 (message): Could NOT find OpenGL (missing: OPENGL_gl_LIBRARY OPENGL_INCLUDE_DIR)

     实际上VTK并不需要OpenGL作为前提条件,所以不用安装OpenGL,只要安装如下软件包即可:

sudo apt-get install freeglut3-dev

注:最烦的是安装完vtk8.1发现与pcl不兼容,所以只能卸载安装回vtk6.2

sudo apt-get install libvtk6-dev libvtk6.2 libvtk6-qt-dev

 

Opencv3.4.0

安装好VTK后再安装Opencv,其他依赖项可以参见另一条博客。

1.install numpy

sudo apt-get python-dev

sudo apt-get python3-dev
sudo apt-get install python-numpy
sudo apt-get install python3-numpy

2.配置

cmake
-D CMAKE_BUILD_TYPE=RELEASE
-D CMAKE_INSTALL_PREFIX=/usr/local 
-D CMAKE_CXX_FLAGS="-std=c++11"             #vtk8.1需要打开c++11
-D CUDA_NVCC_FLAGS="--compiler-options "-std=c++03"" 
-D INSTALL_C_EXAMPLES=ON 
-D INSTALL_PYTHON_EXAMPLES=ON 
-D WITH_TBB=ON 
-D WITH_V4L=ON 
-D WITH_QT=ON 
-D WITH_OPENGL=ON 
-D WITH_CUDA=ON 
-DENABLE_FAST_MATH=1 -DCUDA_FAST_MATH=1 -DWITH_CUBLAS=1 
-D INSTALL_PYTHON_EXAMPLES=ON
-D BUILD_opencv_python3=ON
-D BUILD_opencv_python2=ON
-D BUILD_opencv_java=OFF
-D PYTHON3_EXECUTABLE=$(which python3)
-D PYTHON3_INCLUDE_DIR=/usr/include/python3.5m
-D PYTHON3_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0
-D PYTHON3_NUMPY_PATH=/usr/local/lib/python3.5/dist-packages
-D PYTHON2_EXECUTABLE=$(which python2)
-D PYTHON2_INCLUDE_DIR=/usr/include/python2.7
-D PYTHON2_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
-D PYTHON2_NUMPY_PATH=/usr/local/lib/python2.7/dist-packages 
-D OPENCV_EXTRA_MODULES_PATH=~/opencv3.4.0/opencv_contrib/modules 
-D BUILD_EXAMPLES=ON ..

 

注:编译时可能找不到qt5.9.7,可以按照如下方案解决:

Open your .bashrc file: gedit ~/.bashrc

add a line like following to the end of the .bashrc file:

export CMAKE_PREFIX_PATH=/usr/local/Qt5.5.1/5.5/gcc_64/lib/cmake

source ~/.bashrc

3.编译安装

sudo make

sudo make install

sudo make install 执行完毕后OpenCV编译过程就结束了。

由于这次是用系统自带的Python进行安装,如果之后安装了anaconda,则需要将一个.so文件放入python3.5的site-packages中。

使用系统自带的python2和python3编译分别会生成cv2.so和cv2.cpython-35m-x86_64-linux-gnu.so这就是我们分别在anaconda2和anaconda3中import的cv2模块。

因为我的是anaconda3,所以首先进入到~/opencv-3.4.0/build/lib/python3目录下将其中的cv2.cpython-35m-x86_64-linux-gnu.so复制到anaconda下。(如果是anaconda2就直接将cv2.so复制进去就可以了)

sudo cp cv2.cpython-35m-x86_64-linux-gnu.so /home/zy/anaconda3/lib/python3.5/site-packages/

然后改名sudo mv cv2.cpython-35m-x86_64-linux-gnu.so cv2.so

当然你不愿意复制也可以使用建立软链接的方式

ln -s /usr/local/lib/python3.5/site-packages/cv2.cpython-35m-x86_64-linux-gnu.so /anaconda3/lib/python3.5/site-packages/cv2.so

然后问题完美解决了。

(二)安装pcl1.8.0

1.有一些依赖项需要添加,由于之前安装过boost,eigen,flann,qt,vtk,可以跳过与这些相关的依赖项

     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

2.安装可视化库依赖

安装OpenNI,OpenNI2

 sudo apt-get install libopenni-dev 
 sudo apt-get install libopenni2-dev

安装ensensor

 sudo dpkg -i ensenso-sdk-2.2.147-x64.deb 
 sudo dpkg -i codemeter_6.80.3312.500_amd64.deb

这两个文件下载地址:
1、https://www.ensenso.com/support/sdk-download/
2、https://www.wibu.com/support/user/downloads-user-software.html
接下来

sudo apt-get -f install

2.下载pcl1.8.0

https://github.com/PointCloudLibrary

解压

sudo tar -zxvf pcl-pcl-1.8.0.tar.gz

3.安装

cd pcl-pcl-1.8.0 && 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

编译时出现错误:

1)

make[2]: *** No rule to make target '/usr/lib/x86_64-linux-gnu/libproj.so', needed by 'joinMap'.  Stop.

CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/joinMap.dir/all' failed
make[1]: *** [CMakeFiles/joinMap.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

*** Failure: Exit code 2 ***

解决方法,执行

sudo apt-get install libproj-dev

2)

nvcc fatal : Unsupported gpu architecture 'compute_20'

通过很多途径了解到,出现这个错误的原因是,在cmake配置阶段,配置了当前版本cuda不支持的计算架构2.0。换句话说,就是cuda9.0不再支持compute_20(Fermi)。

您需要找到一个不调用该体系结构的makefile,或者编辑makefile(或CMakeLists.txt)以删除对compute_20 or sm_20 的引用。或者你可以切换到CUDA 8。

考虑删除对compute_20的支持,参考 vs2015+opencv3.3.0+cuda9.1编译,出现nvcc fatal : Unsupported gpu architecture 'compute_20'

cmake-gui,然后在CUDA_ARCH_BIN这个栏位,把支持的版本号"2.0, 2.1, 3.0, ..., 6.1"改为"3.0, 3.5,3.7,5.0,5.2,6.0, 6.1",就是删除对2.x的支持。重新cmake,make。

(三)测试

https://www.youtube.com/watch?v=5lU6RiS4pfE

 

 

 

最后

以上就是彪壮香氛最近收集整理的关于ubuntu16.04安装pcl1.8.0(一)依赖库(二)安装pcl1.8.0(三)测试的全部内容,更多相关ubuntu16内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部