You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am trying to fuse pointclouds with normals with the integrated_ct_icp_factor, and it crashes when trying to access the frame normals for computing the error. I tracked this down to this code in the dynamic integrator
auto deskewed = std::make_shared<FrameCPU>(factor->deskewed_source_points(values));
deskewed->add_covs(covariance_estimation.estimate(deskewed->points_storage, neighbors));
deskewed->add_intensities(points->intensities, points->size());
target_ivox->insert(*deskewed);
Here, the ivox structure complains about this frame not having normals, whereas the first inserted frame did have normals. So it appears the the ct_icp factor is currently broken. Or am I misunderstanding something?
It prints
error: inconsistent input point attributes (normals)
and crashes here (line numbers may be changed a bit wrt to origin/main):
deskewed has only covariance matrices and lacks normals. You need to add normals by calling add_normals if you want to use CT_ICP. There is also CT_GICP that uses covariances matrices, and it should work with deskewed in your post.
BTW, we released gtsam_points that includes refined implementations of iVox and CT_ICP, which may be more suitable to your purpose.
It is also possible to transform normals of your input point cloud using the interpolation result of CT_ICP. This way will be more efficient but complicated. If you want to try it, use get_time_table(), get_time_indices(), and get_source_poses() in CT_ICP.
I am trying to fuse pointclouds with normals with the integrated_ct_icp_factor, and it crashes when trying to access the frame normals for computing the error. I tracked this down to this code in the dynamic integrator
Here, the ivox structure complains about this frame not having normals, whereas the first inserted frame did have normals. So it appears the the ct_icp factor is currently broken. Or am I misunderstanding something?
It prints
and crashes here (line numbers may be changed a bit wrt to origin/main):
The text was updated successfully, but these errors were encountered: