Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update_plane in released code does not check the plane consistancy as described in paper #38

Open
LarryDong opened this issue Sep 29, 2024 · 0 comments

Comments

@LarryDong
Copy link

Hi, thanks for releasing the code.

After carefully comparing the codes and the paper, I found:

  1. init_plane function, calculate the plane's (n,q) and cov, when initalizating or updating the octree, which is the same as paper's description.
  2. update_plane function, calculate the plane's (n,q) without cov. This function is only called in updateOctoTree when (the node is the largest layer & not a plane & no-updating the cov). But as the paper descirbed, there should be a function that "check the plane consistancy, and then only update the (n,q) if the same plane. The update_plane doesn't do this.

Thus, I think there are two issues that incosistant with the paper:

  1. The update_plane function should check plane consistancy first, but not directly re-calcuate the paramter. I can still find some "old" variables here:
Eigen::Matrix3d old_covariance = plane->covariance;

in Line 247 of "voxel_map_util.hpp"

  1. The update_plane should be called in another place (Line 402 in UpdateOctoTree:
if (new_points_num_ > update_size_threshold_) {
    if (update_cov_enable_) {
        init_plane(temp_points_, plane_ptr_);
    }
    //** there should be "update_plane" if `update_cov_enable_` is false. **//
    new_points_num_ = 0;
}

In this cases, the cov do not need to be update, but only update the (n,q).

Could someone explain what's the motivation that the code is not consistant with the original paper. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant