3d PCL体素下采样滤波器作为函数
我想使用一些过滤器作为“函数”,以便对不同的输入云使用相同的过滤器,即传递不同的云作为参数。例如,体素过滤器(见下文)可用于不同的输入云。如果我有云A和云B,我必须定义sor1和sor2,因为我不能在两者上使用相同的sor,或者这是可能的,但我不知道如何做。有人能分享一些关于这方面的想法吗3d PCL体素下采样滤波器作为函数,3d,point-cloud-library,point-clouds,3d,Point Cloud Library,Point Clouds,我想使用一些过滤器作为“函数”,以便对不同的输入云使用相同的过滤器,即传递不同的云作为参数。例如,体素过滤器(见下文)可用于不同的输入云。如果我有云A和云B,我必须定义sor1和sor2,因为我不能在两者上使用相同的sor,或者这是可能的,但我不知道如何做。有人能分享一些关于这方面的想法吗 // Create the filtering object pcl::VoxelGrid<pcl::PCLPointCloud2> sor; sor.setInputCloud (clou
// Create the filtering object
pcl::VoxelGrid<pcl::PCLPointCloud2> sor;
sor.setInputCloud (cloud);
sor.setLeafSize (0.01f, 0.01f, 0.01f);
sor.filter (*cloud_filtered);
//创建筛选对象
体素网格;
sor.setInputCloud(云);
sor.setLeafSize(0.01f,0.01f,0.01f);
sor.filter(*已过滤的云);
是的,只需再次调用setInputCloud()以获得新的云,然后再调用filter()
或者,为了简单起见,您可以将其全部放在一个函数中,每次都创建一个新对象
voxelFilter(cloud)
{
// Create the filtering object
pcl::VoxelGrid<pcl::PCLPointCloud2> sor;
sor.setInputCloud (cloud);
sor.setLeafSize (0.01f, 0.01f, 0.01f);
sor.filter (*cloud_filtered);
return cloud_filtered;
}
体素过滤器(云)
{
//创建过滤对象
体素网格;
sor.setInputCloud(云);
sor.setLeafSize(0.01f,0.01f,0.01f);
sor.filter(*已过滤的云);
返回已过滤的云;
}