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;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章