How can I add new properties to a pointcloud?

I want to add a new property to a pointcloud, which is not in the standard properties of pointcloud.
I've got a pointcloud with one color image, from where I extract the Color inforamtion, and one NIR image, from where I get a greyscale value for each point, and I want to have every point to have an additional Property called 'NIR' with this value.
I tried :
pointcloud=pointCloud(posxyz,'Intensity',intensityvalue,'NIR',nirvalue)
Matlab gives me the following error:
Error using pointCloud>validateAndParseInputs (line 818) 'NIR' is not a recognized parameter. For a list of valid name-value pair arguments, see the documentation for this function.
Error in pointCloud (line 142) [xyzPoints, C, nv, I] = validateAndParseInputs(varargin{:});

 Risposta accettata

Walter Roberson
Walter Roberson il 12 Lug 2017
This is not possible using the Mathworks pointCloud objects; the permitted properties are shown at https://www.mathworks.com/help/vision/ref/pointcloud-class.html

1 Commento

It would be very convenient for the pointCloud type to support additional fields which can defined in the PCD format. For example, many Lidars have a per-point timestamp field which is not available in pointCloud but nevertheless is critical for some processing algorithms. If these cannot be named properties, maybe they can be held in a struct of additional per-point properties? In the meantime I'll need to write or obtain a custom PCD file reader and define my own point cloud type, which of course is not ideal.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by