-
Notifications
You must be signed in to change notification settings - Fork 668
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
feat(goal_planner): check opposite lane for lane departure_check #9460
Conversation
Thank you for contributing to the Autoware project! 🚧 If your pull request is in progress, switch it to draft mode. Please ensure:
|
4841b09
to
2cf90c0
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #9460 +/- ##
=======================================
Coverage 29.50% 29.51%
=======================================
Files 1445 1450 +5
Lines 108571 108621 +50
Branches 41425 41424 -1
=======================================
+ Hits 32037 32057 +20
- Misses 73412 73443 +31
+ Partials 3122 3121 -1
*This pull request uses carry forward flags. Click here to find out more. ☔ View full report in Codecov by Sentry. |
2cf90c0
to
ce1420f
Compare
ce1420f
to
b694ae7
Compare
if (left_side_parking) { | ||
const auto most_right_lane = route_handler.getMostRightLanelet(lane, true, true); | ||
const auto most_right_opposite_lanes = | ||
route_handler.getRightOppositeLanelets(most_right_lane); | ||
return most_right_opposite_lanes.empty() ? most_right_lane | ||
: most_right_opposite_lanes.front(); | ||
} else { | ||
const auto most_left_lane = route_handler.getMostLeftLanelet(lane, true, true); | ||
const auto most_left_opposite_lanes = route_handler.getLeftOppositeLanelets(most_left_lane); | ||
return most_left_opposite_lanes.empty() ? most_left_lane : most_left_opposite_lanes.front(); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if (left_side_parking) { | |
const auto most_right_lane = route_handler.getMostRightLanelet(lane, true, true); | |
const auto most_right_opposite_lanes = | |
route_handler.getRightOppositeLanelets(most_right_lane); | |
return most_right_opposite_lanes.empty() ? most_right_lane | |
: most_right_opposite_lanes.front(); | |
} else { | |
const auto most_left_lane = route_handler.getMostLeftLanelet(lane, true, true); | |
const auto most_left_opposite_lanes = route_handler.getLeftOppositeLanelets(most_left_lane); | |
return most_left_opposite_lanes.empty() ? most_left_lane : most_left_opposite_lanes.front(); | |
} | |
const auto outermost_lane = (left_side_parking) ? route_handler.getMostRightLanelet(lane, true, true) : route_handler.getMostLeftLanelet(lane, true, true); | |
const auto extended_outermost_lanes = (left_side_parking) ? route_handler.getRightOppositeLanelets(most_right_lane) : route_handler.getLeftOppositeLanelets(most_left_lane); | |
return (extended_outermost_lanes.empty()) ? outermost_lane : extended_outermost_lane.front(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
that is better, thanks
made similar changes with a few modifications
5935139
return most_right_opposite_lanes.empty() ? most_right_lane | ||
: most_right_opposite_lanes.front(); | ||
} else { | ||
const auto most_left_lane = route_handler.getMostLeftLanelet(lane, true, true); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It used to be route_handler.getMostLeftLanelet(lane, false, true);, but now the booleans are true,true. Is there a reason?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes!
Since the avoidance module uses that lane, the goal planner must also check the same lane.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think you need to remove the change to CODEOWNERS?
956b7ec
to
30ba1bd
Compare
30ba1bd
to
5935139
Compare
thanks! removed the commit |
@danielsanchezaran |
Signed-off-by: kosuke55 <kosuke.tnp@gmail.com>
Signed-off-by: kosuke55 <kosuke.tnp@gmail.com>
5935139
to
5748626
Compare
Description
#9423 does not check the opposing lane. The avoidance module may cause the ego to enter the opposing lane, but at this time, the current lane departure check logic of goal planner judges candidate paths invalid.
In this PR, it checks the opposing lane too
before
after
UC-bag-F-03-00006-00001-2024-11-25_19.59.50.mp4
Related links
Parent Issue:
How was this PR tested?
psim
2024/11/28 https://evaluation.tier4.jp/evaluation/reports/317acd96-acdc-5002-97d1-d1c5fa3067d8/?project_id=prd_jt
https://evaluation.tier4.jp/evaluation/reports/ee27e182-2a8b-5ae5-8159-854a2bad205a?project_id=prd_jt&state=failed
Notes for reviewers
None.
Interface changes
None.
Effects on system behavior
None.