
< /p>
Я писал OpenCV в течение 2 лет и нахожу, что это действительно трудно сегментировать только камни, используя картину OpenCV RGB, так что я использую Kinect Fusion, чтобы выставить заземление и получить облако точки, в которых Stones rgb больше, чем на земле. Библиотека, чтобы сегментировать плоскость заземления (в зеленом цвете) Оригинальная точка стала значением прогнозируемой точки на земле 2D -изображения), которая оказывается серым изображением коврика. Но это очень сложно для меня, и не могли бы вы дать мне несколько советов? < /p>
Это мой основной код: < /p>
Код: Выделить всё
pcl::PointCloud
::Ptr cloud (new pcl::PointCloud);
pcl::io::loadPLYFile ("MeshedReconstruction.ply", *cloud);
pcl::ModelCoefficients::Ptr coefficients (new pcl::ModelCoefficients);
pcl::PointIndices::Ptr inliers_groud (new pcl::PointIndices);
// Create the segmentation object
pcl::SACSegmentation seg;
// Optional
seg.setOptimizeCoefficients (true);
// Mandatory
seg.setModelType (pcl::SACMODEL_PLANE);
seg.setMethodType (pcl::SAC_RANSAC);
seg.setDistanceThreshold (0.01);//1cm
seg.setInputCloud (cloud);
seg.segment (*inliers_groud, *coefficients);
if (inliers_groud->indices.size () == 0)
{
PCL_ERROR ("Could not estimate a planar model for the given dataset.");
return (-1);
}
std::cerr
Подробнее здесь: [url]https://stackoverflow.com/questions/29827325/how-to-project-point-cloud-onto-the-ground-plane-and-transfer-it-into-an-2d-imag[/url]