利用PCL数据库进行点云边界识别时, 以下代码运算结果总是0,请问问题出在哪里?针对不同点云,边界估计时的搜索半径如何确定的?

     pcl::PointCloud<pcl::PointXYZ>::Ptr cloud (new pcl::PointCloud<pcl::PointXYZ>);
            if (pcl::io::loadPCDFile<pcl::PointXYZ>("mid.pcd",*cloud) == -1)
            {
                    PCL_ERROR("COULD NOT READ FILE mid.pcl \n");
                    return (-1);
            }
            
            pcl::PointCloud<pcl::Normal>::Ptr normals (new pcl::PointCloud<pcl::Normal>);
            pcl::PointCloud<pcl::Boundary> boundaries;
            pcl::BoundaryEstimation<pcl::PointXYZ,pcl::Normal,pcl::Boundary> est;
            pcl::search::KdTree<pcl::PointXYZ>::Ptr tree(new pcl::search::KdTree<pcl::PointXYZ>());
            
    
            pcl::NormalEstimation<pcl::PointXYZ,pcl::Normal> normEst;  
       

 normEst.setInputCloud(cloud);
            normEst.setSearchMethod(tree);
            // normEst.setRadiusSearch(2);  
    
            normEst.setKSearch(10);  
            normEst.compute(*normals);
          
            
    
            est.setInputCloud(cloud);
            est.setInputNormals(normals);
            //  est.setAngleThreshold(90);
            est.setRadiusSearch(0.02); 
            est.setSearchMethod (pcl::search::KdTree<pcl::PointXYZ>::Ptr (new pcl::search::KdTree<pcl::PointXYZ>)); 
            est.compute (boundaries);
阅读 5k
2 个回答

此问题已解决.

新手上路,请多包涵

请问楼主,是如何解决的啊?能说一下吗?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题