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: update vehicle overlay plugin #6323

Merged
merged 23 commits into from
Feb 7, 2024
Merged

Conversation

KhalilSelyan
Copy link
Contributor

@KhalilSelyan KhalilSelyan commented Feb 5, 2024

Description

This PR introduces a series of enhancements to the awf_vehicle_rviz_plugin for Autoware, aimed at improving the visual elements and functionality of the plugin. The modifications include adjustments to opacity, color specifications for signal indicators, changes to the gear indicator outline, and improvements to the speed limit and traffic light indicators. These changes are designed to make the plugin more intuitive, visually appealing, and user-friendly, enhancing the driving and simulation experience in Autoware.

Related links

Notes for reviewers

This PR is a follow-up from discussions in issues #3984 and comments in PR #836 as well as #4146, focusing on enhancing the RViz plugin's aesthetics and usability. Reviewers are encouraged to check the visual elements and functionality changes against the proposed design specifications.

Interface changes

  • Renamed the package from awf_vehicle_rviz_plugin to autoware_vehicle_overlay_rviz_plugin.
  • Renamed rviz_2d_overlay_msgs to autoware_overlay_msgs.
  • Updated the top-level folder name to autoware_overlay_rviz_plugin.

Effects on system behavior

The changes in this PR will not affect the core functionalities of Autoware but will improve the user interaction with the RViz visualization plugin by providing a more intuitive and visually appealing interface.

Pre-review checklist for the PR author

In-review checklist for the PR reviewers

  • The PR follows the pull request guidelines.
  • The PR has been properly tested.
  • The PR has been reviewed by the code owners.

Post-review checklist for the PR author

After all checkboxes are checked and discussions are resolved, the PR author should proceed with the merging process.

  • There are no open discussions, or they are tracked via tickets.
  • The PR is ready for merge.

@KhalilSelyan KhalilSelyan added the type:ui-ux User interface, user experience, graphical user interfaces. label Feb 5, 2024
@KhalilSelyan KhalilSelyan self-assigned this Feb 5, 2024
@github-actions github-actions bot added type:documentation Creating or refining documentation. (auto-assigned) component:common Common packages from the autoware-common repository. (auto-assigned) labels Feb 5, 2024
@KhalilSelyan KhalilSelyan force-pushed the update/vehicle-overlay-plugin branch from eb30be6 to 3b74e68 Compare February 5, 2024 18:37
@KhalilSelyan KhalilSelyan changed the title Update/vehicle overlay plugin feat: update vehicle overlay plugin Feb 5, 2024
@KhalilSelyan
Copy link
Contributor Author

updated-plugin.mp4

@xmfcx
Copy link
Contributor

xmfcx commented Feb 6, 2024

Thanks for all the updates, it really looks much more polished now!

I've updated the package name to "autoware_overlay_rviz_plugin" from the issue.

@KhalilSelyan
Copy link
Contributor Author

Thanks for helping on the design, it was fun to work on

@KhalilSelyan KhalilSelyan force-pushed the update/vehicle-overlay-plugin branch from 2951f5a to 1aedb25 Compare February 6, 2024 08:47
@xmfcx
Copy link
Contributor

xmfcx commented Feb 6, 2024

