Add support for Autoware compatible point types XYZIRCAEDT and XYZIRC#538
Open
marioney wants to merge 5 commits intoouster-lidar:ros2from
Open
Add support for Autoware compatible point types XYZIRCAEDT and XYZIRC#538marioney wants to merge 5 commits intoouster-lidar:ros2from
marioney wants to merge 5 commits intoouster-lidar:ros2from
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR adds native support for
PointXYZIRCandPointXYZIRCAEDTpoint types.These point types are strictly required by Autoware across its entire perception and localization pipeline. By supporting these natively, we eliminate the need for an external, CPU-intensive point-cloud adaptation node which I've been using so far.
I cherry-picked some initial changes from jkk-research/ouster-ros@672b960 for the
XYZIRCimplementation and expanded upon them to build full native support for the extendedXYZIRCAEDTformat.Related Issues & PRs
This issue has been requested by the community before in:
It has also been actively discussed within the Autoware foundation:
Summary of Changes
PointXYZIRCandPointXYZIRCAEDTcustom PCL structs tocommon_point_types.h.xyzircandxyzircaedtprofiles inpoint_cloud_processor_factory.hfor use in parameter configurations.point_transform.h):channel: Mapped to native ring but inverted the ordering (top-to-bottom) to retain Velodyne compatibility as expected by Autoware.intensity: Included Autoware-specific scaling (reflectivity / 64).return_type: Mapped native return IDs (e.g., 1 for strongest, 2 for last).azimuth,elevation,distance: Integrated calculations natively within the driver's point-filling loop to save external compute.time_stamp: Mapped the native per-point nanosecond timestamp offset.README.mdand configuration files (driver_params.yaml,os_sensor_cloud_image_params.yaml) to describe the new point type parameters.Validation
ouster_rosunit tests pass successfully (16/16).point_type: xyzircaedtand confirmed that the outputsensor_msgs/PointCloud2correctly encodes all 10 fields, matching the Autoware binary format specification.