如何设置Alglib RBF插补器的默认值?

时间:2014-09-12 17:34:13

标签: interpolation data-fitting alglib

我正在使用RBF 2D插值器来处理包含山峰的一段地形的云点Z = f(X,Y);

当我在网格上进行插值时,网格的边缘会“抬起”,因为默认值(当没有附近的点时返回)似乎是Z坐标的AVERAGE。然后我得到的图像不是一座山的图像,而是一座山“沉没”的图像,印在一个高于零的平面上。

下面,我的cloudpoint的横截面用绿色表示,连续的插值点用粉红色表示。

enter image description here

当没有附近的点时,期望的行为是获得Z = 0.

有没有办法可以告诉插补器我想要一个零值作为默认值,即使浊点不与零平面相交?

我目前的代码是这样的(C#):

        alglib.rbfcreate(2, 1, out _model);

        alglib.rbfsetpoints(_model, point_cloud);

        alglib.rbfsetalgomultilayer(_model, radius, layers);

        alglib.rbfreport report;

        alglib.rbfbuildmodel(_model, out report);

1 个答案:

答案 0 :(得分:1)

他们的documentation说"在第0(可选)迭代算法中构建线性最小二乘模型。通过线性模型预测的值从节点处的函数值中减去,并且残差矢量被传递到下一次迭代"。我认为这是问题,我希望确实可以选择退出第0次迭代,而无需自定义代码。