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(autoware_multi_object_tracker): set maximum reverse velocity to bicycle and crtv motion models #9019

Merged

Conversation

technolojin
Copy link
Contributor

@technolojin technolojin commented Oct 3, 2024

Description

Revert the tracker orientation when the velocity exceed the maximum reverse velocity

The tracking object orientation is determined by the initial object orientation.
If the initial object yaw was reversed (180 deg rotated), and the object moves forward, the object is tracked as reversed direction.
This mismatch can cause yaw instability in case of the bicycle motion model.

  • Before

Screenshot from 2024-10-03 18-38-10

The screenshot shows trackedObjects. Triangles of the bounding box corners indicates front of the object.
The right object heads left upper side but its velocity is right bottom side. This shows the object is reversed motion.
If the detector has high confidence of its headings, this situation can be trusted. But, the current lidar-based detection has high error rate on its headings.

Considering the current Autoware implementation (the map_based_prediction fixes the object to head its velocity direction anyway), fixing the orientation with a certain threshold is feasible.

  • After

Screenshot from 2024-10-03 18-47-57

If the object is reversed and it reaches a threshold ( -5 kmph by default), the tracked object will be flipped and heads forward to its velocity vector.

Related links

Parent Issue:

  • Link

How was this PR tested?

Notes for reviewers

None.

Interface changes

None.

Effects on system behavior

None.

revert the tracker orientation when the velocity exceed the maximum reverse velocity

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

refactor: Update motion model parameters for bicycle and CTRV motion models
@technolojin technolojin self-assigned this Oct 3, 2024
@github-actions github-actions bot added component:perception Advanced sensor data processing and environment understanding. (auto-assigned) tag:require-cuda-build-and-test labels Oct 3, 2024
Copy link

github-actions bot commented Oct 3, 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 changed the title feat: ddd maximum reverse velocity to bicycle and crtv motion models feat(autoware_multi_object_tracker): Set maximum reverse velocity to bicycle and crtv motion models Oct 3, 2024
@technolojin technolojin marked this pull request as ready for review October 3, 2024 09:50
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 with few minor comments

max_reverse_vel is expected to be  negative

Signed-off-by: Taekjin LEE <[email protected]>
@technolojin technolojin added the run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) label Oct 4, 2024
@technolojin technolojin enabled auto-merge (squash) October 4, 2024 02:17
Copy link

codecov bot commented Oct 4, 2024

Codecov Report

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

Project coverage is 26.19%. Comparing base (b401eba) to head (29740a4).
Report is 4 commits behind head on main.

Files with missing lines Patch % Lines
.../lib/tracker/motion_model/bicycle_motion_model.cpp 0.00% 5 Missing ⚠️
...ker/lib/tracker/motion_model/ctrv_motion_model.cpp 0.00% 5 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #9019      +/-   ##
==========================================
- Coverage   26.19%   26.19%   -0.01%     
==========================================
  Files        1302     1302              
  Lines       96917    96933      +16     
  Branches    39174    39179       +5     
==========================================
  Hits        25388    25388              
- Misses      68959    68975      +16     
  Partials     2570     2570              
Flag Coverage Δ *Carryforward flag
differential 0.00% <0.00%> (?)
total 26.19% <ø> (+<0.01%) ⬆️ Carriedforward from b401eba

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

@technolojin technolojin changed the title feat(autoware_multi_object_tracker): Set maximum reverse velocity to bicycle and crtv motion models feat(autoware_multi_object_tracker): set maximum reverse velocity to bicycle and crtv motion models Oct 4, 2024
@technolojin technolojin merged commit 6c82525 into autowarefoundation:main Oct 4, 2024
42 of 44 checks passed
@technolojin technolojin deleted the feat/mot/tracker-orientation branch October 4, 2024 02:37
prakash-kannaiah pushed a commit to prakash-kannaiah/autoware.universe that referenced this pull request Oct 9, 2024
…bicycle and crtv motion models (autowarefoundation#9019)

* feat: Add maximum reverse velocity to bicycle and CTRV motion models

revert the tracker orientation when the velocity exceed the maximum reverse velocity

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

refactor: Update motion model parameters for bicycle and CTRV motion models

* refactor:  check the max_reverse_vel configuration is correct

max_reverse_vel is expected to be  negative

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

* refactor: remove config checker in the initializer

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

---------

Signed-off-by: Taekjin LEE <[email protected]>
Signed-off-by: prakash-kannaiah <[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) tag:require-cuda-build-and-test
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

3 participants