保存 Class 的多个对象(点云)

Saving Multiple Objects of Class (point Clouds)

我需要保存循环生成的多个点云。我试图将它们保存在一个 returns 错误的数组中:

Array formation and parentheses-style indexing with objects of class 'pointCloud' is not allowed.

while i<=N
.
.
[imageDepth, pointCld] = getPointCloud(cp, maxDistance);
 imgDepthAll(:,:,i) = imageDepth;
 pointCldAll(:,:,i) = pointCld;
.
.
 i = i+1;
end

我该如何解决这个问题?非常感谢。

第二个输出 (pointCld) 是一个 PointCloud2 object,显然不支持放入数组中。因此,您可能希望将它们放入元胞数组中。

pointCldAll{k} = pointCld;

如果您想要来自该对象的实际 XYZ 或 RGB 数据,您需要使用以下方法访问它,然后您可以将它们存储在普通数组中。

xyz = readXYZ(pointCld)
rgb = readRGB(pointCld)

或者获取 Location 属性 并存储 that

loc = pointCld.Location