DriveWorks SDK Reference
3.5.78 Release
For Test and Development only

Point Cloud Range Image Creation
Note
SW Release Applicability: This tutorial is applicable to modules in both NVIDIA DriveWorks and NVIDIA DRIVE Software releases.

This tutorial demonstrates how to generate 2D image from accumulated point cloud.

To initialize the module, one can start from the default parameter:

It is expected that application allocates output image and to be successful it should have valid properties.

dwImageProperties imageProperties{};
dwPointCloudRangeImageCreator_getImageProperties(&imageProperties, memoryType, rangeImageCreator);
dwImageHandle_t rangeImage{};
dwImage_create(&rangeImage, imageProperties, context);

If the input is an organized point cloud:

dwPointCloudRangeImageCreator_bindInput(organizedPointCloud, rangeImageCreator);
dwPointCloudRangeImageCreator_bindOutput(rangeImage, rangeImageCreator);

The result image is expected to have the same memory type. Moreover, the total pixel count of the range image should be equivalent to the input organized point cloud size. That is rangeImage.widht * rangeImage.height == organizedPointCloud.size.

If the input is an unorganized point cloud, user can bind two outputs

dwPointCloudRangeImageCreator_bindInput(unorganizedPointCloud, rangeImageCreator);
dwPointCloudRangeImageCreator_bindOutput(rangeImage, rangeImageCreator);
dwPointCloudRangeImageCreator_bindOutputPointCloud(organizedPointCloud, rangeImageCreator);

The module not only outputs the range image but also an organized point cloud which satifies rangeImage.widht * rangeImage.height == organizedPointCloud.size.

To release the module,

For more details see Point Cloud Processing Sample