feat(avoidance): configurable object type for safety check #5699
Analysis complete
Summary
This pull request refactors the behavior path planner module to use a new target_type
parameter group for filtering predicted objects by their type for avoidance and safety check. It removes the is_target
parameter from various files and adds new fields and functions to the avoidance_module_data.hpp
and utils.cpp
files. It also simplifies and unifies the scene module interface and configuration.
Walkthrough
-
Refactor the code to use more fine-grained filtering of target object types for avoidance and safety check (link, link, link, link, link, link, link, link, link, link, link, link, link, link, link, link, link, link, link, link, link, link)
-
Update the code to read and use the new filtering parameters from the YAML files and the dynamic reconfigure server (link, link, link, link, link, link, link, link)
Poem
To filter the objects in sight
We used to check
is_target
quite
But now we havetarget_type
Which makes the code more concise
And helps the planner avoid and decide
Emoji
🚧🔧🚀
Include these descriptions in your pull request description by including the following marker tags:
copilot:all
: all the content, in one gocopilot:summary
: a one paragraph summary of the code changescopilot:walkthrough
: a step by step walkthrough of the code changescopilot:poem
: a poem about the code changes!copilot:emoji
: three emoji that capture the changes
Feedback is welcome. Simply add a comment to this PR of the form /copilot feedback [your comments here]
.
Details
Copilot for PRs is a limited technical preview from GitHub Next.
It's aim is to make it easier to write pull request descriptions by providing automatically generated suggestions based on the code changes.
To find out more go to https://githubnext.com/projects/copilot-for-pull-requests or come and chat with us on Discord
File | Status | Duration |
---|---|---|
Summary & Walkthrough | ✅ Finished | 119 seconds |
planning/behavior_path_planner/config/avoidance/avoidance.param.yaml | ✅ Finished | 93.9 seconds |
planning/behavior_path_planner/config/avoidance_by_lc/avoidance_by_lc.param.yaml | ✅ Finished | 93.6 seconds |
planning/behavior_path_planner/include/behavior_path_planner/utils/avoidance/avoidance_module_data.hpp | ✅ Finished | 91.7 seconds |
planning/behavior_path_planner/src/scene_module/avoidance/manager.cpp | ✅ Finished | 93.6 seconds |
planning/behavior_path_planner/src/scene_module/lane_change/manager.cpp | ✅ Finished | 93.5 seconds |
planning/behavior_path_planner/src/utils/avoidance/utils.cpp | ✅ Finished | 93.4 seconds |