Advertisement

pcl中添加kinect2驱动包libfreenect2的grabber

阅读量:

1 首先下载源码

要么直接去作者网站下载融合了libfreenect驱动的源码

复制代码
    gitclone

要么去pcl官网下载源码

复制代码
    gitclonehttps://github.com/PointCloudLibrary/pclpcl-trunk

参照

https://github.com/PointCloudLibrary/pcl/pull/1410/files

一一修改(这样走一遍有利于了解作者修改的过程)

2 FindFreenect2.cmake的修改

按照 libfreenect2安装目录下的/home/cbc/freenect2/lib/cmake/freenect2/freenect2Config.cmake进行修改

复制代码
 # - Try to find Freenect2

    
 # Once done this will define
    
 #
    
 #  FREENECT2_FOUND - system has Freenect2
    
 #  FREENECT2_INCLUDE_DIRS - the Freenect2 include directory
    
 #  FREENECT2_LIBRARY - Link these to use Freenect2
    
 #  FREENECT2_LIBRARIES
    
  
    
 find_path(FREENECT2_INCLUDE_DIRS NAMES libfreenect2/libfreenect2.hpp
    
 	PATHS
    
 	/home/cbc/freenect2/include                                        #此处修改为安装目录下的include
    
 	NO_DEFAULT_PATH
    
 	
    
 )
    
  
    
 find_library(FREENECT2_LIBRARY NAMES freenect2 
    
     PATHS /home/cbc/freenect2/lib                                          #此处修改为安装目录下的lib
    
     NO_DEFAULT_PATH
    
 )
    
  
    
  
    
 include(FindPackageHandleStandardArgs)
    
 find_package_handle_standard_args(Freenect2
    
   FOUND_VAR FREENECT2_FOUND
    
   REQUIRED_VARS FREENECT2_LIBRARY FREENECT2_INCLUDE_DIRS
    
 )
    
    
    
    

cmake有可能不能找到libfreenect2的安装路径,多尝试其他的写法,必要时删掉pcl-trunk/build内容

3 编译

复制代码
    cdpcl-trunk&&mkdirbuild&&cdbuild

为了能使用gpu模块

复制代码
    cmake
复制代码
    make-j4

如果需要安装

复制代码
    sudomake-j4install

4 使用Freenect2Grabber

pcl其他的Grabber都是pcl::io命名空间下的

比如

复制代码
    new pcl::io::OpenNI2Grabber()
    

而这里加入的Freenect2Grabber是pcl命名空间下的

复制代码
    new pcl::Freenect2Grabber()
    

全部评论 (0)

还没有任何评论哟~