当使用 pcl::IntegralImageEstimation 计算法线时,法线字段填充有 NAN,但是当我使用其他估计方法(如 NormalEstimationOMP)时,我可以生成法线。我没有收到任何错误,我想使用 Integral 方法,因为它比 OMP 版本快得多,并且可以为我的用例实时计算法线。我还尝试了 IntegralImageNormalEstimation 中的其他估计方法(COVARIANCE_MATRIX、AVERAGE_3D_GRADIENT、AVERAGE_DEPTH_CHANGE、SIMPLE_3D_GRADIENT)
这是我正在使用的代码;
pcl::IntegralImageNormalEstimation<PointType, PointType> ne;
ne.setNormalEstimationMethod (ne.AVERAGE_DEPTH_CHANGE);
ne.setMaxDepthChangeFactor(2.0f);
ne.setNormalSmoothingSize(10.0f);
ne.setViewPoint(pose_in.pose.position.x, pose_in.pose.position.y, pose_in.pose.position.z);
ne.setInputCloud(transform_cloud);
SWRI_PROFILE("compute_normal");
ne.compute(*cloud_out);