matlab 点云降采样 pcdownsample()

您所在的位置:网站首页 三维点云数据处理方法是什么意思 matlab 点云降采样 pcdownsample()

matlab 点云降采样 pcdownsample()

2024-07-16 21:52| 来源: 网络整理| 查看: 265

**

点云数据降采样 pcdownsample()

** pcdownsample降采样减少点云数据量:

一、语法:

ptCloudOut = pcdownsample(ptCloudIn, 'random', percentage) ptCloudOut = pcdownsample(ptCloudIn, 'gridAverage', gridStep) ptCloudOut = pcdownsample(ptCloudIn, 'nonuniformGridSample', maxNumPoints)

二、描述:

ptCloudOut = pcdownsample(ptCloudIn,'random',percentage)

//random 随机下采样方式;percentage 百分比 //返回一个带有随机采样且没有替换的下采样点云。百分比输入指定返回到输出的输入部分。

ptCloudOut = pcdownsample(ptCloudIn,'gridAverage',gridStep)

//gridAverage平均网格;gridStep网格步长 //使用box grid过滤器返回下采样点云。gridStep输入指定3d框的大小。

ptCloudOut = pcdownsample(ptCloudIn,'nonuniformGridSample',maxNumPoints)

//nonuniformGridSample非均匀网格取样;maxNumPoints最大点数 //使用非均匀盒网格过滤器返回下采样点云。您必须将网格框中的最大点数maxNumPoints设 置为至少6。

三、例子: 一、下采样点云使用网格过滤:

//读取一份点云: ptCloud = pcread('teapot.ply'); //设置3-D分辨率为(0.1 x 0.1 x 0.1): gridStep = 0.1; ptCloudA = pcdownsample(ptCloud,'gridAverage',gridStep); //可视化下采样数据: figure; pcshow(ptCloudA); //将点云与使用固定步长下采样的数据进行比较: stepSize = floor(ptCloud.Count/ptCloudA.Count); indices = 1 : stepSize : ptCloud.Count; ptCloudB = select(ptCloud, indices); figure; pcshow(ptCloudB);

二、从点云中删除冗余点:

//创建一个点云,所有点共享相同的坐标: ptCloud = pointCloud(ones(100,3)); //将3-D分辨率设置为一个小值: gridStep = 0.01; //输出现在只包含一个惟一点: ptCloudOut = pcdownsample(ptCloud,'gridAverage',gridStep) 三、输入参数

1、随机采样方法(random): 指定为字符串“Random”。这种方法比“gridAverage”下采样方法更有效,尤其是在点云注册之前。 在这里插入图片描述 百分比 – 投入的百分比(percentage(积极的标量)): 输入的百分比,在[0,1]范围内指定为正标量。百分比输入指定函数返回的输入部分。

2、平均网格下采样方法(gridAverage): 指定为字符串“gridAverage”。同一个框中的点被合并到输出中的一个点。它们的颜色和正常属性也相应平均。该方法保留了点云的形状。 该函数为整个点云计算轴向对齐的边界框。边界框被划分为由gridStep指定大小的网格框。每个网格框中的点通过对它们的位置、颜色和法线进行平均合并。

网格步长-网格过滤器的三维框的大小(gridStep(数值)): 用于网格过滤器的三维框的大小,指定为数值。当没有足够的资源构建大型细粒度网格时,增加gridStep的大小。

3、非均匀网格抽样法(nonuniformGridSample): 非均匀网格抽样方法,指定为字符串“非均匀网格抽样”。该方法的最佳用途是,在使用“pointToPlane”度量时,将其作为点云注册的pcregrigid函数的预处理步骤。当您使用“非均变网格采样”算法时,法线是在向下采样之前对原始数据进行计算的。下采样输出保持了更准确的法线。

网格框中的最大点数(maxNumPoints)(整数): 网格框中的最大点数,指定为大于6的整数。该方法从每个框中随机选择一个点。如果输入点云中没有提供normal,则此方法将自动填充ptCloudOut输出中的normal属性。

四、输出参数

ptCloudOut -过滤点云 pointCloud对象



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3