Skip to content

LiDAR timestamping policy is required #1249

Closed
@drwnz

Description

@drwnz

Checklist

  • I've read the contribution guidelines.
  • I've searched other issues and no duplicate issues were found.
  • I've agreed with the maintainers that I can plan this task.

Description

Currently, individual LiDAR drivers have differing implementations on how timestamps are applied to pointcloud messages.
In the commonly used Velodyne and Hesai drivers, the pointcloud message timestamp comes from the timestamp of the first point of the pointcloud. This has some drawbacks:

  • When there are no points in the pointcloud, the message header behavior is undefined
  • When there is a blockage or other cause of no points to be returned at the start of the scan, the pointcloud message timestamp will be later than expected (the time between consecutive pointcloud timestamps will not necessarily be constant)
  • Unpredictable pointcloud message timestamps may cause downstream synchronization tasks to fail or give incorrect correspondences

Purpose

Determine a policy for how pointclouds should be timestamped, considering downstream perception tasks and synchronization.

Possible approaches

  • Include parameters in the LiDAR drivers to enable the user to choose how timestamps are added to messages
  • Use the pointcloud's first packet timestamp for the message header timestamp
    • This may not coincide perfectly with the start of the scan, as packets contain multiple points that may result in the pointcloud start being somewhere in the middle of the packet
  • Use the timestamp from the first point even when no point is present (azimuth and ring data is still in the packet even when there is no return)
  • Also consider options to timestamp at the end of the scan, or middle of the scan to ease synchronization with other sensors

Definition of done

Definition of a LiDAR pointcloud message timestamping policy for Autoware.

  • Determine the desired behavior for reliable operation in downstream tasks
  • Implement the timestamping methodology in the Hesai, Velodyne, and other supported LiDAR drivers to align with the defined policy
  • Test operation in pointcloud preprocessor and perception tasks (especially where synchronization is required between sensors)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

component:sensingData acquisition from sensors, drivers, preprocessing. (auto-assigned)type:new-featureNew functionalities or additions, feature requests.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions