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

Implement likelihood estimation for particles #25

Merged
merged 3 commits into from
Dec 12, 2022

Conversation

nahueespinosa
Copy link
Member

@nahueespinosa nahueespinosa commented Dec 7, 2022

Following up on #24, this patch implements the likelihood estimation step and a stationary motion model.

Related to #3, as usual.

Peek.2022-12-06.23-03.mp4
Peek.2022-12-06.23-04.mp4

@nahueespinosa
Copy link
Member Author

nahueespinosa commented Dec 7, 2022

Pending items (probably not for this PR):

  • Update policy for the particle filter: the update happens on the laser scan callback and we publish particle clouds every 500 ms. Not sure if that will be the final solution.
  • Generic state representation.
  • The sensor model is still part of beluga_amcl but should probably be moved to the core package.
  • Real motion model.
  • The model used in the flatland simulation doesn't respond well to teleop_twist_keyboard controls (might be my latin american keyboard configuration though).
  • nav2_amcl details and hacks that were not re-implemented here:
  • Extensions to the likelihood computation mentioned in Probabilistic Robotics 6.4.2:
    • Sort map occupancy values into free, occupied and unknown instead of just the first two. Useful if the map contains unexplored areas.
    • Match a scan and a map symmetrically: In addition to calculating the likelihood of a scan field inside the map, a symmetric extension also calculates the likelihood of each (nearby) object in the map object relative to the likelihood field of a scan.
  • Estimated pose computation and publishing.
  • Model tests.

@nahueespinosa
Copy link
Member Author

image

Copy link
Collaborator

@hidmic hidmic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

First pass

beluga_amcl/include/beluga_amcl/models.hpp Outdated Show resolved Hide resolved
beluga_amcl/include/beluga_amcl/models.hpp Outdated Show resolved Hide resolved
beluga_amcl/include/beluga_amcl/models.hpp Show resolved Hide resolved
@nahueespinosa nahueespinosa force-pushed the nahuel/laser_sub branch 2 times, most recently from b224247 to f7bafa2 Compare December 7, 2022 21:06
@nahueespinosa nahueespinosa merged commit 266c51d into master Dec 12, 2022
@nahueespinosa nahueespinosa deleted the nahuel/laser_sub branch December 12, 2022 12:02
@nahueespinosa nahueespinosa added enhancement New feature or request cpp Related to C++ code labels Jan 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cpp Related to C++ code enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants