Package Summary
| Tags | No category tags. |
| Version | 0.48.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-12-04 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Yukihiro Saito
Authors
tier4_dummy_object_rviz_plugin
Purpose
This plugin is used to generate dummy pedestrians, cars, and obstacles in planning simulator.
Overview
The CarInitialPoseTool sends a topic for generating a dummy car.
The PedestrianInitialPoseTool sends a topic for generating a dummy pedestrian.
The UnknownInitialPoseTool sends a topic for generating a dummy obstacle.
The DeleteAllObjectsTool deletes the dummy cars, pedestrians, and obstacles displayed by the above three tools.
Inputs / Outputs
Output
| Name | Type | Description |
|---|---|---|
/simulation/dummy_perception_publisher/object_info |
tier4_simulation_msgs::msg::DummyObject |
The topic on which to publish dummy object info |
Parameter
Core Parameters
CarPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 4.0 | X standard deviation for initial pose [m] |
width_ |
float | 1.8 | Y standard deviation for initial pose [m] |
height_ |
float | 2.0 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
BusPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 10.5 | X standard deviation for initial pose [m] |
width_ |
float | 2.5 | Y standard deviation for initial pose [m] |
height_ |
float | 3.5 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
PedestrianPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
UnknownPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
DeleteAllObjects
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
Assumptions / Known limits
Using a planning simulator
Usage
- Start rviz and select + on the tool tab.
- Select one of the following: tier4_dummy_object_rviz_plugin and press OK.
- Select the new item in the tool tab (2D Dummy Car in the example) and click on it in rviz.
Interactive manipulation
File truncated at 100 lines see the full file
Changelog for package tier4_dummy_object_rviz_plugin
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_dummy_perception_publisher): dummy object predicted path functionality (#11011)
- feat: implement euclidean distance-based mapping for dummy perception publisher
- Add euclidean distance-based mapping between dummy objects and predicted objects
- Implement 2-second grace period before using predicted paths
- Add distance-based interpolation along predicted paths using dummy object speed
- Use predictions at least 1 second old for better movement calculation
- Maintain one-to-one mapping between dummy and predicted objects
- Add predicted objects subscription and buffer management
- Preserve dummy object velocity throughout movement
- feat: enhance euclidean distance-based mapping with prediction stability
- Implement prediction keeping logic for 1-second intervals to reduce jitter
- Add prediction storage maps for stable object tracking
- Remove debug output and clean up prediction selection logic
- Use object creation time instead of mapping time for 2-second grace period
- Improve handling of predicted object ID changes with proper remapping
- Clean up unused mapping time parameter from ObjectInfo constructor
- feat: increase prediction stability duration to 3 seconds
- Change MIN_KEEP_DURATION from 1.0 to 3.0 seconds for more stable object tracking
- Add debug output to track prediction usage
- Fix code formatting and whitespace
- feat: implement trajectory extrapolation and lost object handling
- Add trajectory extrapolation when objects overshoot predicted paths
- Use last two trajectory points to determine direction for extrapolation
- Maintain last known orientation during extrapolation
- Keep using last predicted trajectory for lost objects
- Add proper fallbacks for edge cases (single point paths, zero-length segments)
- Clean up debug output to avoid duplication
- feat: add trajectory validation to prevent unrealistic direction changes
- Add isTrajectoryValid function to validate new predictions against current ones
- Implement thresholds for yaw change (45°), direction change (60°), and speed change (200%)
- Skip trajectory updates when validation fails to maintain smooth object movement
- Handle edge cases including empty paths and low-speed scenarios
- Add detailed logging for debugging trajectory rejections
- feat: relax trajectory validation thresholds for more realistic movement
- Increase yaw change threshold from 45° to 90°
- Increase direction change threshold from 60° to 120°
- Increase speed change threshold from 200% to 500%
- Allow for more realistic vehicle maneuvers while still preventing physics violations
- feat: add path length validation to trajectory comparison
- Add MAX_PATH_LENGTH_CHANGE_RATIO threshold (300% change)
- Calculate path lengths for both current and new trajectories
- Compare path length ratios to prevent unrealistic path changes
- Skip validation for very short paths (less than 0.1m)
- Add detailed logging for path length validation failures
- feat: add comprehensive validation for object remapping candidates
- Add isValidRemappingCandidate function to validate remapping candidates
- Implement position, trajectory, and heading similarity checks
- Add arePathsSimilar function to compare path shapes and directions
- Use validation in both remapping and unmapped object scenarios
- Add detailed logging for debugging validation failures
- Set appropriate thresholds for distance, yaw, and path comparison
- fix: remove unused variables and parameters to resolve build warnings
- Mark unused parameter current_time in isValidRemappingCandidate
- Mark unused parameter dummy_uuid_str in arePathsSimilar
- Remove unused MAX_DIRECTION_CHANGE and MAX_VELOCITY_CHANGE_RATIO constants
- Clean up warnings to improve code quality
- refactor: remove unused parameters from function signatures
- Remove unused current_time parameter from isValidRemappingCandidate
- Remove unused dummy_uuid_str parameter from arePathsSimilar
- Update function calls to match simplified signatures
- Clean up function interfaces to remove unnecessary parameters
- feat: improve remapping candidate validation using trajectory-based position calculation
- Add calculateExpectedPosition function to predict object
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| autoware_cmake | |
| ament_lint_auto | |
| autoware_lint_common | |
| rviz_common | |
| rviz_default_plugins | |
| tf2_geometry_msgs | |
| tf2_ros | |
| tier4_simulation_msgs |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged tier4_dummy_object_rviz_plugin at Robotics Stack Exchange
Package Summary
| Tags | No category tags. |
| Version | 0.48.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-12-04 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Yukihiro Saito
Authors
tier4_dummy_object_rviz_plugin
Purpose
This plugin is used to generate dummy pedestrians, cars, and obstacles in planning simulator.
Overview
The CarInitialPoseTool sends a topic for generating a dummy car.
The PedestrianInitialPoseTool sends a topic for generating a dummy pedestrian.
The UnknownInitialPoseTool sends a topic for generating a dummy obstacle.
The DeleteAllObjectsTool deletes the dummy cars, pedestrians, and obstacles displayed by the above three tools.
Inputs / Outputs
Output
| Name | Type | Description |
|---|---|---|
/simulation/dummy_perception_publisher/object_info |
tier4_simulation_msgs::msg::DummyObject |
The topic on which to publish dummy object info |
Parameter
Core Parameters
CarPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 4.0 | X standard deviation for initial pose [m] |
width_ |
float | 1.8 | Y standard deviation for initial pose [m] |
height_ |
float | 2.0 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
BusPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 10.5 | X standard deviation for initial pose [m] |
width_ |
float | 2.5 | Y standard deviation for initial pose [m] |
height_ |
float | 3.5 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
PedestrianPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
UnknownPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
DeleteAllObjects
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
Assumptions / Known limits
Using a planning simulator
Usage
- Start rviz and select + on the tool tab.
- Select one of the following: tier4_dummy_object_rviz_plugin and press OK.
- Select the new item in the tool tab (2D Dummy Car in the example) and click on it in rviz.
Interactive manipulation
File truncated at 100 lines see the full file
Changelog for package tier4_dummy_object_rviz_plugin
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_dummy_perception_publisher): dummy object predicted path functionality (#11011)
- feat: implement euclidean distance-based mapping for dummy perception publisher
- Add euclidean distance-based mapping between dummy objects and predicted objects
- Implement 2-second grace period before using predicted paths
- Add distance-based interpolation along predicted paths using dummy object speed
- Use predictions at least 1 second old for better movement calculation
- Maintain one-to-one mapping between dummy and predicted objects
- Add predicted objects subscription and buffer management
- Preserve dummy object velocity throughout movement
- feat: enhance euclidean distance-based mapping with prediction stability
- Implement prediction keeping logic for 1-second intervals to reduce jitter
- Add prediction storage maps for stable object tracking
- Remove debug output and clean up prediction selection logic
- Use object creation time instead of mapping time for 2-second grace period
- Improve handling of predicted object ID changes with proper remapping
- Clean up unused mapping time parameter from ObjectInfo constructor
- feat: increase prediction stability duration to 3 seconds
- Change MIN_KEEP_DURATION from 1.0 to 3.0 seconds for more stable object tracking
- Add debug output to track prediction usage
- Fix code formatting and whitespace
- feat: implement trajectory extrapolation and lost object handling
- Add trajectory extrapolation when objects overshoot predicted paths
- Use last two trajectory points to determine direction for extrapolation
- Maintain last known orientation during extrapolation
- Keep using last predicted trajectory for lost objects
- Add proper fallbacks for edge cases (single point paths, zero-length segments)
- Clean up debug output to avoid duplication
- feat: add trajectory validation to prevent unrealistic direction changes
- Add isTrajectoryValid function to validate new predictions against current ones
- Implement thresholds for yaw change (45°), direction change (60°), and speed change (200%)
- Skip trajectory updates when validation fails to maintain smooth object movement
- Handle edge cases including empty paths and low-speed scenarios
- Add detailed logging for debugging trajectory rejections
- feat: relax trajectory validation thresholds for more realistic movement
- Increase yaw change threshold from 45° to 90°
- Increase direction change threshold from 60° to 120°
- Increase speed change threshold from 200% to 500%
- Allow for more realistic vehicle maneuvers while still preventing physics violations
- feat: add path length validation to trajectory comparison
- Add MAX_PATH_LENGTH_CHANGE_RATIO threshold (300% change)
- Calculate path lengths for both current and new trajectories
- Compare path length ratios to prevent unrealistic path changes
- Skip validation for very short paths (less than 0.1m)
- Add detailed logging for path length validation failures
- feat: add comprehensive validation for object remapping candidates
- Add isValidRemappingCandidate function to validate remapping candidates
- Implement position, trajectory, and heading similarity checks
- Add arePathsSimilar function to compare path shapes and directions
- Use validation in both remapping and unmapped object scenarios
- Add detailed logging for debugging validation failures
- Set appropriate thresholds for distance, yaw, and path comparison
- fix: remove unused variables and parameters to resolve build warnings
- Mark unused parameter current_time in isValidRemappingCandidate
- Mark unused parameter dummy_uuid_str in arePathsSimilar
- Remove unused MAX_DIRECTION_CHANGE and MAX_VELOCITY_CHANGE_RATIO constants
- Clean up warnings to improve code quality
- refactor: remove unused parameters from function signatures
- Remove unused current_time parameter from isValidRemappingCandidate
- Remove unused dummy_uuid_str parameter from arePathsSimilar
- Update function calls to match simplified signatures
- Clean up function interfaces to remove unnecessary parameters
- feat: improve remapping candidate validation using trajectory-based position calculation
- Add calculateExpectedPosition function to predict object
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| autoware_cmake | |
| ament_lint_auto | |
| autoware_lint_common | |
| rviz_common | |
| rviz_default_plugins | |
| tf2_geometry_msgs | |
| tf2_ros | |
| tier4_simulation_msgs |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged tier4_dummy_object_rviz_plugin at Robotics Stack Exchange
Package Summary
| Tags | No category tags. |
| Version | 0.48.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-12-04 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Yukihiro Saito
Authors
tier4_dummy_object_rviz_plugin
Purpose
This plugin is used to generate dummy pedestrians, cars, and obstacles in planning simulator.
Overview
The CarInitialPoseTool sends a topic for generating a dummy car.
The PedestrianInitialPoseTool sends a topic for generating a dummy pedestrian.
The UnknownInitialPoseTool sends a topic for generating a dummy obstacle.
The DeleteAllObjectsTool deletes the dummy cars, pedestrians, and obstacles displayed by the above three tools.
Inputs / Outputs
Output
| Name | Type | Description |
|---|---|---|
/simulation/dummy_perception_publisher/object_info |
tier4_simulation_msgs::msg::DummyObject |
The topic on which to publish dummy object info |
Parameter
Core Parameters
CarPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 4.0 | X standard deviation for initial pose [m] |
width_ |
float | 1.8 | Y standard deviation for initial pose [m] |
height_ |
float | 2.0 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
BusPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 10.5 | X standard deviation for initial pose [m] |
width_ |
float | 2.5 | Y standard deviation for initial pose [m] |
height_ |
float | 3.5 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
PedestrianPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
UnknownPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
DeleteAllObjects
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
Assumptions / Known limits
Using a planning simulator
Usage
- Start rviz and select + on the tool tab.
- Select one of the following: tier4_dummy_object_rviz_plugin and press OK.
- Select the new item in the tool tab (2D Dummy Car in the example) and click on it in rviz.
Interactive manipulation
File truncated at 100 lines see the full file
Changelog for package tier4_dummy_object_rviz_plugin
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_dummy_perception_publisher): dummy object predicted path functionality (#11011)
- feat: implement euclidean distance-based mapping for dummy perception publisher
- Add euclidean distance-based mapping between dummy objects and predicted objects
- Implement 2-second grace period before using predicted paths
- Add distance-based interpolation along predicted paths using dummy object speed
- Use predictions at least 1 second old for better movement calculation
- Maintain one-to-one mapping between dummy and predicted objects
- Add predicted objects subscription and buffer management
- Preserve dummy object velocity throughout movement
- feat: enhance euclidean distance-based mapping with prediction stability
- Implement prediction keeping logic for 1-second intervals to reduce jitter
- Add prediction storage maps for stable object tracking
- Remove debug output and clean up prediction selection logic
- Use object creation time instead of mapping time for 2-second grace period
- Improve handling of predicted object ID changes with proper remapping
- Clean up unused mapping time parameter from ObjectInfo constructor
- feat: increase prediction stability duration to 3 seconds
- Change MIN_KEEP_DURATION from 1.0 to 3.0 seconds for more stable object tracking
- Add debug output to track prediction usage
- Fix code formatting and whitespace
- feat: implement trajectory extrapolation and lost object handling
- Add trajectory extrapolation when objects overshoot predicted paths
- Use last two trajectory points to determine direction for extrapolation
- Maintain last known orientation during extrapolation
- Keep using last predicted trajectory for lost objects
- Add proper fallbacks for edge cases (single point paths, zero-length segments)
- Clean up debug output to avoid duplication
- feat: add trajectory validation to prevent unrealistic direction changes
- Add isTrajectoryValid function to validate new predictions against current ones
- Implement thresholds for yaw change (45°), direction change (60°), and speed change (200%)
- Skip trajectory updates when validation fails to maintain smooth object movement
- Handle edge cases including empty paths and low-speed scenarios
- Add detailed logging for debugging trajectory rejections
- feat: relax trajectory validation thresholds for more realistic movement
- Increase yaw change threshold from 45° to 90°
- Increase direction change threshold from 60° to 120°
- Increase speed change threshold from 200% to 500%
- Allow for more realistic vehicle maneuvers while still preventing physics violations
- feat: add path length validation to trajectory comparison
- Add MAX_PATH_LENGTH_CHANGE_RATIO threshold (300% change)
- Calculate path lengths for both current and new trajectories
- Compare path length ratios to prevent unrealistic path changes
- Skip validation for very short paths (less than 0.1m)
- Add detailed logging for path length validation failures
- feat: add comprehensive validation for object remapping candidates
- Add isValidRemappingCandidate function to validate remapping candidates
- Implement position, trajectory, and heading similarity checks
- Add arePathsSimilar function to compare path shapes and directions
- Use validation in both remapping and unmapped object scenarios
- Add detailed logging for debugging validation failures
- Set appropriate thresholds for distance, yaw, and path comparison
- fix: remove unused variables and parameters to resolve build warnings
- Mark unused parameter current_time in isValidRemappingCandidate
- Mark unused parameter dummy_uuid_str in arePathsSimilar
- Remove unused MAX_DIRECTION_CHANGE and MAX_VELOCITY_CHANGE_RATIO constants
- Clean up warnings to improve code quality
- refactor: remove unused parameters from function signatures
- Remove unused current_time parameter from isValidRemappingCandidate
- Remove unused dummy_uuid_str parameter from arePathsSimilar
- Update function calls to match simplified signatures
- Clean up function interfaces to remove unnecessary parameters
- feat: improve remapping candidate validation using trajectory-based position calculation
- Add calculateExpectedPosition function to predict object
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| autoware_cmake | |
| ament_lint_auto | |
| autoware_lint_common | |
| rviz_common | |
| rviz_default_plugins | |
| tf2_geometry_msgs | |
| tf2_ros | |
| tier4_simulation_msgs |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged tier4_dummy_object_rviz_plugin at Robotics Stack Exchange
Package Summary
| Tags | No category tags. |
| Version | 0.48.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-12-04 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Yukihiro Saito
Authors
tier4_dummy_object_rviz_plugin
Purpose
This plugin is used to generate dummy pedestrians, cars, and obstacles in planning simulator.
Overview
The CarInitialPoseTool sends a topic for generating a dummy car.
The PedestrianInitialPoseTool sends a topic for generating a dummy pedestrian.
The UnknownInitialPoseTool sends a topic for generating a dummy obstacle.
The DeleteAllObjectsTool deletes the dummy cars, pedestrians, and obstacles displayed by the above three tools.
Inputs / Outputs
Output
| Name | Type | Description |
|---|---|---|
/simulation/dummy_perception_publisher/object_info |
tier4_simulation_msgs::msg::DummyObject |
The topic on which to publish dummy object info |
Parameter
Core Parameters
CarPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 4.0 | X standard deviation for initial pose [m] |
width_ |
float | 1.8 | Y standard deviation for initial pose [m] |
height_ |
float | 2.0 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
BusPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 10.5 | X standard deviation for initial pose [m] |
width_ |
float | 2.5 | Y standard deviation for initial pose [m] |
height_ |
float | 3.5 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
PedestrianPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
UnknownPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
DeleteAllObjects
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
Assumptions / Known limits
Using a planning simulator
Usage
- Start rviz and select + on the tool tab.
- Select one of the following: tier4_dummy_object_rviz_plugin and press OK.
- Select the new item in the tool tab (2D Dummy Car in the example) and click on it in rviz.
Interactive manipulation
File truncated at 100 lines see the full file
Changelog for package tier4_dummy_object_rviz_plugin
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_dummy_perception_publisher): dummy object predicted path functionality (#11011)
- feat: implement euclidean distance-based mapping for dummy perception publisher
- Add euclidean distance-based mapping between dummy objects and predicted objects
- Implement 2-second grace period before using predicted paths
- Add distance-based interpolation along predicted paths using dummy object speed
- Use predictions at least 1 second old for better movement calculation
- Maintain one-to-one mapping between dummy and predicted objects
- Add predicted objects subscription and buffer management
- Preserve dummy object velocity throughout movement
- feat: enhance euclidean distance-based mapping with prediction stability
- Implement prediction keeping logic for 1-second intervals to reduce jitter
- Add prediction storage maps for stable object tracking
- Remove debug output and clean up prediction selection logic
- Use object creation time instead of mapping time for 2-second grace period
- Improve handling of predicted object ID changes with proper remapping
- Clean up unused mapping time parameter from ObjectInfo constructor
- feat: increase prediction stability duration to 3 seconds
- Change MIN_KEEP_DURATION from 1.0 to 3.0 seconds for more stable object tracking
- Add debug output to track prediction usage
- Fix code formatting and whitespace
- feat: implement trajectory extrapolation and lost object handling
- Add trajectory extrapolation when objects overshoot predicted paths
- Use last two trajectory points to determine direction for extrapolation
- Maintain last known orientation during extrapolation
- Keep using last predicted trajectory for lost objects
- Add proper fallbacks for edge cases (single point paths, zero-length segments)
- Clean up debug output to avoid duplication
- feat: add trajectory validation to prevent unrealistic direction changes
- Add isTrajectoryValid function to validate new predictions against current ones
- Implement thresholds for yaw change (45°), direction change (60°), and speed change (200%)
- Skip trajectory updates when validation fails to maintain smooth object movement
- Handle edge cases including empty paths and low-speed scenarios
- Add detailed logging for debugging trajectory rejections
- feat: relax trajectory validation thresholds for more realistic movement
- Increase yaw change threshold from 45° to 90°
- Increase direction change threshold from 60° to 120°
- Increase speed change threshold from 200% to 500%
- Allow for more realistic vehicle maneuvers while still preventing physics violations
- feat: add path length validation to trajectory comparison
- Add MAX_PATH_LENGTH_CHANGE_RATIO threshold (300% change)
- Calculate path lengths for both current and new trajectories
- Compare path length ratios to prevent unrealistic path changes
- Skip validation for very short paths (less than 0.1m)
- Add detailed logging for path length validation failures
- feat: add comprehensive validation for object remapping candidates
- Add isValidRemappingCandidate function to validate remapping candidates
- Implement position, trajectory, and heading similarity checks
- Add arePathsSimilar function to compare path shapes and directions
- Use validation in both remapping and unmapped object scenarios
- Add detailed logging for debugging validation failures
- Set appropriate thresholds for distance, yaw, and path comparison
- fix: remove unused variables and parameters to resolve build warnings
- Mark unused parameter current_time in isValidRemappingCandidate
- Mark unused parameter dummy_uuid_str in arePathsSimilar
- Remove unused MAX_DIRECTION_CHANGE and MAX_VELOCITY_CHANGE_RATIO constants
- Clean up warnings to improve code quality
- refactor: remove unused parameters from function signatures
- Remove unused current_time parameter from isValidRemappingCandidate
- Remove unused dummy_uuid_str parameter from arePathsSimilar
- Update function calls to match simplified signatures
- Clean up function interfaces to remove unnecessary parameters
- feat: improve remapping candidate validation using trajectory-based position calculation
- Add calculateExpectedPosition function to predict object
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| autoware_cmake | |
| ament_lint_auto | |
| autoware_lint_common | |
| rviz_common | |
| rviz_default_plugins | |
| tf2_geometry_msgs | |
| tf2_ros | |
| tier4_simulation_msgs |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged tier4_dummy_object_rviz_plugin at Robotics Stack Exchange
Package Summary
| Tags | No category tags. |
| Version | 0.48.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-12-04 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Yukihiro Saito
Authors
tier4_dummy_object_rviz_plugin
Purpose
This plugin is used to generate dummy pedestrians, cars, and obstacles in planning simulator.
Overview
The CarInitialPoseTool sends a topic for generating a dummy car.
The PedestrianInitialPoseTool sends a topic for generating a dummy pedestrian.
The UnknownInitialPoseTool sends a topic for generating a dummy obstacle.
The DeleteAllObjectsTool deletes the dummy cars, pedestrians, and obstacles displayed by the above three tools.
Inputs / Outputs
Output
| Name | Type | Description |
|---|---|---|
/simulation/dummy_perception_publisher/object_info |
tier4_simulation_msgs::msg::DummyObject |
The topic on which to publish dummy object info |
Parameter
Core Parameters
CarPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 4.0 | X standard deviation for initial pose [m] |
width_ |
float | 1.8 | Y standard deviation for initial pose [m] |
height_ |
float | 2.0 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
BusPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 10.5 | X standard deviation for initial pose [m] |
width_ |
float | 2.5 | Y standard deviation for initial pose [m] |
height_ |
float | 3.5 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
PedestrianPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
UnknownPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
DeleteAllObjects
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
Assumptions / Known limits
Using a planning simulator
Usage
- Start rviz and select + on the tool tab.
- Select one of the following: tier4_dummy_object_rviz_plugin and press OK.
- Select the new item in the tool tab (2D Dummy Car in the example) and click on it in rviz.
Interactive manipulation
File truncated at 100 lines see the full file
Changelog for package tier4_dummy_object_rviz_plugin
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_dummy_perception_publisher): dummy object predicted path functionality (#11011)
- feat: implement euclidean distance-based mapping for dummy perception publisher
- Add euclidean distance-based mapping between dummy objects and predicted objects
- Implement 2-second grace period before using predicted paths
- Add distance-based interpolation along predicted paths using dummy object speed
- Use predictions at least 1 second old for better movement calculation
- Maintain one-to-one mapping between dummy and predicted objects
- Add predicted objects subscription and buffer management
- Preserve dummy object velocity throughout movement
- feat: enhance euclidean distance-based mapping with prediction stability
- Implement prediction keeping logic for 1-second intervals to reduce jitter
- Add prediction storage maps for stable object tracking
- Remove debug output and clean up prediction selection logic
- Use object creation time instead of mapping time for 2-second grace period
- Improve handling of predicted object ID changes with proper remapping
- Clean up unused mapping time parameter from ObjectInfo constructor
- feat: increase prediction stability duration to 3 seconds
- Change MIN_KEEP_DURATION from 1.0 to 3.0 seconds for more stable object tracking
- Add debug output to track prediction usage
- Fix code formatting and whitespace
- feat: implement trajectory extrapolation and lost object handling
- Add trajectory extrapolation when objects overshoot predicted paths
- Use last two trajectory points to determine direction for extrapolation
- Maintain last known orientation during extrapolation
- Keep using last predicted trajectory for lost objects
- Add proper fallbacks for edge cases (single point paths, zero-length segments)
- Clean up debug output to avoid duplication
- feat: add trajectory validation to prevent unrealistic direction changes
- Add isTrajectoryValid function to validate new predictions against current ones
- Implement thresholds for yaw change (45°), direction change (60°), and speed change (200%)
- Skip trajectory updates when validation fails to maintain smooth object movement
- Handle edge cases including empty paths and low-speed scenarios
- Add detailed logging for debugging trajectory rejections
- feat: relax trajectory validation thresholds for more realistic movement
- Increase yaw change threshold from 45° to 90°
- Increase direction change threshold from 60° to 120°
- Increase speed change threshold from 200% to 500%
- Allow for more realistic vehicle maneuvers while still preventing physics violations
- feat: add path length validation to trajectory comparison
- Add MAX_PATH_LENGTH_CHANGE_RATIO threshold (300% change)
- Calculate path lengths for both current and new trajectories
- Compare path length ratios to prevent unrealistic path changes
- Skip validation for very short paths (less than 0.1m)
- Add detailed logging for path length validation failures
- feat: add comprehensive validation for object remapping candidates
- Add isValidRemappingCandidate function to validate remapping candidates
- Implement position, trajectory, and heading similarity checks
- Add arePathsSimilar function to compare path shapes and directions
- Use validation in both remapping and unmapped object scenarios
- Add detailed logging for debugging validation failures
- Set appropriate thresholds for distance, yaw, and path comparison
- fix: remove unused variables and parameters to resolve build warnings
- Mark unused parameter current_time in isValidRemappingCandidate
- Mark unused parameter dummy_uuid_str in arePathsSimilar
- Remove unused MAX_DIRECTION_CHANGE and MAX_VELOCITY_CHANGE_RATIO constants
- Clean up warnings to improve code quality
- refactor: remove unused parameters from function signatures
- Remove unused current_time parameter from isValidRemappingCandidate
- Remove unused dummy_uuid_str parameter from arePathsSimilar
- Update function calls to match simplified signatures
- Clean up function interfaces to remove unnecessary parameters
- feat: improve remapping candidate validation using trajectory-based position calculation
- Add calculateExpectedPosition function to predict object
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| autoware_cmake | |
| ament_lint_auto | |
| autoware_lint_common | |
| rviz_common | |
| rviz_default_plugins | |
| tf2_geometry_msgs | |
| tf2_ros | |
| tier4_simulation_msgs |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged tier4_dummy_object_rviz_plugin at Robotics Stack Exchange
Package Summary
| Tags | No category tags. |
| Version | 0.48.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-12-04 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Yukihiro Saito
Authors
tier4_dummy_object_rviz_plugin
Purpose
This plugin is used to generate dummy pedestrians, cars, and obstacles in planning simulator.
Overview
The CarInitialPoseTool sends a topic for generating a dummy car.
The PedestrianInitialPoseTool sends a topic for generating a dummy pedestrian.
The UnknownInitialPoseTool sends a topic for generating a dummy obstacle.
The DeleteAllObjectsTool deletes the dummy cars, pedestrians, and obstacles displayed by the above three tools.
Inputs / Outputs
Output
| Name | Type | Description |
|---|---|---|
/simulation/dummy_perception_publisher/object_info |
tier4_simulation_msgs::msg::DummyObject |
The topic on which to publish dummy object info |
Parameter
Core Parameters
CarPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 4.0 | X standard deviation for initial pose [m] |
width_ |
float | 1.8 | Y standard deviation for initial pose [m] |
height_ |
float | 2.0 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
BusPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 10.5 | X standard deviation for initial pose [m] |
width_ |
float | 2.5 | Y standard deviation for initial pose [m] |
height_ |
float | 3.5 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
PedestrianPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
UnknownPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
DeleteAllObjects
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
Assumptions / Known limits
Using a planning simulator
Usage
- Start rviz and select + on the tool tab.
- Select one of the following: tier4_dummy_object_rviz_plugin and press OK.
- Select the new item in the tool tab (2D Dummy Car in the example) and click on it in rviz.
Interactive manipulation
File truncated at 100 lines see the full file
Changelog for package tier4_dummy_object_rviz_plugin
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_dummy_perception_publisher): dummy object predicted path functionality (#11011)
- feat: implement euclidean distance-based mapping for dummy perception publisher
- Add euclidean distance-based mapping between dummy objects and predicted objects
- Implement 2-second grace period before using predicted paths
- Add distance-based interpolation along predicted paths using dummy object speed
- Use predictions at least 1 second old for better movement calculation
- Maintain one-to-one mapping between dummy and predicted objects
- Add predicted objects subscription and buffer management
- Preserve dummy object velocity throughout movement
- feat: enhance euclidean distance-based mapping with prediction stability
- Implement prediction keeping logic for 1-second intervals to reduce jitter
- Add prediction storage maps for stable object tracking
- Remove debug output and clean up prediction selection logic
- Use object creation time instead of mapping time for 2-second grace period
- Improve handling of predicted object ID changes with proper remapping
- Clean up unused mapping time parameter from ObjectInfo constructor
- feat: increase prediction stability duration to 3 seconds
- Change MIN_KEEP_DURATION from 1.0 to 3.0 seconds for more stable object tracking
- Add debug output to track prediction usage
- Fix code formatting and whitespace
- feat: implement trajectory extrapolation and lost object handling
- Add trajectory extrapolation when objects overshoot predicted paths
- Use last two trajectory points to determine direction for extrapolation
- Maintain last known orientation during extrapolation
- Keep using last predicted trajectory for lost objects
- Add proper fallbacks for edge cases (single point paths, zero-length segments)
- Clean up debug output to avoid duplication
- feat: add trajectory validation to prevent unrealistic direction changes
- Add isTrajectoryValid function to validate new predictions against current ones
- Implement thresholds for yaw change (45°), direction change (60°), and speed change (200%)
- Skip trajectory updates when validation fails to maintain smooth object movement
- Handle edge cases including empty paths and low-speed scenarios
- Add detailed logging for debugging trajectory rejections
- feat: relax trajectory validation thresholds for more realistic movement
- Increase yaw change threshold from 45° to 90°
- Increase direction change threshold from 60° to 120°
- Increase speed change threshold from 200% to 500%
- Allow for more realistic vehicle maneuvers while still preventing physics violations
- feat: add path length validation to trajectory comparison
- Add MAX_PATH_LENGTH_CHANGE_RATIO threshold (300% change)
- Calculate path lengths for both current and new trajectories
- Compare path length ratios to prevent unrealistic path changes
- Skip validation for very short paths (less than 0.1m)
- Add detailed logging for path length validation failures
- feat: add comprehensive validation for object remapping candidates
- Add isValidRemappingCandidate function to validate remapping candidates
- Implement position, trajectory, and heading similarity checks
- Add arePathsSimilar function to compare path shapes and directions
- Use validation in both remapping and unmapped object scenarios
- Add detailed logging for debugging validation failures
- Set appropriate thresholds for distance, yaw, and path comparison
- fix: remove unused variables and parameters to resolve build warnings
- Mark unused parameter current_time in isValidRemappingCandidate
- Mark unused parameter dummy_uuid_str in arePathsSimilar
- Remove unused MAX_DIRECTION_CHANGE and MAX_VELOCITY_CHANGE_RATIO constants
- Clean up warnings to improve code quality
- refactor: remove unused parameters from function signatures
- Remove unused current_time parameter from isValidRemappingCandidate
- Remove unused dummy_uuid_str parameter from arePathsSimilar
- Update function calls to match simplified signatures
- Clean up function interfaces to remove unnecessary parameters
- feat: improve remapping candidate validation using trajectory-based position calculation
- Add calculateExpectedPosition function to predict object
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| autoware_cmake | |
| ament_lint_auto | |
| autoware_lint_common | |
| rviz_common | |
| rviz_default_plugins | |
| tf2_geometry_msgs | |
| tf2_ros | |
| tier4_simulation_msgs |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged tier4_dummy_object_rviz_plugin at Robotics Stack Exchange
Package Summary
| Tags | No category tags. |
| Version | 0.48.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-12-04 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Yukihiro Saito
Authors
tier4_dummy_object_rviz_plugin
Purpose
This plugin is used to generate dummy pedestrians, cars, and obstacles in planning simulator.
Overview
The CarInitialPoseTool sends a topic for generating a dummy car.
The PedestrianInitialPoseTool sends a topic for generating a dummy pedestrian.
The UnknownInitialPoseTool sends a topic for generating a dummy obstacle.
The DeleteAllObjectsTool deletes the dummy cars, pedestrians, and obstacles displayed by the above three tools.
Inputs / Outputs
Output
| Name | Type | Description |
|---|---|---|
/simulation/dummy_perception_publisher/object_info |
tier4_simulation_msgs::msg::DummyObject |
The topic on which to publish dummy object info |
Parameter
Core Parameters
CarPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 4.0 | X standard deviation for initial pose [m] |
width_ |
float | 1.8 | Y standard deviation for initial pose [m] |
height_ |
float | 2.0 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
BusPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 10.5 | X standard deviation for initial pose [m] |
width_ |
float | 2.5 | Y standard deviation for initial pose [m] |
height_ |
float | 3.5 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
PedestrianPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
UnknownPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
DeleteAllObjects
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
Assumptions / Known limits
Using a planning simulator
Usage
- Start rviz and select + on the tool tab.
- Select one of the following: tier4_dummy_object_rviz_plugin and press OK.
- Select the new item in the tool tab (2D Dummy Car in the example) and click on it in rviz.
Interactive manipulation
File truncated at 100 lines see the full file
Changelog for package tier4_dummy_object_rviz_plugin
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_dummy_perception_publisher): dummy object predicted path functionality (#11011)
- feat: implement euclidean distance-based mapping for dummy perception publisher
- Add euclidean distance-based mapping between dummy objects and predicted objects
- Implement 2-second grace period before using predicted paths
- Add distance-based interpolation along predicted paths using dummy object speed
- Use predictions at least 1 second old for better movement calculation
- Maintain one-to-one mapping between dummy and predicted objects
- Add predicted objects subscription and buffer management
- Preserve dummy object velocity throughout movement
- feat: enhance euclidean distance-based mapping with prediction stability
- Implement prediction keeping logic for 1-second intervals to reduce jitter
- Add prediction storage maps for stable object tracking
- Remove debug output and clean up prediction selection logic
- Use object creation time instead of mapping time for 2-second grace period
- Improve handling of predicted object ID changes with proper remapping
- Clean up unused mapping time parameter from ObjectInfo constructor
- feat: increase prediction stability duration to 3 seconds
- Change MIN_KEEP_DURATION from 1.0 to 3.0 seconds for more stable object tracking
- Add debug output to track prediction usage
- Fix code formatting and whitespace
- feat: implement trajectory extrapolation and lost object handling
- Add trajectory extrapolation when objects overshoot predicted paths
- Use last two trajectory points to determine direction for extrapolation
- Maintain last known orientation during extrapolation
- Keep using last predicted trajectory for lost objects
- Add proper fallbacks for edge cases (single point paths, zero-length segments)
- Clean up debug output to avoid duplication
- feat: add trajectory validation to prevent unrealistic direction changes
- Add isTrajectoryValid function to validate new predictions against current ones
- Implement thresholds for yaw change (45°), direction change (60°), and speed change (200%)
- Skip trajectory updates when validation fails to maintain smooth object movement
- Handle edge cases including empty paths and low-speed scenarios
- Add detailed logging for debugging trajectory rejections
- feat: relax trajectory validation thresholds for more realistic movement
- Increase yaw change threshold from 45° to 90°
- Increase direction change threshold from 60° to 120°
- Increase speed change threshold from 200% to 500%
- Allow for more realistic vehicle maneuvers while still preventing physics violations
- feat: add path length validation to trajectory comparison
- Add MAX_PATH_LENGTH_CHANGE_RATIO threshold (300% change)
- Calculate path lengths for both current and new trajectories
- Compare path length ratios to prevent unrealistic path changes
- Skip validation for very short paths (less than 0.1m)
- Add detailed logging for path length validation failures
- feat: add comprehensive validation for object remapping candidates
- Add isValidRemappingCandidate function to validate remapping candidates
- Implement position, trajectory, and heading similarity checks
- Add arePathsSimilar function to compare path shapes and directions
- Use validation in both remapping and unmapped object scenarios
- Add detailed logging for debugging validation failures
- Set appropriate thresholds for distance, yaw, and path comparison
- fix: remove unused variables and parameters to resolve build warnings
- Mark unused parameter current_time in isValidRemappingCandidate
- Mark unused parameter dummy_uuid_str in arePathsSimilar
- Remove unused MAX_DIRECTION_CHANGE and MAX_VELOCITY_CHANGE_RATIO constants
- Clean up warnings to improve code quality
- refactor: remove unused parameters from function signatures
- Remove unused current_time parameter from isValidRemappingCandidate
- Remove unused dummy_uuid_str parameter from arePathsSimilar
- Update function calls to match simplified signatures
- Clean up function interfaces to remove unnecessary parameters
- feat: improve remapping candidate validation using trajectory-based position calculation
- Add calculateExpectedPosition function to predict object
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| autoware_cmake | |
| ament_lint_auto | |
| autoware_lint_common | |
| rviz_common | |
| rviz_default_plugins | |
| tf2_geometry_msgs | |
| tf2_ros | |
| tier4_simulation_msgs |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged tier4_dummy_object_rviz_plugin at Robotics Stack Exchange
Package Summary
| Tags | No category tags. |
| Version | 0.48.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-12-04 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Yukihiro Saito
Authors
tier4_dummy_object_rviz_plugin
Purpose
This plugin is used to generate dummy pedestrians, cars, and obstacles in planning simulator.
Overview
The CarInitialPoseTool sends a topic for generating a dummy car.
The PedestrianInitialPoseTool sends a topic for generating a dummy pedestrian.
The UnknownInitialPoseTool sends a topic for generating a dummy obstacle.
The DeleteAllObjectsTool deletes the dummy cars, pedestrians, and obstacles displayed by the above three tools.
Inputs / Outputs
Output
| Name | Type | Description |
|---|---|---|
/simulation/dummy_perception_publisher/object_info |
tier4_simulation_msgs::msg::DummyObject |
The topic on which to publish dummy object info |
Parameter
Core Parameters
CarPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 4.0 | X standard deviation for initial pose [m] |
width_ |
float | 1.8 | Y standard deviation for initial pose [m] |
height_ |
float | 2.0 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
BusPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 10.5 | X standard deviation for initial pose [m] |
width_ |
float | 2.5 | Y standard deviation for initial pose [m] |
height_ |
float | 3.5 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
PedestrianPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
UnknownPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
DeleteAllObjects
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
Assumptions / Known limits
Using a planning simulator
Usage
- Start rviz and select + on the tool tab.
- Select one of the following: tier4_dummy_object_rviz_plugin and press OK.
- Select the new item in the tool tab (2D Dummy Car in the example) and click on it in rviz.
Interactive manipulation
File truncated at 100 lines see the full file
Changelog for package tier4_dummy_object_rviz_plugin
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_dummy_perception_publisher): dummy object predicted path functionality (#11011)
- feat: implement euclidean distance-based mapping for dummy perception publisher
- Add euclidean distance-based mapping between dummy objects and predicted objects
- Implement 2-second grace period before using predicted paths
- Add distance-based interpolation along predicted paths using dummy object speed
- Use predictions at least 1 second old for better movement calculation
- Maintain one-to-one mapping between dummy and predicted objects
- Add predicted objects subscription and buffer management
- Preserve dummy object velocity throughout movement
- feat: enhance euclidean distance-based mapping with prediction stability
- Implement prediction keeping logic for 1-second intervals to reduce jitter
- Add prediction storage maps for stable object tracking
- Remove debug output and clean up prediction selection logic
- Use object creation time instead of mapping time for 2-second grace period
- Improve handling of predicted object ID changes with proper remapping
- Clean up unused mapping time parameter from ObjectInfo constructor
- feat: increase prediction stability duration to 3 seconds
- Change MIN_KEEP_DURATION from 1.0 to 3.0 seconds for more stable object tracking
- Add debug output to track prediction usage
- Fix code formatting and whitespace
- feat: implement trajectory extrapolation and lost object handling
- Add trajectory extrapolation when objects overshoot predicted paths
- Use last two trajectory points to determine direction for extrapolation
- Maintain last known orientation during extrapolation
- Keep using last predicted trajectory for lost objects
- Add proper fallbacks for edge cases (single point paths, zero-length segments)
- Clean up debug output to avoid duplication
- feat: add trajectory validation to prevent unrealistic direction changes
- Add isTrajectoryValid function to validate new predictions against current ones
- Implement thresholds for yaw change (45°), direction change (60°), and speed change (200%)
- Skip trajectory updates when validation fails to maintain smooth object movement
- Handle edge cases including empty paths and low-speed scenarios
- Add detailed logging for debugging trajectory rejections
- feat: relax trajectory validation thresholds for more realistic movement
- Increase yaw change threshold from 45° to 90°
- Increase direction change threshold from 60° to 120°
- Increase speed change threshold from 200% to 500%
- Allow for more realistic vehicle maneuvers while still preventing physics violations
- feat: add path length validation to trajectory comparison
- Add MAX_PATH_LENGTH_CHANGE_RATIO threshold (300% change)
- Calculate path lengths for both current and new trajectories
- Compare path length ratios to prevent unrealistic path changes
- Skip validation for very short paths (less than 0.1m)
- Add detailed logging for path length validation failures
- feat: add comprehensive validation for object remapping candidates
- Add isValidRemappingCandidate function to validate remapping candidates
- Implement position, trajectory, and heading similarity checks
- Add arePathsSimilar function to compare path shapes and directions
- Use validation in both remapping and unmapped object scenarios
- Add detailed logging for debugging validation failures
- Set appropriate thresholds for distance, yaw, and path comparison
- fix: remove unused variables and parameters to resolve build warnings
- Mark unused parameter current_time in isValidRemappingCandidate
- Mark unused parameter dummy_uuid_str in arePathsSimilar
- Remove unused MAX_DIRECTION_CHANGE and MAX_VELOCITY_CHANGE_RATIO constants
- Clean up warnings to improve code quality
- refactor: remove unused parameters from function signatures
- Remove unused current_time parameter from isValidRemappingCandidate
- Remove unused dummy_uuid_str parameter from arePathsSimilar
- Update function calls to match simplified signatures
- Clean up function interfaces to remove unnecessary parameters
- feat: improve remapping candidate validation using trajectory-based position calculation
- Add calculateExpectedPosition function to predict object
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| autoware_cmake | |
| ament_lint_auto | |
| autoware_lint_common | |
| rviz_common | |
| rviz_default_plugins | |
| tf2_geometry_msgs | |
| tf2_ros | |
| tier4_simulation_msgs |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged tier4_dummy_object_rviz_plugin at Robotics Stack Exchange
Package Summary
| Tags | No category tags. |
| Version | 0.48.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-12-04 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Yukihiro Saito
Authors
tier4_dummy_object_rviz_plugin
Purpose
This plugin is used to generate dummy pedestrians, cars, and obstacles in planning simulator.
Overview
The CarInitialPoseTool sends a topic for generating a dummy car.
The PedestrianInitialPoseTool sends a topic for generating a dummy pedestrian.
The UnknownInitialPoseTool sends a topic for generating a dummy obstacle.
The DeleteAllObjectsTool deletes the dummy cars, pedestrians, and obstacles displayed by the above three tools.
Inputs / Outputs
Output
| Name | Type | Description |
|---|---|---|
/simulation/dummy_perception_publisher/object_info |
tier4_simulation_msgs::msg::DummyObject |
The topic on which to publish dummy object info |
Parameter
Core Parameters
CarPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 4.0 | X standard deviation for initial pose [m] |
width_ |
float | 1.8 | Y standard deviation for initial pose [m] |
height_ |
float | 2.0 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
BusPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
length_ |
float | 10.5 | X standard deviation for initial pose [m] |
width_ |
float | 2.5 | Y standard deviation for initial pose [m] |
height_ |
float | 3.5 | Z standard deviation for initial pose [m] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
PedestrianPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
UnknownPose
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
std_dev_x_ |
float | 0.03 | X standard deviation for initial pose [m] |
std_dev_y_ |
float | 0.03 | Y standard deviation for initial pose [m] |
std_dev_z_ |
float | 0.03 | Z standard deviation for initial pose [m] |
std_dev_theta_ |
float | 5.0 * M_PI / 180.0 | Theta standard deviation for initial pose [rad] |
position_z_ |
float | 0.0 | Z position for initial pose [m] |
velocity_ |
float | 0.0 | Velocity [m/s] |
DeleteAllObjects
| Name | Type | Default Value | Description |
|---|---|---|---|
topic_property_ |
string | /simulation/dummy_perception_publisher/object_info |
The topic on which to publish dummy object info |
Assumptions / Known limits
Using a planning simulator
Usage
- Start rviz and select + on the tool tab.
- Select one of the following: tier4_dummy_object_rviz_plugin and press OK.
- Select the new item in the tool tab (2D Dummy Car in the example) and click on it in rviz.
Interactive manipulation
File truncated at 100 lines see the full file
Changelog for package tier4_dummy_object_rviz_plugin
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_dummy_perception_publisher): dummy object predicted path functionality (#11011)
- feat: implement euclidean distance-based mapping for dummy perception publisher
- Add euclidean distance-based mapping between dummy objects and predicted objects
- Implement 2-second grace period before using predicted paths
- Add distance-based interpolation along predicted paths using dummy object speed
- Use predictions at least 1 second old for better movement calculation
- Maintain one-to-one mapping between dummy and predicted objects
- Add predicted objects subscription and buffer management
- Preserve dummy object velocity throughout movement
- feat: enhance euclidean distance-based mapping with prediction stability
- Implement prediction keeping logic for 1-second intervals to reduce jitter
- Add prediction storage maps for stable object tracking
- Remove debug output and clean up prediction selection logic
- Use object creation time instead of mapping time for 2-second grace period
- Improve handling of predicted object ID changes with proper remapping
- Clean up unused mapping time parameter from ObjectInfo constructor
- feat: increase prediction stability duration to 3 seconds
- Change MIN_KEEP_DURATION from 1.0 to 3.0 seconds for more stable object tracking
- Add debug output to track prediction usage
- Fix code formatting and whitespace
- feat: implement trajectory extrapolation and lost object handling
- Add trajectory extrapolation when objects overshoot predicted paths
- Use last two trajectory points to determine direction for extrapolation
- Maintain last known orientation during extrapolation
- Keep using last predicted trajectory for lost objects
- Add proper fallbacks for edge cases (single point paths, zero-length segments)
- Clean up debug output to avoid duplication
- feat: add trajectory validation to prevent unrealistic direction changes
- Add isTrajectoryValid function to validate new predictions against current ones
- Implement thresholds for yaw change (45°), direction change (60°), and speed change (200%)
- Skip trajectory updates when validation fails to maintain smooth object movement
- Handle edge cases including empty paths and low-speed scenarios
- Add detailed logging for debugging trajectory rejections
- feat: relax trajectory validation thresholds for more realistic movement
- Increase yaw change threshold from 45° to 90°
- Increase direction change threshold from 60° to 120°
- Increase speed change threshold from 200% to 500%
- Allow for more realistic vehicle maneuvers while still preventing physics violations
- feat: add path length validation to trajectory comparison
- Add MAX_PATH_LENGTH_CHANGE_RATIO threshold (300% change)
- Calculate path lengths for both current and new trajectories
- Compare path length ratios to prevent unrealistic path changes
- Skip validation for very short paths (less than 0.1m)
- Add detailed logging for path length validation failures
- feat: add comprehensive validation for object remapping candidates
- Add isValidRemappingCandidate function to validate remapping candidates
- Implement position, trajectory, and heading similarity checks
- Add arePathsSimilar function to compare path shapes and directions
- Use validation in both remapping and unmapped object scenarios
- Add detailed logging for debugging validation failures
- Set appropriate thresholds for distance, yaw, and path comparison
- fix: remove unused variables and parameters to resolve build warnings
- Mark unused parameter current_time in isValidRemappingCandidate
- Mark unused parameter dummy_uuid_str in arePathsSimilar
- Remove unused MAX_DIRECTION_CHANGE and MAX_VELOCITY_CHANGE_RATIO constants
- Clean up warnings to improve code quality
- refactor: remove unused parameters from function signatures
- Remove unused current_time parameter from isValidRemappingCandidate
- Remove unused dummy_uuid_str parameter from arePathsSimilar
- Update function calls to match simplified signatures
- Clean up function interfaces to remove unnecessary parameters
- feat: improve remapping candidate validation using trajectory-based position calculation
- Add calculateExpectedPosition function to predict object
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| autoware_cmake | |
| ament_lint_auto | |
| autoware_lint_common | |
| rviz_common | |
| rviz_default_plugins | |
| tf2_geometry_msgs | |
| tf2_ros | |
| tier4_simulation_msgs |