-
Notifications
You must be signed in to change notification settings - Fork 685
Request: Add Explicit Representation of Non-Return Points in PointCloud2 Output #551
Description
Is your feature request related to a problem?qq
I'm working with Velodyne sensors (e.g., VLP-16) and need access to data representing laser beams that do not return a valid measurement (non-return points). These points appear to be excluded or not explicitly available in the published PointCloud2 topic when using the Velodyne driver. This omission makes it difficult to analyze regions where no objects are detected, as those beams are effectively "invisible."
Describe the solution you'd like
I would like the driver to include points for non-returns explicitly in the published PointCloud2. These points could be represented as:
NaNvalues in the coordinates (e.g.,x: NaN, y: NaN, z: NaN) if the cloud is organized. But keeping information about the orientation of that especific beam.- A configurable placeholder value (e.g., maximum range or zero) for distance in flat, unorganized clouds.
This inclusion would allow users to analyze areas with no valid returns and maintain consistency in the PointCloud2 structure, particularly for organized clouds.
Additional context
Including non-return points can be particularly useful in applications such as:
- Environmental analysis where voids or gaps are meaningful (e.g., rain, fog, or object detection).
- Ensuring compatibility with tools and algorithms that expect organized clouds or complete datasets.
For example, the DataContainerBase class and its derivatives (e.g., OrganizedCloudXYZIRT) in the driver could explicitly add placeholders for non-return points when the organize_cloud parameter is enabled. Similarly, for flat clouds, these points could be added optionally with a configuration parameter.
If this feature already exists and requires specific configuration, could you provide guidance on how to enable it?