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

perf(map_based_prediction): remove query on all fences linestrings #7237

Conversation

maxime-clem
Copy link
Contributor

Description

Improve queries on fence linestrings in the map_based_prediction.
Instead of retrieving ALL fench linestrings to check for intersections, which can be very heavy on huge maps, we now do the following:

  1. efficiently retrieve all linestrings in the predicted path bounding box.
  2. keep the fences and check for intersections with the predicted path.

Tests performed

Not applicable.

Effects on system behavior

Not applicable.

Interface changes

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.

  • There are no open discussions or they are tracked via tickets.

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

@github-actions github-actions bot added the component:perception Advanced sensor data processing and environment understanding. (auto-assigned) label Jun 3, 2024
Copy link
Contributor

@kyoichi-sugahara kyoichi-sugahara left a comment

Choose a reason for hiding this comment

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

didn't know this function...

//! Get the surrounding axis-aligned bounding box in 2d
template <typename LineString2dT>
IfLS<LineString2dT, BoundingBox2d> boundingBox2d(const LineString2dT& lineString);

Looks nice! thanks.

@maxime-clem maxime-clem added the run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) label Jun 3, 2024
@kminoda
Copy link
Contributor

kminoda commented Jul 5, 2024

@maxime-clem @kyoichi-sugahara Hi, thank you for the PR 🙏
Can we merge this PR?

Copy link
Contributor

@kyoichi-sugahara kyoichi-sugahara left a comment

Choose a reason for hiding this comment

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

Sorry I thought already approved 🙇‍♂️ Thank you for remind!

@maxime-clem maxime-clem force-pushed the perf/map_based_prediction-big_maps branch from f253c76 to 86437b8 Compare July 5, 2024 03:29
Copy link

github-actions bot commented Jul 5, 2024

Thank you for contributing to the Autoware project!

🚧 If your pull request is in progress, switch it to draft mode.

Please ensure:

Copy link

codecov bot commented Jul 5, 2024

Codecov Report

Attention: Patch coverage is 0% with 6 lines in your changes missing coverage. Please review.

Project coverage is 28.65%. Comparing base (55bedee) to head (86437b8).
Report is 7 commits behind head on main.

Files Patch % Lines
...based_prediction/src/map_based_prediction_node.cpp 0.00% 6 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #7237      +/-   ##
==========================================
- Coverage   28.66%   28.65%   -0.01%     
==========================================
  Files        1588     1590       +2     
  Lines      116375   116387      +12     
  Branches    49704    49706       +2     
==========================================
- Hits        33357    33356       -1     
- Misses      73940    73953      +13     
  Partials     9078     9078              
