文件

pointCloud

存储3-D点云的对象

描述

pointCloud对象创建点云数据从一组点在三维坐标系。点云数据以对象的形式存储,其属性列在特性。用对象功能从点云数据中检索,选择和删除所需的点。

创建

描述

Ptcloud.= pointcloud(xyzPoints指定的坐标返回点云对象xyzPoints

例子

Ptcloud.= pointcloud(xyzPoints名称,价值创造一个pointCloud具有属性的对象指定为一个或多个名称,价值对参数。例如,pointCloud (xyzPoints,“颜色”,[0 0 0])设置颜色点的性质xyzPoints如[0 0 0]。将每个属性名称用引号括起来。任何未指定的属性都有默认值。

输入参数

展开全部

三维坐标点,指定为m-By-3或m——- - - - - -N3数组。三维坐标点指定Xy,Z.3-D坐标空间中的一个点的位置。这个论点设置了地点财产。

数据类型:单身的|双倍的

输出参数

展开全部

点云,作为一个返回pointCloud具有列入的属性的对象特性

特性

展开全部

此属性是只读的。

点在三维坐标空间中的位置,指定为m-By-3或m——- - - - - -N3数组。每个条目指定Xy,Z.3-D坐标空间中的一个点的坐标。您无法将此属性设置为名称值对。使用xyzPoints输入参数。

数据类型:单身的

点云颜色,指定为一个m-By-3或m——- - - - - -N3数组。使用此属性设置点云中的点颜色。每个条目指定点云数据中的点的RGB颜色。因此,您可以为每个点指定所有点或不同颜色的相同颜色。

  • 指定的数据类型时,指定的RGB值必须在[0,1]范围内颜色作为单身的双倍的

  • 指定的RGB值必须位于范围内[0,255],指定数据类型颜色作为uint8.

坐标 有效分配颜色
m3组 m-By-3数组,包含每个点的RGB值

m——- - - - - -N3组 m——- - - - - -N-By-3数组,包含每个点的RGB值

数据类型:uint8.

表面法线,指定为am-By-3或m——- - - - - -N3数组。使用此属性指定相对于点云中的每个点的普通向量。曲面正常的每个条目指定Xy,Z.正常矢量的组成部分。

坐标 表面法线
m3组 m-By-3阵列,其中每行包含相应的正常矢量。
m——- - - - - -N3组 m——- - - - - -N-by-3数组包含每个点的1 × 1 × 3法向量。

数据类型:单身的|双倍的

每个点的灰度强度,指定为am1的向量或m——- - - - - -N矩阵。该函数将每个强度值映射到当前颜色映射中的一个颜色值。

坐标 强度
m3组 m- × 1向量,其中每行包含相应的强度值。
m——- - - - - -N3组 m——- - - - - -N矩阵包含每个点的强度值。

数据类型:单身的|双倍的|uint8.

此属性是只读的。

点云中的点数,存储为正整数。

此属性是只读的。

坐标范围X-轴,存储为1 × 2向量。

此属性是只读的。

坐标范围y-轴,存储为1 × 2向量。

此属性是只读的。

坐标范围Z.-轴,存储为1 × 2向量。

对象功能

findNearestNeighbors 在点云中找到一个点的最近邻居
Findneighborsinradius. 在点云的一个点的半径内寻找邻居
findPointsInROI 在点云中查找一个感兴趣区域内的积分
删除invalidpoints 从点云中移除无效点
选择 在点云中选择点

例子

全部收缩

将3d坐标点读取到工作区中。

加载(“xyzPoints”);

根据输入点坐标创建点云对象。

ptcloud = pointcloud(xyzpoints);

检查点云对象的属性。

Ptcloud.
ptcloud = pointcloud具有属性:位置:[5184×3单]颜色:[]正常:[]强度:[]计数:5184 xlimits:[-3 3.4338]基础:[-2 2] zlimits:[0.0016 3.1437]

通过使用显示点云pcshow

pcshow(ptcloud)

修改点云数据的颜色

创建RGB颜色阵列的大小与点云数据的大小相同。将点颜色设置为红色。

cmatrix = in(大小(ptcloud.location))。* [1 0 0];

使用设置为RGB颜色阵列的颜色属性创建点云对象。

ptcloud = pointcloud(xyzpoints,“颜色”,cmatrix);pcshow(ptcloud)

将曲面法线添加到点云数据

使用点云数据计算对应的曲面法线pcnormals

法线= pcnormals(ptcloud);

从输入点坐标创建点云对象。将计算的曲面法线添加到点云对象。

ptcloud = pointcloud(xyzpoints,'普通的',法线);

显示点云并绘制表面法线。

pcshow(ptcloud)x = ptcloud.location(:,1);y = ptcloud.location(:,2);z = ptcloud.location(:,3);U =法线(:,1);v =法线(:,2);w =正常(:3);抓住quiver3 (x, y, z, u, v, w);抓住

提示

pointCloud对象是一个处理目的。如果要创建一个点云的单独副本,则可以使用MATLAB®复制方法。

ptcloudb.=复制Ptclouda.

如果希望保留点云的单个副本(可以通过点云函数进行修改),请对输入和输出使用相同的点云变量名。

Ptcloud.=PCFunction.Ptcloud.

扩展能力

C / C ++代码生成
使用MATLAB®Coder™生成C和c++代码。

介绍了R2015a