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-03 |
| 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
- Kenzo Lobos-Tsunekawa
- Amadeusz Szymko
Authors
autoware_ptv3
Purpose
The autoware_ptv3 package is used for 3D lidar segmentation.
Inner-workings / Algorithms
This package implements a TensorRT powered inference node for Point Transformers V3 (PTv3) [1]. The sparse convolution backend corresponds to spconv. Autoware installs it automatically in its setup script. If needed, the user can also build it and install it following the following instructions.
Inputs / Outputs
Input
| Name | Type | Description |
|---|---|---|
~/input/pointcloud |
sensor_msgs::msg::PointCloud2 |
Input pointcloud topic. |
Output
| Name | Type | Description |
|---|---|---|
~/output/segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
RGB segmented pointcloud. |
~/output/ground_segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
Pointcloud with the ground segmented out. |
~/output/probs/pointcloud |
sensor_msgs::msg::PointCloud2 |
Class probabilities segmented pointcloud. |
debug/cyclic_time_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Cyclic time (ms). |
debug/pipeline_latency_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Pipeline latency time (ms). |
debug/processing_time/preprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Preprocess (ms). |
debug/processing_time/inference_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Inference time (ms). |
debug/processing_time/postprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Postprocess time (ms). |
debug/processing_time/total_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Total processing time (ms). |
Parameters
PTv3Node node
{{ json_to_markdown(“perception/autoware_ptv3/schema/ptv3.schema.json”) }}
PTv3Node model
{{ json_to_markdown(“perception/autoware_ptv3/schema/ml_package_ptv3.schema.json”) }}
The build_only option
The autoware_ptv3 node has a build_only option to build the TensorRT engine file from the specified ONNX file, after which the program exits.
ros2 launch autoware_ptv3 ptv3.launch.xml build_only:=true
The log_level option
The default logging severity level for autoware_ptv3 is info. For debugging purposes, the developer may decrease severity level using log_level parameter:
ros2 launch autoware_ptv3 ptv3.launch.xml log_level:=debug
Assumptions / Known limits
This node assumes that the input pointcloud follows the PointXYZIRC layout defined in autoware_point_types.
Trained Models
- v1 – First model release trained with PoC pseudo labels for the internal T4 dataset.
Changelog
References/External links
[1] Xiaoyang Wu, Li Jiang, Peng-Shuai Wang, Zhijian Liu, Xihui Liu, Yu Qiao, Wanli Ouyang, Tong He, and Hengshuang Zhao. “Point Transformer V3: Simpler, Faster, Stronger.” 2024 Conference on Computer Vision and Pattern Recognition.
Changelog for package autoware_ptv3
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_ptv3): implemented an inference node for ptv3 using tensorrt (#10600)
- feat: implemented an inference node for ptv3 using tensorrt
- chore: cspells
- chore: schemas
- chore: lint (line was too long)
- chore: more schemas
- fix: mistook the compute capabilities of edge devices
- chore: replaced incorrect bevfusion -> ptv3
- chore: forgot to remove unused schema
- chore: duplicated variable
- chore: changed package dep name
- chore: fixed schema comment
- chore: removed unused headers in the post process kernels
- chore: replaced in favor of auto
- chore: removed unused headers
- chore: changed initialization order
- chore: replaced 0 by nullptr
- chore: replaced type in favor of auto
- chore: removed redundant message
- chore: fixed compilation due to review changes
- fix: replaced int64 by uint64
- chore: added more descriptive comment in the schema
* style(autoware_ptv3): cleanup ---------Co-authored-by: Amadeusz Szymko <<amadeusz.szymko.2@tier4.jp>>
-
Contributors: Kenzo Lobos Tsunekawa, Ryohsuke Mitsudome
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/ptv3.launch.xml
-
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- segmented/pointcloud [default: /sensing/lidar/concatenated/segmented]
- ground_segmented/pointcloud [default: /sensing/lidar/concatenated/no_ground]
- probs/pointcloud [default: /sensing/lidar/concatenated/probs]
- data_path [default: $(env HOME)/autoware_data]
- model_name [default: ptv3]
- model_path [default: $(var data_path)/ptv3]
- model_param_path [default: $(find-pkg-share autoware_ptv3)/config/$(var model_name).param.yaml]
- ml_package_param_path [default: $(var model_path)/ml_package_$(var model_name).param.yaml]
- class_remapper_param_path [default: $(var model_path)/detection_class_remapper.param.yaml]
- build_only [default: false]
- log_level [default: info]
- use_pointcloud_container [default: false]
- pointcloud_container_name [default: pointcloud_container]
Messages
Services
Plugins
Recent questions tagged autoware_ptv3 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-03 |
| 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
- Kenzo Lobos-Tsunekawa
- Amadeusz Szymko
Authors
autoware_ptv3
Purpose
The autoware_ptv3 package is used for 3D lidar segmentation.
Inner-workings / Algorithms
This package implements a TensorRT powered inference node for Point Transformers V3 (PTv3) [1]. The sparse convolution backend corresponds to spconv. Autoware installs it automatically in its setup script. If needed, the user can also build it and install it following the following instructions.
Inputs / Outputs
Input
| Name | Type | Description |
|---|---|---|
~/input/pointcloud |
sensor_msgs::msg::PointCloud2 |
Input pointcloud topic. |
Output
| Name | Type | Description |
|---|---|---|
~/output/segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
RGB segmented pointcloud. |
~/output/ground_segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
Pointcloud with the ground segmented out. |
~/output/probs/pointcloud |
sensor_msgs::msg::PointCloud2 |
Class probabilities segmented pointcloud. |
debug/cyclic_time_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Cyclic time (ms). |
debug/pipeline_latency_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Pipeline latency time (ms). |
debug/processing_time/preprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Preprocess (ms). |
debug/processing_time/inference_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Inference time (ms). |
debug/processing_time/postprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Postprocess time (ms). |
debug/processing_time/total_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Total processing time (ms). |
Parameters
PTv3Node node
{{ json_to_markdown(“perception/autoware_ptv3/schema/ptv3.schema.json”) }}
PTv3Node model
{{ json_to_markdown(“perception/autoware_ptv3/schema/ml_package_ptv3.schema.json”) }}
The build_only option
The autoware_ptv3 node has a build_only option to build the TensorRT engine file from the specified ONNX file, after which the program exits.
ros2 launch autoware_ptv3 ptv3.launch.xml build_only:=true
The log_level option
The default logging severity level for autoware_ptv3 is info. For debugging purposes, the developer may decrease severity level using log_level parameter:
ros2 launch autoware_ptv3 ptv3.launch.xml log_level:=debug
Assumptions / Known limits
This node assumes that the input pointcloud follows the PointXYZIRC layout defined in autoware_point_types.
Trained Models
- v1 – First model release trained with PoC pseudo labels for the internal T4 dataset.
Changelog
References/External links
[1] Xiaoyang Wu, Li Jiang, Peng-Shuai Wang, Zhijian Liu, Xihui Liu, Yu Qiao, Wanli Ouyang, Tong He, and Hengshuang Zhao. “Point Transformer V3: Simpler, Faster, Stronger.” 2024 Conference on Computer Vision and Pattern Recognition.
Changelog for package autoware_ptv3
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_ptv3): implemented an inference node for ptv3 using tensorrt (#10600)
- feat: implemented an inference node for ptv3 using tensorrt
- chore: cspells
- chore: schemas
- chore: lint (line was too long)
- chore: more schemas
- fix: mistook the compute capabilities of edge devices
- chore: replaced incorrect bevfusion -> ptv3
- chore: forgot to remove unused schema
- chore: duplicated variable
- chore: changed package dep name
- chore: fixed schema comment
- chore: removed unused headers in the post process kernels
- chore: replaced in favor of auto
- chore: removed unused headers
- chore: changed initialization order
- chore: replaced 0 by nullptr
- chore: replaced type in favor of auto
- chore: removed redundant message
- chore: fixed compilation due to review changes
- fix: replaced int64 by uint64
- chore: added more descriptive comment in the schema
* style(autoware_ptv3): cleanup ---------Co-authored-by: Amadeusz Szymko <<amadeusz.szymko.2@tier4.jp>>
-
Contributors: Kenzo Lobos Tsunekawa, Ryohsuke Mitsudome
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/ptv3.launch.xml
-
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- segmented/pointcloud [default: /sensing/lidar/concatenated/segmented]
- ground_segmented/pointcloud [default: /sensing/lidar/concatenated/no_ground]
- probs/pointcloud [default: /sensing/lidar/concatenated/probs]
- data_path [default: $(env HOME)/autoware_data]
- model_name [default: ptv3]
- model_path [default: $(var data_path)/ptv3]
- model_param_path [default: $(find-pkg-share autoware_ptv3)/config/$(var model_name).param.yaml]
- ml_package_param_path [default: $(var model_path)/ml_package_$(var model_name).param.yaml]
- class_remapper_param_path [default: $(var model_path)/detection_class_remapper.param.yaml]
- build_only [default: false]
- log_level [default: info]
- use_pointcloud_container [default: false]
- pointcloud_container_name [default: pointcloud_container]
Messages
Services
Plugins
Recent questions tagged autoware_ptv3 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-03 |
| 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
- Kenzo Lobos-Tsunekawa
- Amadeusz Szymko
Authors
autoware_ptv3
Purpose
The autoware_ptv3 package is used for 3D lidar segmentation.
Inner-workings / Algorithms
This package implements a TensorRT powered inference node for Point Transformers V3 (PTv3) [1]. The sparse convolution backend corresponds to spconv. Autoware installs it automatically in its setup script. If needed, the user can also build it and install it following the following instructions.
Inputs / Outputs
Input
| Name | Type | Description |
|---|---|---|
~/input/pointcloud |
sensor_msgs::msg::PointCloud2 |
Input pointcloud topic. |
Output
| Name | Type | Description |
|---|---|---|
~/output/segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
RGB segmented pointcloud. |
~/output/ground_segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
Pointcloud with the ground segmented out. |
~/output/probs/pointcloud |
sensor_msgs::msg::PointCloud2 |
Class probabilities segmented pointcloud. |
debug/cyclic_time_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Cyclic time (ms). |
debug/pipeline_latency_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Pipeline latency time (ms). |
debug/processing_time/preprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Preprocess (ms). |
debug/processing_time/inference_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Inference time (ms). |
debug/processing_time/postprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Postprocess time (ms). |
debug/processing_time/total_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Total processing time (ms). |
Parameters
PTv3Node node
{{ json_to_markdown(“perception/autoware_ptv3/schema/ptv3.schema.json”) }}
PTv3Node model
{{ json_to_markdown(“perception/autoware_ptv3/schema/ml_package_ptv3.schema.json”) }}
The build_only option
The autoware_ptv3 node has a build_only option to build the TensorRT engine file from the specified ONNX file, after which the program exits.
ros2 launch autoware_ptv3 ptv3.launch.xml build_only:=true
The log_level option
The default logging severity level for autoware_ptv3 is info. For debugging purposes, the developer may decrease severity level using log_level parameter:
ros2 launch autoware_ptv3 ptv3.launch.xml log_level:=debug
Assumptions / Known limits
This node assumes that the input pointcloud follows the PointXYZIRC layout defined in autoware_point_types.
Trained Models
- v1 – First model release trained with PoC pseudo labels for the internal T4 dataset.
Changelog
References/External links
[1] Xiaoyang Wu, Li Jiang, Peng-Shuai Wang, Zhijian Liu, Xihui Liu, Yu Qiao, Wanli Ouyang, Tong He, and Hengshuang Zhao. “Point Transformer V3: Simpler, Faster, Stronger.” 2024 Conference on Computer Vision and Pattern Recognition.
Changelog for package autoware_ptv3
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_ptv3): implemented an inference node for ptv3 using tensorrt (#10600)
- feat: implemented an inference node for ptv3 using tensorrt
- chore: cspells
- chore: schemas
- chore: lint (line was too long)
- chore: more schemas
- fix: mistook the compute capabilities of edge devices
- chore: replaced incorrect bevfusion -> ptv3
- chore: forgot to remove unused schema
- chore: duplicated variable
- chore: changed package dep name
- chore: fixed schema comment
- chore: removed unused headers in the post process kernels
- chore: replaced in favor of auto
- chore: removed unused headers
- chore: changed initialization order
- chore: replaced 0 by nullptr
- chore: replaced type in favor of auto
- chore: removed redundant message
- chore: fixed compilation due to review changes
- fix: replaced int64 by uint64
- chore: added more descriptive comment in the schema
* style(autoware_ptv3): cleanup ---------Co-authored-by: Amadeusz Szymko <<amadeusz.szymko.2@tier4.jp>>
-
Contributors: Kenzo Lobos Tsunekawa, Ryohsuke Mitsudome
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/ptv3.launch.xml
-
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- segmented/pointcloud [default: /sensing/lidar/concatenated/segmented]
- ground_segmented/pointcloud [default: /sensing/lidar/concatenated/no_ground]
- probs/pointcloud [default: /sensing/lidar/concatenated/probs]
- data_path [default: $(env HOME)/autoware_data]
- model_name [default: ptv3]
- model_path [default: $(var data_path)/ptv3]
- model_param_path [default: $(find-pkg-share autoware_ptv3)/config/$(var model_name).param.yaml]
- ml_package_param_path [default: $(var model_path)/ml_package_$(var model_name).param.yaml]
- class_remapper_param_path [default: $(var model_path)/detection_class_remapper.param.yaml]
- build_only [default: false]
- log_level [default: info]
- use_pointcloud_container [default: false]
- pointcloud_container_name [default: pointcloud_container]
Messages
Services
Plugins
Recent questions tagged autoware_ptv3 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-03 |
| 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
- Kenzo Lobos-Tsunekawa
- Amadeusz Szymko
Authors
autoware_ptv3
Purpose
The autoware_ptv3 package is used for 3D lidar segmentation.
Inner-workings / Algorithms
This package implements a TensorRT powered inference node for Point Transformers V3 (PTv3) [1]. The sparse convolution backend corresponds to spconv. Autoware installs it automatically in its setup script. If needed, the user can also build it and install it following the following instructions.
Inputs / Outputs
Input
| Name | Type | Description |
|---|---|---|
~/input/pointcloud |
sensor_msgs::msg::PointCloud2 |
Input pointcloud topic. |
Output
| Name | Type | Description |
|---|---|---|
~/output/segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
RGB segmented pointcloud. |
~/output/ground_segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
Pointcloud with the ground segmented out. |
~/output/probs/pointcloud |
sensor_msgs::msg::PointCloud2 |
Class probabilities segmented pointcloud. |
debug/cyclic_time_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Cyclic time (ms). |
debug/pipeline_latency_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Pipeline latency time (ms). |
debug/processing_time/preprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Preprocess (ms). |
debug/processing_time/inference_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Inference time (ms). |
debug/processing_time/postprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Postprocess time (ms). |
debug/processing_time/total_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Total processing time (ms). |
Parameters
PTv3Node node
{{ json_to_markdown(“perception/autoware_ptv3/schema/ptv3.schema.json”) }}
PTv3Node model
{{ json_to_markdown(“perception/autoware_ptv3/schema/ml_package_ptv3.schema.json”) }}
The build_only option
The autoware_ptv3 node has a build_only option to build the TensorRT engine file from the specified ONNX file, after which the program exits.
ros2 launch autoware_ptv3 ptv3.launch.xml build_only:=true
The log_level option
The default logging severity level for autoware_ptv3 is info. For debugging purposes, the developer may decrease severity level using log_level parameter:
ros2 launch autoware_ptv3 ptv3.launch.xml log_level:=debug
Assumptions / Known limits
This node assumes that the input pointcloud follows the PointXYZIRC layout defined in autoware_point_types.
Trained Models
- v1 – First model release trained with PoC pseudo labels for the internal T4 dataset.
Changelog
References/External links
[1] Xiaoyang Wu, Li Jiang, Peng-Shuai Wang, Zhijian Liu, Xihui Liu, Yu Qiao, Wanli Ouyang, Tong He, and Hengshuang Zhao. “Point Transformer V3: Simpler, Faster, Stronger.” 2024 Conference on Computer Vision and Pattern Recognition.
Changelog for package autoware_ptv3
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_ptv3): implemented an inference node for ptv3 using tensorrt (#10600)
- feat: implemented an inference node for ptv3 using tensorrt
- chore: cspells
- chore: schemas
- chore: lint (line was too long)
- chore: more schemas
- fix: mistook the compute capabilities of edge devices
- chore: replaced incorrect bevfusion -> ptv3
- chore: forgot to remove unused schema
- chore: duplicated variable
- chore: changed package dep name
- chore: fixed schema comment
- chore: removed unused headers in the post process kernels
- chore: replaced in favor of auto
- chore: removed unused headers
- chore: changed initialization order
- chore: replaced 0 by nullptr
- chore: replaced type in favor of auto
- chore: removed redundant message
- chore: fixed compilation due to review changes
- fix: replaced int64 by uint64
- chore: added more descriptive comment in the schema
* style(autoware_ptv3): cleanup ---------Co-authored-by: Amadeusz Szymko <<amadeusz.szymko.2@tier4.jp>>
-
Contributors: Kenzo Lobos Tsunekawa, Ryohsuke Mitsudome
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/ptv3.launch.xml
-
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- segmented/pointcloud [default: /sensing/lidar/concatenated/segmented]
- ground_segmented/pointcloud [default: /sensing/lidar/concatenated/no_ground]
- probs/pointcloud [default: /sensing/lidar/concatenated/probs]
- data_path [default: $(env HOME)/autoware_data]
- model_name [default: ptv3]
- model_path [default: $(var data_path)/ptv3]
- model_param_path [default: $(find-pkg-share autoware_ptv3)/config/$(var model_name).param.yaml]
- ml_package_param_path [default: $(var model_path)/ml_package_$(var model_name).param.yaml]
- class_remapper_param_path [default: $(var model_path)/detection_class_remapper.param.yaml]
- build_only [default: false]
- log_level [default: info]
- use_pointcloud_container [default: false]
- pointcloud_container_name [default: pointcloud_container]
Messages
Services
Plugins
Recent questions tagged autoware_ptv3 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-03 |
| 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
- Kenzo Lobos-Tsunekawa
- Amadeusz Szymko
Authors
autoware_ptv3
Purpose
The autoware_ptv3 package is used for 3D lidar segmentation.
Inner-workings / Algorithms
This package implements a TensorRT powered inference node for Point Transformers V3 (PTv3) [1]. The sparse convolution backend corresponds to spconv. Autoware installs it automatically in its setup script. If needed, the user can also build it and install it following the following instructions.
Inputs / Outputs
Input
| Name | Type | Description |
|---|---|---|
~/input/pointcloud |
sensor_msgs::msg::PointCloud2 |
Input pointcloud topic. |
Output
| Name | Type | Description |
|---|---|---|
~/output/segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
RGB segmented pointcloud. |
~/output/ground_segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
Pointcloud with the ground segmented out. |
~/output/probs/pointcloud |
sensor_msgs::msg::PointCloud2 |
Class probabilities segmented pointcloud. |
debug/cyclic_time_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Cyclic time (ms). |
debug/pipeline_latency_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Pipeline latency time (ms). |
debug/processing_time/preprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Preprocess (ms). |
debug/processing_time/inference_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Inference time (ms). |
debug/processing_time/postprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Postprocess time (ms). |
debug/processing_time/total_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Total processing time (ms). |
Parameters
PTv3Node node
{{ json_to_markdown(“perception/autoware_ptv3/schema/ptv3.schema.json”) }}
PTv3Node model
{{ json_to_markdown(“perception/autoware_ptv3/schema/ml_package_ptv3.schema.json”) }}
The build_only option
The autoware_ptv3 node has a build_only option to build the TensorRT engine file from the specified ONNX file, after which the program exits.
ros2 launch autoware_ptv3 ptv3.launch.xml build_only:=true
The log_level option
The default logging severity level for autoware_ptv3 is info. For debugging purposes, the developer may decrease severity level using log_level parameter:
ros2 launch autoware_ptv3 ptv3.launch.xml log_level:=debug
Assumptions / Known limits
This node assumes that the input pointcloud follows the PointXYZIRC layout defined in autoware_point_types.
Trained Models
- v1 – First model release trained with PoC pseudo labels for the internal T4 dataset.
Changelog
References/External links
[1] Xiaoyang Wu, Li Jiang, Peng-Shuai Wang, Zhijian Liu, Xihui Liu, Yu Qiao, Wanli Ouyang, Tong He, and Hengshuang Zhao. “Point Transformer V3: Simpler, Faster, Stronger.” 2024 Conference on Computer Vision and Pattern Recognition.
Changelog for package autoware_ptv3
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_ptv3): implemented an inference node for ptv3 using tensorrt (#10600)
- feat: implemented an inference node for ptv3 using tensorrt
- chore: cspells
- chore: schemas
- chore: lint (line was too long)
- chore: more schemas
- fix: mistook the compute capabilities of edge devices
- chore: replaced incorrect bevfusion -> ptv3
- chore: forgot to remove unused schema
- chore: duplicated variable
- chore: changed package dep name
- chore: fixed schema comment
- chore: removed unused headers in the post process kernels
- chore: replaced in favor of auto
- chore: removed unused headers
- chore: changed initialization order
- chore: replaced 0 by nullptr
- chore: replaced type in favor of auto
- chore: removed redundant message
- chore: fixed compilation due to review changes
- fix: replaced int64 by uint64
- chore: added more descriptive comment in the schema
* style(autoware_ptv3): cleanup ---------Co-authored-by: Amadeusz Szymko <<amadeusz.szymko.2@tier4.jp>>
-
Contributors: Kenzo Lobos Tsunekawa, Ryohsuke Mitsudome
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/ptv3.launch.xml
-
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- segmented/pointcloud [default: /sensing/lidar/concatenated/segmented]
- ground_segmented/pointcloud [default: /sensing/lidar/concatenated/no_ground]
- probs/pointcloud [default: /sensing/lidar/concatenated/probs]
- data_path [default: $(env HOME)/autoware_data]
- model_name [default: ptv3]
- model_path [default: $(var data_path)/ptv3]
- model_param_path [default: $(find-pkg-share autoware_ptv3)/config/$(var model_name).param.yaml]
- ml_package_param_path [default: $(var model_path)/ml_package_$(var model_name).param.yaml]
- class_remapper_param_path [default: $(var model_path)/detection_class_remapper.param.yaml]
- build_only [default: false]
- log_level [default: info]
- use_pointcloud_container [default: false]
- pointcloud_container_name [default: pointcloud_container]
Messages
Services
Plugins
Recent questions tagged autoware_ptv3 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-03 |
| 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
- Kenzo Lobos-Tsunekawa
- Amadeusz Szymko
Authors
autoware_ptv3
Purpose
The autoware_ptv3 package is used for 3D lidar segmentation.
Inner-workings / Algorithms
This package implements a TensorRT powered inference node for Point Transformers V3 (PTv3) [1]. The sparse convolution backend corresponds to spconv. Autoware installs it automatically in its setup script. If needed, the user can also build it and install it following the following instructions.
Inputs / Outputs
Input
| Name | Type | Description |
|---|---|---|
~/input/pointcloud |
sensor_msgs::msg::PointCloud2 |
Input pointcloud topic. |
Output
| Name | Type | Description |
|---|---|---|
~/output/segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
RGB segmented pointcloud. |
~/output/ground_segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
Pointcloud with the ground segmented out. |
~/output/probs/pointcloud |
sensor_msgs::msg::PointCloud2 |
Class probabilities segmented pointcloud. |
debug/cyclic_time_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Cyclic time (ms). |
debug/pipeline_latency_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Pipeline latency time (ms). |
debug/processing_time/preprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Preprocess (ms). |
debug/processing_time/inference_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Inference time (ms). |
debug/processing_time/postprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Postprocess time (ms). |
debug/processing_time/total_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Total processing time (ms). |
Parameters
PTv3Node node
{{ json_to_markdown(“perception/autoware_ptv3/schema/ptv3.schema.json”) }}
PTv3Node model
{{ json_to_markdown(“perception/autoware_ptv3/schema/ml_package_ptv3.schema.json”) }}
The build_only option
The autoware_ptv3 node has a build_only option to build the TensorRT engine file from the specified ONNX file, after which the program exits.
ros2 launch autoware_ptv3 ptv3.launch.xml build_only:=true
The log_level option
The default logging severity level for autoware_ptv3 is info. For debugging purposes, the developer may decrease severity level using log_level parameter:
ros2 launch autoware_ptv3 ptv3.launch.xml log_level:=debug
Assumptions / Known limits
This node assumes that the input pointcloud follows the PointXYZIRC layout defined in autoware_point_types.
Trained Models
- v1 – First model release trained with PoC pseudo labels for the internal T4 dataset.
Changelog
References/External links
[1] Xiaoyang Wu, Li Jiang, Peng-Shuai Wang, Zhijian Liu, Xihui Liu, Yu Qiao, Wanli Ouyang, Tong He, and Hengshuang Zhao. “Point Transformer V3: Simpler, Faster, Stronger.” 2024 Conference on Computer Vision and Pattern Recognition.
Changelog for package autoware_ptv3
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_ptv3): implemented an inference node for ptv3 using tensorrt (#10600)
- feat: implemented an inference node for ptv3 using tensorrt
- chore: cspells
- chore: schemas
- chore: lint (line was too long)
- chore: more schemas
- fix: mistook the compute capabilities of edge devices
- chore: replaced incorrect bevfusion -> ptv3
- chore: forgot to remove unused schema
- chore: duplicated variable
- chore: changed package dep name
- chore: fixed schema comment
- chore: removed unused headers in the post process kernels
- chore: replaced in favor of auto
- chore: removed unused headers
- chore: changed initialization order
- chore: replaced 0 by nullptr
- chore: replaced type in favor of auto
- chore: removed redundant message
- chore: fixed compilation due to review changes
- fix: replaced int64 by uint64
- chore: added more descriptive comment in the schema
* style(autoware_ptv3): cleanup ---------Co-authored-by: Amadeusz Szymko <<amadeusz.szymko.2@tier4.jp>>
-
Contributors: Kenzo Lobos Tsunekawa, Ryohsuke Mitsudome
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/ptv3.launch.xml
-
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- segmented/pointcloud [default: /sensing/lidar/concatenated/segmented]
- ground_segmented/pointcloud [default: /sensing/lidar/concatenated/no_ground]
- probs/pointcloud [default: /sensing/lidar/concatenated/probs]
- data_path [default: $(env HOME)/autoware_data]
- model_name [default: ptv3]
- model_path [default: $(var data_path)/ptv3]
- model_param_path [default: $(find-pkg-share autoware_ptv3)/config/$(var model_name).param.yaml]
- ml_package_param_path [default: $(var model_path)/ml_package_$(var model_name).param.yaml]
- class_remapper_param_path [default: $(var model_path)/detection_class_remapper.param.yaml]
- build_only [default: false]
- log_level [default: info]
- use_pointcloud_container [default: false]
- pointcloud_container_name [default: pointcloud_container]
Messages
Services
Plugins
Recent questions tagged autoware_ptv3 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-03 |
| 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
- Kenzo Lobos-Tsunekawa
- Amadeusz Szymko
Authors
autoware_ptv3
Purpose
The autoware_ptv3 package is used for 3D lidar segmentation.
Inner-workings / Algorithms
This package implements a TensorRT powered inference node for Point Transformers V3 (PTv3) [1]. The sparse convolution backend corresponds to spconv. Autoware installs it automatically in its setup script. If needed, the user can also build it and install it following the following instructions.
Inputs / Outputs
Input
| Name | Type | Description |
|---|---|---|
~/input/pointcloud |
sensor_msgs::msg::PointCloud2 |
Input pointcloud topic. |
Output
| Name | Type | Description |
|---|---|---|
~/output/segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
RGB segmented pointcloud. |
~/output/ground_segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
Pointcloud with the ground segmented out. |
~/output/probs/pointcloud |
sensor_msgs::msg::PointCloud2 |
Class probabilities segmented pointcloud. |
debug/cyclic_time_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Cyclic time (ms). |
debug/pipeline_latency_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Pipeline latency time (ms). |
debug/processing_time/preprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Preprocess (ms). |
debug/processing_time/inference_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Inference time (ms). |
debug/processing_time/postprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Postprocess time (ms). |
debug/processing_time/total_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Total processing time (ms). |
Parameters
PTv3Node node
{{ json_to_markdown(“perception/autoware_ptv3/schema/ptv3.schema.json”) }}
PTv3Node model
{{ json_to_markdown(“perception/autoware_ptv3/schema/ml_package_ptv3.schema.json”) }}
The build_only option
The autoware_ptv3 node has a build_only option to build the TensorRT engine file from the specified ONNX file, after which the program exits.
ros2 launch autoware_ptv3 ptv3.launch.xml build_only:=true
The log_level option
The default logging severity level for autoware_ptv3 is info. For debugging purposes, the developer may decrease severity level using log_level parameter:
ros2 launch autoware_ptv3 ptv3.launch.xml log_level:=debug
Assumptions / Known limits
This node assumes that the input pointcloud follows the PointXYZIRC layout defined in autoware_point_types.
Trained Models
- v1 – First model release trained with PoC pseudo labels for the internal T4 dataset.
Changelog
References/External links
[1] Xiaoyang Wu, Li Jiang, Peng-Shuai Wang, Zhijian Liu, Xihui Liu, Yu Qiao, Wanli Ouyang, Tong He, and Hengshuang Zhao. “Point Transformer V3: Simpler, Faster, Stronger.” 2024 Conference on Computer Vision and Pattern Recognition.
Changelog for package autoware_ptv3
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_ptv3): implemented an inference node for ptv3 using tensorrt (#10600)
- feat: implemented an inference node for ptv3 using tensorrt
- chore: cspells
- chore: schemas
- chore: lint (line was too long)
- chore: more schemas
- fix: mistook the compute capabilities of edge devices
- chore: replaced incorrect bevfusion -> ptv3
- chore: forgot to remove unused schema
- chore: duplicated variable
- chore: changed package dep name
- chore: fixed schema comment
- chore: removed unused headers in the post process kernels
- chore: replaced in favor of auto
- chore: removed unused headers
- chore: changed initialization order
- chore: replaced 0 by nullptr
- chore: replaced type in favor of auto
- chore: removed redundant message
- chore: fixed compilation due to review changes
- fix: replaced int64 by uint64
- chore: added more descriptive comment in the schema
* style(autoware_ptv3): cleanup ---------Co-authored-by: Amadeusz Szymko <<amadeusz.szymko.2@tier4.jp>>
-
Contributors: Kenzo Lobos Tsunekawa, Ryohsuke Mitsudome
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/ptv3.launch.xml
-
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- segmented/pointcloud [default: /sensing/lidar/concatenated/segmented]
- ground_segmented/pointcloud [default: /sensing/lidar/concatenated/no_ground]
- probs/pointcloud [default: /sensing/lidar/concatenated/probs]
- data_path [default: $(env HOME)/autoware_data]
- model_name [default: ptv3]
- model_path [default: $(var data_path)/ptv3]
- model_param_path [default: $(find-pkg-share autoware_ptv3)/config/$(var model_name).param.yaml]
- ml_package_param_path [default: $(var model_path)/ml_package_$(var model_name).param.yaml]
- class_remapper_param_path [default: $(var model_path)/detection_class_remapper.param.yaml]
- build_only [default: false]
- log_level [default: info]
- use_pointcloud_container [default: false]
- pointcloud_container_name [default: pointcloud_container]
Messages
Services
Plugins
Recent questions tagged autoware_ptv3 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-03 |
| 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
- Kenzo Lobos-Tsunekawa
- Amadeusz Szymko
Authors
autoware_ptv3
Purpose
The autoware_ptv3 package is used for 3D lidar segmentation.
Inner-workings / Algorithms
This package implements a TensorRT powered inference node for Point Transformers V3 (PTv3) [1]. The sparse convolution backend corresponds to spconv. Autoware installs it automatically in its setup script. If needed, the user can also build it and install it following the following instructions.
Inputs / Outputs
Input
| Name | Type | Description |
|---|---|---|
~/input/pointcloud |
sensor_msgs::msg::PointCloud2 |
Input pointcloud topic. |
Output
| Name | Type | Description |
|---|---|---|
~/output/segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
RGB segmented pointcloud. |
~/output/ground_segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
Pointcloud with the ground segmented out. |
~/output/probs/pointcloud |
sensor_msgs::msg::PointCloud2 |
Class probabilities segmented pointcloud. |
debug/cyclic_time_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Cyclic time (ms). |
debug/pipeline_latency_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Pipeline latency time (ms). |
debug/processing_time/preprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Preprocess (ms). |
debug/processing_time/inference_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Inference time (ms). |
debug/processing_time/postprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Postprocess time (ms). |
debug/processing_time/total_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Total processing time (ms). |
Parameters
PTv3Node node
{{ json_to_markdown(“perception/autoware_ptv3/schema/ptv3.schema.json”) }}
PTv3Node model
{{ json_to_markdown(“perception/autoware_ptv3/schema/ml_package_ptv3.schema.json”) }}
The build_only option
The autoware_ptv3 node has a build_only option to build the TensorRT engine file from the specified ONNX file, after which the program exits.
ros2 launch autoware_ptv3 ptv3.launch.xml build_only:=true
The log_level option
The default logging severity level for autoware_ptv3 is info. For debugging purposes, the developer may decrease severity level using log_level parameter:
ros2 launch autoware_ptv3 ptv3.launch.xml log_level:=debug
Assumptions / Known limits
This node assumes that the input pointcloud follows the PointXYZIRC layout defined in autoware_point_types.
Trained Models
- v1 – First model release trained with PoC pseudo labels for the internal T4 dataset.
Changelog
References/External links
[1] Xiaoyang Wu, Li Jiang, Peng-Shuai Wang, Zhijian Liu, Xihui Liu, Yu Qiao, Wanli Ouyang, Tong He, and Hengshuang Zhao. “Point Transformer V3: Simpler, Faster, Stronger.” 2024 Conference on Computer Vision and Pattern Recognition.
Changelog for package autoware_ptv3
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_ptv3): implemented an inference node for ptv3 using tensorrt (#10600)
- feat: implemented an inference node for ptv3 using tensorrt
- chore: cspells
- chore: schemas
- chore: lint (line was too long)
- chore: more schemas
- fix: mistook the compute capabilities of edge devices
- chore: replaced incorrect bevfusion -> ptv3
- chore: forgot to remove unused schema
- chore: duplicated variable
- chore: changed package dep name
- chore: fixed schema comment
- chore: removed unused headers in the post process kernels
- chore: replaced in favor of auto
- chore: removed unused headers
- chore: changed initialization order
- chore: replaced 0 by nullptr
- chore: replaced type in favor of auto
- chore: removed redundant message
- chore: fixed compilation due to review changes
- fix: replaced int64 by uint64
- chore: added more descriptive comment in the schema
* style(autoware_ptv3): cleanup ---------Co-authored-by: Amadeusz Szymko <<amadeusz.szymko.2@tier4.jp>>
-
Contributors: Kenzo Lobos Tsunekawa, Ryohsuke Mitsudome
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/ptv3.launch.xml
-
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- segmented/pointcloud [default: /sensing/lidar/concatenated/segmented]
- ground_segmented/pointcloud [default: /sensing/lidar/concatenated/no_ground]
- probs/pointcloud [default: /sensing/lidar/concatenated/probs]
- data_path [default: $(env HOME)/autoware_data]
- model_name [default: ptv3]
- model_path [default: $(var data_path)/ptv3]
- model_param_path [default: $(find-pkg-share autoware_ptv3)/config/$(var model_name).param.yaml]
- ml_package_param_path [default: $(var model_path)/ml_package_$(var model_name).param.yaml]
- class_remapper_param_path [default: $(var model_path)/detection_class_remapper.param.yaml]
- build_only [default: false]
- log_level [default: info]
- use_pointcloud_container [default: false]
- pointcloud_container_name [default: pointcloud_container]
Messages
Services
Plugins
Recent questions tagged autoware_ptv3 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-03 |
| 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
- Kenzo Lobos-Tsunekawa
- Amadeusz Szymko
Authors
autoware_ptv3
Purpose
The autoware_ptv3 package is used for 3D lidar segmentation.
Inner-workings / Algorithms
This package implements a TensorRT powered inference node for Point Transformers V3 (PTv3) [1]. The sparse convolution backend corresponds to spconv. Autoware installs it automatically in its setup script. If needed, the user can also build it and install it following the following instructions.
Inputs / Outputs
Input
| Name | Type | Description |
|---|---|---|
~/input/pointcloud |
sensor_msgs::msg::PointCloud2 |
Input pointcloud topic. |
Output
| Name | Type | Description |
|---|---|---|
~/output/segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
RGB segmented pointcloud. |
~/output/ground_segmented/pointcloud |
sensor_msgs::msg::PointCloud2 |
Pointcloud with the ground segmented out. |
~/output/probs/pointcloud |
sensor_msgs::msg::PointCloud2 |
Class probabilities segmented pointcloud. |
debug/cyclic_time_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Cyclic time (ms). |
debug/pipeline_latency_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Pipeline latency time (ms). |
debug/processing_time/preprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Preprocess (ms). |
debug/processing_time/inference_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Inference time (ms). |
debug/processing_time/postprocess_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Postprocess time (ms). |
debug/processing_time/total_ms |
autoware_internal_debug_msgs::msg::Float64Stamped |
Total processing time (ms). |
Parameters
PTv3Node node
{{ json_to_markdown(“perception/autoware_ptv3/schema/ptv3.schema.json”) }}
PTv3Node model
{{ json_to_markdown(“perception/autoware_ptv3/schema/ml_package_ptv3.schema.json”) }}
The build_only option
The autoware_ptv3 node has a build_only option to build the TensorRT engine file from the specified ONNX file, after which the program exits.
ros2 launch autoware_ptv3 ptv3.launch.xml build_only:=true
The log_level option
The default logging severity level for autoware_ptv3 is info. For debugging purposes, the developer may decrease severity level using log_level parameter:
ros2 launch autoware_ptv3 ptv3.launch.xml log_level:=debug
Assumptions / Known limits
This node assumes that the input pointcloud follows the PointXYZIRC layout defined in autoware_point_types.
Trained Models
- v1 – First model release trained with PoC pseudo labels for the internal T4 dataset.
Changelog
References/External links
[1] Xiaoyang Wu, Li Jiang, Peng-Shuai Wang, Zhijian Liu, Xihui Liu, Yu Qiao, Wanli Ouyang, Tong He, and Hengshuang Zhao. “Point Transformer V3: Simpler, Faster, Stronger.” 2024 Conference on Computer Vision and Pattern Recognition.
Changelog for package autoware_ptv3
0.48.0 (2025-11-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
feat(autoware_ptv3): implemented an inference node for ptv3 using tensorrt (#10600)
- feat: implemented an inference node for ptv3 using tensorrt
- chore: cspells
- chore: schemas
- chore: lint (line was too long)
- chore: more schemas
- fix: mistook the compute capabilities of edge devices
- chore: replaced incorrect bevfusion -> ptv3
- chore: forgot to remove unused schema
- chore: duplicated variable
- chore: changed package dep name
- chore: fixed schema comment
- chore: removed unused headers in the post process kernels
- chore: replaced in favor of auto
- chore: removed unused headers
- chore: changed initialization order
- chore: replaced 0 by nullptr
- chore: replaced type in favor of auto
- chore: removed redundant message
- chore: fixed compilation due to review changes
- fix: replaced int64 by uint64
- chore: added more descriptive comment in the schema
* style(autoware_ptv3): cleanup ---------Co-authored-by: Amadeusz Szymko <<amadeusz.szymko.2@tier4.jp>>
-
Contributors: Kenzo Lobos Tsunekawa, Ryohsuke Mitsudome
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/ptv3.launch.xml
-
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- segmented/pointcloud [default: /sensing/lidar/concatenated/segmented]
- ground_segmented/pointcloud [default: /sensing/lidar/concatenated/no_ground]
- probs/pointcloud [default: /sensing/lidar/concatenated/probs]
- data_path [default: $(env HOME)/autoware_data]
- model_name [default: ptv3]
- model_path [default: $(var data_path)/ptv3]
- model_param_path [default: $(find-pkg-share autoware_ptv3)/config/$(var model_name).param.yaml]
- ml_package_param_path [default: $(var model_path)/ml_package_$(var model_name).param.yaml]
- class_remapper_param_path [default: $(var model_path)/detection_class_remapper.param.yaml]
- build_only [default: false]
- log_level [default: info]
- use_pointcloud_container [default: false]
- pointcloud_container_name [default: pointcloud_container]