-
Notifications
You must be signed in to change notification settings - Fork 664
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(obstacle_avoidance_planner): check footprint with boost::geometry::intersection #1999
feat(obstacle_avoidance_planner): check footprint with boost::geometry::intersection #1999
Conversation
05b7a3e
to
b6f1108
Compare
I didn't understand exactly what you mean. Should I create a new function or check it in the same function? |
@beyzanurkaya |
I'm gonna add an option parameter if you want to use boost.intersection for check footprint. Also I tried to compare footprint area intersection area so if those have close value I can say footprint is in drivable area. But even though there is intersection between footprint and drivable area, intersection area is zero. I tried to figure out why. |
5201e9d
to
6cfba93
Compare
Codecov ReportBase: 11.37% // Head: 11.34% // Decreases project coverage by
Additional details and impacted files@@ Coverage Diff @@
## main #1999 +/- ##
==========================================
- Coverage 11.37% 11.34% -0.04%
==========================================
Files 1277 1277
Lines 89284 89807 +523
Branches 23649 24076 +427
==========================================
+ Hits 10158 10186 +28
- Misses 68354 68811 +457
- Partials 10772 10810 +38
*This pull request uses carry forward flags. Click here to find out more.
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
bd41a0e
to
74e5cbf
Compare
@takayuki5168 it's ready for review :) |
@TakaHoribe Could you assign a person to review? |
...ane_driving/motion_planning/obstacle_avoidance_planner/obstacle_avoidance_planner.param.yaml
Outdated
Show resolved
Hide resolved
7fba151
to
097bdbe
Compare
4d5255b
to
13ea0bd
Compare
@mehmetdogru @takayuki5168 @mitsudome-r I updated the code and description. |
a80b91e
to
13ea0bd
Compare
right_bound_line.push_back({p.x, p.y}); | ||
} | ||
|
||
back_bound_line = {left_bound_line.front(), right_bound_line.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.
I think there is a mistake here and the front is used instead of the back.
back_bound_line = {left_bound_line.front(), right_bound_line.front()}; | |
back_bound_line = {left_bound_line.back(), right_bound_line.back()}; |
25da499
to
3c43118
Compare
…ry::intersection Signed-off-by: beyza <bnk@leodrive.ai>
Signed-off-by: beyza <bnk@leodrive.ai>
3c43118
to
63a3c14
Compare
36359a8
to
ad280ca
Compare
Signed-off-by: beyza <bnk@leodrive.ai>
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.
LGTM
Signed-off-by: beyza <bnk@leodrive.ai>
398d089
to
2bfe536
Compare
…y::intersection (autowarefoundation#1999) * feat(obstacle_avoidance_planner): add second check with boost::geometry::intersection Signed-off-by: beyza <bnk@leodrive.ai> * add is_considering_footprint_edges param Signed-off-by: beyza <bnk@leodrive.ai> * ci(pre-commit): autofix * add description Signed-off-by: beyza <bnk@leodrive.ai> * add false return Signed-off-by: beyza <bnk@leodrive.ai> Signed-off-by: beyza <bnk@leodrive.ai> Co-authored-by: beyza <bnk@leodrive.ai> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
…y::intersection (autowarefoundation#1999) * feat(obstacle_avoidance_planner): add second check with boost::geometry::intersection Signed-off-by: beyza <bnk@leodrive.ai> * add is_considering_footprint_edges param Signed-off-by: beyza <bnk@leodrive.ai> * ci(pre-commit): autofix * add description Signed-off-by: beyza <bnk@leodrive.ai> * add false return Signed-off-by: beyza <bnk@leodrive.ai> Signed-off-by: beyza <bnk@leodrive.ai> Co-authored-by: beyza <bnk@leodrive.ai> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Signed-off-by: Alexey Panferov <lexavtanke@gmail.com>
Description
This PR was created to add a different approach to checking that the footprint of the vehicle is within the drivable area.
Fixes: #1716
before this PR, 175 needs to merge
Tests performed
I was using boost::geometry::intersection as a separate approach at the first place. But the current version already uses the boost library so it doesn't make sense to add my approach as an option. It makes more sense to combine the current approach and my approach. Because both approaches have limitations;
Current version's limitation:
In current version the corners of the footprint are checked. But like in following diagram if the vehicle is long enough, corners can be in the drivable area but body of vehicle is outside the drivable area. So it need a second check.
If you set
is_considering_footprint_edges
param false:no-stop.mp4
New version's limitation:
In the new version, it is checked whether there is an intersection between the vehicle and the drivable area. if there is an intersection, it is concluded that the vehicle is outside the driveable area as it is on the driveable area boundaries. But, when the vehicle is completely outside the drivable area boundaries, there will be no intersection and in this approach the vehicle will be considered in the drivable area. however, the vehicle is outside the drivable area as shown in the following diagram.
If you set
is_considering_footprint_edges
param true:stop.mp4
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.
In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.
Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.
After all checkboxes are checked, anyone who has write access can merge the PR.