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

fix(lidar_centerpoint): non-maximum suppression target decision logic #9595

Merged

Conversation

technolojin
Copy link
Contributor

@technolojin technolojin commented Dec 9, 2024

Description

  1. fix non-maximum suppression target decision logic
    Before: If both of the object class are in the target label, caluclate IoU. If not, check distance and calculate IoU if the distance is less than a threshold.
    After: If the label pair is not the same and one of them is pedestrian, do not suppress. Then, check distance and calcuclate IoU only if the distance is within a threshold.

  2. optimize non-maximum suppression search range
    Keep the squared value of the distance threshold.

  3. remove NMS type
    Since there is no other NMS option, remove the logic and parameter to select NMS type.

Related links

NMS PR: #1935

Issue:

How was this PR tested?

Performance test https://evaluation.tier4.jp/evaluation/reports/16239dd4-5213-5843-ada0-49341293bb6d?project_id=prd_jt
Execution test https://evaluation.tier4.jp/evaluation/reports/26db2be4-4fe5-5fe9-8221-320a88f318d7?project_id=prd_jt

Notes for reviewers

Remove unused parameter autowarefoundation/autoware_launch#1267 will be merged after this PR.

Interface changes

Parameter iou_nms_target_class_names will be removed.

Effects on system behavior

None.

@github-actions github-actions bot added component:perception Advanced sensor data processing and environment understanding. (auto-assigned) tag:require-cuda-build-and-test labels Dec 9, 2024
Copy link

github-actions bot commented Dec 9, 2024

Thank you for contributing to the Autoware project!

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

Please ensure:

@technolojin technolojin self-assigned this Dec 9, 2024
@technolojin technolojin force-pushed the fix/centerpoint/nms-target-fix branch from 883dbec to 948af5f Compare December 9, 2024 04:21
@technolojin technolojin marked this pull request as ready for review December 9, 2024 06:07
@technolojin technolojin marked this pull request as draft December 9, 2024 06:28
@technolojin technolojin marked this pull request as ready for review December 10, 2024 02:29
@github-actions github-actions bot added the type:documentation Creating or refining documentation. (auto-assigned) label Dec 10, 2024
@kminoda kminoda added the tag:run-build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) label Dec 10, 2024
@kminoda
Copy link
Contributor

kminoda commented Dec 10, 2024

@technolojin Would you separate the PR for transfusion? I want to make the PR as small as possible (OK for image_projection_based_fusion and centerpoint as those two packages are dependent)

Copy link

codecov bot commented Dec 10, 2024

Codecov Report

Attention: Patch coverage is 87.50000% with 1 line in your changes missing coverage. Please review.

Project coverage is 29.59%. Comparing base (9553414) to head (8d9311a).
Report is 11 commits behind head on main.

Files with missing lines Patch % Lines
...rpoint/lib/postprocess/non_maximum_suppression.cpp 87.50% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #9595      +/-   ##
==========================================
- Coverage   29.59%   29.59%   -0.01%     
==========================================
  Files        1442     1443       +1     
  Lines      108512   108514       +2     
  Branches    41409    41405       -4     
==========================================
- Hits        32119    32115       -4     
- Misses      73269    73278       +9     
+ Partials     3124     3121       -3     
Flag Coverage Δ *Carryforward flag
differential 6.26% <87.50%> (?)
total 29.59% <ø> (-0.01%) ⬇️ Carriedforward from 9553414

*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.

Signed-off-by: Taekjin LEE <[email protected]>

fix: implement non-maximum suppression logic to the transfusion

Signed-off-by: Taekjin LEE <[email protected]>

refactor: remove unused parameter iou_nms_target_class_names

Signed-off-by: Taekjin LEE <[email protected]>

Revert "fix: implement non-maximum suppression logic to the transfusion"

This reverts commit b8017fc.

fix: revert transfusion modification
@technolojin
Copy link
Contributor Author

@technolojin Would you separate the PR for transfusion? I want to make the PR as small as possible (OK for image_projection_based_fusion and centerpoint as those two packages are dependent)

@kminoda
Then, the maintainer of the transfusion will decide if the NMS logic to be fixed or not.

@kminoda
Copy link
Contributor

kminoda commented Dec 10, 2024

@technolojin I'm OK with it.
(We had some PRs that changes transfusion and centerpoint at the same time, and this made the cherry-picking in some of our projects very difficult. My point here is to avoid such potential conflicts)

Copy link
Contributor

@kminoda kminoda left a comment

Choose a reason for hiding this comment

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

LGTM

@technolojin technolojin merged commit 01944ef into autowarefoundation:main Dec 11, 2024
36 checks passed
@technolojin technolojin deleted the fix/centerpoint/nms-target-fix branch December 11, 2024 01:05
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) tag:require-cuda-build-and-test tag:run-build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) type:documentation Creating or refining documentation. (auto-assigned)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants