2016-06-24 44 views
0

我需要保存在循環中產生的多個點雲。我試圖將它們保存在它返回一個錯誤的數組:節省等級的多個對象(點雲)

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 

我該如何解決這個問題?非常感謝你。

+1

'pointCld'大概是[不是數組](http://www.mathworks.com/help/vision/ref/pointcloud-class.html)。 – excaza

+0

pointCld與性能位置,顏色,計數,XLimits,YLimits,Z限制 – Basit

+0

是的,謝謝你的對象,我可以讀取文件的罰款。 – excaza

回答

2

第二輸出(pointCld)是PointCloud2 object,顯然不支持被放置到一個數組。正因爲如此,你會想將它們放入單元格數組中。

pointCldAll{k} = pointCld; 

如果你想從這個對象的實際XYZ或RGB數據,你需要使用下面的方法來訪問它,然後你可以將它們存儲在一個正常的陣列。

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

或者獲取Location性能和存儲

loc = pointCld.Location 
+0

錯誤的原因是因爲他試圖解決像數組一樣的對象。他需要訪問'Location'屬性。 – excaza

+0

@excaza啊更新了包含第二個輸出的更多信息。 – Suever

+0

@excaza在帖子中錯過了錯誤信息。顯然他們不支持數組。有趣。 – Suever

相關問題