CenterPoint for Autoware (lidar_centerpoint)

3D object detection models for LiDAR point clouds, used by the autoware_lidar_centerpoint node in Autoware.

The models follow the CenterPoint [1] architecture with a PointPillars [2] voxel encoder and run with TensorRT inside Autoware. They are exported as ONNX so they can be deployed across hardware; Autoware builds the TensorRT engine from the ONNX file on first launch.

Model overview

Task 3D object detection (oriented bounding boxes) from a LiDAR point cloud
Architecture CenterPoint detection head on a PointPillars-style voxel encoder
Detected classes CAR, TRUCK, BUS, BICYCLE, PEDESTRIAN
Runtime TensorRT (FP16 by default, FP32 selectable) via the autoware_lidar_centerpoint ROS 2 node
Format ONNX (Autoware builds the TensorRT engine locally on first launch)
License Apache-2.0 (see Legal Notice for training-data terms)

The network is split into two ONNX sub-models, matching how the node consumes them:

  1. Voxel encoder β€” pts_voxel_encoder_*.onnx
    • input: input_features β†’ output: pillar_features
  2. Backbone / neck / head β€” pts_backbone_neck_head_*.onnx
    • input: spatial_features β†’ outputs: heatmap, reg, height, dim, rot, vel

Pre-processing (voxelization, multi-frame densification) and post-processing (circle NMS, IoU NMS, yaw normalization, distance-based score thresholding) run in the node, not in the ONNX graphs.

Variants in this repository

Variant Weights provided Voxel size (x, y, z) [m] Point cloud range [m] Downsample factor
centerpoint ONNX 0.32, 0.32, 10.0 [-76.8, -76.8, -4.0, 76.8, 76.8, 6.0] 1
centerpoint_tiny ONNX 0.32, 0.32, 10.0 [-76.8, -76.8, -4.0, 76.8, 76.8, 6.0] 2
centerpoint_sigma parameter file only (shares centerpoint model params) 0.32, 0.32, 10.0 [-76.8, -76.8, -4.0, 76.8, 76.8, 6.0] 1

Common model parameters for every variant: point_feature_size: 4, encoder_in_feature_size: 9, max_voxel_size: 40000. The default and tiny variants use a 480Γ—480 BEV grid; centerpoint_tiny halves the backbone output resolution via downsample_factor: 2, trading accuracy for speed.

The upstream package also defines a centerpoint_short_range variant (range [-51.2, 51.2], voxel 0.16, encoder_in_feature_size: 10). Its weights are not included here.

Files

File Description
pts_voxel_encoder_centerpoint.onnx Voxel encoder, centerpoint
pts_backbone_neck_head_centerpoint.onnx Backbone/neck/head, centerpoint
pts_voxel_encoder_centerpoint_tiny.onnx Voxel encoder, centerpoint_tiny
pts_backbone_neck_head_centerpoint_tiny.onnx Backbone/neck/head, centerpoint_tiny
centerpoint_ml_package.param.yaml Model parameters for centerpoint
centerpoint_tiny_ml_package.param.yaml Model parameters for centerpoint_tiny
centerpoint_sigma_ml_package.param.yaml Model parameters for centerpoint_sigma
detection_class_remapper.param.yaml Area-based class remapping (e.g. large car β†’ truck/trailer)
deploy_metadata.yaml Deployment metadata consumed by Autoware's model tooling

TensorRT engines are not distributed here. TensorRT engines are specific to the GPU architecture and TensorRT version they are built on and are not portable, so Autoware builds them locally from the ONNX files on first launch (or via build_only:=true).

Inputs and outputs (as used by the node)

Input β€” ~/input/pointcloud (sensor_msgs/msg/PointCloud2), with points of the form:

struct InputPointType {
  float    x;
  float    y;
  float    z;
  uint8_t  intensity;
  uint8_t  return_type;
  uint16_t channel;
};

Output β€” ~/output/objects (autoware_perception_msgs/msg/DetectedObjects): oriented 3D boxes with class and score. object.existence_probability carries the DNN classification confidence (not a calibrated probability).

Usage in Autoware

The node downloads these artifacts to ~/autoware_data/ml_models/lidar_centerpoint/ and launches with, e.g.:

ros2 launch autoware_lidar_centerpoint lidar_centerpoint.launch.xml \
  model_name:=centerpoint_tiny \
  model_path:=$HOME/autoware_data/ml_models/lidar_centerpoint \
  model_param_path:=$(ros2 pkg prefix autoware_lidar_centerpoint --share)/config/centerpoint_tiny.param.yaml

Add build_only:=true to build the TensorRT engine from the ONNX as a one-off pre-task. See the package README for the full parameter reference and the training/deployment guide.

Training data

Models were trained with the Autoware fork of MMDetection3D:

  • centerpoint β€” nuScenes (28k LiDAR frames) [3] + TIER IV internal data (11k LiDAR frames), 60 epochs.
  • centerpoint_tiny β€” Argoverse 2 (110k LiDAR frames) [4] + TIER IV internal data (11k LiDAR frames), 20 epochs.

A 600-frame sample dataset (T4 format, 5 classes; sensors: 1Γ— Velodyne VLS128, 4Γ— Velodyne VLP16, 1Γ— Robosense RS Bpearl) is available for evaluation and fine-tuning, as documented in the package README.

Limitations

  • Trained primarily on nuScenes / Argoverse 2 sensor configurations; accuracy on a different LiDAR setup (mounting position, beam count, concatenated clouds) can drop without fine-tuning.
  • Only the five classes above are detected. Other road users fall outside the label set.

Citation

@article{yin2021centerpoint,
  title   = {Center-based 3D Object Detection and Tracking},
  author  = {Yin, Tianwei and Zhou, Xingyi and Kr{\"a}henb{\"u}hl, Philipp},
  journal = {arXiv preprint arXiv:2006.11275},
  year    = {2020}
}
@inproceedings{lang2019pointpillars,
  title     = {PointPillars: Fast Encoders for Object Detection from Point Clouds},
  author    = {Lang, Alex H. and Vora, Sourabh and Caesar, Holger and Zhou, Lubing and Yang, Jiong and Beijbom, Oscar},
  booktitle = {CVPR},
  year      = {2019}
}

References

Acknowledgment

Special thanks to Deepen AI for the 3D annotation tools used to create the sample dataset.

Legal Notice

The nuScenes dataset is released publicly for non-commercial use under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International Public License. Additional Terms of Use can be found at https://www.nuscenes.org/terms-of-use. To inquire about a commercial license please contact nuscenes@motional.com.

Downloads last month
417
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Paper for AutowareFoundation/lidar_centerpoint