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

Deskewing #16

Open
wants to merge 10 commits into
base: ros2
Choose a base branch
from
Open

Deskewing #16

wants to merge 10 commits into from

Conversation

boxanm
Copy link
Contributor

@boxanm boxanm commented Dec 26, 2024

This PR merges the pointcloud_motion_deskew package into the mapper. This is the first step in an effort to move deskewing (and other tasks) outside of the ROS ecosystem, probably inside the mapper. The main motivation behind this intermediate step is to speed the deskewing up or to be able to interpolate motions for more points. The new implementation deskews points only after the input filters are applied, e.g. when we typically discard large portions of the scan with various filters.

Main features included in this PR:

  • Class implementing a slightly modified version of the original deskewing algorithm. The updated version is partially parallelized and doesn't rely on ROS for point transformation.
  • New dependencies were added to support the Deskewing class. The conversion of how ROS handles per-point timestamps was moved to libpointmatcher_ros. See this PR. Also, you must be on this branch of norlab_icp_mapper for this to work.
  • This package now includes a basic launch and config file.
  • There are now two extra debugging topics: publishing the scan after input filters and after deskewing. These publishers don't publish anything unless at least one subscriber exists.
  • The package version was pumped to 2.1.0.

I realize that in some situations, deskewing the scan after applying the input filters might not be the desired approach. For example, when using voxel sampling, the point for each voxel is selected based on its position, which might afterward change during deskewing. We could eventually treat deskewing as another input filter, but I think this could wait after the integration inside the mapper is finished.

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

Successfully merging this pull request may close these issues.

1 participant