主要内容

pcmerge

合并两个三维点云

描述

例子

ptCloudOut= pcmerge (ptCloudAptCloudBgridStep使用方框网格过滤器返回合并的点云。gridStep指定过滤器的3-D框的大小。

例子

全部折叠

创建一个点云与X, Y, Z点在[0,100]。

ptCloudA = pointCloud(100 *兰特(1000 3));

创建一个部分重叠的点云。

ptCloudB = pointCloud([70 20 30] + 100*rand(1000,3));

合并两个点云使用框过滤器。

ptCloudOut = pcmerge(ptCloudA, ptCloudB, 1);pcshow (ptCloudOut);

图中包含一个轴对象。axis对象包含一个散点类型的对象。

输入参数

全部折叠

点云A,指定为ApointCloud对象。

点云B,指定为apointCloud对象。

网格过滤器的三维方框的大小,指定为数值。增加…的大小gridStep当没有足够的资源来构建大型细粒度网格时。该功能将空间划分为大小不同的三维盒子(也称为体素)gridStep.然后对每个体素中包含的所有点取平均值。平均值的结果提供了一个新点来表示合并输出的体素中的所有点。

数据类型:|

输出参数

全部折叠

合并点云,返回为pointCloud对象。该函数计算两个点云之间重叠区域的轴对齐边界框。将包围框划分为大小为的网格框gridStep.每个网格框中的点通过平均它们的位置、颜色和法线来合并。重叠区域之外的点是不受影响的。

提示

  • 如果两个点云没有填充相同的属性集,例如颜色正常的,这些属性将在返回的点云中被清除。例如,如果ptCloudA颜色,但ptCloudB不,那么ptCloudOut不含颜色。

  • 函数过滤出带有的点值。

扩展功能

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

GPU的代码生成
使用GPU Coder™为NVIDIA®GPU生成CUDA®代码。

介绍了R2015a