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

feat(avoidance): improve avoidance target filter #2282

Conversation

satoshi-ota
Copy link
Contributor

@satoshi-ota satoshi-ota commented Nov 14, 2022

Description

  • This PR contains two improvement

1. Use Envelope Polygon for measure against perception noise

Since object recognition results contain noise related to position ,orientation and boundary size, if the raw object recognition results are used in path generation, the avoidance path will be directly affected by the noise.

Therefore, in order to reduce the influence of the noise, avoidance module generate a envelope polygon for the avoidance target that covers it, and the avoidance path should be generated based on that polygon. The envelope polygons are generated so that they are parallel to the reference path and the polygon size is larger than the avoidance target (define by object_envelope_buffer). The position and size of the polygon is not updated as long as the avoidance target exists within that polygon.

# default value
object_envelope_buffer: 0.3 # [m]

image

image

2. Use moving time for measure against perception noise

Since object recognition results contain noise related to object velocity, if only the object raw velocity are used in avoidance target filtering process, the results will be directly affected by the noise.

Therefore, even if a stopped object starts moving, it is judged to be stopped as long as it does not continue to move more than threshold_time_object_is_moving sec.

# default value
threshold_time_object_is_moving: 1.0 # [s]

Related links

Tests performed

envelope polygon is included in topic /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/debug/avoidance and the namespace is target_objects_envelope_polygon.

Notes for reviewers

simplescreenrecorder-2022-11-14_11.07.20.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.

  • The PR follows the pull request guidelines.
  • The PR has been properly tested.
  • The PR has been reviewed by the code owners.

Post-review checklist for the PR author

The PR author must check the checkboxes below before merging.

  • There are no open discussions or they are tracked via tickets.
  • The PR is ready for merge.

After all checkboxes are checked, anyone who has write access can merge the PR.

@github-actions github-actions bot added component:planning Route planning, decision-making, and navigation. (auto-assigned) component:launch Launch files, scripts and initialization tools. (auto-assigned) labels Nov 14, 2022
@codecov
Copy link

codecov bot commented Nov 14, 2022

Codecov Report

Base: 10.50% // Head: 10.38% // Decreases project coverage by -0.11% ⚠️

Coverage data is based on head (653c580) compared to base (0a56b56).
Patch coverage: 0.86% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2282      +/-   ##
==========================================
- Coverage   10.50%   10.38%   -0.12%     
==========================================
  Files        1248     1248              
  Lines       90608    91606     +998     
  Branches    20728    21483     +755     
==========================================
- Hits         9517     9515       -2     
- Misses      70996    71934     +938     
- Partials    10095    10157      +62     
Flag Coverage Δ *Carryforward flag
differential 3.30% <0.00%> (?)
total 10.47% <1.65%> (-0.01%) ⬇️ Carriedforward from b017da2

*This pull request uses carry forward flags. Click here to find out more.

Impacted Files Coverage Δ
...lanner/scene_module/avoidance/avoidance_module.hpp 0.00% <ø> (ø)
...r/scene_module/avoidance/avoidance_module_data.hpp 0.00% <ø> (ø)
...or_path_planner/src/behavior_path_planner_node.cpp 0.15% <0.00%> (-0.05%) ⬇️
...er/src/scene_module/avoidance/avoidance_module.cpp 0.00% <0.00%> (ø)
..._path_planner/src/scene_module/avoidance/debug.cpp 0.00% <0.00%> (ø)
...ner/src/scene_module/avoidance/avoidance_utils.cpp 3.06% <2.85%> (-0.07%) ⬇️
...vehicle_model/sim_model_ideal_steer_acc_geared.cpp 73.58% <0.00%> (-9.44%) ⬇️
... and 3 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.
📢 Do you have feedback about the report comment? Let us know in this issue.

@satoshi-ota
Copy link
Contributor Author

update docs in the other PR.

@satoshi-ota
Copy link
Contributor Author

@TakaHoribe @rej55 @zulfaqar-azmi-t4 @mkuri Could you review this PR ?

@zulfaqar-azmi-t4
Copy link
Contributor

Nice! The result seems to be promising

cap-.2022-11-16-01-15-28.mp4.mp4
cap-.2022-11-16-01-16-55.mp4.mp4

…noise

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>
Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>
Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>
@satoshi-ota satoshi-ota force-pushed the feat/improve-avoidance-target-filter branch from cc5229b to b017da2 Compare November 17, 2022 00:35
@satoshi-ota
Copy link
Contributor Author

@TakaHoribe @zulfaqar-azmi-t4 @rej55
Evaluator Test Result[TIER IV INTERNAL]

BaseLine (822/825)
This PR (824/825) 🎉

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>
@satoshi-ota satoshi-ota requested a review from a team as a code owner November 18, 2022 03:06
Copy link
Contributor

@zulfaqar-azmi-t4 zulfaqar-azmi-t4 left a comment

Choose a reason for hiding this comment

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

Great! LGTM!

@satoshi-ota satoshi-ota enabled auto-merge (squash) November 18, 2022 03:23
@satoshi-ota satoshi-ota merged commit 12fbe87 into autowarefoundation:main Nov 18, 2022
@satoshi-ota satoshi-ota deleted the feat/improve-avoidance-target-filter branch November 18, 2022 03:55
HansRobo pushed a commit to HansRobo/autoware.universe that referenced this pull request Dec 16, 2022
…2282)

* feat(avoidance): use envelope polygon for measure against perception noise

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* feat(avoidance): use moving time for measure against perception noise

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* feat(tier4_planning_launch): add new params for avoidance

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* fix(avoidance): reserve marker array size

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>
Signed-off-by: Kotaro Yoshimoto <pythagora.yoshimoto@gmail.com>
kminoda pushed a commit to kminoda/autoware.universe that referenced this pull request Jan 6, 2023
…2282)

* feat(avoidance): use envelope polygon for measure against perception noise

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* feat(avoidance): use moving time for measure against perception noise

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* feat(tier4_planning_launch): add new params for avoidance

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* fix(avoidance): reserve marker array size

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>
Signed-off-by: kminoda <koji.minoda@tier4.jp>
YoshiRi pushed a commit to YoshiRi/autoware.universe that referenced this pull request Jan 11, 2023
…2282)

* feat(avoidance): use envelope polygon for measure against perception noise

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* feat(avoidance): use moving time for measure against perception noise

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* feat(tier4_planning_launch): add new params for avoidance

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* fix(avoidance): reserve marker array size

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>
Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:launch Launch files, scripts and initialization tools. (auto-assigned) component:planning Route planning, decision-making, and navigation. (auto-assigned)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants