主要内容

pcregistercpd

使用CPD算法注册两个点云

描述

例子

tform= pcregistercpd (移动固定的的)返回使用相干点漂移(CPD)算法使用固定点云注册移动点云的转换[1]

笔记

考虑使用下采样点云使用pcdownsample.之前使用pcregistercpd来提高注册的效率。

[tform搬运车] = pcregistercpd(移动固定的的)还返回与固定点云对齐的转换点云。

[___rmse] = pcregistercpd(移动固定的的)还使用任何前面的语法返回对齐点云之间的欧几里德距离之间的根均方误差。

[___] = pcregistercpd(移动固定的名称,价值的)使用一个或多个指定的附加选项名称,价值对参数。

例子

全部折叠

将点云数据加载到工作区中。从工作区中的点云数据中提取移动和固定点云。

handData =负载(“hand3d.mat”);移动= handdata.movi​​ng;固定= handdata.ixed;

为了提高CPD登记算法的效率和准确性,下拍摄移动和固定点云。

移动= pcdownsample(移动,'gridaverage', 0.03);fixedDownsampled = pcdownsample(固定的,'gridaverage', 0.03);

在注册前显示下采样的点云。

图pcshowpair (movingDownsampled fixedDownsampled,“MarkerSize”, 50)包含(“X”) ylabel (“Y”)Zlabel(“Z”)标题(注册前的点云')({传奇“移动点云”'固定点云'},'textcolor''W') 传奇(“位置”'southoutside'的)

图中包含一个轴对象。注册前的标题点云的轴对象包含2个类型分散的对象。这些对象代表移动点云,固定点云。

使用CPD算法执行非刚性配准。

tform = pcregistercpd (movingDownsampled fixedDownsampled);movingReg = pctransform (movingDownsampled tform);

在注册后显示下采样点云。

图pcshowpair (movingReg fixedDownsampled,“MarkerSize”, 50)包含(“X”) ylabel (“Y”)Zlabel(“Z”)标题(注册后的点云')({传奇“移动点云”'固定点云'},'textcolor''W') 传奇(“位置”'southoutside'的)

图中包含一个轴对象。配准后带有标题点云的轴对象包含2个散点类型的对象。这些对象代表移动点云,固定点云。

输入参数

全部折叠

移动点云,指定为pointCloud目的。

固定点云,指定为apointCloud目的。

名称 - 值参数

指定可选的逗号分离对名称,价值参数。姓名是参数名称和价值为对应值。姓名必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:'MaxIltations',20在20次迭代后停止CPD算法。

转换类型,指定为逗号分隔对,由“转换”'nonrigid''死板的', 或者仿射的字符向量或字符串标量。

数据类型:字符|细绳

相对于正态分布的异常值的预期百分比,指定为逗号分隔对组成'Outierratio'和一个标量在范围内[0,1)。增加这种值会降低异常值和噪音的影响。

数据类型:单身的|

CPD停止前的最大迭代次数,指定为逗号分隔对,由'发光'一个正整数。

数据类型:单身的|

连续CPD迭代之间的公差,指定为逗号分隔的对,由“宽容”和一个标量。当连续迭代之间测量的对数似然函数值的绝对百分比变化达到或低于指定的公差值时,算法停止。降低这个值会增加更好对齐的可能性。

数据类型:单身的|

点之间的互动,指定为逗号分隔的对组成'Interactionsigma'和一个数字标量表示高斯滤波器的标准偏差。典型值在[1.5,3]范围内。增加该值会增加点云中点之间的相互作用。结果,您可以在点云中观察相干运动,并且每个点都经过相同的位移。或者,降低该值可降低点云中点之间的相互作用。结果,您可以观察点的局部位移,输出位移场呈现局部变形。

笔记

使用此名称值对,“转换”必须'nonrigid'

数据类型:单身的|

运动平滑权值,指定为逗号分隔对组成“SmoothingWeight”一个正标量。典型值在[0.1,10]范围内。增加这个值以在输出位移场中产生更相干的运动。

笔记

使用此名称值对,“转换”必须'nonrigid'

数据类型:单身的|

显示进度信息,由逗号分隔的对组成“详细”和一个逻辑标量。集“详细”真正的显示进度信息。

数据类型:逻辑

笔记

这两个'发光'“宽容”作为停止标准。当满足任意一个停止条件时,即迭代次数达到时,算法停止最大或者日志似然函数的绝对百分比变化小于或等于宽容

输出参数

全部折叠

转换,返回为rigid3d.Affine3d.对象或位移字段。tform是一个三维转换,注册移动点云,移动到了固定点云,固定的.属性的值决定输出类型变换财产。

变换适当的价值 tform
'死板的' rigid3d.目的
仿射的 Affine3d.目的
'nonrigid' 属性的大小和数据类型相同的数字矩阵地点移动点云对象的属性,移动

变换点云,作为一个返回pointCloud目的。转换的点云与固定点云对齐,固定的

均方根误差,作为一个正实数返回。rmse为对齐点云之间的欧氏距离。

数据类型:

算法

参考文献

Myronenko, A.,和X. Song。点集配准:相干点漂移图案分析和机器智能的IEEE交易的程序(TPAMI).第32卷,2010年12月12日,第2262-2275号。

扩展能力

在R2018B中介绍