Ransac 平面方程

void do_ransac(pcl::PointCloud<PointT>::Ptr cloud)
{
    pcl::PointIndices::Ptr inliers;
    pcl::ModelCoefficients::Ptr coefficients
    pcl::SACSegmentation<PointT> seg;
    //pcl::SACSegmentationFromNormals<PointT, pcl::Normal> seg;
    seg.setOptimizeCoefficients(true);
    //seg.setModelType (pcl::SACMODEL_NORMAL_PLANE);
    seg.setModelType(pcl::SACMODEL_PLANE);
    seg.setMethodType(pcl::SAC_RANSAC);
    seg.setDistanceThreshold(distance_threshold);
    seg.setMaxIterations(max_iterations);
    seg.setInputCloud(cloud);
    seg.segment(*inliers, *coefficients);
}

求平面方程:ax+by+cz+d=0;

cout<<"平面方程參數"<<coefficients->values[0]<<coefficients->values[1]<<coefficients->values[2]<<coefficients->values[3]<<endl;

就是所求得的a,b,c,d

發佈了31 篇原創文章 · 獲贊 3 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章