When the speed is less than 0.7 * v_max, it should be the color_min (#FF9999), not light gray.

Screenshot from 2024-02-06 11-57-50

Also when the velocity is positive but the speed limit is 0, the circle disappears.
Screenshot from 2024-02-06 11-58-31

@KhalilSelyan
Copy link
Contributor Author

KhalilSelyan commented Feb 6, 2024

When the speed is less than 0.7 * v_max, it should be the color_min (#FF9999), not light gray.

Screenshot from 2024-02-06 11-57-50

Also when the velocity is positive but the speed limit is 0, the circle disappears. Screenshot from 2024-02-06 11-58-31

I didn't check for this case, i will fix it up

Also, maybe i misunderstood the logic currently it is this way

  • 0 to 70% -> light gray
  • 70% to 100% -> light red interpolating slowly towards red

should it be
0-70% -> light red
70-100% -> light red interpolating slowly towards red

@xmfcx
Copy link
Contributor

xmfcx commented Feb 6, 2024

75166f9

Here I've updated the traffic light colors.

2024-02-06.13-48-05.mp4

Set it to no pen to disable strokes.

Set the colors to be more consistent (uniform Saturation and Values).
Set the scale of the small traffic light image to be 1.0. (And color to be darker)

This way when it is not used, it is a more muted color.

@xmfcx
Copy link
Contributor

xmfcx commented Feb 6, 2024

2024-02-06.14-03-26.mp4

This is the final state after all the updates, I think we can merge it!

@xmfcx xmfcx added run:deploy-docs Mark for deploy-docs action generation. (used-by-ci) run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) labels Feb 6, 2024
@xmfcx
Copy link
Contributor

xmfcx commented Feb 6, 2024

@KhalilSelyan Could you also create a PR for the autoware_launch .rviz file as well?

We should merge them together.

@KhalilSelyan
Copy link
Contributor Author

autowarefoundation/autoware_launch#855 i created the PR for the autoware.rviz file as well

@xmfcx
Copy link
Contributor

xmfcx commented Feb 6, 2024

Also could you update the README Input section with speed limit and traffic light information too? @KhalilSelyan

@xmfcx
Copy link
Contributor

xmfcx commented Feb 6, 2024

5caa6a7

With this commit, I've converted the color space transition to be in HSV.

Initial plan was:

  • Speed limit logo outer border to fade from #FF9999 to #FF3333 depending on:
  • color_min = #FF9999 = hsl(0, 100%, 80%)
  • color_max = #FF3333 = hsl(0, 100%, 60%)
  • v : [0, v_max * 0.7) -> color_min
  • v : [v_max * 0.7, v_max] -> interpolate between color_min and color_max (lightness of HSL)

It turns QT has HSV and not HSL. Converting them to HSV:

  • color_min = #FF9999 = hsl(0, 100%, 80%) = hsv(0, 40%, 100%)
  • color_max = #FF3333 = hsl(0, 100%, 60%) = hsv(0, 80%, 100%)

Also I've lowered the thresholds by 0.1, previous limits were:

  • speed_to_limit_ratio_min = 0.7
  • speed_to_limit_ratio_max = 1.0
    new limits:
  • speed_to_limit_ratio_min = 0.6
  • speed_to_limit_ratio_max = 0.9

With these, the interpolation works similar to before but it is easier to tune now.

Copy link
Contributor

@xmfcx xmfcx left a comment

Choose a reason for hiding this comment

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

Thanks for everything!

KhalilSelyan added 3 commits February 6, 2024 16:26
…onventions

Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
KhalilSelyan and others added 20 commits February 6, 2024 16:26
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
…o current speed

Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: M. Fatih Cırıt <mfc@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Co-authored-by: M. Fatih Cırıt <xmfcx@users.noreply.github.com>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: M. Fatih Cırıt <mfc@leodrive.ai>
Signed-off-by: M. Fatih Cırıt <mfc@leodrive.ai>
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Signed-off-by: M. Fatih Cırıt <mfc@leodrive.ai>
@xmfcx xmfcx force-pushed the update/vehicle-overlay-plugin branch from 5caa6a7 to b67d420 Compare February 6, 2024 13:26
Copy link

codecov bot commented Feb 6, 2024

Codecov Report

Attention: 97 lines in your changes are missing coverage. Please review.

Comparison is base (c897b3d) 14.86% compared to head (b67d420) 14.74%.
Report is 4 commits behind head on main.

Files Patch % Lines
...re_overlay_rviz_plugin/src/speed_limit_display.cpp 0.00% 30 Missing ⚠️
...toware_overlay_rviz_plugin/src/traffic_display.cpp 0.00% 27 Missing ⚠️
...utoware_overlay_rviz_plugin/src/signal_display.cpp 0.00% 23 Missing ⚠️
...e_overlay_rviz_plugin/src/overlay_text_display.cpp 0.00% 12 Missing ⚠️
.../autoware_overlay_rviz_plugin/src/gear_display.cpp 0.00% 2 Missing ⚠️
...autoware_overlay_rviz_plugin/src/speed_display.cpp 0.00% 1 Missing ⚠️
...overlay_rviz_plugin/src/steering_wheel_display.cpp 0.00% 1 Missing ⚠️
...e_overlay_rviz_plugin/src/turn_signals_display.cpp 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #6323      +/-   ##
==========================================
- Coverage   14.86%   14.74%   -0.12%     
==========================================
  Files        1845     1857      +12     
  Lines      126611   127599     +988     
  Branches    37871    37871              
==========================================
  Hits        18818    18818              
- Misses      86633    87621     +988     
  Partials    21160    21160              
Flag Coverage Δ *Carryforward flag
differential 0.00% <0.00%> (?)
total 14.86% <ø> (ø) Carriedforward from c897b3d

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

@xmfcx xmfcx merged commit 0ed18a4 into main Feb 7, 2024
20 of 24 checks passed
@xmfcx xmfcx deleted the update/vehicle-overlay-plugin branch February 7, 2024 09:57
StepTurtle pushed a commit to StepTurtle/autoware.universe that referenced this pull request Feb 28, 2024
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
karishma1911 pushed a commit to Interplai/autoware.universe that referenced this pull request Jun 3, 2024
Signed-off-by: KhalilSelyan <khalil@leodrive.ai>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:common Common packages from the autoware-common repository. (auto-assigned) run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) run:deploy-docs Mark for deploy-docs action generation. (used-by-ci) type:documentation Creating or refining documentation. (auto-assigned) type:ui-ux User interface, user experience, graphical user interfaces.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants