Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • S Slam
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 4
    • Issues 4
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 15
    • Merge requests 15
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • KEU-ComputerVision
  • Slam
  • Issues
  • #11
Closed
Open
Issue created Oct 22, 2020 by Nicolas Cadart@nicolas.cadartContributor

Extract less keypoints from maps for faster KD-Tree building

Issue description

At the beginning of Localization step, we extract keypoints from map and build a KD-Tree with them. This KD-Tree is then used to quickly perform nearest neighbors queries during ICP matching step, to get map points close to each current keypoint.

Currently, in order to avoid extracting all keypoints from map, we compute the bounding box of the current frame keypoints, and extract all points from map that lie within this bounding box. The following picture shows in blue the plane keypoints from current frame, and in white the keypoints that were extracted from planes map. keypoints_extraction_from_map

We can see that lots of useless regions are also extracted especially on extreme left and right sides, where we don't have any current keypoint that lies in these regions. By not extracting these useless points, we could greatly decrease the number of keypoints extracted from maps, and therefore accelerate KD-tree building as well as NN queries.

Change suggestion

We could imagine to extract all points from RollingGrid cells where current keypoints lie. But for far and isolated keypoints that are located near the boundaries of the cell, I fear that we will miss neighboring points.

Edited Oct 23, 2020 by Nicolas Cadart
Assignee
Assign to
Time tracking