Skip to content

Conversation

@Owen-Liuyuxuan
Copy link
Contributor

Description

  • Correcting cluster yaw angle estimated with fitLShape function when a cluster exists in front of or behind the own behicle

#11309

Re-Created in my fork for continuous development.

Contents

#11309 (comment)

I've organized the relevance of the conditions for the correctWithDefaultValue function here.
https://github.com/arayabrain/autoware.universe.origin/blob/180332a4957e9434d7a4723a8957b7651ac0edde/perception/autoware_shape_estimation/resource/correctWithDefaultValue.svg

The primary issue causing rotation occurs within the range indicated by the red box. Within this range, when the visible point clouds are extremely small, the farthest edge is frequently swapped, causing the edge being corrected to change often.

Before
image

Therefore, I unified the behavior so that when the number of point clouds is extremely low, the correction is directed toward the farthest edge while maintaining the current conditions as much as possible, as follows.

After
image

image
shape_estimation_after_mini.webm

Related links

Parent Issue:

How was this PR tested?

Notes for reviewers

None.

Interface changes

None.

Effects on system behavior

None.

Signed-off-by: YuxuanLiuTier4Desktop <[email protected]>
@Owen-Liuyuxuan Owen-Liuyuxuan added run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) tag:require-cuda-build-and-test labels Nov 13, 2025
@github-actions github-actions bot added component:perception Advanced sensor data processing and environment understanding. (auto-assigned) and removed run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) tag:require-cuda-build-and-test labels Nov 13, 2025
@github-actions
Copy link

Thank you for contributing to the Autoware project!

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

Please ensure:

@Owen-Liuyuxuan Owen-Liuyuxuan added run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) tag:require-cuda-build-and-test labels Nov 13, 2025
@Owen-Liuyuxuan
Copy link
Contributor Author

@a-maumau @technolojin @shmpwk
Because of the business problem, I re-implemented the PRs from their repos into my personal forks. Please mind considering continue the test in this PR.

@codecov
Copy link

codecov bot commented Nov 13, 2025

Codecov Report

❌ Patch coverage is 0% with 12 lines in your changes missing coverage. Please review.
✅ Project coverage is 17.89%. Comparing base (edf6285) to head (281454b).
⚠️ Report is 3 commits behind head on main.

Files with missing lines Patch % Lines
.../autoware_shape_estimation/lib/corrector/utils.cpp 0.00% 12 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main   #11634      +/-   ##
==========================================
+ Coverage   17.84%   17.89%   +0.05%     
==========================================
  Files        1744     1746       +2     
  Lines      121738   121871     +133     
  Branches    42774    42837      +63     
==========================================
+ Hits        21724    21813      +89     
- Misses      81812    81945     +133     
+ Partials    18202    18113      -89     
Flag Coverage Δ *Carryforward flag
daily 20.02% <ø> (+<0.01%) ⬆️ Carriedforward from edf6285
daily-cuda 17.84% <ø> (+<0.01%) ⬆️ Carriedforward from edf6285
differential 13.37% <0.00%> (?)
differential-cuda 10.05% <0.00%> (?)
total-cuda 17.83% <ø> (+<0.01%) ⬆️ Carriedforward from edf6285

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

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@technolojin technolojin self-assigned this Nov 13, 2025
@Owen-Liuyuxuan
Copy link
Contributor Author

Please click to view larger mermaid graph

image image

I think the update is larger than it claimed

@technolojin
Copy link
Contributor

@a-maumau Can you test this update?

Copy link
Contributor

@technolojin technolojin left a comment

Choose a reason for hiding this comment

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

I think the algorithm can be simple.

  1. (instead of find 3rd and 4th far edge) find closest corner and closest edge
  2. object head is determined by the closest edge. opposite direction of the closest edge
  3. update(expand) the object extension, the closest corner position fixed.

I did not checked if this logic is same as yours.
By flipping the findings, the code could be simple.

@a-maumau
Copy link
Contributor

a-maumau commented Nov 14, 2025

I checked this PR with some rosbags and confirmed the results are almost the same. It might handle some cases better than the original one.

shape_estimation_cmp_red_original_blue_new_one.webm

red: original implementation, blue: this PR, purple: the same result between original implementation and this PR.
I use the same input to the nodes.

@technolojin
Copy link
Contributor

after improving the readability, I think this change could be introduced!

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) tag:require-cuda-build-and-test

Projects

Status: To Triage

Development

Successfully merging this pull request may close these issues.

3 participants