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(map_based_prediction): plan paths of objects outside the lanelets. #4618

Conversation

takayuki5168
Copy link
Contributor

@takayuki5168 takayuki5168 commented Aug 14, 2023

Description

  • Added a publisher of calculation time
  • Paths are planed even if the object is outside the lanelet if they are close enough.
    without the PR
    image
    with the PR
    image

FYI:
The case where object is in the opposite directional lane
image

Tests performed

Effects on system behavior

Nothing

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.

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>
Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>
@github-actions github-actions bot added the component:perception Advanced sensor data processing and environment understanding. (auto-assigned) label Aug 14, 2023
Comment on lines -1107 to -1111
// Step2. Check if the obstacle is inside of this lanelet
if (!lanelet::geometry::inside(lanelet.second, search_point)) {
return false;
}

Copy link
Contributor Author

Choose a reason for hiding this comment

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

This part was moved to

constexpr double epsilon = 1e-3;
if (lanelet.first < epsilon) {

@takayuki5168 takayuki5168 marked this pull request as ready for review August 14, 2023 06:05
Copy link
Contributor

@YoshiRi YoshiRi left a comment

Choose a reason for hiding this comment

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

So, your idea is to allow getCurrentLanelet function to return neighbor lanelet if there are no corresponding lanelet with object.

My concern is:

  • the program outside the getCurrentLanelet function can not distinguish the output is closest_lanelet or object_lanelet
    • For example, this 'current' lanelet is saved to object_history_ and which is used in checkCloseLaneletCondition and so on

If possible, it would be safer for later feature development if it is known whether the returned value is a closet_lanelet or an object_lanelet, but since this is for developers, there should be at least no problem if it is described in a comment.
I think we can accept this concern only if this PR pass all of P/C test case.

}
if (closest_lanelet) {
return LaneletsData{LaneletData{
closest_lanelet->second, calculateLocalLikelihood(closest_lanelet->second, object)}};
Copy link
Contributor

Choose a reason for hiding this comment

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

need to check if calculateLocalLikelihood function is valid with obj outside the lanalet

lanelet.first < dist_threshold_for_searching_lanelet_ &&
(!closest_lanelet || lanelet.first < closest_lanelet->first)) {
closest_lanelet = lanelet;
}
Copy link
Contributor

@YoshiRi YoshiRi Aug 14, 2023

Choose a reason for hiding this comment

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

I think we need to check object yaw and lanelet yaw diff is small enough so that we will not get the unexpected lanelet such as opposite lanelet

Copy link
Contributor Author

Choose a reason for hiding this comment

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

We call checkCloseLaneletCondition before the above condition so we do not have to check the angle and even distance (Now I removed the distance check).

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>
@takayuki5168 takayuki5168 added the run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) label Aug 14, 2023
Copy link
Contributor

@YoshiRi YoshiRi left a 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: Takayuki Murooka <takayuki5168@gmail.com>
@takayuki5168 takayuki5168 force-pushed the feat/object-prediction-close-to-lanes branch from fc64bb7 to 532fab1 Compare August 14, 2023 09:58
@codecov
Copy link

codecov bot commented Aug 14, 2023

Codecov Report

Patch coverage has no change and project coverage change: -0.01% ⚠️

Comparison is base (7f02d6a) 14.82% compared to head (532fab1) 14.82%.
Report is 3 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4618      +/-   ##
==========================================
- Coverage   14.82%   14.82%   -0.01%     
==========================================
  Files        1529     1529              
  Lines      105811   105827      +16     
  Branches    32243    32243              
==========================================
  Hits        15690    15690              
- Misses      72965    72981      +16     
  Partials    17156    17156              
Flag Coverage Δ *Carryforward flag
differential 0.00% <0.00%> (?)
total 14.82% <ø> (+<0.01%) ⬆️ Carriedforward from 7f02d6a

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

Files Changed Coverage Δ
...map_based_prediction/map_based_prediction_node.hpp 0.00% <ø> (ø)
...based_prediction/src/map_based_prediction_node.cpp 0.00% <0.00%> (ø)

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

@takayuki5168 takayuki5168 merged commit bd7e95f into autowarefoundation:main Aug 14, 2023
@takayuki5168 takayuki5168 deleted the feat/object-prediction-close-to-lanes branch August 14, 2023 10:18
LeoDriveProject pushed a commit to leo-drive/autoware.universe.golf that referenced this pull request Aug 16, 2023
…s. (autowarefoundation#4618)

* add publisher of calculation time

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* plan path of objects outside the lane

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* minor change

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* fix CI

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

---------

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>
kminoda pushed a commit to kminoda/autoware.universe that referenced this pull request Aug 21, 2023
…s. (autowarefoundation#4618)

* add publisher of calculation time

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* plan path of objects outside the lane

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* minor change

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* fix CI

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

---------

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>
takayuki5168 added a commit to tier4/autoware.universe that referenced this pull request Aug 30, 2023
…s. (autowarefoundation#4618)

* add publisher of calculation time

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* plan path of objects outside the lane

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* minor change

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* fix CI

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

---------

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>
kyoichi-sugahara pushed a commit to tier4/autoware.universe that referenced this pull request Sep 7, 2023
…s. (autowarefoundation#4618)

* add publisher of calculation time

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* plan path of objects outside the lane

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* minor change

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* fix CI

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

---------

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>
kosuke55 pushed a commit to tier4/autoware.universe that referenced this pull request Sep 12, 2023
…s. (autowarefoundation#4618)

* add publisher of calculation time

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* plan path of objects outside the lane

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* minor change

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* fix CI

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

---------

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>
takayuki5168 added a commit to tier4/autoware.universe that referenced this pull request Nov 26, 2023
…s. (autowarefoundation#4618)

* add publisher of calculation time

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* plan path of objects outside the lane

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* minor change

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* fix CI

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

---------

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>
takayuki5168 added a commit to tier4/autoware.universe that referenced this pull request Dec 25, 2023
…s. (autowarefoundation#4618)

* add publisher of calculation time

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* plan path of objects outside the lane

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* minor change

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* fix CI

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

---------

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>
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.

2 participants