Add a min_obstacle_height param to the nav2_costmap_2d's ObstacleLayer plugin#3211
Merged
SteveMacenski merged 1 commit intoros-navigation:mainfrom Sep 22, 2022
Merged
Add a min_obstacle_height param to the nav2_costmap_2d's ObstacleLayer plugin#3211SteveMacenski merged 1 commit intoros-navigation:mainfrom
SteveMacenski merged 1 commit intoros-navigation:mainfrom
Conversation
…r plugin This allows considering full range observations, specified by the <data source>.min_obstacle_height and <data source>.max_obstacle_height especially used for the raytracing, but to still be able to specify a minimum obstacle height to report obstacles onto the costmap. This is in particular required in the case a PointCloud2 source points slightly towards the ground, sometimes detecting obstacles, that should be cleared once the ground reappears behind the obstacle when it has moved away: we don't want to detect the ground as an obstacle, but still want it to be used in the raytracing to clear the previously detected obstacle.
Contributor
|
@milidam, please properly fill in PR template in the future. @SteveMacenski, use this instead.
|
7 tasks
SteveMacenski
approved these changes
Sep 22, 2022
mergify bot
pushed a commit
that referenced
this pull request
Sep 22, 2022
…r plugin (#3211) This allows considering full range observations, specified by the <data source>.min_obstacle_height and <data source>.max_obstacle_height especially used for the raytracing, but to still be able to specify a minimum obstacle height to report obstacles onto the costmap. This is in particular required in the case a PointCloud2 source points slightly towards the ground, sometimes detecting obstacles, that should be cleared once the ground reappears behind the obstacle when it has moved away: we don't want to detect the ground as an obstacle, but still want it to be used in the raytracing to clear the previously detected obstacle. (cherry picked from commit 0b4179b)
mergify bot
pushed a commit
that referenced
this pull request
Sep 22, 2022
…r plugin (#3211) This allows considering full range observations, specified by the <data source>.min_obstacle_height and <data source>.max_obstacle_height especially used for the raytracing, but to still be able to specify a minimum obstacle height to report obstacles onto the costmap. This is in particular required in the case a PointCloud2 source points slightly towards the ground, sometimes detecting obstacles, that should be cleared once the ground reappears behind the obstacle when it has moved away: we don't want to detect the ground as an obstacle, but still want it to be used in the raytracing to clear the previously detected obstacle. (cherry picked from commit 0b4179b) # Conflicts: # nav2_costmap_2d/plugins/obstacle_layer.cpp
SteveMacenski
pushed a commit
that referenced
this pull request
Sep 22, 2022
…r plugin (#3211) (#3215) This allows considering full range observations, specified by the <data source>.min_obstacle_height and <data source>.max_obstacle_height especially used for the raytracing, but to still be able to specify a minimum obstacle height to report obstacles onto the costmap. This is in particular required in the case a PointCloud2 source points slightly towards the ground, sometimes detecting obstacles, that should be cleared once the ground reappears behind the obstacle when it has moved away: we don't want to detect the ground as an obstacle, but still want it to be used in the raytracing to clear the previously detected obstacle. (cherry picked from commit 0b4179b) Co-authored-by: milidam <milidam@users.noreply.github.com>
Merged
7 tasks
hyunseok-yang
pushed a commit
to lge-ros2/navigation2
that referenced
this pull request
Oct 6, 2022
…r plugin (ros-navigation#3211) (ros-navigation#3215) This allows considering full range observations, specified by the <data source>.min_obstacle_height and <data source>.max_obstacle_height especially used for the raytracing, but to still be able to specify a minimum obstacle height to report obstacles onto the costmap. This is in particular required in the case a PointCloud2 source points slightly towards the ground, sometimes detecting obstacles, that should be cleared once the ground reappears behind the obstacle when it has moved away: we don't want to detect the ground as an obstacle, but still want it to be used in the raytracing to clear the previously detected obstacle. (cherry picked from commit 0b4179b) Co-authored-by: milidam <milidam@users.noreply.github.com>
jwallace42
pushed a commit
to jwallace42/navigation2
that referenced
this pull request
Dec 14, 2022
…r plugin (ros-navigation#3211) This allows considering full range observations, specified by the <data source>.min_obstacle_height and <data source>.max_obstacle_height especially used for the raytracing, but to still be able to specify a minimum obstacle height to report obstacles onto the costmap. This is in particular required in the case a PointCloud2 source points slightly towards the ground, sometimes detecting obstacles, that should be cleared once the ground reappears behind the obstacle when it has moved away: we don't want to detect the ground as an obstacle, but still want it to be used in the raytracing to clear the previously detected obstacle.
Collaborator
|
Given this PR, is it reasonable to add this parameter to voxel layer as well? |
Member
|
We get the parameter, yes, but do we use it anywhere for the voxel grid? The Obstacle Layer's Update Bounds isn't used in the voxel layer I don't think. But we could make use of it easily in the same way in the Voxel Layer (and then add the parameter, since it would do something) |
Collaborator
|
Yes, I meant to add this part // if the obstacle is too low, we won't add it
if (pz < min_obstacle_height_) {
RCLCPP_DEBUG(logger_, "The point is too low");
continue;
}to voxel layer since this PR do so |
Member
|
OK! Please open the PR and add to the docs :-) |
8 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Basic Info
Description of contribution in a few bullet points
When using a PointCloud2 source, nav2_costmap_2d's ObstacleLayer plugin won't clear obstacles detected on the ground when they move away, as the
<source>.min_obstacle_heightparameter either will filter out the ground for the raytracing (if set to > 0.0) or detect it as an obstacle (if set to 0.0).This problem is similar to #662.
This PR adds a new global
min_obstacle_heightparameter, allowing the per-source one to be extended to include the range to be taken into account for the retracing, while still filtering obstacles down to that new limit.Description of documentation updates required from your changes
/
Future work that may be required in bullet points
/
For Maintainers: