C++ 法线估计曲率场返回NAN

C++ 法线估计曲率场返回NAN,c++,normals,point-clouds,point-cloud-library,C++,Normals,Point Clouds,Point Cloud Library,我正在计算组织点云的曲面法线,如下所示: pcl::PointCloud<pcl::PointXYZRGB>::Ptr cloud = create_point_cloud_ptr(cap_depth, cap_rgb); // estimate normals pcl::PointCloud<pcl::Normal>::Ptr normals (new pcl::PointCloud<pcl::Normal>); pcl::IntegralImageNo

我正在计算组织点云的曲面法线,如下所示:

pcl::PointCloud<pcl::PointXYZRGB>::Ptr cloud = create_point_cloud_ptr(cap_depth, cap_rgb);

// estimate normals
pcl::PointCloud<pcl::Normal>::Ptr normals (new pcl::PointCloud<pcl::Normal>);

pcl::IntegralImageNormalEstimation<pcl::PointXYZRGB, pcl::Normal> ne;
ne.setNormalEstimationMethod (ne.AVERAGE_3D_GRADIENT);
ne.setMaxDepthChangeFactor(15);
ne.setNormalSmoothingSize(10.0f);
ne.setInputCloud(cloud);
ne.compute(*normals);
pcl::PointCloud::Ptr cloud=create_point_cloud_Ptr(cap_depth,cap_rgb);
//估计法线
pcl::PointCloud::Ptr法线(新pcl::PointCloud);
pcl::积分图像归一化估计;
ne.SetNormal估计方法(ne.AVERAGE\u 3D\u GRADIENT);
ne.setMaxDepthChangeFactor(15);
ne.设置NormalSmoothingSize(10.0f);
ne.setInputCloud(云);
ne.计算(*法线);

当我遍历法线时,所有点的曲率场都设置为NAN。我在计算中做错了什么吗?

结果是
平均3D\u梯度
方法没有计算曲面曲率,需要使用
ne.协方差矩阵