Flag Coverage Δ *Carryforward flag
differential 1.15% <0.00%> (?)
total 28.66% <ø> (+<0.01%) ⬆️ Carriedforward from 55bedee

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

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@maxime-clem maxime-clem merged commit 6c944bf into autowarefoundation:main Jul 5, 2024
30 checks passed
@maxime-clem maxime-clem deleted the perf/map_based_prediction-big_maps branch July 5, 2024 04:14
palas21 pushed a commit to palas21/autoware.universe that referenced this pull request Jul 12, 2024
tby-udel pushed a commit to tby-udel/autoware.universe that referenced this pull request Jul 14, 2024
KhalilSelyan pushed a commit that referenced this pull request Jul 22, 2024
Ariiees pushed a commit to Ariiees/autoware.universe that referenced this pull request Jul 22, 2024
technolojin added a commit to technolojin/autoware.universe that referenced this pull request Oct 21, 2024
saka1-s added a commit to tier4/autoware.universe that referenced this pull request Oct 31, 2024
* feat(lane_change): cancel hysteresis (autowarefoundation#6288)

* feat(lane_change): cancel hysteresis

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Update documentation

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* fix the explanation of the hysteresis count

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Add parked parked RSS

Signed-off-by: Zulfaqar Azmi <[email protected]>

* support new perception_reproducer

Signed-off-by: temkei.kem <[email protected]>

* move files

Signed-off-by: temkei.kem <[email protected]>

* remove old files.

Signed-off-by: temkei.kem <[email protected]>

* fix pre-commit err

Signed-off-by: temkei.kem <[email protected]>

* style(pre-commit): autofix

* feat(autoware_behavior_path_planner_common): disable feature of turning off blinker at low velocity (#1571)

Refactor turn signal decider logic and add support for detecting turn signals in turn lanes

Signed-off-by: Kyoichi Sugahara <[email protected]>

* fix a small bug about perception reproducer

* style(pre-commit): autofix

* feat(out_of_lane): ignore lanelets beyond the last path point (#1554)

* feat(out_of_lane): ignore lanelets beyond the last path point

Signed-off-by: Maxime CLEMENT <[email protected]>

* style(pre-commit): autofix

---------

Signed-off-by: Maxime CLEMENT <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(behavior_velocity_run_out_module): exclude obstacle crossing ego… (#1574)

feat(behavior_velocity_run_out_module): exclude obstacle crossing ego back line (autowarefoundation#6680)

* add method to ignore target obstacles that cross ego cut lane



* WIP add debug support



* add params and finish debug marker



* change lane to line



* use autoware utils to get the cut line



* simplify code wit calcOffsetPose



* Update readme and eliminate unused code



* update readme



* eliminate unused function



* readme



* comments and readme



* eliminate unused include



* typo



* rename param for consistency



* change lane to line for consistency



* rename for clarity, add brief



* fix indentation



* update description



* lane ->line



* lane -> line



---------

Signed-off-by: Daniel Sanchez <[email protected]>

* fix(lane_change): change stopping logic (RT0-33761) (#1581)

* RT0-33761 fix lane change stopping logic

Signed-off-by: Zulfaqar Azmi <[email protected]>

* copied from awf main tested implementation

Signed-off-by: Zulfaqar Azmi <[email protected]>

* doxygen comment

Signed-off-by: Zulfaqar Azmi <[email protected]>

* Update planning/behavior_path_lane_change_module/src/utils/utils.cpp

Co-authored-by: mkquda <[email protected]>

---------

Signed-off-by: Zulfaqar Azmi <[email protected]>
Co-authored-by: mkquda <[email protected]>

* perf: PR 7237

autowarefoundation#7237

* perf RP8406

autowarefoundation#8406

* perf PR 8416

* perf PR 8427

* perf PR 8413

* tool PR 8456

* perf PR 8461

* perf PR 8388

* perf PR 8467

* perf PR 8471

* perf PR 8490

* perf PR 8751

* chore: fix format

* perf PR 8657

* feat: improve lanelet search logic in getPredictedReferencePath()

* sp develop remove non approved change (#1611)

Revert "feat: improve lanelet search logic in getPredictedReferencePath()"

This reverts commit 5de95b0.

* feat PR 8811

* fix PR 8973

* feat: improve lanelet search logic in getPredictedReferencePath()

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
Signed-off-by: Zulfaqar Azmi <[email protected]>
Signed-off-by: temkei.kem <[email protected]>
Signed-off-by: Kyoichi Sugahara <[email protected]>
Signed-off-by: Maxime CLEMENT <[email protected]>
Signed-off-by: Daniel Sanchez <[email protected]>
Co-authored-by: Zulfaqar Azmi <[email protected]>
Co-authored-by: Zulfaqar Azmi <[email protected]>
Co-authored-by: temkei.kem <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Kyoichi Sugahara <[email protected]>
Co-authored-by: Takayuki Murooka <[email protected]>
Co-authored-by: Maxime CLEMENT <[email protected]>
Co-authored-by: danielsanchezaran <[email protected]>
Co-authored-by: mkquda <[email protected]>
Co-authored-by: Shohei Sakai <[email protected]>
saka1-s added a commit to saka1-s/autoware.universe that referenced this pull request Nov 9, 2024
* feat(lane_change): cancel hysteresis (autowarefoundation#6288)

* feat(lane_change): cancel hysteresis

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Update documentation

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* fix the explanation of the hysteresis count

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Add parked parked RSS

Signed-off-by: Zulfaqar Azmi <[email protected]>

* support new perception_reproducer

Signed-off-by: temkei.kem <[email protected]>

* move files

Signed-off-by: temkei.kem <[email protected]>

* remove old files.

Signed-off-by: temkei.kem <[email protected]>

* fix pre-commit err

Signed-off-by: temkei.kem <[email protected]>

* style(pre-commit): autofix

* feat(autoware_behavior_path_planner_common): disable feature of turning off blinker at low velocity (autowarefoundation#1571)

Refactor turn signal decider logic and add support for detecting turn signals in turn lanes

Signed-off-by: Kyoichi Sugahara <[email protected]>

* fix a small bug about perception reproducer

* style(pre-commit): autofix

* feat(out_of_lane): ignore lanelets beyond the last path point (autowarefoundation#1554)

* feat(out_of_lane): ignore lanelets beyond the last path point

Signed-off-by: Maxime CLEMENT <[email protected]>

* style(pre-commit): autofix

---------

Signed-off-by: Maxime CLEMENT <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(behavior_velocity_run_out_module): exclude obstacle crossing ego… (autowarefoundation#1574)

feat(behavior_velocity_run_out_module): exclude obstacle crossing ego back line (autowarefoundation#6680)

* add method to ignore target obstacles that cross ego cut lane

* WIP add debug support

* add params and finish debug marker

* change lane to line

* use autoware utils to get the cut line

* simplify code wit calcOffsetPose

* Update readme and eliminate unused code

* update readme

* eliminate unused function

* readme

* comments and readme

* eliminate unused include

* typo

* rename param for consistency

* change lane to line for consistency

* rename for clarity, add brief

* fix indentation

* update description

* lane ->line

* lane -> line

---------

Signed-off-by: Daniel Sanchez <[email protected]>

* fix(lane_change): change stopping logic (RT0-33761) (autowarefoundation#1581)

* RT0-33761 fix lane change stopping logic

Signed-off-by: Zulfaqar Azmi <[email protected]>

* copied from awf main tested implementation

Signed-off-by: Zulfaqar Azmi <[email protected]>

* doxygen comment

Signed-off-by: Zulfaqar Azmi <[email protected]>

* Update planning/behavior_path_lane_change_module/src/utils/utils.cpp

Co-authored-by: mkquda <[email protected]>

---------

Signed-off-by: Zulfaqar Azmi <[email protected]>
Co-authored-by: mkquda <[email protected]>

* perf: PR 7237

autowarefoundation#7237

* perf RP8406

autowarefoundation#8406

* perf PR 8416

* perf PR 8427

* perf PR 8413

* tool PR 8456

* perf PR 8461

* perf PR 8388

* perf PR 8467

* perf PR 8471

* perf PR 8490

* perf PR 8751

* chore: fix format

* perf PR 8657

* feat: improve lanelet search logic in getPredictedReferencePath()

* sp develop remove non approved change (autowarefoundation#1611)

Revert "feat: improve lanelet search logic in getPredictedReferencePath()"

This reverts commit 5de95b0.

* feat PR 8811

* fix PR 8973

* feat: improve lanelet search logic in getPredictedReferencePath()

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
Signed-off-by: Zulfaqar Azmi <[email protected]>
Signed-off-by: temkei.kem <[email protected]>
Signed-off-by: Kyoichi Sugahara <[email protected]>
Signed-off-by: Maxime CLEMENT <[email protected]>
Signed-off-by: Daniel Sanchez <[email protected]>
Co-authored-by: Zulfaqar Azmi <[email protected]>
Co-authored-by: Zulfaqar Azmi <[email protected]>
Co-authored-by: temkei.kem <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Kyoichi Sugahara <[email protected]>
Co-authored-by: Takayuki Murooka <[email protected]>
Co-authored-by: Maxime CLEMENT <[email protected]>
Co-authored-by: danielsanchezaran <[email protected]>
Co-authored-by: mkquda <[email protected]>
Co-authored-by: Shohei Sakai <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:perception Advanced sensor data processing and environment understanding. (auto-assigned) run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants