pcl点云库学习笔记(二)

加载点云并显示。

第一种方式:

#include <pcl/point_types.h>
#include <pcl/common/common.h>
#include <pcl/point_cloud.h>
#include <pcl/io/pcd_io.h>
#include<pcl/visualization/cloud_viewer.h>
#include<stdlib.h>


int main(int argc, char** argv)
{
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud;
cloud = pcl::PointCloud<pcl::PointXYZ>::Ptr(new pcl::PointCloud<pcl::PointXYZ>);
pcl::io::loadPCDFile<pcl::PointXYZ>("d:\\points.pcd", *cloud);
pcl::visualization::CloudViewer viewer("Simple Cloud Viewer");
viewer.showCloud(cloud);
while (!viewer.wasStopped())
{
}

system("pause");
return 0;

}

第二种方式:



#include <pcl/point_types.h>
#include <pcl/common/common.h>
#include <pcl/point_cloud.h>
#include <pcl/io/pcd_io.h>
#include<pcl/visualization/cloud_viewer.h>
#include<stdlib.h>


int main(int argc, char** argv)
{
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud;
cloud = pcl::PointCloud<pcl::PointXYZ>::Ptr(new pcl::PointCloud<pcl::PointXYZ>);
pcl::io::loadPCDFile<pcl::PointXYZ>("d:\\points.pcd", *cloud);
//pcl::visualization::CloudViewer viewer("Simple Cloud Viewer");
//viewer->showCloud(cloud);
boost::shared_ptr<pcl::visualization::PCLVisualizer> viewer(new pcl::visualization::PCLVisualizer("3DViewer"));
//点云初始化
viewer->setBackgroundColor(0, 0, 0);//设置背景颜色
viewer->addPointCloud<pcl::PointXYZ>(cloud, "sample cloud");//名字就是唯一一个ID
viewer->setPointCloudRenderingProperties(pcl::visualization::PCL_VISUALIZER_POINT_SIZE,1,"sample cloud");//设置点的某些属性,比如点的大小
viewer->addCoordinateSystem();//显示坐标系统的方向,红(x)绿(y)蓝(z)
viewer->initCameraParameters();//初始化摄像机的参数,使用户从默认的角度和方向观察点云
while (!viewer->wasStopped())
{
viewer->spinOnce(100);
boost::this_thread::sleep(boost::posix_time::microseconds(100000));
}
system("pause");
return 0;
}

你可能感兴趣的:(pcl点云库学习笔记(二))