Я пытаюсь оценить линию, проходящую через точки облака точек, используя метод RANSAC, предоставленный библиотекой облака точек.Я могу создать объект и оценить линейную модель без проблем, вот так:
pcl::PointCloud<pcl::PointXYZ>::ConstPtr source_cloud(new pcl::PointCloud<pcl::PointXYZ>);
pcl::ModelCoefficients::Ptr line_coefficients(new pcl::ModelCoefficients);
pcl::PointIndices::Ptr inliers (new pcl::PointIndices);
// Populate point cloud...
// Create the segmentation object
pcl::SACSegmentation<pcl::PointXYZ> seg;
seg.setModelType (pcl::SACMODEL_LINE);
seg.setMethodType (pcl::SAC_RANSAC);
seg.setDistanceThreshold (distance_thresh);
seg.setInputCloud (source_cloud);
seg.segment (*inliers, *line_coefficients);
Я сейчас пытаюсь получить доступ к параметрам модели, и я просто слишком туп, чтобы сделать это ... в соответствии с API должно быть шесть доступных параметров:
Шесть коэффициентов линии задаются точкой на линии и направлением линии как: [point_on_line.x point_on_line.y point_on_line.z line_direction.x line_direction.y line_direction.z]
Поэтому я пытаюсь получить к ним доступ следующим образом:
line_coefficients->line_direction->x
Однако это не работает.Я получаю сообщение об ошибке:
Ни один член с именем 'line_direction' в 'pcl :: ModelCoefficients'.
Я не знаю, что я делаюнеправильно ... у кого-нибудь есть идеи?Заранее спасибо!