Extract XYZ coordinates from point cloud data
extracts
the xyz
= readXYZ(pcloud
)[x y z]
coordinates from all points in the PointCloud2
object, pcloud
, and returns them as
an n-by-3 matrix of n 3-D point coordinates.
If the point cloud does not contain the x, y,
and z fields, this function returns an error. Points that contain
NaN
are preserved in the output. To preserve the structure of
the point cloud data, see Preserving Point Cloud Structure.
Point cloud data can be organized in either 1-D lists or in 2-D image styles. 2-D image styles
usually come from depth sensors or stereo cameras. The input PointCloud2
object contains a PreserveStructureOnRead
property that is either true
or false
(default).
Suppose you set the property to
true
.
pcloud.PreserveStructureOnRead = true;
Now calling any read functions (readXYZ
,readRGB
, or readField
) preserves the organizational
structure of the point cloud. When you preserve the structure, the output matrices are
of size m-by-n-by-d, where
m is the height, n is the width, and
d is the number of return values for each point. Otherwise, all
points are returned as a x-by-d list. This
structure can be preserved only if the point cloud is organized.