Matlab平面拟合 - 无法得到均方根误差

时间:2016-07-11 14:46:08

标签: matlab data-fitting

我需要找到适合一组3D点的平面的RMS(均方根)误差。我正在使用pcfitplane函数,但我得到了一个索引数组。

我的代码:

% Create the point cloud object
% XYZ is a N by 3 matrix containing the points
ptCloud = pointCloud(XYZ);
[~,rmse] = pcfitplane(ptCloud,maxDistance);

% rmse is a 1 by N array, and the values are also from 1 to N! 

我在这里失踪了什么?如何正确获取RMS错误?

1 个答案:

答案 0 :(得分:1)

您没有正确解释docs。以下是原型的显示方式:

[model,inlierIndices,outlierIndices] = pcfitplane(ptCloudIn,maxDistance)
[___,rmse] = pcfitplane(ptCloudIn,maxDistance)
[___] = pcfitplane(ptCloudIn,maxDistance,Name,Value)

长三重下划线表示"上面显示的sytax中的所有输出参数",而不是"一个参数"。正如您所注意到的那样,您正在获得inlierIndices。你正试图做这样的事情:

[~,~,~,rmse] = pcfitplane(ptCloud,maxDistance);

三个波浪线是长下划线。它们代表model,inlierIndices,outlierIndices。希望能帮助你完成未来的文档。