資源簡介
PCL版本為1.7.1 IDE為 VS2010 本demo實現了SACSegmentation的用法,壓縮包里有點云樣本和源代碼,成功實現了點云的分割和模型提取。

代碼片段和文件信息
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
int?main(int?argc?char**?argv)
{
pcl::PointCloud::Ptr?cloud_source?(new?pcl::PointCloud);
pcl::PointCloud::Ptr?cloud_target?(new?pcl::PointCloud);
//?check?arguments
if(argc?!=?2)?{
std::cout?<“ERROR:?the?number?of?arguments?is?illegal!“?< return?-1;
}
//?load?pcd?file
if(pcl::io::loadPCDFile(argv[1]?*cloud_source)==-1)?{
std::cout?<“load?source?failed!“?< return?-1;
}
std::cout?<“source?loaded!“?<
//?pass?through?filter?to?get?the?certain?field
pcl::PointCloud::Ptr?cloud_source_filtered(new?pcl::PointCloud);
pcl::PassThrough?pt;
pt.setInputCloud(cloud_source);
pt.setFilterFieldName(“y“);
pt.setFilterLimits(-0.1?0.6);
pt.filter(*cloud_source_filtered);
//?segmentation
pcl::ModelCoefficients::Ptr?coefficients?(new?pcl::ModelCoefficients);
pcl::PointIndices::Ptr?inliers?(new?pcl::PointIndices);
pcl::SACSegmentation?sac;
sac.setInputCloud(cloud_source_filtered);????//?cloud_source_filtered?為提取桌子表面?cloud_source?為提取地面
sac.setMethodType(pcl::SAC_RANSAC);
sac.setModelType(pcl::SACMODEL_PLANE);
sac.setDistanceThreshold(0.01);
sac.setMaxIterations(100);
sac.setProbability(0.95);
sac.segment(*inliers?*coefficients);
//?extract?the?certain?field
pcl::ExtractIndices?ei;
ei.setIndices(inliers);
ei.setInputCloud(cloud_source_filtered);????//?cloud_source_filtered?為提取桌子表面?cloud_source?為提取地面
ei.filter(*cloud_target);
std::cout?<*coefficients?<
//?display
pcl::visualization::PCLVisualizer?p;
pcl::visualization::PointCloudColorHandlerCustom?tgt_h?(cloud_target?255?0?0);
p.addPointCloud(cloud_target?tgt_h?“target“);
p.spinOnce();
pcl::visualization::PCLVisualizer?p2;
pcl::visualization::PointCloudColorHandlerCustom?src_h?(cloud_source?0?255?0);
p2.addPointCloud(cloud_source?src_h?“source“);
p2.spin();
return?0;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????2349??2014-09-07?11:35??PlaneModelSegmentation.cpp
?????文件????17492958??2014-07-17?20:32??empty?desktop.pcd
?????文件?????????358??2014-09-06?10:23??CMakeLists.txt
評論
共有 條評論