我已经从点云中提取了线段,并用于pcl::SACSegmentation<pcl::PointXYZ> seg;
同时拟合所有线。我所有的文件段都存储在同一个文件夹中,我可以一个一个地读取它们并单独计算它们的模型系数。
解决这个问题的最好方法是通过一个for
循环,但viewer.addLine
在第二次迭代中给出错误,说addLine
在绘制一条线后已经使用过(RANSAC)。我使用 PCL 站点http://pointclouds.org/documentation/tutorials/cylinder_segmentation.php中的方法来确定我所有段的系数。根据我目前所了解的,模型系数是在内部存储的。
目标:使用 RANSAC 从模型系数中同时绘制所有线并将它们添加到 PCL 可视化器中。
这是我用来加载所有文件的片段(示例)
std::stringstream ss;
ss << "./cloud_cluster_" << j << ".pcd";
reader.read<pcl::PointXYZ> (ss.str (), *cloud_cluster, false);
j++;
// snip
pcl::visualizer viewer ("Sample programme")
viewer.addCloud();
viewer.addLine(model_coefficients)
您的帮助将不胜感激。