• 大小: 48.5MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-06-16
  • 语言: 其他
  • 标签: KinectV2  

资源简介

利用Kinect sdk2.0和PCL1.8,在vs2013中使用cmake配置工程项目获取点云,并在第100次刷新时保存点云。 详见博文http://blog.csdn.net/cs2539263027, 内含cmake配置vs2013工程教程。

资源截图

代码片段和文件信息

// Disable Error C4996 that occur when using Boost.Signals2.
#ifdef _DEBUG
#define _SCL_SECURE_NO_WARNINGS
#endif

#include “kinect2_grabber.h“
#include 
#include  //PCL的PCD格式文件的输入输出头文件
#include  //PCL对各种格式的点的支持头文件
#include 

typedef pcl::PointXYZRGBA PointType;

int main( int argc char* argv[] )
{

int nnn=0;
    // PCL Visualizer
    boost::shared_ptr viewer(
        new pcl::visualization::PCLVisualizer( “Point Cloud Viewer“ ) );
    viewer->setCameraPosition( 0.0 0.0 -2.5 0.0 0.0 0.0 );

    // Point Cloud
    pcl::PointCloud::ConstPtr cloud;

    // Retrieved Point Cloud Callback Function
    boost::mutex mutex;
    boost::function::ConstPtr& )> function =
        [&cloud &mutex]( const pcl::PointCloud::ConstPtr& ptr ){
            boost::mutex::scoped_lock lock( mutex );

            /* Point Cloud Processing */

            cloud = ptr->makeShared();
        };

    // Kinect2Grabber
    boost::shared_ptr grabber = boost::make_shared();

    // Register Callback Function
    boost::signals2::connection connection = grabber->registerCallback( function );

    // Start Grabber
    grabber->start();
bool switchfd = true;
    while( !viewer->wasStopped() ){
        // Update Viewer
        viewer->spinOnce();

        boost::mutex::scoped_try_lock lock( mutex );
        if( lock.owns_lock() && cloud ){
            // Update Point Cloud
//cout << cloud->width << endl;
//cout << cloud->size() << endl;


//保存点云数据
if (nnn == 100)
{
cin >> nnn;
pcl::io::savePCDFileASCII(“test_pcd.pcd“ *cloud);
nnn = 0;
}
nnn++;
cout<<“nnn: “<            if( !viewer->updatePointCloud( cloud “cloud“ ) ){

                viewer->addPointCloud( cloud “cloud“ );

            }
        }
    }

    // Stop Grabber
    grabber->stop();
    
    // Disconnect Callback Function
    if( connection.connected() ){
        connection.disconnect();
    }

    return 0;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-05-29 18:46  KinectGrabber-Kinect2Grabber\
     文件        1100  2016-09-11 01:10  KinectGrabber-Kinect2Grabber\License.txt
     文件        1358  2016-09-11 01:10  KinectGrabber-Kinect2Grabber\README.md
     目录           0  2017-07-06 21:58  KinectGrabber-Kinect2Grabber\Sample\
     文件         847  2016-09-11 01:10  KinectGrabber-Kinect2Grabber\Sample\CMakeLists.txt
     文件        7138  2016-09-11 01:10  KinectGrabber-Kinect2Grabber\Sample\FindKinectSDK2.cmake
     目录           0  2017-07-06 22:05  KinectGrabber-Kinect2Grabber\Sample\build\
     文件       59578  2017-06-07 20:29  KinectGrabber-Kinect2Grabber\Sample\build\ALL_BUILD.vcxproj
     文件         310  2017-06-07 20:29  KinectGrabber-Kinect2Grabber\Sample\build\ALL_BUILD.vcxproj.filters
     文件       54568  2017-06-07 20:29  KinectGrabber-Kinect2Grabber\Sample\build\CMakeCache.txt
     目录           0  2017-06-07 20:30  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\
     目录           0  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\
     文件        1954  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CMakeCCompiler.cmake
     文件        2751  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CMakeCXXCompiler.cmake
     文件       36864  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CMakeDetermineCompilerABI_C.bin
     文件       36864  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CMakeDetermineCompilerABI_CXX.bin
     文件         272  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CMakeRCCompiler.cmake
     文件         395  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CMakeSystem.cmake
     目录           0  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CompilerIdC\
     文件       17387  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CompilerIdC\CMakeCCompilerId.c
     文件       10240  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CompilerIdC\CompilerIdC.exe
     文件        2403  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CompilerIdC\CompilerIdC.vcxproj
     目录           0  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CompilerIdC\Debug\
     文件        2011  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CompilerIdC\Debug\CMakeCCompilerId.obj
     目录           0  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CompilerIdC\Debug\CompilerIdC.tlog\
     文件         556  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CompilerIdC\Debug\CompilerIdC.tlog\CL.read.1.tlog
     文件         464  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CompilerIdC\Debug\CompilerIdC.tlog\CL.write.1.tlog
     文件         222  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CompilerIdC\Debug\CompilerIdC.tlog\CompilerIdC.lastbuildstate
     文件         724  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CompilerIdC\Debug\CompilerIdC.tlog\cl.command.1.tlog
     文件        1064  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CompilerIdC\Debug\CompilerIdC.tlog\link.command.1.tlog
     文件        2932  2017-06-07 20:28  KinectGrabber-Kinect2Grabber\Sample\build\CMakeFiles\3.6.3\CompilerIdC\Debug\CompilerIdC.tlog\link.read.1.tlog
............此处省略69个文件信息

评论

共有 条评论