1.使用PCL要先安装cuda
用这个方法按照cuda 最省心。
http://blog.csdn.net/u014222645/article/details/452311212.安装必要的软件包
1.安装pcl依赖的软件包,需要注意的是,boost的版本号需要大于等于1.47,否则编译过程中会出现版本号太旧的错误提示。
命令:
sudo apt-get install libboost1.48-dev libboost1.48-all-dev libeigen3-dev libflann-dev libvtk5-dev libqhull-dev
2.安装kinect-openni相关,这一步很重要,如果没有安装openni的话, 最后编译后虽然不会报错,但是没有编译出PCL/KinFu相关的可执行文件。
我在github 上面下载的kinect 驱动,安装下就可以了
驱动都是64位的,亲测可用
OpenNI for linux 64 驱动 http://download.csdn.net/detail/u014222645/8291255
SensorKinect for linux http://download.csdn.net/detail/u014222645/8291265
NITE-Bin-Dev-Linux-x64 http://download.csdn.net/detail/u014222645/8291541
下载并编译pcl-trunk
下载pcl-trunk
命令:
sudo apt-get install git-gui cmake-gui
git clone https://github.com/PointCloudLibrary/pcl.git pcl-trunk
cd pcl-trunk
配置编译选项
命令:
mkdir build && cd build
ccmake ..
之后开始配置编译选项,按t键进入高级模式设置,按c键进行配置。
配置过程中保证
BUILD_GPU ON
BUILD_CUDA ON
BUILD_OPENNI ON
BUILD_gpu_kinfu ON
BUILD_gpu_kinfu_large_scale ON
对于其他的包根据自己的需求进行选择性编译,如果编译所有的包的话,你需要花费很长时间进行等待。
按g键产生makefiles
我的显卡不是很好,NVIDIA GT540M 编译pcl 编译了很久
编译pcl-trunk
命令:
make
make install(如果你并不想安装pcl,这一步可以省略)
在编译过程中,你可能会遇到以下问题:
1.错误像"Error: no such instruction: vfmadd312ss",这个错误是因为你使用到是corei7处理器
解决办法:
cd ..
cd cmake
sudo gedit pcl_find_sse.cmake
将 "-march=native" 替换为 "-march=corei7"
2.No rule to make target `/usr/lib/x86_64-linux-gnu/libGL.so'
解决办法:http://techtidings.blogspot.com/2012/01/problem-with-libglso-on-64-bit-ubuntu.html
至此,PCL/KinFu在Ubuntu下编译完成。你可以按照http://pointclouds.org/documentation/tutorials/using_kinfu_large_scale.php#using-kinfu-large-scale所述进行测试。
附带成功使用pcl 3D 建模以后的图片
第一次建模 还不太会移动Kinect 所以建不好了
原文章是http://blog.csdn.net/l_h2010/article/details/38239709 。
大家快试试,ubuntu下的3D建模